void output::done() {
HMI_DEBUG("wm", "wl::output %s @ %p done", __func__, this->proxy.get());
- // Let's just disregard the flipped ones...
+ // Pivot and flipped
if (this->transform == WL_OUTPUT_TRANSFORM_90 ||
- this->transform == WL_OUTPUT_TRANSFORM_270) {
+ this->transform == WL_OUTPUT_TRANSFORM_270 ||
+ this->transform == WL_OUTPUT_TRANSFORM_FLIPPED_90 ||
+ this->transform == WL_OUTPUT_TRANSFORM_FLIPPED_270) {
std::swap(this->width, this->height);
}
}
void controller::surface_create(uint32_t id) {
this->surfaces[id] = std::make_unique<struct surface>(id, this);
+
+ // configure surface to wxh dimensions
+ this->surfaces[id]->set_configuration(this->output_size.w, this->output_size.h);
}
void controller::controller_screen(uint32_t id,
if (this->surfaces.find(id) == this->surfaces.end()) {
this->surfaces[id] = std::make_unique<struct surface>(id, this);
this->chooks->surface_created(id);
+
+ // configure surface to wxh dimensions
+ this->surfaces[id]->set_configuration(this->output_size.w, this->output_size.h);
}
}
HMI_DEBUG("wm", "compositor::surface %s @ %d w %i h %i", __func__, s->id,
width, height);
this->sprops[s->id].size = size{uint32_t(width), uint32_t(height)};
- is_configured = true;
}
void controller::surface_orientation(struct surface *s, int32_t orientation) {