Init Keyboard tracker for navigator
authorZbigniew Kosinski <z.kosinski@samsung.com>
Wed, 25 Feb 2015 11:06:36 +0000 (12:06 +0100)
committerZbigniew Kosinski <z.kosinski@samsung.com>
Mon, 2 Mar 2015 14:19:24 +0000 (15:19 +0100)
Change-Id: Iad023bfeb3cfda61d8c7c9ba7d2d21e30e7e5478

src/keyboard_tracker.c
src/navigator.c

index 190ecd9..3f950cf 100644 (file)
@@ -2,9 +2,7 @@
 #include <atspi/atspi.h>
 #include "keyboard_tracker.h"
 #include "logger.h"
-#include <Ecore.h>
 
-static Ecore_Thread *thread;
 static AtspiDeviceListener *listener;
 static Keyboard_Tracker_Cb user_cb;
 static void *user_data;
@@ -29,25 +27,12 @@ static gboolean device_cb(const AtspiDeviceEvent *stroke, void *data)
    return TRUE;
 }
 
-void blocking(void *list, Ecore_Thread *th)
-{
-   atspi_event_main();
-}
-
-void cancel(void *list, Ecore_Thread *th)
-{
-   atspi_event_quit();
-}
-
 void keyboard_tracker_init(void)
 {
    atspi_init();
    listener =  atspi_device_listener_new(device_cb, NULL, NULL);
    atspi_register_keystroke_listener(listener, NULL, 0, ATSPI_KEY_PRESSED, ATSPI_KEYLISTENER_SYNCHRONOUS|ATSPI_KEYLISTENER_CANCONSUME, NULL);
-
-   ecore_init();
-   thread = ecore_thread_run(blocking, NULL, cancel, NULL);
-   ERROR("keyboard tracker init");
+   DEBUG("keyboard tracker init");
 }
 
 void keyboard_tracker_register(Keyboard_Tracker_Cb cb, void *data)
@@ -58,6 +43,6 @@ void keyboard_tracker_register(Keyboard_Tracker_Cb cb, void *data)
 
 void keyboard_tracker_shutdown(void)
 {
-   ecore_thread_cancel(thread);
-   ERROR("keyboard tracker shutdown");
+   atspi_deregister_keystroke_listener(listener, NULL, 0, ATSPI_KEY_PRESSED, NULL);
+   DEBUG("keyboard tracker shutdown");
 }
index 1eb0f7a..a5107b8 100644 (file)
@@ -842,6 +842,21 @@ static void on_window_activate(void *data, AtspiAccessible *window)
       top_window = window;
 }
 
+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)
 {
    // register on gesture_getected
@@ -853,6 +868,8 @@ void navigator_init(void)
    app_tracker_init();
    smart_notification_init();
    system_notifications_init();
+   keyboard_tracker_init();
+   keyboard_tracker_register(kb_tracker, NULL);
 }
 
 void navigator_shutdown(void)
@@ -877,4 +894,5 @@ void navigator_shutdown(void)
    window_tracker_shutdown();
    smart_notification_shutdown();
    system_notifications_shutdown();
+   keyboard_tracker_shutdown();
 }