Index: keyboard.c =================================================================== --- apps/recorder/keyboard.c (revision 16361) +++ apps/recorder/keyboard.c (working copy) @@ -846,11 +846,6 @@ #endif if (++pm->x >= pm->max_chars) { -#ifndef KBD_PAGE_FLIP - /* no dedicated flip key - flip page on wrap */ - if (++pm->page >= pm->pages) - pm->page = 0; -#endif pm->x = 0; } @@ -891,11 +886,6 @@ #endif if (--pm->x < 0) { -#ifndef KBD_PAGE_FLIP - /* no dedicated flip key - flip page on wrap */ - if (--pm->page < 0) - pm->page = pm->pages - 1; -#endif pm->x = pm->max_chars - 1; } @@ -929,14 +919,19 @@ else #endif if (++pm->y >= pm->lines) + { #ifdef KBD_MODES - { pm->line_edit = true; say_edit(); +#else /*!KBD_MODES*/ + pm->y = 0; +#endif /*!KBD_MODES*/ +#ifndef KBD_PAGE_FLIP + /* no dedicated flip key - flip page on wrap */ + if (--pm->page < 0) + pm->page = pm->pages - 1; +#endif /*KBD_PAGE_FLIP*/ } -#else - pm->y = 0; -#endif } #ifdef KBD_MODES if (!pm->line_edit) @@ -972,14 +967,19 @@ else #endif if (--pm->y < 0) + { #ifdef KBD_MODES - { pm->line_edit = true; say_edit(); - } #else pm->y = pm->lines - 1; #endif +#ifndef KBD_PAGE_FLIP + /* no dedicated flip key - flip page on wrap */ + if (++pm->page >= pm->pages) + pm->page = 0; +#endif + } } #ifdef KBD_MODES if (!pm->line_edit)