allow home/end/arrow keys to move cursor in command or insert mode

This commit is contained in:
Josh Holtrop 2017-01-05 21:05:46 -05:00
parent 95381faedc
commit 314b39b81a

View File

@ -237,6 +237,27 @@ void Window::handle_keysym(uint32_t keysym)
void Window::handle_keyval(uint32_t keyval)
{
switch (keyval)
{
case SDLK_HOME:
m_buffer_pane->cursor_move(CursorMovement::SOL);
break;
case SDLK_END:
m_buffer_pane->cursor_move(CursorMovement::EOL);
break;
case SDLK_RIGHT:
m_buffer_pane->cursor_move(CursorMovement::RIGHT);
break;
case SDLK_LEFT:
m_buffer_pane->cursor_move(CursorMovement::LEFT);
break;
case SDLK_DOWN:
m_buffer_pane->cursor_move(CursorMovement::DOWN);
break;
case SDLK_UP:
m_buffer_pane->cursor_move(CursorMovement::UP);
break;
default:
if (m_buffer_pane->insert_mode())
{
if (keyval == '\033')
@ -323,6 +344,8 @@ void Window::handle_keyval(uint32_t keyval)
break;
}
}
break;
}
}
void Window::resize()