From a16e4becf2de9b5e26e179a6c664e830a06406a9 Mon Sep 17 00:00:00 2001 From: kergoth Date: Thu, 27 Mar 2003 05:26:47 +0000 Subject: 1) now that setCurrentRotation sets QWS_DISPLAY, dont call setDefaultRotation 2) now that we arent calling setDefaultRotation, we can rely on defaultRotation() returning the actual original default rotation (deforient). So in turn, we can simply 'flip back' to the original rotation, rather than trying to calculate what the original rotation would have been. --- diff --git a/core/applets/rotateapplet/rotate.cpp b/core/applets/rotateapplet/rotate.cpp index 3a5a3c9..42406da 100644 --- a/core/applets/rotateapplet/rotate.cpp +++ b/core/applets/rotateapplet/rotate.cpp @@ -39,9 +39,8 @@ RotateApplet::RotateApplet ( ) - : QObject ( 0, "RotateApplet" ), ref ( 0 ) + : QObject ( 0, "RotateApplet" ), ref ( 0 ), m_flipped( false ) { - m_flipped = false; } RotateApplet::~RotateApplet ( ) @@ -90,7 +89,7 @@ QPopupMenu *RotateApplet::popup ( QWidget * ) const void RotateApplet::activated ( ) { - int currentRotation = QPEApplication::defaultRotation(); + int defaultRotation = QPEApplication::defaultRotation(); int newRotation; @@ -98,28 +97,25 @@ void RotateApplet::activated ( ) cfg.setGroup( "Appearance" ); // 0 -> 90° clockwise, 1 -> 90° counterclockwise - bool rotDirection = cfg.readBoolEntry( "rotatedir" ); + bool rotDirection = cfg.readBoolEntry( "rotatedir", 0 ); // hide inputs methods before rotation QCopEnvelope en( "QPE/TaskBar", "hideInputMethod()" ); if ( m_flipped ) { - if ( rotDirection ) { - newRotation = ( currentRotation + 270 ) % 360; - } else { - newRotation = ( currentRotation + 90 ) % 360; - } + // if flipped, flip back to the original state, + // regardless of rotation direction + newRotation = defaultRotation; } else { if ( rotDirection ) { - newRotation = ( currentRotation + 90 ) % 360; + newRotation = ( defaultRotation + 90 ) % 360; } else { - newRotation = ( currentRotation + 270 ) % 360; - } + newRotation = ( defaultRotation + 270 ) % 360; + } } + QCopEnvelope env( "QPE/System", "setCurrentRotation(int)" ); env << newRotation; - QCopEnvelope env2( "QPE/System", "setDefaultRotation(int)" ); - env2 << newRotation; m_flipped = !m_flipped; } -- cgit v0.9.0.2