summaryrefslogtreecommitdiff
path: root/Services/WindowServer/Compositor.h
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2020-05-19 19:02:15 +0200
committerAndreas Kling <kling@serenityos.org>2020-05-20 08:31:46 +0200
commit10699b347fa4b1d5da958a78c7c4bced2b0d05c9 (patch)
tree21a0eddf11dffa98381810ad98d9ea2ae7e76551 /Services/WindowServer/Compositor.h
parentdb30a2549e75f5827efc67c20d338538e38ff427 (diff)
downloadserenity-10699b347fa4b1d5da958a78c7c4bced2b0d05c9.zip
WindowServer: Move occlusion things from WindowManager to Compositor
Diffstat (limited to 'Services/WindowServer/Compositor.h')
-rw-r--r--Services/WindowServer/Compositor.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Services/WindowServer/Compositor.h b/Services/WindowServer/Compositor.h
index 99778d786c..2a0de5dd78 100644
--- a/Services/WindowServer/Compositor.h
+++ b/Services/WindowServer/Compositor.h
@@ -36,6 +36,7 @@ namespace WindowServer {
class ClientConnection;
class Cursor;
+class Window;
enum class WallpaperMode {
Simple,
@@ -69,6 +70,8 @@ public:
void increment_display_link_count(Badge<ClientConnection>);
void decrement_display_link_count(Badge<ClientConnection>);
+ void recompute_occlusions();
+
private:
Compositor();
void init_bitmaps();
@@ -79,6 +82,8 @@ private:
void draw_menubar();
void run_animations();
void notify_display_links();
+ bool any_opaque_window_contains_rect(const Gfx::Rect&);
+ bool any_opaque_window_above_this_one_contains_rect(const Window&, const Gfx::Rect&);
RefPtr<Core::Timer> m_compose_timer;
RefPtr<Core::Timer> m_immediate_compose_timer;