e_tizen_screen_manager: implement wtz_screen 54/321354/1
authorJunseok Kim <juns.kim@samsung.com>
Tue, 11 Mar 2025 01:11:37 +0000 (10:11 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Wed, 19 Mar 2025 07:14:35 +0000 (16:14 +0900)
Change-Id: Ie28c059d09466132c76394e3a48e54a33fd89fdc

packaging/enlightenment.spec
src/bin/server/e_tizen_screen_manager.c

index ee4508da2c224fc3249c83f383a4881f942f58e9..e5703cab3def1806645240362bab15d89f60f300 100644 (file)
@@ -81,7 +81,7 @@ BuildRequires:  pkgconfig(gmock)
 
 BuildRequires:  pkgconfig(libds)
 BuildRequires:  pkgconfig(libds-xdg-shell-v6)
-BuildRequires:  pkgconfig(libds-tizen) >= 0.1.4
+BuildRequires:  pkgconfig(libds-tizen) >= 0.1.5
 
 %if "%{LIBGOMP}" == "use"
 Requires:       libgomp
index e1a9bb3b4fbc19c18e34bf9ee50b69ab3c629657..a0532404c2549a3169582f205d977786335ee645 100644 (file)
@@ -182,13 +182,15 @@ _e_tizen_screen_cb_ds_screen_assign_surface(struct wl_listener *listener, void *
   ec = e_wtz_surface_client_get(shell_surface);
 
   ELOGF("TIZEN_SCREEN", "client(%p):%s assign into screen(%p): zone(%p):%s", ec, ec, e_client_icccm_title_get(ec), tizen_screen, tizen_screen->zone, tizen_screen->zone->name);
-  // TODO: impl
+
+  e_zone_client_add(tizen_screen->zone, ec);
 }
 
 EINTERN E_Tizen_Screen *
 e_tizen_screen_create(E_Zone *zone)
 {
    E_Tizen_Screen *tizen_screen;
+   int zw, zh;
 
    tizen_screen = E_NEW(E_Tizen_Screen, 1);
    EINA_SAFETY_ON_NULL_RETURN_VAL(tizen_screen, NULL);
@@ -204,6 +206,10 @@ e_tizen_screen_create(E_Zone *zone)
    tizen_screen->tizen_screen = ds_tizen_screen_create(e_comp_wl_display_get());
    EINA_SAFETY_ON_NULL_RETURN_VAL(tizen_screen->tizen_screen, NULL);
 
+   e_zone_useful_geometry_get(zone, NULL, NULL, &zw, &zh);
+   ds_tizen_screen_set_name(tizen_screen->tizen_screen, e_zone_name_get(zone));
+   ds_tizen_screen_set_size(tizen_screen->tizen_screen, zw, zh);
+
    tizen_screen->ds_screen_destroy.notify = _e_tizen_screen_cb_ds_screen_destroy;
    ds_tizen_screen_add_destroy_listener(tizen_screen->tizen_screen, &tizen_screen->ds_screen_destroy);
    tizen_screen->ds_screen_get_splitscreen.notify = _e_tizen_screen_cb_ds_screen_get_splitscreen;