OLD | NEW |
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 "content/public/browser/android/content_view_core.h" | 9 #include "content/public/browser/android/content_view_core.h" |
10 #include "content/public/browser/android/download_controller_android.h" | 10 #include "content/public/browser/android/download_controller_android.h" |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 ContextMenuHelper::CreateJavaContextMenuParams( | 73 ContextMenuHelper::CreateJavaContextMenuParams( |
74 const content::ContextMenuParams& params) { | 74 const content::ContextMenuParams& params) { |
75 GURL sanitizedReferrer = (params.frame_url.is_empty() ? | 75 GURL sanitizedReferrer = (params.frame_url.is_empty() ? |
76 params.page_url : params.frame_url).GetAsReferrer(); | 76 params.page_url : params.frame_url).GetAsReferrer(); |
77 | 77 |
78 JNIEnv* env = base::android::AttachCurrentThread(); | 78 JNIEnv* env = base::android::AttachCurrentThread(); |
79 base::android::ScopedJavaLocalRef<jobject> jmenu_info = | 79 base::android::ScopedJavaLocalRef<jobject> jmenu_info = |
80 ContextMenuParamsAndroid::Java_ContextMenuParams_create( | 80 ContextMenuParamsAndroid::Java_ContextMenuParams_create( |
81 env, | 81 env, |
82 params.media_type, | 82 params.media_type, |
| 83 ConvertUTF8ToJavaString(env, params.page_url.spec()).obj(), |
83 ConvertUTF8ToJavaString(env, params.link_url.spec()).obj(), | 84 ConvertUTF8ToJavaString(env, params.link_url.spec()).obj(), |
84 ConvertUTF16ToJavaString(env, params.link_text).obj(), | 85 ConvertUTF16ToJavaString(env, params.link_text).obj(), |
85 ConvertUTF8ToJavaString(env, params.unfiltered_link_url.spec()).obj(), | 86 ConvertUTF8ToJavaString(env, params.unfiltered_link_url.spec()).obj(), |
86 ConvertUTF8ToJavaString(env, params.src_url.spec()).obj(), | 87 ConvertUTF8ToJavaString(env, params.src_url.spec()).obj(), |
87 ConvertUTF16ToJavaString(env, params.selection_text).obj(), | 88 ConvertUTF16ToJavaString(env, params.selection_text).obj(), |
88 params.is_editable, | 89 params.is_editable, |
89 ConvertUTF8ToJavaString(env, sanitizedReferrer.spec()).obj(), | 90 ConvertUTF8ToJavaString(env, sanitizedReferrer.spec()).obj(), |
90 params.referrer_policy); | 91 params.referrer_policy); |
91 | 92 |
92 std::vector<content::MenuItem>::const_iterator i; | 93 std::vector<content::MenuItem>::const_iterator i; |
(...skipping 23 matching lines...) Expand all Loading... |
116 content::DownloadControllerAndroid::Get()->StartContextMenuDownload( | 117 content::DownloadControllerAndroid::Get()->StartContextMenuDownload( |
117 context_menu_params_, | 118 context_menu_params_, |
118 web_contents_, | 119 web_contents_, |
119 jis_link); | 120 jis_link); |
120 } | 121 } |
121 | 122 |
122 bool RegisterContextMenuHelper(JNIEnv* env) { | 123 bool RegisterContextMenuHelper(JNIEnv* env) { |
123 return RegisterNativesImpl(env) && | 124 return RegisterNativesImpl(env) && |
124 ContextMenuParamsAndroid::RegisterNativesImpl(env); | 125 ContextMenuParamsAndroid::RegisterNativesImpl(env); |
125 } | 126 } |
OLD | NEW |