summaryrefslogtreecommitdiff
path: root/src/lib/ecore_wl2/ecore_wl2.c
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2015-12-11 11:24:32 -0500
committerChris Michael <cp.michael@samsung.com>2015-12-11 11:24:32 -0500
commit8c85a89303db1eb878655a91f90021b32d04b76a (patch)
tree43fd161f09b7f7e264351276ca041ae007ab0fe6 /src/lib/ecore_wl2/ecore_wl2.c
parentf6804ac1c683c561cc1c2ffab3d316c41348e275 (diff)
ecore-wl2: Add new event for sync done
This removes the usage of ecore_main_loop_iterate inside of the display_connect function. It creates a new event type for when display sync is done, this was we can defer surface creation and EE showing until the compositor has had a chance to synchronize globals. We need this for Enlightenment so that it does not try to create error dialogs too early and thus crash due to not having sync'd globals yet @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/lib/ecore_wl2/ecore_wl2.c')
-rw-r--r--src/lib/ecore_wl2/ecore_wl2.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/ecore_wl2/ecore_wl2.c b/src/lib/ecore_wl2/ecore_wl2.c
index c0edc56f2a..a8d328b7d0 100644
--- a/src/lib/ecore_wl2/ecore_wl2.c
+++ b/src/lib/ecore_wl2/ecore_wl2.c
@@ -25,6 +25,7 @@ EAPI int ECORE_WL2_EVENT_DATA_SOURCE_TARGET = 0;
25EAPI int ECORE_WL2_EVENT_DATA_SOURCE_SEND = 0; 25EAPI int ECORE_WL2_EVENT_DATA_SOURCE_SEND = 0;
26EAPI int ECORE_WL2_EVENT_SELECTION_DATA_READY = 0; 26EAPI int ECORE_WL2_EVENT_SELECTION_DATA_READY = 0;
27EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE = 0; 27EAPI int ECORE_WL2_EVENT_WINDOW_CONFIGURE = 0;
28EAPI int ECORE_WL2_EVENT_SYNC_DONE = 0;
28 29
29/* public API functions */ 30/* public API functions */
30EAPI int 31EAPI int
@@ -75,6 +76,7 @@ ecore_wl2_init(void)
75 ECORE_WL2_EVENT_DATA_SOURCE_SEND = ecore_event_type_new(); 76 ECORE_WL2_EVENT_DATA_SOURCE_SEND = ecore_event_type_new();
76 ECORE_WL2_EVENT_SELECTION_DATA_READY = ecore_event_type_new(); 77 ECORE_WL2_EVENT_SELECTION_DATA_READY = ecore_event_type_new();
77 ECORE_WL2_EVENT_WINDOW_CONFIGURE = ecore_event_type_new(); 78 ECORE_WL2_EVENT_WINDOW_CONFIGURE = ecore_event_type_new();
79 ECORE_WL2_EVENT_SYNC_DONE = ecore_event_type_new();
78 } 80 }
79 81
80 return _ecore_wl2_init_count; 82 return _ecore_wl2_init_count;
@@ -117,6 +119,7 @@ ecore_wl2_shutdown(void)
117 ECORE_WL2_EVENT_DATA_SOURCE_SEND = 0; 119 ECORE_WL2_EVENT_DATA_SOURCE_SEND = 0;
118 ECORE_WL2_EVENT_SELECTION_DATA_READY = 0; 120 ECORE_WL2_EVENT_SELECTION_DATA_READY = 0;
119 ECORE_WL2_EVENT_WINDOW_CONFIGURE = 0; 121 ECORE_WL2_EVENT_WINDOW_CONFIGURE = 0;
122 ECORE_WL2_EVENT_SYNC_DONE = 0;
120 123
121 /* shutdown Ecore_Event */ 124 /* shutdown Ecore_Event */
122 ecore_event_shutdown(); 125 ecore_event_shutdown();