by adding a local "factory_context" variable instead of calling
gimp_dialog_factory_get_context (dock_window->p->dialog_factory)
multiple times.
(cherry picked from commit 076f375e78)
This is not a bugfix, just to seamlessly pick the next commit...
Don't pass a NULL pointer to gimp_text_buffer_get_font_tag() because
it is dereferenced in a call to strcmp().
gimp_context_get_font_name() returns NULL when the selected text
includes spans with different fonts. Add the same special handling for
spans with inconsistent sizes too, and add comments that we should
have the same for the color.
Original patch from Massimo Valentini.
(cherry picked from commit 804313bbec)
This should fix crashes in which tag objects got accessed after they
were disposed, because they still were stored with the popup object.
(cherry picked from commit b109e05806)
strcpy() doesn't like overlapping strings and this causes other failures
in this unescaping code.
Also cleanup the code to follow our coding style.
(cherry picked from commit db95e20b0b)
We cannot simply randomy move the focus from e.g. a text entry back to
the canvas. Instead introduce global handling of "Escape" and a
"primary_focus_widget" that is always set the the image window's
active canvas. When Escape is pressed, move the focus to that primary
focus widget, or beep if it is already there. Text widgets still get
the key events before that logic and can consume the Escape.
(cherry picked from commit 5880685472)
Simplify the loops without any significant loss in performance, separating
the positive and negative X directions to treat each correctly. Fixes this
bug. (cherry-picked from commit faf2217811)
Use a temporary that is less expensive to refer to. Don't loop more
than necessary when comparing pairs. (Cherry-picked from master's
commit c83e7790bf)
This is a complete rework of the plug-in, the behaviour remains
unchanged.
The implementation spreads all visible layers into one contiguous
array, then applies a simplified rework of the legacy algorithm.
(cherry picked from commit 65d34b7b27)
Prevent gimp_coordinates_callback () to be called recursively
when x and y are chained.
One call puts all values in a consistent state, a recusive call can
cause side effects (calculations with rounded values)
(cherry picked from commit 24a2113170)
Fix handling of save errors in file-uri in two ways:
- don't try to check if saving to a directly mounted file succeeded,
the mount (e.g. via FUSE) might allow writing, but not stat()ing.
Instead, rely on the return value of gimp_file_save().
- for non-mounted files, provide a separate error message for the case
where the temporary file contains nothing, which is IMO useless
paranoia, but the check was probably added for a reason, so keep
it around.
(cherry picked from commit 7f31929bee)
The function plug_in_icc_profile_apply_rgb() didn't set the error object
when bailing out due to being called on a grayscale image, this could
lead to crashes in callers which just checked the return value, but not
whether or not an error had been set.
(cherry picked from commit 096c636b67)
Conflicts:
app/plug-in/plug-in-icc-profile.c