aboutsummaryrefslogtreecommitdiff
path: root/rootston/output.c
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2017-11-20 21:15:58 +0100
committeremersion <contact@emersion.fr>2017-11-20 21:15:58 +0100
commit151901123f0f59d0a05b5494e91d5425c99e6b1a (patch)
tree3c4f5cdb49dee27867fca017a89ff54262011822 /rootston/output.c
parent016744ef4d2692c800d613e40fbf5d6267fab2e9 (diff)
parentbecd75fd2ebd31fec9fdcf9cc2f37c5957d31b37 (diff)
Merge branch 'master' into refactor-wlr-list
Diffstat (limited to 'rootston/output.c')
-rw-r--r--rootston/output.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/rootston/output.c b/rootston/output.c
index 6c8f2519..83ff37fd 100644
--- a/rootston/output.c
+++ b/rootston/output.c
@@ -38,7 +38,7 @@ static void rotate_child_position(double *sx, double *sy, double sw, double sh,
static void render_surface(struct wlr_surface *surface,
struct roots_desktop *desktop, struct wlr_output *wlr_output,
struct timespec *when, double lx, double ly, float rotation) {
- if (surface->texture->valid) {
+ if (wlr_surface_has_buffer(surface)) {
int width = surface->current->width;
int height = surface->current->height;
int render_width = width * wlr_output->scale;
@@ -186,15 +186,15 @@ static void output_frame_notify(struct wl_listener *listener, void *data) {
wlr_output_make_current(wlr_output);
wlr_renderer_begin(server->renderer, wlr_output);
- for (size_t i = 0; i < desktop->views->length; ++i) {
- struct roots_view *view = desktop->views->items[i];
+ struct roots_view *view;
+ wl_list_for_each_reverse(view, &desktop->views, link) {
render_view(view, desktop, wlr_output, &now);
}
- struct roots_drag_icon *drag_icon = NULL;
+ struct wlr_drag_icon *drag_icon = NULL;
struct roots_seat *seat = NULL;
wl_list_for_each(seat, &server->input->seats, link) {
- wl_list_for_each(drag_icon, &seat->drag_icons, link) {
+ wl_list_for_each(drag_icon, &seat->seat->drag_icons, link) {
if (!drag_icon->mapped) {
continue;
}