Commit Graph

112 Commits

Author SHA1 Message Date
Brian
0b327f0974 Bug 1788925 - Convert AboutReader from JSM to ESM. r=Gijs.
Differential Revision: https://phabricator.services.mozilla.com/D157034
2022-09-23 21:19:12 +00:00
Emilio Cobos Álvarez
0676d5d593 Bug 1780876 - Try to deal with DOM/widget state mismatch on macOS. r=robwu
The patch that that regressed this started using the widget state rather
than the DOM state to return full-screen. It seems on macOS they
sometimes can get out of sync, in the failure from comment 0 the window
is really full-screen.

We seemed to account for some of this in:

  https://searchfox.org/mozilla-central/rev/00e504083572d47f2199168f0f79c75c0ddaefb3/browser/components/extensions/test/browser/browser_ext_windows_create.js#31-36

Make sure we exit full-screen as appropriate if DOM thinks we're
fullscreen. This passes verify and at worst it should be harmless.

Differential Revision: https://phabricator.services.mozilla.com/D155353
2022-08-23 22:13:19 +00:00
Emilio Cobos Álvarez
bc40301982 Bug 1780680 - More cleanly return "normal" state for closed windows. r=mixedpuppy
It bit me in the dependent bug because bug, see the comment in:

  https://hg.mozilla.org/integration/autoland/rev/8bbec265ab8c

Differential Revision: https://phabricator.services.mozilla.com/D152480
2022-07-26 12:02:46 +00:00
Emilio Cobos Álvarez
b2f89efc95 Bug 1780372 - Fix a failure in browser_ext_sessions_getRecentlyClosed.js.
MANUAL PUSH: Trivial fixup CLOSED TREE
2022-07-22 02:18:43 +02:00
Emilio Cobos Álvarez
fa9bacd71f Bug 1780372 - Make extension APIs deal with async window state changes. r=mixedpuppy
Before my previous patch, the widget code lied, and always returned the
requested window state before it had actually happened. Instead, teach
the extension code to wait if necessary for the window state to be
effective.

Differential Revision: https://phabricator.services.mozilla.com/D152394
2022-07-21 23:04:08 +00:00
Oriol Brufau
ce0f675cd9 Bug 1764452 - Avoid tabs.onUpdated events for 'attention' when value doesn't change. r=Gijs,mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D143553
2022-04-21 08:30:07 +00:00
Rob Wu
1b1a03702b Bug 1764566 - Update API availability in MV3 r=mixedpuppy
- Remove unsupported tabs API definitions that are gone in MV3.
- Mark content script APIs (superseded by scripting APIs) as MV2-only.
- Re-enable extension.getBackgroundPage in MV2 since it makes sense with
  event pages, and we enabled runtime.getBackgroundPage in bug 1759308.
- Add tests that verify API availability in MV3.

Differential Revision: https://phabricator.services.mozilla.com/D143721
2022-04-17 16:43:50 +00:00
Tooru Fujisawa
845f7c0588 Bug 1762326 - Do not get information about a tab with empty history in browser.sessions.getRecentlyClosed. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D142526
2022-03-31 16:36:10 +00:00
Olli Pettay
fa2a63a0b8 Bug 1718532, don't try to create tabId if the relevant window is already closing, r=rpl
The leak I can reproduce locally somewhat often is coming from
https://searchfox.org/mozilla-central/rev/08c493902519265d570250c8e7ce575c8cd6f5b5/browser/components/extensions/test/browser/browser_ext_windows_create_cookieStoreId.js#308,319-321
When adopting a tab to a new window, there is internally a frameloader swap.
The initial frameloader is loading about:blank and after the old window has started to close
https://searchfox.org/mozilla-central/rev/08c493902519265d570250c8e7ce575c8cd6f5b5/browser/actors/AboutReaderParent.jsm#156 triggers a call to
extension code where getId is called. The failure becomes almost perma-fail with bug 1727829.

Will push this with bug 1727829 to tryserver.

