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;