[arch-commits] Commit in gimp/trunk (PKGBUILD gimp-2.6.6-help-browser-webkit.patch)

Eric Bélanger eric at archlinux.org
Sat Aug 8 07:04:35 UTC 2009


    Date: Saturday, August 8, 2009 @ 03:04:35
  Author: eric
Revision: 49444

upgpkg: gimp 2.6.6-3
    Fixed help browser plugin (close FS#13930), Fixed broken man page symlink

Added:
  gimp/trunk/gimp-2.6.6-help-browser-webkit.patch
Modified:
  gimp/trunk/PKGBUILD

--------------------------------------+
 PKGBUILD                             |   17 ++-
 gimp-2.6.6-help-browser-webkit.patch |  145 +++++++++++++++++++++++++++++++++
 2 files changed, 156 insertions(+), 6 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2009-08-08 05:54:38 UTC (rev 49443)
+++ PKGBUILD	2009-08-08 07:04:35 UTC (rev 49444)
@@ -3,7 +3,7 @@
 
 pkgname=gimp
 pkgver=2.6.6
-pkgrel=2
+pkgrel=3
 pkgdesc="GNU Image Manipulation Program"
 arch=('i686' 'x86_64')
 url="http://www.gimp.org/"
@@ -22,20 +22,25 @@
             'alsa-lib: for MIDI event controller module')
 options=('!libtool' '!makeflags')
 conflicts=('gimp-devel')
-install=${pkgname}.install
+install=gimp.install
 source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
-        linux.gpl)
-md5sums=('23d880dd09cd62c936ed04666a53f8e4' 'bb27bc214261d36484093e857f015f38')
+        linux.gpl gimp-2.6.6-help-browser-webkit.patch)
+md5sums=('23d880dd09cd62c936ed04666a53f8e4' 'bb27bc214261d36484093e857f015f38'\
+         'ba425a9108d8bf70b83da867a9d0c5d6')
+sha1sums=('71aec5cd671a2431daa91dea91abb6d3822a896b' '110ce9798173b19a662d086ed7b882b4729f06cf'\
+         '399a581cbf700e1613e080d91b7b2cccfdfea9da')
 
 build() {
    cd ${srcdir}/${pkgname}-${pkgver}
+   patch -p1 < ../gimp-2.6.6-help-browser-webkit.patch || return 1
    ./configure --prefix=/usr --sysconfdir=/etc \
      --enable-mp --enable-gimp-console --enable-gimp-remote \
      --disable-devel-docs --enable-python --without-gvfs \
-     --without-gnomevfs --with-gif-compression=lzw --without-aa \
-     || return 1
+     --without-gnomevfs --with-gif-compression=lzw --without-aa || return 1
    make || return 1
    make DESTDIR=${pkgdir} install-strip || return 1
    install -Dm644 ${srcdir}/linux.gpl \
      ${pkgdir}/usr/share/gimp/2.0/palettes/Linux.gpl || return 1
+   cd ${pkgdir}/usr/share/man/man1
+   ln -sf gimp-console-2.6.1.gz gimp-console.1
 }

