[arch-commits] Commit in libwnck/repos (6 files)

Jan de Groot jgc at archlinux.org
Tue Feb 17 08:35:54 UTC 2015


    Date: Tuesday, February 17, 2015 @ 09:35:54
  Author: jgc
Revision: 231642

archrelease: copy trunk to extra-i686, extra-x86_64

Added:
  libwnck/repos/extra-i686/PKGBUILD
    (from rev 231641, libwnck/trunk/PKGBUILD)
  libwnck/repos/extra-i686/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch
    (from rev 231641, libwnck/trunk/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
  libwnck/repos/extra-x86_64/PKGBUILD
    (from rev 231641, libwnck/trunk/PKGBUILD)
  libwnck/repos/extra-x86_64/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch
    (from rev 231641, libwnck/trunk/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
Deleted:
  libwnck/repos/extra-i686/PKGBUILD
  libwnck/repos/extra-x86_64/PKGBUILD

-----------------------------------------------------------------------------------+
 /PKGBUILD                                                                         |   72 ++++++
 extra-i686/PKGBUILD                                                               |   29 --
 extra-i686/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch   |  104 ++++++++++
 extra-x86_64/PKGBUILD                                                             |   29 --
 extra-x86_64/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch |  104 ++++++++++
 5 files changed, 280 insertions(+), 58 deletions(-)

Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD	2015-02-17 08:35:48 UTC (rev 231641)
+++ extra-i686/PKGBUILD	2015-02-17 08:35:54 UTC (rev 231642)
@@ -1,29 +0,0 @@
-# $Id$
-# Maintainer: Jan de Groot  <jgc at archlinux.org>
-pkgname=libwnck
-pkgver=2.30.7
-pkgrel=2
-pkgdesc="Window Navigator Construction Kit"
-arch=('i686' 'x86_64')
-license=('LGPL')
-depends=('gtk2' 'startup-notification' 'libxres')
-makedepends=('libxt' 'intltool' 'gobject-introspection')
-url="http://www.gnome.org/"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.xz)
-sha256sums=('8be84d5333f0ade0e61af9f4cbf7685cb7cce2aa0ee32f53bac32107a81fe194')
-
-build() {
-    cd "${srcdir}/${pkgname}-${pkgver}"
-    ./configure --prefix=/usr --sysconfdir=/etc \
-        --localstatedir=/var --disable-static
-    make
-}
-
-package() {
-    cd "${srcdir}/${pkgname}-${pkgver}"
-    make DESTDIR="${pkgdir}" install
-
-    #The binaries are shipped in libwnck3
-    rm -f ${pkgdir}/usr/bin/wnckprop
-    rm -f ${pkgdir}/usr/bin/wnck-urgency-monitor
-}

Copied: libwnck/repos/extra-i686/PKGBUILD (from rev 231641, libwnck/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD	                        (rev 0)
+++ extra-i686/PKGBUILD	2015-02-17 08:35:54 UTC (rev 231642)
@@ -0,0 +1,36 @@
+# $Id$
+# Maintainer: Jan de Groot  <jgc at archlinux.org>
+pkgname=libwnck
+pkgver=2.31.0
+pkgrel=1
+pkgdesc="Window Navigator Construction Kit"
+arch=('i686' 'x86_64')
+license=('LGPL')
+depends=('gtk2' 'startup-notification' 'libxres')
+makedepends=('libxt' 'intltool' 'gobject-introspection' 'python2')
+url="http://www.gnome.org/"
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver:0:4}/${pkgname}-${pkgver}.tar.xz
+        WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
+sha256sums=('83f732d20781fc88b22cdc6aaf2d4f388db6d3d4ff28d1a8fd45be9fb7743a9e'
+            'a4a359027f3297847e7d3c9d8cefc6404a927ad6fb5aed864f58524834c60980')
+
+prepare() {
+  cd $pkgname-$pkgver
+  patch -Np1 -i ../WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch
+}
+build() {
+    cd "${srcdir}/${pkgname}-${pkgver}"
+    ./configure --prefix=/usr --sysconfdir=/etc \
+        --localstatedir=/var --disable-static
+    make
+}
+
+package() {
+    cd "${srcdir}/${pkgname}-${pkgver}"
+    make DESTDIR="${pkgdir}" install
+
+    #The binaries are shipped in libwnck3
+    rm -f "${pkgdir}/usr/bin/wnckprop"
+    rm -f "${pkgdir}/usr/bin/wnck-urgency-monitor"
+    rmdir "${pkgdir}/usr/bin"
+}

Copied: libwnck/repos/extra-i686/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch (from rev 231641, libwnck/trunk/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
===================================================================
--- extra-i686/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch	                        (rev 0)
+++ extra-i686/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch	2015-02-17 08:35:54 UTC (rev 231642)
@@ -0,0 +1,104 @@
+From 9e17ab5b4345d90aa5e01a2379ae0ce29c3a3cf3 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail at 3v1n0.net>
+Date: Fri, 27 Sep 2013 19:32:51 +0200
+Subject: WindowActionMenu: unset window and stop async events on dispose
+
+Finalize function can be never called here, so it's better to do this
+when the widget gets destroyed.
+
+diff --git a/libwnck/window-action-menu.c b/libwnck/window-action-menu.c
+index e687cff..1e4b27e 100644
+--- a/libwnck/window-action-menu.c
++++ b/libwnck/window-action-menu.c
+@@ -104,10 +104,8 @@ enum {
+ G_DEFINE_TYPE (WnckActionMenu, wnck_action_menu, GTK_TYPE_MENU);
+ #define WNCK_ACTION_MENU_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), WNCK_TYPE_ACTION_MENU, WnckActionMenuPrivate))
+ 
+-static void wnck_action_menu_finalize (GObject *object);
++static void wnck_action_menu_dispose (GObject *object);
+ 
+-static void object_weak_notify (gpointer data,
+-                                GObject *obj);
+ static void window_weak_notify (gpointer data,
+                                 GObject *window);
+ 
+@@ -118,23 +116,10 @@ static void
+ window_weak_notify (gpointer data,
+                     GObject *window)
+ {
+-  g_object_weak_unref (G_OBJECT (data),
+-                       object_weak_notify,
+-                       window);
+-
++  WNCK_ACTION_MENU(data)->priv->window = NULL;
+   gtk_widget_destroy (GTK_WIDGET (data));
+ }
+ 
+-
+-static void
+-object_weak_notify (gpointer data,
+-                    GObject *obj)
+-{
+-  g_object_weak_unref (G_OBJECT (data),
+-                       window_weak_notify,
+-                       obj);
+-}
+-
+ static WnckActionMenu*
+ get_action_menu (GtkWidget *widget)
+ {
+@@ -1030,7 +1015,6 @@ wnck_action_menu_constructor (GType                  type,
+     }
+ 
+   g_object_weak_ref (G_OBJECT (priv->window), window_weak_notify, menu);
+-  g_object_weak_ref (G_OBJECT (menu), object_weak_notify, priv->window);
+ 
+   priv->minimize_item = make_menu_item (MINIMIZE);
+ 
+@@ -1181,7 +1165,7 @@ wnck_action_menu_class_init (WnckActionMenuClass *klass)
+   object_class->constructor = wnck_action_menu_constructor;
+   object_class->get_property = wnck_action_menu_get_property;
+   object_class->set_property = wnck_action_menu_set_property;
+-  object_class->finalize = wnck_action_menu_finalize;
++  object_class->dispose = wnck_action_menu_dispose;
+ 
+   g_object_class_install_property (object_class,
+                                    PROP_WINDOW,
+@@ -1192,17 +1176,30 @@ wnck_action_menu_class_init (WnckActionMenuClass *klass)
+ }
+ 
+ static void
+-wnck_action_menu_finalize (GObject *object)
++wnck_action_menu_dispose (GObject *object)
+ {
+   WnckActionMenu *menu;
+ 
+   menu = WNCK_ACTION_MENU (object);
+ 
+   if (menu->priv->idle_handler)
+-    g_source_remove (menu->priv->idle_handler);
+-  menu->priv->idle_handler = 0;
++    {
++      g_source_remove (menu->priv->idle_handler);
++      menu->priv->idle_handler = 0;
++    }
++
++  if (WNCK_IS_WINDOW (menu->priv->window))
++    {
++      g_object_weak_unref (G_OBJECT (menu->priv->window), window_weak_notify, menu);
++      g_signal_handlers_disconnect_by_data (menu->priv->window, menu);
++
++      WnckScreen *screen = wnck_window_get_screen (menu->priv->window);
++      g_signal_handlers_disconnect_by_data (screen, menu);
++
++      menu->priv->window = NULL;
++    }
+ 
+-  G_OBJECT_CLASS (wnck_action_menu_parent_class)->finalize (object);
++  G_OBJECT_CLASS (wnck_action_menu_parent_class)->dispose (object);
+ }
+ 
+ /**
+-- 
+cgit v0.10.2
+

Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD	2015-02-17 08:35:48 UTC (rev 231641)
+++ extra-x86_64/PKGBUILD	2015-02-17 08:35:54 UTC (rev 231642)
@@ -1,29 +0,0 @@
-# $Id$
-# Maintainer: Jan de Groot  <jgc at archlinux.org>
-pkgname=libwnck
-pkgver=2.30.7
-pkgrel=2
-pkgdesc="Window Navigator Construction Kit"
-arch=('i686' 'x86_64')
-license=('LGPL')
-depends=('gtk2' 'startup-notification' 'libxres')
-makedepends=('libxt' 'intltool' 'gobject-introspection')
-url="http://www.gnome.org/"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.xz)
-sha256sums=('8be84d5333f0ade0e61af9f4cbf7685cb7cce2aa0ee32f53bac32107a81fe194')
-
-build() {
-    cd "${srcdir}/${pkgname}-${pkgver}"
-    ./configure --prefix=/usr --sysconfdir=/etc \
-        --localstatedir=/var --disable-static
-    make
-}
-
-package() {
-    cd "${srcdir}/${pkgname}-${pkgver}"
-    make DESTDIR="${pkgdir}" install
-
-    #The binaries are shipped in libwnck3
-    rm -f ${pkgdir}/usr/bin/wnckprop
-    rm -f ${pkgdir}/usr/bin/wnck-urgency-monitor
-}

Copied: libwnck/repos/extra-x86_64/PKGBUILD (from rev 231641, libwnck/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD	                        (rev 0)
+++ extra-x86_64/PKGBUILD	2015-02-17 08:35:54 UTC (rev 231642)
@@ -0,0 +1,36 @@
+# $Id$
+# Maintainer: Jan de Groot  <jgc at archlinux.org>
+pkgname=libwnck
+pkgver=2.31.0
+pkgrel=1
+pkgdesc="Window Navigator Construction Kit"
+arch=('i686' 'x86_64')
+license=('LGPL')
+depends=('gtk2' 'startup-notification' 'libxres')
+makedepends=('libxt' 'intltool' 'gobject-introspection' 'python2')
+url="http://www.gnome.org/"
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver:0:4}/${pkgname}-${pkgver}.tar.xz
+        WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
+sha256sums=('83f732d20781fc88b22cdc6aaf2d4f388db6d3d4ff28d1a8fd45be9fb7743a9e'
+            'a4a359027f3297847e7d3c9d8cefc6404a927ad6fb5aed864f58524834c60980')
+
+prepare() {
+  cd $pkgname-$pkgver
+  patch -Np1 -i ../WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch
+}
+build() {
+    cd "${srcdir}/${pkgname}-${pkgver}"
+    ./configure --prefix=/usr --sysconfdir=/etc \
+        --localstatedir=/var --disable-static
+    make
+}
+
+package() {
+    cd "${srcdir}/${pkgname}-${pkgver}"
+    make DESTDIR="${pkgdir}" install
+
+    #The binaries are shipped in libwnck3
+    rm -f "${pkgdir}/usr/bin/wnckprop"
+    rm -f "${pkgdir}/usr/bin/wnck-urgency-monitor"
+    rmdir "${pkgdir}/usr/bin"
+}

Copied: libwnck/repos/extra-x86_64/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch (from rev 231641, libwnck/trunk/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch)
===================================================================
--- extra-x86_64/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch	                        (rev 0)
+++ extra-x86_64/WindowActionMenu-unset-window-and-stop-async-events-on-dispose.patch	2015-02-17 08:35:54 UTC (rev 231642)
@@ -0,0 +1,104 @@
+From 9e17ab5b4345d90aa5e01a2379ae0ce29c3a3cf3 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail at 3v1n0.net>
+Date: Fri, 27 Sep 2013 19:32:51 +0200
+Subject: WindowActionMenu: unset window and stop async events on dispose
+
+Finalize function can be never called here, so it's better to do this
+when the widget gets destroyed.
+
+diff --git a/libwnck/window-action-menu.c b/libwnck/window-action-menu.c
+index e687cff..1e4b27e 100644
+--- a/libwnck/window-action-menu.c
++++ b/libwnck/window-action-menu.c
+@@ -104,10 +104,8 @@ enum {
+ G_DEFINE_TYPE (WnckActionMenu, wnck_action_menu, GTK_TYPE_MENU);
+ #define WNCK_ACTION_MENU_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), WNCK_TYPE_ACTION_MENU, WnckActionMenuPrivate))
+ 
+-static void wnck_action_menu_finalize (GObject *object);
++static void wnck_action_menu_dispose (GObject *object);
+ 
+-static void object_weak_notify (gpointer data,
+-                                GObject *obj);
+ static void window_weak_notify (gpointer data,
+                                 GObject *window);
+ 
+@@ -118,23 +116,10 @@ static void
+ window_weak_notify (gpointer data,
+                     GObject *window)
+ {
+-  g_object_weak_unref (G_OBJECT (data),
+-                       object_weak_notify,
+-                       window);
+-
++  WNCK_ACTION_MENU(data)->priv->window = NULL;
+   gtk_widget_destroy (GTK_WIDGET (data));
+ }
+ 
+-
+-static void
+-object_weak_notify (gpointer data,
+-                    GObject *obj)
+-{
+-  g_object_weak_unref (G_OBJECT (data),
+-                       window_weak_notify,
+-                       obj);
+-}
+-
+ static WnckActionMenu*
+ get_action_menu (GtkWidget *widget)
+ {
+@@ -1030,7 +1015,6 @@ wnck_action_menu_constructor (GType                  type,
+     }
+ 
+   g_object_weak_ref (G_OBJECT (priv->window), window_weak_notify, menu);
+-  g_object_weak_ref (G_OBJECT (menu), object_weak_notify, priv->window);
+ 
+   priv->minimize_item = make_menu_item (MINIMIZE);
+ 
+@@ -1181,7 +1165,7 @@ wnck_action_menu_class_init (WnckActionMenuClass *klass)
+   object_class->constructor = wnck_action_menu_constructor;
+   object_class->get_property = wnck_action_menu_get_property;
+   object_class->set_property = wnck_action_menu_set_property;
+-  object_class->finalize = wnck_action_menu_finalize;
++  object_class->dispose = wnck_action_menu_dispose;
+ 
+   g_object_class_install_property (object_class,
+                                    PROP_WINDOW,
+@@ -1192,17 +1176,30 @@ wnck_action_menu_class_init (WnckActionMenuClass *klass)
+ }
+ 
+ static void
+-wnck_action_menu_finalize (GObject *object)
++wnck_action_menu_dispose (GObject *object)
+ {
+   WnckActionMenu *menu;
+ 
+   menu = WNCK_ACTION_MENU (object);
+ 
+   if (menu->priv->idle_handler)
+-    g_source_remove (menu->priv->idle_handler);
+-  menu->priv->idle_handler = 0;
++    {
++      g_source_remove (menu->priv->idle_handler);
++      menu->priv->idle_handler = 0;
++    }
++
++  if (WNCK_IS_WINDOW (menu->priv->window))
++    {
++      g_object_weak_unref (G_OBJECT (menu->priv->window), window_weak_notify, menu);
++      g_signal_handlers_disconnect_by_data (menu->priv->window, menu);
++
++      WnckScreen *screen = wnck_window_get_screen (menu->priv->window);
++      g_signal_handlers_disconnect_by_data (screen, menu);
++
++      menu->priv->window = NULL;
++    }
+ 
+-  G_OBJECT_CLASS (wnck_action_menu_parent_class)->finalize (object);
++  G_OBJECT_CLASS (wnck_action_menu_parent_class)->dispose (object);
+ }
+ 
+ /**
+-- 
+cgit v0.10.2
+



More information about the arch-commits mailing list