Commit 136bf4b1 authored by Jazz Xu's avatar Jazz Xu Committed by Commit Bot

CrOS: Modify spacing between media controls and sign in pod.

This CL modify the spacing to taking 1/3 of the available space if we
have a small screen or in portrait mode, 1/5 if we have large screen.

Bug: 1011641
Change-Id: I97020a650f416c9976eb5a9ab32b038a9338ba53
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1865553Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Jazz Xu <jazzhsu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#706670}
parent 8928f390
...@@ -80,14 +80,14 @@ namespace { ...@@ -80,14 +80,14 @@ namespace {
// should not affect visual appearance. // should not affect visual appearance.
constexpr int kNonEmptyHeightDp = 30; constexpr int kNonEmptyHeightDp = 30;
// Horizontal distance between the auth user and the media controls.
constexpr int kDistanceBetweenAuthUserAndMediaControlsLandscapeDp = 100;
constexpr int kDistanceBetweenAuthUserAndMediaControlsPortraitDp = 50;
// Horizontal distance between two users in the low density layout. // Horizontal distance between two users in the low density layout.
constexpr int kLowDensityDistanceBetweenUsersInLandscapeDp = 118; constexpr int kLowDensityDistanceBetweenUsersInLandscapeDp = 118;
constexpr int kLowDensityDistanceBetweenUsersInPortraitDp = 32; constexpr int kLowDensityDistanceBetweenUsersInPortraitDp = 32;
constexpr int kMediaControlsSpacingThreshold = 1280;
constexpr int kMediaControlsSmallSpaceFactor = 3;
constexpr int kMediaControlsLargeSpaceFactor = 5;
// Margin left of the auth user in the medium density layout. // Margin left of the auth user in the medium density layout.
constexpr int kMediumDensityMarginLeftOfAuthUserLandscapeDp = 98; constexpr int kMediumDensityMarginLeftOfAuthUserLandscapeDp = 98;
constexpr int kMediumDensityMarginLeftOfAuthUserPortraitDp = 0; constexpr int kMediumDensityMarginLeftOfAuthUserPortraitDp = 0;
...@@ -1281,6 +1281,27 @@ void LockContentsView::SetLowDensitySpacing(views::View* spacing_middle, ...@@ -1281,6 +1281,27 @@ void LockContentsView::SetLowDensitySpacing(views::View* spacing_middle,
std::min(available_width, desired_width)); std::min(available_width, desired_width));
} }
void LockContentsView::SetMediaControlsSpacing(bool landscape) {
views::View* spacing_middle = media_controls_view_->GetMiddleSpacingView();
int total_width = GetPreferredSize().width();
int available_width =
total_width - (primary_big_view_->GetPreferredSize().width() +
media_controls_view_->GetPreferredSize().width());
if (available_width <= 0) {
SetPreferredWidthForView(spacing_middle, 0);
return;
}
int desired_width;
if (!landscape || total_width <= kMediaControlsSpacingThreshold)
desired_width = available_width / kMediaControlsSmallSpaceFactor;
else
desired_width = available_width / kMediaControlsLargeSpaceFactor;
SetPreferredWidthForView(spacing_middle, desired_width);
}
bool LockContentsView::AreMediaControlsEnabled() const { bool LockContentsView::AreMediaControlsEnabled() const {
return screen_type_ == LockScreen::ScreenType::kLock && return screen_type_ == LockScreen::ScreenType::kLock &&
!expanded_view_->GetVisible() && !expanded_view_->GetVisible() &&
...@@ -1309,10 +1330,7 @@ void LockContentsView::CreateMediaControlsLayout() { ...@@ -1309,10 +1330,7 @@ void LockContentsView::CreateMediaControlsLayout() {
// Set |spacing_middle|. // Set |spacing_middle|.
AddDisplayLayoutAction(base::BindRepeating( AddDisplayLayoutAction(base::BindRepeating(
&LockContentsView::SetLowDensitySpacing, base::Unretained(this), &LockContentsView::SetMediaControlsSpacing, base::Unretained(this)));
media_controls_view_->GetMiddleSpacingView(), media_controls_view_.get(),
kDistanceBetweenAuthUserAndMediaControlsLandscapeDp,
kDistanceBetweenAuthUserAndMediaControlsPortraitDp));
Layout(); Layout();
} }
......
...@@ -247,6 +247,9 @@ class ASH_EXPORT LockContentsView ...@@ -247,6 +247,9 @@ class ASH_EXPORT LockContentsView
int portrait_dist, int portrait_dist,
bool landscape); bool landscape);
// Set |spacing_middle| for media controls.
void SetMediaControlsSpacing(bool landscape);
// 1-2 users. // 1-2 users.
void CreateLowDensityLayout(const std::vector<LoginUserInfo>& users); void CreateLowDensityLayout(const std::vector<LoginUserInfo>& users);
// 3-6 users. // 3-6 users.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment