X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fblackbox.cc;h=0e03e17817ebc9289f31b5d89bb8a95a92ad10da;hb=39bd954b8bf197fa08f73ffade953fe531463796;hp=29de882089e3c2570e5b7e02393c17a9cfdf9bcc;hpb=733b4f4a3366eca53dc68fd40069b673b0261c96;p=chaz%2Fopenbox diff --git a/src/blackbox.cc b/src/blackbox.cc index 29de8820..0e03e178 100644 --- a/src/blackbox.cc +++ b/src/blackbox.cc @@ -282,16 +282,6 @@ void Blackbox::process_event(XEvent *e) { } case ConfigureRequest: { - // compress configure requests... - XEvent realevent; - unsigned int i = 0; - while(XCheckTypedWindowEvent(getXDisplay(), e->xconfigurerequest.window, - ConfigureRequest, &realevent)) { - i++; - } - if ( i > 0 ) - e = &realevent; - BlackboxWindow *win = (BlackboxWindow *) 0; Slit *slit = (Slit *) 0; @@ -338,7 +328,8 @@ void Blackbox::process_event(XEvent *e) { focus = True; } - if (focus && (win->isTransient() || win->getScreen()->doFocusNew())) + if (focus && (win->isTransient() || win->getScreen()->doFocusNew()) && + win->isVisible()) win->setInputFocus(); } else { BScreen *screen = searchScreen(e->xmaprequest.parent); @@ -496,7 +487,7 @@ void Blackbox::process_event(XEvent *e) { if (win->getScreen()->isSloppyFocus() && (! win->isFocused()) && (! no_focus) && win->isNormal()) { // don't focus non-normal windows with mouseover - if (((! sa.leave) || sa.inferior) && win->isVisible()) { + if ((! sa.leave || sa.inferior) && win->isVisible()) { if (win->setInputFocus()) win->installColormap(True); // XXX: shouldnt we honour no install? } @@ -722,9 +713,8 @@ void Blackbox::process_event(XEvent *e) { if (win->isIconic()) win->deiconify(False, True); - if (win->isShaded()) - win->shade(); - if (win->getWorkspaceNumber() != screen->getCurrentWorkspaceID()) + if (! win->isStuck() && + (win->getWorkspaceNumber() != screen->getCurrentWorkspaceID())) screen->changeWorkspaceID(win->getWorkspaceNumber()); if (win->isVisible() && win->setInputFocus()) { win->getScreen()->getWorkspace(win->getWorkspaceNumber())->