From 3931b292b051f4e5357e0847254b46e7bd4238c7 Mon Sep 17 00:00:00 2001 From: Marcus Nilsson Date: Wed, 2 Jun 2021 22:44:52 +0200 Subject: [PATCH] HackStudio: Make locator lose focus on close Make locator lose focus when pressing escape or by clicking in the editor area. --- Userland/DevTools/HackStudio/Locator.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Userland/DevTools/HackStudio/Locator.cpp b/Userland/DevTools/HackStudio/Locator.cpp index 44eba20f23138f..705fd23f0762cb 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);