Disable the new "automatic window tabbing" feature introduced on macOS
Sierra. It breaks GTK+ applications and we would need proper support for
this in GTK+ if we want to use it.
(cherry picked from commit 7c35d75bf9)
The white, gray and dark sliders of GimpHandleBar have a black contour.
This makes the white and gray slider visible even with similar colored
background. On the other hand, the black slider is barely visible on a
dark background (and could even be made totally invisible using the same
color). So let's use a light-gray contour on the dark slider, making now
all sliders working with any background color.
(cherry picked from commit afccaa9105)
... languages are set under Location and Region
We tracked this down to be a gettext bug, so include the gettext patch into
our DMG build. The gettext patch has also been submitted upstream.
Don't rely on the exact modifier being pressed or released. Instead,
check if only the right modifier is pressed after *each* modifier
change, and switch to color picking if it is; disable color picking
otherwise. This greatly reduces the risk of missing the user's wish to
pick colors because of other modifiers being pressed and released in
whatever order.
Probably fixes bug #734743.
(cherry picked from commit 014fdb87e5)
We handle multi-selection by letting GtkTreeView handle button press
when the widget is in GTK_SELECTION_MULTIPLE mode. Change that code to
only do that when one of the participating modifiers (shift and
control on Linux and Windows, shift and cmd on macOS) is pressed.
This makes sure that the same thing is not randomly handled by two
different pieces of code, and probably fixes bug #738440, tho I can't
be sure.
(cherry picked from commit 61f91c7cd2)
...respect border when resized
gimp_text_layout_new(): in FIXED box mode, subtract (2 * border) when
setting the layout width.
(cherry picked from commit 1415a78fa1)
gimp_ruler_draw_pos(): when remembering the just drawn rectangle's
position, don't just unconditionally overwrite the previous position's
rectangle. Instead, if the previous position's rectangle has not been
cleared yet (has a non-zero size), remember the union of old and new
rectangle.
Why this only happened to the vertical ruler with statusbar off is
beyond my mind, it should have always produced artifacts.
Unrelated: make sure the idle function is removed if we decide to
immediately redraw in gimp_ruler_set_position().
(cherry picked from commit e909b77969)
the edge of a dock in multi-window-mode
when the pointer is grabbed do not process a
motion-notify-event having the wrong 'device' member.
This avoids a harmful device change.
(cherry picked from commit 5037ff35ca)