+ auto &s = this->surfaces[id];
+ bool center = int(s->size.w) != int(width) && int(s->size.h) != int(height);
+ s->size = size{uint32_t(width), uint32_t(height)};
+ if (center)
+ add_task("fullscreen surface", [id](struct controller *c) {
+ c->surfaces[id]->set_destination_rectangle(0, 0, c->output_size.w,
+ c->output_size.h);
+ c->surfaces[id]->set_visibility(1);
+ c->layers[100]->add_surface(c->surfaces[id].get());
+ c->layers[100]->set_visibility(1);
+ });