diff --git a/ash/shelf/window_preview.cc b/ash/shelf/window_preview.cc index 825cbd98049d5..01aa40ead6ac9 100644 --- a/ash/shelf/window_preview.cc +++ b/ash/shelf/window_preview.cc @@ -85,7 +85,7 @@ void WindowPreview::Layout(PassKey) { content_rect.y(), kCloseButtonSize, kCloseButtonSize)); const gfx::Size container_size = GetPreviewContainerSize(); - gfx::Size mirror_size = preview_view_->CalculatePreferredSize(); + gfx::Size mirror_size = preview_view_->CalculatePreferredSize({}); float preview_ratio = static_cast<float>(mirror_size.width()) / static_cast<float>(mirror_size.height()); diff --git a/ash/wm/window_cycle/window_cycle_item_view.cc b/ash/wm/window_cycle/window_cycle_item_view.cc index 1b449b526a127..6867e3fe4d1be 100644 --- a/ash/wm/window_cycle/window_cycle_item_view.cc +++ b/ash/wm/window_cycle/window_cycle_item_view.cc @@ -163,7 +163,8 @@ void WindowCycleItemView::Layout(PassKey) { source_window(), /*include_header_rounding=*/false))); } -gfx::Size WindowCycleItemView::CalculatePreferredSize() const { +gfx::Size WindowCycleItemView::CalculatePreferredSize( + const views::SizeBounds& available_size) const { // Previews can range in width from half to double of // |kFixedPreviewHeightDp|. Padding will be added to the // sides to achieve this if the preview is too narrow. diff --git a/ash/wm/window_cycle/window_cycle_item_view.h b/ash/wm/window_cycle/window_cycle_item_view.h index 2d5f561c0cf38..660344f68e6cc 100644 --- a/ash/wm/window_cycle/window_cycle_item_view.h +++ b/ash/wm/window_cycle/window_cycle_item_view.h @@ -50,7 +50,8 @@ class ASH_EXPORT WindowCycleItemView : public WindowMiniView { void Layout(PassKey) override; // views::View: - gfx::Size CalculatePreferredSize() const override; + gfx::Size CalculatePreferredSize( + const views::SizeBounds& available_size) const override; bool HandleAccessibleAction(const ui::AXActionData& action_data) override; // WindowMiniViewBase: diff --git a/ash/wm/window_cycle/window_cycle_list.cc b/ash/wm/window_cycle/window_cycle_list.cc index 9979452f57c9d..11d7a9a0ef68c 100644 --- a/ash/wm/window_cycle/window_cycle_list.cc +++ b/ash/wm/window_cycle/window_cycle_list.cc @@ -484,7 +484,7 @@ void WindowCycleList::Scroll(int offset) { // The windows should not shift position when selecting when there's enough // room to display all windows. - if (cycle_view_ && cycle_view_->CalculatePreferredSize().width() == + if (cycle_view_ && cycle_view_->CalculatePreferredSize({}).width() == cycle_view_->CalculateMaxWidth()) { cycle_view_->ScrollToWindow(windows_[current_index_]); } diff --git a/ash/wm/window_cycle/window_cycle_view.cc b/ash/wm/window_cycle/window_cycle_view.cc index 3bffe451c3db3..2a89cd489dc1f 100644 --- a/ash/wm/window_cycle/window_cycle_view.cc +++ b/ash/wm/window_cycle/window_cycle_view.cc @@ -553,7 +553,8 @@ int WindowCycleView::CalculateMaxWidth() const { 2 * kBackgroundHorizontalInsetDp; } -gfx::Size WindowCycleView::CalculatePreferredSize() const { +gfx::Size WindowCycleView::CalculatePreferredSize( + const views::SizeBounds& available_size) const { gfx::Size size = GetContentContainerBounds().size(); // `mirror_container_` can have window list that overflow out of the // screen, but the window cycle view with a bandshield, cropping the diff --git a/ash/wm/window_cycle/window_cycle_view.h b/ash/wm/window_cycle/window_cycle_view.h index 918c8c1898148..0e7018a8fe059 100644 --- a/ash/wm/window_cycle/window_cycle_view.h +++ b/ash/wm/window_cycle/window_cycle_view.h @@ -131,7 +131,8 @@ class ASH_EXPORT WindowCycleView : public views::WidgetDelegateView, int CalculateMaxWidth() const; // views::WidgetDelegateView: - gfx::Size CalculatePreferredSize() const override; + gfx::Size CalculatePreferredSize( + const views::SizeBounds& available_size) const override; void Layout(PassKey) override; // ui::ImplicitAnimationObserver: diff --git a/ash/wm/window_mirror_view.cc b/ash/wm/window_mirror_view.cc index c204032bd47cd..da79a72c68b32 100644 --- a/ash/wm/window_mirror_view.cc +++ b/ash/wm/window_mirror_view.cc @@ -67,7 +67,8 @@ void WindowMirrorView::OnWindowDestroying(aura::Window* window) { } } -gfx::Size WindowMirrorView::CalculatePreferredSize() const { +gfx::Size WindowMirrorView::CalculatePreferredSize( + const views::SizeBounds& available_size) const { return show_non_client_view_ ? source_->bounds().size() : GetClientAreaBounds().size(); } diff --git a/ash/wm/window_mirror_view.h b/ash/wm/window_mirror_view.h index 1d5d3fe894305..ff03566f4d2a1 100644 --- a/ash/wm/window_mirror_view.h +++ b/ash/wm/window_mirror_view.h @@ -50,7 +50,8 @@ class ASH_EXPORT WindowMirrorView : public views::View, void OnWindowDestroying(aura::Window* window) override; // views::View: - gfx::Size CalculatePreferredSize() const override; + gfx::Size CalculatePreferredSize( + const views::SizeBounds& available_size) const override; void Layout(PassKey) override; bool GetNeedsNotificationWhenVisibleBoundsChange() const override; void OnVisibleBoundsChanged() override; diff --git a/ash/wm/window_preview_view.cc b/ash/wm/window_preview_view.cc index cd2bcbf9ad9e2..e6006be327abb 100644 --- a/ash/wm/window_preview_view.cc +++ b/ash/wm/window_preview_view.cc @@ -64,7 +64,8 @@ void WindowPreviewView::RecreatePreviews() { entry.second->RecreateMirrorLayers(); } -gfx::Size WindowPreviewView::CalculatePreferredSize() const { +gfx::Size WindowPreviewView::CalculatePreferredSize( + const views::SizeBounds& available_size) const { // The preferred size of this view is the union of all the windows it is made // up of with, scaled to match the ratio of the main window to its mirror // view's preferred size. @@ -75,7 +76,7 @@ gfx::Size WindowPreviewView::CalculatePreferredSize() const { gfx::SizeF window_size(1.f, 1.f); auto it = mirror_views_.find(root); if (it != mirror_views_.end()) { - window_size = gfx::SizeF(it->second->CalculatePreferredSize()); + window_size = gfx::SizeF(it->second->CalculatePreferredSize({})); if (window_size.IsEmpty()) return gfx::Size(); // Avoids divide by zero below. } diff --git a/ash/wm/window_preview_view.h b/ash/wm/window_preview_view.h index fb1eecced2db9..a5edafbc6fd32 100644 --- a/ash/wm/window_preview_view.h +++ b/ash/wm/window_preview_view.h @@ -39,7 +39,8 @@ class ASH_EXPORT WindowPreviewView void RecreatePreviews(); // views::View: - gfx::Size CalculatePreferredSize() const override; + gfx::Size CalculatePreferredSize( + const views::SizeBounds& available_size) const override; void Layout(PassKey) override; // aura::client::TransientWindowClientObserver: diff --git a/ash/wm/workspace/multi_window_resize_controller.cc b/ash/wm/workspace/multi_window_resize_controller.cc index ac548c14b0b84..b20bbb8988db2 100644 --- a/ash/wm/workspace/multi_window_resize_controller.cc +++ b/ash/wm/workspace/multi_window_resize_controller.cc @@ -138,7 +138,8 @@ class MultiWindowResizeController::ResizeView : public views::View { ~ResizeView() override = default; // views::View: - gfx::Size CalculatePreferredSize() const override { + gfx::Size CalculatePreferredSize( + const views::SizeBounds& available_size) const override { const bool vert = direction_ == Direction::kLeftRight; return gfx::Size(vert ? kLongSide : kShortSide, vert ? kShortSide : kLongSide);