[mutter] Do not run effects during WM startup
- From: Tomas Frydrych <tomasf src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [mutter] Do not run effects during WM startup
- Date: Wed, 12 Aug 2009 06:50:57 +0000 (UTC)
commit 2c8df7d12e3017484ee400786be0fe0d338d68e9
Author: Tomas Frydrych <tf linux intel com>
Date: Wed Aug 5 19:05:10 2009 +0100
Do not run effects during WM startup
When we first start up, we do not want to run effects on any pre-exising
windows (this is either the case we are starting up and there are no windows,
or we are replacing an exisint window manager, or worse, we crashed, and we
just want to get to the desired desktop as quick as possible).
Dithered about where to place the check; putting into the plugin manager
reduces the number of places (and files) in which it needs to be done.
src/compositor/mutter-plugin-manager.c | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
---
diff --git a/src/compositor/mutter-plugin-manager.c b/src/compositor/mutter-plugin-manager.c
index 9d8ae74..dff5122 100644
--- a/src/compositor/mutter-plugin-manager.c
+++ b/src/compositor/mutter-plugin-manager.c
@@ -27,6 +27,7 @@
#include "errors.h"
#include "workspace.h"
#include "mutter-module.h"
+#include "../core/window-private.h"
#include <string.h>
@@ -401,6 +402,10 @@ mutter_plugin_manager_event_simple (MutterPluginManager *plugin_mgr,
{
GList *l = plugin_mgr->plugins;
gboolean retval = FALSE;
+ MetaDisplay *display = meta_screen_get_display (plugin_mgr->screen);
+
+ if (display->display_opening)
+ return FALSE;
while (l)
{
@@ -476,6 +481,10 @@ mutter_plugin_manager_event_maximize (MutterPluginManager *plugin_mgr,
{
GList *l = plugin_mgr->plugins;
gboolean retval = FALSE;
+ MetaDisplay *display = meta_screen_get_display (plugin_mgr->screen);
+
+ if (display->display_opening)
+ return FALSE;
while (l)
{
@@ -545,6 +554,10 @@ mutter_plugin_manager_switch_workspace (MutterPluginManager *plugin_mgr,
{
GList *l = plugin_mgr->plugins;
gboolean retval = FALSE;
+ MetaDisplay *display = meta_screen_get_display (plugin_mgr->screen);
+
+ if (display->display_opening)
+ return FALSE;
while (l)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]