e_policy_zone: add the new client into current desk when the client isn't belong... 84/325184/1
authorJunseok Kim <juns.kim@samsung.com>
Mon, 12 May 2025 10:31:47 +0000 (19:31 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Wed, 4 Jun 2025 06:55:56 +0000 (15:55 +0900)
Change-Id: Id97f7428d40f2c63f7030f246c19276ab415e93b

src/bin/windowmgr/e_policy_zone.c

index 735579b9db379e9852458fa36b93c40b321d6b31..54ac7b8b961063faac174a79e6fa3af6bf7c0aa7 100644 (file)
@@ -1116,10 +1116,11 @@ _e_policy_zone_cb_client_add(struct wl_listener *listener, void *data)
 
    wl_signal_emit(&policy_zone->events.client_add, ec);
 
-   // Currently, ec is set to the current desk now.
-   // At this moment, ec should not belong to any desk
-   desk = e_desk_current_get(zone);
-   e_desk_client_add(desk, ec);
+   if (!e_zone_desk_find_by_ec(zone, ec))
+     {
+        desk = e_desk_current_get(zone);
+        e_desk_client_add(desk, ec);
+     }
 
    if (ec->override)
      e_client_layer_set(ec, E_LAYER_CLIENT_ABOVE);