Index: chrome/browser/ui/views/omnibox/inline_omnibox_popup_view.h |
diff --git a/chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h b/chrome/browser/ui/views/omnibox/inline_omnibox_popup_view.h |
similarity index 68% |
copy from chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h |
copy to chrome/browser/ui/views/omnibox/inline_omnibox_popup_view.h |
index 97b148bf58b403117fe2b4d44891aeaba225acaa..26a49721d7825aad2e37ff33facce9b4d0e06f48 100644 |
--- a/chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h |
+++ b/chrome/browser/ui/views/omnibox/inline_omnibox_popup_view.h |
@@ -2,8 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ |
-#define CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ |
+#ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_INLINE_OMNIBOX_POPUP_VIEW_H_ |
+#define CHROME_BROWSER_UI_VIEWS_OMNIBOX_INLINE_OMNIBOX_POPUP_VIEW_H_ |
#pragma once |
#include "base/memory/weak_ptr.h" |
@@ -26,19 +26,19 @@ namespace views { |
class BubbleBorder; |
} |
-// A view representing the contents of the autocomplete popup. |
-class OmniboxPopupContentsView : public views::View, |
- public OmniboxResultViewModel, |
- public OmniboxPopupView, |
- public ui::AnimationDelegate { |
+// A view representing the contents of the omnibox popup. |
+class InlineOmniboxPopupView : public views::View, |
+ public OmniboxResultViewModel, |
+ public OmniboxPopupView, |
+ public ui::AnimationDelegate { |
public: |
- // Creates the appropriate type of omnibox dropdown for the |
- // current environment, e.g. desktop vs. touch optimized layout. |
- static OmniboxPopupContentsView* CreateForEnvironment( |
- const gfx::Font& font, |
- OmniboxView* omnibox_view, |
- AutocompleteEditModel* edit_model, |
- views::View* location_bar); |
+ InlineOmniboxPopupView(const gfx::Font& font, |
+ OmniboxView* omnibox_view, |
+ AutocompleteEditModel* edit_model, |
+ views::View* location_bar); |
+ |
+ // Call immediately after construction. |
+ void Init(); |
// Returns the bounds the popup should be shown at. This is the display bounds |
// and includes offsets for the dropshadow which this view's border renders. |
@@ -46,7 +46,7 @@ class OmniboxPopupContentsView : public views::View, |
virtual void LayoutChildren(); |
- // Overridden from OmniboxPopupView: |
+ // Overridden from AutocompletePopupView: |
Peter Kasting
2012/06/22 20:33:22
Nit: You branched off before tfarina renamed a bun
|
virtual bool IsOpen() const OVERRIDE; |
virtual void InvalidateLine(size_t line) OVERRIDE; |
virtual void UpdatePopupAppearance() OVERRIDE; |
@@ -63,6 +63,7 @@ class OmniboxPopupContentsView : public views::View, |
virtual void AnimationProgressed(const ui::Animation* animation) OVERRIDE; |
// Overridden from views::View: |
+ virtual gfx::Size GetPreferredSize() OVERRIDE; |
virtual void Layout() OVERRIDE; |
virtual views::View* GetEventHandlerForPoint( |
const gfx::Point& point) OVERRIDE; |
@@ -77,13 +78,7 @@ class OmniboxPopupContentsView : public views::View, |
const views::GestureEvent& event) OVERRIDE; |
protected: |
- OmniboxPopupContentsView(const gfx::Font& font, |
- OmniboxView* omnibox_view, |
- AutocompleteEditModel* edit_model, |
- views::View* location_bar); |
- virtual ~OmniboxPopupContentsView(); |
- |
- virtual void PaintResultViews(gfx::Canvas* canvas); |
+ virtual ~InlineOmniboxPopupView(); |
// Calculates the height needed to show all the results in the model. |
virtual int CalculatePopupHeight(); |
@@ -93,22 +88,11 @@ class OmniboxPopupContentsView : public views::View, |
const gfx::Font& font, |
const gfx::Font& bold_font); |
- // Overridden from views::View: |
- virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE; |
- // This method should not be triggered directly as we paint our children |
- // in an un-conventional way inside OnPaint. We use a separate canvas to |
- // paint the children. Hence we override this method to a no-op so that |
- // the view hierarchy does not "accidentally" trigger this. |
- virtual void PaintChildren(gfx::Canvas* canvas) OVERRIDE; |
- |
scoped_ptr<OmniboxPopupModel> model_; |
private: |
class AutocompletePopupWidget; |
- // Call immediately after construction. |
- void Init(); |
- |
// Returns true if the model has a match at the specified index. |
bool HasMatchAt(size_t index) const; |
@@ -119,19 +103,13 @@ class OmniboxPopupContentsView : public views::View, |
// bounds the path. |
void MakeContentsPath(gfx::Path* path, const gfx::Rect& bounding_rect); |
- // Updates the window's blur region for the current size. |
- void UpdateBlurRegion(); |
- |
- // Makes the contents of the canvas slightly transparent. |
- void MakeCanvasTransparent(gfx::Canvas* canvas); |
- |
// Called when the line at the specified index should be opened with the |
// provided disposition. |
void OpenIndex(size_t index, WindowOpenDisposition disposition); |
// Find the index of the match under the given |point|, specified in window |
- // coordinates. Returns OmniboxPopupModel::kNoMatch if there isn't a match at |
- // the specified point. |
+ // coordinates. Returns AutocompletePopupModel::kNoMatch if there isn't a |
+ // match at the specified point. |
size_t GetIndexForPoint(const gfx::Point& point); |
// Processes a located event (e.g. mouse/gesture) and sets the selection/hover |
@@ -145,14 +123,9 @@ class OmniboxPopupContentsView : public views::View, |
WindowOpenDisposition disposition); |
// Returns the target bounds given the specified content height. |
+ // TODO(sky): convert to size. |
gfx::Rect CalculateTargetBounds(int h); |
- // The popup that contains this view. We create this, but it deletes itself |
- // when its window is destroyed. This is a WeakPtr because it's possible for |
- // the OS to destroy the window and thus delete this object before we're |
- // deleted, or without our knowledge. |
- base::WeakPtr<AutocompletePopupWidget> popup_; |
- |
// The edit view that invokes us. |
OmniboxView* omnibox_view_; |
@@ -161,9 +134,6 @@ class OmniboxPopupContentsView : public views::View, |
// An object that the popup positions itself against. |
views::View* location_bar_; |
- // Our border, which can compute our desired bounds. |
- const views::BubbleBorder* bubble_border_; |
- |
// The font that we should use for result rows. This is based on the font used |
// by the edit that created us. |
gfx::Font result_font_; |
@@ -182,10 +152,11 @@ class OmniboxPopupContentsView : public views::View, |
// The popup sizes vertically using an animation when the popup is getting |
// shorter (not larger, that makes it look "slow"). |
ui::SlideAnimation size_animation_; |
+ // TODO(sky): convert to sizes. |
gfx::Rect start_bounds_; |
gfx::Rect target_bounds_; |
- DISALLOW_COPY_AND_ASSIGN(OmniboxPopupContentsView); |
+ DISALLOW_COPY_AND_ASSIGN(InlineOmniboxPopupView); |
}; |
-#endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ |
+#endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_INLINE_OMNIBOX_POPUP_VIEW_H_ |