Commit Graph

40087 Commits

Author SHA1 Message Date
Anders Jonsson 77b3837774 Update Swedish translation 2018-03-03 12:09:24 +00:00
Ell 8039582df0 app: add custom GUI for gegl:recursive-transform
gegl:recursive-transform applies a transformation recursively to
an image.  The custom GUI allows controlling the transformation
matrix using a transform-grid controller, added in the previous
commit.
2018-03-01 02:26:54 -05:00
Ell 3985651d26 app: add transform-grid controller to prop-gui
... which allows ops to create a transform-grid widget, similar to
the unified-transform tool, which can be used to control a
transformation matrix.

Implement the transform-grid controller in GimpFilterTool.
2018-03-01 02:26:54 -05:00
Lionel N 827d747fae Bug 400448 - ruler subdivision is wrong for inches
Add ruler subdivisions for feet and yards, the code is still disabled.
2018-02-27 23:27:00 +01:00
Ell b8aeed4774 app: make the GimpSearchPopup entry icon non-activatable
... it doesn't actually do anything.
2018-02-27 03:55:34 -05:00
Ell cd8ea6b3ca libgimpwidgets: in GimpNumberPairEntry, add clear icon
Since the entry behaves differently based on whether the user
provided an explicit input or not, it makes sense to have a button
for clearing the entry.
2018-02-27 03:55:34 -05:00
Ell 45bfa168bf libgimpwidgets: in GimpNumberPairEntry, update font when updating text
... in particular, so that the font is updated correctly when
reverting an invalid string.
2018-02-27 03:55:34 -05:00
Ell 8d2381f6e7 libgimpwidgets: in GimpNumberPairEntry, fix parsing
... to classify strings beginning with a non-digit character as
INVALID, rather than CLEAR.
2018-02-27 03:55:33 -05:00
Dimitris Spingos (Δημήτρης Σπίγγος) 5090f544e4 Update Greek translation 2018-02-27 09:50:12 +02:00
Jehan 8796220434 plug-ins: clean out some lost tabs. 2018-02-26 19:12:50 +01:00
Jehan b671a43a31 Bug 793815 - segmentation fault on a handler using finalized user data.
The bug is very hard to reproduce, probably because it requires specific
timing conditions but this looks like this commit would prevent it.
Apparently the signal handler gimp_container_view_name_changed() may
have been run while the container view (set as user data) was most
likely already finalized, hence leaving an invalid dangling pointer.
Let's just make sure we disconnect this handler (and another) when we
finalize the container view and its private data.
2018-02-26 19:12:50 +01:00
Jehan 479b7e31d0 NEWS: keep up-to-date. 2018-02-26 02:25:00 +01:00
Jehan 796d3cb38b configure: bump fontconfig requirement for all platforms.
In a previous commit, I bumped it for Windows only, where major bugs had
been fixed in recent fontconfig. Yet as Mitch notes, Debian testing has
Fontconfig 2.12.6, so we can simply use the same requirement on all
platforms. No need to make our configuration script over-complicated
with per-platform requirements here.
2018-02-25 23:13:36 +01:00
Jordi Mas f3dd2fd65f Update translation 2018-02-25 22:34:29 +01:00
Balázs Úr 50a45311f1 Update Hungarian translation 2018-02-25 17:01:35 +00:00
Balázs Úr e0d56e99d6 Update Hungarian translation 2018-02-25 16:53:33 +00:00
Balázs Úr fa5d9ac3e9 Update Hungarian translation 2018-02-25 16:46:43 +00:00
Balázs Úr 96eb9653b1 Update Hungarian translation 2018-02-25 16:31:13 +00:00
Ell 6b4abf7b4c Bug 784802 - Crop and rectangle-select tools incorrectly detect ...
... current aspect ratio

In gimp_{rectangle_select,crop}_tool_start(), move
GimpToolRectangle signal connection to the end of the function.  In
particular, connect the signals *after* the call to
gimp_{rectangle_select,crop}_tool_update_option_defaults(), since
it may result in an emission of a "change-complete" signal, whose
handler calls the function again with ignore_pending == FALSE, which
would override the ratio set with ignore_pending == TRUE.
2018-02-25 10:23:58 -05:00
Ell 0de25a145a libgimpwidgets: in GimpNumberEntryPair, properly set user-override ...
... when focus is lost/enter is pressed

