Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(230)

Unified Diff: chrome/browser/extensions/chrome_extensions_browser_client.cc

Issue 1181263007: WebView context menu cleanup. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed comments. Rebased. Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 a1f2547342da600f47398945cd2b95d35a8a877b..60a53da27d74728973ec2a0f5f6c98166c20cbf8 100644
--- a/chrome/browser/extensions/chrome_extensions_browser_client.cc
+++ b/chrome/browser/extensions/chrome_extensions_browser_client.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/extensions/event_router_forwarder.h"
#include "chrome/browser/extensions/extension_system_factory.h"
#include "chrome/browser/extensions/extension_util.h"
+#include "chrome/browser/extensions/menu_manager.h"
#include "chrome/browser/external_protocol/external_protocol_handler.h"
#include "chrome/browser/net/chrome_net_log.h"
#include "chrome/browser/profiles/profile.h"
@@ -34,6 +35,7 @@
#include "chrome/common/chrome_version_info.h"
#include "chrome/common/extensions/features/feature_channel.h"
#include "chrome/common/pref_names.h"
+#include "content/public/browser/render_process_host.h"
#include "extensions/browser/api/generated_api_registration.h"
#include "extensions/browser/extension_function_registry.h"
#include "extensions/browser/extension_prefs.h"
@@ -324,4 +326,16 @@ ChromeExtensionsBrowserClient::GetExtensionWebContentsObserver(
return ChromeExtensionWebContentsObserver::FromWebContents(web_contents);
}
+void ChromeExtensionsBrowserClient::CleanUpWebView(int embedder_process_id,
+ int view_instance_id) {
+ auto browser_context = content::RenderProcessHost::FromID(embedder_process_id)
Devlin 2015/06/19 18:05:48 nit: This is probably just my preference, but plea
paulmeyer 2015/06/19 18:18:09 Done.
+ ->GetBrowserContext();
+
+ // Clean up context menus for the WebView.
+ auto menu_manager =
+ MenuManager::Get(Profile::FromBrowserContext(browser_context));
+ menu_manager->RemoveAllContextItems(
+ MenuItem::ExtensionKey(embedder_process_id, view_instance_id));
+}
+
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698