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

Unified Diff: chrome/browser/renderer_context_menu/render_view_context_menu.cc

Issue 1105263004: "Load image" context menu item to reload a LoFi image. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: try again Created 5 years, 7 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/renderer_context_menu/render_view_context_menu.cc
diff --git a/chrome/browser/renderer_context_menu/render_view_context_menu.cc b/chrome/browser/renderer_context_menu/render_view_context_menu.cc
index be5d6ef46e0f76ac71c6e3f9e8ae0ed56fe5c0f4..3c5e9a0f5346255c6f231d7a99b227bee6f1430d 100644
--- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc
+++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc
@@ -62,6 +62,7 @@
#include "chrome/common/spellcheck_messages.h"
#include "chrome/common/url_constants.h"
#include "chrome/grit/generated_resources.h"
+#include "components/data_reduction_proxy/core/common/data_reduction_proxy_headers.h"
#include "components/google/core/browser/google_util.h"
#include "components/metrics/proto/omnibox_input_type.pb.h"
#include "components/omnibox/autocomplete_match.h"
@@ -220,8 +221,10 @@ const struct UmaEnumCommandIdPair {
{63, IDC_WRITING_DIRECTION_DEFAULT},
{64, IDC_WRITING_DIRECTION_LTR},
{65, IDC_WRITING_DIRECTION_RTL},
+ {66, IDC_CONTENT_CONTEXT_SHOW_ORIGINAL_IMAGE},
// Add new items here and use |enum_id| from the next line.
- {66, 0}, // Must be the last. Increment |enum_id| when new IDC was added.
+ // Also, add new items to RenderViewContextMenuItem enum in histograms.xml.
+ {67, 0}, // Must be the last. Increment |enum_id| when new IDC was added.
};
// Collapses large ranges of ids before looking for UMA enum.
@@ -741,6 +744,14 @@ void RenderViewContextMenu::AppendImageItems() {
IDS_CONTENT_CONTEXT_COPYIMAGELOCATION);
menu_model_.AddItemWithStringId(IDC_CONTENT_CONTEXT_COPYIMAGE,
IDS_CONTENT_CONTEXT_COPYIMAGE);
+ std::map<std::string, std::string>::const_iterator it =
+ params_.properties.find(data_reduction_proxy::chrome_proxy_header());
+ if (it != params_.properties.end() && it->second ==
+ data_reduction_proxy::chrome_proxy_lo_fi_directive()) {
+ menu_model_.AddItemWithStringId(
+ IDC_CONTENT_CONTEXT_SHOW_ORIGINAL_IMAGE,
+ IDS_CONTENT_CONTEXT_SHOW_ORIGINAL_IMAGE);
+ }
DataReductionProxyChromeSettings* settings =
DataReductionProxyChromeSettingsFactory::GetForBrowserContext(
browser_context_);
@@ -1161,6 +1172,7 @@ bool RenderViewContextMenu::IsCommandIdEnabled(int id) const {
// The images shown in the most visited thumbnails can't be opened or
// searched for conventionally.
case IDC_CONTENT_CONTEXT_OPEN_ORIGINAL_IMAGE_NEW_TAB:
+ case IDC_CONTENT_CONTEXT_SHOW_ORIGINAL_IMAGE:
case IDC_CONTENT_CONTEXT_OPENIMAGENEWTAB:
case IDC_CONTENT_CONTEXT_SEARCHWEBFORIMAGE:
return params_.src_url.is_valid() &&
@@ -1476,6 +1488,10 @@ void RenderViewContextMenu::ExecuteCommand(int id, int event_flags) {
data_reduction_proxy::kDataReductionPassThroughHeader);
break;
+ case IDC_CONTENT_CONTEXT_SHOW_ORIGINAL_IMAGE:
+ ShowOriginalImage();
+ break;
+
case IDC_CONTENT_CONTEXT_OPENIMAGENEWTAB:
case IDC_CONTENT_CONTEXT_OPENAVNEWTAB:
OpenURL(params_.src_url,
@@ -1830,6 +1846,14 @@ void RenderViewContextMenu::CopyImageAt(int x, int y) {
source_web_contents_->GetRenderViewHost()->CopyImageAt(x, y);
}
+void RenderViewContextMenu::ShowOriginalImage() {
+ RenderFrameHost* render_frame_host = GetRenderFrameHost();
+ if (!render_frame_host)
+ return;
+ render_frame_host->Send(new ChromeViewMsg_RequestReloadImageForContextNode(
+ render_frame_host->GetRoutingID()));
+}
+
void RenderViewContextMenu::GetImageThumbnailForSearch() {
RenderFrameHost* render_frame_host = GetRenderFrameHost();
if (!render_frame_host)

Powered by Google App Engine
This is Rietveld 408576698