e_client: check mapped condition when e_client_iconify 08/187308/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 20 Aug 2018 11:45:53 +0000 (20:45 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Wed, 22 Aug 2018 01:49:40 +0000 (10:49 +0900)
There was a bug that the unmapped window was iconified by window manager.
So, we add code to check an unmap state of window in e_client_iconify function.

Change-Id: I3cc8df8d59eb0feef4e533191c54841aa0b61c76

src/bin/e_client.c

index 5cc16387620944becd63181f51133ce0fa63a6eb..55e4762165a661df2fc60b728e514a33860befe5 100644 (file)
@@ -5447,6 +5447,18 @@ e_client_iconify(E_Client *ec)
    if (ec->shading || ec->iconic) return;
    if (ec->exp_iconify.skip_iconify && !ec->exp_iconify.by_client) return;
    if (ec->exp_iconify.skip_by_remote) return;
+   if (!ec->comp_data || !ec->comp_data->mapped)
+     {
+        if (!ec->exp_iconify.by_client)
+          {
+             ELOGF("TZVIS", "Not mapped.. So, don't iconify", ec->pixmap, ec);
+             return;
+          }
+        else
+          {
+             ELOGF("TZVIS", "Not mapped.. But, iconify by user request", ec->pixmap, ec);
+          }
+     }
 
    TRACE_DS_BEGIN(CLIENT:ICONIFY);