[Xfce4-commits] [xfce/xfwm4] 07/18: compositor: Use actual surface position and size

noreply at xfce.org noreply at xfce.org
Sat Apr 11 17:58:43 CEST 2020


This is an automated email from the git hooks/post-receive script.

o   l   i   v   i   e   r       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       x   f   c   e   -   4   .   1   4   
   in repository xfce/xfwm4.

commit 63992abbe5680f2e43a7bb92df5f304e499ceaef
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Sun Sep 22 17:59:36 2019 +0200

    compositor: Use actual surface position and size
    
    Bug: 15966
    
    When using wireframe move/resize along with transparent window
    decorations, the window would appear to move along with the frame.
    
    This is because the move/resize operation updates the internal data
    that the compositor uses for drawing the client decorations with a
    different opacity.
    
    To avoid the issue, just use the actual window positio nand size.
    
    Signed-off-by: Olivier Fourdan <fourdan at xfce.org>
    (cherry picked from commit cef64742dec393a209a729e226ab025088c9c4a3)
---
 src/compositor.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/compositor.c b/src/compositor.c
index f80bea1..c06427e 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1993,16 +1993,14 @@ paint_win (CWindow *cw, XserverRegion region, Picture paint_buffer, gboolean sol
     {
         int frame_x, frame_y, frame_width, frame_height;
         int frame_top, frame_bottom, frame_left, frame_right;
-
-        frame_x = frameX (cw->c);
-        frame_y = frameY (cw->c);
-        frame_width = frameWidth (cw->c);
-        frame_height = frameHeight (cw->c);
+        frame_x = cw->attr.x;
+        frame_y = cw->attr.y;
+        frame_width = cw->attr.width;
+        frame_height = cw->attr.height;
         frame_top = frameTop (cw->c);
         frame_bottom = frameBottom (cw->c);
         frame_left = frameLeft (cw->c);
         frame_right = frameRight (cw->c);
-
         if (!solid_part)
         {
             if (!cw->alphaBorderPict)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list