cedric pushed a commit to branch enlightenment-0.17. http://git.enlightenment.org/core/enlightenment.git/commit/?id=912ac3c168e5655137b9e08087d9768992f38135
commit 912ac3c168e5655137b9e08087d9768992f38135 Author: Mike Blumenkrantz <[email protected]> Date: Wed Jul 3 09:54:12 2013 +0100 add modal lock window to border hash and enable finding by lock window --- src/bin/e_border.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bin/e_border.c b/src/bin/e_border.c index 8b85260..a21e087 100644 --- a/src/bin/e_border.c +++ b/src/bin/e_border.c @@ -3397,7 +3397,7 @@ e_border_find_by_window(Ecore_X_Window win) bd = eina_hash_find(borders_hash, e_util_winid_str_get(win)); if ((bd) && (!e_object_is_del(E_OBJECT(bd))) && - (bd->win == win)) + ((bd->win == win) || (bd->client.lock_win == win))) return bd; return NULL; } @@ -5215,6 +5215,7 @@ _e_border_del(E_Border *bd) { if (bd->parent->client.lock_win) { + eina_hash_del_by_key(borders_hash, e_util_winid_str_get(bd->parent->client.lock_win)); ecore_x_window_hide(bd->parent->client.lock_win); ecore_x_window_free(bd->parent->client.lock_win); bd->parent->client.lock_win = 0; @@ -7671,6 +7672,7 @@ _e_border_eval0(E_Border *bd) if (!bd->parent->client.lock_win) { bd->parent->client.lock_win = ecore_x_window_input_new(bd->parent->client.shell_win, 0, 0, bd->parent->client.w, bd->parent->client.h); + eina_hash_add(borders_hash, e_util_winid_str_get(bd->parent->client.lock_win), bd->parent); ecore_x_window_show(bd->parent->client.lock_win); } } --
