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); } } --