[maemo-commits] [maemo-commits] r18875 - in projects/haf/trunk/libmatchbox2: . matchbox/core

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Mon Jul 20 11:31:46 EEST 2009
Author: kihamala
Date: 2009-07-20 11:31:45 +0300 (Mon, 20 Jul 2009)
New Revision: 18875

Modified:
   projects/haf/trunk/libmatchbox2/ChangeLog
   projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-stack.c
Log:
revert Thomas' new stacking rule


Modified: projects/haf/trunk/libmatchbox2/ChangeLog
===================================================================
--- projects/haf/trunk/libmatchbox2/ChangeLog	2009-07-20 06:59:03 UTC (rev 18874)
+++ projects/haf/trunk/libmatchbox2/ChangeLog	2009-07-20 08:31:45 UTC (rev 18875)
@@ -1,5 +1,8 @@
 2009-07-20  Kimmo Hämäläinen  <kimmo.hamalainen at nokia.com>
 
+	Revert Thomas' patch for NB#115408, we cannot have process-based
+	stacking rules, it would never work...
+
 	Patch from Artem for NB#126898.
 
 	* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c

Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-stack.c
===================================================================
--- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-stack.c	2009-07-20 06:59:03 UTC (rev 18874)
+++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-stack.c	2009-07-20 08:31:45 UTC (rev 18875)
@@ -141,58 +141,6 @@
 	}
     }
 
-  /* One more pass.  Check that no application has a non-modal window
-   * stacked above an application-modal window.  Fixes #115408.
-   */
-  client = wm->stack_bottom;
-  seen   = NULL;
-
-  while (client != seen && client != NULL)
-    {
-      gboolean should_move = FALSE;
-
-      next = client->stacked_above;
-
-      /* Is it application-modal? */
-
-      if (mb_wm_client_get_transient_for (client) &&
-	  mb_wm_client_is_modal (client))
-	{
-	  /* Yes.  Go looking for windows above it which
-	   * are owned by the same process but are not modal.
-	   */
-	  MBWMClientWindow  *modal_win     = client->window;
-	  const char        *modal_machine = modal_win->machine;
-	  pid_t              modal_pid     = modal_win->pid;
-	  MBWindowManagerClient *candidate = next;
-
-	  while (candidate && !should_move)
-	    {
-	      MBWMClientWindow  *candidate_win     = candidate->window;
-	      const char        *candidate_machine = candidate_win->machine;
-	      pid_t              candidate_pid     = candidate_win->pid;
-
-	      if (candidate_pid == modal_pid &&
-		  strcmp (candidate_machine, modal_machine) == 0 &&
-		  (!mb_wm_client_get_transient_for (candidate) || !mb_wm_client_is_modal (candidate) ))
-		{
-		  should_move = TRUE;
-		}
-	      else
-		candidate = candidate->stacked_above;
-	    }
-
-	  if (should_move)
-	    {
-	      if (seen == NULL)
-		seen = client;
-
-	      mb_wm_client_stack (client, 0);
-	    }
-	}
-      client = next;
-    }
-
 //  ENABLE ME WHEN YOU NEED ME
 // mb_wm_stack_dump (wm, "FINISH");
 }

More information about the maemo-commits mailing list