[dali_2.3.22] Merge branch 'devel/master'
[platform/core/uifw/dali-adaptor.git] / dali / internal / input / ubuntu-x11 / key-mapping-x.cpp
1 /*
2  * Copyright (c) 2021 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 // CLASS HEADER
19 #include <dali/internal/input/common/key-impl.h>
20
21 namespace Dali
22 {
23 namespace Internal
24 {
25 namespace Adaptor
26 {
27 namespace KeyLookup
28 {
29 // matches a DALI_KEY enum, to a key name
30 // clang-format off
31 KeyLookup KeyLookupTable[]=
32 {
33   // more than one key name can be assigned to a single dali-key code
34   // e.g. "Menu" and "XF86Menu" are both assigned to  DALI_KEY_MENU
35
36   { "Escape",                DALI_KEY_ESCAPE,                                            false },
37   { "Menu",                  DALI_KEY_MENU,                                              false },
38
39   // Now literal strings are used as key names instead of defined symbols in utilX,
40   // since these definition in utilX.h is deprecated
41   { "XF86Camera",            DALI_KEY_CAMERA,                                            false },
42   { "XF86Camera_Full",       DALI_KEY_CONFIG,                                            false },
43   { "XF86PowerOff",          DALI_KEY_POWER,                                             true  },
44   { "XF86Standby",           DALI_KEY_PAUSE,                                             false },
45   { "Cancel",                DALI_KEY_CANCEL,                                            false },
46   { "XF86AudioPlay",         DALI_KEY_PLAY_CD,                                           false },
47   { "XF86AudioStop",         DALI_KEY_STOP_CD,                                           false },
48   { "XF86AudioPause",        DALI_KEY_PAUSE_CD,                                          false },
49   { "XF86AudioNext",         DALI_KEY_NEXT_SONG,                                         false },
50   { "XF86AudioPrev",         DALI_KEY_PREVIOUS_SONG,                                     false },
51   { "XF86AudioRewind",       DALI_KEY_REWIND,                                            false },
52   { "XF86AudioForward",      DALI_KEY_FASTFORWARD,                                       false },
53   { "XF86AudioMedia",        DALI_KEY_MEDIA,                                             false },
54   { "XF86AudioPlayPause",    DALI_KEY_PLAY_PAUSE,                                        false },
55   { "XF86AudioMute",         DALI_KEY_MUTE,                                              false },
56   { "XF86Menu",              DALI_KEY_MENU,                                              true  },
57   { "XF86Home",              DALI_KEY_HOME,                                              true  },
58   { "XF86Back",              DALI_KEY_BACK,                                              true  },
59   { "XF86Send",              DALI_KEY_MENU,                                              true  },
60   { "XF86Phone",             DALI_KEY_HOME,                                              true  },
61   { "XF86Stop",              DALI_KEY_BACK,                                              true  },
62   { "XF86HomePage",          DALI_KEY_HOMEPAGE,                                          false },
63   { "XF86WWW",               DALI_KEY_WEBPAGE,                                           false },
64   { "XF86Mail",              DALI_KEY_MAIL,                                              false },
65   { "XF86ScreenSaver",       DALI_KEY_SCREENSAVER,                                       false },
66   { "XF86MonBrightnessUp",   DALI_KEY_BRIGHTNESS_UP,                                     false },
67   { "XF86MonBrightnessDown", DALI_KEY_BRIGHTNESS_DOWN,                                   false },
68   { "XF86SoftKBD",           DALI_KEY_SOFT_KBD,                                          false },
69   { "XF86QuickPanel",        DALI_KEY_QUICK_PANEL,                                       false },
70   { "XF86TaskPane",          DALI_KEY_TASK_SWITCH,                                       false },
71   { "XF86Apps",              DALI_KEY_APPS,                                              false },
72   { "XF86Search",            DALI_KEY_SEARCH,                                            false },
73   { "XF86Voice",             DALI_KEY_VOICE,                                             false },
74   { "Hangul",                DALI_KEY_LANGUAGE,                                          false },
75   { "XF86AudioRaiseVolume",  DALI_KEY_VOLUME_UP,                                         true  },
76   { "XF86AudioLowerVolume",  DALI_KEY_VOLUME_DOWN,                                       true  },
77
78   { "BackSpace",             DALI_KEY_BACKSPACE,                                         false },
79   { "Left",                  DALI_KEY_CURSOR_LEFT,                                       false },
80   { "Right",                 DALI_KEY_CURSOR_RIGHT,                                      false },
81   { "Up",                    DALI_KEY_CURSOR_UP,                                         false },
82   { "Down",                  DALI_KEY_CURSOR_DOWN,                                       false },
83   { "Shift_L",               DALI_KEY_SHIFT_LEFT,                                        false },
84   { "Shift_R",               DALI_KEY_SHIFT_RIGHT,                                       false },
85   { "Delete",                static_cast<Dali::KEY>( DevelKey::DALI_KEY_DELETE ),        false },
86   { "Control_L",             static_cast<Dali::KEY>( DevelKey::DALI_KEY_CONTROL_LEFT ),  false },
87   { "Control_R",             static_cast<Dali::KEY>( DevelKey::DALI_KEY_CONTROL_RIGHT ), false },
88   { "Return",                static_cast<Dali::KEY>( DevelKey::DALI_KEY_RETURN ),        false }
89 };
90 // clang-format on
91
92 const std::size_t KEY_LOOKUP_COUNT = (sizeof(KeyLookupTable)) / (sizeof(KeyLookup));
93
94 } // namespace KeyLookup
95
96 } // namespace Adaptor
97
98 } // namespace Internal
99
100 } // namespace Dali