]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/camwindow.cpp
Merge commit 'dce6730b39a2e6484015e483c46edbe93054f6a0' into garux-merge
[xonotic/netradiant.git] / radiant / camwindow.cpp
index 2ef5a9862a71d5c9396370c7037397a0aa192521..6fab7dc994da67aaa830d367751316f651e2ecd9 100644 (file)
@@ -283,7 +283,7 @@ void Camera_FreeMove( camera_t& camera, int dx, int dy ){
 
                camera.origin -= camera.vright * strafespeed * dx;
                if ( camera.m_strafe_forward ) {
-                       camera.origin += camera.vpn * strafespeed * dy;
+                       camera.origin -= camera.vpn * strafespeed * dy;
                }
                else{
                        camera.origin += camera.vup * strafespeed * dy;
@@ -1243,6 +1243,9 @@ bool pre( const scene::Path& path, scene::Instance& instance ) const {
                        m_bestDown = floorHeight;
                }
        }
+       else if( !path.top().get().visible() ){
+               return false;
+       }
        return true;
 }
 };
@@ -1319,7 +1322,7 @@ void CamWnd::EnableFreeMove(){
 
        gtk_window_set_focus( m_parent, m_gl_widget );
        m_freemove_handle_focusout = m_gl_widget.connect( "focus_out_event", G_CALLBACK( camwindow_freemove_focusout ), this );
-       m_freezePointer.freeze_pointer( m_parent, Camera_motionDelta, &m_Camera );
+       m_freezePointer.freeze_pointer( m_parent, m_gl_widget, Camera_motionDelta, &m_Camera );
 
        CamWnd_Update( *this );
 }