fix pointer warping for new client windows to not start from a random location
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 11 Feb 2013 07:55:02 +0000 (07:55 +0000)
committerMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 11 Feb 2013 07:55:02 +0000 (07:55 +0000)
SVN revision: 83809

ChangeLog
NEWS
src/bin/e_border.c

index 64fff61..e5d11ac 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-02-11 Mike Blumenkrantz
+
+        * fixed bug where pointer warping to new clients would start at a random location
+
 2013-02-08 Cedric Bail
 
        * remove call to efreet_menu_parse from a thread.
diff --git a/NEWS b/NEWS
index 691bfdc..131230c 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -168,3 +168,4 @@ Fixes:
     * fix clock timerfd usage to actually detect date changes
     * keyboard mapping change now also disables for window class "vmware"
     * don't call efreet_menu_parse from a thread
+    * fixed bug where pointer warping to new clients would start at a random location
index f3536f5..076557a 100644 (file)
@@ -10422,7 +10422,7 @@ e_border_activate(E_Border *bd, Eina_Bool just_do_it)
              /* XXX ooffice does send this request for
                 config dialogs when the main window gets focus.
                 causing the pointer to jump back and forth.  */
-             if ((e_config->focus_policy != E_FOCUS_CLICK) &&
+             if ((e_config->focus_policy != E_FOCUS_CLICK) && (!bd->new_client) &&
                  !(bd->client.icccm.name && !strcmp(bd->client.icccm.name, "VCLSalFrame")))
                ecore_x_pointer_warp(bd->zone->container->win,
                                     bd->x + (bd->w / 2), bd->y + (bd->h / 2));