You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Replace our use of extraParameters for the tabs.onUpdated event, since that isn't supported in Chrome and isn't (yet) polyfilled. This should also be trivial.
Add indirection to our use of contentScripts.register in Firefox and use the new scripting.registerContentScript when it lands in Chrome. This should also be trivial, once the Chrome changes land. See: https://bugs.chromium.org/p/chromium/issues/detail?id=1054624
Add support for pages that load from the back/forward cache. We currently use unload listeners on all pages, which blocks the bfcache in Firefox—but not in Chrome or Safari. This probably just requires listening for the pageshow event in the pageManager content script and firing a pageVisitStart event if there isn't an active page visit, and listening for the pagehide event instead of the unload event.
Conduct our own webpage readability check, rather than relying on the Firefox-specific isArticle tab property. This should be straightforward.
Persist WebScience state in the background environment. This is currently trivial with Manifest v2, but could become a pain in Manifest v3.
Lots of testing, especially for components that might interact with browser-specific race conditions (e.g., pageManager and pageTransition). This will be difficult, but we have to do it anyway.
The text was updated successfully, but these errors were encountered:
* [ ] Add support for pages that load from the back/forward cache. We currently use `unload` listeners on all pages, which blocks the bfcache in Firefox—but not in Chrome or Safari. This probably just requires listening for the `pageshow` event in the `pageManager` content script and firing a `pageVisitStart` event if there isn't an active page visit, and listening for the `pagehide` event instead of the `unload` event.
From my testing so far and discussion and discussion in #addons on matrix, there isn't a reliable way to do this from the content script. I tested with unload which fired unreliably, also with pagehide and visibilitychange which didn't fire at all.
@rhelmer and I discussed what's needed for implementing cross-browser compatibility with Chrome (and Edge). A few items...
browser.*
APIs. This should be trivial with Mozilla's WebExtensions polyfill: https://github.com/mozilla/webextension-polyfillextraParameters
for thetabs.onUpdated
event, since that isn't supported in Chrome and isn't (yet) polyfilled. This should also be trivial.contentScripts.register
in Firefox and use the newscripting.registerContentScript
when it lands in Chrome. This should also be trivial, once the Chrome changes land. See: https://bugs.chromium.org/p/chromium/issues/detail?id=1054624unload
listeners on all pages, which blocks the bfcache in Firefox—but not in Chrome or Safari. This probably just requires listening for thepageshow
event in thepageManager
content script and firing apageVisitStart
event if there isn't an active page visit, and listening for thepagehide
event instead of theunload
event.isArticle
tab property. This should be straightforward.pageManager
andpageTransition
). This will be difficult, but we have to do it anyway.The text was updated successfully, but these errors were encountered: