summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2013-10-31 11:47:53 +0000
committerChris Michael <cp.michael@samsung.com>2013-10-31 11:48:59 +0000
commit1a5bdb408833a70d618ee3857eb0176a896ecfaa (patch)
tree910378eec0a5d2df0eb34b8b0afb3361100799bf /src/modules
parentfd0c3f10f6657fac27c2641435180b0bcd3bece7 (diff)
Implement ability to call the ecore_evas state_change function if
needed. NB: Currently, this will only work for fullscreen or maximized states as other ones like sticky, withdrawn, iconic, etc, etc are not supported via wayland protocol yet. Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index fd2f52ec3d..a40717e16b 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -201,8 +201,7 @@ _ecore_evas_wl_common_cb_window_configure(void *data EINA_UNUSED, int type EINA_
201 if ((prev_max != ee->prop.maximized) || 201 if ((prev_max != ee->prop.maximized) ||
202 (prev_full != ee->prop.fullscreen)) 202 (prev_full != ee->prop.fullscreen))
203 { 203 {
204 if (ee->func.fn_state_change) 204 _ecore_evas_wl_common_state_update(ee);
205 ee->func.fn_state_change(ee);
206 205
207 if (prev_full != ee->prop.fullscreen) 206 if (prev_full != ee->prop.fullscreen)
208 _ecore_evas_wl_common_border_update(ee); 207 _ecore_evas_wl_common_border_update(ee);
@@ -664,6 +663,12 @@ _ecore_evas_wl_common_move(Ecore_Evas *ee, int x, int y)
664 } 663 }
665} 664}
666 665
666void
667_ecore_evas_wl_common_state_update(Ecore_Evas *ee)
668{
669 if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
670}
671
667/* Frame border: 672/* Frame border:
668 * 673 *
669 * |------------------------------------------| 674 * |------------------------------------------|
@@ -1063,6 +1068,7 @@ _ecore_evas_wl_common_layer_set(Ecore_Evas *ee, int layer)
1063 if (layer < 1) layer = 1; 1068 if (layer < 1) layer = 1;
1064 else if (layer > 255) layer = 255; 1069 else if (layer > 255) layer = 255;
1065 ee->prop.layer = layer; 1070 ee->prop.layer = layer;
1071 _ecore_evas_wl_common_state_update(ee);
1066} 1072}
1067 1073
1068void 1074void
@@ -1111,6 +1117,7 @@ _ecore_evas_wl_common_borderless_set(Ecore_Evas *ee, int borderless)
1111 ee->prop.borderless = borderless; 1117 ee->prop.borderless = borderless;
1112 1118
1113 _ecore_evas_wl_common_border_update(ee); 1119 _ecore_evas_wl_common_border_update(ee);
1120 _ecore_evas_wl_common_state_update(ee);
1114} 1121}
1115 1122
1116void 1123void
@@ -1124,6 +1131,7 @@ _ecore_evas_wl_common_maximized_set(Ecore_Evas *ee, int max)
1124 wdata = ee->engine.data; 1131 wdata = ee->engine.data;
1125 if (ee->prop.maximized == max) return; 1132 if (ee->prop.maximized == max) return;
1126 ecore_wl_window_maximized_set(wdata->win, max); 1133 ecore_wl_window_maximized_set(wdata->win, max);
1134 _ecore_evas_wl_common_state_update(ee);
1127} 1135}
1128 1136
1129void 1137void
@@ -1137,6 +1145,7 @@ _ecore_evas_wl_common_fullscreen_set(Ecore_Evas *ee, int full)
1137 if (ee->prop.fullscreen == full) return; 1145 if (ee->prop.fullscreen == full) return;
1138 wdata = ee->engine.data; 1146 wdata = ee->engine.data;
1139 ecore_wl_window_fullscreen_set(wdata->win, full); 1147 ecore_wl_window_fullscreen_set(wdata->win, full);
1148 _ecore_evas_wl_common_state_update(ee);
1140} 1149}
1141 1150
1142void 1151void