author | alwin <alwin> | 2005-03-14 09:14:08 (UTC) |
---|---|---|
committer | alwin <alwin> | 2005-03-14 09:14:08 (UTC) |
commit | 69f310d4a0a2330d10ba37ff4db388e8c60ba64b (patch) (side-by-side diff) | |
tree | 95d8e7660560ae88d04d6215b5b3e048400f7ebf | |
parent | 826bc5ef2aa34877fd8816ddfc4156f865dc9149 (diff) | |
download | opie-69f310d4a0a2330d10ba37ff4db388e8c60ba64b.zip opie-69f310d4a0a2330d10ba37ff4db388e8c60ba64b.tar.gz opie-69f310d4a0a2330d10ba37ff4db388e8c60ba64b.tar.bz2 |
hopefull speedups on keyeventhandler, eventhandler will just set when
device with hinge-sensor.
-rw-r--r-- | libopie2/opiecore/device/odevice_zaurus.cpp | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/libopie2/opiecore/device/odevice_zaurus.cpp b/libopie2/opiecore/device/odevice_zaurus.cpp index 89b9258..59d4eb0 100644 --- a/libopie2/opiecore/device/odevice_zaurus.cpp +++ b/libopie2/opiecore/device/odevice_zaurus.cpp @@ -233,27 +233,27 @@ void Zaurus::init(const QString& cpu_info) qDebug( "Zaurus::init() - Using the OpenZaurus HAL on a %s", (const char*) d->m_modelstr ); } void Zaurus::initButtons() { if ( d->m_buttons ) return; - if ( isQWS( ) ) { - addPreHandler(this); - } d->m_buttons = new QValueList <ODeviceButton>; struct z_button * pz_buttons; int buttoncount; switch ( d->m_model ) { case Model_Zaurus_SLC3000: // fallthrough case Model_Zaurus_SLC7x0: + if ( isQWS( ) ) { + addPreHandler(this); // hinge-sensor-handler + } pz_buttons = z_buttons_c700; buttoncount = ARRAY_SIZE(z_buttons_c700); break; default: pz_buttons = z_buttons; buttoncount = ARRAY_SIZE(z_buttons); break; } @@ -598,39 +598,36 @@ OHingeStatus Zaurus::readHingeSensor() const /* * Take code from iPAQ device. * That way we switch the cursor directions depending on status of hinge sensor, eg. hardware direction. * I hope that is ok - Alwin */ bool Zaurus::filter ( int /*unicode*/, int keycode, int modifiers, bool isPress, bool autoRepeat ) { - Transformation rot; int newkeycode = keycode; - if (d->m_model!=Model_Zaurus_SLC3000 && d->m_model!=Model_Zaurus_SLC7x0) return false; - rot = rotation(); - if (rot==Rot0) return false; /* map cursor keys depending on the hinge status */ switch ( keycode ) { // Rotate cursor keys case Key_Left : case Key_Right: case Key_Up : case Key_Down : { - if (rot==Rot90) { + if (rotation()==Rot90) { newkeycode = Key_Left + ( keycode - Key_Left + 3 ) % 4; } } break; } if (newkeycode!=keycode) { if ( newkeycode != Key_unknown ) { QWSServer::sendKeyEvent ( -1, newkeycode, modifiers, isPress, autoRepeat ); } return true; } return false; } + |