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

Unified Diff: chrome/browser/extensions/api/web_view/chrome_web_view_internal_api.cc

Issue 1181263007: WebView context menu cleanup. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added comment. Created 5 years, 5 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/api/web_view/chrome_web_view_internal_api.cc
diff --git a/chrome/browser/extensions/api/web_view/chrome_web_view_internal_api.cc b/chrome/browser/extensions/api/web_view/chrome_web_view_internal_api.cc
index 204397d651715f74a6cac3a29e1f5a1a1e61994c..3e6f560fa22287a9a40a1a99e56e6595cecb419b 100644
--- a/chrome/browser/extensions/api/web_view/chrome_web_view_internal_api.cc
+++ b/chrome/browser/extensions/api/web_view/chrome_web_view_internal_api.cc
@@ -8,6 +8,7 @@
#include "chrome/browser/extensions/api/context_menus/context_menus_api_helpers.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/api/chrome_web_view_internal.h"
+#include "content/public/browser/render_process_host.h"
#include "extensions/common/error_utils.h"
namespace helpers = extensions::context_menus_api_helpers;
@@ -24,7 +25,10 @@ bool ChromeWebViewInternalContextMenusCreateFunction::RunAsync() {
MenuItem::Id id(
Profile::FromBrowserContext(browser_context())->IsOffTheRecord(),
- MenuItem::ExtensionKey(extension_id(), params->instance_id));
+ MenuItem::ExtensionKey(
+ extension_id(),
+ GetSenderWebContents()->GetRenderProcessHost()->GetID(),
+ params->instance_id));
if (params->create_properties.id.get()) {
id.string_uid = *params->create_properties.id;
@@ -55,7 +59,10 @@ bool ChromeWebViewInternalContextMenusUpdateFunction::RunAsync() {
Profile* profile = Profile::FromBrowserContext(browser_context());
MenuItem::Id item_id(
profile->IsOffTheRecord(),
- MenuItem::ExtensionKey(extension_id(), params->instance_id));
+ MenuItem::ExtensionKey(
+ extension_id(),
+ GetSenderWebContents()->GetRenderProcessHost()->GetID(),
+ params->instance_id));
if (params->id.as_string)
item_id.string_uid = *params->id.as_string;
@@ -80,7 +87,10 @@ bool ChromeWebViewInternalContextMenusRemoveFunction::RunAsync() {
MenuItem::Id id(
Profile::FromBrowserContext(browser_context())->IsOffTheRecord(),
- MenuItem::ExtensionKey(extension_id(), params->instance_id));
+ MenuItem::ExtensionKey(
+ extension_id(),
+ GetSenderWebContents()->GetRenderProcessHost()->GetID(),
+ params->instance_id));
if (params->menu_item_id.as_string) {
id.string_uid = *params->menu_item_id.as_string;
@@ -113,10 +123,11 @@ bool ChromeWebViewInternalContextMenusRemoveAllFunction::RunAsync() {
MenuManager* menu_manager =
MenuManager::Get(Profile::FromBrowserContext(browser_context()));
+ menu_manager->RemoveAllContextItems(MenuItem::ExtensionKey(
+ extension_id(),
+ GetSenderWebContents()->GetRenderProcessHost()->GetID(),
+ params->instance_id));
- int webview_instance_id = params->instance_id;
- menu_manager->RemoveAllContextItems(
- MenuItem::ExtensionKey(extension()->id(), webview_instance_id));
SendResponse(true);
return true;
}
« no previous file with comments | « chrome/browser/apps/guest_view/web_view_browsertest.cc ('k') | chrome/browser/extensions/chrome_extensions_browser_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698