diff options
Diffstat (limited to 'chrome/browser/app_modal_dialog.h')
-rw-r--r-- | chrome/browser/app_modal_dialog.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/chrome/browser/app_modal_dialog.h b/chrome/browser/app_modal_dialog.h index 8d44d64..8263565 100644 --- a/chrome/browser/app_modal_dialog.h +++ b/chrome/browser/app_modal_dialog.h @@ -21,7 +21,7 @@ typedef GtkWidget* NativeDialog; typedef void* NativeDialog; #endif -class TabContents; +class JavaScriptMessageBoxClient; namespace IPC { class Message; } @@ -33,7 +33,7 @@ class AppModalDialog : public NotificationObserver { public: // A union of data necessary to determine the type of message box to // show. |dialog_flags| is a MessageBox flag. - AppModalDialog(TabContents* tab_contents, + AppModalDialog(JavaScriptMessageBoxClient* client, const std::wstring& title, int dialog_flags, const std::wstring& message_text, @@ -63,8 +63,8 @@ class AppModalDialog : public NotificationObserver { ///////////////////////////////////////////////////////////////////////////// // Getters so NativeDialog can get information about the message box. - TabContents* tab_contents() { - return tab_contents_; + JavaScriptMessageBoxClient* client() { + return client_; } int dialog_flags() { return dialog_flags_; @@ -103,8 +103,15 @@ class AppModalDialog : public NotificationObserver { // A reference to the platform native dialog box. NativeDialog dialog_; + // An implementation of the client interface to provide supporting methods + // and receive results. + JavaScriptMessageBoxClient* client_; + + // True if the dialog should no longer be shown, e.g. because the underlying + // tab navigated away while the dialog was queued. + bool skip_this_dialog_; + // Information about the message box is held in the following variables. - TabContents* tab_contents_; std::wstring title_; int dialog_flags_; std::wstring message_text_; |