viewport: Update viewport where necessary 57/298657/2
authorSeunghun Lee <shiin.lee@samsung.com>
Tue, 12 Sep 2023 04:37:05 +0000 (13:37 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Wed, 13 Sep 2023 00:23:25 +0000 (00:23 +0000)
It is to update viewport whenever parent becomes visible or subsurface
is created. The viewport set by `tizen_viewport` protocol has to be
re-calculated based on the geometry of parent.

Change-Id: I5903c8b4fcdbaf3d6a4ebaa65acdea79e254cb8c

src/bin/e_comp_wl_viewport.c

index 5c1bf9e..66037b8 100644 (file)
@@ -158,6 +158,9 @@ _subsurface_cb_create(void *data, E_Client *ec)
    if (viewport->ec != ec) return;
 
    _e_comp_wl_viewport_parent_check(viewport);
+
+   PIN("Subsurface created: update viewport");
+   e_comp_wl_viewport_apply(viewport->ec);
 }
 
 static void
@@ -1941,12 +1944,8 @@ _e_comp_wl_viewport_cb_parent_show(void *data, Evas *e EINA_UNUSED, Evas_Object
 
    if (e_object_is_del(E_OBJECT(viewport->ec))) return;
 
-   if (e_comp_wl_viewport_is_changed(viewport->ec))
-     {
-        PIN("Parent gets visible and viewport has changed, "
-            "try to apply viewport to ec(%p)", viewport->ec);
-        e_comp_wl_viewport_apply(viewport->ec);
-     }
+   PIN("Parent show: update viewport");
+   e_comp_wl_viewport_apply(viewport->ec);
 }
 
 static void