Commit Graph

47088 Commits

Author SHA1 Message Date
Jernej Simončič b8021c0826 Installer: remove dead code
(cherry picked from commit b6f11ee635)
2021-05-10 17:00:33 +02:00
Jernej Simončič d476b47dcd Installer: remove LIBTHAI_DICTDIR environment variable (no longer needed, see https://gitlab.gnome.org/GNOME/gimp/issues/2496#note_365235 )
(cherry picked from commit 4991603b2a)
2021-05-10 17:00:32 +02:00
Jernej Simončič 0ed37058de Installer: remove lib\gegl-0.2
(cherry picked from commit 47103dc28f)
2021-05-10 17:00:32 +02:00
Jernej Simončič 2cc134b8f4 Installer: include debug symbols for babl/gegl DLLs in lib\*
(cherry picked from commit ed08c1eded)
2021-05-10 16:59:27 +02:00
Jernej Simončič 2c724ba064 Installer: proper fix for libthai
(cherry picked from commit 3fd5b50f94)
2021-05-10 16:59:26 +02:00
Jernej Simončič f959726b5d Installer: remove Thai locale temporarily (causes crash on Windows 7)
(cherry picked from commit e40a5b9d4c)
2021-05-10 16:59:26 +02:00
Jernej Simončič f05f51295e Installer: include extra debug symbols, Ghostscript 9.25
(cherry picked from commit 628a5ecb79)
2021-05-10 16:59:25 +02:00
Jernej Simončič 9ed68c833c Installer: don't scan recursively for configuration override files
(cherry picked from commit dde5de7340)
2021-05-10 16:59:24 +02:00
Jernej Simončič 63d5e3591b Installer: small fix for 32on64
(cherry picked from commit 398d176855)
2021-05-10 16:59:23 +02:00
Jernej Simončič c8dfa69def Installer: don't include unnecessary files, some more fixes for new plugin paths
(cherry picked from commit b7a32ee848)
2021-05-10 16:59:23 +02:00
Jernej Simončič 4c64588f18 Installer: zlib1.dll has no version info, compare timestamp when updating in System32
(cherry picked from commit 6fceb041df)
2021-05-10 16:59:22 +02:00
Jernej Simončič f030ade0be Installer: plug-ins install changes
(cherry picked from commit ab3ff790ab)
2021-05-10 16:59:21 +02:00
Jernej Simončič 97289a0989 Installer: remove plugins from the lib\gimp\2.0\plug-ins directory
(cherry picked from commit 5ddccb0de4)
2021-05-10 16:58:40 +02:00
Jernej Simončič 101d1a4d97 Installer: fix .svg MIME type in Registry (fixes toolbox icons)
(cherry picked from commit d93b4437b7)
2021-05-10 16:58:39 +02:00
Jernej Simončič e6eb002eb3 Installer: improved compile.bat
(cherry picked from commit 038e9e711b)
2021-05-10 16:58:38 +02:00
Jernej Simončič d2190e70df Installer: show progress while removing old .debug files
(cherry picked from commit 324570712e)
2021-05-10 16:58:37 +02:00
Jernej Simončič 655a874f1b Installer: remove all obsolete 2.8 plugins
(cherry picked from commit 16562649f3)
2021-05-10 16:58:37 +02:00
Jernej Simončič f592814100 Installer: more verbose debug messages
(cherry picked from commit 363b03aa35)
2021-05-10 16:58:36 +02:00
Jernej Simončič 06b98b9bea Installer: include full version number in icon name
(cherry picked from commit 78fbf159a6)
2021-05-10 16:58:06 +02:00
Jernej Simončič 0f775b5adc Installer: update python2 interpreter file
(cherry picked from commit a296c92f7c)
2021-05-10 16:58:05 +02:00
Jernej Simončič 5c31c6ac3d Installer: remove Quick Launch icon
(cherry picked from commit 76f7d6fa21)
2021-05-10 16:58:04 +02:00
Jernej Simončič 66ccd53174 Installer: install debug symbols by default
(cherry picked from commit e5988ed940)
2021-05-10 16:57:45 +02:00
Jernej Simončič 33d0af3d19 Installer: ignore version information on files installed to {app}
(cherry picked from commit ff66d3d218)
2021-05-10 16:57:44 +02:00
Jernej Simončič e939fcec31 Installer: include gdk-pixbuf-query-loaders.exe
(cherry picked from commit 04be184020)
2021-05-10 16:57:31 +02:00
Marc Espie 6dc98fe7f0 Issue #6850: support for memory in the dashboard under OpenBSD. 2021-05-09 19:57:49 +02:00
Jehan 6466d46052 app: check the time before last selection draw before queuing a redraw.
This way, we would queue a lot less canvas region unnecessary redraws.
We still remake the time-before-last-draw check in the draw() signal
handling before we want to update the marching ants index for draw
events coming for other reasons (canvas updates, moving/zooming on
canvas, exposition changes, etc.).
2021-05-09 15:51:20 +02:00
Jehan e8a531e51e app: fix selection display on right/bottom borders when rulers are…
… displayed.

We should use the dimensions from the GimpDisplayShell not the the
GimpCanvas. Indeed the canvas is shorter when rulers are visible, hence
the selection next to the extreme sides (bottom and right sides of the
canvas) was not drawn.
2021-05-09 15:37:22 +02:00
Jehan 4fee04b839 Issue #5640: Selection tools not showing selection on Wayland.
As suggested in a comment (itself coming from an IRC discussion), we
should not use gdk_window_(begin|end)_draw_frame() functions as this
works on X, but not on Wayland anymore. Instead draw directly during
draw() call of the shell widget, and force it to happen regularly, to
update the marching ants, via gtk_widget_queue_draw_region().

This is tested and works on Wayland. Please everyone, test thoroughly to
make sure it works well in all situations, and also that we don't get
any unexpected slowdowns.

Since the symptoms are very similar, it is highly possible that it also
fixes the issue #5952 too, for selection not showing on macOS since Big
Sur 11 (maybe they changed the same way as Wayland did). Unfortunately I
can't check this myself. Please test, whoever has access to a macOS Big
Sur and can build GIMP!
2021-05-09 02:47:47 +02:00
Jehan 8c2afcb31b NEWS: start the GIMP 2.99.8 section. 2021-05-08 13:28:56 +02:00
Trần Ngọc Quân 60a9e25101 build: add Vietnamese translation to the Windows installer
Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
2021-05-08 13:08:21 +02:00
Jehan 419892c3bd gitlab-ci, build: CI job to package GIMP on Windows from MSYS2 build.
This new job resulted in a package which allows to run GIMP on Windows
(as tested in a VM; at least it starts, I can create a new canvas and
paint). Of course I think this will need to be tweaked a little bit
more, as I'm sure we miss things here and there.

At the very least, even though I add the Python and Luajit binaries,
GIMP on Windows didn't find them. This will need to be investigated.

Also it looks like opening from a remote location may not work. Not sure
if this about a missing GIO module or maybe something which works
differently on Windows (I was not even able to drag'n drop from the
browser!). Anyway this needs to be looked at as well.

Note that gdk-pixbuf-query-loaders is apparently unneeded when GIMP is
built this way (unlike with our crossroad build).

All this to say that this is still an early attempt to full CI build for
Windows.
It doesn't invalidate the crossroad build, because cross-compilation
builds from Linux will always stay very important for Linux developers
to be able to easily fix Windows bugs too; yet the crossroad build has 2
major issues:
1. We haven't figured out yet how to run GObject Introspection tools for
   cross-builds, so the crossroad builds are not full-featured (and this
   is quite a major feature we are missing!).
2. Also I will want to run the installer in the CI at some point and the
   one we use can only run on Windows itself AFAIK. We could try to run
   it through Wine, but still anyway the point 1. is already quite a
   blocker, let's do the simple thing.

Note that we will likely want to move to meson for this build, because
autotools is very slow on Windows. But as long as the few blocker meson
bugs are not fixed, let's stick to the slow yet good build.
2021-05-07 20:04:03 +02:00
Jehan 2ad349106a gitlab-ci: add Win 32-bit and Linux Clang builds to schedules.
These are interesting and may find very specific bugs from time to time,
but the usefulness is rare enough not to warrant to run at each commits.
This is just a waste of resources.

For scheduling finesse (in case we want to separate these in separate
scheduling), also rely on the existence of variables during scheduling.

Finally make sure that the non-scheduled builds are not run in schedule
pipelines (they are already run far enough).
2021-05-07 20:03:56 +02:00
dimspingos 89e83ae5e4 Updated Greek translation 2021-05-07 16:26:49 +03:00
Ngọc Quân Trần 84766839f1 Update Vietnamese translation 2021-05-07 08:13:24 +00:00
Jehan 3027b4eb4c devel-docs: update a bit the release-howto.
In particular add the need to wait a bit for installers before actually
publishing news. Also add a few usage examples for the gimp-web helper
tools for binary file publishing (torrent creation and mirror checking).
2021-05-06 02:47:18 +02:00
Jehan 7cca69cd49 build: fix a weird (yet unexplained) build bug.
Without this, the native Windows GIMP build fails in CI with:

> make[2]: *** No rule to make target '_install\include\gegl-0.4\gegl.h', needed by '../libgimpcolor/gimpadaptivesupersample.lo'.  Stop.

Even though `gegl.h` is present (as checked through artifacts). It's
just so weird.
2021-05-06 02:29:41 +02:00
Jehan 6c91e7f964 build, gitlab-ci: break the native Windows build into 2 jobs.
One for dependencies, one for GIMP.
2021-05-06 02:29:41 +02:00
Jehan ffd732c444 build: do not build Windows dependencies with ccache.
The build rules were highly inspired by other projects on GNOME's
Gitlab. All of them used to build with ccache. It worked fine for the
main build, but completely broke GObject Introspection build on both
babl and GEGL. And the worse thing is that meson was absolutely not
displaying the error, just saying it failed (even in verbose mode). A
lot of time wasted trying to debug.

Therefore let's get rid of ccache, but only for babl and GEGL. Keep it
for GIMP itself as it works fine there.

Other minor changes:

* Build from the build dir, rather than source. The other way around
  works too, but I actually find commands simpler this way.
* Adding artifacts.
2021-05-06 02:29:40 +02:00
Jehan 7254d7500d Cleanup the Gitlab runner manually.
Ok so this is horrible, but this is the only way I found to get past
some errors. The build would break randomly (sometimes it would,
sometimes not, with the same gitlab-ci rules) because of existing files.
The errors would be the following when trying to install dependency
packages with pacman:

> mingw-w64-x86_64-glib2: /mingw64/bin/libglib-2.0-0.dll exists in filesystem

At first I thought it was a bug in Pacman or MSYS2, but on some runners,
I had such warnings at the very start of the runner (note: on some
runners, the warnings would not be displayed even though the final
conflicting files error would still happen at the end of the logs):

> warning: failed to remove mingw64/bin/libglib-2.0-0.dll: Invalid argument

It looks like it might be related to this Gitlab bug where a runner
would fail to clean its environment:
https://gitlab.com/gitlab-org/gitlab-runner/-/issues/1839

In any case, the only way I found so far is to manually remove the
conflicting files before installing the packages supposed to install
these. This is completely horrible (and I sure hope it won't come up
again with different files each time) but really the only workaround I
found so far (I think a real solution will have to come from Gitlab code
or from the GNOME admins, not sure what is the exact source of the
problem).
2021-05-06 02:29:40 +02:00
Jehan 1858aac4c3 gitlab-ci, build: testing native Windows build.
Just an initial test to get a hang of the thing, mostly inspired from
GTK gitlab-ci rules adapted to our build.

All in one job (deps, babl, GEGL, GIMP itself) for now, for simplicity
of debugging. We'll see later to break this into CI sub-jobs.
2021-05-06 02:29:40 +02:00
Jehan 6c1a0e8be7 app: gui_free_progress() should accept any GimpProcess widget.
Simply it should free only GimpProgressDialog as these would be
dedicated dialog (with no meaning once progression is done), and leave
alone other GimpProgress widgets. In any case, it should not output
CRITICAL errors on these.

Fixing the following CRITICAL:
> GIMP-CRITICAL: gui_free_progress: assertion 'GIMP_IS_PROGRESS_DIALOG (progress)' failed

When dropping an image on the toolbox.
2021-05-06 00:19:25 +02:00
Jacob Boerema 8fdeaddbe7 plug-ins: fix using wrong offset for group layer masks in psd export.
Exporting to psd could result in very large files which often failed to
load in both GIMP and PS when a group layer with a layer mask
was present.

Reported on our IRC channel with a sample xcf which made it
possible to figure out the problem.
2021-05-04 15:48:34 -04:00
Ngọc Quân Trần fca3f23c60 Update Vietnamese translation 2021-05-04 07:21:05 +00:00
Ngọc Quân Trần 644abd790a Update Vietnamese translation 2021-05-04 07:18:27 +00:00
Piotr Drąg 834ff9d99d Update Polish translation 2021-05-02 12:03:01 +02:00
Jehan 4f1007edbc Issue #6695: Wrong tab after JPG export because of "Show preview"…
… feature.
Using the new gimp_display_present() function in file-jpeg to make sure
the original display is back to the top.
2021-04-30 03:51:21 +02:00
Jehan 1566d9437e app: make sure we send the origin display to plug-ins through PDB. 2021-04-30 03:48:12 +02:00
Jehan 7eaa4f1ca9 app, libgimp, pdb: new gimp_display_present() PDB call. 2021-04-30 03:46:52 +02:00
Jehan aba721ae68 Issue #6280: JPEG preview window doesn't get closed.
The port had a slight error, because in gimp-2-10, the display_ID
actually had 3 states: 0 when gimp_export_image() kept the original
image to which we just add a preview layer, -1 when it created a new
image which we wanted to put in its own display, and the display ID
itself when created.

With the new API where display variable is an object, we can only have 2
cases. So I create an additional variable separate_display to make the
distinction.
2021-04-30 01:35:51 +02:00
Jehan 802c6fe64b Issue #6767: sensitivity ALWAYS not working in Python.
The hexadecimal int doesn't work for some reason, so I just set G_MAXINT
as enum are integers in C (though the sign bit won't be 1 in such case).
2021-04-30 00:27:56 +02:00