diff options
Diffstat (limited to 'chrome/browser/extensions/extensions_ui.h')
-rw-r--r-- | chrome/browser/extensions/extensions_ui.h | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/chrome/browser/extensions/extensions_ui.h b/chrome/browser/extensions/extensions_ui.h index 3d1ed7b..953cb31e 100644 --- a/chrome/browser/extensions/extensions_ui.h +++ b/chrome/browser/extensions/extensions_ui.h @@ -6,15 +6,28 @@ #define CHROME_BROWSER_EXTENSIONS_EXTENSIONS_UI_H_ #include <string> +#include <vector> #include "base/values.h" #include "chrome/browser/dom_ui/chrome_url_data_manager.h" #include "chrome/browser/dom_ui/dom_ui.h" #include "chrome/browser/extensions/extensions_service.h" +#include "googleurl/src/gurl.h" class GURL; class UserScript; +// Information about a page running in an extension, for example a toolstrip, +// a background page, or a tab contents. +struct ExtensionPage { + ExtensionPage(const GURL& url, int render_process_id, int render_view_id) + : url(url), render_process_id(render_process_id), + render_view_id(render_view_id) {} + GURL url; + int render_process_id; + int render_view_id; +}; + class ExtensionsUIHTMLSource : public ChromeURLDataManager::DataSource { public: ExtensionsUIHTMLSource(); @@ -40,18 +53,26 @@ class ExtensionsDOMHandler : public DOMMessageHandler { void Init(); // Extension Detail JSON Struct for page. (static for ease of testing). - static DictionaryValue* - CreateExtensionDetailValue(const Extension *extension); + static DictionaryValue* CreateExtensionDetailValue( + const Extension *extension, + const std::vector<ExtensionPage>&); // ContentScript JSON Struct for page. (static for ease of testing). - static DictionaryValue* - CreateContentScriptDetailValue(const UserScript& script, - const FilePath& extension_path); + static DictionaryValue* CreateContentScriptDetailValue( + const UserScript& script, + const FilePath& extension_path); private: // Callback for "requestExtensionsData" message. void HandleRequestExtensionsData(const Value* value); + // Callback for "inspect" message. + void HandleInspectMessage(const Value* value); + + // Helper that lists the current active html pages for an extension. + std::vector<ExtensionPage> GetActivePagesForExtension( + const std::string& extension_id); + // Our model. scoped_refptr<ExtensionsService> extensions_service_; |