Reviewed by Maciej.
- fixed <rdar://problem/
3744583> Safari can not quit when a webpage has a login sheet
that can't be cancelled.
The proper fix for this would be to change the class of the NSPanel in the nib file.
But since this would require a localization change, I did a run-time hack instead.
I'll file a bug about fixing this when we're out of localization freeze.
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel replacePanelWithSubclassHack]):
new method, creates a new panel that is identical to the original one except that
it's our subclass, and moves all the subviews of the original panel into the new one.
(-[WebAuthenticationPanel loadNib]):
call replacePanelWithSubclassHack
(-[NonBlockingPanel _blocksActionWhenModal:]):
only method of new NSPanel subclass; overrides this SPI to allow the user to quit
when one of these panels/sheets is on-screen
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8199
268f45cc-cd09-0410-ab3c-
d52691b4dbfc