| // Copyright 2019 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module remote_cocoa.mojom; |
| |
| import "mojo/public/mojom/base/string16.mojom"; |
| |
| struct AlertBridgeInitParams { |
| // The dialog title and text. |
| mojo_base.mojom.String16 title; |
| mojo_base.mojom.String16 message_text; |
| |
| // Set if the application icon should be hidden. |
| bool hide_application_icon; |
| |
| // Text for the primary button (which is also the default button). |
| mojo_base.mojom.String16 primary_button_text; |
| |
| // Text for the secondary (non-default) button. If not set, then there is only |
| // one button for this alert. |
| mojo_base.mojom.String16? secondary_button_text; |
| |
| // Default text for the text field. If not set, then there is no text field |
| // for this alert. |
| mojo_base.mojom.String16? text_field_text; |
| |
| // The text for the checkbox. If not set, then there is no checkbox for this |
| // alert. |
| mojo_base.mojom.String16? check_box_text; |
| }; |
| |
| // Disposition of alert window. |
| enum AlertDisposition { |
| // Default button was pressed. |
| PRIMARY_BUTTON, |
| // Secondary button was pressed. |
| SECONDARY_BUTTON, |
| // The window was closed without a selection being made. |
| CLOSE, |
| }; |
| |
| interface AlertBridge { |
| // Initialize and show the alert. Return in |disposition| is how the window |
| // was dismissed. Return in |text_field_value| the value of the text field |
| // shown in the alert (if any). Return true in |check_box_value| only if the |
| // alert had a checkbox and it was checked. |
| Show(AlertBridgeInitParams params) => |
| (AlertDisposition disposition, mojo_base.mojom.String16 text_field_value, |
| bool check_box_value); |
| }; |