| Index: chrome/browser/extensions/chrome_extensions_browser_client.cc
|
| diff --git a/chrome/browser/extensions/chrome_extensions_browser_client.cc b/chrome/browser/extensions/chrome_extensions_browser_client.cc
|
| index 6a49327f91f79c0265379f40721b140aac6a61ba..b98e701405db566b98f4be9a2b7c0b65ece3cd5d 100644
|
| --- a/chrome/browser/extensions/chrome_extensions_browser_client.cc
|
| +++ b/chrome/browser/extensions/chrome_extensions_browser_client.cc
|
| @@ -31,6 +31,7 @@
|
| #include "chrome/browser/net/chrome_net_log.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/profiles/profile_manager.h"
|
| +#include "chrome/browser/task_management/web_contents_tags.h"
|
| #include "chrome/common/chrome_paths.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/chrome_version_info.h"
|
| @@ -345,4 +346,32 @@ void ChromeExtensionsBrowserClient::CleanUpWebView(int embedder_process_id,
|
| MenuItem::ExtensionKey("", embedder_process_id, view_instance_id));
|
| }
|
|
|
| +void ChromeExtensionsBrowserClient::AttachExtensionTaskManagerTag(
|
| + content::WebContents* web_contents,
|
| + ViewType view_type) {
|
| + switch (view_type) {
|
| + case VIEW_TYPE_APP_WINDOW:
|
| + case VIEW_TYPE_EXTENSION_BACKGROUND_PAGE:
|
| + case VIEW_TYPE_EXTENSION_DIALOG:
|
| + case VIEW_TYPE_EXTENSION_POPUP:
|
| + case VIEW_TYPE_LAUNCHER_PAGE:
|
| + case VIEW_TYPE_VIRTUAL_KEYBOARD:
|
| + // These are the only types that are tracked by the ExtensionTag.
|
| + task_management::WebContentsTags::CreateForExtension(web_contents);
|
| + return;
|
| +
|
| + case VIEW_TYPE_INVALID:
|
| + case VIEW_TYPE_BACKGROUND_CONTENTS:
|
| + case VIEW_TYPE_PANEL:
|
| + case VIEW_TYPE_TAB_CONTENTS:
|
| + // Those types are tracked by other tags, so they're ignored.
|
| + return;
|
| +
|
| + default:
|
| + // Added new types that are possibly not tracked by the task manager.
|
| + NOTREACHED();
|
| + return;
|
| + }
|
| +}
|
| +
|
| } // namespace extensions
|
|
|