diff options
author | Uros Majstorovic <majstor@majstor.org> | 2021-02-24 19:50:20 +0100 |
---|---|---|
committer | Uros Majstorovic <majstor@majstor.org> | 2021-02-24 19:50:20 +0100 |
commit | 3050565531af2b3a09f2213893f10c64cf9fe43f (patch) | |
tree | 689d10ca064dba4480a85b6ec14a4eb8305d5c89 /fw/fe310/eos/eve/screen/screen.c | |
parent | d0a0fee0571be63f023f8f6a49a0b76b89871e56 (diff) |
added test app with voice, wifi/cellular data connectivity examples
Diffstat (limited to 'fw/fe310/eos/eve/screen/screen.c')
-rw-r--r-- | fw/fe310/eos/eve/screen/screen.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/fw/fe310/eos/eve/screen/screen.c b/fw/fe310/eos/eve/screen/screen.c index af5a91f..fa4a0aa 100644 --- a/fw/fe310/eos/eve/screen/screen.c +++ b/fw/fe310/eos/eve/screen/screen.c @@ -28,13 +28,17 @@ void eve_screen_show_kbd(EVEScreen *screen) { EVEWindow *win = screen->win_tail; EVEKbd *kbd = eve_screen_get_kbd(screen); - if (win) win->g.y = screen->h - kbd->g.h; + if (win && kbd) win->g.y = screen->h - kbd->g.h; } void eve_screen_hide_kbd(EVEScreen *screen) { EVEWindow *win = screen->win_tail; + EVEKbd *kbd = eve_screen_get_kbd(screen); - if (win) win->g.y = screen->h; + if (win && kbd) { + win->g.y = screen->h; + eve_kbd_close(kbd); + } } void eve_screen_draw(EVEScreen *screen) { @@ -87,6 +91,7 @@ void eve_screen_draw(EVEScreen *screen) { void eve_screen_handle_touch(void *s, uint8_t tag0, int touch_idx) { EVEScreen *screen = s; EVEWindow *win; + int h; eve_touch_clear_opt(); @@ -94,7 +99,8 @@ void eve_screen_handle_touch(void *s, uint8_t tag0, int touch_idx) { win = screen->win_tail; while (win) { if (eve_window_visible(win)) { - int a = win->view->touch(win->view, tag0, touch_idx); + h = win->view->touch(win->view, tag0, touch_idx); + if (h) break; } win = win->prev; } |