Cast: Stop logging kVideoFrameSentToEncoder and rename a couple events.
[chromium-blink-merge.git] / chrome / renderer / searchbox / searchbox_extension.h
blobd8f2b5c13b2953bc4fbd1a2f7baf26150c7d911a
1 // Copyright 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.
5 #ifndef CHROME_RENDERER_SEARCHBOX_SEARCHBOX_EXTENSION_H_
6 #define CHROME_RENDERER_SEARCHBOX_SEARCHBOX_EXTENSION_H_
8 #include "base/basictypes.h"
9 #include "base/strings/string16.h"
11 namespace v8 {
12 class Extension;
15 namespace blink {
16 class WebFrame;
19 namespace extensions_v8 {
21 // Reference implementation of the SearchBox API as described in:
22 // http://dev.chromium.org/searchbox
23 class SearchBoxExtension {
24 public:
25 // Returns the v8::Extension object handling searchbox bindings. Returns null
26 // if match-preview is not enabled. Caller takes ownership of returned object.
27 static v8::Extension* Get();
29 // Returns true if a page supports Instant, that is, if it has bound an
30 // onsubmit() handler.
31 static bool PageSupportsInstant(blink::WebFrame* frame);
33 // Helpers to dispatch Javascript events.
34 static void DispatchChromeIdentityCheckResult(blink::WebFrame* frame,
35 const base::string16& identity,
36 bool identity_match);
37 static void DispatchFocusChange(blink::WebFrame* frame);
38 static void DispatchInputCancel(blink::WebFrame* frame);
39 static void DispatchInputStart(blink::WebFrame* frame);
40 static void DispatchKeyCaptureChange(blink::WebFrame* frame);
41 static void DispatchMarginChange(blink::WebFrame* frame);
42 static void DispatchMostVisitedChanged(blink::WebFrame* frame);
43 static void DispatchSubmit(blink::WebFrame* frame);
44 static void DispatchSuggestionChange(blink::WebFrame* frame);
45 static void DispatchThemeChange(blink::WebFrame* frame);
46 static void DispatchToggleVoiceSearch(blink::WebFrame* frame);
48 private:
49 DISALLOW_IMPLICIT_CONSTRUCTORS(SearchBoxExtension);
52 } // namespace extensions_v8
54 #endif // CHROME_RENDERER_SEARCHBOX_SEARCHBOX_EXTENSION_H_