Differential Revision: https://phabricator.services.mozilla.com/D124958
2021-09-08 21:29:54 +00:00
Tomislav Jovanovic
007d45809d Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-31 23:15:17 +00:00
criss
952851eac2 Backed out changeset a269440d7e21 (bug 1708243) for causing failures on mochitest/test_ext_tabs_create.html. CLOSED TREE 2021-08-31 23:22:19 +03:00
Tomislav Jovanovic
f3de0ca755 Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-31 18:48:17 +00:00
Csoregi Natalia
042ea59c67 Backed out changeset f966b7898d9f (bug 1708243) for geckoview failures. CLOSED TREE 2021-08-31 18:40:20 +03:00
Tomislav Jovanovic
03e6dbf364 Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-31 11:46:11 +00:00
Marian-Vasile Laza
59ce1ed270 Backed out changeset 1395c54325a7 (bug 1708243) for causing gv-junit failures. CLOSED TREE 2021-08-31 06:53:43 +03:00
Tomislav Jovanovic
2fd100c9da Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-31 00:21:38 +00:00
Marian-Vasile Laza
98586de04c Backed out changeset 38cfb452cecf (bug 1708243) for causing mochitest failures on test_ext_tabs_sendMessage.html. CLOSED TREE 2021-08-31 02:40:51 +03:00
Tomislav Jovanovic
17daa8e5d9 Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-30 22:54:47 +00:00
Narcis Beleuzu
123fc4c3ae Backed out changeset e49874b751fa (bug 1708243) for bc failures on browser_shims.js . CLOSED TREE 2021-08-25 19:23:32 +03:00
Tomislav Jovanovic
f9181cbf8a Bug 1708243 - Part 2: stop using sender data from the child process r=robwu,agi
Differential Revision: https://phabricator.services.mozilla.com/D123351
2021-08-25 12:00:34 +00:00
Tomislav Jovanovic
d325696b9f Bug 1708243 - Part 1: Stop using FrameData for windowId in the child process r=robwu
Also remove windowId getters from Context classes, as they're largely unused.

Differential Revision: https://phabricator.services.mozilla.com/D123220
2021-08-23 19:50:37 +00:00
Doug Thayer
422c3e0585 Bug 1546847 - Backed out bug 1546847 and related revs r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D121898
2021-08-05 18:34:56 +00:00
Doug Thayer
1099a0fe75 Bug 1546847 - Cache tab icons in worker to avoid serialization r=kashav
Read this as a first step. It's the easiest first step I could think of to
both reduce the quantity of stuff we serialize and ship to the worker as
well as to spread it out over multiple messages.

Anyway, the motivation is pretty simple. Taking a look at a session store
file on disk, a giant chunk of it is base64 encoded tab icons. I suspect
that in many cases these are not distinct. For my session store it's about
90% the same repeated searchfox icon over and over.

So what I did was I changed the "image" property of the tab to be a reference
into a deduplicated cache of objects (in this case strings). Whenever the tab
icon changes, we drop a reference to its cache entry and add a reference to a
new or existing entry. Each time a cache entry is added or deleted, we send
a message to the worker to update its own copy of the cache. This does
represent a memory hit, since the cache is maintained on the worker as well as
the main thread, but I think it's going to be minor, and it's only in one
process. Given the deduplication there is the possibility of an overall
reduction in memory use? This needs more testing.

Once it comes time to write the session data to disk, we send the payload with
"image" entries referencing IDs in the cache. When the worker gets the message
to write, it adds its internal cache to the object, which it then serializes
to JSON and writes to disk as usual.

When reading the data off disk, we take the cache items that had been written
and we slowly populate the worker's internal cache with them (to not overload
during startup with a giant message). And when populating tab icons of tabs in
the tab strip, we look up the image in the main thread copy of the cache. Also,
if we cannot find the entry, we assume that the image is just the raw
representation of the image. This ensures that we interpret a sessionstore file
from prior to this patch correctly.

Additionally, since we have the cache duplicated on both threads, if the worker
gets terminated for some reason, we rehydrate it with the snapshot of the cache
from when we noticed it was a problem.

I suspect some tests will need to be updated, or maybe many tests. However I
wanted to throw this patch past someone with more knowledge of the session
store's inner workings before throwing a bunch of time at that.

Differential Revision: https://phabricator.services.mozilla.com/D114196
2021-08-02 16:17:30 +00:00
Karim Rahal
ee161952b3 Bug 1690613 - Allow access to url/title/favIconUrl with extension host permission in Tab.convertFromSessionStoreClosedData; add unit test. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D119735
2021-07-13 18:07:43 +00:00
Richa Sharma
dec5980775 Bug 1683058 - Remove unused isPrivate from ext-browser.js. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D104055
2021-04-20 12:59:26 +00:00
Richa Sharma
9eed107905 Bug 1683058 - Change tabs API internals to support container access. r=robwu,rpl
Differential Revision: https://phabricator.services.mozilla.com/D100232
2021-04-20 12:59:26 +00:00
Neil Deakin
136059f4c7 Bug 1591469, move reader mode to use JSWindowActor instead of message managers, r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D71452
2020-05-13 19:22:20 +00:00
Bogdan Tara
c4f6e12333 Backed out changeset 3a50d857d097 (bug 1591469) for newtab failures complaining about AboutReaderParent CLOSED TREE 2020-05-12 06:13:10 +03:00
Neil Deakin
a9bcbff498 Bug 1591469, move reader mode to use JSWindowActor instead of message managers, r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D71452
2020-05-12 01:06:51 +00:00
Zibi Braniecki
19ebcdc58b Bug 1602808 - Revert Window Title to use DTD. r=fluent-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D68661
2020-04-01 18:44:03 +00:00
Narcis Beleuzu
5e4aeca080 Backed out changeset 16d82f57e0fb (bug 1602808) for bc failures on browser_privatebrowsing_windowtitle.js . CLOSED TREE 2020-04-01 10:24:08 +03:00
Zibi Braniecki
5914374212 Bug 1602808 - Revert Window Title to use DTD. r=fluent-reviewers,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D68661
2020-03-31 23:52:03 +00:00
Agi Sferro
603028c584 Bug 1621385 - Account for unaccesible tabs in mobile's WindowTracker.getAll. r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D66310
2020-03-13 18:12:08 +00:00
Shane Caraveo
b7031396e4 Bug 1586612 properly handle tab events that happen prior to firing tabs.onCreated r=rpl,Gijs
Ensure that our delay in firing the onCreated (TabOpen) event does not result
in other events happening prior to onCreated.

