--- a/bluetoothengine/bthid/keyboard/src/keyboard.cpp Wed Sep 15 12:23:51 2010 +0300
+++ b/bluetoothengine/bthid/keyboard/src/keyboard.cpp Wed Oct 13 14:43:49 2010 +0300
@@ -1189,6 +1189,17 @@
TRACE_INFO( (_L("[HID]\tCHidKeyboardDriver::WindowGroupForKeyEvent: type %d, kc 0x%08x, sc 0x%08x, mod 0x%06x, rep %d]"),
aType, aKeyEvent.iCode, aKeyEvent.iScanCode,
aKeyEvent.iModifiers, aKeyEvent.iRepeats));
+ _LIT(KBackDrop, "*EiksrvBackdrop*");
+
+ if (EStdKeyApplication0 == aKeyEvent.iScanCode && (EEventKeyDown == aType
+ || EEventKeyUp == aType))
+ {
+ // Application key up/down events go to the Eikon server
+ // Use this old way for application key
+ TInt result = iWsSession.FindWindowGroupIdentifier(0, KBackDrop); //This was in A2.x __EIKON_SERVER_NAME
+ DBG(if (KErrNotFound == result) RDebug::Print(_L("[HID]\tCHidKeyboardDriver::WindowGroupForKeyEvent(): BackDropWindowGroup Name not found!")));
+ return result;
+ }
if (EKeyDevice2 == aKeyEvent.iCode && EEventKey == aType)
{
@@ -1369,33 +1380,7 @@
void CHidKeyboardDriver::LaunchApplicationL(TInt aAppUid)
{
TRACE_INFO( (_L("[HID]\tCHidKeyboardDriver::LaunchApplication: UID 0x%08x"), aAppUid));
-
- //KeyLock or phone auto lock is on, refuse to continue
- if (iKeyLock.IsKeyLockEnabled())
- {
- TRACE_INFO( _L("[HID]\tCHidKeyboardDriver::LaunchApplicationL() SKIPPED BECAUSE OF KEYLOCK"));
- return;
- }
-
- TInt devLockStatus( EAutolockStatusUninitialized );
- TInt err = RProperty::Get( KPSUidCoreApplicationUIs, KCoreAppUIsAutolockStatus, devLockStatus );
-
- if (!err)
- {
- if ( EAutolockOff != devLockStatus && EAutolockStatusUninitialized != devLockStatus)
- {
- //Auto lock is on, refuse to continue
- TRACE_INFO( _L("[HID]\tCHidKeyboardDriver::LaunchApplicationL() SKIPPED BECAUSE OF AUTO LOCK"));
- return;
- }
- }
- else
- {
- //failed to get AUTO LOCK status
- TRACE_INFO( _L("[HID]\tCHidKeyboardDriver::LaunchApplicationL() SKIPPED BECAUSE OF FAILED TO GET AUTO LOCK STATUS"));
- return;
- }
-
+
TApaTaskList taskList(iWsSession);
TUid uid = TUid::Uid(aAppUid);
TApaTask task = taskList.FindApp(uid);
@@ -1481,8 +1466,6 @@
// fall through
case EStdKeyF8:
// fall through
- case EStdKeyApplication0:
- // fall through
case EStdKeyApplication2:
// fall through
case EStdKeyApplication3:
@@ -1960,15 +1943,6 @@
break;
}
- case EStdKeyApplication0:
- {
- TRACE_INFO((_L("[HID]\tAPPLICATION KEY(Alt+Tab) >>> TSW")));
-
- // Dedicated Application key
- scancode = EStdKeyApplication0;
- isMmKey = ETrue;
- break;
- }
case EStdKeyF8:
// fall through
case EStdKeyApplication2: