This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project wmaker-crm.git.

The branch, next has been updated
       via  2757713637fa18ca70ff9dbc55bf8c54c9d46a2c (commit)
      from  e650bf49ea6012bce95c6b17b1956ad57c77da5d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://repo.or.cz/w/wmaker-crm.git/commit/2757713637fa18ca70ff9dbc55bf8c54c9d46a2c

commit 2757713637fa18ca70ff9dbc55bf8c54c9d46a2c
Author: Iain Patterson <w...@iain.cx>
Date:   Thu Oct 24 11:59:30 2013 +0100

    Avoid unnecessary wWindowConfigure().
    
    If a window handles a ConfigureRequest which did not specify a move or
    resize operation we should not call wWindowConfigure() and save the
    window geometry.
    
    Sergey Popov reported a scenario in which the old behaviour caused a bug:
    
    * Start gvim with a server.
      "gvim --servername qwe .gimvrc"
    
    * Maximize gvim.
    
    * (Re)open a file in the same window
      "gvim --servername qwe --remote-silent .gvimrc"
    
    * Now the window claims to be unmaximized and its old geometry is
      forgotten.
    
    The bug was that when the gvim window reread the file it generated a
    ConfigureRequest without specifying a geometry change but we called
    wWindowConfigure() and saved its geometry as though it had been
    maximized.

diff --git a/src/client.c b/src/client.c
index 05b1049..ab977b6 100644
--- a/src/client.c
+++ b/src/client.c
@@ -235,6 +235,10 @@ void wClientConfigure(WWindow * wwin, 
XConfigureRequestEvent * xcre)
                else
                        nheight = wwin->frame->core->height - 
wwin->frame->top_width - wwin->frame->bottom_width;
 
+               /* Don't overwrite the saved geometry unnecessarily. */
+               if (!(xcre->value_mask & (CWX | CWY | CWWidth | CWHeight)))
+                       return;
+
                if (nwidth != wwin->old_geometry.width)
                        wwin->flags.maximized &= ~(MAX_HORIZONTAL | MAX_TOPHALF 
| MAX_BOTTOMHALF | MAX_MAXIMUS);
                if (nheight != wwin->old_geometry.height)

-----------------------------------------------------------------------

Summary of changes:
 src/client.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)


repo.or.cz automatic notification. Contact project admin crma...@gmail.com
if you want to unsubscribe, or site admin ad...@repo.or.cz if you receive
no reply.
-- 
wmaker-crm.git ("The Window Maker window manager")


-- 
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.

Reply via email to