X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FToolbar.cc;h=b44017d4f6091633e8419e7f29cf160d3283c2f1;hb=82e61c015fe82b673676c3242f014bf26c0dd152;hp=3d3f867fef696a39b382369a21408c771f417417;hpb=251dd4034f3a3f11a190c06d7b69670dc87d219d;p=chaz%2Fopenbox diff --git a/src/Toolbar.cc b/src/Toolbar.cc index 3d3f867f..b44017d4 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc @@ -41,7 +41,6 @@ #include "Workspace.h" #include "Workspacemenu.h" -#include #include #ifdef HAVE_STRING_H @@ -149,15 +148,24 @@ Toolbar::Toolbar(BScreen &scrn) : screen(scrn), openbox(scrn.getOpenbox()) { frame.pbutton = None; reconfigure(); - - XMapSubwindows(display, frame.window); - XMapWindow(display, frame.window); + mapToolbar(); } - -Toolbar::~Toolbar(void) { +inline void Toolbar::mapToolbar(){ + if(!screen.doToolbarHide()){ + do_hide=false;//not hidden, so windows should not maximize over the toolbar + XMapSubwindows(display, frame.window); + XMapWindow(display, frame.window); + }else + do_hide=true; +} +inline void Toolbar::unMapToolbar(){ + do_hide=true; //hidden so we can maximize over the toolbar XUnmapWindow(display, frame.window); +} +Toolbar::~Toolbar(void) { + unMapToolbar(); if (frame.base) image_ctrl->removeImage(frame.base); if (frame.label) image_ctrl->removeImage(frame.label); if (frame.wlabel) image_ctrl->removeImage(frame.wlabel); @@ -468,7 +476,7 @@ void Toolbar::reconfigure(void) { XClearWindow(display, frame.nsbutton); XClearWindow(display, frame.pwbutton); XClearWindow(display, frame.nwbutton); - + redrawWindowLabel(); redrawWorkspaceLabel(); redrawPrevWorkspaceButton(); @@ -476,7 +484,7 @@ void Toolbar::reconfigure(void) { redrawPrevWindowButton(); redrawNextWindowButton(); checkClock(True); - + toolbarmenu->reconfigure(); }