Commit b5eadd12 authored by minch's avatar minch Committed by Chromium LUCI CQ

bento: Correct corner radius of new desk button

Bug: 1168255
Change-Id: Ie849ada4a926d8953c1ac0b6cf4aef6083bb21e4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2638105Reviewed-by: default avatarAhmed Fakhry <afakhry@chromium.org>
Commit-Queue: Min Chen <minch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844912}
parent 7348fce6
...@@ -23,6 +23,10 @@ namespace { ...@@ -23,6 +23,10 @@ namespace {
constexpr int kNewDeskButtonAndNameSpacing = 8; constexpr int kNewDeskButtonAndNameSpacing = 8;
constexpr int kBorderCornerRadius = 6;
constexpr int kCornerRadius = 4;
// The new desk button in expand desks bar in Bento has the same size as the // The new desk button in expand desks bar in Bento has the same size as the
// desk preview, which is proportional to the size of the display on which it // desk preview, which is proportional to the size of the display on which it
// resides. // resides.
...@@ -37,7 +41,8 @@ gfx::Rect GetExpandedStateNewDeskButtonBounds(aura::Window* root_window) { ...@@ -37,7 +41,8 @@ gfx::Rect GetExpandedStateNewDeskButtonBounds(aura::Window* root_window) {
// The button belongs to ExpandedStateNewDeskButton. // The button belongs to ExpandedStateNewDeskButton.
class ASH_EXPORT InnerNewDeskButton : public DeskButtonBase { class ASH_EXPORT InnerNewDeskButton : public DeskButtonBase {
public: public:
InnerNewDeskButton() : DeskButtonBase(base::string16()) { InnerNewDeskButton()
: DeskButtonBase(base::string16(), kBorderCornerRadius, kCornerRadius) {
paint_contents_only_ = true; paint_contents_only_ = true;
} }
InnerNewDeskButton(const InnerNewDeskButton&) = delete; InnerNewDeskButton(const InnerNewDeskButton&) = delete;
......
...@@ -32,10 +32,13 @@ constexpr int kZeroStateNewDeskButtonWidth = 36; ...@@ -32,10 +32,13 @@ constexpr int kZeroStateNewDeskButtonWidth = 36;
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// DeskButtonBase: // DeskButtonBase:
DeskButtonBase::DeskButtonBase(const base::string16& text) DeskButtonBase::DeskButtonBase(const base::string16& text,
int border_corder_radius,
int corner_radius)
: LabelButton(base::BindRepeating(&DeskButtonBase::OnButtonPressed, : LabelButton(base::BindRepeating(&DeskButtonBase::OnButtonPressed,
base::Unretained(this)), base::Unretained(this)),
text) { text),
corner_radius_(corner_radius) {
SetPaintToLayer(); SetPaintToLayer();
layer()->SetFillsBoundsOpaquely(false); layer()->SetFillsBoundsOpaquely(false);
SetHorizontalAlignment(gfx::ALIGN_CENTER); SetHorizontalAlignment(gfx::ALIGN_CENTER);
...@@ -45,11 +48,11 @@ DeskButtonBase::DeskButtonBase(const base::string16& text) ...@@ -45,11 +48,11 @@ DeskButtonBase::DeskButtonBase(const base::string16& text)
SetFocusPainter(nullptr); SetFocusPainter(nullptr);
SetFocusBehavior(views::View::FocusBehavior::ACCESSIBLE_ONLY); SetFocusBehavior(views::View::FocusBehavior::ACCESSIBLE_ONLY);
auto border = std::make_unique<WmHighlightItemBorder>(kCornerRadius); auto border = std::make_unique<WmHighlightItemBorder>(border_corder_radius);
border_ptr_ = border.get(); border_ptr_ = border.get();
SetBorder(std::move(border)); SetBorder(std::move(border));
views::InstallRoundRectHighlightPathGenerator(this, GetInsets(), views::InstallRoundRectHighlightPathGenerator(this, GetInsets(),
kCornerRadius); border_corder_radius);
UpdateBorderState(); UpdateBorderState();
} }
...@@ -66,7 +69,7 @@ void DeskButtonBase::OnPaintBackground(gfx::Canvas* canvas) { ...@@ -66,7 +69,7 @@ void DeskButtonBase::OnPaintBackground(gfx::Canvas* canvas) {
flags.setColor(background_color_); flags.setColor(background_color_);
canvas->DrawRoundRect(gfx::RectF(paint_contents_only_ ? GetContentsBounds() canvas->DrawRoundRect(gfx::RectF(paint_contents_only_ ? GetContentsBounds()
: GetLocalBounds()), : GetLocalBounds()),
kCornerRadius, flags); corner_radius_, flags);
} }
} }
...@@ -132,7 +135,9 @@ void DeskButtonBase::UpdateBorderState() { ...@@ -132,7 +135,9 @@ void DeskButtonBase::UpdateBorderState() {
// TODO(minch): Show the first desk's current name instead of the default name. // TODO(minch): Show the first desk's current name instead of the default name.
ZeroStateDefaultDeskButton::ZeroStateDefaultDeskButton(DesksBarView* bar_view) ZeroStateDefaultDeskButton::ZeroStateDefaultDeskButton(DesksBarView* bar_view)
: DeskButtonBase( : DeskButtonBase(
l10n_util::GetStringUTF16(IDS_ASH_DESKS_DESK_1_MINI_VIEW_TITLE)), l10n_util::GetStringUTF16(IDS_ASH_DESKS_DESK_1_MINI_VIEW_TITLE),
kCornerRadius,
kCornerRadius),
bar_view_(bar_view) {} bar_view_(bar_view) {}
const char* ZeroStateDefaultDeskButton::GetClassName() const { const char* ZeroStateDefaultDeskButton::GetClassName() const {
...@@ -161,7 +166,7 @@ void ZeroStateDefaultDeskButton::OnButtonPressed() { ...@@ -161,7 +166,7 @@ void ZeroStateDefaultDeskButton::OnButtonPressed() {
// ZeroStateNewDeskButton: // ZeroStateNewDeskButton:
ZeroStateNewDeskButton::ZeroStateNewDeskButton() ZeroStateNewDeskButton::ZeroStateNewDeskButton()
: DeskButtonBase(base::string16()) { : DeskButtonBase(base::string16(), kCornerRadius, kCornerRadius) {
highlight_on_hover_ = false; highlight_on_hover_ = false;
} }
......
...@@ -20,7 +20,9 @@ class ASH_EXPORT DeskButtonBase ...@@ -20,7 +20,9 @@ class ASH_EXPORT DeskButtonBase
: public views::LabelButton, : public views::LabelButton,
public OverviewHighlightController::OverviewHighlightableView { public OverviewHighlightController::OverviewHighlightableView {
public: public:
explicit DeskButtonBase(const base::string16& text); DeskButtonBase(const base::string16& text,
int border_corder_radius,
int corner_radius);
~DeskButtonBase() override = default; ~DeskButtonBase() override = default;
// LabelButton: // LabelButton:
...@@ -63,6 +65,8 @@ class ASH_EXPORT DeskButtonBase ...@@ -63,6 +65,8 @@ class ASH_EXPORT DeskButtonBase
// Owned by this View via `View::border_`. This is just a convenient pointer // Owned by this View via `View::border_`. This is just a convenient pointer
// to it. // to it.
WmHighlightItemBorder* border_ptr_; WmHighlightItemBorder* border_ptr_;
const int corner_radius_;
}; };
// A button in zero state bar showing "Desk 1". Zero state is the state of the // A button in zero state bar showing "Desk 1". Zero state is the state of the
......
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