Index: chrome/renderer/searchbox/searchbox.cc |
diff --git a/chrome/renderer/searchbox/searchbox.cc b/chrome/renderer/searchbox/searchbox.cc |
index 1d873975e601c4e1e8fe4a90e35ef3ee56358c63..060cdf162050ea71acef662753a76b77f0f37c9f 100644 |
--- a/chrome/renderer/searchbox/searchbox.cc |
+++ b/chrome/renderer/searchbox/searchbox.cc |
@@ -75,6 +75,7 @@ SearchBox::SearchBox(content::RenderView* render_view) |
omnibox_font_size_(0), |
autocomplete_results_cache_(kMaxInstantAutocompleteResultItemCacheSize), |
most_visited_items_cache_(kMaxInstantMostVisitedItemCacheSize) { |
+ theme_info_.Initialize(); |
} |
SearchBox::~SearchBox() { |
@@ -448,6 +449,8 @@ void SearchBox::OnSetDisplayInstantResults(bool display_instant_results) { |
} |
void SearchBox::OnThemeChanged(const ThemeBackgroundInfo& theme_info) { |
+ DCHECK(theme_info. IsValid()); |
+ |
theme_info_ = theme_info; |
if (render_view()->GetWebView() && render_view()->GetWebView()->mainFrame()) { |
extensions_v8::SearchBoxExtension::DispatchThemeChange( |
@@ -481,7 +484,10 @@ void SearchBox::Reset() { |
start_margin_ = 0; |
is_focused_ = false; |
is_key_capture_enabled_ = false; |
+ |
theme_info_ = ThemeBackgroundInfo(); |
+ theme_info_.Initialize(); |
+ |
// Don't reset display_instant_results_ to prevent clearing it on committed |
// results pages in extended mode. Otherwise resetting it is a no-op because |
// a new loader is created when it changes; see crbug.com/164662. |