When a GimpNumberPairEntry loses focus, or when enter is pressed,
set its user-override property by calling
gimp_number_pair_entry_set_user_override(), instead of setting the
corresponding member directly, so that the entry's font is updated
correctly.
2018-02-25 03:09:25 -05:00
Jehan 12f9353410 configure: oups, forgot to change an autoconfig variable.
Cf. previous commit.
2018-02-25 03:50:50 +01:00
Jehan 36625e087b Bug 782676: require fontconfig 2.12.4 on Windows.
Fontconfig has a new slowness issue, this time apparently because of
locked cache files, preventing a successful cache update.
See: https://bugs.freedesktop.org/show_bug.cgi?id=99360
Furthermore the slowness apparently happens at every GIMP startup, and
also even when GIMP closes according to various reports. So let's bump
Fontconfig version (for Win32 builds only).

Also let's not make it a recommendation anymore, but a requirement. That
makes quite a few Win32-specific fontconfig bugs which have been fixed,
and most are quite serious so this should not be considered as optional
anymore, I guess.
2018-02-25 03:28:40 +01:00
Simon Mueller 653798146e Bug 789728 - Screenshot whole screen (Windows 10) only grabs screen...
... from first monitor

While researching the cause for the missing window contents (bug
793722), I noticed that the full screen capture mode was also not
working as expected. No matter how many monitors were connected, it only
ever captured the contents of the main monitor. This patch adjusts the
source rectangle for the BitBlt copy operation so that multiple monitors
are captured correctly.
2018-02-24 18:27:27 +01:00
Jehan 56d0998e74 icons, libgimpwidgets: fixing indentation and cleaning out tabs. 2018-02-24 15:58:26 +01:00
Rūdolfs Mazurs 065a33eb82 Update Latvian translation 2018-02-24 10:37:11 +02:00
Jehan 6a9c4f8ef1 icons, libgimpwidgets: now with proper gimp-attach + gimp-detach icons.
"gimp-detach" does not just use "gtk-convert" anymore and has its own
design. As for "gimp-attach", this is not used anywhere (yet), but it
could be soon as reverse action of gimp-detach. For instance, this icon
can be used for bug 791859 when we implement re-attaching overlay
dialogs.
2018-02-24 01:27:56 +01:00
Aryeom Han 7d354e8aa3 icons: now color version for gimp-attach and gimp-detach. 2018-02-24 01:04:37 +01:00
Aryeom Han a542bb1e8f icons: new symbolic icons gimp-attach and gimp-detach.
These are simple on purpose since the smaller size they are displayed at
is 12 px (in overlay dialogs) so it needs to be simple shapes.

Note by Jehan: gimpicons.h and Makefile.am not updated yet. Waiting for
the color icons first.
2018-02-24 00:56:59 +01:00
Rūdolfs Mazurs 042bcef90d Update Latvian translation 2018-02-24 00:48:50 +02:00
Jordi Mas 40cdc77ae6 Update Catalan translation 2018-02-23 19:08:20 +01:00
Simon Mueller 14236761cd Bug 793722 - Capture screenshot of single window fails if...
... thewindow is IE 11.

The screenshot plugin for windows had a problem when capturing
applications that use hardware rendering acceleration (e.g.
Chromium-based Apps, IE11). Those applications seem to render their
content to a device context (DC) that is different from the one that can
be retrieved via GetDCEx(hWnd). So a screenshot that simply copies the
main window DC will be incomplete (see bug attachment) or just plain
black.

This patch removes the code that uses GetDCEx for single window
screenshots and always uses the display device context instead. This
makes sure that all window contents are actually visible in the
screenshot. With this change, we now have to set the source coordinates
in the call to BitBlt() to the window's coordinates to exclude
everything that isn't the window from the screenshot when doing a single
window screenshot.

Review comment by Jehan: as Simon notes in bug 793722, there is a
regression though, which is that this new code cannot capture any part
of a window which is not in any screen. This is still an improvement
because at least for what is on screen, we always get exactly the same
as what is displayed. This is especially true since hardware-accelerated
applications are more and more common. So let's push this first commit
and hope for further improvements.
2018-02-23 18:19:36 +01:00
Alan Mortensen cd2fcc3dac Updated Danish translation 2018-02-23 02:57:23 +01:00
Alan Mortensen f295da48e2 Updated Danish translation of gimp-plug-ins 2018-02-23 02:56:35 +01:00
Sveinn í Felli 4197738e2b Update Icelandic translation 2018-02-22 13:21:48 +00:00
Sveinn í Felli 4a4ed3b685 Update Icelandic translation 2018-02-22 13:17:06 +00:00
Michael Natterer 48f31f21ae app: another try to tweak the test sessionrc-expected-2-6 2018-02-22 13:33:29 +01:00
Michael Natterer 374fee451c libgimpbase: consistent gimp_stack_trace namespace for stack trace functions
Change the rest of the source accordingly.
2018-02-22 12:35:43 +01:00
Michael Natterer e93f458026 libgimpwidgets: change disabled code in GimpRuler to avoid a warning 2018-02-22 09:48:03 +01:00
Jehan 8eb0dee0ee app: use the new gimp_utils_backtrace_available() in Preferences.
Instead of just checking for GDB/LLDB in path, use the new API which
also checks for the appropriate version of GDB.
2018-02-22 05:21:50 +01:00
Jehan 6975188d6f Bug 793514 - Adding version check for gdb.
It seems that older GDB (under version 7) are not handling very well
some common debug information format, in particular DWARF > 3. Such
version of GDB is usually not a problem since it is quite old (more than
10 years old, it would seem) so you don't see it anymore on any modern
GNU/Linux distribution. On FreeBSD on the other hand, it is still
available (probably for license reasons) and even installed by default!
As a consequence, it makes debugging fail, even though LLDB is also
installed by default.

