billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=3aac7976b7ba6595a1906785282cc292aeef3f5e

commit 3aac7976b7ba6595a1906785282cc292aeef3f5e
Author: Boris Faure <bill...@gmail.com>
Date:   Mon Feb 12 22:03:02 2018 +0100

    termio: fix key bindings for scrolling
---
 src/bin/termio.c | 8 +++++---
 src/bin/termio.h | 3 ++-
 src/bin/win.c    | 4 ++--
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/bin/termio.c b/src/bin/termio.c
index ec6b597..1be8f3a 100644
--- a/src/bin/termio.c
+++ b/src/bin/termio.c
@@ -5408,7 +5408,8 @@ _smart_pty_change(void *data)
    EINA_SAFETY_ON_NULL_RETURN(sd);
 
 // if scroll to bottom on updates
-   if (sd->jump_on_change)  sd->scroll = 0;
+   if (sd->jump_on_change)
+     sd->scroll = 0;
    _smart_update_queue(data, sd);
 }
 
@@ -6090,12 +6091,13 @@ termio_add(Evas_Object *win, Config *config,
 
 void
 termio_key_down(Evas_Object *termio,
-                const Evas_Event_Key_Down *ev)
+                const Evas_Event_Key_Down *ev,
+                Eina_Bool action_handled)
 {
    Termio *sd = evas_object_smart_data_get(termio);
 
    EINA_SAFETY_ON_NULL_RETURN(sd);
-   if (sd->jump_on_keypress)
+   if (sd->jump_on_keypress && !action_handled)
      {
         if (!key_is_modifier(ev->key))
           {
diff --git a/src/bin/termio.h b/src/bin/termio.h
index 5e4a403..199de9e 100644
--- a/src/bin/termio.h
+++ b/src/bin/termio.h
@@ -56,7 +56,8 @@ Termpty *termio_pty_get(const Evas_Object *obj);
 Evas_Object * termio_miniview_get(const Evas_Object *obj);
 Term* termio_term_get(const Evas_Object *obj);
 
-void termio_key_down(Evas_Object *termio, const Evas_Event_Key_Down *ev);
+void termio_key_down(Evas_Object *termio, const Evas_Event_Key_Down *ev,
+                     Eina_Bool action_handled);
 void termio_focus_in(Evas_Object *termio);
 void termio_focus_out(Evas_Object *termio);
 
diff --git a/src/bin/win.c b/src/bin/win.c
index 93071a5..b65ffbf 100644
--- a/src/bin/win.c
+++ b/src/bin/win.c
@@ -1512,13 +1512,13 @@ end:
         GROUPED_INPUT_TERM_FOREACH(wn, l, term)
           {
              if (term)
-               termio_key_down(term->termio, ev);
+               termio_key_down(term->termio, ev, done);
           }
      }
    else
      {
         if (term)
-          termio_key_down(term->termio, ev);
+          termio_key_down(term->termio, ev, done);
      }
 }
 

-- 


Reply via email to