summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Mikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-03-17 23:31:14 +0100
committerLibravatar Mikkel Oscar Lyderik <mikkeloscar@gmail.com>2016-03-17 23:47:42 +0100
commitf63512480c058b9ebe80c2dd5f43fd6597811ef4 (patch)
treed0f2a2aeb742e3abbc3da0c251d1e9c7f18d7f16
parentMerge pull request #515 from mikkeloscar/focus-correct-swaylock-view (diff)
downloadsway-f63512480c058b9ebe80c2dd5f43fd6597811ef4.tar.gz
sway-f63512480c058b9ebe80c2dd5f43fd6597811ef4.tar.zst
sway-f63512480c058b9ebe80c2dd5f43fd6597811ef4.zip
Remove unused panel_size (and fix rearrange)
desktop_shell.panel_size was only used to determine if sway should rearrange the output when rendering the panel in the output_pre_render hook. This is not needed since the output will have been arranged at that point. It also caused sway to rearrange all the time when running with two or more different monitors/resolutions because panel_size kept changing with every output_pre_render callback. Should fix #514
-rw-r--r--include/extensions.h1
-rw-r--r--sway/extensions.c1
-rw-r--r--sway/handlers.c4
3 files changed, 0 insertions, 6 deletions
diff --git a/include/extensions.h b/include/extensions.h
index 164688ee..158a40a2 100644
--- a/include/extensions.h
+++ b/include/extensions.h
@@ -28,7 +28,6 @@ struct desktop_shell_state {
28 list_t *panels; 28 list_t *panels;
29 list_t *lock_surfaces; 29 list_t *lock_surfaces;
30 bool is_locked; 30 bool is_locked;
31 struct wlc_size panel_size;
32}; 31};
33 32
34struct swaylock_state { 33struct swaylock_state {
diff --git a/sway/extensions.c b/sway/extensions.c
index 9283b656..c646ac91 100644
--- a/sway/extensions.c
+++ b/sway/extensions.c
@@ -93,7 +93,6 @@ static void set_panel(struct wl_client *client, struct wl_resource *resource,
93 config->surface = wlc_resource_from_wl_surface_resource(surface); 93 config->surface = wlc_resource_from_wl_surface_resource(surface);
94 config->wl_surface_res = surface; 94 config->wl_surface_res = surface;
95 wl_resource_set_destructor(surface, panel_surface_destructor); 95 wl_resource_set_destructor(surface, panel_surface_destructor);
96 desktop_shell.panel_size = *wlc_surface_get_size(config->surface);
97 arrange_windows(&root_container, -1, -1); 96 arrange_windows(&root_container, -1, -1);
98 wlc_output_schedule_render(config->output); 97 wlc_output_schedule_render(config->output);
99} 98}
diff --git a/sway/handlers.c b/sway/handlers.c
index 69f325eb..d992a7b6 100644
--- a/sway/handlers.c
+++ b/sway/handlers.c
@@ -141,10 +141,6 @@ static void handle_output_pre_render(wlc_handle output) {
141 break; 141 break;
142 } 142 }
143 wlc_surface_render(config->surface, &geo); 143 wlc_surface_render(config->surface, &geo);
144 if (size.w != desktop_shell.panel_size.w || size.h != desktop_shell.panel_size.h) {
145 desktop_shell.panel_size = size;
146 arrange_windows(&root_container, -1, -1);
147 }
148 break; 144 break;
149 } 145 }
150 } 146 }