Added: gimp-2.6.6-help-browser-webkit.patch
===================================================================
--- gimp-2.6.6-help-browser-webkit.patch	                        (rev 0)
+++ gimp-2.6.6-help-browser-webkit.patch	2009-08-08 07:04:35 UTC (rev 49444)
@@ -0,0 +1,145 @@
+commit 76c11122dd72e2c47675da394dadcca53c9069dd
+Author: Nils Philippsen <nils at redhat.com>
+Date:   Mon Jun 29 13:34:13 2009 +0200
+
+    patch: help-browser-webkit
+    
+    Squashed commit of the following:
+    
+    commit 7f26593f67532850a2c3e1141f5c7f5e667b9064
+    Author: Sven Neumann <sven at gimp.org>
+    Date:   Tue May 12 09:39:21 2009 +0200
+    
+        help-browser: fix history menus
+    
+        The history menus located at the back and forward buttons stopped working
+        after a webkit update some time ago. With these changes the menus work
+        again, at least with recent webkit releases.
+    
+        Signed-off-by: Nils Philippsen <nils at redhat.com>
+    
+    commit 7647788dbf37369b602361a6abd598388a4cb923
+    Author: Sven Neumann <sven at gimp.org>
+    Date:   Sat Mar 28 16:42:50 2009 +0000
+    
+        Bug 577024 – help-browser plugin crashes when used with webkit 1.1.3
+    
+        2009-03-28  Sven Neumann  <sven at gimp.org>
+    
+        	Bug 577024 – help-browser plugin crashes when used with webkit 1.1.3
+    
+        	* plug-ins/help-browser/help-browser.c (run): call g_thread_init().
+        	Seems to be needed with newer versions of webkit.
+    
+        svn path=/trunk/; revision=28227
+    
+        Signed-off-by: Nils Philippsen <nils at redhat.com>
+
+diff --git a/plug-ins/help-browser/dialog.c b/plug-ins/help-browser/dialog.c
+index 5ad6a06..159c67a 100644
+--- a/plug-ins/help-browser/dialog.c
++++ b/plug-ins/help-browser/dialog.c
+@@ -886,27 +886,30 @@ close_callback (GtkAction *action,
+ }
+ 
+ static void
+-menu_callback (GtkWidget            *menu,
+-               WebKitWebHistoryItem *item)
++menu_callback (GtkWidget *menu,
++               gpointer   data)
+ {
+-  browser_dialog_load (webkit_web_history_item_get_uri (item));
++  gint steps = GPOINTER_TO_INT (data);
++
++  webkit_web_view_go_back_or_forward (WEBKIT_WEB_VIEW (view), steps);
+ }
+ 
+-/*  this function unrefs the items and frees the list  */
+ static GtkWidget *
+-build_menu (GList *items)
++build_menu (const GList *items,
++            gboolean     back)
+ {
+-  GtkWidget *menu;
+-  GList     *list;
++  GtkWidget   *menu;
++  const GList *iter;
++  gint         steps;
+ 
+   if (! items)
+     return NULL;
+ 
+   menu = gtk_menu_new ();
+ 
+-  for (list = items; list; list = g_list_next (list))
++  for (iter = items, steps = 1; iter; iter = g_list_next (iter), steps++)
+     {
+-      WebKitWebHistoryItem *item = list->data;
++      WebKitWebHistoryItem *item = iter->data;
+       const gchar          *title;
+ 
+       title = webkit_web_history_item_get_title (item);
+@@ -918,16 +921,12 @@ build_menu (GList *items)
+           gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
+           gtk_widget_show (menu_item);
+ 
+-          g_signal_connect_object (menu_item, "activate",
+-                                   G_CALLBACK (menu_callback),
+-                                   item, 0);
+-
+-          g_object_unref (item);
++          g_signal_connect (menu_item, "activate",
++                            G_CALLBACK (menu_callback),
++                            GINT_TO_POINTER (back ? - steps : steps));
+         }
+     }
+ 
+-  g_list_free (items);
+-
+   return menu;
+ }
+ 
+@@ -950,12 +949,12 @@ update_actions (void)
+ 
+   if (back_forward_list)
+     {
+-      GList *list;
++      const GList *list;
+ 
+       list = webkit_web_back_forward_list_get_back_list_with_limit (back_forward_list,
+                                                                     12);
+       gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (button_prev),
+-                                     build_menu (list));
++                                     build_menu (list, TRUE));
+     }
+   else
+     {
+@@ -971,12 +970,12 @@ update_actions (void)
+ 
+   if (back_forward_list)
+     {
+-      GList *list;
++      const GList *list;
+ 
+       list = webkit_web_back_forward_list_get_forward_list_with_limit (back_forward_list,
+                                                                        12);
+       gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (button_next),
+-                                     build_menu (list));
++                                     build_menu (list, FALSE));
+     }
+   else
+     {
+diff --git a/plug-ins/help-browser/help-browser.c b/plug-ins/help-browser/help-browser.c
+index efbabfe..d632d9c 100644
+--- a/plug-ins/help-browser/help-browser.c
++++ b/plug-ins/help-browser/help-browser.c
+@@ -129,6 +129,9 @@ run (const gchar      *name,
+ 
+   INIT_I18N ();
+ 
++  if (! g_thread_supported ())
++    g_thread_init (NULL);
++
+   switch (run_mode)
+     {
+     case GIMP_RUN_INTERACTIVE:




More information about the arch-commits mailing list