From 4c3f053b2d764eae0dc636a5b37d449038a26e57 Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Fri, 12 Apr 2024 08:15:17 +0900 Subject: [PATCH] e_comp_wl: remove "fullscreen" smart call move the implementation to e_desk_area Change-Id: I8f31180e61976b118c20df2482e78c74ba555a81 --- src/bin/e_comp_wl.c | 17 ----------------- src/bin/e_desk_area.c | 8 +++++++- 2 files changed, 7 insertions(+), 18 deletions(-) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 2f413ca..e066c62 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -2208,21 +2208,6 @@ _e_comp_wl_evas_cb_focus_out(void *data, Evas *evas EINA_UNUSED, Evas_Object *ob } static void -_e_comp_wl_evas_cb_fullscreen(void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) -{ - E_Client *ec = data; - - if (e_object_is_del(E_OBJECT(ec))) return; - - /* check for wayland pixmap */ - - if (ec->comp_data->shell.configure_send) - _e_comp_wl_configure_send(ec, 0, 1); - - ec->comp_data->maximize_pre = 0; -} - -static void _e_comp_wl_evas_cb_unfullscreen(void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) { E_Client *ec = data; @@ -2366,7 +2351,6 @@ _e_comp_wl_client_evas_init(E_Client *ec) if (!ec->override) { - evas_object_smart_callback_add(ec->frame, "fullscreen", _e_comp_wl_evas_cb_fullscreen, ec); evas_object_smart_callback_add(ec->frame, "unfullscreen", _e_comp_wl_evas_cb_unfullscreen, ec); } @@ -2407,7 +2391,6 @@ _e_comp_wl_client_evas_deinit(E_Client *ec) if (!ec->override) { - evas_object_smart_callback_del(ec->frame, "fullscreen", _e_comp_wl_evas_cb_fullscreen); evas_object_smart_callback_del(ec->frame, "unfullscreen", _e_comp_wl_evas_cb_unfullscreen); } diff --git a/src/bin/e_desk_area.c b/src/bin/e_desk_area.c index f3b18da..168f17f 100644 --- a/src/bin/e_desk_area.c +++ b/src/bin/e_desk_area.c @@ -1211,6 +1211,9 @@ _desk_area_cb_client_fullscreen(struct wl_listener *listener, void *data) if (!eda->visible) return; + // "override = 1" means that ec is not controlled by wm policy + if (ec->override) return; + eda->fullscreen_clients = eina_list_append(eda->fullscreen_clients, ec); ec->pre_res_change.valid = 0; @@ -1229,7 +1232,10 @@ _desk_area_cb_client_fullscreen(struct wl_listener *listener, void *data) if (!e_client_util_ignored_get(ec)) e_client_frame_update(ec); - evas_object_smart_callback_call(ec->frame, "fullscreen", NULL); + if (ec->comp_data->shell.configure_send) + _e_desk_area_configure_send(ec, 0, 1); + + ec->comp_data->maximize_pre = 0; } static void -- 2.7.4