X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FScreen.cc;h=6970fdf68111095befb48096e916cf5eadeafc67;hb=733b4f4a3366eca53dc68fd40069b673b0261c96;hp=378d61e1d0b14fbb8704015e102f1176f25174a7;hpb=da67802bc8bd42741fae491bf932ff17ee16f0f7;p=chaz%2Fopenbox diff --git a/src/Screen.cc b/src/Screen.cc index 378d61e1..6970fdf6 100644 --- a/src/Screen.cc +++ b/src/Screen.cc @@ -212,7 +212,7 @@ BScreen::BScreen(Blackbox *bb, unsigned int scrn) : ScreenInfo(bb, scrn) { iconmenu = new Iconmenu(this); configmenu = new Configmenu(this); - if (resource.workspaces != 0) { + if (resource.workspaces > 0) { for (unsigned int i = 0; i < resource.workspaces; ++i) { Workspace *wkspc = new Workspace(this, workspacesList.size()); workspacesList.push_back(wkspc); @@ -537,6 +537,13 @@ void BScreen::saveAllowScrollLock(bool a) { } +void BScreen::saveWorkspaceWarping(bool w) { + resource.workspace_warping = w; + config->setValue(screenstr + "workspaceWarping", + resource.workspace_warping); +} + + void BScreen::save_rc(void) { saveSloppyFocus(resource.sloppy_focus); saveAutoRaise(resource.auto_raise); @@ -564,6 +571,7 @@ void BScreen::save_rc(void) { savePlaceIgnoreShaded(resource.ignore_shaded); savePlaceIgnoreMaximized(resource.ignore_maximized); saveAllowScrollLock(resource.allow_scroll_lock); + saveWorkspaceWarping(resource.workspace_warping); toolbar->save_rc(); slit->save_rc(); @@ -699,9 +707,13 @@ void BScreen::load_rc(void) { resource.ignore_maximized)) resource.ignore_maximized = true; - if (! config->getValue(screenstr + "disableBindingsWithScrollLock", - resource.allow_scroll_lock)) - resource.allow_scroll_lock = false; +if (! config->getValue(screenstr + "disableBindingsWithScrollLock", + resource.allow_scroll_lock)) + resource.allow_scroll_lock = false; + + if (! config->getValue(screenstr + "workspaceWarping", + resource.workspace_warping)) + resource.workspace_warping = false; } @@ -1245,12 +1257,6 @@ void BScreen::manageWindow(Window w) { void BScreen::unmanageWindow(BlackboxWindow *w, bool remap) { w->restore(remap); - if (w->getWorkspaceNumber() != BSENTINEL && - w->getWindowNumber() != BSENTINEL) - getWorkspace(w->getWorkspaceNumber())->removeWindow(w); - else if (w->isIconic()) - removeIcon(w); - if (w->isNormal()) { // we don't list non-normal windows as managed windows windowList.remove(w); @@ -1266,9 +1272,6 @@ void BScreen::unmanageWindow(BlackboxWindow *w, bool remap) { assert(it != end); // the window wasnt a desktop window? } - if (blackbox->getFocusedWindow() == w) - blackbox->setFocusedWindow((BlackboxWindow *) 0); - removeNetizen(w->getClientWindow()); /*