/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2015 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
test_return_value = TET_PASS;
}
-// Copied from key-impl.h
+// Copied from key-impl.cpp
struct KeyLookup
{
const char* keyName; ///< X string representation
const bool deviceButton; ///< Whether the key is from a button on the device
};
+// Taken from key-impl.cpp
KeyLookup TestKeyLookupTable[]=
{
+ { "Escape", DALI_KEY_ESCAPE, false }, // item not defined in utilX
+ { "Menu", DALI_KEY_MENU, false }, // item not defined in utilX
+
+ // Now the key names are used as literal string not defined symbols,
+ // since these definition in utilX.h is deprecated and we're guided not to use them
{ "XF86Camera", DALI_KEY_CAMERA, false },
{ "XF86Camera_Full", DALI_KEY_CONFIG, false },
{ "XF86PowerOff", DALI_KEY_POWER, true },
{ "Cancel", DALI_KEY_CANCEL, false },
+ { "XF86AudioPlay", DALI_KEY_PLAY_CD, false },
{ "XF86AudioStop", DALI_KEY_STOP_CD, false },
{ "XF86AudioPause", DALI_KEY_PAUSE_CD, false },
{ "XF86AudioNext", DALI_KEY_NEXT_SONG, false },
{ "XF86AudioMedia", DALI_KEY_MEDIA, false },
{ "XF86AudioPlayPause", DALI_KEY_PLAY_PAUSE, false },
{ "XF86AudioMute", DALI_KEY_MUTE, false },
+ { "XF86Menu", DALI_KEY_MENU, true },
+ { "XF86Send", DALI_KEY_MENU, true },
{ "XF86HomePage", DALI_KEY_HOMEPAGE, false },
{ "XF86WWW", DALI_KEY_WEBPAGE, false },
+ { "XF86Mail", DALI_KEY_MAIL, false },
{ "XF86ScreenSaver", DALI_KEY_SCREENSAVER, false },
{ "XF86MonBrightnessUp", DALI_KEY_BRIGHTNESS_UP, false },
{ "XF86MonBrightnessDown", DALI_KEY_BRIGHTNESS_DOWN, false },
{ "Hangul", DALI_KEY_LANGUAGE, false },
{ "XF86AudioRaiseVolume", DALI_KEY_VOLUME_UP, true },
{ "XF86AudioLowerVolume", DALI_KEY_VOLUME_DOWN, true },
+
+ { "BackSpace", DALI_KEY_BACKSPACE, false },
+ { "Left", DALI_KEY_CURSOR_LEFT, false },
+ { "Right", DALI_KEY_CURSOR_RIGHT, false }
};
const std::size_t KEY_LOOKUP_COUNT = (sizeof( TestKeyLookupTable))/ (sizeof(KeyLookup));
enum TEST_TYPE
{
- GRAB_KEY_P,
- UNGRAB_KEY_P,
GRAB_KEY_TOPMOST_P,
UNGRAB_KEY_TOPMOST_P
};
void OnInit(Application& app)
{
- mStartTimer = Timer::New( 100 );
- mStartTimer.TickSignal().Connect( this, &MyTestApp::StartTick );
- mStartTimer.Start();
-
mTimer = Timer::New( 500 );
mTimer.TickSignal().Connect( this, &MyTestApp::Tick );
mTimer.Start();
- }
- bool StartTick()
- {
- mStartTimer.Stop();
ExcuteTest();
- return true;
}
bool Tick()
{
switch (mTestType)
{
- case GRAB_KEY_P:
- TestGrabKeyP();
- break;
- case UNGRAB_KEY_P:
- TestUngrabKeyP();
- break;
- case UNGRAB_KEY_N:
- TestUngrabKeyN();
- break;
case GRAB_KEY_TOPMOST_P:
TestGrabKeyTopmostP();
break;
}
}
- void TestGrabKeyP()
- {
- for ( std::size_t i = 0; i < KEY_LOOKUP_COUNT; ++i )
- {
- DALI_TEST_CHECK( KeyGrab::GrabKey( mApplication.GetWindow(), TestKeyLookupTable[i].daliKeyCode, KeyGrab::TOPMOST ) );
- DALI_TEST_CHECK( KeyGrab::GrabKey( mApplication.GetWindow(), TestKeyLookupTable[i].daliKeyCode, KeyGrab::SHARED ) );
- }
- }
-
- void TestUngrabKeyP()
- {
- for ( std::size_t i = 0; i < KEY_LOOKUP_COUNT; ++i )
- {
- DALI_TEST_CHECK( KeyGrab::GrabKey( mApplication.GetWindow(), TestKeyLookupTable[i].daliKeyCode, KeyGrab::TOPMOST ) );
- DALI_TEST_CHECK( KeyGrab::UngrabKey( mApplication.GetWindow(), TestKeyLookupTable[i].daliKeyCode ) );
- }
- }
-
void TestGrabKeyTopmostP()
{
for ( std::size_t i = 0; i < KEY_LOOKUP_COUNT; ++i )
// Data
Application& mApplication;
int mTestType;
- Timer mTimer, mStartTimer;
+ Timer mTimer;
};
-int UtcDaliKeyGrabGrabKeyP(void)
-{
- Application application = Application::New( &gArgc, &gArgv );
- MyTestApp testApp( application, GRAB_KEY_P );
- application.MainLoop();
- END_TEST;
-}
-
-int UtcDaliKeyGrabUngrabKeyP(void)
-{
- Application application = Application::New( &gArgc, &gArgv );
- MyTestApp testApp( application, UNGRAB_KEY_P );
- application.MainLoop();
- END_TEST;
-}
-
int UtcDaliKeyGrabGrabKeyTopmostP(void)
{
Application application = Application::New( &gArgc, &gArgv );
application.MainLoop();
END_TEST;
}
-