diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-07-25 01:24:25 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-07-25 01:24:25 +0000 |
| commit | 0d209464b1705f69788b7f89036acc801e76dc96 (patch) | |
| tree | 65666965a82de9dfca1db5693dae747a7866f249 /src | |
| parent | fa34ea5250511e37180ea2ddd85919516f25248d (diff) | |
better focusing. don't set the focused window when its not really set yet, and don't uncheck windows as they lose focus when they are iconified
Diffstat (limited to 'src')
| -rw-r--r-- | src/Window.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/Window.cc b/src/Window.cc index 6131ec49..16715c3e 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -1582,8 +1582,6 @@ bool BlackboxWindow::setInputFocus(void) { if (focus_mode == F_LocallyActive || focus_mode == F_Passive) { XSetInputFocus(blackbox->getXDisplay(), client.window, RevertToPointerRoot, CurrentTime); - - blackbox->setFocusedWindow(this); } else { /* we could set the focus to none, since the window doesn't accept focus, * but we shouldn't set focus to nothing since this would surely make @@ -2060,9 +2058,13 @@ void BlackboxWindow::setFocusFlag(bool focus) { if (isFocused()) blackbox->setFocusedWindow(this); - - Clientmenu *menu = screen->getWorkspace(blackbox_attrib.workspace)->getMenu(); - menu->setItemSelected(window_number, isFocused()); + + if (! flags.iconic) { + // iconic windows arent in a workspace menu! + Clientmenu *menu = + screen->getWorkspace(blackbox_attrib.workspace)->getMenu(); + menu->setItemSelected(window_number, isFocused()); + } } |
