try patch over a focus issue where a window looks focused but isnt.
SVN revision: 75935
This commit is contained in:
parent
6e8a7eef7e
commit
7a86fdce05
|
@ -2176,7 +2176,21 @@ e_border_focus_set(E_Border *bd,
|
|||
else
|
||||
focus_next = eina_list_prepend(focus_next, bd);
|
||||
}
|
||||
|
||||
if ((bd->client.icccm.take_focus) &&
|
||||
(bd->client.icccm.accepts_focus))
|
||||
{
|
||||
e_grabinput_focus(bd->client.win, E_FOCUS_METHOD_LOCALLY_ACTIVE);
|
||||
/* TODO what if the client didn't take focus ? */
|
||||
}
|
||||
else if (!bd->client.icccm.accepts_focus)
|
||||
{
|
||||
e_grabinput_focus(bd->client.win, E_FOCUS_METHOD_GLOBALLY_ACTIVE);
|
||||
}
|
||||
else if (!bd->client.icccm.take_focus)
|
||||
{
|
||||
e_grabinput_focus(bd->client.win, E_FOCUS_METHOD_PASSIVE);
|
||||
/* e_border_focus_set(bd, 1, 0); */
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -3414,13 +3428,14 @@ e_border_idler_before(void)
|
|||
/* TODO revert focus when lost here ? */
|
||||
return;
|
||||
}
|
||||
|
||||
#if 0
|
||||
if (bd == focused)
|
||||
{
|
||||
/* already focused. but anyway dont be so strict, this
|
||||
fcks up illume setting focus on internal windows */
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
focus_time = ecore_x_current_time_get();
|
||||
|
||||
|
|
Loading…
Reference in New Issue