Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(452)

Unified Diff: ash/system/tray/hover_highlight_view.cc

Issue 2066583004: mash: Move most files in //ash/system/tray to //ash/common/system/tray (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@trayupdatemove
Patch Set: rebase Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/system/tray/hover_highlight_view.h ('k') | ash/system/tray/special_popup_row.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/system/tray/hover_highlight_view.cc
diff --git a/ash/system/tray/hover_highlight_view.cc b/ash/system/tray/hover_highlight_view.cc
deleted file mode 100644
index 0d7403a119943836dd57a80599088597d4f07f29..0000000000000000000000000000000000000000
--- a/ash/system/tray/hover_highlight_view.cc
+++ /dev/null
@@ -1,251 +0,0 @@
-// Copyright 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "ash/system/tray/hover_highlight_view.h"
-
-#include "ash/common/system/tray/fixed_sized_image_view.h"
-#include "ash/common/system/tray/tray_constants.h"
-#include "ash/system/tray/view_click_listener.h"
-#include "ui/accessibility/ax_view_state.h"
-#include "ui/base/resource/resource_bundle.h"
-#include "ui/base/ui_base_switches_util.h"
-#include "ui/gfx/canvas.h"
-#include "ui/gfx/font_list.h"
-#include "ui/resources/grit/ui_resources.h"
-#include "ui/views/border.h"
-#include "ui/views/controls/image_view.h"
-#include "ui/views/controls/label.h"
-#include "ui/views/layout/box_layout.h"
-#include "ui/views/layout/fill_layout.h"
-#include "ui/views/resources/grit/views_resources.h"
-
-namespace {
-
-const int kCheckLabelPadding = 4;
-
-const gfx::FontList& GetFontList(bool highlight) {
- return ui::ResourceBundle::GetSharedInstance().GetFontList(
- highlight ? ui::ResourceBundle::BoldFont : ui::ResourceBundle::BaseFont);
-}
-
-} // namespace
-
-namespace ash {
-
-HoverHighlightView::HoverHighlightView(ViewClickListener* listener)
- : listener_(listener),
- text_label_(NULL),
- highlight_color_(kHoverBackgroundColor),
- default_color_(0),
- text_highlight_color_(0),
- text_default_color_(0),
- hover_(false),
- expandable_(false),
- checkable_(false),
- checked_(false) {
- set_notify_enter_exit_on_child(true);
-}
-
-HoverHighlightView::~HoverHighlightView() {
-}
-
-bool HoverHighlightView::GetTooltipText(const gfx::Point& p,
- base::string16* tooltip) const {
- if (tooltip_.empty())
- return false;
- *tooltip = tooltip_;
- return true;
-}
-
-void HoverHighlightView::AddIconAndLabel(const gfx::ImageSkia& image,
- const base::string16& text,
- bool highlight) {
- SetLayoutManager(new views::BoxLayout(
- views::BoxLayout::kHorizontal, 0, 3, kTrayPopupPaddingBetweenItems));
- DoAddIconAndLabel(image, text, highlight);
-}
-
-void HoverHighlightView::AddIndentedIconAndLabel(const gfx::ImageSkia& image,
- const base::string16& text,
- bool highlight) {
- SetLayoutManager(new views::BoxLayout(views::BoxLayout::kHorizontal,
- kTrayPopupPaddingHorizontal, 0,
- kTrayPopupPaddingBetweenItems));
- DoAddIconAndLabel(image, text, highlight);
-}
-
-void HoverHighlightView::DoAddIconAndLabel(const gfx::ImageSkia& image,
- const base::string16& text,
- bool highlight) {
- views::ImageView* image_view =
- new FixedSizedImageView(kTrayPopupDetailsIconWidth, 0);
- image_view->SetImage(image);
- image_view->SetEnabled(enabled());
- AddChildView(image_view);
-
- text_label_ = new views::Label(text);
- text_label_->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- text_label_->SetFontList(GetFontList(highlight));
- if (text_default_color_)
- text_label_->SetEnabledColor(text_default_color_);
- text_label_->SetEnabled(enabled());
- AddChildView(text_label_);
-
- SetAccessibleName(text);
-}
-
-views::Label* HoverHighlightView::AddLabel(const base::string16& text,
- gfx::HorizontalAlignment alignment,
- bool highlight) {
- SetLayoutManager(new views::FillLayout());
- text_label_ = new views::Label(text);
- int left_margin = kTrayPopupPaddingHorizontal;
- int right_margin = kTrayPopupPaddingHorizontal;
- if (alignment != gfx::ALIGN_CENTER) {
- if (base::i18n::IsRTL())
- right_margin += kTrayPopupDetailsLabelExtraLeftMargin;
- else
- left_margin += kTrayPopupDetailsLabelExtraLeftMargin;
- }
- text_label_->SetBorder(
- views::Border::CreateEmptyBorder(5, left_margin, 5, right_margin));
- text_label_->SetHorizontalAlignment(alignment);
- text_label_->SetFontList(GetFontList(highlight));
- // Do not set alpha value in disable color. It will have issue with elide
- // blending filter in disabled state for rendering label text color.
- text_label_->SetDisabledColor(SkColorSetARGB(255, 127, 127, 127));
- if (text_default_color_)
- text_label_->SetEnabledColor(text_default_color_);
- text_label_->SetEnabled(enabled());
- AddChildView(text_label_);
-
- SetAccessibleName(text);
- return text_label_;
-}
-
-views::Label* HoverHighlightView::AddCheckableLabel(const base::string16& text,
- bool highlight,
- bool checked) {
- checkable_ = true;
- checked_ = checked;
- if (checked) {
- ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
- const gfx::ImageSkia* check =
- rb.GetImageNamed(IDR_MENU_CHECK).ToImageSkia();
- int margin = kTrayPopupPaddingHorizontal +
- kTrayPopupDetailsLabelExtraLeftMargin - kCheckLabelPadding;
- SetLayoutManager(new views::BoxLayout(
- views::BoxLayout::kHorizontal, 0, 3, kCheckLabelPadding));
- views::ImageView* image_view = new FixedSizedImageView(margin, 0);
- image_view->SetImage(check);
- image_view->SetHorizontalAlignment(views::ImageView::TRAILING);
- image_view->SetEnabled(enabled());
- AddChildView(image_view);
-
- text_label_ = new views::Label(text);
- text_label_->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- text_label_->SetFontList(GetFontList(highlight));
- text_label_->SetDisabledColor(SkColorSetARGB(127, 0, 0, 0));
- if (text_default_color_)
- text_label_->SetEnabledColor(text_default_color_);
- text_label_->SetEnabled(enabled());
- AddChildView(text_label_);
-
- SetAccessibleName(text);
- return text_label_;
- }
- return AddLabel(text, gfx::ALIGN_LEFT, highlight);
-}
-
-void HoverHighlightView::SetExpandable(bool expandable) {
- if (expandable != expandable_) {
- expandable_ = expandable;
- InvalidateLayout();
- }
-}
-
-void HoverHighlightView::SetHoverHighlight(bool hover) {
- if (!enabled() && hover)
- return;
- if (hover_ == hover)
- return;
- hover_ = hover;
- if (!text_label_)
- return;
- if (hover_ && text_highlight_color_)
- text_label_->SetEnabledColor(text_highlight_color_);
- if (!hover_ && text_default_color_)
- text_label_->SetEnabledColor(text_default_color_);
- SchedulePaint();
-}
-
-bool HoverHighlightView::PerformAction(const ui::Event& event) {
- if (!listener_)
- return false;
- listener_->OnViewClicked(this);
- return true;
-}
-
-void HoverHighlightView::GetAccessibleState(ui::AXViewState* state) {
- ActionableView::GetAccessibleState(state);
-
- if (checkable_) {
- state->role = ui::AX_ROLE_CHECK_BOX;
- if (checked_)
- state->AddStateFlag(ui::AX_STATE_CHECKED);
- }
-}
-
-gfx::Size HoverHighlightView::GetPreferredSize() const {
- gfx::Size size = ActionableView::GetPreferredSize();
- if (!expandable_ || size.height() < kTrayPopupItemHeight)
- size.set_height(kTrayPopupItemHeight);
- return size;
-}
-
-int HoverHighlightView::GetHeightForWidth(int width) const {
- return GetPreferredSize().height();
-}
-
-void HoverHighlightView::OnMouseEntered(const ui::MouseEvent& event) {
- SetHoverHighlight(true);
-}
-
-void HoverHighlightView::OnMouseExited(const ui::MouseEvent& event) {
- SetHoverHighlight(false);
-}
-
-void HoverHighlightView::OnGestureEvent(ui::GestureEvent* event) {
- if (switches::IsTouchFeedbackEnabled()) {
- if (event->type() == ui::ET_GESTURE_TAP_DOWN) {
- SetHoverHighlight(true);
- } else if (event->type() == ui::ET_GESTURE_TAP_CANCEL ||
- event->type() == ui::ET_GESTURE_TAP) {
- SetHoverHighlight(false);
- }
- }
- ActionableView::OnGestureEvent(event);
-}
-
-void HoverHighlightView::OnBoundsChanged(const gfx::Rect& previous_bounds) {
- SetHoverHighlight(IsMouseHovered());
-}
-
-void HoverHighlightView::OnEnabledChanged() {
- if (!enabled())
- SetHoverHighlight(false);
- for (int i = 0; i < child_count(); ++i)
- child_at(i)->SetEnabled(enabled());
-}
-
-void HoverHighlightView::OnPaintBackground(gfx::Canvas* canvas) {
- canvas->DrawColor(hover_ ? highlight_color_ : default_color_);
-}
-
-void HoverHighlightView::OnFocus() {
- ScrollRectToVisible(gfx::Rect(gfx::Point(), size()));
- ActionableView::OnFocus();
-}
-
-} // namespace ash
« no previous file with comments | « ash/system/tray/hover_highlight_view.h ('k') | ash/system/tray/special_popup_row.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698