summaryrefslogtreecommitdiff
path: root/src/Window.cc
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-08-09 00:44:35 +0000
committerDana Jansens <danakj@orodu.net>2002-08-09 00:44:35 +0000
commitbc3268b6f9f86e6aebe0d06ce174b2d603d09c1e (patch)
tree8e7de83d03f3b3501cdc8bc3baac43eb640e0b7f /src/Window.cc
parent01096f867493aed2efc2694c986811404288c1f1 (diff)
handle toolbars and utility windows proper. also, no more crashes from kpager (i really hope :P), at least not the same way
Diffstat (limited to 'src/Window.cc')
-rw-r--r--src/Window.cc17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/Window.cc b/src/Window.cc
index fae990b6..243bfa48 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -202,14 +202,20 @@ BlackboxWindow::BlackboxWindow(Blackbox *b, Window w, BScreen *s) {
case Type_Desktop:
case Type_Dock:
case Type_Menu:
- case Type_Toolbar:
- case Type_Utility:
+ blackbox_attrib.workspace = 0; // we do need to belong to a workspace
+ flags.stuck = True; // we show up on all workspaces
case Type_Splash:
// none of these windows are decorated or manipulated by the window manager
decorations = 0;
functions = 0;
- blackbox_attrib.workspace = 0; // we do need to belong to a workspace
- flags.stuck = True; // we show up on all workspaces
+ break;
+
+ case Type_Toolbar:
+ case Type_Utility:
+ // these windows get less decorations and functionality
+ decorations &= ~(Decor_Maximize | Decor_Handle | Decor_Iconify |
+ Decor_Border);
+ functions &= ~(Func_Maximize | Func_Resize | Func_Iconify);
break;
case Type_Dialog:
@@ -349,6 +355,9 @@ BlackboxWindow::~BlackboxWindow(void) {
if (! timer) // window not managed...
return;
+ if (flags.moving)
+ endMove();
+
screen->removeStrut(&client.strut);
screen->updateAvailableArea();