| Index: chrome/browser/ui/infobar_container_delegate.cc
|
| diff --git a/chrome/browser/ui/infobar_container_delegate.cc b/chrome/browser/ui/infobar_container_delegate.cc
|
| index f033de3b678b2c77ae996819092053b412789ad2..86da9d850467f6b31c868809d03da14085e3a2fe 100644
|
| --- a/chrome/browser/ui/infobar_container_delegate.cc
|
| +++ b/chrome/browser/ui/infobar_container_delegate.cc
|
| @@ -12,6 +12,22 @@
|
| #include "ui/views/window/non_client_view.h"
|
| #endif
|
|
|
| +namespace {
|
| +
|
| +int GetDefaultArrowTargetHeight() {
|
| + return ui::MaterialDesignController::IsModeMaterial()
|
| + ? InfoBarContainerDelegate::kDefaultArrowTargetHeightMd
|
| + : InfoBarContainerDelegate::kDefaultArrowTargetHeight;
|
| +}
|
| +
|
| +int GetDefaultArrowTargetHalfWidth() {
|
| + return ui::MaterialDesignController::IsModeMaterial()
|
| + ? InfoBarContainerDelegate::kDefaultArrowTargetHalfWidthMd
|
| + : InfoBarContainerDelegate::kDefaultArrowTargetHalfWidth;
|
| +}
|
| +
|
| +} // namespace
|
| +
|
| // static
|
| #if defined(OS_MACOSX)
|
| const int InfoBarContainerDelegate::kSeparatorLineHeight = 1;
|
| @@ -21,6 +37,7 @@ const int InfoBarContainerDelegate::kDefaultArrowTargetHeight = 11;
|
| const int InfoBarContainerDelegate::kSeparatorLineHeight =
|
| views::NonClientFrameView::kClientEdgeThickness;
|
| const int InfoBarContainerDelegate::kDefaultArrowTargetHeight = 9;
|
| +const int InfoBarContainerDelegate::kDefaultArrowTargetHeightMd = 11;
|
| #endif
|
|
|
| const int InfoBarContainerDelegate::kDefaultBarTargetHeight = 36;
|
| @@ -28,6 +45,8 @@ const int InfoBarContainerDelegate::kDefaultBarTargetHeightMd = 40;
|
| const int InfoBarContainerDelegate::kMaximumArrowTargetHeight = 24;
|
| const int InfoBarContainerDelegate::kDefaultArrowTargetHalfWidth =
|
| kDefaultArrowTargetHeight;
|
| +const int InfoBarContainerDelegate::kDefaultArrowTargetHalfWidthMd =
|
| + kDefaultArrowTargetHeightMd;
|
| const int InfoBarContainerDelegate::kMaximumArrowTargetHalfWidth = 14;
|
|
|
| InfoBarContainerDelegate::InfoBarContainerDelegate()
|
| @@ -55,13 +74,14 @@ int InfoBarContainerDelegate::ArrowTargetHeightForInfoBar(
|
| if (index == 0)
|
| return top_arrow_target_height_;
|
| if ((index > 1) || animation.IsShowing())
|
| - return kDefaultArrowTargetHeight;
|
| + return GetDefaultArrowTargetHeight();
|
| // When the first infobar is animating closed, we animate the second infobar's
|
| // arrow target height from the default to the top target height. Note that
|
| // the animation values here are going from 1.0 -> 0.0 as the top bar closes.
|
| - return top_arrow_target_height_ + static_cast<int>(
|
| - (kDefaultArrowTargetHeight - top_arrow_target_height_) *
|
| - animation.GetCurrentValue());
|
| + return top_arrow_target_height_ +
|
| + static_cast<int>(
|
| + (GetDefaultArrowTargetHeight() - top_arrow_target_height_) *
|
| + animation.GetCurrentValue());
|
| }
|
|
|
| void InfoBarContainerDelegate::ComputeInfoBarElementSizes(
|
| @@ -86,8 +106,9 @@ void InfoBarContainerDelegate::ComputeInfoBarElementSizes(
|
| // When the infobar is not animating (i.e. fully open), we set the
|
| // half-width to be proportionally the same distance between its default and
|
| // maximum values as the height is between its.
|
| - *arrow_half_width = kDefaultArrowTargetHalfWidth +
|
| - ((kMaximumArrowTargetHalfWidth - kDefaultArrowTargetHalfWidth) *
|
| + *arrow_half_width =
|
| + GetDefaultArrowTargetHalfWidth() +
|
| + ((kMaximumArrowTargetHalfWidth - GetDefaultArrowTargetHalfWidth()) *
|
| ((*arrow_height - kDefaultArrowTargetHeight) /
|
| (kMaximumArrowTargetHeight - kDefaultArrowTargetHeight)));
|
| }
|
|
|