Open review in a tab on Firefox for Android, where there are no windows, and fit the popup to a phone screen #4
Labels
No labels
bug
documentation
enhancement
security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo-firefox#4
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The source of this extension is postulo/postulo-chromium, which carries two icon buttons in the popup's header (postulo/postulo-chromium#6), the list of captures that need review in the popup (postulo/postulo-chromium#7), and review itself in a bigger window or a tab of its own rather than in the popup (postulo/postulo-chromium#8). This issue is what that work needs on Firefox, and above all on Firefox for Android, where a second window cannot exist and, by both of Mozilla's accounts, the popup already fills the screen.
What the extension should do in Firefox
Firefox for Android has no windows. There is one window, and the browser cannot open or manipulate others; MDN's compatibility data lists
windowsas unsupported there. A “bigger dialog” window is therefore impossible on a phone, and the shared code must not callwindows.createwherewindowsis missing: there, whatever postulo/postulo-chromium#8 would open in its window opens in a tab. That is Postulo's review page (review_url) for a capture that has been sent, the extension's correction form for one that has not, and Postulo's “Add a listing” page from postulo/postulo-chromium#6.tabs.createworks there (from Firefox for Android 54), andopenCaptures()already uses it for the list page (src/lib/local.js:54-57). Nothing in the shared source callswindowstoday.The popup is already full screen there. MDN says the popup is shown as a normal page in a new tab; Extension Workshop, an overlay covering the browser until it is closed. Which one Firefox for Android 142 and later does is unchecked, and it matters:
src/style.css), andpopup.htmlhas no viewport line, wherecaptures.htmlhas one. How today's popup lays out on a phone is unchecked; 440 px is wider than many phone screens. The header buttons and the review list must fit the phone's width without sideways scrolling.readCurrentTab(),src/lib/browser.js:33-49). If the popup is itself a tab, that could be the popup rather than the posting, and the capture would be refused as not a web page; whether tapping the menu item grantsactiveTabthere is unchecked too. Nothing in either repository records a capture made on a phone.window.close(),src/popup.js:48); check that this also closes the full-screen popup on Android.No shortcut on Android. Firefox for Android has no
commands, so noAlt+Shift+P: the popup's capture button, in the header once postulo/postulo-chromium#6 lands, is the only way in.Firefox desktop has
windows.createwithtype: "popup"(since 45) and places the window bytopandleftfrom 109, below the extension's minimum of 140. Itsurlmust be absolute there (MDN's compatibility data: “'url' does not accept relative paths”), so the extension's own pages go throughruntime.getURL(), asopenCaptures()already does. MDN's Popups page says a popup opened from the extensions panel rather than the toolbar gets a fixed width (unchecked on current Firefox): the header buttons and the list must fit it too, a case #3's placement makes rarer.Decisions for this repository
windowsAPI itself (recommended: it is what is missing) or askruntime.getPlatformInfo()whetherosis"android". Either way, awindows.createthat fails falls back to a tab.popup.htmlthe viewport linecaptures.htmlhas (recommended: one popup for every browser); or, on Android, send the person straight to the list page in a tab instead of listing captures in the popup.tabs.update(Android 54), as postulo/postulo-chromium#8 proposes for its window (recommended; check that finding it needs no new permission), or open a new one each time, asopenCaptures()does today.Needs from the server
Nothing: review stays on Postulo's own pages, which exist today. Nothing is filed on postulo/postulo.
Done when
firefox-androidtarget loadsdist/onto a phone over adb): Postulo's review page, the extension's correction form and Postulo's “Add a listing” each open in a tab (Postulo's pages once signed in to Postulo there), and nothing callswindows; the popup, header buttons and review list included, fits the screen without sideways scrolling; the header's capture button reads the posting, not the popup; once a review is opened, the popup is gone. Which form the popup takes on 142 and later, tab or overlay, is written in the README.source.jsonpins a postulo-chromium commit that carries all of it.From the list of extension improvements of 2026-09-30.