mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 06:04:57 +00:00
LibGUI+WindowServer: Remove InputPreemptor concept
This functionality will be superceded by WindowType:Popups
This commit is contained in:
parent
5d567565a4
commit
3027cf7e99
13 changed files with 0 additions and 53 deletions
|
@ -124,7 +124,6 @@ ComboBox::ComboBox()
|
|||
}
|
||||
m_open_button->set_enabled(true);
|
||||
};
|
||||
m_list_window->on_input_preemption = [this](auto) { close(); };
|
||||
|
||||
m_list_view = m_list_window->set_main_widget<ListView>();
|
||||
m_list_view->set_should_hide_unnecessary_scrollbars(true);
|
||||
|
|
|
@ -229,10 +229,6 @@ CommandPalette::CommandPalette(GUI::Window& parent_window, ScreenPosition screen
|
|||
close();
|
||||
};
|
||||
|
||||
on_input_preemption = [this](InputPreemptor preemptor) {
|
||||
if (preemptor != InputPreemptor::ContextMenu)
|
||||
close();
|
||||
};
|
||||
}
|
||||
|
||||
void CommandPalette::collect_actions(GUI::Window& parent_window)
|
||||
|
|
|
@ -374,12 +374,6 @@ void ConnectionToWindowServer::window_state_changed(i32 window_id, bool minimize
|
|||
window->notify_state_changed({}, minimized, maximized, occluded);
|
||||
}
|
||||
|
||||
void ConnectionToWindowServer::window_input_preempted(i32 window_id, i32 preemptor)
|
||||
{
|
||||
if (auto* window = Window::from_window_id(window_id))
|
||||
window->notify_input_preempted({}, static_cast<InputPreemptor>(preemptor));
|
||||
}
|
||||
|
||||
void ConnectionToWindowServer::display_link_notification()
|
||||
{
|
||||
if (m_display_link_notification_pending)
|
||||
|
|
|
@ -55,7 +55,6 @@ private:
|
|||
virtual void update_system_fonts(String const&, String const&, String const&) override;
|
||||
virtual void update_system_effects(Vector<bool> const&) override;
|
||||
virtual void window_state_changed(i32, bool, bool, bool) override;
|
||||
virtual void window_input_preempted(i32, i32) override;
|
||||
virtual void display_link_notification() override;
|
||||
virtual void track_mouse_move(Gfx::IntPoint const&) override;
|
||||
virtual void ping() override;
|
||||
|
|
|
@ -144,11 +144,6 @@ EmojiInputDialog::EmojiInputDialog(Window* parent_window)
|
|||
close();
|
||||
};
|
||||
|
||||
on_input_preemption = [this](InputPreemptor preemptor) {
|
||||
if (preemptor != InputPreemptor::ContextMenu)
|
||||
close();
|
||||
};
|
||||
|
||||
m_search_box->on_change = [this]() {
|
||||
update_displayed_emoji();
|
||||
};
|
||||
|
|
|
@ -1163,12 +1163,6 @@ void Window::notify_state_changed(Badge<ConnectionToWindowServer>, bool minimize
|
|||
}
|
||||
}
|
||||
|
||||
void Window::notify_input_preempted(Badge<ConnectionToWindowServer>, InputPreemptor preemptor)
|
||||
{
|
||||
if (on_input_preemption)
|
||||
on_input_preemption(preemptor);
|
||||
}
|
||||
|
||||
Action* Window::action_for_shortcut(Shortcut const& shortcut)
|
||||
{
|
||||
return Action::find_action_for_shortcut(*this, shortcut);
|
||||
|
|
|
@ -99,7 +99,6 @@ public:
|
|||
Function<void(bool is_active_input)> on_active_input_change;
|
||||
Function<void(bool is_preempted)> on_input_preemption_change;
|
||||
Function<void(bool is_active_window)> on_active_window_change;
|
||||
Function<void(InputPreemptor)> on_input_preemption;
|
||||
|
||||
int x() const { return rect().x(); }
|
||||
int y() const { return rect().y(); }
|
||||
|
@ -206,7 +205,6 @@ public:
|
|||
static void for_each_window(Badge<ConnectionToWindowServer>, Function<void(Window&)>);
|
||||
static void update_all_windows(Badge<ConnectionToWindowServer>);
|
||||
void notify_state_changed(Badge<ConnectionToWindowServer>, bool minimized, bool maximized, bool occluded);
|
||||
void notify_input_preempted(Badge<ConnectionToWindowServer>, InputPreemptor);
|
||||
|
||||
virtual bool is_visible_for_timer_purposes() const override { return m_visible_for_timer_purposes; }
|
||||
|
||||
|
|
|
@ -11,6 +11,5 @@
|
|||
namespace GUI {
|
||||
|
||||
using WindowMode = WindowServer::WindowMode;
|
||||
using InputPreemptor = WindowServer::InputPreemptor;
|
||||
|
||||
}
|
||||
|
|
|
@ -355,16 +355,6 @@ void MenuManager::set_current_menu(Menu* menu)
|
|||
}
|
||||
|
||||
m_current_menu = menu;
|
||||
|
||||
auto& wm = WindowManager::the();
|
||||
if (auto* window = wm.active_input_window()) {
|
||||
InputPreemptor preemptor { InputPreemptor::OtherMenu };
|
||||
if (window->rect().contains(m_current_menu->unadjusted_position()))
|
||||
preemptor = InputPreemptor::ContextMenu;
|
||||
else if (!m_current_menu->rect_in_window_menubar().is_null())
|
||||
preemptor = InputPreemptor::MenubarMenu;
|
||||
wm.notify_input_preempted(*window, preemptor);
|
||||
}
|
||||
}
|
||||
|
||||
Menu* MenuManager::previous_menu(Menu* current)
|
||||
|
|
|
@ -20,7 +20,6 @@ endpoint WindowClient
|
|||
window_activated(i32 window_id) =|
|
||||
window_deactivated(i32 window_id) =|
|
||||
window_state_changed(i32 window_id, bool minimized, bool maximized, bool occluded) =|
|
||||
window_input_preempted(i32 window_id, i32 preemptor) =|
|
||||
window_close_request(i32 window_id) =|
|
||||
window_resized(i32 window_id, Gfx::IntRect new_rect) =|
|
||||
window_moved(i32 window_id, Gfx::IntRect new_rect) =|
|
||||
|
|
|
@ -642,12 +642,6 @@ void WindowManager::notify_progress_changed(Window& window)
|
|||
tell_wms_window_state_changed(window);
|
||||
}
|
||||
|
||||
void WindowManager::notify_input_preempted(Window& window, InputPreemptor preemptor)
|
||||
{
|
||||
if (window.client())
|
||||
window.client()->async_window_input_preempted(window.window_id(), (i32)preemptor);
|
||||
}
|
||||
|
||||
void WindowManager::pick_new_active_window(Window* previous_active)
|
||||
{
|
||||
Window* desktop = nullptr;
|
||||
|
|
|
@ -76,7 +76,6 @@ public:
|
|||
void notify_occlusion_state_changed(Window&);
|
||||
void notify_progress_changed(Window&);
|
||||
void notify_modified_changed(Window&);
|
||||
void notify_input_preempted(Window&, InputPreemptor = InputPreemptor::Other);
|
||||
|
||||
Gfx::IntRect tiled_window_rect(Window const&, WindowTileType tile_type = WindowTileType::Maximized, bool relative_to_window_screen = false) const;
|
||||
|
||||
|
|
|
@ -24,13 +24,4 @@ enum class WindowMode {
|
|||
_Count,
|
||||
};
|
||||
|
||||
// InputPreemptors are Objects which take input precedence over the active input
|
||||
// window without changing its activity state or joining its modal chain
|
||||
enum class InputPreemptor {
|
||||
ContextMenu = 0,
|
||||
MenubarMenu,
|
||||
OtherMenu,
|
||||
Other,
|
||||
};
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue