Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / browser / ui / webui / extensions / extension_error_handler.h
blob41ea12acdde0c2c7e1eab9258d88eaded4952bbf
1 // Copyright 2013 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_BROWSER_UI_WEBUI_EXTENSIONS_EXTENSION_ERROR_HANDLER_H_
6 #define CHROME_BROWSER_UI_WEBUI_EXTENSIONS_EXTENSION_ERROR_HANDLER_H_
8 #include <string>
10 #include "base/basictypes.h"
11 #include "base/compiler_specific.h"
12 #include "content/public/browser/web_ui_message_handler.h"
14 namespace base {
15 class DictionaryValue;
16 class ListValue;
19 namespace content {
20 class WebUIDataSource;
23 class Profile;
25 namespace extensions {
27 class Extension;
29 // The handler page for the Extension Commands UI overlay.
30 class ExtensionErrorHandler : public content::WebUIMessageHandler {
31 public:
32 explicit ExtensionErrorHandler(Profile* profile);
33 virtual ~ExtensionErrorHandler();
35 // Fetches the localized values for the page and deposits them into |source|.
36 void GetLocalizedValues(content::WebUIDataSource* source);
38 // WebUIMessageHandler implementation.
39 virtual void RegisterMessages() OVERRIDE;
41 private:
42 friend class ManifestHighlightUnitTest;
44 // Handle the "requestFileSource" call.
45 void HandleRequestFileSource(const base::ListValue* args);
46 // Handle the "openDevTools" call.
47 void HandleOpenDevTools(const base::ListValue* args);
49 // Populate the results for a manifest file's content in response to the
50 // "requestFileSource" call. Highlight the part of the manifest which
51 // corresponds to the given |key| and |specific| locations. Caller owns
52 // |dict|.
53 void GetManifestFileCallback(base::DictionaryValue* dict,
54 const std::string& key,
55 const std::string& specific,
56 const std::string& contents);
58 // Populate the results for a source file's content in response to the
59 // "requestFileSource" call. Highlight the part of the source which
60 // corresponds to the given |line_number|.
61 void GetSourceFileCallback(base::DictionaryValue* results,
62 int line_number,
63 const std::string& contents);
65 // The profile with which this Handler is associated.
66 Profile* profile_;
68 DISALLOW_COPY_AND_ASSIGN(ExtensionErrorHandler);
71 } // namespace extensions
73 #endif // CHROME_BROWSER_UI_WEBUI_EXTENSIONS_EXTENSION_ERROR_HANDLER_H_