hwc: Decouple windowed display from dynamic scaling.
CRs-Fixed: 2626557
Change-Id: I88751e050741b1bf9e6013555f5ec098d9e3d6bc
diff --git a/composer/hwc_display_builtin.cpp b/composer/hwc_display_builtin.cpp
index 6a7f063..7041ada 100644
--- a/composer/hwc_display_builtin.cpp
+++ b/composer/hwc_display_builtin.cpp
@@ -149,10 +149,10 @@
if (enable_bw_limits_) {
DLOGI("Enable BW Limits %d", id_);
}
- Debug::GetWindowRect(&window_rect_.left, &window_rect_.top,
- &window_rect_.right, &window_rect_.bottom);
+ windowed_display_ = Debug::GetWindowRect(&window_rect_.left, &window_rect_.top,
+ &window_rect_.right, &window_rect_.bottom) != kErrorUndefined;
DLOGI("Window rect : [%f %f %f %f]", window_rect_.left, window_rect_.top,
- window_rect_.right, window_rect_.bottom);
+ window_rect_.right, window_rect_.bottom);
}
return status;
}
@@ -1197,6 +1197,11 @@
return error;
}
+ // windowed_display and dynamic scaling are not supported.
+ if (windowed_display_) {
+ return HWC2::Error::None;
+ }
+
Layer *sdm_layer = client_target_->GetSDMLayer();
uint32_t fb_width = 0, fb_height = 0;