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

Side by Side Diff: chrome/browser/supervised_user/supervised_user_content_provider_android.cc

Issue 1847523002: Avoid HTML in WebRestrictionsContentProvider interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Respond to one more comment Created 4 years, 8 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 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/supervised_user/supervised_user_content_provider_androi d.h" 5 #include "chrome/browser/supervised_user/supervised_user_content_provider_androi d.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 "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/profiles/profile_manager.h" 10 #include "chrome/browser/profiles/profile_manager.h"
11 #include "chrome/browser/supervised_user/supervised_user_interstitial.h" 11 #include "chrome/browser/supervised_user/supervised_user_interstitial.h"
12 #include "chrome/browser/supervised_user/supervised_user_service.h" 12 #include "chrome/browser/supervised_user/supervised_user_service.h"
13 #include "chrome/browser/supervised_user/supervised_user_service_factory.h" 13 #include "chrome/browser/supervised_user/supervised_user_service_factory.h"
14 #include "chrome/common/pref_names.h"
15 #include "components/prefs/pref_service.h"
14 #include "jni/SupervisedUserContentProvider_jni.h" 16 #include "jni/SupervisedUserContentProvider_jni.h"
15 17
16 using base::android::JavaRef; 18 using base::android::JavaRef;
17 using base::android::JavaParamRef; 19 using base::android::JavaParamRef;
18 using base::android::ScopedJavaGlobalRef; 20 using base::android::ScopedJavaGlobalRef;
19 using base::android::AttachCurrentThread; 21 using base::android::AttachCurrentThread;
20 22
21 namespace { 23 namespace {
22 24
23 class UrlFilterObserver : public SupervisedUserURLFilter::Observer { 25 class UrlFilterObserver : public SupervisedUserURLFilter::Observer {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 64
63 SupervisedUserContentProvider::~SupervisedUserContentProvider() {} 65 SupervisedUserContentProvider::~SupervisedUserContentProvider() {}
64 66
65 void SupervisedUserContentProvider::ShouldProceed( 67 void SupervisedUserContentProvider::ShouldProceed(
66 JNIEnv* env, 68 JNIEnv* env,
67 const JavaParamRef<jobject>& caller, 69 const JavaParamRef<jobject>& caller,
68 const JavaParamRef<jobject>& query_result_jobj, 70 const JavaParamRef<jobject>& query_result_jobj,
69 const JavaParamRef<jstring>& url) { 71 const JavaParamRef<jstring>& url) {
70 if (!profile_->IsSupervised()) { 72 if (!profile_->IsSupervised()) {
71 // User isn't supervised 73 // User isn't supervised
72 Java_SupervisedUserQueryReply_onQueryComplete(env, query_result_jobj.obj(), 74 Java_SupervisedUserQueryReply_onQueryComplete(env, query_result_jobj.obj());
73 true, nullptr);
74 return; 75 return;
75 } 76 }
76 SupervisedUserService* supervised_user_service = 77 SupervisedUserService* supervised_user_service =
77 SupervisedUserServiceFactory::GetForProfile(profile_); 78 SupervisedUserServiceFactory::GetForProfile(profile_);
78 SupervisedUserURLFilter* url_filter = 79 SupervisedUserURLFilter* url_filter =
79 supervised_user_service->GetURLFilterForUIThread(); 80 supervised_user_service->GetURLFilterForUIThread();
80 url_filter->GetFilteringBehaviorForURLWithAsyncChecks( 81 url_filter->GetFilteringBehaviorForURLWithAsyncChecks(
81 GURL(base::android::ConvertJavaStringToUTF16(env, url)), 82 GURL(base::android::ConvertJavaStringToUTF16(env, url)),
82 base::Bind(&SupervisedUserContentProvider::OnQueryComplete, 83 base::Bind(&SupervisedUserContentProvider::OnQueryComplete,
83 weak_factory_.GetWeakPtr(), 84 weak_factory_.GetWeakPtr(),
(...skipping 15 matching lines...) Expand all
99 weak_factory_.GetWeakPtr(), 100 weak_factory_.GetWeakPtr(),
100 ScopedJavaGlobalRef<jobject>(env, insert_result_jobj.obj()))); 101 ScopedJavaGlobalRef<jobject>(env, insert_result_jobj.obj())));
101 } 102 }
102 103
103 void SupervisedUserContentProvider::OnQueryComplete( 104 void SupervisedUserContentProvider::OnQueryComplete(
104 ScopedJavaGlobalRef<jobject> query_reply_jobj, 105 ScopedJavaGlobalRef<jobject> query_reply_jobj,
105 SupervisedUserURLFilter::FilteringBehavior behavior, 106 SupervisedUserURLFilter::FilteringBehavior behavior,
106 supervised_user_error_page::FilteringBehaviorReason reason, 107 supervised_user_error_page::FilteringBehaviorReason reason,
107 bool /* uncertain */) { 108 bool /* uncertain */) {
108 if (behavior != SupervisedUserURLFilter::BLOCK) { 109 if (behavior != SupervisedUserURLFilter::BLOCK) {
109 Java_SupervisedUserQueryReply_onQueryComplete( 110 Java_SupervisedUserQueryReply_onQueryComplete(AttachCurrentThread(),
110 AttachCurrentThread(), query_reply_jobj.obj(), true, nullptr); 111 query_reply_jobj.obj());
111 } else { 112 } else {
112 JNIEnv* env = AttachCurrentThread(); 113 JNIEnv* env = AttachCurrentThread();
113 Java_SupervisedUserQueryReply_onQueryComplete( 114 SupervisedUserService* service =
114 env, query_reply_jobj.obj(), false, 115 SupervisedUserServiceFactory::GetForProfile(profile_);
116 Java_SupervisedUserQueryReply_onQueryFailed(
117 env, query_reply_jobj.obj(), reason, service->AccessRequestsEnabled(),
118 profile_->IsChild(),
115 base::android::ConvertUTF8ToJavaString( 119 base::android::ConvertUTF8ToJavaString(
116 env, SupervisedUserInterstitial::GetHTMLContents(profile_, reason)) 120 env, profile_->GetPrefs()->GetString(
121 prefs::kSupervisedUserCustodianProfileImageURL))
122 .obj(),
123 base::android::ConvertUTF8ToJavaString(
124 env, profile_->GetPrefs()->GetString(
125 prefs::kSupervisedUserSecondCustodianProfileImageURL))
126 .obj(),
127 base::android::ConvertUTF8ToJavaString(env, service->GetCustodianName())
128 .obj(),
129 base::android::ConvertUTF8ToJavaString(
130 env, service->GetCustodianEmailAddress())
131 .obj(),
132 base::android::ConvertUTF8ToJavaString(
133 env, service->GetSecondCustodianName())
134 .obj(),
135 base::android::ConvertUTF8ToJavaString(
136 env, service->GetSecondCustodianEmailAddress())
117 .obj()); 137 .obj());
118 } 138 }
119 } 139 }
120 140
121 void SupervisedUserContentProvider::SetFilterForTesting(JNIEnv* env, 141 void SupervisedUserContentProvider::SetFilterForTesting(JNIEnv* env,
122 jobject caller) { 142 jobject caller) {
123 if (!profile_->IsSupervised()) 143 if (!profile_->IsSupervised())
124 return; 144 return;
125 SupervisedUserService* supervised_user_service = 145 SupervisedUserService* supervised_user_service =
126 SupervisedUserServiceFactory::GetForProfile(profile_); 146 SupervisedUserServiceFactory::GetForProfile(profile_);
127 SupervisedUserURLFilter* url_filter = 147 SupervisedUserURLFilter* url_filter =
128 supervised_user_service->GetURLFilterForUIThread(); 148 supervised_user_service->GetURLFilterForUIThread();
129 url_filter->SetDefaultFilteringBehavior(SupervisedUserURLFilter::BLOCK); 149 url_filter->SetDefaultFilteringBehavior(SupervisedUserURLFilter::BLOCK);
130 } 150 }
131 151
132 void SupervisedUserContentProvider::OnInsertRequestSendComplete( 152 void SupervisedUserContentProvider::OnInsertRequestSendComplete(
133 ScopedJavaGlobalRef<jobject> insert_reply_jobj, 153 ScopedJavaGlobalRef<jobject> insert_reply_jobj,
134 bool sent_ok) { 154 bool sent_ok) {
135 Java_SupervisedUserInsertReply_onInsertRequestSendComplete( 155 Java_SupervisedUserInsertReply_onInsertRequestSendComplete(
136 AttachCurrentThread(), insert_reply_jobj.obj(), sent_ok); 156 AttachCurrentThread(), insert_reply_jobj.obj(), sent_ok);
137 } 157 }
138 158
139 bool SupervisedUserContentProvider::Register(JNIEnv* env) { 159 bool SupervisedUserContentProvider::Register(JNIEnv* env) {
140 return RegisterNativesImpl(env); 160 return RegisterNativesImpl(env);
141 } 161 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698