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

Side by Side Diff: chrome/browser/ui/android/bluetooth_chooser_android.cc

Issue 1771353004: Use FormatUrlForSecurityDisplay at BluetoothChooserAndroid constructor (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use FormatUrlForSecurityDisplay at BluetoothChooserAndroid constructor Created 4 years, 9 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/bluetooth_chooser_android.h" 5 #include "chrome/browser/ui/android/bluetooth_chooser_android.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 "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/ssl/chrome_security_state_model_client.h" 11 #include "chrome/browser/ssl/chrome_security_state_model_client.h"
11 #include "chrome/browser/ui/android/view_android_helper.h" 12 #include "chrome/browser/ui/android/view_android_helper.h"
13 #include "chrome/common/pref_names.h"
12 #include "chrome/common/url_constants.h" 14 #include "chrome/common/url_constants.h"
15 #include "components/prefs/pref_service.h"
16 #include "components/url_formatter/elide_url.h"
13 #include "content/public/browser/android/content_view_core.h" 17 #include "content/public/browser/android/content_view_core.h"
14 #include "content/public/browser/render_frame_host.h" 18 #include "content/public/browser/render_frame_host.h"
15 #include "jni/BluetoothChooserDialog_jni.h" 19 #include "jni/BluetoothChooserDialog_jni.h"
16 #include "ui/android/window_android.h" 20 #include "ui/android/window_android.h"
21 #include "url/gurl.h"
17 #include "url/origin.h" 22 #include "url/origin.h"
18 23
19 using base::android::AttachCurrentThread; 24 using base::android::AttachCurrentThread;
20 using base::android::ConvertUTF8ToJavaString; 25 using base::android::ConvertUTF8ToJavaString;
21 using base::android::ConvertUTF16ToJavaString; 26 using base::android::ConvertUTF16ToJavaString;
22 using base::android::ScopedJavaLocalRef; 27 using base::android::ScopedJavaLocalRef;
23 28
24 BluetoothChooserAndroid::BluetoothChooserAndroid( 29 BluetoothChooserAndroid::BluetoothChooserAndroid(
25 content::RenderFrameHost* frame, 30 content::RenderFrameHost* frame,
26 const EventHandler& event_handler) 31 const EventHandler& event_handler)
27 : web_contents_(content::WebContents::FromRenderFrameHost(frame)), 32 : web_contents_(content::WebContents::FromRenderFrameHost(frame)),
28 event_handler_(event_handler) { 33 event_handler_(event_handler) {
29 const url::Origin origin = frame->GetLastCommittedOrigin(); 34 const url::Origin origin = frame->GetLastCommittedOrigin();
30 DCHECK(!origin.unique()); 35 DCHECK(!origin.unique());
31 36
32 base::android::ScopedJavaLocalRef<jobject> window_android = 37 base::android::ScopedJavaLocalRef<jobject> window_android =
33 content::ContentViewCore::FromWebContents(web_contents_) 38 content::ContentViewCore::FromWebContents(web_contents_)
34 ->GetWindowAndroid() 39 ->GetWindowAndroid()
35 ->GetJavaObject(); 40 ->GetJavaObject();
36 41
37 ChromeSecurityStateModelClient* security_model_client = 42 ChromeSecurityStateModelClient* security_model_client =
38 ChromeSecurityStateModelClient::FromWebContents(web_contents_); 43 ChromeSecurityStateModelClient::FromWebContents(web_contents_);
39 DCHECK(security_model_client); 44 DCHECK(security_model_client);
40 45
41 // Create (and show) the BluetoothChooser dialog. 46 // Create (and show) the BluetoothChooser dialog.
42 JNIEnv* env = AttachCurrentThread(); 47 JNIEnv* env = AttachCurrentThread();
43 ScopedJavaLocalRef<jstring> origin_string = 48 Profile* profile =
44 ConvertUTF8ToJavaString(env, origin.Serialize()); 49 Profile::FromBrowserContext(web_contents_->GetBrowserContext());
50 std::string languages =
51 profile->GetPrefs()->GetString(prefs::kAcceptLanguages);
52 base::android::ScopedJavaLocalRef<jstring> origin_string =
53 base::android::ConvertUTF16ToJavaString(
54 env, url_formatter::FormatUrlForSecurityDisplay(
55 GURL(origin.Serialize()), languages));
Yaron 2016/03/09 04:19:59 err, serializing the origin and then creating a GU
Jeffrey Yasskin 2016/03/09 16:40:10 Hm, do we want to be switching to url::Origins eve
palmer 2016/03/09 20:19:39 Ultimately, yes, we want to use url::Origin where
juncai 2016/03/10 00:13:54 Done.
45 java_dialog_.Reset(Java_BluetoothChooserDialog_create( 56 java_dialog_.Reset(Java_BluetoothChooserDialog_create(
46 env, window_android.obj(), origin_string.obj(), 57 env, window_android.obj(), origin_string.obj(),
47 security_model_client->GetSecurityInfo().security_level, 58 security_model_client->GetSecurityInfo().security_level,
48 reinterpret_cast<intptr_t>(this))); 59 reinterpret_cast<intptr_t>(this)));
49 } 60 }
50 61
51 BluetoothChooserAndroid::~BluetoothChooserAndroid() { 62 BluetoothChooserAndroid::~BluetoothChooserAndroid() {
52 if (!java_dialog_.is_null()) { 63 if (!java_dialog_.is_null()) {
53 Java_BluetoothChooserDialog_closeDialog(AttachCurrentThread(), 64 Java_BluetoothChooserDialog_closeDialog(AttachCurrentThread(),
54 java_dialog_.obj()); 65 java_dialog_.obj());
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 // static 174 // static
164 bool BluetoothChooserAndroid::Register(JNIEnv* env) { 175 bool BluetoothChooserAndroid::Register(JNIEnv* env) {
165 return RegisterNativesImpl(env); 176 return RegisterNativesImpl(env);
166 } 177 }
167 178
168 void BluetoothChooserAndroid::OpenURL(const char* url) { 179 void BluetoothChooserAndroid::OpenURL(const char* url) {
169 web_contents_->OpenURL(content::OpenURLParams( 180 web_contents_->OpenURL(content::OpenURLParams(
170 GURL(url), content::Referrer(), NEW_FOREGROUND_TAB, 181 GURL(url), content::Referrer(), NEW_FOREGROUND_TAB,
171 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, false /* is_renderer_initiated */)); 182 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, false /* is_renderer_initiated */));
172 } 183 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698