diff options
Diffstat (limited to 'Userland/DevTools/HackStudio/Locator.cpp')
-rw-r--r-- | Userland/DevTools/HackStudio/Locator.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Userland/DevTools/HackStudio/Locator.cpp b/Userland/DevTools/HackStudio/Locator.cpp index 44eba20f23..705fd23f07 100644 --- a/Userland/DevTools/HackStudio/Locator.cpp +++ b/Userland/DevTools/HackStudio/Locator.cpp @@ -103,9 +103,12 @@ Locator::Locator(Core::Object* parent) m_textbox->on_change = [this] { update_suggestions(); }; + m_textbox->on_escape_pressed = [this] { m_popup_window->hide(); + m_textbox->set_focus(false); }; + m_textbox->on_up_pressed = [this] { GUI::ModelIndex new_index = m_suggestion_view->selection().first(); if (new_index.is_valid()) @@ -138,6 +141,10 @@ Locator::Locator(Core::Object* parent) open_suggestion(selected_index); }; + m_textbox->on_focusout = [&]() { + close(); + }; + m_popup_window = GUI::Window::construct(parent); // FIXME: This is obviously not a tooltip window, but it's the closest thing to what we want atm. m_popup_window->set_window_type(GUI::WindowType::Tooltip); |