| Index: chrome/browser/ui/views/avatar_menu_bubble_view.cc
|
| ===================================================================
|
| --- chrome/browser/ui/views/avatar_menu_bubble_view.cc (revision 111023)
|
| +++ chrome/browser/ui/views/avatar_menu_bubble_view.cc (working copy)
|
| @@ -29,9 +29,6 @@
|
|
|
| namespace {
|
|
|
| -// TODO(msw): Get color from theme/window color.
|
| -const SkColor kColor = SK_ColorWHITE;
|
| -
|
| const int kItemHeight = 44;
|
| const int kItemMarginY = 4;
|
| const int kIconWidth = 38;
|
| @@ -237,7 +234,7 @@
|
| image_view_->SetBoundsRect(icon_rect);
|
|
|
| int label_x = icon_rect.right() + kIconMarginX;
|
| - int max_label_width = std::max(width() - label_x, 0);
|
| + int max_label_width = width() - label_x;
|
| gfx::Size name_size = name_label_->GetPreferredSize();
|
| name_size.set_width(std::min(name_size.width(), max_label_width));
|
| gfx::Size state_size = sync_state_label_->GetPreferredSize();
|
| @@ -282,6 +279,11 @@
|
| void ProfileItemView::OnHighlightStateChanged() {
|
| set_background(IsHighlighted() ? views::Background::CreateSolidBackground(
|
| SkColorSetRGB(0xe3, 0xed, 0xf6)) : NULL);
|
| + SkColor background_color = background() ?
|
| + background()->get_color() : Bubble::kBackgroundColor;
|
| + name_label_->SetBackgroundColor(background_color);
|
| + sync_state_label_->SetBackgroundColor(background_color);
|
| + edit_link_->SetBackgroundColor(background_color);
|
|
|
| bool show_edit = IsHighlighted() && item_.active;
|
| sync_state_label_->SetVisible(!show_edit);
|
| @@ -328,14 +330,8 @@
|
|
|
| // AvatarMenuBubbleView -------------------------------------------------------
|
|
|
| -AvatarMenuBubbleView::AvatarMenuBubbleView(
|
| - views::View* anchor_view,
|
| - views::BubbleBorder::ArrowLocation arrow_location,
|
| - const gfx::Rect& anchor_rect,
|
| - Browser* browser)
|
| - : BubbleDelegateView(anchor_view, arrow_location, kColor),
|
| - anchor_rect_(anchor_rect),
|
| - add_profile_link_(NULL),
|
| +AvatarMenuBubbleView::AvatarMenuBubbleView(Browser* browser)
|
| + : add_profile_link_(NULL),
|
| browser_(browser) {
|
| avatar_menu_model_.reset(new AvatarMenuModel(
|
| &g_browser_process->profile_manager()->GetProfileInfoCache(),
|
| @@ -448,15 +444,25 @@
|
| }
|
| }
|
|
|
| -gfx::Point AvatarMenuBubbleView::GetAnchorPoint() {
|
| - return gfx::Point(anchor_rect_.CenterPoint().x(), anchor_rect_.bottom());
|
| +void AvatarMenuBubbleView::BubbleShown() {
|
| + GetFocusManager()->RegisterAccelerator(
|
| + ui::Accelerator(ui::VKEY_DOWN, false, false, false), this);
|
| + GetFocusManager()->RegisterAccelerator(
|
| + ui::Accelerator(ui::VKEY_UP, false, false, false), this);
|
| }
|
|
|
| -void AvatarMenuBubbleView::Init() {
|
| - AddAccelerator(ui::Accelerator(ui::VKEY_DOWN, 0));
|
| - AddAccelerator(ui::Accelerator(ui::VKEY_UP, 0));
|
| +void AvatarMenuBubbleView::BubbleClosing(Bubble* bubble,
|
| + bool closed_by_escape) {
|
| }
|
|
|
| +bool AvatarMenuBubbleView::CloseOnEscape() {
|
| + return true;
|
| +}
|
| +
|
| +bool AvatarMenuBubbleView::FadeInOnShow() {
|
| + return false;
|
| +}
|
| +
|
| void AvatarMenuBubbleView::OnAvatarMenuModelChanged(
|
| AvatarMenuModel* avatar_menu_model) {
|
| // Unset all our child view references and call RemoveAllChildViews() which
|
| @@ -482,6 +488,7 @@
|
| l10n_util::GetStringUTF16(IDS_PROFILES_CREATE_NEW_PROFILE_LINK));
|
| add_profile_link_->set_listener(this);
|
| add_profile_link_->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
|
| + add_profile_link_->SetBackgroundColor(Bubble::kBackgroundColor);
|
| add_profile_link_->SetEnabledColor(SkColorSetRGB(0xe3, 0xed, 0xf6));
|
| AddChildView(add_profile_link_);
|
|
|
|
|