summaryrefslogtreecommitdiff
path: root/src/lib/ecore_wl2/ecore_wl2.c
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2018-01-30 15:19:43 -0600
committerDerek Foreman <derekf@osg.samsung.com>2018-01-30 17:09:51 -0600
commit1bd41aa3b6d36744c3cd3dd41ed46f5b801a5888 (patch)
tree68003c7246e83fd6d4b0233364e4477f718c0839 /src/lib/ecore_wl2/ecore_wl2.c
parent8abac6da65a1bfd5883383bb72de1215ff555b8f (diff)
ecore_wl2: Add new event for windows not displayed on any output
When a window leaves all outputs we can free its render buffers to save memory. This new event is generated when a window leaves all outputs.
Diffstat (limited to 'src/lib/ecore_wl2/ecore_wl2.c')
-rw-r--r--src/lib/ecore_wl2/ecore_wl2.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/ecore_wl2/ecore_wl2.c b/src/lib/ecore_wl2/ecore_wl2.c
index 479ee93ef0..78ac85b6ac 100644
--- a/src/lib/ecore_wl2/ecore_wl2.c
+++ b/src/lib/ecore_wl2/ecore_wl2.c
@@ -53,6 +53,7 @@ EAPI int ECORE_WL2_EVENT_WINDOW_HIDE = 0;
53EAPI int ECORE_WL2_EVENT_WINDOW_ACTIVATE = 0; 53EAPI int ECORE_WL2_EVENT_WINDOW_ACTIVATE = 0;
54EAPI int ECORE_WL2_EVENT_WINDOW_DEACTIVATE = 0; 54EAPI int ECORE_WL2_EVENT_WINDOW_DEACTIVATE = 0;
55EAPI int ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE = 0; 55EAPI int ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE = 0;
56EAPI int ECORE_WL2_EVENT_WINDOW_OFFSCREEN = 0;
56 57
57EAPI int _ecore_wl2_event_window_www = -1; 58EAPI int _ecore_wl2_event_window_www = -1;
58EAPI int _ecore_wl2_event_window_www_drag = -1; 59EAPI int _ecore_wl2_event_window_www_drag = -1;
@@ -173,6 +174,7 @@ ecore_wl2_init(void)
173 ECORE_WL2_EVENT_WINDOW_ACTIVATE = ecore_event_type_new(); 174 ECORE_WL2_EVENT_WINDOW_ACTIVATE = ecore_event_type_new();
174 ECORE_WL2_EVENT_WINDOW_DEACTIVATE = ecore_event_type_new(); 175 ECORE_WL2_EVENT_WINDOW_DEACTIVATE = ecore_event_type_new();
175 ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE = ecore_event_type_new(); 176 ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE = ecore_event_type_new();
177 ECORE_WL2_EVENT_WINDOW_OFFSCREEN = ecore_event_type_new();
176 178
177 if (!no_session_recovery) 179 if (!no_session_recovery)
178 no_session_recovery = !!getenv("EFL_NO_WAYLAND_SESSION_RECOVERY"); 180 no_session_recovery = !!getenv("EFL_NO_WAYLAND_SESSION_RECOVERY");
@@ -246,7 +248,8 @@ ecore_wl2_shutdown(void)
246 ECORE_WL2_EVENT_WINDOW_HIDE, 248 ECORE_WL2_EVENT_WINDOW_HIDE,
247 ECORE_WL2_EVENT_WINDOW_ACTIVATE, 249 ECORE_WL2_EVENT_WINDOW_ACTIVATE,
248 ECORE_WL2_EVENT_WINDOW_DEACTIVATE, 250 ECORE_WL2_EVENT_WINDOW_DEACTIVATE,
249 ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE); 251 ECORE_WL2_EVENT_WINDOW_ICONIFY_STATE_CHANGE,
252 ECORE_WL2_EVENT_WINDOW_OFFSCREEN);
250 253
251 /* shutdown Ecore_Event */ 254 /* shutdown Ecore_Event */
252 ecore_event_shutdown(); 255 ecore_event_shutdown();