[meego-commits] 23989: Changes to MeeGo:1.1:Netbook:Update/mutter-meego
jieyang
no_reply at build.meego.com
Fri Sep 16 03:46:07 UTC 2011
Hi,
I have made the following changes to mutter-meego in project MeeGo:1.1:Netbook:Update. Please review and accept ASAP.
Thank You,
jieyang
[This message was auto-generated]
---
Request #23989:
submit: MeeGo:1.1:Netbook:Update:Testing/mutter-meego(r2)(update) -> MeeGo:1.1:Netbook:Update/mutter-meego
Message:
forward
State: new 2011-09-15T20:36:05 jieyang
Comment: None
changes files:
--------------
--- mutter-meego.changes
+++ mutter-meego.changes
@@ -0,0 +1,3 @@
+* Fri Jun 24 2011 rgs <raul.gutierrez.segales at collabora.co.uk> - 0.76.10
+- Maybe show myzone panel when an app is minimized (BMC#18139)
+
new:
----
0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch
spec files:
-----------
--- mutter-meego.spec
+++ mutter-meego.spec
@@ -14,6 +14,7 @@
URL: http://www.meego.com
Source0: %{name}-%{version}.tar.bz2
Source100: mutter-meego.yaml
+Patch0: 0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch
Requires: mx
Requires: gnome-menus
Requires: startup-notification
@@ -77,6 +78,9 @@
%prep
%setup -q -n %{name}-%{version}
+# 0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch
+%patch0 -p1
+
# >> setup
# << setup
other changes:
--------------
++++++ 0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch (new)
--- 0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch
+++ 0001-Maybe-show-myzone-panel-when-a-window-is-minimized.patch
+From 9a1673d07cdd7868bcc55214b8985fdfd31956e0 Mon Sep 17 00:00:00 2001
+From: Raul Gutierrez Segales <rgs at collabora.co.uk>
+Date: Fri, 24 Jun 2011 11:02:47 +0100
+Subject: [PATCH] Maybe show myzone panel when a window is minimized
+
+Also, make sure we omit minimized windows at relevant
+points in the code.
+
+Fixes: https://bugs.meego.com/show_bug.cgi?id=18139
+---
+ src/meego-netbook.c | 18 +++++++++++++++---
+ 1 files changed, 15 insertions(+), 3 deletions(-)
+
+diff --git a/src/meego-netbook.c b/src/meego-netbook.c
+index d74b40f..245ece9 100644
+--- a/src/meego-netbook.c
++++ b/src/meego-netbook.c
+@@ -119,6 +119,9 @@ static void last_focus_weak_notify_cb (gpointer data, GObject *meta_win);
+
+ static GQuark actor_data_quark = 0;
+
++static void check_for_empty_workspace (MutterPlugin *plugin,
++ gint workspace, MetaWindow *ignore,
++ gboolean win_destroyed);
+ static void minimize (MutterPlugin *plugin,
+ MutterWindow *actor);
+ static void map (MutterPlugin *plugin,
+@@ -862,6 +865,9 @@ on_minimize_effect_complete (ClutterTimeline *timeline, EffectCompleteData *data
+ MutterPlugin *plugin = data->plugin;
+ ActorPrivate *apriv;
+ MutterWindow *mcw = MUTTER_WINDOW (data->actor);
++ MetaWindow *mw = mutter_window_get_meta_window (mcw);
++ MetaWorkspace *ws = meta_window_get_workspace (mw);
++ int ws_index = meta_workspace_index (ws);
+
+ apriv = get_actor_private (mcw);
+ apriv->tml_minimize = NULL;
+@@ -874,6 +880,8 @@ on_minimize_effect_complete (ClutterTimeline *timeline, EffectCompleteData *data
+
+ /* Now notify the manager that we are done with this effect */
+ mutter_plugin_minimize_completed (plugin, mcw);
++
++ check_for_empty_workspace (plugin, ws_index, mw, TRUE);
+ }
+
+ /*
+@@ -1206,16 +1214,19 @@ maybe_show_myzone (MutterPlugin *plugin)
+ while (l)
+ {
+ MutterWindow *m = l->data;
++ MetaWindow *mw = mutter_window_get_meta_window (m);
+ MetaCompWindowType type = mutter_window_get_window_type (m);
++ gboolean minimized = mw && meta_window_is_skip_taskbar (mw);
+
+ /*
+- * Ignore desktop, docs, and panel windows
++ * Ignore desktop, docs,panel windows and minimized windows
+ *
+ * (Panel windows are currently of type META_COMP_WINDOW_OVERRIDE_OTHER)
+ */
+ if (!(type == META_COMP_WINDOW_DESKTOP ||
+ type == META_COMP_WINDOW_DOCK ||
+- type == META_COMP_WINDOW_OVERRIDE_OTHER))
++ type == META_COMP_WINDOW_OVERRIDE_OTHER) &&
++ !minimized)
+ {
+ /* g_debug ("Found singificant window %s of type %d", */
+ /* mutter_window_get_description (m), type); */
+@@ -1282,7 +1293,8 @@ check_for_empty_workspace (MutterPlugin *plugin,
+ * removed when the screen active workspace is not yet updated at this
+ * point and we we try to translate it to an index, it blows up on us).
+ */
+- if (mw != ignore &&
++ if (!meta_window_is_skip_taskbar (mw) &&
++ mw != ignore &&
+ !meta_window_is_on_all_workspaces (mw) &&
+ ((win_destroyed && xwin != xt) ||
+ (!win_destroyed && !meta_window_is_ancestor_of_transient (ignore,
+--
+1.7.5.4
+
More information about the MeeGo-commits
mailing list