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 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_HOME_PAGE_OVERLAY_HANDLER_H_ 6#define CHROME_BROWSER_UI_WEBUI_OPTIONS_HOME_PAGE_OVERLAY_HANDLER_H_ 7 8#include "base/basictypes.h" 9#include "base/compiler_specific.h" 10#include "base/memory/scoped_ptr.h" 11#include "chrome/browser/autocomplete/autocomplete_controller_delegate.h" 12#include "chrome/browser/ui/webui/options/options_ui.h" 13 14class AutocompleteController; 15 16namespace base { 17class DictionaryValue; 18class ListValue; 19} 20 21namespace options { 22 23class HomePageOverlayHandler : public OptionsPageUIHandler, 24 public AutocompleteControllerDelegate { 25 public: 26 HomePageOverlayHandler(); 27 virtual ~HomePageOverlayHandler(); 28 29 // OptionsPageUIHandler implementation 30 virtual void GetLocalizedValues(base::DictionaryValue*) OVERRIDE; 31 virtual void InitializeHandler() OVERRIDE; 32 virtual void RegisterMessages() OVERRIDE; 33 34 // AutocompleteControllerDelegate implementation. 35 virtual void OnResultChanged(bool default_match_changed) OVERRIDE; 36 37 private: 38 void RequestAutocompleteSuggestions(const base::ListValue* args); 39 40 scoped_ptr<AutocompleteController> autocomplete_controller_; 41 42 DISALLOW_COPY_AND_ASSIGN(HomePageOverlayHandler); 43}; 44 45} // namespace options 46 47#endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_HOME_PAGE_OVERLAY_HANDLER_H_ 48