Reify filepicker commands in preparation for sending them over IPC
Categories
(Core :: Widget: Win32, task, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox115 | --- | fixed |
People
(Reporter: rkraesig, Assigned: rkraesig)
References
(Blocks 1 open bug)
Details
Attachments
(4 files)
As part of work for bug 1671770, separate deciding what to do with an IFileDialog from actually doing it. This will allow performing the former in the main process and the latter in a utility process.
This should involve no functional changes, just a refactoring of the existing code.
| Assignee | ||
Comment 1•3 years ago
|
||
In preparation for moving the file picker dialog's invocation out-of-
process (bug 1671770), create an IPC-compatible Command type -- a
reification of the method calls we actually perform to set up the file
dialog -- along with supporting functionality to apply those commands to
an IFileDialog, as needed.
No functional changes, as this type isn't yet created by anything:
that's left for a later commit in this patchset.
| Assignee | ||
Comment 2•3 years ago
|
||
Perform some cleanup on nsFilePicker before refactoring to use the
Command type from the previous commit:
- Remove stray
typedefs/usings. - Remove an unused member
mFilterList. - Eliminate the private class
ComDlgFilterSpec, mostly replacing it
with a plainnsTArray.
Depends on D178202
| Assignee | ||
Comment 3•3 years ago
|
||
Convert nsFilePicker to use the Command structs introduced in the
first commit in this patchset. No functional changes -- this should be a
straight reorganization of internal code.
Additionally, remove from WinUtils the now-unused function
GetShellItemPath, whose functionality has been moved into Command's
associated functions' translation unit. (This function was added to
WinUtils in 2012 as part of supporting the Windows Vista file picker
(bug 718374). It's not overtly filepicker-specific, but in the past
eleven years, no other code has ever used it.)
Depends on D178203
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
| Assignee | ||
Comment 4•2 years ago
|
||
The one functional change in this patchset: if a name cannot be
extracted from any IShellItem during multiple-selection, fail the entire
operation instead of only quietly dropping the failed items.
(The vast majority of IShellItem instances have filesystem paths -- even
if they're shell-generated nonce paths, sometimes -- so there's not
likely to be any effective difference here for any end-user.)
Depends on D178204
Comment 6•2 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/f94b7ccda1c4
https://hg.mozilla.org/mozilla-central/rev/e6da2de25723
https://hg.mozilla.org/mozilla-central/rev/531f617ab483
https://hg.mozilla.org/mozilla-central/rev/d1510314ee22
Description
•