From 0d544fbe4ff6b8d630a4249f800459f03497dfa5 Mon Sep 17 00:00:00 2001
From: Mark Tiefenbruck <mark@fluxbox.org>
Date: Wed, 19 Dec 2007 00:07:47 -0800
Subject: check apps file settings after ewmh and gnome

---
 src/Window.cc  |  1 +
 src/fluxbox.cc | 14 +++++++-------
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/Window.cc b/src/Window.cc
index 7c36329..c9ab1b2 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -562,6 +562,7 @@ void FluxboxWindow::init() {
         setMaximizedState(tmp);
     }
 
+    m_workspacesig.notify();
 
     struct timeval now;
     gettimeofday(&now, NULL);
diff --git a/src/fluxbox.cc b/src/fluxbox.cc
index 2ff0b55..9deb39b 100644
--- a/src/fluxbox.cc
+++ b/src/fluxbox.cc
@@ -391,19 +391,19 @@ Fluxbox::Fluxbox(int argc, char **argv, const char *dpy_name, const char *rcfile
 
     m_keyscreen = m_mousescreen = m_screen_list.front();
 
-    // parse apps file after creating screens but before creating windows
-#ifdef REMEMBER
-        addAtomHandler(new Remember(), "remember"); // for remembering window attribs
-#endif // REMEMBER
-    // ewmh handler needs to be added after apps file handler, or else some
-    // window properties are set incorrectly on new windows
-    // this dependency should probably be made more robust
 #ifdef USE_NEWWMSPEC
     addAtomHandler(new Ewmh(), "ewmh"); // for Extended window manager atom support
 #endif // USE_NEWWMSPEC
 #ifdef USE_GNOME
     addAtomHandler(new Gnome(), "gnome"); // for gnome 1 atom support
 #endif //USE_GNOME
+    // parse apps file after creating screens (so we can tell if it's a restart
+    // for [startup] items) but before creating windows
+    // this needs to be after ewmh and gnome, so state atoms don't get
+    // overwritten before they're applied
+#ifdef REMEMBER
+        addAtomHandler(new Remember(), "remember"); // for remembering window attribs
+#endif // REMEMBER
 
     // init all "screens"
     ScreenList::iterator it = m_screen_list.begin();
-- 
cgit v0.11.2