Commit Graph

754173 Commits

Author SHA1 Message Date
R. Martinho Fernandes
4ecee0b048 Bug 1677866 - Report memory allocated by cert_storage crate r=keeler,emilio
Differential Revision: https://phabricator.services.mozilla.com/D107105
2021-04-19 22:12:56 +00:00
Jan Horak
b76e13fb5d Bug 1418792 Start drag operation on touch event on draggable area; r=stransky
Add support for dragging window on touch event.

Differential Revision: https://phabricator.services.mozilla.com/D112370
2021-04-19 22:12:01 +00:00
Kartikaya Gupta
570147386a Bug 1662379 - Add test. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D112501
2021-04-19 22:02:03 +00:00
Kartikaya Gupta
8a17781edb Bug 1662379 - Listen for events in bubble phase rather than capture phase. r=botond
The events being listened for here are mouse events, all of which
go through both the bubble and capture phases. It's not clear to
me why I originally added this listener in the capture phase; it
is more useful in the bubble phase because then it resolves the
promise after the event has triggered listeners registered on the
target element, rather than before.

Note also that prior to the promis-ification of this function, the
callback was called inside a setTimeout(0) wrapper, which would
automatically have deferred the callback to after the event dispatch
was completed. So technically the promis-ification of this function
introduced a functional change because now the promise can get
resolved before the event dispatch is complete, and in particular,
before listeners on the target element get run. This didn't affect
anything in practice because none of the existing callers actually
have such a listener on the target element. The next patch adds
one though, and exposed this behaviour difference when I rebased it
across the promis-ification change..

This patch removes the capture:true listener option, causing the
listener to get registered in the bubble phase.

Differential Revision: https://phabricator.services.mozilla.com/D112500
2021-04-19 22:02:02 +00:00
sotaro
619fd6d13e Bug 1706000 - Remove WebRenderBridgeParent::mPaused r=jnicol,gfx-reviewers
WebRenderBridgeParent::mPaused does not hold correct paused state, initial state of mPaused was always false. And CompositorBridgeParent already keeps correct paused state.

Differential Revision: https://phabricator.services.mozilla.com/D112518
2021-04-19 21:59:46 +00:00
Yoshi Cheng-Hao Huang
c63ca4d51c Bug 1705733 - Replace threads.empty() check with CanUseExtraThreads(). r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D112532
2021-04-19 21:59:33 +00:00
Narcis Beleuzu
058229227c Bug 1704293 - Fix lint on Codegen.py . CLOSED TREE 2021-04-20 01:48:50 +03:00
Florian Quèze
c7da51d612 Bug 1703583 - fix tests that keep waitForEvent or topicObserved promises pending, r=Gijs,zombie.
Differential Revision: https://phabricator.services.mozilla.com/D111116
2021-04-19 21:56:05 +00:00
Florian Quèze
c238647be5 Bug 1703583 - automatically reject waitForEvent, waitForCondition and topicObserved promises at the end of a browser test, r=Gijs.
Differential Revision: https://phabricator.services.mozilla.com/D111115
2021-04-19 21:56:04 +00:00
mr.robot
b9fba56cf6 Bug 1695396: Moved isFirstStub_ into IRGenerator in CacheIR.h r=iain
Differential Revision: https://phabricator.services.mozilla.com/D111649
2021-04-19 21:35:28 +00:00
Emma Malysz
a06d7c858b Bug 1703060, format tab manager panel for proton styles r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D112268
2021-04-19 20:22:48 +00:00
Harry Twyford
69f3cff169 Bug 1706127 - Introduce openContextMenuSubmenu devtools helper. r=mac-reviewers,mstange
Differential Revision: https://phabricator.services.mozilla.com/D112640
2021-04-19 20:01:37 +00:00
Emilio Cobos Álvarez
8e47e5abc2 Bug 1705877 - image-set() should influence intrinsic size of the image. r=dholbert,layout-reviewers
https://drafts.csswg.org/css-images-4/#image-set-notation has:

> [...] it also specifies the image’s natural resolution, overriding any other
> source of data that might supply a natural resolution.

Astounding that there was literally no WPT for this at all. I added three: one
for backgrounds, one for list-style-image, and one for `content`. Cursor is not
handled on this patch because that one requires a fair amount of extra work.

Differential Revision: https://phabricator.services.mozilla.com/D112474
2021-04-19 19:55:27 +00:00
Tom Schuster
ca0d2c502e Bug 1705977 - Add more monochrome settings to CUPS. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D112526
2021-04-19 19:53:02 +00:00
Tom Schuster
a137d1ce39 Bug 1704293 - Use Maybe<PropertyDescriptor> for GetOwnPropertyOp. r=jandem
Also switches the "default" GetOwnPropertyDescriptor implementation to Maybe<PropertyDescriptor>.

