Chromium Code Reviews| Index: chrome/browser/ui/cocoa/extensions/device_permissions_dialog_controller.mm |
| diff --git a/chrome/browser/ui/cocoa/extensions/device_permissions_dialog_controller.mm b/chrome/browser/ui/cocoa/extensions/device_permissions_dialog_controller.mm |
| index a83697202296b9bc133867d4522ade3d5ca4528c..8808abd43050dd4fbc710275079edd26ecba31ed 100644 |
| --- a/chrome/browser/ui/cocoa/extensions/device_permissions_dialog_controller.mm |
| +++ b/chrome/browser/ui/cocoa/extensions/device_permissions_dialog_controller.mm |
| @@ -12,6 +12,7 @@ |
| #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_sheet.h" |
| #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_window.h" |
| #import "chrome/browser/ui/cocoa/extensions/device_permissions_view_controller.h" |
| +#include "components/web_modal/web_contents_modal_dialog_manager.h" |
| #include "device/usb/usb_device.h" |
| using extensions::DevicePermissionsPrompt; |
| @@ -55,6 +56,12 @@ void DevicePermissionsDialogController::OnConstrainedWindowClosed( |
| } |
| void ChromeDevicePermissionsPrompt::ShowDialog() { |
| - // These objects will delete themselves when the dialog closes. |
| - new DevicePermissionsDialogController(web_contents(), prompt()); |
| + web_modal::WebContentsModalDialogManager* manager = |
| + web_modal::WebContentsModalDialogManager::FromWebContents(web_contents()); |
| + if (manager) { |
| + // These objects will delete themselves when the dialog closes. |
| + new DevicePermissionsDialogController(web_contents(), prompt()); |
| + } else { |
| + prompt()->Dismissed(); |
|
Devlin
2015/05/14 17:38:11
- Can we consolidate this code with the views equi
Reilly Grant (use Gerrit)
2015/05/14 18:04:28
The modal dialog managers seem to work slightly di
Devlin
2015/05/14 18:32:02
And you're confident that Dismissed()'ing the dial
|
| + } |
| } |