aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-04-05 18:38:50 -0400
committeremersion <contact@emersion.fr>2018-04-05 18:38:50 -0400
commitd65d001aa55c71f67a35c8ce78d3cb3f7f5fd65e (patch)
tree1c9f2045ac5750765c9517166b5c36ac43664971
parent6b9b03f09ffae8c8a9d7150d1ec68845c9e0ebf0 (diff)
downloadsway-d65d001aa55c71f67a35c8ce78d3cb3f7f5fd65e.tar.xz
Fix desktop_damage_whole_surface
-rw-r--r--include/sway/output.h7
-rw-r--r--sway/desktop/desktop.c5
-rw-r--r--sway/desktop/output.c10
-rw-r--r--sway/tree/container.c4
4 files changed, 16 insertions, 10 deletions
diff --git a/include/sway/output.h b/include/sway/output.h
index 8945dde4..4bffa2b7 100644
--- a/include/sway/output.h
+++ b/include/sway/output.h
@@ -34,11 +34,14 @@ struct sway_output {
void output_damage_whole(struct sway_output *output);
+void output_damage_whole_surface(struct sway_output *output,
+ double ox, double oy, struct wlr_surface *surface);
+
void output_damage_whole_view(struct sway_output *output,
struct sway_view *view);
-void output_damage_whole_rect(struct sway_output *output, double ox, double oy,
- int width, int height);
+void output_damage_whole_container(struct sway_output *output,
+ struct sway_container *con);
struct sway_container *output_by_name(const char *name);
diff --git a/sway/desktop/desktop.c b/sway/desktop/desktop.c
index c23d988c..3a13191f 100644
--- a/sway/desktop/desktop.c
+++ b/sway/desktop/desktop.c
@@ -7,9 +7,8 @@ void desktop_damage_whole_surface(struct wlr_surface *surface, double lx,
for (int i = 0; i < root_container.children->length; ++i) {
struct sway_container *cont = root_container.children->items[i];
if (cont->type == C_OUTPUT) {
- output_damage_whole_rect(cont->sway_output,
- lx - cont->x, ly - cont->y,
- surface->current->width, surface->current->height);
+ output_damage_whole_surface(cont->sway_output,
+ lx - cont->x, ly - cont->y, surface);
}
}
}
diff --git a/sway/desktop/output.c b/sway/desktop/output.c
index 09244460..a7f40ef8 100644
--- a/sway/desktop/output.c
+++ b/sway/desktop/output.c
@@ -335,14 +335,20 @@ void output_damage_whole(struct sway_output *output) {
wlr_output_damage_add_whole(output->damage);
}
+void output_damage_whole_surface(struct sway_output *output,
+ double ox, double oy, struct wlr_surface *surface) {
+ // TODO
+ output_damage_whole(output);
+}
+
void output_damage_whole_view(struct sway_output *output,
struct sway_view *view) {
// TODO
output_damage_whole(output);
}
-void output_damage_whole_rect(struct sway_output *output,
- double ox, double oy, int width, int height) {
+void output_damage_whole_container(struct sway_output *output,
+ struct sway_container *con) {
// TODO
output_damage_whole(output);
}
diff --git a/sway/tree/container.c b/sway/tree/container.c
index 1450db6d..404d413f 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -523,7 +523,5 @@ void container_damage_whole(struct sway_container *con) {
if (output->type != C_OUTPUT) {
output = container_parent(output, C_OUTPUT);
}
-
- output_damage_whole_rect(output->sway_output, con->x, con->y, con->width,
- con->height);
+ output_damage_whole_container(output->sway_output, con);
}