Closed Bug 1616625 Opened 4 years ago Closed 4 years ago

Error when calling tabs.update with {active: true}

Categories

(GeckoView :: Extensions, defect, P2)

Unspecified
All

Tracking

(firefox75 fixed)

RESOLVED FIXED
mozilla75
Tracking Status
firefox75 --- fixed

People

(Reporter: csadilek, Assigned: agi)

References

(Blocks 1 open bug)

Details

(Whiteboard: [geckoview:m75])

Attachments

(3 files)

We ran into this when testing uBlock. The logger / zap / picker buttons in the action popup try to find and select an existing tab before opening a new one.

Bug in Fenix: https://github.com/mozilla-mobile/fenix/issues/8467

The error:

BrowserApp.selectTab is not a function ext-tabs.js:408
    update chrome://geckoview/content/ext-tabs.js:408
    update self-hosted:878
    result resource://gre/modules/ExtensionParent.jsm:1106
    withPendingBrowser resource://gre/modules/ExtensionParent.jsm:737
    result resource://gre/modules/ExtensionParent.jsm:1106
    callAndLog resource://gre/modules/ExtensionParent.jsm:1068
    recvAPICall resource://gre/modules/ExtensionParent.jsm:1105
    AsyncFunctionNext self-hosted:696

We also see:

Error: Invalid tab ID: 10069
Blocks: 1543755
Summary: Error when calling tabs.update call with {active: true} → Error when calling tabs.update with {active: true}
See Also: → 1565536
Rank: 2
Whiteboard: [geckoview:m76]
Assignee: nobody → agi

Before this patch, the TabDelegate was "special" as in it had just one global
delegate that receives events for all extensions and sessions. This was done to
allow mochitests to call tabs.create and tabs.remove.

This hack is no longer needed as now we can notify the embedding layer that a
new extension has been installed and we have a way to list currently installed
extensions.

This patch makes TabDelegate behave the same as the other delegates
(ActionDelegate and MessageDelegate) and will allow further simplications of
the WebExtension Delegate code.

Pushed by asferro@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a1eb1e65a239
Move Extension session delegates to SessionController. r=snorp,esawin
https://hg.mozilla.org/integration/autoland/rev/c0e05f4f2db2
Move TabDelegate to be per-WebExtension and per-GeckoSession. r=mixedpuppy,snorp,esawin
https://hg.mozilla.org/integration/autoland/rev/b43ca6507c9a
Implement active parameter for tabs.create and update. r=mixedpuppy,snorp,esawin
Flags: needinfo?(agi)
Backout by shindli@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5c3cd1d623f1
Backed out 3 changesets for causing xpcshell failures in xpcshell.ini:toolkit/components/extensions/test/xpcshell/test_csp_custom_policies.js CLOSED TREE
Pushed by asferro@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7772ff1517fd
Move Extension session delegates to SessionController. r=snorp,esawin
https://hg.mozilla.org/integration/autoland/rev/9289e0f9f2c6
Move TabDelegate to be per-WebExtension and per-GeckoSession. r=mixedpuppy,snorp,esawin
https://hg.mozilla.org/integration/autoland/rev/0636bd0463dd
Implement active parameter for tabs.create and update. r=mixedpuppy,snorp,esawin

Thanks.

Flags: needinfo?(agi)
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla75
Whiteboard: [geckoview:m76] → [geckoview:m75]
Regressions: 1620364
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: