billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=948c1399cd98303f3f517de115be80c7600810fb

commit 948c1399cd98303f3f517de115be80c7600810fb
Author: Boris Faure <bill...@gmail.com>
Date:   Wed May 6 21:30:18 2015 +0200

    fix focus issue wrt tabs
    
    elm_object_focus_set() triggers a focus_out on the window even though an
     object inside it is getting the focus…
---
 src/bin/win.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/bin/win.c b/src/bin/win.c
index 717ba27..cff91e3 100644
--- a/src/bin/win.c
+++ b/src/bin/win.c
@@ -413,7 +413,8 @@ _cb_win_focus_in(void *data,
    Term_Container *tc = (Term_Container*) wn;
    Term *term;
 
-   if (!tc->is_focused) elm_win_urgent_set(wn->win, EINA_FALSE);
+   if (!tc->is_focused)
+     elm_win_urgent_set(wn->win, EINA_FALSE);
    tc->is_focused = EINA_TRUE;
    if ((wn->cmdbox_up) && (wn->cmdbox))
      elm_object_focus_set(wn->cmdbox, EINA_TRUE);
@@ -2277,7 +2278,10 @@ _tabs_focus(Term_Container *tc, Term_Container *relative)
    if (tc->parent == relative)
      {
         if (!tc->is_focused)
-          tabs->current->tc->focus(tabs->current->tc, tc);
+          {
+             tc->is_focused = EINA_TRUE;
+             tabs->current->tc->focus(tabs->current->tc, tc);
+          }
      }
    else
      {
@@ -2305,7 +2309,6 @@ _tabs_focus(Term_Container *tc, Term_Container *relative)
           }
         tc->parent->focus(tc->parent, tc);
      }
-   tc->is_focused = EINA_TRUE;
 }
 
 static void

-- 


Reply via email to