summaryrefslogtreecommitdiff
path: root/src/Screen.cc
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-07-05 01:24:32 +0000
committerDana Jansens <danakj@orodu.net>2002-07-05 01:24:32 +0000
commite15e4a9e03dd7b64004b76ca84b07c12c251f67b (patch)
treed582a21b04ffdbac8935395da9f30c8230f5f1dd /src/Screen.cc
parentbe2f47223c17c399e05436a34ba4140f2fc44fc9 (diff)
make iconified windows uniconify on an XMapRequestEvent.
sync with blackbox cvs.
Diffstat (limited to 'src/Screen.cc')
-rw-r--r--src/Screen.cc17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index a05c2386..1879976f 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -132,6 +132,8 @@ BScreen::BScreen(Blackbox *bb, unsigned int scrn) : ScreenInfo(bb, scrn) {
resource.mstyle.t_font = resource.mstyle.f_font = resource.tstyle.font =
resource.wstyle.font = (BFont *) 0;
+ geom_pixmap = None;
+
xatom->setSupported(this); // set-up netwm support
#ifdef HAVE_GETPID
xatom->setValue(getRootWindow(), XAtom::blackbox_pid, XAtom::cardinal,
@@ -2006,7 +2008,7 @@ Workspace* BScreen::getWorkspace(unsigned int index) {
}
-void BScreen::buttonPressEvent(XButtonEvent *xbutton) {
+void BScreen::buttonPressEvent(const XButtonEvent *xbutton) {
if (xbutton->button == 1) {
if (! isRootColormapInstalled())
image_control->installRootColormap();
@@ -2071,6 +2073,9 @@ void BScreen::buttonPressEvent(XButtonEvent *xbutton) {
void BScreen::toggleFocusModel(FocusModel model) {
+ std::for_each(windowList.begin(), windowList.end(),
+ std::mem_fun(&BlackboxWindow::ungrabButtons));
+
if (model == SloppyFocus) {
saveSloppyFocus(True);
} else {
@@ -2080,14 +2085,8 @@ void BScreen::toggleFocusModel(FocusModel model) {
saveSloppyFocus(False);
}
- updateFocusModel();
-}
-
-
-void BScreen::updateFocusModel()
-{
- std::for_each(workspacesList.begin(), workspacesList.end(),
- std::mem_fun(&Workspace::updateFocusModel));
+ std::for_each(windowList.begin(), windowList.end(),
+ std::mem_fun(&BlackboxWindow::grabButtons));
}