OLD | NEW |
---|---|
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 #include "chrome/renderer/searchbox/searchbox.h" | 5 #include "chrome/renderer/searchbox/searchbox.h" |
6 | 6 |
7 #include "chrome/common/render_messages.h" | 7 #include "chrome/common/render_messages.h" |
8 #include "chrome/renderer/searchbox/searchbox_extension.h" | 8 #include "chrome/renderer/searchbox/searchbox_extension.h" |
9 #include "content/public/renderer/render_view.h" | 9 #include "content/public/renderer/render_view.h" |
10 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" | 10 #include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h" |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
71 } | 71 } |
72 | 72 |
73 const InstantAutocompleteResult* SearchBox::GetAutocompleteResultWithId( | 73 const InstantAutocompleteResult* SearchBox::GetAutocompleteResultWithId( |
74 size_t restricted_id) const { | 74 size_t restricted_id) const { |
75 if (restricted_id < last_results_base_ || | 75 if (restricted_id < last_results_base_ || |
76 restricted_id >= last_results_base_ + last_autocomplete_results_.size()) | 76 restricted_id >= last_results_base_ + last_autocomplete_results_.size()) |
77 return NULL; | 77 return NULL; |
78 return &last_autocomplete_results_[restricted_id - last_results_base_]; | 78 return &last_autocomplete_results_[restricted_id - last_results_base_]; |
79 } | 79 } |
80 | 80 |
81 const ThemeBackgroundInfo& SearchBox::GetThemeBackgroundInfo() { | |
82 return theme_info_; | |
palmer
2012/11/19 18:26:51
Validate the theme_info_ struct's members here. Th
kuan
2012/11/19 22:06:07
i validate everything in SearchBoxExtensions.
| |
83 } | |
84 | |
85 int SearchBox::GetThemeAreaHeight() { | |
86 return theme_area_height_; | |
87 } | |
88 | |
81 bool SearchBox::OnMessageReceived(const IPC::Message& message) { | 89 bool SearchBox::OnMessageReceived(const IPC::Message& message) { |
82 bool handled = true; | 90 bool handled = true; |
83 IPC_BEGIN_MESSAGE_MAP(SearchBox, message) | 91 IPC_BEGIN_MESSAGE_MAP(SearchBox, message) |
84 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxChange, OnChange) | 92 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxChange, OnChange) |
85 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxSubmit, OnSubmit) | 93 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxSubmit, OnSubmit) |
86 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxCancel, OnCancel) | 94 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxCancel, OnCancel) |
87 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxResize, OnResize) | 95 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxResize, OnResize) |
88 IPC_MESSAGE_HANDLER(ChromeViewMsg_DetermineIfPageSupportsInstant, | 96 IPC_MESSAGE_HANDLER(ChromeViewMsg_DetermineIfPageSupportsInstant, |
89 OnDetermineIfPageSupportsInstant) | 97 OnDetermineIfPageSupportsInstant) |
90 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxAutocompleteResults, | 98 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxAutocompleteResults, |
91 OnAutocompleteResults) | 99 OnAutocompleteResults) |
92 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxUpOrDownKeyPressed, | 100 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxUpOrDownKeyPressed, |
93 OnUpOrDownKeyPressed) | 101 OnUpOrDownKeyPressed) |
94 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxActiveTabModeChanged, | 102 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxActiveTabModeChanged, |
95 OnActiveTabModeChanged) | 103 OnActiveTabModeChanged) |
104 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxThemeChanged, | |
105 OnThemeChanged) | |
106 IPC_MESSAGE_HANDLER(ChromeViewMsg_SearchBoxThemeAreaHeightChanged, | |
107 OnThemeAreaHeightChanged) | |
96 IPC_MESSAGE_UNHANDLED(handled = false) | 108 IPC_MESSAGE_UNHANDLED(handled = false) |
97 IPC_END_MESSAGE_MAP() | 109 IPC_END_MESSAGE_MAP() |
98 return handled; | 110 return handled; |
99 } | 111 } |
100 | 112 |
101 void SearchBox::OnChange(const string16& query, | 113 void SearchBox::OnChange(const string16& query, |
102 bool verbatim, | 114 bool verbatim, |
103 size_t selection_start, | 115 size_t selection_start, |
104 size_t selection_end) { | 116 size_t selection_end) { |
105 query_ = query; | 117 query_ = query; |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
169 } | 181 } |
170 | 182 |
171 void SearchBox::OnActiveTabModeChanged(bool active_tab_is_ntp) { | 183 void SearchBox::OnActiveTabModeChanged(bool active_tab_is_ntp) { |
172 active_tab_is_ntp_ = active_tab_is_ntp; | 184 active_tab_is_ntp_ = active_tab_is_ntp; |
173 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { | 185 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { |
174 extensions_v8::SearchBoxExtension::DispatchContextChange( | 186 extensions_v8::SearchBoxExtension::DispatchContextChange( |
175 render_view()->GetWebView()->mainFrame()); | 187 render_view()->GetWebView()->mainFrame()); |
176 } | 188 } |
177 } | 189 } |
178 | 190 |
191 void SearchBox::OnThemeChanged(const ThemeBackgroundInfo& theme_info) { | |
192 theme_info_ = theme_info; | |
193 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { | |
194 extensions_v8::SearchBoxExtension::DispatchThemeChange( | |
195 render_view()->GetWebView()->mainFrame()); | |
196 } | |
197 } | |
198 | |
199 void SearchBox::OnThemeAreaHeightChanged(int height) { | |
200 theme_area_height_ = height; | |
201 if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { | |
202 extensions_v8::SearchBoxExtension::DispatchThemeAreaHeightChange( | |
203 render_view()->GetWebView()->mainFrame()); | |
204 } | |
205 } | |
206 | |
179 void SearchBox::Reset() { | 207 void SearchBox::Reset() { |
180 query_.clear(); | 208 query_.clear(); |
181 verbatim_ = false; | 209 verbatim_ = false; |
182 selection_start_ = 0; | 210 selection_start_ = 0; |
183 selection_end_ = 0; | 211 selection_end_ = 0; |
184 results_base_ = 0; | 212 results_base_ = 0; |
185 rect_ = gfx::Rect(); | 213 rect_ = gfx::Rect(); |
186 autocomplete_results_.clear(); | 214 autocomplete_results_.clear(); |
187 active_tab_is_ntp_ = false; | 215 active_tab_is_ntp_ = false; |
sreeram
2012/11/19 18:12:02
Clear the newly added variables here?
kuan
2012/11/19 22:06:07
Done. also added to initializer list.
| |
188 } | 216 } |
OLD | NEW |