keyboard_tracker: "back" hardware button fix 04/53204/3
authorKamil Lipiszko <k.lipiszko@samsung.com>
Wed, 2 Dec 2015 13:26:34 +0000 (14:26 +0100)
committerLukasz Stanislawski <l.stanislaws@samsung.com>
Mon, 14 Dec 2015 12:04:00 +0000 (04:04 -0800)
Change-Id: I30f0eae1693d9a488d8d74ad5328fcf8ea6b3b2d

CMakeLists.txt
include/keyboard_tracker.h
src/keyboard_tracker.c
src/main.c
src/navigator.c

index 95718a7..17f8dba 100755 (executable)
@@ -16,6 +16,7 @@ SET(SRCS ${CMAKE_SOURCE_DIR}/src/app_tracker.c
         ${CMAKE_SOURCE_DIR}/src/screen_reader_vconf.c
         ${CMAKE_SOURCE_DIR}/src/smart_notification.c
         ${CMAKE_SOURCE_DIR}/src/lua_engine.c
+        ${CMAKE_SOURCE_DIR}/src/keyboard_tracker.c
 )
 
 
@@ -33,7 +34,6 @@ IF("${SEC_FEATURE_TAPI_ENABLE}" STREQUAL "1")
        ${CMAKE_SOURCE_DIR}/src/elm_access_adapter.c
        ${CMAKE_SOURCE_DIR}/src/screen_reader_gestures.c
        ${CMAKE_SOURCE_DIR}/src/navigator.c
-       ${CMAKE_SOURCE_DIR}/src/keyboard_tracker.c
        ${CMAKE_SOURCE_DIR}/src/window_tracker.c)
 ELSE()
     MESSAGE("SEC_FEATURE_TAPI_ENABLE: ${SEC_FEATURE_TAPI_ENABLE}")
index f94f881..02e470c 100644 (file)
@@ -14,5 +14,4 @@ typedef enum _Key Key;
 
 typedef void (*Keyboard_Tracker_Cb) (void *data, Key k);
 void keyboard_tracker_init(void);
-void keyboard_tracker_register(Keyboard_Tracker_Cb cb, void *data);
 void keyboard_tracker_shutdown(void);
index b43cd7c..b2b0316 100644 (file)
@@ -139,26 +139,6 @@ void root_xwindow_property_tracker_unregister()
        }
 }
 #endif
-static gboolean device_cb(const AtspiDeviceEvent * stroke, void *data)
-{
-       Key k;
-       if (!strcmp(stroke->event_string, "KP_Up"))
-               k = KEY_UP;
-       else if (!strcmp(stroke->event_string, "KP_Down"))
-               k = KEY_DOWN;
-       else if (!strcmp(stroke->event_string, "KP_Left"))
-               k = KEY_LEFT;
-       else if (!strcmp(stroke->event_string, "KP_Right"))
-               k = KEY_RIGHT;
-       else
-               return FALSE;
-
-       if (user_cb)
-               user_cb(user_data, k);
-
-       return TRUE;
-}
-
 static gboolean async_keyboard_cb(const AtspiDeviceEvent * stroke, void *data)
 {
        if (!strcmp(stroke->event_string, "XF86Back"))
@@ -172,10 +152,9 @@ static gboolean async_keyboard_cb(const AtspiDeviceEvent * stroke, void *data)
 
 void keyboard_tracker_init(void)
 {
-       listener = atspi_device_listener_new(device_cb, NULL, NULL);
-       atspi_register_keystroke_listener(listener, NULL, 0, 1 << ATSPI_KEY_PRESSED_EVENT, ATSPI_KEYLISTENER_SYNCHRONOUS | ATSPI_KEYLISTENER_CANCONSUME, NULL);
        async_listener = atspi_device_listener_new(async_keyboard_cb, NULL, NULL);
        atspi_register_keystroke_listener(async_listener, NULL, 0, 1 << ATSPI_KEY_RELEASED_EVENT, ATSPI_KEYLISTENER_NOSYNC, NULL);
+
 #ifdef X11_ENABLED
        active_xwindow_property_tracker_register();
        root_xwindow_property_tracker_register();
@@ -183,12 +162,6 @@ void keyboard_tracker_init(void)
        DEBUG("keyboard tracker init");
 }
 
-void keyboard_tracker_register(Keyboard_Tracker_Cb cb, void *data)
-{
-       user_cb = cb;
-       user_data = data;
-}
-
 void keyboard_tracker_shutdown(void)
 {
        atspi_deregister_keystroke_listener(listener, NULL, 0, 1 << ATSPI_KEY_PRESSED, NULL);
index f6017f4..b1a322e 100644 (file)
@@ -26,6 +26,7 @@
 #include "navigator.h"
 #include "screen_reader_gestures.h"
 #endif
+#include "keyboard_tracker.h"
 #include "logger.h"
 #include "screen_reader.h"
 #include "screen_reader_switch.h"
@@ -223,6 +224,7 @@ static int app_create(void *data)
        screen_reader_gestures_init();
        navigator_init();
 #endif
+       keyboard_tracker_init();
        screen_reader_switch_enabled_set(EINA_TRUE);
        return 0;
 }
index 014260a..219b5ec 100644 (file)
@@ -1711,20 +1711,6 @@ static void on_window_activate(void *data, AtspiAccessible * window)
        DEBUG("END");
 }
 
-void kb_tracker(void *data, Key k)
-{
-       switch (k) {
-       case KEY_LEFT:
-               _focus_prev();
-               break;
-       case KEY_RIGHT:
-               _focus_next();
-               break;
-       default:
-               DEBUG("Key %d not supported \n", k);
-       }
-}
-
 void navigator_init(void)
 {
        DEBUG("START");
@@ -1745,8 +1731,6 @@ void navigator_init(void)
 #ifndef SCREEN_READER_TV
        system_notifications_init();
 #endif
-       keyboard_tracker_init();
-       keyboard_tracker_register(kb_tracker, NULL);
 }
 
 void navigator_shutdown(void)