Differential Revision: https://phabricator.services.mozilla.com/D112371
2021-04-19 19:51:59 +00:00
Tom Schuster
b728526ade Bug 1704293 - Use Maybe<PropertyDescriptor> for BaseProxyHandler::getOwnPropertyDescriptor in DOM and XPConnect. r=jandem,smaug
Differential Revision: https://phabricator.services.mozilla.com/D112037
2021-04-19 19:51:59 +00:00
Tom Schuster
3ad7d3318b Bug 1704293 - Use Maybe<PropertyDescriptor> for BaseProxyHandler::getOwnPropertyDescriptor in js/. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D111730
2021-04-19 19:51:58 +00:00
Agi Sferro
431a0117b0 Bug 1704194 - Add non-about:blank test to tabs_create_cookieStoreId. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D112228
2021-04-19 19:42:40 +00:00
Agi Sferro
15db873142 Bug 1704194 - Use appropriate principal when creating new tabs. r=aklotz,robwu,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D112101
2021-04-19 19:42:39 +00:00
Jason Orendorff
afe498ed92 Bug 1662559 - Part 20: Tweak some comments in NameOpEmitter.h. r=arai
Depends on D108301

Differential Revision: https://phabricator.services.mozilla.com/D108302
2021-04-19 19:28:11 +00:00
Jason Orendorff
c3249f07a1 Bug 1662559 - Part 19: Emit DeclarationKind::PrivateName declarations and use all the optimized paths in PrivateOpEmitter. r=arai
At the same time, the initialization and storage of private methods is changed
to what the PrivateOpEmitter expects.

There are some barely-observable differences in behavior, resulting in two jit-test changes:

*   fields/bug1683784.js - An error message changed. Not really better or worse.

*   js/src/jit-test/tests/parser/script-source-extent.js - The debugger is able
    to observe initializers as individual scripts. We are no longer using
    initializers for private methods that can be optimized, and the debugger
    therefore observes the change.  I adjusted the test to expect the new
    behavior.

All js/src/tests pass.

Depends on D108300

Differential Revision: https://phabricator.services.mozilla.com/D108301
2021-04-19 19:28:11 +00:00
Jason Orendorff
a8f5d32e87 Bug 1662559 - Part 18: Remove all support for private members from ElemOpEmitter. r=arai
Depends on D108299

Differential Revision: https://phabricator.services.mozilla.com/D108300
2021-04-19 19:28:10 +00:00
Jason Orendorff
af06f97c61 Bug 1662559 - Part 17: Change BytecodeEmitter to use the new PrivateOpEmitter class. r=arai
Depends on D108298

Differential Revision: https://phabricator.services.mozilla.com/D108299
2021-04-19 19:28:10 +00:00
Jason Orendorff
10dffc1a2e Bug 1662559 - Part 16: Add PrivateOpEmitter, based on PropOpEmitter. r=arai
Depends on D108297

