Chromium Code Reviews| Index: chrome/browser/permissions/permission_queue_controller.cc |
| diff --git a/chrome/browser/permissions/permission_queue_controller.cc b/chrome/browser/permissions/permission_queue_controller.cc |
| index 0cc6d40dc1ef55f0ad47dde586b40e8537365cd1..627ad1b860403f0f115a28f6ab9fd7e5a9b04f7a 100644 |
| --- a/chrome/browser/permissions/permission_queue_controller.cc |
| +++ b/chrome/browser/permissions/permission_queue_controller.cc |
| @@ -113,35 +113,42 @@ void PermissionQueueController::PendingInfobarRequest::RunCallback( |
| void PermissionQueueController::PendingInfobarRequest::CreateInfoBar( |
| PermissionQueueController* controller, |
| const std::string& display_languages) { |
| + base::Callback<void(bool, bool)> callback = |
|
mlamouri (slow - plz ping)
2015/09/15 12:55:59
rename to PermissionInfobarDelegate::PermissionSet
Lalit Maganti
2015/09/15 14:19:25
Done.
|
| + base::Bind(&PermissionQueueController::OnPermissionSet, |
| + base::Unretained(controller), |
|
mlamouri (slow - plz ping)
2015/09/15 12:55:59
Add a comment explaining why base::Unretained() is
Lalit Maganti
2015/09/15 14:19:25
Done.
|
| + id_, |
| + requesting_frame_, |
| + embedder_); |
| + |
| switch (type_) { |
| case CONTENT_SETTINGS_TYPE_GEOLOCATION: |
| infobar_ = GeolocationInfoBarDelegate::Create( |
| - GetInfoBarService(id_), controller, id_, requesting_frame_, |
| - display_languages); |
| + GetInfoBarService(id_), id_, requesting_frame_, |
| + display_languages, callback); |
| break; |
| #if defined(ENABLE_NOTIFICATIONS) |
| case CONTENT_SETTINGS_TYPE_NOTIFICATIONS: |
| infobar_ = NotificationPermissionInfobarDelegate::Create( |
| - GetInfoBarService(id_), controller, id_, requesting_frame_, |
| - display_languages); |
| + GetInfoBarService(id_), id_, requesting_frame_, |
| + display_languages, callback); |
| break; |
| #endif // ENABLE_NOTIFICATIONS |
| case CONTENT_SETTINGS_TYPE_MIDI_SYSEX: |
| infobar_ = MidiPermissionInfoBarDelegate::Create( |
| - GetInfoBarService(id_), controller, id_, requesting_frame_, |
| - display_languages, type_); |
| + GetInfoBarService(id_), id_, requesting_frame_, |
| + display_languages, type_, callback); |
| break; |
| #if defined(OS_ANDROID) || defined(OS_CHROMEOS) |
| case CONTENT_SETTINGS_TYPE_PROTECTED_MEDIA_IDENTIFIER: |
| infobar_ = ProtectedMediaIdentifierInfoBarDelegate::Create( |
| - GetInfoBarService(id_), controller, id_, requesting_frame_, |
| - display_languages); |
| + GetInfoBarService(id_), id_, requesting_frame_, |
| + display_languages, callback); |
| break; |
| #endif |
| case CONTENT_SETTINGS_TYPE_DURABLE_STORAGE: |
| infobar_ = DurableStoragePermissionInfoBarDelegate::Create( |
| - GetInfoBarService(id_), controller, id_, requesting_frame_, |
| - display_languages, type_); |
| + GetInfoBarService(id_), id_, requesting_frame_, |
| + display_languages, type_, callback); |
| break; |
| default: |
| NOTREACHED(); |