Sykje yn Support

Mij stipescams. Wy sille jo nea freegje in telefoannûmer te beljen, der in sms nei ta te stjoeren of persoanlike gegevens te dielen. Meld fertochte aktiviteit mei de opsje ‘Misbrûk melde’.

Learn More

Dizze konversaasje is argivearre. Stel in nije fraach as jo help nedich hawwe.

Funcions `loadOneTab` and `loadURI` in 2023 in Firefox Experimental API?

  • 2 antwurd
  • 0 hawwe dit probleem
  • 26 werjeftes
  • Lêste antwurd fan look997

more options

I am using the Experimental API in my private Firefox extension.

So far, I've been using Firefox 102 ESR, but I'm planning to switch to Firefox ESR 115. There's already a Firefox 115 Beta available, so I've started testing it with my private extension.

So far, I've been using internal Firefox functions like `loadOneTab` and `loadURI` and it worked very well.

I used the `loadOneTab` function like this:

``` const placesURL = "chrome://browser/content/places/places.xhtml"; window.gBrowser.loadOneTab( placesURL, { inBackground: false, allowThirdPartyFixup : true, relatedToCurrent : true, triggeringPrincipal : services.scriptSecurityManager.getSystemPrincipal() } ); ```

But the `loadOneTab` function no longer exists at all in Firefox's internal API. What should I replace it with?

I found the function `_createTab`:

``` // window.gBrowser._createTab({ uriString: placesURL }); ```

But the `_createTab` function returns an error:

``` Uncaught Error: UserInteraction with id "browser.tabs.opening" was not initialized ```

...I guess this is by security to make this function called only by user action? And I call this function inside `async function`.

Is it somehow possible to open a new tab from the Experimental API in Firefox 115 beta? I need this very badly. Really very much.

---

I used the `loadURI` function like this:

``` window.gBrowser.selectedBrowser.loadURI(linkGo, {triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()}); ```

The `loadURI` function appears to still be available in Firefox's internal API, but returns an error like this:

``` TypeError: 'uri' member of CancelContentJSOptions is not an object. RemoteWebNavigation.sys.mjs:28:41 ```

How to overcome this error?

I am using the Experimental API in my private Firefox extension. So far, I've been using Firefox 102 ESR, but I'm planning to switch to Firefox ESR 115. There's already a Firefox 115 Beta available, so I've started testing it with my private extension. So far, I've been using internal Firefox functions like `loadOneTab` and `loadURI` and it worked very well. I used the `loadOneTab` function like this: ``` const placesURL = "chrome://browser/content/places/places.xhtml"; window.gBrowser.loadOneTab( placesURL, { inBackground: false, allowThirdPartyFixup : true, relatedToCurrent : true, triggeringPrincipal : services.scriptSecurityManager.getSystemPrincipal() } ); ``` But the `loadOneTab` function no longer exists at all in Firefox's internal API. What should I replace it with? I found the function `_createTab`: ``` // window.gBrowser._createTab({ uriString: placesURL }); ``` But the `_createTab` function returns an error: ``` Uncaught Error: UserInteraction with id "browser.tabs.opening" was not initialized ``` ...I guess this is by security to make this function called only by user action? And I call this function inside `async function`. Is it somehow possible to open a new tab from the Experimental API in Firefox 115 beta? I need this very badly. Really very much. --- I used the `loadURI` function like this: ``` window.gBrowser.selectedBrowser.loadURI(linkGo, {triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()}); ``` The `loadURI` function appears to still be available in Firefox's internal API, but returns an error like this: ``` TypeError: 'uri' member of CancelContentJSOptions is not an object. RemoteWebNavigation.sys.mjs:28:41 ``` How to overcome this error?

Alle antwurden (2)

more options

Hi

I recommend that you ask about this on the dedicated add-ons forum at:

https://discourse.mozilla.org/c/add-ons/35

more options

Keazen oplossing