summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2015-09-25 21:19:12 -0400
committerCedric BAIL <cedric@osg.samsung.com>2015-10-01 11:22:06 -0700
commit9b15832d28dcd05aa0c1d2f92f0e94ac3e3295ed (patch)
tree6ac515baaa32abd02d856c042ad40347d83eaf91
parenta9430f2bd3145199d0e73e48f7f5934d929267c3 (diff)
ecore_evas-x11: unset withdrawn state when window is mapped
according to ICCCM 4.1.4: Newly created top-level windows are in the Withdrawn state. Once the window has been provided with suitable properties, the client is free to change its state... ... Only the client can effect a transition into or out of the Withdrawn state given that no external force can (according to spec) transition a window out of the withdrawn state, this must be done at a reasonable point. mapping the window seems like a reasonable point to me. fix T2745 ref 5954289c6ce1cd55ff212428291604b981438439 @fix
-rw-r--r--src/modules/ecore_evas/engines/x/ecore_evas_x.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
index c5ad4f1e3a..8d8e46b9bb 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -1642,10 +1642,11 @@ _ecore_evas_x_event_window_show(void *data EINA_UNUSED, int type EINA_UNUSED, vo
1642 } 1642 }
1643 if ((first_map_bug) && (!strcmp(ee->driver, "opengl_x11"))) 1643 if ((first_map_bug) && (!strcmp(ee->driver, "opengl_x11")))
1644 evas_damage_rectangle_add(ee->evas, 0, 0, ee->w, ee->h); 1644 evas_damage_rectangle_add(ee->evas, 0, 0, ee->w, ee->h);
1645 if (ee->prop.override) 1645 if (ee->prop.withdrawn)
1646 { 1646 {
1647 ee->prop.withdrawn = EINA_FALSE; 1647 ee->prop.withdrawn = EINA_FALSE;
1648 if (ee->func.fn_state_change) ee->func.fn_state_change(ee); 1648 if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
1649 _ecore_evas_x_hints_update(ee);
1649 } 1650 }
1650 if (ee->visible) return ECORE_CALLBACK_PASS_ON; 1651 if (ee->visible) return ECORE_CALLBACK_PASS_ON;
1651// if (ee->visible) return ECORE_CALLBACK_DONE; 1652// if (ee->visible) return ECORE_CALLBACK_DONE;