From d5be0f8da505c8ce0c33dfd518cf7db518acb46f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Mon, 18 Aug 2008 09:39:48 +0000 Subject: [PATCH] - limit the number of left/right rotations. Cube will not rotate endless if cursor keys are being pressed - fix vertical mouse movement svn path=/trunk/KDE/kdebase/workspace/; revision=848624 --- effects/cube.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/effects/cube.cpp b/effects/cube.cpp index 2a3029fa9b..8c4b9ed7c3 100644 --- a/effects/cube.cpp +++ b/effects/cube.cpp @@ -1341,7 +1341,8 @@ void CubeEffect::grabbedKeyboardEvent( QKeyEvent* e ) } else { - rotations.enqueue( Left ); + if( rotations.count() < effects->numberOfDesktops() ) + rotations.enqueue( Left ); } break; case Qt::Key_Right: @@ -1354,7 +1355,8 @@ void CubeEffect::grabbedKeyboardEvent( QKeyEvent* e ) } else { - rotations.enqueue( Right ); + if( rotations.count() < effects->numberOfDesktops() ) + rotations.enqueue( Right ); } break; case Qt::Key_Up: @@ -1551,7 +1553,7 @@ void CubeEffect::mouseChanged( const QPoint& pos, const QPoint& oldpos, Qt::Mous if( !verticalRotating ) { // display height corresponds to 180* - int deltaY = oldpos.y() - pos.y(); + int deltaY = pos.y() - oldpos.y(); float deltaVerticalDegrees = (float)deltaY/rect.height()*180.0f; manualVerticalAngle -= deltaVerticalDegrees; if( deltaVerticalDegrees != 0.0 )