const auto &o_layer = this->layers.get_layer(*lid);
auto rect = o_layer.value().rect;
- this->controller->surfaces[surface]->set_source_rectangle(rect.x, rect.y, rect.w, rect.h);
+ if(rect.w < 0)
+ {
+ rect.w = this->controller->output_size.w + 1 + rect.w;
+ }
+ if(rect.h < 0)
+ {
+ rect.h = this->controller->output_size.h + 1 + rect.h;
+ }
+ this->controller->surfaces[surface]->set_source_rectangle(0, 0, rect.w, rect.h);
this->controller->layers[*lid]->add_surface(surface);
this->layout_commit();