Differential Revision: https://phabricator.services.mozilla.com/D55865
2019-12-13 20:17:39 +00:00
Zibi Braniecki
d441077c48 Bug 1591328 - Migrate the window title to Fluent. r=fluent-reviewers,Gijs,mixedpuppy
Depends on D53775

Differential Revision: https://phabricator.services.mozilla.com/D53776
2019-11-21 19:16:15 +00:00
Brendan Dahl
ef30c33394 Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486
2019-11-05 17:56:28 +00:00
Mihai Alexandru Michis
5803a050c4 Backed out 2 changesets (bug 1470510) for causing bustages in widget/cocoa/nsChildView.mm CLOSED TREE
Backed out changeset a343f30c34a3 (bug 1470510)
Backed out changeset 4da64790094d (bug 1470510)
2019-11-05 09:24:26 +02:00
Brendan Dahl
b484de8fe7 Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486
2019-11-04 23:37:31 +00:00
Dorel Luca
bcbec745b9 Backed out 2 changesets (bug 1470510) for build bustage on /build/src/widget/cocoa/nsChildView.mm. CLOSED TREE
Backed out changeset 5967bf633574 (bug 1470510)
Backed out changeset 067a556bb614 (bug 1470510)
2019-11-04 19:18:56 +02:00
Brendan Dahl
4f87b88cc6 Bug 1470510 - Rename nsXULWindow and nsIXULWindow to AppWindow and nsIAppWindow. r=smaug
nsXULWindow is no longer XUL specific and is somewhat confusing name.

Differential Revision: https://phabricator.services.mozilla.com/D51486
2019-11-04 16:52:35 +00:00
gfmcknight
7733076174 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu,Gijs
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-10-28 15:33:11 +00:00
Trishul
6fecdccde4 Bug 1447807 - Error: browser.ownerGlobal is null r=mixedpuppy
Error: browser.ownerGlobal is null

Differential Revision: https://phabricator.services.mozilla.com/D50578
2019-10-25 18:19:30 +00:00
Bogdan Tara
ce5d659eea Backed out changeset 6c464eede88a (bug 1405031) for browser_ext_pageAction_click_types.js failures CLOSED TREE 2019-09-20 01:03:17 +03:00
gfmcknight
c50b0ea139 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-09-19 17:06:22 +00:00
Coroiu Cristina
fefeba975d Backed out changeset 74f522fc33ae (bug 1405031) for browser-chrome failures at browser/components/extensions/test/browser/browser_ext_browserAction_click_types.js 2019-09-13 03:59:58 +03:00
gfmcknight
24a36c3701 Bug 1405031 - Add middle-click and click modifiers to browserAction r=robwu
and pageActions.

Before this change, browserActions and pageActions did not trigger
onClick events when middle-clicked, and no information on the button or
any modifiers were passed in the onClick event. With this change, middle
clicking triggers an event, and a clickData object is passed in the
onClick event, with the button and a list of modifiers.

Differential Revision: https://phabricator.services.mozilla.com/D41492
2019-09-12 20:41:24 +00:00
Sylvestre Ledru
f4d7743944 Bug 1562642 - Part 3 - Add missing MPL2 headers in browser & toolkit r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D37217
2019-07-10 12:03:37 +00:00
Andreea Pavel
1ec8be7299 Backed out changeset 3d59cb02b6ff (bug 1562642) for eslint failure on a CLOSED TREE 2019-07-10 14:44:29 +03:00
Sylvestre Ledru
48a94b058e Bug 1562642 - Part 3 - Add missing MPL2 headers in browser & toolkit r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D37217
2019-07-10 11:15:25 +00:00
Victor Porof
bf2b98e8c1 Bug 1561435 - Fix linting errors for browser/, r=standard8
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D35950
2019-06-28 20:02:37 +02:00