ecore_evas_ews: fix focus of inner canvas.
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 5 Oct 2011 22:51:37 +0000 (22:51 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 5 Oct 2011 22:51:37 +0000 (22:51 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/ecore@63852 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_evas/ecore_evas_ews.c

index f8e4948..1479e08 100644 (file)
@@ -440,13 +440,16 @@ static void
 _ecore_evas_ews_focus_set(Ecore_Evas *ee, int val)
 {
    evas_object_focus_set(ee->engine.ews.image, val);
+   ee->prop.focused = val;
    if (val)
      {
+        evas_focus_in(ee->evas);
         if (ee->func.fn_focus_in) ee->func.fn_focus_in(ee);
         _ecore_evas_ews_event(ee, ECORE_EVAS_EWS_EVENT_FOCUS);
      }
    else
      {
+        evas_focus_out(ee->evas);
         if (ee->func.fn_focus_out) ee->func.fn_focus_out(ee);
         _ecore_evas_ews_event(ee, ECORE_EVAS_EWS_EVENT_UNFOCUS);
      }