Differential Revision: https://phabricator.services.mozilla.com/D108298
2021-04-19 19:28:10 +00:00
Jason Orendorff
755d9c5c9e Bug 1662559 - Part 15: Add AST node types for private member access expressions (obj.#member). r=arai
The new parse nodes then need to be handled throughout the BytecodeEmitter. No
change in behavior.

Depends on D108296

Differential Revision: https://phabricator.services.mozilla.com/D108297
2021-04-19 19:28:09 +00:00
Jason Orendorff
3db4301f3e Bug 1662559 - Part 14: Minor refactor for BytecodeEmitter::emitSetOrInitializeDestructuring. r=arai
The diff is a mess, but this is very straightforward--we have a combination of
if-statements and a switch that could just be a single switch.

Depends on D108295

Differential Revision: https://phabricator.services.mozilla.com/D108296
2021-04-19 19:28:09 +00:00
Matthew Gaudet
8f80d4fb4c Bug 1662559 - Part 13: Disallow invocation of private methods inside of evalInFrame r=arai
In order to correctly support this with the optimized storage for methods we
would need new bytecode like GetAliasedVar which is able to traverse
non-EnvironmentObject environments like DebugEnvironmentProxy.

Unfortunately, for safety this means we will ultimately disable this for a number of
different private field and accessor invocations.

Differential Revision: https://phabricator.services.mozilla.com/D109402
2021-04-19 19:28:08 +00:00
Matthew Gaudet
0e4955e1f7 Bug 1662559 - Part 12: Modify effectiveScopePrivateFieldCache to store NameLocations as well. r=arai
By storing NameLocations we also get a BindingKind, which allows us to disambiguate between
PrivateMethods and Synthetics.

Differential Revision: https://phabricator.services.mozilla.com/D109401
2021-04-19 19:28:08 +00:00
Jason Orendorff
7b26efc077 Bug 1662559 - Part 11: Move .privateBrand to a fixed location and add BytecodeEmitter::lookupPrivate() to find it. r=arai
Depends on D108294

Differential Revision: https://phabricator.services.mozilla.com/D108295
2021-04-19 19:28:08 +00:00
Jason Orendorff
55b0d43bc5 Bug 1662559 - Part 10: Propagate BindingKind::PrivateMethod to scope data. r=arai
This would cause private methods to be marked as such on scopes, except that
the parser still declares them as `DeclarationKind::Synthetic` for now.

Depends on D108293

Differential Revision: https://phabricator.services.mozilla.com/D108294
2021-04-19 19:28:07 +00:00
Jason Orendorff
a5daf64dea Bug 1662559 - Part 9: Migrate all ClassBodyScope bindings to be Synthetic. r=arai
This affects bytecode, as Synthetic bindings do not get TDZ checks.

This patch also tightens up some assertions when creating ScopeData. There are
several methods that create ScopeData, and they had gotten out of sync. The
assertions check that the ScopeData is not silently dropping bindings that were
present in ParseContext::Scope::declared_.

Depends on D108292

Differential Revision: https://phabricator.services.mozilla.com/D108293
2021-04-19 19:28:07 +00:00
Jason Orendorff
c84b4481e3 Bug 1662559 - Part 8: Add BindingKind::PrivateMethod. r=arai
This is how the frontend will later identify private methods in order to emit
special bytecode.

Depends on D108291

Differential Revision: https://phabricator.services.mozilla.com/D108292
2021-04-19 19:28:06 +00:00
Jason Orendorff
c892c5bda6 Bug 1662559 - Part 7: Add BindingKind::Synthetic, a kind of binding for pseudo-bindings. r=arai
This is currently used only by the bindings in a ClassBodyScope.

The behavior of these bindings is like Var bindings. There is no longer a TDZ
check, and we don't bother marking them as Uninitialized. So the special case
introduced in bug 1683746, peeking at the binding name to see if we should skip
the TDZ check, is no longer needed.

Depends on D108290

Differential Revision: https://phabricator.services.mozilla.com/D108291
2021-04-19 19:28:06 +00:00
Jason Orendorff
d6362b6fc0 Bug 1662559 - Part 6: Stamp the private brand on instances. r=arai
This adds a hasPrivateBrand bit to the MemberInitializers struct in the
stencil. It is necessary to persist this bit across compilation units because
emitInitializeInstanceMembers can be called in direct eval code inside a
derived-class constructor.

Since .privateBrand is currently a `let` binding, this currently emits an
unnecessary CheckAliasedLexical instruction in the constructor for each class
that has nonstatic private methods. We'll eliminate these later on.

Depends on D108289

Differential Revision: https://phabricator.services.mozilla.com/D108290
2021-04-19 19:28:05 +00:00
Jason Orendorff
563580840a Bug 1662559 - Part 5: Add .privateBrand to class body scopes. r=arai
Not every class gets this special binding. It will be needed for all classes
that have any nonstatic private methods, getters, or setters. With this patch,
we create a .privateBrand binding in the scopes for such classes, and populate
it with a symbol when initializing the class. However, it is not yet being used
anywhere; the constructor does not yet stamp instances with the private brand.

Depends on D108288

Differential Revision: https://phabricator.services.mozilla.com/D108289
2021-04-19 19:28:05 +00:00
Jason Orendorff
812b030d0b Bug 1662559 - Part 4: Introduce ClassBodyLexicalEnvironmentObject. r=arai
It is a copy of BlockLexicalEnvironmentObject. Note that

-   ClassBodyScope is *not* a LexicalScope, BUT

-   ClassBodyLexicalEnvironmentObject *is* a LexicalEnvironmentObject

This is strictly a matter of how much implementation is shared. The word
"Lexical" in LexicalEnvironmentObject, and to some extent throughout
SpiderMonkey, is alas already pretty meaningless. In the language
specification, all environments are lexical environments.

Depends on D108286

Differential Revision: https://phabricator.services.mozilla.com/D108287
2021-04-19 19:28:05 +00:00
Jason Orendorff
0e2e568c6b Bug 1662559 - Part 3: Tighten up type of the ClassMemberList node kind. r=arai
Depends on D108285

Differential Revision: https://phabricator.services.mozilla.com/D108286
2021-04-19 19:28:04 +00:00
Jason Orendorff
047f6f7838 Bug 1662559 - Part 2: Clone LexicalScope{Node} -> ClassBodyScope{Node}. r=arai
Note: This revision will have to be folded with Parts 3 and 4 before landing, as
the op PushLexicalEnv breaks here, and is replaced with PushClassBodyEnv in Part 4.

Depends on D108283

Differential Revision: https://phabricator.services.mozilla.com/D108284
2021-04-19 19:28:04 +00:00
Jason Orendorff
6bf2f324b8 Bug 1662559 - Part 1: Rename NameLocation::fromBinding() -> BindingIter::nameLocation(). r=arai
Differential Revision: https://phabricator.services.mozilla.com/D108283
2021-04-19 19:28:03 +00:00
Agi Sferro
e2c0bc7534 Bug 1700775 - Revert "Bug 1567341 - Release EventDispatcher listeners on xpcom-shutdown" r=aklotz
This reverts commit e542e8826b92f70dbabaf577d80a32273c684d1b.

In hindsight, this was a pretty bad change. It introduces a third place where
the EventDispatcher can be shutdown (JavaScript) and doesn't do a good job at
communicating this across all consumers.

I introduced this change in Bug 1567341 to fix some leaks in xpcshell tests at
xpcom shutdown, and it was never meant to affect a normal browser use (turns
out, it does).

I ran the tests again in try and they are still green when reverting this
change, I suspect that the actual failures I was seeing were due to a separate
leak that I fixed while developing the patches.

Differential Revision: https://phabricator.services.mozilla.com/D112637
2021-04-19 19:17:55 +00:00
Gijs Kruitbosch
85c8bcd216 Bug 1706085 - use a bigger back arrow for the hamburger menu, r=desktop-theme-reviewers,harry
Differential Revision: https://phabricator.services.mozilla.com/D112634
2021-04-19 18:54:05 +00:00
Emma Malysz
053a2f9a60 Bug 1704827, improve contrast of error text in site identity panel r=desktop-theme-reviewers,harry
Differential Revision: https://phabricator.services.mozilla.com/D112121
2021-04-19 18:51:38 +00:00
Emma Malysz
7a1cb8a1b1 Bug 1703012: fix control center and identity panel proton styling r=desktop-theme-reviewers,fluent-reviewers,mconley,flod,pbz,Itiel
Migrates two strings to fluent and uses sentence casing.
Places identity security block into a toolbar button.
Fixes margin spacing.
Removes green color from secure connection.

Differential Revision: https://phabricator.services.mozilla.com/D111368
2021-04-19 18:51:37 +00:00
Florian Quèze
f64249ccd2 Bug 1705736 - Add 'Worker.postMessage' profiler markers and label frames to show which worker is involved, r=gerald,dom-worker-reviewers,asuth.
Differential Revision: https://phabricator.services.mozilla.com/D112361
2021-04-19 18:50:07 +00:00
Marco Bonardo
3e9e0581a5 Bug 1706117 - Remove opacity from address bar compact search settings button. r=harry,desktop-theme-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D112628
2021-04-19 18:48:55 +00:00
Dorel Luca
28698a40e9 Backed out 2 changesets (bug 1704628) for Devtools failures in devtools/client/debugger/test/mochitest/browser_dbg-blackbox-all.js. CLOSED TREE
Backed out changeset d7c6bae278e0 (bug 1704628)
Backed out changeset 4df249cccd6e (bug 1704628)
2021-04-20 00:37:30 +03:00
Dorel Luca
61600aeb09 Backed out 2 changesets (bug 1685402) for build bustages in toolkit/components/glean/bindings/private/Ping.cpp. CLOSED TREE
Backed out changeset f9eb32e83608 (bug 1685402)
Backed out changeset 00dc350a9371 (bug 1685402)
2021-04-19 22:58:36 +03:00
Dorel Luca
59a9ef4dbb Backed out 2 changesets (bug 1704846) for backout conflict with Bug 1685402. CLOSED TREE
Backed out changeset ed8e2f8d8f6c (bug 1704846)
Backed out changeset c007d7b505a9 (bug 1704846)
2021-04-19 22:57:27 +03:00
Ted Campbell
840a19df94 Bug 1705819 - Resolve _SetIsInlinableLargeFunction during BCE. r=arai
Use the existing intrinsic function call processing of self-hosting, the BCE
can also resolve _SetIsInlinableLargeFunction. To do this, we also track the
latest top-level FunctionBox that was processed to allow easily updating
flags without a dedicated hashmap. This change lets us make the flag
immutable now.

Differential Revision: https://phabricator.services.mozilla.com/D112411
2021-04-19 18:48:08 +00:00
Kershaw Chang
9e4dc813a7 Bug 1616238 - Enable http3 tests on windows, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D112528
2021-04-19 18:34:05 +00:00