diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/FocusControl.cc | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/src/FocusControl.cc b/src/FocusControl.cc index 014a9df..d3e6838 100644 --- a/src/FocusControl.cc +++ b/src/FocusControl.cc | |||
@@ -190,11 +190,8 @@ WinClient *FocusControl::lastFocusedWindow(int workspace) { | |||
190 | FocusedWindows::iterator it_end = m_focused_list.end(); | 190 | FocusedWindows::iterator it_end = m_focused_list.end(); |
191 | for (; it != it_end; ++it) { | 191 | for (; it != it_end; ++it) { |
192 | if ((*it)->fbwindow() && | 192 | if ((*it)->fbwindow() && |
193 | (((int)(*it)->fbwindow()->workspaceNumber()) == workspace | 193 | ((((int)(*it)->fbwindow()->workspaceNumber()) == workspace || |
194 | && !(*it)->fbwindow()->isIconic() | 194 | (*it)->fbwindow()->isStuck()) && !(*it)->fbwindow()->isIconic())) |
195 | && (!(*it)->fbwindow()->isStuck() || (*it)->fbwindow()->isFocused()))) | ||
196 | // only give focus to a stuck window if it is currently focused | ||
197 | // otherwise they tend to override normal workspace focus | ||
198 | return *it; | 195 | return *it; |
199 | } | 196 | } |
200 | return 0; | 197 | return 0; |