From 18467b4cd333ab0b7aa10b1c1acd83942c583e60 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Fri, 3 Jul 2020 16:55:19 +0200 Subject: Add tab autocomplete for youtube --- src/QuickMedia.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/QuickMedia.cpp') diff --git a/src/QuickMedia.cpp b/src/QuickMedia.cpp index 6ab8c19..0845d43 100644 --- a/src/QuickMedia.cpp +++ b/src/QuickMedia.cpp @@ -215,7 +215,6 @@ namespace QuickMedia { case Page::SEARCH_SUGGESTION: body->draw_thumbnails = current_plugin->search_suggestions_has_thumbnails(); search_suggestion_page(); - search_bar->onTextBeginTypingCallback = nullptr; break; #if 0 case Page::SEARCH_RESULT: @@ -400,6 +399,11 @@ namespace QuickMedia { typing = true; }; + search_bar->autocomplete_search_delay = current_plugin->get_autocomplete_delay(); + search_bar->onAutocompleteRequestCallback = [this](const sf::String &text) { + return current_plugin->autocomplete_search(text); + }; + search_bar->onTextUpdateCallback = [&update_search_text, this, &tabs, &selected_tab, &typing](const std::string &text) { if(tabs[selected_tab].body == body && !current_plugin->search_is_filter()) update_search_text = text; @@ -496,6 +500,8 @@ namespace QuickMedia { } else if(event.key.code == sf::Keyboard::Right) { selected_tab = std::min((int)tabs.size() - 1, selected_tab + 1); search_bar->clear(); + } else if(event.key.code == sf::Keyboard::Tab) { + search_bar->set_to_autocomplete(); } } } @@ -575,6 +581,7 @@ namespace QuickMedia { } search_bar->onTextBeginTypingCallback = nullptr; + search_bar->onAutocompleteRequestCallback = nullptr; } void Program::search_result_page() { -- cgit v1.2.3