mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 04:07:45 +00:00
WindowServer: Make hit test results richer
Instead of just answering hit/no-hit when hit testing windows, we now return a HitTestResult object which tells you which window was hit, where it was hit, and whether you hit the frame or the content.
This commit is contained in:
parent
370d3749e5
commit
4133caba78
6 changed files with 91 additions and 45 deletions
23
Userland/Services/WindowServer/HitTestResult.h
Normal file
23
Userland/Services/WindowServer/HitTestResult.h
Normal file
|
@ -0,0 +1,23 @@
|
|||
/*
|
||||
* Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-2-Clause
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AK/WeakPtr.h>
|
||||
#include <LibGfx/Point.h>
|
||||
|
||||
namespace WindowServer {
|
||||
|
||||
class Window;
|
||||
|
||||
struct HitTestResult {
|
||||
WeakPtr<Window> window;
|
||||
Gfx::IntPoint screen_position;
|
||||
Gfx::IntPoint window_relative_position;
|
||||
bool is_frame_hit { false };
|
||||
};
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue