summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2018-04-11 11:36:53 -0500
committerDerek Foreman <derekf@osg.samsung.com>2018-04-11 11:48:27 -0500
commit5a2c5479bf462882150597c465fbecf53c703bf1 (patch)
tree22193d94c39bdcd616f8562dd72e1283656b24a2
parentd697e7936b16e6ddb7ea12c2661cd84f6f4acba6 (diff)
ecore_wl2: Stop pretending to fully control minimized state
Under wayland we can set minimized but not unset it, nor can we tell if it's been unset. This means we can't cache the value, we need to make the protocol request any time ecore_wl2_window_iconified_set is called. ref T6834
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_private.h1
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_window.c7
-rw-r--r--src/lib/ecore_wl2/window_v6.x2
3 files changed, 0 insertions, 10 deletions
diff --git a/src/lib/ecore_wl2/ecore_wl2_private.h b/src/lib/ecore_wl2/ecore_wl2_private.h
index 09fc0abc1c..e47c3ffaae 100644
--- a/src/lib/ecore_wl2/ecore_wl2_private.h
+++ b/src/lib/ecore_wl2/ecore_wl2_private.h
@@ -156,7 +156,6 @@ typedef struct _Ecore_Wl2_Window_Configure_State
156{ 156{
157 uint32_t serial; 157 uint32_t serial;
158 Eina_Rectangle geometry; 158 Eina_Rectangle geometry;
159 Eina_Bool minimized : 1;
160 Eina_Bool maximized : 1; 159 Eina_Bool maximized : 1;
161 Eina_Bool fullscreen : 1; 160 Eina_Bool fullscreen : 1;
162 Eina_Bool focused : 1; 161 Eina_Bool focused : 1;
diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c b/src/lib/ecore_wl2/ecore_wl2_window.c
index fad7c3462a..ac57ba2f84 100644
--- a/src/lib/ecore_wl2/ecore_wl2_window.c
+++ b/src/lib/ecore_wl2/ecore_wl2_window.c
@@ -225,7 +225,6 @@ _xdg_toplevel_cb_configure(void *data, struct xdg_toplevel *xdg_toplevel EINA_UN
225 Ecore_Wl2_Window *win = data; 225 Ecore_Wl2_Window *win = data;
226 uint32_t *s; 226 uint32_t *s;
227 227
228 win->def_config.minimized = EINA_FALSE;
229 win->def_config.maximized = EINA_FALSE; 228 win->def_config.maximized = EINA_FALSE;
230 win->def_config.fullscreen = EINA_FALSE; 229 win->def_config.fullscreen = EINA_FALSE;
231 win->def_config.focused = EINA_FALSE; 230 win->def_config.focused = EINA_FALSE;
@@ -248,7 +247,6 @@ _xdg_toplevel_cb_configure(void *data, struct xdg_toplevel *xdg_toplevel EINA_UN
248 break; 247 break;
249 case ZXDG_TOPLEVEL_V6_STATE_ACTIVATED: 248 case ZXDG_TOPLEVEL_V6_STATE_ACTIVATED:
250 win->def_config.focused = EINA_TRUE; 249 win->def_config.focused = EINA_TRUE;
251 win->def_config.minimized = EINA_FALSE;
252 default: 250 default:
253 break; 251 break;
254 } 252 }
@@ -1092,15 +1090,10 @@ ecore_wl2_window_geometry_set(Ecore_Wl2_Window *window, int x, int y, int w, int
1092EAPI void 1090EAPI void
1093ecore_wl2_window_iconified_set(Ecore_Wl2_Window *window, Eina_Bool iconified) 1091ecore_wl2_window_iconified_set(Ecore_Wl2_Window *window, Eina_Bool iconified)
1094{ 1092{
1095 Eina_Bool prev;
1096
1097 EINA_SAFETY_ON_NULL_RETURN(window); 1093 EINA_SAFETY_ON_NULL_RETURN(window);
1098 1094
1099 prev = window->set_config.minimized;
1100 iconified = !!iconified; 1095 iconified = !!iconified;
1101 if (prev == iconified) return;
1102 1096
1103 window->set_config.minimized = iconified;
1104 1097
1105 if (iconified) 1098 if (iconified)
1106 { 1099 {
diff --git a/src/lib/ecore_wl2/window_v6.x b/src/lib/ecore_wl2/window_v6.x
index 34a12d692e..28ff1b40c4 100644
--- a/src/lib/ecore_wl2/window_v6.x
+++ b/src/lib/ecore_wl2/window_v6.x
@@ -31,7 +31,6 @@ _zxdg_toplevel_cb_configure(void *data, struct zxdg_toplevel_v6 *zxdg_toplevel E
31 Ecore_Wl2_Window *win = data; 31 Ecore_Wl2_Window *win = data;
32 uint32_t *s; 32 uint32_t *s;
33 33
34 win->def_config.minimized = EINA_FALSE;
35 win->def_config.maximized = EINA_FALSE; 34 win->def_config.maximized = EINA_FALSE;
36 win->def_config.fullscreen = EINA_FALSE; 35 win->def_config.fullscreen = EINA_FALSE;
37 win->def_config.focused = EINA_FALSE; 36 win->def_config.focused = EINA_FALSE;
@@ -54,7 +53,6 @@ _zxdg_toplevel_cb_configure(void *data, struct zxdg_toplevel_v6 *zxdg_toplevel E
54 break; 53 break;
55 case ZXDG_TOPLEVEL_V6_STATE_ACTIVATED: 54 case ZXDG_TOPLEVEL_V6_STATE_ACTIVATED:
56 win->def_config.focused = EINA_TRUE; 55 win->def_config.focused = EINA_TRUE;
57 win->def_config.minimized = EINA_FALSE;
58 default: 56 default:
59 break; 57 break;
60 } 58 }