e_client: check mapped condition when e_client_iconify 79/187179/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 20 Aug 2018 11:45:53 +0000 (20:45 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Mon, 20 Aug 2018 11:45:53 +0000 (20:45 +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 f4bc29a19e8b0420b62092680d77ac1761e3c7a9..f617a3c91e142bc46f76be89dd7063fb5b82d9c8 100644 (file)
@@ -5437,6 +5437,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);