| Index: chrome/browser/ui/cocoa/location_bar/zoom_decoration.mm
|
| diff --git a/chrome/browser/ui/cocoa/location_bar/zoom_decoration.mm b/chrome/browser/ui/cocoa/location_bar/zoom_decoration.mm
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..34bb4913369d301b879faf171a2ed28cd4fbdae3
|
| --- /dev/null
|
| +++ b/chrome/browser/ui/cocoa/location_bar/zoom_decoration.mm
|
| @@ -0,0 +1,44 @@
|
| +// Copyright (c) 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.
|
| +
|
| +#import "chrome/browser/ui/cocoa/location_bar/zoom_decoration.h"
|
| +
|
| +#include "base/string_number_conversions.h"
|
| +#include "chrome/app/chrome_command_ids.h"
|
| +#import "chrome/browser/ui/cocoa/omnibox/omnibox_view_mac.h"
|
| +#include "chrome/browser/ui/toolbar/toolbar_model.h"
|
| +#include "chrome/browser/ui/zoom/zoom_controller.h"
|
| +#include "grit/generated_resources.h"
|
| +#include "grit/theme_resources_standard.h"
|
| +#include "ui/base/l10n/l10n_util_mac.h"
|
| +
|
| +ZoomDecoration::ZoomDecoration(ToolbarModel* toolbar_model)
|
| + : toolbar_model_(toolbar_model) {
|
| + Update(NULL);
|
| +}
|
| +
|
| +ZoomDecoration::~ZoomDecoration() {
|
| +}
|
| +
|
| +void ZoomDecoration::Update(ZoomController* zoom_controller) {
|
| + if (!zoom_controller || zoom_controller->IsAtDefaultZoom() ||
|
| + toolbar_model_->input_in_progress()) {
|
| + SetVisible(false);
|
| + return;
|
| + }
|
| +
|
| + int zoom_percent = zoom_controller->zoom_percent();
|
| +
|
| + const int image_id = zoom_percent > 100 ? IDR_ZOOM_PLUS : IDR_ZOOM_MINUS;
|
| + SetImage(OmniboxViewMac::ImageForResource(image_id));
|
| +
|
| + tooltip_.reset([l10n_util::GetNSStringFWithFixup(
|
| + IDS_TOOLTIP_ZOOM, base::IntToString16(zoom_percent)) retain]);
|
| +
|
| + SetVisible(true);
|
| +}
|
| +
|
| +NSString* ZoomDecoration::GetToolTip() {
|
| + return tooltip_.get();
|
| +}
|
|
|