| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" | 5 #include "chrome/browser/renderer_context_menu/render_view_context_menu.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <set> | 10 #include <set> |
| (...skipping 1831 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1842 SaveLinkAs(); | 1842 SaveLinkAs(); |
| 1843 break; | 1843 break; |
| 1844 | 1844 |
| 1845 case IDC_CONTENT_CONTEXT_SAVEAVAS: | 1845 case IDC_CONTENT_CONTEXT_SAVEAVAS: |
| 1846 case IDC_CONTENT_CONTEXT_SAVEIMAGEAS: { | 1846 case IDC_CONTENT_CONTEXT_SAVEIMAGEAS: { |
| 1847 bool is_large_data_url = params_.has_image_contents && | 1847 bool is_large_data_url = params_.has_image_contents && |
| 1848 params_.src_url.is_empty(); | 1848 params_.src_url.is_empty(); |
| 1849 if (params_.media_type == WebContextMenuData::MediaTypeCanvas || | 1849 if (params_.media_type == WebContextMenuData::MediaTypeCanvas || |
| 1850 (params_.media_type == WebContextMenuData::MediaTypeImage && | 1850 (params_.media_type == WebContextMenuData::MediaTypeImage && |
| 1851 is_large_data_url)) { | 1851 is_large_data_url)) { |
| 1852 source_web_contents_->GetRenderViewHost()->SaveImageAt( | 1852 RenderFrameHost* frame_host = GetRenderFrameHost(); |
| 1853 params_.x, params_.y); | 1853 if (frame_host) |
| 1854 frame_host->SaveImageAt(params_.x, params_.y); |
| 1854 } else { | 1855 } else { |
| 1855 RecordDownloadSource(DOWNLOAD_INITIATED_BY_CONTEXT_MENU); | 1856 RecordDownloadSource(DOWNLOAD_INITIATED_BY_CONTEXT_MENU); |
| 1856 const GURL& url = params_.src_url; | 1857 const GURL& url = params_.src_url; |
| 1857 content::Referrer referrer = CreateReferrer(url, params_); | 1858 content::Referrer referrer = CreateReferrer(url, params_); |
| 1858 | 1859 |
| 1859 std::string headers; | 1860 std::string headers; |
| 1860 DataReductionProxyChromeSettings* settings = | 1861 DataReductionProxyChromeSettings* settings = |
| 1861 DataReductionProxyChromeSettingsFactory::GetForBrowserContext( | 1862 DataReductionProxyChromeSettingsFactory::GetForBrowserContext( |
| 1862 browser_context_); | 1863 browser_context_); |
| 1863 if (params_.media_type == WebContextMenuData::MediaTypeImage && | 1864 if (params_.media_type == WebContextMenuData::MediaTypeImage && |
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2258 } | 2259 } |
| 2259 | 2260 |
| 2260 void RenderViewContextMenu::EscapeAmpersands(base::string16* text) { | 2261 void RenderViewContextMenu::EscapeAmpersands(base::string16* text) { |
| 2261 base::ReplaceChars(*text, base::ASCIIToUTF16("&"), base::ASCIIToUTF16("&&"), | 2262 base::ReplaceChars(*text, base::ASCIIToUTF16("&"), base::ASCIIToUTF16("&&"), |
| 2262 text); | 2263 text); |
| 2263 } | 2264 } |
| 2264 | 2265 |
| 2265 // Controller functions -------------------------------------------------------- | 2266 // Controller functions -------------------------------------------------------- |
| 2266 | 2267 |
| 2267 void RenderViewContextMenu::CopyImageAt(int x, int y) { | 2268 void RenderViewContextMenu::CopyImageAt(int x, int y) { |
| 2268 source_web_contents_->GetRenderViewHost()->CopyImageAt(x, y); | 2269 RenderFrameHost* frame_host = GetRenderFrameHost(); |
| 2270 if (frame_host) |
| 2271 frame_host->CopyImageAt(x, y); |
| 2269 } | 2272 } |
| 2270 | 2273 |
| 2271 void RenderViewContextMenu::LoadOriginalImage() { | 2274 void RenderViewContextMenu::LoadOriginalImage() { |
| 2272 RenderFrameHost* render_frame_host = GetRenderFrameHost(); | 2275 RenderFrameHost* render_frame_host = GetRenderFrameHost(); |
| 2273 if (!render_frame_host) | 2276 if (!render_frame_host) |
| 2274 return; | 2277 return; |
| 2275 render_frame_host->Send(new ChromeViewMsg_RequestReloadImageForContextNode( | 2278 render_frame_host->Send(new ChromeViewMsg_RequestReloadImageForContextNode( |
| 2276 render_frame_host->GetRoutingID())); | 2279 render_frame_host->GetRoutingID())); |
| 2277 } | 2280 } |
| 2278 | 2281 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2333 source_web_contents_->GetRenderViewHost()-> | 2336 source_web_contents_->GetRenderViewHost()-> |
| 2334 ExecuteMediaPlayerActionAtLocation(location, action); | 2337 ExecuteMediaPlayerActionAtLocation(location, action); |
| 2335 } | 2338 } |
| 2336 | 2339 |
| 2337 void RenderViewContextMenu::PluginActionAt( | 2340 void RenderViewContextMenu::PluginActionAt( |
| 2338 const gfx::Point& location, | 2341 const gfx::Point& location, |
| 2339 const WebPluginAction& action) { | 2342 const WebPluginAction& action) { |
| 2340 source_web_contents_->GetRenderViewHost()-> | 2343 source_web_contents_->GetRenderViewHost()-> |
| 2341 ExecutePluginActionAtLocation(location, action); | 2344 ExecutePluginActionAtLocation(location, action); |
| 2342 } | 2345 } |
| OLD | NEW |