X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FToolbar.cc;h=6d5a5ac48fbf8a8edc1e0daad03927ada8e7a205;hb=29fff5f56f4dce2296af459a69080e4d8147d069;hp=9f7c3b8098be9c209dfc8d90fa8e3dc04377646c;hpb=88d43795b1d9c7e6efba7d93116a016064f17f1c;p=chaz%2Fopenbox diff --git a/src/Toolbar.cc b/src/Toolbar.cc index 9f7c3b80..6d5a5ac4 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc @@ -43,9 +43,9 @@ #include -#ifdef HAVE_STRING_H +#ifdef STDC_HEADERS # include -#endif // HAVE_STRING_H +#endif // STDC_HEADERS #ifdef HAVE_STDIO_H # include @@ -148,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); @@ -467,7 +476,7 @@ void Toolbar::reconfigure(void) { XClearWindow(display, frame.nsbutton); XClearWindow(display, frame.pwbutton); XClearWindow(display, frame.nwbutton); - + redrawWindowLabel(); redrawWorkspaceLabel(); redrawPrevWorkspaceButton(); @@ -475,7 +484,7 @@ void Toolbar::reconfigure(void) { redrawPrevWindowButton(); redrawNextWindowButton(); checkClock(True); - + toolbarmenu->reconfigure(); }