diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2017-11-08 09:29:50 -0500 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2017-11-08 09:29:28 -0500 |
commit | f05b26c8a3a9db7ace24b4e4bb74409d798be079 (patch) | |
tree | f42f62df82253fd09c3db3032809f260e2d79be3 | |
parent | a7d5920ba66f9010323569f87ab3fad938e3cdfd (diff) | |
download | enlightenment-f05b26c8a3a9db7ace24b4e4bb74409d798be079.tar.gz |
set zone/desk for clients after creating comp object
previously this resulted in attempting to move the comp object before it
was created, but evas does not throw any errors when null is passed and so
it was never noticed
fix T6317
ref T6326
-rw-r--r-- | src/bin/e_client.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/bin/e_client.c b/src/bin/e_client.c index c6597b3058..e66a8fd600 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -2672,11 +2672,6 @@ e_client_new(E_Pixmap *cp, int first_map, int internal) return NULL; } - if (ec->override) - _e_client_zone_update(ec); - else if (!ec->desk) - e_client_desk_set(ec, e_desk_current_get(e_zone_current_get())); - ec->icccm.title = NULL; ec->icccm.name = NULL; ec->icccm.class = NULL; @@ -2725,6 +2720,13 @@ e_client_new(E_Pixmap *cp, int first_map, int internal) if (!ec->ignored) EC_CHANGED(ec); e_comp_object_client_add(ec); + + if (ec->override) + _e_client_zone_update(ec); + else if (!ec->desk) + e_client_desk_set(ec, e_desk_current_get(e_zone_current_get())); + if (!ec->re_manage) + ec->placed = ec->changes.pos = 0; //ensure placement is run if (ec->frame) { evas_object_event_callback_add(ec->frame, EVAS_CALLBACK_SHOW, _e_client_cb_evas_show, ec); |