-rw-r--r-- | libopie2/opiecore/device/odevice_palm.cpp | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/libopie2/opiecore/device/odevice_palm.cpp b/libopie2/opiecore/device/odevice_palm.cpp index 892083e..6d94687 100644 --- a/libopie2/opiecore/device/odevice_palm.cpp +++ b/libopie2/opiecore/device/odevice_palm.cpp @@ -52,24 +52,45 @@ #include <signal.h> #include <sys/ioctl.h> #include <sys/time.h> #include <unistd.h> #ifndef QT_NO_SOUND #include <linux/soundcard.h> #endif using namespace Opie::Core; using namespace Opie::Core::Internal; struct palm_button palm_buttons [] = { + { Model_Palm_LD, + Qt::Key_F6, QT_TRANSLATE_NOOP( "Button", "Rotate Button" ), + "devicebuttons/palm_rotate", + "QPE/Rotation", "flip()", + 0, 0 }, + { Model_Palm_LD | Model_Palm_Z72 | Model_Palm_T600 | Model_Palm_T650 | + Model_Palm_T680 | Model_Palm_T700W | Model_Palm_T700P | + Model_Palm_T750 | Model_Palm_T755P, + Qt::Key_F7, QT_TRANSLATE_NOOP( "Button", "Record Button" ), + "devicebuttons/palm_record", + "QPE/VMemo", "toggleRecord()", + "sound", "raise()" }, + { Model_Palm_TT | Model_Palm_TT2 | Model_Palm_TT3 | Model_Palm_TT5 | + Model_Palm_TE | Model_Palm_TE2 | Model_Palm_TC | Model_Palm_LD | + Model_Palm_TX | Model_Palm_Z71 | Model_Palm_Z72 | Model_Palm_T600 | + Model_Palm_T650 | Model_Palm_T680 | Model_Palm_T700W | + Model_Palm_T700P | Model_Palm_T750 | Model_Palm_T755P, + Qt::Key_F8, QT_TRANSLATE_NOOP( "Button", "Suspend Button" ), + "devicebuttons/palm_suspend", + "suspend", "raise()", + "suspend", "raise()" }, { Model_Palm_TT | Model_Palm_TT2 | Model_Palm_TT3 | Model_Palm_TT5 | Model_Palm_TE | Model_Palm_TE2 | Model_Palm_TC | Model_Palm_LD | Model_Palm_TX | Model_Palm_Z71 | Model_Palm_Z72 | Model_Palm_T600 | Model_Palm_T650 | Model_Palm_T680 | Model_Palm_T700W | Model_Palm_T700P | Model_Palm_T750 | Model_Palm_T755P, Qt::Key_F9, QT_TRANSLATE_NOOP( "Button", "Home Button" ), "devicebuttons/palm_home", "QPE/Launcher", "home()", "buttonsettings", "raise()" }, { Model_Palm_TT | Model_Palm_TT2 | Model_Palm_TT3 | Model_Palm_TT5 | Model_Palm_TE | Model_Palm_TE2 | Model_Palm_TC | Model_Palm_LD | Model_Palm_TX | Model_Palm_Z71 | Model_Palm_Z72 | Model_Palm_T600 | @@ -88,40 +109,24 @@ struct palm_button palm_buttons [] = { "devicebuttons/palm_todo", "todolist", "raise()", "todolist", "create()" }, { Model_Palm_TT | Model_Palm_TT2 | Model_Palm_TT3 | Model_Palm_TT5 | Model_Palm_TE | Model_Palm_TE2 | Model_Palm_TC | Model_Palm_LD | Model_Palm_TX | Model_Palm_Z71 | Model_Palm_Z72 | Model_Palm_T600 | Model_Palm_T650 | Model_Palm_T680 | Model_Palm_T700W | Model_Palm_T700P | Model_Palm_T750 | Model_Palm_T755P, Qt::Key_F12, QT_TRANSLATE_NOOP( "Button", "Mail Button" ), "devicebuttons/palm_mail", "opiemail", "raise()", "opiemail", "newmail()" }, - { Model_Palm_LD | Model_Palm_Z72 | Model_Palm_T600 | Model_Palm_T650 | - Model_Palm_T680 | Model_Palm_T700W | Model_Palm_T700P | - Model_Palm_T750 | Model_Palm_T755P, - Qt::Key_F7, QT_TRANSLATE_NOOP( "Button", "Record Button" ), - "devicebuttons/palm_record", - "QPE/VMemo", "toggleRecord()", - "sound", "raise()" }, - { Model_Palm_TT | Model_Palm_TT2 | Model_Palm_TT3 | Model_Palm_TT5 | - Model_Palm_TE | Model_Palm_TE2 | Model_Palm_TC | Model_Palm_LD | - Model_Palm_TX | Model_Palm_Z71 | Model_Palm_Z72 | Model_Palm_T600 | - Model_Palm_T650 | Model_Palm_T680 | Model_Palm_T700W | - Model_Palm_T700P | Model_Palm_T750 | Model_Palm_T755P, - Qt::Key_F8, QT_TRANSLATE_NOOP( "Button", "Suspend Button" ), - "devicebuttons/palm_suspend", - "suspend", "raise()", - "suspend", "raise()" }, }; void Palm::init(const QString& cpu_info) { d->m_vendorstr = "Palm"; d->m_vendor = Vendor_Palm; QString model = "unknown"; int loc = cpu_info.find( ":" ); if ( loc != -1 ) model = cpu_info.mid( loc+2 ).simplifyWhiteSpace(); @@ -207,37 +212,37 @@ void Palm::init(const QString& cpu_info) else d->m_model = Model_Unknown; switch ( d->m_model ) { case Model_Palm_TT3: case Model_Palm_TT5: case Model_Palm_TC: case Model_Palm_LD: case Model_Palm_TX: case Model_Palm_TE2: case Model_Palm_Z72: + case Model_Palm_T650: m_backlightdev = "/sys/class/backlight/pxapwm-bl/"; d->m_rotation = Rot0; d->m_direction = CCW; d->m_qteDriver = "Transformed"; break; case Model_Palm_T600: case Model_Palm_TT: case Model_Palm_TT2: case Model_Palm_TE: case Model_Palm_Z71: m_backlightdev = "/sys/class/backlight/omap-bl/"; break; - case Model_Palm_T650: case Model_Palm_T680: case Model_Palm_T700W: case Model_Palm_T700P: case Model_Palm_T750: case Model_Palm_T755P: m_backlightdev = "/sys/class/backlight/corgi-bl/"; break; default: m_backlightdev = ""; } @@ -277,25 +282,25 @@ void Palm::initButtons() bool Palm::filter ( int /*unicode*/, int keycode, int modifiers, bool isPress, bool autoRepeat ) { int newkeycode = keycode; if (qt_screen->transformOrientation() != Rot0){ switch ( keycode ) { case Key_Left : case Key_Right: case Key_Up : case Key_Down : - newkeycode = Key_Left + ( keycode - Key_Left + (int) qt_screen->transformOrientation() ) % 4; + newkeycode = Key_Left + ( keycode - Key_Left + 4 ) % 4; default: break; } if (newkeycode!=keycode) { if ( newkeycode != Key_unknown ) { QWSServer::sendKeyEvent ( -1, newkeycode, modifiers, isPress, autoRepeat ); } return true; } } |