opps. now it works on all workspaces.

-- 
------------------------------------------------------------------------
Joel W. Reed                                                412-257-3881
--------------All the simple programs have been written.----------------


--- src/Screen.cc.orig  Fri Jan 26 13:27:30 2001
+++ src/Screen.cc       Fri Jan 26 14:42:44 2001
@@ -1568,8 +1568,7 @@ void BScreen::raiseWindows(Window *works
   XRaiseWindow(getBaseDisplay()->getXDisplay(), iconmenu->getWindowID());
   *(session_stack + i++) = iconmenu->getWindowID();
 
-  LinkedListIterator<Workspace> wit(workspacesList);
-  for (; wit.current(); wit++)
+  for (LinkedListIterator<Workspace> wit(workspacesList); wit.current(); wit++)
     *(session_stack + i++) = wit.current()->getMenu()->getWindowID();
 
   *(session_stack + i++) = workspacemenu->getWindowID();
@@ -1600,6 +1599,18 @@ void BScreen::raiseWindows(Window *works
   if (slit->isOnTop())
     *(session_stack + i++) = slit->getWindowID();
 #endif // SLIT
+
+  for (LinkedListIterator<Workspace> wit(workspacesList); wit.current(); wit++)
+  {
+      LinkedListIterator<BlackboxWindow> it(wit.current()->stackingList);
+      for (; it.current(); it++)
+      {
+         if (it.current()->isStuck() == True)
+         {
+             *(session_stack + i++) = it.current()->getFrameWindow();
+         }
+      }
+  }
 
   while (k--)
     *(session_stack + i++) = *(workspace_stack + k);
--- src/Workspace.hh.orig       Wed May 31 18:42:49 2000
+++ src/Workspace.hh    Fri Jan 26 14:19:34 2001
@@ -33,12 +33,15 @@ class BlackboxWindow;
 
 
 class Workspace {
+public: 
+  LinkedList<BlackboxWindow> *stackingList;
+
 private:
   BScreen *screen;
   BlackboxWindow *lastfocus;
   Clientmenu *clientmenu;
 
-  LinkedList<BlackboxWindow> *stackingList, *windowList;
+  LinkedList<BlackboxWindow> *windowList;
 
   char *name;
   int id, cascade_x, cascade_y;

PGP signature

Reply via email to