From ece72e1596a15943a071e9a0c004ca6726a56730 Mon Sep 17 00:00:00 2001 From: Hannes Janetzek Date: Wed, 9 Mar 2011 20:30:22 +0000 Subject: [PATCH] e17: take sticky windows state into account in e_desk_last_focused_focus SVN revision: 57636 --- src/bin/e_desk.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bin/e_desk.c b/src/bin/e_desk.c index 8effb697b..77e7003fa 100644 --- a/src/bin/e_desk.c +++ b/src/bin/e_desk.c @@ -369,14 +369,14 @@ e_desk_last_focused_focus(E_Desk *desk) EINA_LIST_FOREACH(e_border_focus_stack_get(), l, bd) { - if ((!bd->iconic) && (bd->visible) && (bd->desk == desk) && + if ((!bd->iconic) && (bd->visible) && + ((bd->desk == desk) || ((bd->zone == desk->zone) && bd->sticky)) && (bd->client.icccm.accepts_focus || bd->client.icccm.take_focus) && (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_DOCK) && (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_TOOLBAR) && (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_MENU) && (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_SPLASH) && - (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_DESKTOP) - ) + (bd->client.netwm.type != ECORE_X_WINDOW_TYPE_DESKTOP)) { /* this was the window last focused in this desktop */ if (!bd->lock_focus_out)