diff options
author | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-13 18:44:21 +0000 |
---|---|---|
committer | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-13 18:44:21 +0000 |
commit | 22eeb168b8bfd02c8a4a9521a819067e25674b95 (patch) | |
tree | 7301665e67526024260e52478ebebde760f1ec1f /chrome/browser/cocoa/browser_window_controller.h | |
parent | d37fe632a386d29653f91564677186ff7403d8dc (diff) | |
download | chromium_src-22eeb168b8bfd02c8a4a9521a819067e25674b95.zip chromium_src-22eeb168b8bfd02c8a4a9521a819067e25674b95.tar.gz chromium_src-22eeb168b8bfd02c8a4a9521a819067e25674b95.tar.bz2 |
Mac: Only show one per-tab sheet at a time per tab.
BUG=26900
TEST=Go to http://www/~thakis/cgi-bin/test.html . Test that two sheets show up (the first expects "u" as user and no pass, the other "v" and no pass). The first sheet appears immediately, the second after 2 seconds. Try entering u for the first faster than 2 seconds and switch tabs, when coming back to the original tab, the 2nd sheet should wait for you. Try closing the window and the tab while a sheet is showing, both when the tab with the sheet is in the background and in the foreground.
Review URL: http://codereview.chromium.org/384113
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31920 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/browser_window_controller.h')
-rw-r--r-- | chrome/browser/cocoa/browser_window_controller.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/chrome/browser/cocoa/browser_window_controller.h b/chrome/browser/cocoa/browser_window_controller.h index 849ba04..7156778 100644 --- a/chrome/browser/cocoa/browser_window_controller.h +++ b/chrome/browser/cocoa/browser_window_controller.h @@ -160,7 +160,15 @@ class TabStripModelObserverBridge; // for the per-tab sheets. - (GTMWindowSheetController*)sheetController; -- (void)attachConstrainedWindow:(ConstrainedWindowMac*)window; +// Requests that |window| is opened as a per-tab sheet to the current tab. +// Returns YES if the window became the active per-tab sheet of the current tab, +// or NO if the current tab already has a per-tab sheet. If this returns NO, +// the window's |Realize()| method will be called again when the curren sheet +// disappears. The window should then call |attachConstrainedWindow:| again. +- (BOOL)attachConstrainedWindow:(ConstrainedWindowMac*)window; + +// Closes the tab sheet |window| and potentially shows the next sheet in the +// tab's sheet queue. - (void)removeConstrainedWindow:(ConstrainedWindowMac*)window; // Delegate method called when window is resized. |