Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / views / location_bar / zoom_view.h
index 064d29e..7242ac1 100644 (file)
@@ -5,44 +5,33 @@
 #ifndef CHROME_BROWSER_UI_VIEWS_LOCATION_BAR_ZOOM_VIEW_H_
 #define CHROME_BROWSER_UI_VIEWS_LOCATION_BAR_ZOOM_VIEW_H_
 
-#include "base/basictypes.h"
-#include "base/compiler_specific.h"
+#include "base/macros.h"
+#include "chrome/browser/ui/views/location_bar/bubble_icon_view.h"
 #include "chrome/browser/ui/views/location_bar/location_bar_view.h"
-#include "ui/views/controls/image_view.h"
 
 class ZoomController;
 
 // View for the zoom icon in the Omnibox.
-class ZoomView : public views::ImageView {
+class ZoomView : public BubbleIconView {
  public:
   // Clicking on the ZoomView shows a ZoomBubbleView, which requires the current
   // WebContents. Because the current WebContents changes as the user switches
-  // tabs, it cannot be provided in the constructor. Instead, a
-  // LocationBarView::Delegate is passed here so that it can be queried for the
-  // current WebContents as needed.
+  // tabs, a LocationBarView::Delegate is supplied to queried for the current
+  // WebContents when needed.
   explicit ZoomView(LocationBarView::Delegate* location_bar_delegate);
-  virtual ~ZoomView();
+  ~ZoomView() override;
 
   // Updates the image and its tooltip appropriately, hiding or showing the icon
   // as needed.
   void Update(ZoomController* zoom_controller);
 
- private:
-  // views::ImageView:
-  virtual void GetAccessibleState(ui::AXViewState* state) OVERRIDE;
-  virtual bool GetTooltipText(const gfx::Point& p,
-                              base::string16* tooltip) const OVERRIDE;
-  virtual bool OnMousePressed(const ui::MouseEvent& event) OVERRIDE;
-  virtual void OnMouseReleased(const ui::MouseEvent& event) OVERRIDE;
-  virtual bool OnKeyPressed(const ui::KeyEvent& event) OVERRIDE;
-
-  // ui::EventHandler:
-  virtual void OnGestureEvent(ui::GestureEvent* event) OVERRIDE;
-
-  // Helper method to show and focus the zoom bubble associated with this
-  // widget.
-  void ActivateBubble();
+ protected:
+  // BubbleIconView:
+  bool IsBubbleShowing() const override;
+  void OnExecuting(BubbleIconView::ExecuteSource source) override;
+  void GetAccessibleState(ui::AXViewState* state) override;
 
+ private:
   // The delegate used to get the currently visible WebContents.
   LocationBarView::Delegate* location_bar_delegate_;