summaryrefslogtreecommitdiff
path: root/core/applets/rotateapplet
authorkergoth <kergoth>2003-03-27 05:26:47 (UTC)
committer kergoth <kergoth>2003-03-27 05:26:47 (UTC)
commita16e4becf2de9b5e26e179a6c664e830a06406a9 (patch) (unidiff)
tree329141983db204e7fb6b78d82e2e7107080d0bf6 /core/applets/rotateapplet
parent06bcd227c2806a35d77e9da4c1338d578680e3ed (diff)
downloadopie-a16e4becf2de9b5e26e179a6c664e830a06406a9.zip
opie-a16e4becf2de9b5e26e179a6c664e830a06406a9.tar.gz
opie-a16e4becf2de9b5e26e179a6c664e830a06406a9.tar.bz2
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.
Diffstat (limited to 'core/applets/rotateapplet') (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/rotateapplet/rotate.cpp24
1 files changed, 10 insertions, 14 deletions
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 @@
39 39
40 40
41RotateApplet::RotateApplet ( ) 41RotateApplet::RotateApplet ( )
42 : QObject ( 0, "RotateApplet" ), ref ( 0 ) 42 : QObject ( 0, "RotateApplet" ), ref ( 0 ), m_flipped( false )
43{ 43{
44 m_flipped = false;
45} 44}
46 45
47RotateApplet::~RotateApplet ( ) 46RotateApplet::~RotateApplet ( )
@@ -90,7 +89,7 @@ QPopupMenu *RotateApplet::popup ( QWidget * ) const
90 89
91void RotateApplet::activated ( ) 90void RotateApplet::activated ( )
92{ 91{
93 int currentRotation = QPEApplication::defaultRotation(); 92 int defaultRotation = QPEApplication::defaultRotation();
94 93
95 int newRotation; 94 int newRotation;
96 95
@@ -98,28 +97,25 @@ void RotateApplet::activated ( )
98 cfg.setGroup( "Appearance" ); 97 cfg.setGroup( "Appearance" );
99 98
100 // 0 -> 90° clockwise, 1 -> 90° counterclockwise 99 // 0 -> 90° clockwise, 1 -> 90° counterclockwise
101 bool rotDirection = cfg.readBoolEntry( "rotatedir" ); 100 bool rotDirection = cfg.readBoolEntry( "rotatedir", 0 );
102 101
103 // hide inputs methods before rotation 102 // hide inputs methods before rotation
104 QCopEnvelope en( "QPE/TaskBar", "hideInputMethod()" ); 103 QCopEnvelope en( "QPE/TaskBar", "hideInputMethod()" );
105 104
106 if ( m_flipped ) { 105 if ( m_flipped ) {
107 if ( rotDirection ) { 106 // if flipped, flip back to the original state,
108 newRotation = ( currentRotation + 270 ) % 360; 107 // regardless of rotation direction
109 } else { 108 newRotation = defaultRotation;
110 newRotation = ( currentRotation + 90 ) % 360;
111 }
112 } else { 109 } else {
113 if ( rotDirection ) { 110 if ( rotDirection ) {
114 newRotation = ( currentRotation + 90 ) % 360; 111 newRotation = ( defaultRotation + 90 ) % 360;
115 } else { 112 } else {
116 newRotation = ( currentRotation + 270 ) % 360; 113 newRotation = ( defaultRotation + 270 ) % 360;
117 } 114 }
118 } 115 }
116
119 QCopEnvelope env( "QPE/System", "setCurrentRotation(int)" ); 117 QCopEnvelope env( "QPE/System", "setCurrentRotation(int)" );
120 env << newRotation; 118 env << newRotation;
121 QCopEnvelope env2( "QPE/System", "setDefaultRotation(int)" );
122 env2 << newRotation;
123 119
124 m_flipped = !m_flipped; 120 m_flipped = !m_flipped;
125} 121}