Opened 7 months ago

Last modified 7 months ago

#28609 needs_information defect

browser.windows.create(createData) sometimes not displayed

Reported by: NemoVoid Owned by: tbb-team
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-usability
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

This concerns browser extensions - bug appears only in the TOR browser not firefox 60.3.0esr. A new window created using browser.windows.create does not display its html contents when the window being created is of type 'panel', 'detached_panel' or 'popup' - unless a refresh is forced by manually changing its size.

How to reproduce bug:
1) Take the source for 'windows manipulator'
https://github.com/mdn/webextensions-examples/tree/master/window-manipulator
2)Create a file call it (say) hello.html in the source directory eg
<!DOCTYPE html>
<html>

<head>

<meta charset="utf-8">

</head>

<body>

<h1>Hello World!</h1>

</body>
</html>
3)Change the window.js so the createData contains the url for hello.html eg
let createData = {

type: "panel",url:"hello.html",

};

similarly for the other windows types.
4)Only the normal window works. The others are blank until you resize the window. Though the incognito window never shows anything. (You might want to check the incognito flag in the returned windows.Window object I have a feeling its not set properly).

5)I've tried programatically to get it to display automatically but without success. Only by grabbing one of the sides of the window and changing it does it suddenly display its contents.

Reference:
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/windows/create

System:
Windows 7 Ultimate; Tor browser 8.0.3

Child Tickets

Change History (3)

comment:1 Changed 7 months ago by nickm

Component: Core Tor/TorApplications/Tor Browser
Owner: set to tbb-team

comment:2 Changed 7 months ago by gk

Keywords: tbb-usability added
Status: newneeds_information

Hm, I wonder which of our patches causes the problem here. Does flipping the privacy.firstparty.isolate and/or privacy.resistFingerprinting to false solve this bug? Otherwise it might be worth checking other prefs we set in https://gitweb.torproject.org/tor-browser.git/tree/browser/app/profile/000-tor-browser.js?h=tor-browser-60.3.0esr-8.5-1 in order to find out which one is problematic here.

comment:3 Changed 7 months ago by NemoVoid

I changed every setting (in about:config) listed in that file on git, to match the setting on firefox 60.3.0 esr. The exception, which were not changed are:
startup.homepage_welcome_url, startup.homepage_override_url, extensions.hotfix.id, browser.download.manager.retention, datareporting.healthreport.about.reportUrl, datareporting.healthreport.about.reportUrlUnified, browser.syncPromoViewsLeftMap, browser.pocket.api, browser.pocket.site, general.appname.override, general.appversion.override, general.oscpu.override, general.platform.override, general.productSub.override, general.buildID.override, browser.startup.homepage_override.buildID, general.useragent.vendor, general.useragent.vendorSub, intl.charset.default, network.security.ports.banned, network.gio.supported-protocols, media.gmp-manager.url.override, network.file.path_blacklist, extensions.bootstrappedAddons, extensions.enabledAddons, extensions.enabledItems, xpinstall.whitelist.add, xpinstall.whitelist.add.36, extensions.legacy.exceptions, extensions.webextensions.restrictedDomains, browser.uiCustomization.state, browser.search.defaultenginename, browser.search.order.extra.1, browser.search.order.extra.2, dom.securecontext.whitelist_onions, browser.onboarding.newtour, browser.onboarding.updatetour, browser.onboarding.skip-tour-button.hide and all parameters beginning font.*

In general those settings which made no sense to change and where there wasn't an equivalent parameter in FF I left alone.The browser still ran but the error was still present.

Interestingly the browser knows that there should be text displayed because it changes the mouse pointer when you hover over where it should be it. I thought at one time it might be getting displayed as white on white, so I set the style of text to red - it still didn't display it.

I also noticed that extensions.pendingOperations changes its type in the file on git - it's set as an integer and then as a string - I assume it's not a typo in the name.

Note: See TracTickets for help on using tickets.