That is even more of a problem because it would seem that GIMP is killed
(most likely by FreeBSD kernel according to the reporter tests) as a
side-effect of GDB failing, which is seriously bad, in particular since
we also use the debug dialog for non-fatal errors (which could therefore
end up killing GIMP as side effect of a bad GDB!).

So I add some GDB version check. I implement this without any dynamic
memory management, as usual, since this needs to happen also during
crash handling where the state is unstable and prone to memory
allocation failure.
I also add gimp_utils_backtrace_available() public API which can be used
by the Preferences.
2018-02-22 05:05:24 +01:00
Massimo Valentini 87525c8911 BUG 793634: CRITICAL loading psd file with disabled layer mask
Similarly to other layer setter functions, don't push undo
steps if the layer is not yet attached
2018-02-22 00:43:50 +01:00
Michael Natterer 6d056ff91a app make tests pass again (update sessionrc-expected-2-6) 2018-02-22 00:15:56 +01:00
Michael Natterer 447d9bbc56 desktop: make org.gimp.GIMP.appdata.xml validate again
This commit is to be reverted when the fix for

https://github.com/hughsie/appstream-glib/issues/222

has been released and we can depend on it.
2018-02-22 00:13:53 +01:00
Simon Budig edee33e27b data: remove references to removed brushes. 2018-02-21 22:27:42 +01:00
Michael Natterer d71ed88592 app: add buffering to reading data files
gimp_data_factory_load_data(): use a GBufferedInputStream so we don't
end up reading files byte-by-byte in the worst case.
2018-02-21 22:12:52 +01:00
Jehan 26cb87aa2d data: delete 3 brushes of very questionable origin.
It was reported that several brushes added in 1998 may have problematic
copyright with unclear/unknown licensing. And basically nobody knows
anymore where these actually come from, with which authorship or origin,
at least not for sure. It is even possible some come from commercial
software. So let's at least get rid of the ones where the origin is the
most doubtful.
Thanks to Americo for discovering these issues.
2018-02-21 21:17:14 +01:00
Jehan 1a8edbed51 app: replace GimpHistogramEditor's "valid" by "recompute" flag.
Having to sync the "valid" flag with the presence of a histogram is
error-prone (cf. previous commit).
Instead gimp_histogram_editor_validate() return value will just depend
on the presence of the histogram. And "valid" becomes "recompute", i.e.
a flag to request for "recomputation" of the histogram.
2018-02-21 19:31:25 +01:00
Jehan 3535251979 Bug 793669 - histogram-related bug report.
When the histogram is freed, we need to set valid to FALSE, in order to
force recreation as soon as needed. Otherwise we may hit some race
condition of trying to work with a NULL histogram. For instance this
happened when starting painting fast enough after switching the active
image.
2018-02-21 16:45:13 +01:00
Jehan 264565e121 Bug 793667 - Solid noise filter (pop-up bug report dialog).
gimp_spin_scale_set_scale_limits() needs double limit values. Using
integer makes us vulnerable to rounding bugs.
2018-02-21 15:12:33 +01:00
Jehan 6c93228718 Bug 793630 - GIMP does not create 'gradients' directory on first run.
I had to shuffle a bit the order of initialization since we were
creating a folder for the crash logs, as well as one for the backups a
bit too early. So now I move errors_init() after configuration folder
creation/migration, and I create both these folders in this function
(especially since gimp_init_signal_handlers() is run even earlier).

For this later reason, I also check for backtrace_file and backup_path
being allocated in gimp_eek() since it is also possible for signals
happening before errors_init(). In such a case, we will simply bypass
the GUI error handler (terminal error handler still possible) and the
backup (anyway there is nothing to backup at this point).

I could also try to create these 2 directories at the last second, when
needed. But since we are trying to do the strict minimum during crash
handling, it is better to do whatever can be done earlier.
2018-02-21 14:48:15 +01:00