diff options
Diffstat (limited to 'src/QuickMedia.cpp')
-rw-r--r-- | src/QuickMedia.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp index 1b48743..f66e23f 100644 --- a/src/QuickMedia.cpp +++ b/src/QuickMedia.cpp @@ -1817,7 +1817,7 @@ namespace QuickMedia { } } - bool Program::page_loop(std::vector<Tab> &tabs, int start_tab_index, PageLoopSubmitHandler after_submit_handler) { + bool Program::page_loop(std::vector<Tab> &tabs, int start_tab_index, PageLoopSubmitHandler after_submit_handler, bool go_to_previous_on_escape) { if(tabs.empty()) { show_notification("QuickMedia", "No tabs provided!", Urgency::CRITICAL); return false; @@ -2169,7 +2169,7 @@ namespace QuickMedia { if(event.type == sf::Event::Resized || event.type == sf::Event::GainedFocus) redraw = true; else if(event.type == sf::Event::KeyPressed) { - if(event.key.code == sf::Keyboard::Escape) { + if(event.key.code == sf::Keyboard::Escape && go_to_previous_on_escape) { return false; } else if(event.key.code == sf::Keyboard::Enter) { if(!tabs[selected_tab].search_bar) { @@ -7084,10 +7084,7 @@ namespace QuickMedia { tabs.push_back(Tab{std::move(invites_body), std::move(matrix_invites_page), create_search_bar("Search...", SEARCH_DELAY_FILTER)}); tabs.push_back(Tab{std::move(room_directory_body), std::move(matrix_room_directory_page), create_search_bar("Server to search on...", SEARCH_DELAY_FILTER)}); - while(window.isOpen()) { - page_loop(tabs, 2); - } - + page_loop(tabs, 2, nullptr, false); matrix->stop_sync(); } |