Index: chrome/browser/ui/test/test_browser_dialog.h |
diff --git a/chrome/browser/ui/test/test_browser_dialog.h b/chrome/browser/ui/test/test_browser_dialog.h |
index 0e9daa2012af90e72d74bb3f2b1c3a1d3c004792..66954716723ff16863f1332b193a4f40976e09c1 100644 |
--- a/chrome/browser/ui/test/test_browser_dialog.h |
+++ b/chrome/browser/ui/test/test_browser_dialog.h |
@@ -64,6 +64,13 @@ class TestBrowserDialog { |
// Show the dialog corresponding to |name| and leave it open. |
virtual void ShowDialog(const std::string& name) = 0; |
+ // Whether to always close asynchronously using Widget::Close(). This covers |
+ // codepaths relying on DialogDelegate::Close(), which isn't invoked by |
+ // Widget::CloseNow(). Dialogs should support both, since the OS can initiate |
+ // the destruction of dialogs, e.g., during logoff which bypass |
+ // Widget::CanClose() and DialogDelegate::Close(). |
+ virtual bool AlwaysCloseAsynchronously(); |
+ |
private: |
DISALLOW_COPY_AND_ASSIGN(TestBrowserDialog); |
}; |