set focus_hilite when switching desktops and hjilitin a window which isnt focused yet
This commit is contained in:
parent
fe3e73f190
commit
735ee93689
1 changed files with 5 additions and 6 deletions
|
@ -418,7 +418,6 @@ void screen_set_desktop(guint num)
|
||||||
{
|
{
|
||||||
GList *it;
|
GList *it;
|
||||||
guint old;
|
guint old;
|
||||||
ObClient *target;
|
|
||||||
|
|
||||||
g_assert(num < screen_num_desktops);
|
g_assert(num < screen_num_desktops);
|
||||||
|
|
||||||
|
@ -458,17 +457,17 @@ void screen_set_desktop(guint num)
|
||||||
|
|
||||||
event_ignore_queued_enters();
|
event_ignore_queued_enters();
|
||||||
|
|
||||||
target = focus_fallback_target(OB_FOCUS_FALLBACK_NOFOCUS);
|
focus_hilite = focus_fallback_target(OB_FOCUS_FALLBACK_NOFOCUS);
|
||||||
if (target) {
|
if (focus_hilite) {
|
||||||
frame_adjust_focus(target->frame, TRUE);
|
frame_adjust_focus(focus_hilite->frame, TRUE);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
When this focus_client check is not used, you can end up with races,
|
When this focus_client check is not used, you can end up with races,
|
||||||
as demonstrated with gnome-panel, sometmies the window you click on
|
as demonstrated with gnome-panel, sometmies the window you click on
|
||||||
another desktop ends up losing focus cuz of the focus change here.
|
another desktop ends up losing focus cuz of the focus change here.
|
||||||
*/
|
*/
|
||||||
if (!focus_client)
|
/*if (!focus_client)*/
|
||||||
client_focus(target);
|
client_focus(focus_hilite);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue