1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 04:47:35 +00:00

LibGUI+WindowServer: Remove now-obsolete cursor tracking feature

This feature was problematic for several reasons:
- Tracking *all* the user activity seems like a privacy nightmare.
- LibGUI actually only supports one globally tracking widget per window,
  even if no window is necessary, or if multiple callbacks are desired.
- Widgets can easily get confused whether an event is actually directed
  at it, or is actually just the result of global tracking.

The third item caused an issue where right-clicking CatDog opened two
context menus instead of one.
This commit is contained in:
Ben Wiederhake 2021-09-07 22:27:18 +02:00 committed by Andreas Kling
parent 0a69da08aa
commit c6e56612f5
8 changed files with 1 additions and 60 deletions

View file

@ -146,10 +146,6 @@ public:
void update();
void update(const Gfx::IntRect&);
void set_global_cursor_tracking_widget(Widget*);
Widget* global_cursor_tracking_widget() { return m_global_cursor_tracking_widget.ptr(); }
const Widget* global_cursor_tracking_widget() const { return m_global_cursor_tracking_widget.ptr(); }
void set_automatic_cursor_tracking_widget(Widget*);
Widget* automatic_cursor_tracking_widget() { return m_automatic_cursor_tracking_widget.ptr(); }
const Widget* automatic_cursor_tracking_widget() const { return m_automatic_cursor_tracking_widget.ptr(); }
@ -253,7 +249,6 @@ private:
float m_alpha_hit_threshold { 0.0f };
RefPtr<Widget> m_main_widget;
WeakPtr<Widget> m_focused_widget;
WeakPtr<Widget> m_global_cursor_tracking_widget;
WeakPtr<Widget> m_automatic_cursor_tracking_widget;
WeakPtr<Widget> m_hovered_widget;
Gfx::IntRect m_rect_when_windowless;