r35416 - in /desktop/unstable/gnome-shell/debian: changelog control control.in patches/01_slist_cleanup.patch patches/02_filter_nodisplay_parents.patch patches/03_fix_nodisplay.patch patches/27-don-t-show-apps-in-NoDisplay-categories.patch patches/series
joss at users.alioth.debian.org
joss at users.alioth.debian.org
Sat Jun 23 18:49:39 UTC 2012
Author: joss
Date: Sat Jun 23 18:49:39 2012
New Revision: 35416
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=35416
Log:
* 27-don-t-show-apps-in-NoDisplay-categories.patch: drop this patch as
it is not completely functional.
* 01_slist_cleanup.patch, 02_filter_nodisplay_parents.patch,
03_fix_nodisplay.patch: correctly filter out applications in a
NoDisplay directory, including parent directories. This should
finally fix for good handling of the Debian menu.
* Bump the build-dependency on gnome-menus accordingly.
Added:
desktop/unstable/gnome-shell/debian/patches/01_slist_cleanup.patch
desktop/unstable/gnome-shell/debian/patches/02_filter_nodisplay_parents.patch
desktop/unstable/gnome-shell/debian/patches/03_fix_nodisplay.patch
Removed:
desktop/unstable/gnome-shell/debian/patches/27-don-t-show-apps-in-NoDisplay-categories.patch
Modified:
desktop/unstable/gnome-shell/debian/changelog
desktop/unstable/gnome-shell/debian/control
desktop/unstable/gnome-shell/debian/control.in
desktop/unstable/gnome-shell/debian/patches/series
Modified: desktop/unstable/gnome-shell/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/changelog?rev=35416&op=diff
==============================================================================
--- desktop/unstable/gnome-shell/debian/changelog [utf-8] (original)
+++ desktop/unstable/gnome-shell/debian/changelog [utf-8] Sat Jun 23 18:49:39 2012
@@ -1,3 +1,15 @@
+gnome-shell (3.4.1-8) unstable; urgency=low
+
+ * 27-don-t-show-apps-in-NoDisplay-categories.patch: drop this patch as
+ it is not completely functional.
+ * 01_slist_cleanup.patch, 02_filter_nodisplay_parents.patch,
+ 03_fix_nodisplay.patch: correctly filter out applications in a
+ NoDisplay directory, including parent directories. This should
+ finally fix for good handling of the Debian menu.
+ * Bump the build-dependency on gnome-menus accordingly.
+
+ -- Josselin Mouette <joss at debian.org> Sat, 23 Jun 2012 20:49:32 +0200
+
gnome-shell (3.4.1-7) unstable; urgency=low
* debian/patches/21_revert_evolution_gsettings.patch: Drop this patch now
Modified: desktop/unstable/gnome-shell/debian/control
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/control?rev=35416&op=diff
==============================================================================
--- desktop/unstable/gnome-shell/debian/control [utf-8] (original)
+++ desktop/unstable/gnome-shell/debian/control [utf-8] Sat Jun 23 18:49:39 2012
@@ -7,7 +7,7 @@
Section: gnome
Priority: optional
Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers at lists.alioth.debian.org>
-Uploaders: Michael Biebl <biebl at debian.org>, Sjoerd Simons <sjoerd at debian.org>
+Uploaders: Josselin Mouette <joss at debian.org>, Michael Biebl <biebl at debian.org>, Sjoerd Simons <sjoerd at debian.org>
Build-Depends: autotools-dev,
cdbs,
debhelper (>= 8.1.3~),
@@ -32,7 +32,7 @@
libgnome-bluetooth-dev (>= 2.90.0) [linux-any],
libgnome-desktop-3-dev (>= 2.90.0),
libgnome-keyring-dev,
- libgnome-menu-3-dev,
+ libgnome-menu-3-dev (>= 3.4.2-3~),
libgstreamer0.10-dev (>= 0.10.16),
libgtk-3-dev (>= 3.3.9),
libmutter-dev (>= 3.4.1),
Modified: desktop/unstable/gnome-shell/debian/control.in
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/control.in?rev=35416&op=diff
==============================================================================
--- desktop/unstable/gnome-shell/debian/control.in [utf-8] (original)
+++ desktop/unstable/gnome-shell/debian/control.in [utf-8] Sat Jun 23 18:49:39 2012
@@ -27,7 +27,7 @@
libgnome-bluetooth-dev (>= 2.90.0) [linux-any],
libgnome-desktop-3-dev (>= 2.90.0),
libgnome-keyring-dev,
- libgnome-menu-3-dev,
+ libgnome-menu-3-dev (>= 3.4.2-3~),
libgstreamer0.10-dev (>= 0.10.16),
libgtk-3-dev (>= 3.3.9),
libmutter-dev (>= 3.4.1),
Added: desktop/unstable/gnome-shell/debian/patches/01_slist_cleanup.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/patches/01_slist_cleanup.patch?rev=35416&op=file
==============================================================================
--- desktop/unstable/gnome-shell/debian/patches/01_slist_cleanup.patch (added)
+++ desktop/unstable/gnome-shell/debian/patches/01_slist_cleanup.patch [utf-8] Sat Jun 23 18:49:39 2012
@@ -1,0 +1,53 @@
+From 96cdc9c4eb9318299b3382026d1dbac1d5941f17 Mon Sep 17 00:00:00 2001
+From: Jasper St. Pierre <jstpierre at mecheye.net>
+Date: Mon, 18 Jun 2012 10:22:29 +0000
+Subject: app-system: Use g_slist_free_full
+
+https://bugzilla.gnome.org/show_bug.cgi?id=658176
+---
+diff --git a/src/shell-app-system.c b/src/shell-app-system.c
+index 26718b3..6210220 100644
+--- a/src/shell-app-system.c
++++ b/src/shell-app-system.c
+@@ -123,8 +123,7 @@ shell_app_system_finalize (GObject *object)
+ g_hash_table_destroy (priv->id_to_app);
+ g_hash_table_destroy (priv->setting_id_to_app);
+
+- g_slist_foreach (priv->known_vendor_prefixes, (GFunc)g_free, NULL);
+- g_slist_free (priv->known_vendor_prefixes);
++ g_slist_free_full (priv->known_vendor_prefixes, g_free);
+ priv->known_vendor_prefixes = NULL;
+
+ G_OBJECT_CLASS (shell_app_system_parent_class)->finalize (object);
+@@ -309,8 +308,7 @@ on_apps_tree_changed_cb (GMenuTree *tree,
+
+ g_assert (tree == self->priv->apps_tree);
+
+- g_slist_foreach (self->priv->known_vendor_prefixes, (GFunc)g_free, NULL);
+- g_slist_free (self->priv->known_vendor_prefixes);
++ g_slist_free_full (self->priv->known_vendor_prefixes, g_free);
+ self->priv->known_vendor_prefixes = NULL;
+
+ if (!gmenu_tree_load_sync (self->priv->apps_tree, &error))
+@@ -761,8 +759,7 @@ search_tree (ShellAppSystem *self,
+ &prefix_results,
+ &substring_results);
+ }
+- g_slist_foreach (normalized_terms, (GFunc)g_free, NULL);
+- g_slist_free (normalized_terms);
++ g_slist_free_full (normalized_terms, g_free);
+
+ return sort_and_concat_results (self, prefix_results, substring_results);
+
+@@ -815,8 +812,7 @@ shell_app_system_subsearch (ShellAppSystem *system,
+ &prefix_results,
+ &substring_results);
+ }
+- g_slist_foreach (normalized_terms, (GFunc)g_free, NULL);
+- g_slist_free (normalized_terms);
++ g_slist_free_full (normalized_terms, g_free);
+
+ /* Note that a shorter term might have matched as a prefix, but
+ when extended only as a substring, so we have to redo the
+--
+cgit v0.9.0.2
Added: desktop/unstable/gnome-shell/debian/patches/02_filter_nodisplay_parents.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/patches/02_filter_nodisplay_parents.patch?rev=35416&op=file
==============================================================================
--- desktop/unstable/gnome-shell/debian/patches/02_filter_nodisplay_parents.patch (added)
+++ desktop/unstable/gnome-shell/debian/patches/02_filter_nodisplay_parents.patch [utf-8] Sat Jun 23 18:49:39 2012
@@ -1,0 +1,79 @@
+From df56ff4f097ab4109a40fc928199abfe6511a4b7 Mon Sep 17 00:00:00 2001
+From: Jasper St. Pierre <jstpierre at mecheye.net>
+Date: Tue, 19 Jun 2012 15:35:05 +0000
+Subject: app-system: Don't show items with NoDisplay parents in the search
+
+Additionally, require gnome-menus 3.5.3, as we're using new API
+introduced there.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=658176
+---
+diff --git a/src/shell-app-system.c b/src/shell-app-system.c
+index 6210220..7f34c28 100644
+--- a/src/shell-app-system.c
++++ b/src/shell-app-system.c
+@@ -41,6 +41,7 @@ struct _ShellAppSystemPrivate {
+ GMenuTree *apps_tree;
+
+ GHashTable *running_apps;
++ GHashTable *visible_id_to_app;
+ GHashTable *id_to_app;
+
+ GSList *known_vendor_prefixes;
+@@ -92,14 +93,16 @@ shell_app_system_init (ShellAppSystem *self)
+ priv->id_to_app = g_hash_table_new_full (g_str_hash, g_str_equal,
+ NULL,
+ (GDestroyNotify)g_object_unref);
++
++ /* All the objects in this hash table are owned by id_to_app */
++ priv->visible_id_to_app = g_hash_table_new (g_str_hash, g_str_equal);
++
+ priv->setting_id_to_app = g_hash_table_new_full (g_str_hash, g_str_equal,
+ NULL,
+ (GDestroyNotify)g_object_unref);
+
+- /* For now, we want to pick up Evince, Nautilus, etc. We'll
+- * handle NODISPLAY semantics at a higher level or investigate them
+- * case by case.
+- */
++ /* We want to track NoDisplay apps, so we add INCLUDE_NODISPLAY. We'll
++ * filter NoDisplay apps out when showing them to the user. */
+ priv->apps_tree = gmenu_tree_new ("applications.menu", GMENU_TREE_FLAGS_INCLUDE_NODISPLAY);
+ g_signal_connect (priv->apps_tree, "changed", G_CALLBACK (on_apps_tree_changed_cb), self);
+
+@@ -121,6 +124,7 @@ shell_app_system_finalize (GObject *object)
+
+ g_hash_table_destroy (priv->running_apps);
+ g_hash_table_destroy (priv->id_to_app);
++ g_hash_table_destroy (priv->visible_id_to_app);
+ g_hash_table_destroy (priv->setting_id_to_app);
+
+ g_slist_free_full (priv->known_vendor_prefixes, g_free);
+@@ -308,6 +312,7 @@ on_apps_tree_changed_cb (GMenuTree *tree,
+
+ g_assert (tree == self->priv->apps_tree);
+
++ g_hash_table_remove_all (self->priv->visible_id_to_app);
+ g_slist_free_full (self->priv->known_vendor_prefixes, g_free);
+ self->priv->known_vendor_prefixes = NULL;
+
+@@ -369,6 +374,8 @@ on_apps_tree_changed_cb (GMenuTree *tree,
+ * string is pointed to.
+ */
+ g_hash_table_replace (self->priv->id_to_app, (char*)id, app);
++ if (!gmenu_tree_entry_get_is_nodisplay_recurse (entry))
++ g_hash_table_replace (self->priv->visible_id_to_app, (char*)id, app);
+
+ if (old_entry)
+ gmenu_tree_item_unref (old_entry);
+@@ -778,7 +785,7 @@ GSList *
+ shell_app_system_initial_search (ShellAppSystem *self,
+ GSList *terms)
+ {
+- return search_tree (self, terms, self->priv->id_to_app);
++ return search_tree (self, terms, self->priv->visible_id_to_app);
+ }
+
+ /**
+--
+cgit v0.9.0.2
Added: desktop/unstable/gnome-shell/debian/patches/03_fix_nodisplay.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/patches/03_fix_nodisplay.patch?rev=35416&op=file
==============================================================================
--- desktop/unstable/gnome-shell/debian/patches/03_fix_nodisplay.patch (added)
+++ desktop/unstable/gnome-shell/debian/patches/03_fix_nodisplay.patch [utf-8] Sat Jun 23 18:49:39 2012
@@ -1,0 +1,25 @@
+From 0c4692ae5836fffdab4dcd0fc7220f825162746b Mon Sep 17 00:00:00 2001
+From: Jasper St. Pierre <jstpierre at mecheye.net>
+Date: Tue, 19 Jun 2012 17:02:38 +0000
+Subject: appDisplay: Fix recursive directory NoDisplay testing
+
+We were accidentally testing NoDisplay on the wrong directory.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=658176
+---
+Index: gnome-shell-3.4.1/js/ui/appDisplay.js
+===================================================================
+--- gnome-shell-3.4.1.orig/js/ui/appDisplay.js 2012-03-19 16:56:49.000000000 +0100
++++ gnome-shell-3.4.1/js/ui/appDisplay.js 2012-06-23 20:46:52.795294653 +0200
+@@ -207,8 +207,9 @@ const ViewByCategories = new Lang.Class(
+ if (!entry.get_app_info().get_nodisplay())
+ appList.push(app);
+ } else if (nextType == GMenu.TreeItemType.DIRECTORY) {
+- if (!dir.get_is_nodisplay())
+- this._loadCategory(iter.get_directory(), appList);
++ var itemDir = iter.get_directory();
++ if (!itemDir.get_is_nodisplay())
++ this._loadCategory(itemDir, appList);
+ }
+ }
+ },
Modified: desktop/unstable/gnome-shell/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gnome-shell/debian/patches/series?rev=35416&op=diff
==============================================================================
--- desktop/unstable/gnome-shell/debian/patches/series [utf-8] (original)
+++ desktop/unstable/gnome-shell/debian/patches/series [utf-8] Sat Jun 23 18:49:39 2012
@@ -1,3 +1,6 @@
+01_slist_cleanup.patch
+02_filter_nodisplay_parents.patch
+03_fix_nodisplay.patch
10-make-NetworkManager-optional.patch
11-no-gettext.patch
14_make-GLX-optional.patch
@@ -5,4 +8,3 @@
24-mirror-evolution-calendar-settings.patch
25-close-the-recorder-instead-of-pausing-it.patch
26-fix-empathy-popup-regression.patch
-27-don-t-show-apps-in-NoDisplay-categories.patch
More information about the pkg-gnome-commits
mailing list