| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/permissions/permission_dialog_delegate.h" | 5 #include "chrome/browser/permissions/permission_dialog_delegate.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/android/jni_android.h" | 9 #include "base/android/jni_android.h" |
| 10 #include "base/android/jni_array.h" | 10 #include "base/android/jni_array.h" |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 env, reinterpret_cast<uintptr_t>(this), tab_->GetJavaObject(), | 141 env, reinterpret_cast<uintptr_t>(this), tab_->GetJavaObject(), |
| 142 base::android::ToJavaIntArray(env, content_settings_types).obj(), | 142 base::android::ToJavaIntArray(env, content_settings_types).obj(), |
| 143 ResourceMapper::MapFromChromiumId(infobar_delegate_->GetIconId()), | 143 ResourceMapper::MapFromChromiumId(infobar_delegate_->GetIconId()), |
| 144 ConvertUTF16ToJavaString(env, infobar_delegate_->GetMessageText()), | 144 ConvertUTF16ToJavaString(env, infobar_delegate_->GetMessageText()), |
| 145 ConvertUTF16ToJavaString(env, infobar_delegate_->GetLinkText()), | 145 ConvertUTF16ToJavaString(env, infobar_delegate_->GetLinkText()), |
| 146 primaryButtonText, secondaryButtonText, | 146 primaryButtonText, secondaryButtonText, |
| 147 infobar_delegate_->ShouldShowPersistenceToggle())); | 147 infobar_delegate_->ShouldShowPersistenceToggle())); |
| 148 return; | 148 return; |
| 149 } | 149 } |
| 150 | 150 |
| 151 // TODO(timloh): Handle grouped media permissions (camera + microphone). | 151 std::vector<int> content_settings_types; |
| 152 DCHECK_EQ(1u, permission_prompt_->PermissionCount()); | 152 for (size_t i = 0; i < permission_prompt_->PermissionCount(); ++i) { |
| 153 | 153 content_settings_types.push_back( |
| 154 std::vector<int> content_settings_types{ | 154 permission_prompt_->GetContentSettingType(i)); |
| 155 permission_prompt_->GetContentSettingType(0)}; | 155 } |
| 156 | 156 |
| 157 j_delegate_.Reset(Java_PermissionDialogDelegate_create( | 157 j_delegate_.Reset(Java_PermissionDialogDelegate_create( |
| 158 env, reinterpret_cast<uintptr_t>(this), tab_->GetJavaObject(), | 158 env, reinterpret_cast<uintptr_t>(this), tab_->GetJavaObject(), |
| 159 base::android::ToJavaIntArray(env, content_settings_types).obj(), | 159 base::android::ToJavaIntArray(env, content_settings_types).obj(), |
| 160 ResourceMapper::MapFromChromiumId(permission_prompt_->GetIconId()), | 160 ResourceMapper::MapFromChromiumId(permission_prompt_->GetIconId()), |
| 161 ConvertUTF16ToJavaString(env, permission_prompt_->GetMessageText()), | 161 ConvertUTF16ToJavaString(env, permission_prompt_->GetMessageText()), |
| 162 ConvertUTF16ToJavaString(env, permission_prompt_->GetLinkText()), | 162 ConvertUTF16ToJavaString(env, permission_prompt_->GetLinkText()), |
| 163 primaryButtonText, secondaryButtonText, | 163 primaryButtonText, secondaryButtonText, |
| 164 permission_prompt_->ShouldShowPersistenceToggle())); | 164 permission_prompt_->ShouldShowPersistenceToggle())); |
| 165 } | 165 } |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 navigation_handle->IsSameDocument()) { | 260 navigation_handle->IsSameDocument()) { |
| 261 return; | 261 return; |
| 262 } | 262 } |
| 263 | 263 |
| 264 DismissDialog(); | 264 DismissDialog(); |
| 265 } | 265 } |
| 266 | 266 |
| 267 void PermissionDialogDelegate::WebContentsDestroyed() { | 267 void PermissionDialogDelegate::WebContentsDestroyed() { |
| 268 DismissDialog(); | 268 DismissDialog(); |
| 269 } | 269 } |
| OLD | NEW |