use CSD geometry during move/resize display
authorMike Blumenkrantz <zmike@osg.samsung.com>
Tue, 24 Nov 2015 22:31:47 +0000 (17:31 -0500)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Tue, 24 Nov 2015 22:31:47 +0000 (17:31 -0500)
this should provide more user-relevant information

src/bin/e_moveresize.c

index d78d65bdfceae28b10636bdc1de80ab0f465fecc..9b9ce8e4c6262a69061108ff688169d717aa0fb5 100644 (file)
@@ -56,28 +56,24 @@ e_moveresize_replace(Eina_Bool enable)
 E_API void
 e_moveresize_client_extents(const E_Client *ec, int *w, int *h)
 {
+   if (e_comp_object_frame_allowed(ec->frame))
+     *w = ec->client.w, *h = ec->client.h;
+   else
+     *w = ec->w, *h = ec->h;
    if ((ec->icccm.base_w >= 0) &&
        (ec->icccm.base_h >= 0))
      {
         if (ec->icccm.step_w > 0)
-          *w = (ec->client.w - ec->icccm.base_w) / ec->icccm.step_w;
-        else
-          *w = ec->client.w;
+          *w = (*w - ec->icccm.base_w) / ec->icccm.step_w;
         if (ec->icccm.step_h > 0)
-          *h = (ec->client.h - ec->icccm.base_h) / ec->icccm.step_h;
-        else
-          *h = ec->client.h;
+          *h = (*h - ec->icccm.base_h) / ec->icccm.step_h;
      }
    else
      {
         if (ec->icccm.step_w > 0)
-          *w = (ec->client.w - ec->icccm.min_w) / ec->icccm.step_w;
-        else
-          *w = ec->client.w;
+          *w = (*w - ec->icccm.min_w) / ec->icccm.step_w;
         if (ec->icccm.step_h > 0)
-          *h = (ec->client.h - ec->icccm.min_h) / ec->icccm.step_h;
-        else
-          *h = ec->client.h;
+          *h = (*h - ec->icccm.min_h) / ec->icccm.step_h;
      }
 }