Add `ASRouterTargeting` about non-browser default handlers, including `isDefaultPDFHandler`
Categories
(Firefox :: Messaging System, enhancement, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox112 | --- | verified |
People
(Reporter: nalexander, Assigned: beth)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [fidedi-pdf])
Attachments
(1 file)
ASRouterTargeting
knows if Firefox is the default browser, but not if Firefox is the default handler for other filetypes, such as isDefaultPDFHandler
.
I don't know how general this should be; it would be nice if we exposed the entire list of recognized handlers, a la BrowserContentHandler.sys.mjs, but I see that we're not even recording telemetry for defaults beyond PDF (see BrowserGlue.sys.mjs).
This is probably Windows-only. In addition, we might want to include a special bit about whether the existing default handler is a recognized browser, since we want to treat other browsers differently than general purpose readers such as Acrobat Reader or Nitro PDF.
Reporter | ||
Updated•2 years ago
|
Updated•2 years ago
|
Comment 1•2 years ago
|
||
This would most likely be used along with bug 1805509 as part of an upcoming experiment. If this is exposed more broadly as any handler instead of just pdf, we could have the targeting return an object keyed on those file extensions? E.g.,
isDefaultHandler: {
html: true,
pdf: true,
}
Then target on isDefaultHandler.pdf
or probably negated for this experiment.
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Comment 2•2 years ago
|
||
(In reply to Ed Lee :Mardak from comment #1)
This would most likely be used along with bug 1805509 as part of an upcoming experiment. If this is exposed more broadly as any handler instead of just pdf, we could have the targeting return an object keyed on those file extensions? E.g.,
isDefaultHandler: { html: true, pdf: true, }
Then target on
isDefaultHandler.pdf
or probably negated for this experiment.
:nalexander, what do you think about this? This format would break your implementation of getEnvironmentSnapshot()
due to having promises nested inside an object. Should getEnvironmentSnapshot be updated to recursively resolve -- or walk a single level deep if the object it would resolve is not a promise?
Reporter | ||
Comment 3•2 years ago
|
||
(In reply to Barret Rennie [:barret] (they/them) from comment #2)
(In reply to Ed Lee :Mardak from comment #1)
This would most likely be used along with bug 1805509 as part of an upcoming experiment. If this is exposed more broadly as any handler instead of just pdf, we could have the targeting return an object keyed on those file extensions? E.g.,
isDefaultHandler: { html: true, pdf: true, }
Then target on
isDefaultHandler.pdf
or probably negated for this experiment.:nalexander, what do you think about this?
This looks good to me. Please don't forget about the extra bit of "default PDF handler is a known-browser", the experiment wants that.
This format would break your implementation of
getEnvironmentSnapshot()
due to having promises nested inside an object. Should getEnvironmentSnapshot be updated to recursively resolve -- or walk a single level deep if the object it would resolve is not a promise?
I see no immediate problem with either. Recursively resolving probably makes the most sense?
Assignee | ||
Comment 4•2 years ago
|
||
Updated•2 years ago
|
Updated•2 years ago
|
Comment 6•2 years ago
|
||
Backed out for causing for causing node newtab failures
Backout link: https://hg.mozilla.org/integration/autoland/rev/ba36dea109e7851e4c392dc57e6c7aada3790fbf
Assignee | ||
Updated•2 years ago
|
Comment 8•2 years ago
|
||
Backed out for causing browser-chrome and xpc failures
Backout link: https://hg.mozilla.org/integration/autoland/rev/8ff160f42b181a2ccd2be11ca7a632c271c1b639
Assignee | ||
Updated•2 years ago
|
Comment 10•2 years ago
|
||
bugherder |
Comment 11•2 years ago
|
||
This enhancement was part of the work done on the QA-1801 request. Considering this I am marking it as Verified.
Description
•