Fixing my own code
This commit is contained in:
parent
03d3c6c99c
commit
9e6c123611
3 changed files with 5 additions and 4 deletions
|
@ -480,8 +480,7 @@ void FocusControl::setFocusedWindow(WinClient *client) {
|
|||
if (s_focused_window != 0 &&
|
||||
Fluxbox::instance()->validateClient(s_focused_window)) {
|
||||
|
||||
if (!client ||
|
||||
s_focused_fbwindow && client->fbwindow() != s_focused_fbwindow)
|
||||
if (!client && s_focused_fbwindow)
|
||||
s_focused_fbwindow->setFocusFlag(false);
|
||||
|
||||
} else {
|
||||
|
|
|
@ -101,7 +101,9 @@ public:
|
|||
// like revertFocus, but specifically related to this window (transients etc)
|
||||
static void unfocusWindow(WinClient &client, bool full_revert = true, bool unfocus_frame = false);
|
||||
static void setFocusedWindow(WinClient *focus_to);
|
||||
static void setFocusedFbWindow(FluxboxWindow *focus_to) { s_focused_fbwindow = focus_to; }
|
||||
static WinClient *focusedWindow() { return s_focused_window; }
|
||||
static FluxboxWindow *focusedFbWindow() { return s_focused_fbwindow; }
|
||||
private:
|
||||
|
||||
BScreen &m_screen;
|
||||
|
|
|
@ -1227,8 +1227,8 @@ void Fluxbox::update(FbTk::Subject *changedsub) {
|
|||
// make sure each workspace get this
|
||||
BScreen &scr = win.screen();
|
||||
scr.removeWindow(&win);
|
||||
if (FocusControl::focusedWindow() == &win.winClient())
|
||||
FocusControl::setFocusedWindow(0);
|
||||
if (FocusControl::focusedFbWindow() == &win)
|
||||
FocusControl::setFocusedFbWindow(0);
|
||||
|
||||
} else if ((&(win.workspaceSig())) == changedsub) { // workspace signal
|
||||
for (AtomHandlerContainerIt it= m_atomhandler.begin();
|
||||
|
|
Loading…
Reference in a new issue