aboutsummaryrefslogtreecommitdiff
path: root/src/QuickMedia.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r--src/QuickMedia.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp
index 9f233da..95938c5 100644
--- a/src/QuickMedia.cpp
+++ b/src/QuickMedia.cpp
@@ -4138,7 +4138,7 @@ namespace QuickMedia {
} else if(event.type == mgl::Event::GainedFocus) {
redraw = true;
} else if(event.type == mgl::Event::KeyPressed) {
- if((!event.key.control && event.key.code == mgl::Keyboard::Up) || (!event.key.alt && event.key.control && event.key.code == mgl::Keyboard::K)) {
+ if((!event.key.control && event.key.code == mgl::Keyboard::Up) || (!event.key.alt && event.key.code == mgl::Keyboard::K)) {
if(image_index > 0) {
--image_index;
goto end_of_images_page;
@@ -4146,7 +4146,7 @@ namespace QuickMedia {
page_navigation = -1;
goto end_of_images_page;
}
- } else if((!event.key.control && event.key.code == mgl::Keyboard::Down) || (!event.key.alt && event.key.control && event.key.code == mgl::Keyboard::J)) {
+ } else if((!event.key.control && event.key.code == mgl::Keyboard::Down) || (!event.key.alt && event.key.code == mgl::Keyboard::J)) {
if(image_index < num_manga_pages) {
++image_index;
goto end_of_images_page;
@@ -6626,24 +6626,26 @@ namespace QuickMedia {
ui_tabs.on_event(event);
if(chat_state == ChatState::URL_SELECTION) {
- if(url_selection_body.on_event(window, event))
+ if(url_selection_body.on_event(window, event, true, false))
idle_active_handler();
} else {
- if(tabs[selected_tab].body->on_event(window, event, chat_state == ChatState::NAVIGATING))
+ if(tabs[selected_tab].body->on_event(window, event, chat_state == ChatState::NAVIGATING, false))
idle_active_handler();
}
base_event_handler(event, PageType::EXIT, tabs[selected_tab].body.get(), nullptr, false, false);
event_idle_handler(event);
if(!frame_skip_text_entry) {
- if(!mention.visible || event.type != mgl::Event::KeyPressed || (event.key.code != mgl::Keyboard::Up && event.key.code != mgl::Keyboard::Down && event.key.code != mgl::Keyboard::Left && event.key.code != mgl::Keyboard::Right))
+ const bool move_arrows = (event.key.code == mgl::Keyboard::Up || event.key.code == mgl::Keyboard::Down || event.key.code == mgl::Keyboard::Left || event.key.code == mgl::Keyboard::Right);
+ const bool move_vim_keys = (event.key.control && (event.key.code == mgl::Keyboard::J || event.key.code != mgl::Keyboard::K));
+ if(!mention.visible || event.type != mgl::Event::KeyPressed || (!move_arrows && !move_vim_keys))
chat_input.process_event(window, event);
if(chat_input.is_editable())
mention.handle_event(event);
}
if(draw_room_list) {
- if(matrix_chat_page->rooms_page->body->on_event(window, event, false))
+ if(matrix_chat_page->rooms_page->body->on_event(window, event, false, false))
idle_active_handler();
}