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

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

Issue 795933009: [AiS] for desktop, two lines and font sytles (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed braces Created 5 years, 9 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
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_RESULT_VIEW_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_RESULT_VIEW_H_
6 #define CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_RESULT_VIEW_H_ 6 #define CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_RESULT_VIEW_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/gtest_prod_util.h" 10 #include "base/gtest_prod_util.h"
11 #include "chrome/browser/bitmap_fetcher/bitmap_fetcher_service.h" 11 #include "chrome/browser/bitmap_fetcher/bitmap_fetcher_service.h"
12 #include "components/omnibox/autocomplete_match.h" 12 #include "components/omnibox/autocomplete_match.h"
13 #include "components/omnibox/suggestion_answer.h"
13 #include "third_party/skia/include/core/SkColor.h" 14 #include "third_party/skia/include/core/SkColor.h"
14 #include "ui/gfx/animation/animation_delegate.h" 15 #include "ui/gfx/animation/animation_delegate.h"
15 #include "ui/gfx/animation/slide_animation.h" 16 #include "ui/gfx/animation/slide_animation.h"
16 #include "ui/gfx/font_list.h" 17 #include "ui/gfx/font_list.h"
17 #include "ui/gfx/geometry/rect.h" 18 #include "ui/gfx/geometry/rect.h"
18 #include "ui/views/controls/image_view.h" 19 #include "ui/views/controls/image_view.h"
19 #include "ui/views/view.h" 20 #include "ui/views/view.h"
20 21
21 class LocationBarView; 22 class LocationBarView;
22 class OmniboxPopupContentsView; 23 class OmniboxPopupContentsView;
(...skipping 17 matching lines...) Expand all
40 41
41 enum ColorKind { 42 enum ColorKind {
42 BACKGROUND = 0, 43 BACKGROUND = 0,
43 TEXT, 44 TEXT,
44 DIMMED_TEXT, 45 DIMMED_TEXT,
45 URL, 46 URL,
46 DIVIDER, 47 DIVIDER,
47 NUM_KINDS 48 NUM_KINDS
48 }; 49 };
49 50
51 // The minimum distance between the top and bottom of the text and the
52 // top or bottom of the row.
53 static const int kMinimumTextVerticalPadding = 3;
54
50 OmniboxResultView(OmniboxPopupContentsView* model, 55 OmniboxResultView(OmniboxPopupContentsView* model,
51 int model_index, 56 int model_index,
52 LocationBarView* location_bar_view, 57 LocationBarView* location_bar_view,
53 const gfx::FontList& font_list); 58 const gfx::FontList& font_list);
54 ~OmniboxResultView() override; 59 ~OmniboxResultView() override;
55 60
56 SkColor GetColor(ResultViewState state, ColorKind kind) const; 61 SkColor GetColor(ResultViewState state, ColorKind kind) const;
57 62
58 // Updates the match used to paint the contents of this result view. We copy 63 // Updates the match used to paint the contents of this result view. We copy
59 // the match so that we can continue to paint the last result even after the 64 // the match so that we can continue to paint the last result even after the
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 // |classifications| and |force_dim| are used to style the text. 115 // |classifications| and |force_dim| are used to style the text.
111 scoped_ptr<gfx::RenderText> CreateClassifiedRenderText( 116 scoped_ptr<gfx::RenderText> CreateClassifiedRenderText(
112 const base::string16& text, 117 const base::string16& text,
113 const ACMatchClassifications& classifications, 118 const ACMatchClassifications& classifications,
114 bool force_dim) const; 119 bool force_dim) const;
115 120
116 const gfx::Rect& text_bounds() const { return text_bounds_; } 121 const gfx::Rect& text_bounds() const { return text_bounds_; }
117 122
118 void set_edge_item_padding(int value) { edge_item_padding_ = value; } 123 void set_edge_item_padding(int value) { edge_item_padding_ = value; }
119 void set_item_padding(int value) { item_padding_ = value; } 124 void set_item_padding(int value) { item_padding_ = value; }
120 void set_minimum_text_vertical_padding(int value) {
121 minimum_text_vertical_padding_ = value;
122 }
123 125
124 private: 126 private:
125 // views::View: 127 // views::View:
126 const char* GetClassName() const override; 128 const char* GetClassName() const override;
127 129
128 gfx::ImageSkia GetIcon() const; 130 gfx::ImageSkia GetIcon() const;
129 const gfx::ImageSkia* GetKeywordIcon() const; 131 const gfx::ImageSkia* GetKeywordIcon() const;
130 132
131 // Whether to render only the keyword match. Returns true if |match_| has an 133 // Whether to render only the keyword match. Returns true if |match_| has an
132 // associated keyword match that has been animated so close to the start that 134 // associated keyword match that has been animated so close to the start that
(...skipping 15 matching lines...) Expand all
148 // gfx::AnimationDelegate: 150 // gfx::AnimationDelegate:
149 void AnimationProgressed(const gfx::Animation* animation) override; 151 void AnimationProgressed(const gfx::Animation* animation) override;
150 152
151 // Returns the offset at which the contents of the |match| should be displayed 153 // Returns the offset at which the contents of the |match| should be displayed
152 // within the text bounds. The directionality of UI and match contents is used 154 // within the text bounds. The directionality of UI and match contents is used
153 // to determine the offset relative to the correct edge. 155 // to determine the offset relative to the correct edge.
154 int GetDisplayOffset(const AutocompleteMatch& match, 156 int GetDisplayOffset(const AutocompleteMatch& match,
155 bool is_ui_rtl, 157 bool is_ui_rtl,
156 bool is_match_contents_rtl) const; 158 bool is_match_contents_rtl) const;
157 159
160 int GetAnswerLineHeight() const;
161 int GetContentLineHeight() const;
162
163 void AppendAnswerText(const SuggestionAnswer::TextField& text_field);
164
158 static int default_icon_size_; 165 static int default_icon_size_;
159 166
160 // Default values cached here, may be overridden using the setters above. 167 // Default values cached here, may be overridden using the setters above.
161 int edge_item_padding_; 168 int edge_item_padding_;
162 int item_padding_; 169 int item_padding_;
163 int minimum_text_vertical_padding_;
164 170
165 // This row's model and model index. 171 // This row's model and model index.
166 OmniboxPopupContentsView* model_; 172 OmniboxPopupContentsView* model_;
167 size_t model_index_; 173 size_t model_index_;
168 174
169 LocationBarView* location_bar_view_; 175 LocationBarView* location_bar_view_;
170 // Note: image_service_ may be null in some unit tests. 176 // Note: image_service_ may be null in some unit tests.
171 BitmapFetcherService* image_service_; 177 BitmapFetcherService* image_service_;
172 178
173 const gfx::FontList font_list_; 179 const gfx::FontList font_list_;
(...skipping 27 matching lines...) Expand all
201 mutable scoped_ptr<gfx::RenderText> keyword_description_rendertext_; 207 mutable scoped_ptr<gfx::RenderText> keyword_description_rendertext_;
202 208
203 mutable int separator_width_; 209 mutable int separator_width_;
204 210
205 base::WeakPtrFactory<OmniboxResultView> weak_ptr_factory_; 211 base::WeakPtrFactory<OmniboxResultView> weak_ptr_factory_;
206 212
207 DISALLOW_COPY_AND_ASSIGN(OmniboxResultView); 213 DISALLOW_COPY_AND_ASSIGN(OmniboxResultView);
208 }; 214 };
209 215
210 #endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_RESULT_VIEW_H_ 216 #endif // CHROME_BROWSER_UI_VIEWS_OMNIBOX_OMNIBOX_RESULT_VIEW_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698