diff --git a/.gitignore b/.gitignore index 5eb9cb6..c3dcb59 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ gimp-2.6.10-1-autoreconf.patch.bz2 /gimp-2.8.0-RC1-gitff6c280.patch.bz2 /gimp-2.8.0.tar.bz2 /gimp-2.8.2.tar.bz2 +/gimp-2.8.4.tar.bz2 diff --git a/gimp-2.8.2-crop-to-selection.patch b/gimp-2.8.2-crop-to-selection.patch deleted file mode 100644 index 0d7c15d..0000000 --- a/gimp-2.8.2-crop-to-selection.patch +++ /dev/null @@ -1,166 +0,0 @@ -From 1d025c26b3e731ad2fb6d9be08dd199ecca67142 Mon Sep 17 00:00:00 2001 -From: Nils Philippsen -Date: Tue, 13 Nov 2012 16:41:28 +0100 -Subject: [PATCH] patch: crop-to-selection - -Squashed commit of the following: - -commit 44d0c6393a92b1e5b1ce361ed5240ec669c1972b -Author: Michael Natterer -Date: Thu Sep 6 23:55:35 2012 +0200 - - Bug 683462 - cropping with rectangular select tool leaves misaligned... - - Reset the tool on image changes again, but not if only the active - drawable changes, so keep bug #678890 closed: - - Introduce new dirty flag GIMP_DIRTY_ACTIVE_DRAWABLE and set it on all - tools' dirty_mask except for rect select. Check the new flag when - reseting the active tool because of a drawable change. - (cherry picked from commit e546f2b43bbe77901516c780428bda40f5af26ba) ---- - app/core/core-enums.c | 2 ++ - app/core/core-enums.h | 1 + - app/display/gimpdisplayshell-tool-events.c | 4 +++- - app/tools/gimpcagetool.c | 3 ++- - app/tools/gimpforegroundselecttool.c | 4 +++- - app/tools/gimpimagemaptool.c | 3 ++- - app/tools/gimpiscissorstool.c | 4 +++- - app/tools/gimprectangleselecttool.c | 1 + - app/tools/gimptransformtool.c | 3 ++- - 9 files changed, 19 insertions(+), 6 deletions(-) - -diff --git a/app/core/core-enums.c b/app/core/core-enums.c -index cf6e9ce..bba0a95 100644 ---- a/app/core/core-enums.c -+++ b/app/core/core-enums.c -@@ -941,6 +941,7 @@ gimp_dirty_mask_get_type (void) - { GIMP_DIRTY_DRAWABLE, "GIMP_DIRTY_DRAWABLE", "drawable" }, - { GIMP_DIRTY_VECTORS, "GIMP_DIRTY_VECTORS", "vectors" }, - { GIMP_DIRTY_SELECTION, "GIMP_DIRTY_SELECTION", "selection" }, -+ { GIMP_DIRTY_ACTIVE_DRAWABLE, "GIMP_DIRTY_ACTIVE_DRAWABLE", "active-drawable" }, - { GIMP_DIRTY_ALL, "GIMP_DIRTY_ALL", "all" }, - { 0, NULL, NULL } - }; -@@ -957,6 +958,7 @@ gimp_dirty_mask_get_type (void) - { GIMP_DIRTY_DRAWABLE, "GIMP_DIRTY_DRAWABLE", NULL }, - { GIMP_DIRTY_VECTORS, "GIMP_DIRTY_VECTORS", NULL }, - { GIMP_DIRTY_SELECTION, "GIMP_DIRTY_SELECTION", NULL }, -+ { GIMP_DIRTY_ACTIVE_DRAWABLE, "GIMP_DIRTY_ACTIVE_DRAWABLE", NULL }, - { GIMP_DIRTY_ALL, "GIMP_DIRTY_ALL", NULL }, - { 0, NULL, NULL } - }; -diff --git a/app/core/core-enums.h b/app/core/core-enums.h -index e2edea3..ce62aa5 100644 ---- a/app/core/core-enums.h -+++ b/app/core/core-enums.h -@@ -449,6 +449,7 @@ typedef enum /*< pdb-skip >*/ - GIMP_DIRTY_DRAWABLE = 1 << 6, - GIMP_DIRTY_VECTORS = 1 << 7, - GIMP_DIRTY_SELECTION = 1 << 8, -+ GIMP_DIRTY_ACTIVE_DRAWABLE = 1 << 9, - - GIMP_DIRTY_ALL = 0xffff - } GimpDirtyMask; -diff --git a/app/display/gimpdisplayshell-tool-events.c b/app/display/gimpdisplayshell-tool-events.c -index 6b8df80..d9d2176 100644 ---- a/app/display/gimpdisplayshell-tool-events.c -+++ b/app/display/gimpdisplayshell-tool-events.c -@@ -1686,7 +1686,9 @@ gimp_display_shell_initialize_tool (GimpDisplayShell *shell, - } - else if ((active_tool->drawable != - gimp_image_get_active_drawable (image)) && -- ! gimp_tool_control_get_preserve (active_tool->control)) -+ (! gimp_tool_control_get_preserve (active_tool->control) && -+ (gimp_tool_control_get_dirty_mask (active_tool->control) & -+ GIMP_DIRTY_ACTIVE_DRAWABLE))) - { - /* create a new one, deleting the current */ - gimp_context_tool_changed (gimp_get_user_context (gimp)); -diff --git a/app/tools/gimpcagetool.c b/app/tools/gimpcagetool.c -index fe0e1a9..806f089 100644 ---- a/app/tools/gimpcagetool.c -+++ b/app/tools/gimpcagetool.c -@@ -184,7 +184,8 @@ gimp_cage_tool_init (GimpCageTool *self) - GIMP_DIRTY_IMAGE | - GIMP_DIRTY_IMAGE_STRUCTURE | - GIMP_DIRTY_DRAWABLE | -- GIMP_DIRTY_SELECTION); -+ GIMP_DIRTY_SELECTION | -+ GIMP_DIRTY_ACTIVE_DRAWABLE); - gimp_tool_control_set_wants_click (tool->control, TRUE); - gimp_tool_control_set_tool_cursor (tool->control, - GIMP_TOOL_CURSOR_PERSPECTIVE); -diff --git a/app/tools/gimpforegroundselecttool.c b/app/tools/gimpforegroundselecttool.c -index ec909f9..b320a2b 100644 ---- a/app/tools/gimpforegroundselecttool.c -+++ b/app/tools/gimpforegroundselecttool.c -@@ -183,7 +183,9 @@ gimp_foreground_select_tool_init (GimpForegroundSelectTool *fg_select) - - gimp_tool_control_set_scroll_lock (tool->control, FALSE); - gimp_tool_control_set_preserve (tool->control, FALSE); -- gimp_tool_control_set_dirty_mask (tool->control, GIMP_DIRTY_IMAGE_SIZE); -+ gimp_tool_control_set_dirty_mask (tool->control, -+ GIMP_DIRTY_IMAGE_SIZE | -+ GIMP_DIRTY_ACTIVE_DRAWABLE); - gimp_tool_control_set_precision (tool->control, - GIMP_CURSOR_PRECISION_PIXEL_CENTER); - gimp_tool_control_set_tool_cursor (tool->control, -diff --git a/app/tools/gimpimagemaptool.c b/app/tools/gimpimagemaptool.c -index c168dfc..1b7ef06 100644 ---- a/app/tools/gimpimagemaptool.c -+++ b/app/tools/gimpimagemaptool.c -@@ -201,7 +201,8 @@ gimp_image_map_tool_init (GimpImageMapTool *image_map_tool) - GIMP_DIRTY_IMAGE | - GIMP_DIRTY_IMAGE_STRUCTURE | - GIMP_DIRTY_DRAWABLE | -- GIMP_DIRTY_SELECTION); -+ GIMP_DIRTY_SELECTION | -+ GIMP_DIRTY_ACTIVE_DRAWABLE); - - image_map_tool->drawable = NULL; - image_map_tool->operation = NULL; -diff --git a/app/tools/gimpiscissorstool.c b/app/tools/gimpiscissorstool.c -index 8392fea..f795f0a 100644 ---- a/app/tools/gimpiscissorstool.c -+++ b/app/tools/gimpiscissorstool.c -@@ -328,7 +328,9 @@ gimp_iscissors_tool_init (GimpIscissorsTool *iscissors) - gimp_tool_control_set_scroll_lock (tool->control, TRUE); - gimp_tool_control_set_snap_to (tool->control, FALSE); - gimp_tool_control_set_preserve (tool->control, FALSE); -- gimp_tool_control_set_dirty_mask (tool->control, GIMP_DIRTY_IMAGE_SIZE); -+ gimp_tool_control_set_dirty_mask (tool->control, -+ GIMP_DIRTY_IMAGE_SIZE | -+ GIMP_DIRTY_ACTIVE_DRAWABLE); - gimp_tool_control_set_tool_cursor (tool->control, GIMP_TOOL_CURSOR_ISCISSORS); - - iscissors->op = ISCISSORS_OP_NONE; -diff --git a/app/tools/gimprectangleselecttool.c b/app/tools/gimprectangleselecttool.c -index 50d9852..3dcd2d3 100644 ---- a/app/tools/gimprectangleselecttool.c -+++ b/app/tools/gimprectangleselecttool.c -@@ -229,6 +229,7 @@ gimp_rectangle_select_tool_init (GimpRectangleSelectTool *rect_sel_tool) - GIMP_CURSOR_PRECISION_PIXEL_BORDER); - gimp_tool_control_set_tool_cursor (tool->control, - GIMP_TOOL_CURSOR_RECT_SELECT); -+ gimp_tool_control_set_preserve (tool->control, FALSE); - gimp_tool_control_set_dirty_mask (tool->control, - GIMP_DIRTY_IMAGE_SIZE | - GIMP_DIRTY_SELECTION); -diff --git a/app/tools/gimptransformtool.c b/app/tools/gimptransformtool.c -index 4c41232..bd37efb 100644 ---- a/app/tools/gimptransformtool.c -+++ b/app/tools/gimptransformtool.c -@@ -201,7 +201,8 @@ gimp_transform_tool_init (GimpTransformTool *tr_tool) - gimp_tool_control_set_dirty_mask (tool->control, - GIMP_DIRTY_IMAGE_SIZE | - GIMP_DIRTY_DRAWABLE | -- GIMP_DIRTY_SELECTION); -+ GIMP_DIRTY_SELECTION | -+ GIMP_DIRTY_ACTIVE_DRAWABLE); - gimp_tool_control_set_precision (tool->control, - GIMP_CURSOR_PRECISION_SUBPIXEL); - --- -1.7.11.7 - diff --git a/gimp-2.8.2-file-dialog-toplevel.patch b/gimp-2.8.2-file-dialog-toplevel.patch deleted file mode 100644 index b83bb35..0000000 --- a/gimp-2.8.2-file-dialog-toplevel.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 64b9787f8c2996e915474103044062a534924f38 Mon Sep 17 00:00:00 2001 -From: Nils Philippsen -Date: Wed, 14 Nov 2012 17:16:53 +0100 -Subject: [PATCH] patch: file-dialog-toplevel - -Squashed commit of the following: - -commit b46df3e435d16819f1054f412b9adc2fc404c6ec -Author: Nils Philippsen -Date: Wed Nov 14 16:43:06 2012 +0100 - - app: remove check which hides conditions that should not happen - - Remove a GTK_IS_WINDOW() check where this would hide parent widgets - being passed in that don't have a gtk toplevel. This should not happen - and if it does we want to know about it. - (cherry picked from commit f6f8079013401eecaa11e5f8bdd2688e51fd6602) - -commit 7f6370fb0314308a32f3db82473a1a109ba1b1ca -Author: Nils Philippsen -Date: Wed Nov 14 16:42:05 2012 +0100 - - app: fix marking file dialogs as transient if opened from context menu - - GimpDisplayShell isn't a GtkWindow (anymore), therefore use - gtk_widget_get_toplevel() to find the actual toplevel window. - (cherry picked from commit 1a4087bd5f1c79859fbfc417eff58f8e7783f335) ---- - app/actions/file-commands.c | 11 ++++------- - 1 file changed, 4 insertions(+), 7 deletions(-) - -diff --git a/app/actions/file-commands.c b/app/actions/file-commands.c -index cbf82de..94a23a0 100644 ---- a/app/actions/file-commands.c -+++ b/app/actions/file-commands.c -@@ -522,11 +522,8 @@ file_open_dialog_show (Gimp *gimp, - gimp_file_dialog_set_open_image (GIMP_FILE_DIALOG (dialog), - image, open_as_layers); - -- parent = gtk_widget_get_toplevel (parent); -- -- if (GTK_IS_WINDOW (parent)) -- gtk_window_set_transient_for (GTK_WINDOW (dialog), -- GTK_WINDOW (parent)); -+ gtk_window_set_transient_for (GTK_WINDOW (dialog), -+ GTK_WINDOW (gtk_widget_get_toplevel (parent))); - - gtk_window_present (GTK_WINDOW (dialog)); - } -@@ -555,7 +552,7 @@ file_save_dialog_show (Gimp *gimp, - if (dialog) - { - gtk_window_set_transient_for (GTK_WINDOW (dialog), -- GTK_WINDOW (parent)); -+ GTK_WINDOW (gtk_widget_get_toplevel (parent))); - - g_object_set_data_full (G_OBJECT (image), - "gimp-file-save-dialog", dialog, -@@ -606,7 +603,7 @@ file_export_dialog_show (Gimp *gimp, - if (dialog) - { - gtk_window_set_transient_for (GTK_WINDOW (dialog), -- GTK_WINDOW (parent)); -+ GTK_WINDOW (gtk_widget_get_toplevel (parent))); - - g_object_set_data_full (G_OBJECT (image), - "gimp-file-export-dialog", dialog, --- -1.7.11.7 - diff --git a/gimp-2.8.2-max-memsize.patch b/gimp-2.8.2-max-memsize.patch deleted file mode 100644 index a002384..0000000 --- a/gimp-2.8.2-max-memsize.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 19bee3766ab5c39fdcde4e8be26795981b7bbe76 Mon Sep 17 00:00:00 2001 -From: Nils Philippsen -Date: Tue, 13 Nov 2012 16:21:48 +0100 -Subject: [PATCH] patch: max-memsize - -Squashed commit of the following: - -commit 26e5611acbb0d2f23a6cf481883c4241289436bf -Author: Nils Philippsen -Date: Tue Nov 13 16:12:56 2012 +0100 - - app: limit physical memory size by GIMP_MAX_MEMSIZE as well - (cherry picked from commit c4365d4c14d1a1fc35210b373119a0870458c46b) - - Conflicts: - app/config/gimpbaseconfig.c - -commit 71f298245ee8af6fc97496eb7c83d64001b0f3db -Author: Michael Natterer -Date: Sat Oct 13 22:44:15 2012 +0200 - - app: limit the pyhsical memory size by G_MAXSIZE - - because one process can't handle more. - (cherry picked from commit 2b714fcb1a6c24bcaeb13b1c592a365c374f96d8) ---- - app/config/gimpbaseconfig.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/app/config/gimpbaseconfig.c b/app/config/gimpbaseconfig.c -index 0fa1e60..73a925d 100644 ---- a/app/config/gimpbaseconfig.c -+++ b/app/config/gimpbaseconfig.c -@@ -43,6 +43,8 @@ - #include "gimp-intl.h" - - -+#define GIMP_MAX_MEM_PROCESS (MIN (G_MAXSIZE, GIMP_MAX_MEMSIZE)) -+ - enum - { - PROP_0, -@@ -142,6 +144,9 @@ gimp_base_config_class_init (GimpBaseConfigClass *klass) - - memory_size = get_physical_memory_size (); - -+ /* limit to the amount one process can handle */ -+ memory_size = MIN (GIMP_MAX_MEM_PROCESS, memory_size); -+ - if (memory_size > 0) - memory_size = memory_size / 2; /* half the memory */ - else -@@ -149,7 +154,7 @@ gimp_base_config_class_init (GimpBaseConfigClass *klass) - - GIMP_CONFIG_INSTALL_PROP_MEMSIZE (object_class, PROP_TILE_CACHE_SIZE, - "tile-cache-size", TILE_CACHE_SIZE_BLURB, -- 0, MIN (G_MAXSIZE, GIMP_MAX_MEMSIZE), -+ 0, GIMP_MAX_MEM_PROCESS, - memory_size, - GIMP_PARAM_STATIC_STRINGS | - GIMP_CONFIG_PARAM_CONFIRM); --- -1.7.11.7 - diff --git a/gimp.spec b/gimp.spec index 572d599..7640d9f 100644 --- a/gimp.spec +++ b/gimp.spec @@ -79,8 +79,8 @@ Summary: GNU Image Manipulation Program Name: gimp Epoch: 2 -Version: 2.8.2 -Release: %{?prerelprefix}7%{dotprerel}%{dotgitrev}%{?dist} +Version: 2.8.4 +Release: %{?prerelprefix}1%{dotprerel}%{dotgitrev}%{?dist} # Compute some version related macros # Ugly hack, you need to get your quoting backslashes/percent signs straight @@ -200,27 +200,9 @@ Source0: ftp://ftp.gimp.org/pub/gimp/v%{binver}/gimp-%{version}%{dashprer Patch0: gimp-%{version}%{dashprerel}-git%{gitrev}.patch.bz2 %endif -# Don't crash on machines with more than 32GB RAM. -# Fixed upstream: -# commit 2b714fcb1a6c24bcaeb13b1c592a365c374f96d8 -# commit c4365d4c14d1a1fc35210b373119a0870458c46b -Patch1: gimp-2.8.2-max-memsize.patch -# Don't leave misaligned selection when cropping with rectangular select tool. -# https://bugzilla.redhat.com/show_bug.cgi?id=873212 -# https://bugzilla.gnome.org/show_bug.cgi?id=683462 -# Fixed upstream: -# commit e546f2b43bbe77901516c780428bda40f5af26ba -Patch2: gimp-2.8.2-crop-to-selection.patch -# Set file dialog as transient when saving/exporting from context menu. -# https://bugzilla.redhat.com/show_bug.cgi?id=835736 -# https://bugzilla.gnome.org/show_bug.cgi?id=683462 -# Fixed upstream: -# commit 1a4087bd5f1c79859fbfc417eff58f8e7783f335 -# commit f6f8079013401eecaa11e5f8bdd2688e51fd6602 -Patch3: gimp-2.8.2-file-dialog-toplevel.patch # Try using the system monitor profile for color management by default. # Fedora specific. -Patch4: gimp-2.8.2-cm-system-monitor-profile-by-default.patch +Patch1: gimp-2.8.2-cm-system-monitor-profile-by-default.patch %description GIMP (GNU Image Manipulation Program) is a powerful image composition and @@ -306,10 +288,7 @@ EOF %patch0 -p1 -b .git%{gitrev} %endif -%patch1 -p1 -b .max-memsize -%patch2 -p1 -b .crop-to-selection -%patch3 -p1 -b .file-dialog-toplevel -%patch4 -p1 -b .cm-system-monitor-profile-by-default +%patch1 -p1 -b .cm-system-monitor-profile-by-default %build %if %{with hardening} @@ -604,6 +583,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %endif %changelog +* Wed Feb 06 2013 Nils Philippsen - 2:2.8.4-1 +- version 2.8.4 + * Mon Jan 28 2013 Nils Philippsen - 2:2.8.2-7 - build with -fno-strict-aliasing diff --git a/sources b/sources index 5fd12b8..73d3314 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -b542138820ca3a41cbd63fc331907955 gimp-2.8.2.tar.bz2 +392592e8755d046317878d226145900f gimp-2.8.4.tar.bz2