Index: ios/web/public/java_script_dialog_presenter.h |
diff --git a/ios/web/public/java_script_dialog_presenter.h b/ios/web/public/java_script_dialog_presenter.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9f503ee3f222a80180ed69c09724bbf86b99a8d4 |
--- /dev/null |
+++ b/ios/web/public/java_script_dialog_presenter.h |
@@ -0,0 +1,35 @@ |
+// Copyright 2016 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. |
+ |
+#ifndef IOS_WEB_PUBLIC_JAVA_SCRIPT_DIALOG_PRESENTER_H_ |
+#define IOS_WEB_PUBLIC_JAVA_SCRIPT_DIALOG_PRESENTER_H_ |
+ |
+#import "ios/web/public/java_script_dialog_callback.h" |
+#include "ios/web/public/java_script_dialog_type.h" |
+#include "url/gurl.h" |
+ |
+@class NSString; |
+ |
+namespace web { |
+ |
+class WebState; |
+ |
+class JavaScriptDialogPresenter { |
+ public: |
+ // Requests presentation of a JavaScript dialog. Clients must always call |
+ // |callback| even if they choose not to present the dialog. |
+ virtual void RunJavaScriptDialog(WebState* web_state, |
+ const GURL& origin_url, |
+ JavaScriptDialogType java_script_dialog_type, |
+ NSString* message_text, |
+ NSString* default_prompt_text, |
+ const DialogClosedCallback& callback) = 0; |
+ // Informs clients that all requested dialogs associated with |web_state| |
+ // should be dismissed. |
+ virtual void CancelActiveAndPendingDialogs(WebState* web_state) = 0; |
+}; |
+ |
+} // namespace web |
+ |
+#endif // IOS_WEB_PUBLIC_JAVA_SCRIPT_DIALOG_PRESENTER_H_ |