e_comp_wl: remove "unfullscreen" smart call 61/309561/1
authorSooChan Lim <sc1.lim@samsung.com>
Thu, 11 Apr 2024 23:25:32 +0000 (08:25 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Fri, 12 Apr 2024 06:08:29 +0000 (15:08 +0900)
move the implementation to e_desk_area

Change-Id: I214f73376386a518ad8e994306b3ab3150bbdf8a

src/bin/e_comp_wl.c
src/bin/e_desk_area.c

index e066c62..8b037d9 100644 (file)
@@ -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_unfullscreen(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, 0);
-
-   ec->comp_data->maximize_pre = 0;
-}
-
-static void
 _e_comp_wl_evas_cb_delete_request(void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED)
 {
    E_Client *ec;
@@ -2349,11 +2334,6 @@ _e_comp_wl_client_evas_init(E_Client *ec)
    evas_object_event_callback_priority_add(ec->frame, EVAS_CALLBACK_FOCUS_IN,    EVAS_CALLBACK_PRIORITY_AFTER, _e_comp_wl_evas_cb_focus_in,    ec);
    evas_object_event_callback_priority_add(ec->frame, EVAS_CALLBACK_FOCUS_OUT,   EVAS_CALLBACK_PRIORITY_AFTER, _e_comp_wl_evas_cb_focus_out,   ec);
 
-   if (!ec->override)
-     {
-        evas_object_smart_callback_add(ec->frame, "unfullscreen",    _e_comp_wl_evas_cb_unfullscreen,    ec);
-     }
-
    /* setup delete/kill callbacks */
    evas_object_smart_callback_add(ec->frame, "delete_request", _e_comp_wl_evas_cb_delete_request, ec);
    evas_object_smart_callback_add(ec->frame, "kill_request",   _e_comp_wl_evas_cb_kill_request,   ec);
@@ -2389,11 +2369,6 @@ _e_comp_wl_client_evas_deinit(E_Client *ec)
    evas_object_event_callback_del(ec->frame, EVAS_CALLBACK_FOCUS_IN,  _e_comp_wl_evas_cb_focus_in);
    evas_object_event_callback_del(ec->frame, EVAS_CALLBACK_FOCUS_OUT, _e_comp_wl_evas_cb_focus_out);
 
-   if (!ec->override)
-     {
-        evas_object_smart_callback_del(ec->frame, "unfullscreen",    _e_comp_wl_evas_cb_unfullscreen);
-     }
-
    evas_object_smart_callback_del(ec->frame, "delete_request", _e_comp_wl_evas_cb_delete_request);
    evas_object_smart_callback_del(ec->frame, "kill_request",   _e_comp_wl_evas_cb_kill_request);
 
index 168f17f..e9678ff 100644 (file)
@@ -1249,13 +1249,19 @@ _desk_area_cb_client_unfullscreen(struct wl_listener *listener, void *data)
    eda = eda_client->eda;
    ec = eda_client->ec;
 
+   // "override = 1" means that ec is not controlled by wm policy
+   if (ec->override) return;
+
    ec->pre_res_change.valid = 0;
    eda->fullscreen_clients = eina_list_remove(eda->fullscreen_clients, ec);
 
    if (!e_client_util_ignored_get(ec))
      e_client_frame_update(ec);
 
-   evas_object_smart_callback_call(ec->frame, "unfullscreen", NULL);
+   if (ec->comp_data->shell.configure_send)
+     _e_comp_wl_configure_send(ec, 0, 0);
+
+   ec->comp_data->maximize_pre = 0;
 
    if (ec->maximized)
      {
@@ -1718,7 +1724,6 @@ _desk_area_cb_client_unmaximize(struct wl_listener *listener, void *data)
              e_client_frame_update(ec);
              // re-set maximized state for unmaximize smart callback.
              ec->maximized = tmp_max;
-             evas_object_smart_callback_call(ec->frame, "unfullscreen", NULL);
              // un-set maximized state.
              ec->maximized = E_MAXIMIZE_NONE;
              e_client_util_move_resize_without_frame(ec,