force-disable refocus during desk flip on client activation
this prevents an infinite focus loop where focus will be constantly reapplied between multiple windows if the activated window is not the refocus window
This commit is contained in:
parent
c2b9008f11
commit
579b5dcb76
|
@ -3566,7 +3566,15 @@ e_client_activate(E_Client *ec, Eina_Bool just_do_it)
|
|||
e_client_uniconify(ec);
|
||||
}
|
||||
if ((!ec->iconic) && (!ec->sticky))
|
||||
e_desk_show(ec->desk);
|
||||
{
|
||||
int val = e_config->focus_last_focused_per_desktop;
|
||||
|
||||
/* prevent infinite focus loops during refocus */
|
||||
if (!ec->lock_focus_out)
|
||||
e_config->focus_last_focused_per_desktop = 0;
|
||||
e_desk_show(ec->desk);
|
||||
e_config->focus_last_focused_per_desktop = val;
|
||||
}
|
||||
if (!ec->lock_user_stacking)
|
||||
evas_object_raise(ec->frame);
|
||||
if (!ec->lock_focus_out)
|
||||
|
|
Loading…
Reference in New Issue