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

Unified Diff: chrome/browser/ui/views/location_bar/zoom_view.cc

Issue 10736028: Refactor browser window zoom handling and enable zoom icon on all platforms. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 4 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
Index: chrome/browser/ui/views/location_bar/zoom_view.cc
diff --git a/chrome/browser/ui/views/location_bar/zoom_view.cc b/chrome/browser/ui/views/location_bar/zoom_view.cc
index dc7a0840314bce999050fb9ce2dbf85709fd3b76..49b20c6a9784bd455f54ab713fd5fc926d333ae0 100644
--- a/chrome/browser/ui/views/location_bar/zoom_view.cc
+++ b/chrome/browser/ui/views/location_bar/zoom_view.cc
@@ -7,6 +7,7 @@
#include "chrome/browser/ui/views/browser_dialogs.h"
#include "chrome/browser/ui/views/location_bar/zoom_bubble_view.h"
#include "chrome/browser/ui/view_ids.h"
+#include "chrome/browser/ui/zoom/zoom_controller.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
#include "ui/base/accessibility/accessible_view_state.h"
@@ -18,44 +19,27 @@
ZoomView::ZoomView(ToolbarModel* toolbar_model,
LocationBarView::Delegate* location_bar_delegate)
: toolbar_model_(toolbar_model),
- location_bar_delegate_(location_bar_delegate),
- zoom_icon_state_(ZoomController::NONE),
- zoom_percent_(100) {
+ location_bar_delegate_(location_bar_delegate) {
set_accessibility_focusable(true);
+ Update(NULL);
}
ZoomView::~ZoomView() {
}
-void ZoomView::SetZoomIconState(ZoomController::ZoomIconState zoom_icon_state) {
- if (zoom_icon_state == zoom_icon_state_)
- return;
-
- zoom_icon_state_ = zoom_icon_state;
- Update();
-}
-
-void ZoomView::SetZoomIconTooltipPercent(int zoom_percent) {
- if (zoom_percent == zoom_percent_)
- return;
-
- zoom_percent_ = zoom_percent;
- Update();
-}
-
-void ZoomView::Update() {
- if (toolbar_model_->input_in_progress() ||
- zoom_icon_state_ == ZoomController::NONE) {
+void ZoomView::Update(ZoomController* zoom_controller) {
+ if (!zoom_controller || zoom_controller->IsAtDefaultZoom() ||
+ toolbar_model_->input_in_progress()) {
SetVisible(false);
ZoomBubbleView::CloseBubble();
- } else {
- SetVisible(true);
- SetTooltipText(
- l10n_util::GetStringFUTF16Int(IDS_TOOLTIP_ZOOM, zoom_percent_));
- SetImage(ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed(
- zoom_icon_state_ == ZoomController::ZOOM_PLUS_ICON ?
- IDR_ZOOM_PLUS : IDR_ZOOM_MINUS));
+ return;
}
+
+ SetTooltipText(l10n_util::GetStringFUTF16Int(IDS_TOOLTIP_ZOOM,
+ zoom_controller->zoom_percent()));
+ SetImage(ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed(
+ zoom_controller->GetResourceForZoomLevel()));
+ SetVisible(true);
}
void ZoomView::GetAccessibleState(ui::AccessibleViewState* state) {

Powered by Google App Engine
This is Rietveld 408576698