DescriptionMac: make save/open dialogs operate as tab-modal sheets.
(... at least whenever possible, which is usually.)
Depends on:
http://codereview.appspot.com/109050 [Patch Set 5]
Includes:
- Save Page As... (from File menu, or Cmd-S)
- Open File... (from File menu, or Cmd-O)
- Save Link/Image As... (from context menu)
- file upload (e.g., attaching a file to a new bug at crbug.com)
Also:
- improves enabling/disabling behaviour (some bug fixes); the
disabling of the Encoding menu contents is now more Mac-ish
To do/issues:
- Closing a tab nukes any save/open sheet; for open, fine, but for
save? Presumably, if you wanted to save something, it might be
imporant. Perhaps it just reactivate as a response?
- Quitting always refuses to nuke any save/open sheet, but instead
pops you to one; this seems unnecessary for open.
- Make Cmd-Shift-[/] work while a save/open sheet is open and active?
- Still need to add a check in CreateConstrainedDialog().
- Maybe still some races left?
- Modality nearly complete. (Perhaps) still not right:
- Edit menu items (cut/copy/paste/etc. should apply to the sheet!)
-- oy!
- Print... are wonky -- not my fault.
- Should Email Page Location be affected by sheets? (No, unless it
ever wants to pop up an error message as a tab-modal sheet?)
It's not currently hooked up to anything right now, anyway.
- Open Recent has an IDC_... for disabling, but it doesn't do
anything, ever, right now.
- I have no idea what "Create Application Shortcut..." is supposed
to do.
- Bug: this CL has turned into a monster.
Hopefully-very-temporary note:
- If you play with this and chromium dies a horrible death (due to a
failed assertion), it's probably this bug: <http://crbug.com/19116>.
BUG=19333
TEST=Try the above (saving/opening/cancelling), try switching/creating tabs, try closing tabs (while open/save sheet active, with tab selected and unselected), open/close bookmark bar while switching between tabs with/without sheets.
Patch Set 1 #Patch Set 2 : '' #Patch Set 3 : '' #Patch Set 4 : '' #Patch Set 5 : '' #Patch Set 6 : '' #Patch Set 7 : '' #Patch Set 8 : Fewer crashes. Choice of SelectFile[InTab]() made explicit. #Patch Set 9 : Kinda works better. Will redesign. Saving snapshot. #Patch Set 10 : Yet Another Snapshot. Works a bit better. Will now unhack, and hack GTM (?). #Patch Set 11 : YAS. Works about the same, but no more sets/multisets. Off to hack GTM. #Patch Set 12 : '' #Patch Set 13 : Change to match pending GTM patch update. #Patch Set 14 : '' #Patch Set 15 : Some stability and modality improvements. #Patch Set 16 : propset #Patch Set 17 : Rebased to ToT. #Patch Set 18 : '' #Patch Set 19 : '' #Patch Set 20 : Merged ToT (not even compiled yet). #Patch Set 21 : Painfully (but hopefully correctly) merged ToT. #Messages
Total messages: 8 (0 generated)
|