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

Side by Side Diff: chrome/browser/ui/views/omnibox/omnibox_popup_contents_view.h

Issue 11535014: Replace StyleRange with BreakList; update RenderText, etc. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments. Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_
6 #define CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ 6 #define CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_
7 7
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "chrome/browser/ui/omnibox/omnibox_popup_model.h" 9 #include "chrome/browser/ui/omnibox/omnibox_popup_model.h"
10 #include "chrome/browser/ui/omnibox/omnibox_popup_view.h" 10 #include "chrome/browser/ui/omnibox/omnibox_popup_view.h"
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 OmniboxPopupContentsView(const gfx::Font& font, 78 OmniboxPopupContentsView(const gfx::Font& font,
79 OmniboxView* omnibox_view, 79 OmniboxView* omnibox_view,
80 OmniboxEditModel* edit_model, 80 OmniboxEditModel* edit_model,
81 views::View* location_bar); 81 views::View* location_bar);
82 virtual ~OmniboxPopupContentsView(); 82 virtual ~OmniboxPopupContentsView();
83 83
84 virtual void PaintResultViews(gfx::Canvas* canvas); 84 virtual void PaintResultViews(gfx::Canvas* canvas);
85 85
86 // Calculates the height needed to show all the results in the model. 86 // Calculates the height needed to show all the results in the model.
87 virtual int CalculatePopupHeight(); 87 virtual int CalculatePopupHeight();
88 virtual OmniboxResultView* CreateResultView( 88 virtual OmniboxResultView* CreateResultView(OmniboxResultViewModel* model,
89 OmniboxResultViewModel* model, 89 int model_index,
90 int model_index, 90 const gfx::Font& font);
91 const gfx::Font& font,
92 const gfx::Font& bold_font);
93 91
94 // Overridden from views::View: 92 // Overridden from views::View:
95 virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE; 93 virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE;
96 // This method should not be triggered directly as we paint our children 94 // This method should not be triggered directly as we paint our children
97 // in an un-conventional way inside OnPaint. We use a separate canvas to 95 // in an un-conventional way inside OnPaint. We use a separate canvas to
98 // paint the children. Hence we override this method to a no-op so that 96 // paint the children. Hence we override this method to a no-op so that
99 // the view hierarchy does not "accidentally" trigger this. 97 // the view hierarchy does not "accidentally" trigger this.
100 virtual void PaintChildren(gfx::Canvas* canvas) OVERRIDE; 98 virtual void PaintChildren(gfx::Canvas* canvas) OVERRIDE;
101 99
102 scoped_ptr<OmniboxPopupModel> model_; 100 scoped_ptr<OmniboxPopupModel> model_;
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 OmniboxView* omnibox_view_; 155 OmniboxView* omnibox_view_;
158 156
159 Profile* profile_; 157 Profile* profile_;
160 158
161 // An object that the popup positions itself against. 159 // An object that the popup positions itself against.
162 views::View* location_bar_; 160 views::View* location_bar_;
163 161
164 // Our border, which can compute our desired bounds. 162 // Our border, which can compute our desired bounds.
165 const views::BubbleBorder* bubble_border_; 163 const views::BubbleBorder* bubble_border_;
166 164
167 // The font that we should use for result rows. This is based on the font used 165 // The font used for result rows, based on the omnibox font.
168 // by the edit that created us. 166 gfx::Font font_;
169 gfx::Font result_font_;
170
171 // The font used for portions that match the input.
172 gfx::Font result_bold_font_;
173 167
174 // If the user cancels a dragging action (i.e. by pressing ESC), we don't have 168 // If the user cancels a dragging action (i.e. by pressing ESC), we don't have
175 // a convenient way to release mouse capture. Instead we use this flag to 169 // a convenient way to release mouse capture. Instead we use this flag to
176 // simply ignore all remaining drag events, and the eventual mouse release 170 // simply ignore all remaining drag events, and the eventual mouse release
177 // event. Since OnDragCanceled() can be called when we're not dragging, this 171 // event. Since OnDragCanceled() can be called when we're not dragging, this
178 // flag is reset to false on a mouse pressed event, to make sure we don't 172 // flag is reset to false on a mouse pressed event, to make sure we don't
179 // erroneously ignore the next drag. 173 // erroneously ignore the next drag.
180 bool ignore_mouse_drag_; 174 bool ignore_mouse_drag_;
181 175
182 // The popup sizes vertically using an animation when the popup is getting 176 // The popup sizes vertically using an animation when the popup is getting
183 // shorter (not larger, that makes it look "slow"). 177 // shorter (not larger, that makes it look "slow").
184 ui::SlideAnimation size_animation_; 178 ui::SlideAnimation size_animation_;
185 gfx::Rect start_bounds_; 179 gfx::Rect start_bounds_;
186 gfx::Rect target_bounds_; 180 gfx::Rect target_bounds_;
187 181
188 DISALLOW_COPY_AND_ASSIGN(OmniboxPopupContentsView); 182 DISALLOW_COPY_AND_ASSIGN(OmniboxPopupContentsView);
189 }; 183 };
190 184
191 #endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_ 185 #endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_POPUP_CONTENTS_VIEW_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698