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 71% |
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 d1e58eb4eac9ea629639b0d9e4a12d7f23a4e721..4dd15e74cdf8b62b475586e38e7801186da33679 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" |
@@ -27,18 +27,18 @@ class BubbleBorder; |
} |
// A view representing the contents of the autocomplete popup. |
tfarina
2012/06/21 06:28:55
nit: s/autocomplete/omnibox?
|
-class OmniboxPopupContentsView : public views::View, |
- public OmniboxResultViewModel, |
- public AutocompletePopupView, |
- public ui::AnimationDelegate { |
+class InlineOmniboxPopupView : public views::View, |
+ public OmniboxResultViewModel, |
+ public AutocompletePopupView, |
+ 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. |
@@ -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<AutocompletePopupModel> 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,12 +103,6 @@ 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); |
@@ -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_ |