Revision: 29468
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29468
Author:   campbellbarton
Date:     2010-06-15 19:40:31 +0200 (Tue, 15 Jun 2010)

Log Message:
-----------
ifdef disable X11 mouse grab, it locks up the system for artists too often 
(whenever blender locks up).

Modified Paths:
--------------
    trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp
    trunk/blender/intern/ghost/intern/GHOST_WindowX11.cpp

Modified: trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp       2010-06-15 
17:14:21 UTC (rev 29467)
+++ trunk/blender/intern/ghost/intern/GHOST_SystemX11.cpp       2010-06-15 
17:40:31 UTC (rev 29468)
@@ -465,7 +465,7 @@
 
                                /* could also clamp to screen bounds
                                 * wrap with a window outside the view will 
fail atm  */
-                               bounds.wrapPoint(x_new, y_new, 2); /* offset of 
one incase blender is at screen bounds */
+                               bounds.wrapPoint(x_new, y_new, 8); /* offset of 
one incase blender is at screen bounds */
                                window->getCursorGrabAccum(x_accum, y_accum);
 
                                if(x_new != xme.x_root || y_new != xme.y_root) {

Modified: trunk/blender/intern/ghost/intern/GHOST_WindowX11.cpp
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_WindowX11.cpp       2010-06-15 
17:14:21 UTC (rev 29467)
+++ trunk/blender/intern/ghost/intern/GHOST_WindowX11.cpp       2010-06-15 
17:40:31 UTC (rev 29468)
@@ -57,6 +57,9 @@
 
 #define MWM_HINTS_DECORATIONS         (1L << 1)
 
+
+// #define GHOST_X11_GRAB
+
 /*
  * A Client can't change the window property, that is
  * the work of the window manager. In case, we send
@@ -1442,7 +1445,9 @@
                                setWindowCursorVisibility(false);
 
                }
+#ifdef GHOST_X11_GRAB
                XGrabPointer(m_display, m_window, False, ButtonPressMask| 
ButtonReleaseMask|PointerMotionMask, GrabModeAsync, GrabModeAsync, None, None, 
CurrentTime);
+#endif
        }
        else {
                if (m_cursorGrab==GHOST_kGrabHide) {
@@ -1460,7 +1465,9 @@
                /* Almost works without but important otherwise the mouse GHOST 
location can be incorrect on exit */
                setCursorGrabAccum(0, 0);
                m_cursorGrabBounds.m_l= m_cursorGrabBounds.m_r= -1; /* disable 
*/
+#ifdef GHOST_X11_GRAB
                XUngrabPointer(m_display, CurrentTime);
+#endif
        }
 
        XFlush(m_display);


_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to