From 7da386db79a2f10ce0a357a76001638ff3310b70 Mon Sep 17 00:00:00 2001 From: Marcus Fritzsch Date: Tue, 12 Sep 2017 11:29:32 +0200 Subject: App/layers: deactivate surfaces on layers above. * When activating a surface on layer x, all surfaces on all layers above this will be deactivated. * Remove main_surface special case (we get the same result by putting the main_surface on the bottom layer). * Track LayoutState per layer, make can_split() accept this layer-local LayoutState for its decision. * Sort layers on load according to their ID. That is, do not make use Of the layer's z-order attribute, also there is no need to. Signed-off-by: Marcus Fritzsch --- src/app.hpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/app.hpp') diff --git a/src/app.hpp b/src/app.hpp index 297b6af..2e5478b 100644 --- a/src/app.hpp +++ b/src/app.hpp @@ -127,8 +127,6 @@ struct App { return this->id_alloc.lookup(id); } - struct LayoutState state; - // Set by AFB API when wayland events need to be dispatched std::atomic pending_events; void set_pending_events() { @@ -180,7 +178,7 @@ struct App { void activate(int id); void deactivate(int id); - bool can_split(int new_id); + bool can_split(struct LayoutState const &state, int new_id); }; } // namespace wm -- cgit 1.2.3-korg