-rw-r--r-- | libopie2/opiecore/device/odevice_zaurus.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/libopie2/opiecore/device/odevice_zaurus.cpp b/libopie2/opiecore/device/odevice_zaurus.cpp index 780d130..a59e799 100644 --- a/libopie2/opiecore/device/odevice_zaurus.cpp +++ b/libopie2/opiecore/device/odevice_zaurus.cpp @@ -37,4 +37,5 @@ /* OPIE */ +#include <opie2/oinputsystem.h> #include <qpe/config.h> #include <qpe/resource.h> @@ -101,5 +102,14 @@ struct z_button z_buttons_c700 [] = { "opiemail", "raise()", "opiemail", "newMail()" }, - { Qt::Key_F14, QT_TRANSLATE_NOOP("Button", "Display Rotate"), + + { Qt::Key_F15, QT_TRANSLATE_NOOP("Button", "Display Rotate"), + "devicebuttons/z_hinge", + "QPE/Rotation", "rotateDefault()", + "QPE/Dummy", "doNothing()" }, + { Qt::Key_F16, QT_TRANSLATE_NOOP("Button", "Display Rotate"), + "devicebuttons/z_hinge", + "QPE/Rotation", "rotateDefault()", + "QPE/Dummy", "doNothing()" }, + { Qt::Key_F17, QT_TRANSLATE_NOOP("Button", "Display Rotate"), "devicebuttons/z_hinge", "QPE/Rotation", "rotateDefault()", @@ -508,5 +518,5 @@ Transformation Zaurus::rotation() const { Transformation rot; - + switch ( d->m_model ) { case Model_Zaurus_SLC3000: // fallthrough @@ -533,5 +543,5 @@ ODirection Zaurus::direction() const { ODirection dir; - + switch ( d->m_model ) { case Model_Zaurus_SLC3000: // fallthrough @@ -588,5 +598,10 @@ OHingeStatus Zaurus::readHingeSensor() const else { - qDebug( "Zaurus::readHingeSensor: ODevice handling for non-embedix kernels not yet implemented" ); + // corgi keyboard is event source 0 in OZ kernel 2.6 + OInputDevice* keyboard = OInputSystem::instance()->device( "event0" ); + if ( keyboard && keyboard->isHeld( OInputDevice::Key_KP0 ) ) return CASE_LANDSCAPE; + else if ( keyboard && keyboard->isHeld( OInputDevice::Key_KP1 ) ) return CASE_PORTRAIT; + else if ( keyboard && keyboard->isHeld( OInputDevice::Key_KP2 ) ) return CASE_CLOSED; + qWarning("Zaurus::readHingeSensor() - couldn't compute hinge status!" ); return CASE_UNKNOWN; } |