Do not convert keycodes if this system does not support old tizen keys 69/67069/6 accepted/tizen/common/20160504.125038 accepted/tizen/ivi/20160503.011732 accepted/tizen/mobile/20160503.011635 accepted/tizen/tv/20160503.011656 accepted/tizen/wearable/20160503.011716 submit/tizen/20160502.104143
authorJengHyun Kang <jhyuni.kang@samsung.com>
Mon, 25 Apr 2016 04:42:13 +0000 (13:42 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Mon, 2 May 2016 04:23:47 +0000 (21:23 -0700)
Change-Id: I16e6b0894f9839d193255004f693ccc4f13b68c3

src/lib/ecore_wayland/ecore_wl_input.c

index f65d7fe..2044c99 100644 (file)
@@ -2266,28 +2266,53 @@ _ecore_wl_input_key_conversion_set(void)
 
              ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
                 xkb_keysym_from_name("XF86Stop", XKB_KEYSYM_NO_FLAGS), &keycodes);
-             _back_key_lt_24 = (int)keycodes[0];
-             free(keycodes);
-             keycodes = NULL;
+             if (!keycodes)
+               {
+                  ERR("There is no entry available for the old name of back key. No conversion will be done for back key.\n");
+               }
+             else
+               {
+                  _back_key_lt_24 = (int)keycodes[0];
+                  free(keycodes);
+                  keycodes = NULL;
+
+                  _num_back_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
+                    xkb_keysym_from_name("XF86Back", XKB_KEYSYM_NO_FLAGS), &_back_key_latest);
+               }
 
              ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
                 xkb_keysym_from_name("XF86Send", XKB_KEYSYM_NO_FLAGS), &keycodes);
-             _menu_key_lt_24 = (int)keycodes[0];
-             free(keycodes);
-             keycodes = NULL;
+             if (!keycodes)
+               {
+                  ERR("There is no entry available for the old name of back key. No conversion will be done for menu key.\n");
+               }
+             else
+               {
+                  _menu_key_lt_24 = (int)keycodes[0];
+                  free(keycodes);
+                  keycodes = NULL;
+
+                  _num_menu_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
+                    xkb_keysym_from_name("XF86Menu", XKB_KEYSYM_NO_FLAGS), &_menu_key_latest);
+               }
 
              ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
                 xkb_keysym_from_name("XF86Phone", XKB_KEYSYM_NO_FLAGS), &keycodes);
-             _home_key_lt_24 = (int)keycodes[0];
-             free(keycodes);
-             keycodes = NULL;
-
-             _num_back_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
-                xkb_keysym_from_name("XF86Back", XKB_KEYSYM_NO_FLAGS), &_back_key_latest);
-             _num_menu_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
-                xkb_keysym_from_name("XF86Menu", XKB_KEYSYM_NO_FLAGS), &_menu_key_latest);
-             _num_home_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
-                xkb_keysym_from_name("XF86Home", XKB_KEYSYM_NO_FLAGS), &_home_key_latest);
+             if (!keycodes)
+               {
+                  ERR("There is no entry available for the old name of back key. No conversion will be done for home key.\n");
+               }
+             else
+               {
+                  _home_key_lt_24 = (int)keycodes[0];
+                  free(keycodes);
+                  keycodes = NULL;
+
+                  _num_home_key_latest  = ecore_wl_keycode_from_keysym(_ecore_wl_disp->input->xkb.keymap,
+                    xkb_keysym_from_name("XF86Home", XKB_KEYSYM_NO_FLAGS), &_home_key_latest);
+               }
+
+             if ((!_back_key_lt_24) && (!_menu_key_lt_24) && (!_home_key_lt_24)) _tizen_api_version = -1.0;
           }
         else
           {