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

Side by Side Diff: chrome/browser/ui/android/context_menu_helper.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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/ui/android/context_menu_helper.h" 5 #include "chrome/browser/ui/android/context_menu_helper.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "base/android/jni_string.h" 8 #include "base/android/jni_string.h"
9 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_heade rs.h"
9 #include "content/public/browser/android/content_view_core.h" 10 #include "content/public/browser/android/content_view_core.h"
10 #include "content/public/browser/android/download_controller_android.h" 11 #include "content/public/browser/android/download_controller_android.h"
11 #include "content/public/common/context_menu_params.h" 12 #include "content/public/common/context_menu_params.h"
12 #include "jni/ContextMenuHelper_jni.h" 13 #include "jni/ContextMenuHelper_jni.h"
13 #include "jni/ContextMenuParams_jni.h" 14 #include "jni/ContextMenuParams_jni.h"
14 #include "ui/gfx/geometry/point.h" 15 #include "ui/gfx/geometry/point.h"
15 16
16 using base::android::ConvertUTF8ToJavaString; 17 using base::android::ConvertUTF8ToJavaString;
17 using base::android::ConvertUTF16ToJavaString; 18 using base::android::ConvertUTF16ToJavaString;
18 using base::android::ScopedJavaLocalRef; 19 using base::android::ScopedJavaLocalRef;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 JNIEnv* env = base::android::AttachCurrentThread(); 69 JNIEnv* env = base::android::AttachCurrentThread();
69 Java_ContextMenuHelper_setPopulator(env, java_obj_.obj(), jpopulator); 70 Java_ContextMenuHelper_setPopulator(env, java_obj_.obj(), jpopulator);
70 } 71 }
71 72
72 base::android::ScopedJavaLocalRef<jobject> 73 base::android::ScopedJavaLocalRef<jobject>
73 ContextMenuHelper::CreateJavaContextMenuParams( 74 ContextMenuHelper::CreateJavaContextMenuParams(
74 const content::ContextMenuParams& params) { 75 const content::ContextMenuParams& params) {
75 GURL sanitizedReferrer = (params.frame_url.is_empty() ? 76 GURL sanitizedReferrer = (params.frame_url.is_empty() ?
76 params.page_url : params.frame_url).GetAsReferrer(); 77 params.page_url : params.frame_url).GetAsReferrer();
77 78
79 std::map<std::string, std::string>::const_iterator it =
80 params.properties.find(data_reduction_proxy::chrome_proxy_header());
81 bool image_was_fetched_lo_fi =
82 it != params.properties.end() &&
83 it->second == data_reduction_proxy::chrome_proxy_lo_fi_directive();
84
78 JNIEnv* env = base::android::AttachCurrentThread(); 85 JNIEnv* env = base::android::AttachCurrentThread();
79 base::android::ScopedJavaLocalRef<jobject> jmenu_info = 86 base::android::ScopedJavaLocalRef<jobject> jmenu_info =
80 ContextMenuParamsAndroid::Java_ContextMenuParams_create( 87 ContextMenuParamsAndroid::Java_ContextMenuParams_create(
81 env, 88 env,
82 params.media_type, 89 params.media_type,
83 ConvertUTF8ToJavaString(env, params.page_url.spec()).obj(), 90 ConvertUTF8ToJavaString(env, params.page_url.spec()).obj(),
84 ConvertUTF8ToJavaString(env, params.link_url.spec()).obj(), 91 ConvertUTF8ToJavaString(env, params.link_url.spec()).obj(),
85 ConvertUTF16ToJavaString(env, params.link_text).obj(), 92 ConvertUTF16ToJavaString(env, params.link_text).obj(),
86 ConvertUTF8ToJavaString(env, params.unfiltered_link_url.spec()).obj(), 93 ConvertUTF8ToJavaString(env, params.unfiltered_link_url.spec()).obj(),
87 ConvertUTF8ToJavaString(env, params.src_url.spec()).obj(), 94 ConvertUTF8ToJavaString(env, params.src_url.spec()).obj(),
88 ConvertUTF16ToJavaString(env, params.selection_text).obj(), 95 ConvertUTF16ToJavaString(env, params.selection_text).obj(),
96 image_was_fetched_lo_fi,
89 params.is_editable, 97 params.is_editable,
90 ConvertUTF8ToJavaString(env, sanitizedReferrer.spec()).obj(), 98 ConvertUTF8ToJavaString(env, sanitizedReferrer.spec()).obj(),
91 params.referrer_policy); 99 params.referrer_policy);
92 100
93 std::vector<content::MenuItem>::const_iterator i; 101 std::vector<content::MenuItem>::const_iterator i;
94 for (i = params.custom_items.begin(); i != params.custom_items.end(); ++i) { 102 for (i = params.custom_items.begin(); i != params.custom_items.end(); ++i) {
95 ContextMenuParamsAndroid::Java_ContextMenuParams_addCustomItem( 103 ContextMenuParamsAndroid::Java_ContextMenuParams_addCustomItem(
96 env, 104 env,
97 jmenu_info.obj(), 105 jmenu_info.obj(),
98 ConvertUTF16ToJavaString(env, i->label).obj(), 106 ConvertUTF16ToJavaString(env, i->label).obj(),
(...skipping 18 matching lines...) Expand all
117 content::DownloadControllerAndroid::Get()->StartContextMenuDownload( 125 content::DownloadControllerAndroid::Get()->StartContextMenuDownload(
118 context_menu_params_, 126 context_menu_params_,
119 web_contents_, 127 web_contents_,
120 jis_link); 128 jis_link);
121 } 129 }
122 130
123 bool RegisterContextMenuHelper(JNIEnv* env) { 131 bool RegisterContextMenuHelper(JNIEnv* env) {
124 return RegisterNativesImpl(env) && 132 return RegisterNativesImpl(env) &&
125 ContextMenuParamsAndroid::RegisterNativesImpl(env); 133 ContextMenuParamsAndroid::RegisterNativesImpl(env);
126 } 134 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_context_menu/render_view_context_menu_unittest.cc ('k') | chrome/chrome_renderer.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698