save the focus_client when falling back
This commit is contained in:
parent
9f7554a4fe
commit
9cb80fc994
1 changed files with 3 additions and 3 deletions
|
@ -94,11 +94,10 @@ void focus_set_client(ObClient *client)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static ObClient* focus_fallback_target(gboolean allow_refocus)
|
static ObClient* focus_fallback_target(gboolean allow_refocus, ObClient *old)
|
||||||
{
|
{
|
||||||
GList *it;
|
GList *it;
|
||||||
ObClient *c;
|
ObClient *c;
|
||||||
ObClient *old = focus_client;
|
|
||||||
|
|
||||||
ob_debug_type(OB_DEBUG_FOCUS, "trying pointer stuff\n");
|
ob_debug_type(OB_DEBUG_FOCUS, "trying pointer stuff\n");
|
||||||
if (config_focus_follow && !config_focus_last)
|
if (config_focus_follow && !config_focus_last)
|
||||||
|
@ -167,13 +166,14 @@ static ObClient* focus_fallback_target(gboolean allow_refocus)
|
||||||
ObClient* focus_fallback(gboolean allow_refocus)
|
ObClient* focus_fallback(gboolean allow_refocus)
|
||||||
{
|
{
|
||||||
ObClient *new;
|
ObClient *new;
|
||||||
|
ObClient *old = focus_client;
|
||||||
|
|
||||||
/* unfocus any focused clients.. they can be focused by Pointer events
|
/* unfocus any focused clients.. they can be focused by Pointer events
|
||||||
and such, and then when we try focus them, we won't get a FocusIn
|
and such, and then when we try focus them, we won't get a FocusIn
|
||||||
event at all for them. */
|
event at all for them. */
|
||||||
focus_nothing();
|
focus_nothing();
|
||||||
|
|
||||||
new = focus_fallback_target(allow_refocus);
|
new = focus_fallback_target(allow_refocus, old);
|
||||||
|
|
||||||
return new;
|
return new;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue