discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=5db35cd85a6ed5a8ace05db36333c40ee3488069

commit 5db35cd85a6ed5a8ace05db36333c40ee3488069
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Apr 27 16:03:42 2015 -0400

    add focus callback to override elm_win being stupid
    
    plz elm_win, you can't focus yourself. you aren't a real widget.
---
 src/modules/fileman/e_fwin.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/modules/fileman/e_fwin.c b/src/modules/fileman/e_fwin.c
index 12138c7..d99d575 100644
--- a/src/modules/fileman/e_fwin.c
+++ b/src/modules/fileman/e_fwin.c
@@ -662,6 +662,14 @@ _e_fwin_bg_mouse_down(E_Fwin *fwin, Evas_Object *obj 
EINA_UNUSED, void *event EI
    evas_object_resize(fwin->win, MAX(w, MINIMUM_WIDTH), MAX(h, 
MINIMUM_HEIGHT));
 }
 
+static void
+_e_fwin_cb_focus(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info EINA_UNUSED)
+{
+   E_Fwin *fwin = data;
+
+   evas_object_focus_set(fwin->cur_page->fm_obj, 1);
+}
+
 static E_Fwin *
 _e_fwin_new(const char *dev,
             const char *path)
@@ -680,6 +688,7 @@ _e_fwin_new(const char *dev,
         return NULL;
      }
    fwins = eina_list_append(fwins, fwin);
+   evas_object_event_callback_add(fwin->win, EVAS_CALLBACK_FOCUS_IN, 
_e_fwin_cb_focus, fwin);
    evas_object_event_callback_add(fwin->win, EVAS_CALLBACK_DEL, 
_e_fwin_cb_delete, fwin);
    evas_object_event_callback_add(fwin->win, EVAS_CALLBACK_RESIZE, 
_e_fwin_cb_resize, fwin);
 

-- 


Reply via email to