void BScreen::saveAAFonts(bool f) {
resource.aa_fonts = f;
- reconfigure();
config->setValue(screenstr + "antialiasFonts", resource.aa_fonts);
+ reconfigure();
}
void BScreen::saveShadowFonts(bool f) {
resource.shadow_fonts = f;
- reconfigure();
config->setValue(screenstr + "dropShadowFonts", resource.shadow_fonts);
+ reconfigure();
}
if (! config->getValue(screenstr + "opaqueMove", resource.opaque_move))
resource.opaque_move = false;
- if (! config->getValue(screenstr + "dropShadowFonts", resource.shadow_fonts))
- resource.shadow_fonts = false;
-
if (! config->getValue(screenstr + "antialiasFonts", resource.aa_fonts))
resource.aa_fonts = true;
+ if (! resource.aa_fonts ||
+ ! config->getValue(screenstr + "dropShadowFonts", resource.shadow_fonts))
+ resource.shadow_fonts = false;
+
if (! config->getValue(screenstr + "resizeZones", resource.resize_zones) ||
(resource.resize_zones != 1 && resource.resize_zones != 2 &&
resource.resize_zones != 4))
#ifdef XINERAMA
++bbwins;
#endif // XINERAMA
+#ifdef XFT
+ ++bbwins;
+#endif // XFT
Window *session_stack = new
Window[(num + workspacesList.size() + rootmenuList.size() +
#ifdef XINERAMA
*(session_stack + i++) = configmenu->getXineramamenu()->getWindowID();
#endif // XINERAMA
+#ifdef XFT
+ *(session_stack + i++) = configmenu->getXftmenu()->getWindowID();
+#endif // XFT
*(session_stack + i++) = configmenu->getWindowID();
*(session_stack + i++) = slit->getMenu()->getDirectionmenu()->getWindowID();
if (bw->isIconic()) {
iconmenu->changeItemLabel(bw->getWindowNumber(), bw->getIconTitle());
iconmenu->update();
- }
- else {
+ } else {
Clientmenu *clientmenu = getWorkspace(bw->getWorkspaceNumber())->getMenu();
clientmenu->changeItemLabel(bw->getWindowNumber(), bw->getTitle());
clientmenu->update();
}
-void BScreen::nextFocus(void) {
+void BScreen::nextFocus(void) const {
BlackboxWindow *focused = blackbox->getFocusedWindow(),
*next = focused;
- if (focused) {
- // if window is not on this screen, ignore it
- if (focused->getScreen()->getScreenNumber() != getScreenNumber())
- focused = (BlackboxWindow*) 0;
- }
-
- if (focused && current_workspace->getCount() > 1) {
- // next is the next window to recieve focus, current is a place holder
- BlackboxWindow *current;
+ if (focused &&
+ focused->getScreen()->getScreenNumber() == getScreenNumber() &&
+ current_workspace->getCount() > 1) {
do {
- current = next;
- next = current_workspace->getNextWindowInList(current);
- } while(! next->setInputFocus() && next != focused);
+ next = current_workspace->getNextWindowInList(next);
+ } while (next != focused && ! next->setInputFocus());
if (next != focused)
current_workspace->raiseWindow(next);
- } else if (current_workspace->getCount() >= 1) {
+ } else if (current_workspace->getCount() > 0) {
next = current_workspace->getTopWindowOnStack();
-
- current_workspace->raiseWindow(next);
next->setInputFocus();
+ current_workspace->raiseWindow(next);
}
}
-void BScreen::prevFocus(void) {
+void BScreen::prevFocus(void) const {
BlackboxWindow *focused = blackbox->getFocusedWindow(),
*next = focused;
if (focused->getScreen()->getScreenNumber() != getScreenNumber())
focused = (BlackboxWindow*) 0;
}
-
- if (focused && current_workspace->getCount() > 1) {
- // next is the next window to recieve focus, current is a place holder
- BlackboxWindow *current;
+
+ if (focused &&
+ focused->getScreen()->getScreenNumber() == getScreenNumber() &&
+ current_workspace->getCount() > 1) {
+ // next is the next window to receive focus, current is a place holder
do {
- current = next;
- next = current_workspace->getPrevWindowInList(current);
- } while(! next->setInputFocus() && next != focused);
+ next = current_workspace->getPrevWindowInList(next);
+ } while (next != focused && ! next->setInputFocus());
if (next != focused)
current_workspace->raiseWindow(next);
- } else if (current_workspace->getCount() >= 1) {
+ } else if (current_workspace->getCount() > 0) {
next = current_workspace->getTopWindowOnStack();
-
- current_workspace->raiseWindow(next);
next->setInputFocus();
+ current_workspace->raiseWindow(next);
}
}
-void BScreen::raiseFocus(void) {
+void BScreen::raiseFocus(void) const {
BlackboxWindow *focused = blackbox->getFocusedWindow();
if (! focused)
return;
}
-Workspace* BScreen::getWorkspace(unsigned int index) {
+Workspace* BScreen::getWorkspace(unsigned int index) const {
assert(index < workspacesList.size());
return workspacesList[index];
}