commit 6ef14e99eec0d741104be3a1483b7e92de870c96
parent 19d6cc395dfcb73fa7fc70a0691a38005afc334f
Author: Ryan Dwyer <ryandwyer1@gmail.com>
Date: Tue, 1 May 2018 19:59:36 +1000
Restore view_update_position()
Diffstat:
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/include/sway/tree/view.h b/include/sway/tree/view.h
@@ -197,6 +197,8 @@ void view_map(struct sway_view *view, struct wlr_surface *wlr_surface);
void view_unmap(struct sway_view *view);
+void view_update_position(struct sway_view *view, double ox, double oy);
+
void view_update_size(struct sway_view *view, int width, int height);
void view_child_init(struct sway_view_child *child,
diff --git a/sway/tree/view.c b/sway/tree/view.c
@@ -349,6 +349,19 @@ void view_unmap(struct sway_view *view) {
arrange_children_of(parent);
}
+void view_update_position(struct sway_view *view, double ox, double oy) {
+ if (view->swayc->x == ox && view->swayc->y == oy) {
+ return;
+ }
+
+ // TODO: Only allow this if the view is floating (this function will only be
+ // called in response to wayland clients wanting to reposition themselves).
+ view_damage(view, true);
+ view->swayc->x = ox;
+ view->swayc->y = oy;
+ view_damage(view, true);
+}
+
void view_update_size(struct sway_view *view, int width, int height) {
if (view->width == width && view->height == height) {
return;