Commit Graph

746096 Commits

Author SHA1 Message Date
Andreea Pavel
4d15e7e3f1 Backed out changeset 45b36995cfd6 (bug 1690216) for build bustages at rules.mk on a CLOSED TREE 2021-02-24 12:03:14 +02:00
Lee Salzman
e746523892 Bug 1690216 - Report whether to redraw on invalidation to WR. r=mattwoodrow
This requires us to plumb CompositorCapabilities to support the extra field.
This is complicated by the fact that since it is a Rust struct, it has no
default constructor that can pass through to C++ via bindings, so every
one of our RenderCompositors was forced to manually initialize fields. To
get around this brittle footgun, instead the structure is initialized on
the Rust side, and RenderCompositor's are encouraged to only change fields
that actually diverge from the defaults as passed in via pointer.

Finally, we can then do what we need to do, which is just to send the
ForceRedraw message that needs to happen based on what we know about
CompositorCapabilities.

Differential Revision: https://phabricator.services.mozilla.com/D106246
2021-02-24 09:18:33 +00:00
Itiel
0bb647b6f6 Bug 1692773 - Fix about:certificate tabs' outline when focused r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D105223
2021-02-24 08:38:15 +00:00
Eden Chuang
00ad03a9c3 Bug 1684139 - Adding mozilla specific wpt for timer nesting level in workers r=dom-worker-reviewers,asuth
This patch is developed from D104136#3396152.

This patch creates WorkerTestUtils.webidl under dom/webidl for testing workers with internal APIs. These APIs are exposed to workers only and controlled by dom.workers.testing.enabled pref.

This patch creates a Mozilla-specific web-platform test, testing/web-platform/mozilla/test/workers/worker_timer_nesting_level.html, to test the timer nesting level implementation for workers.

To simplify the test implementation, this patch does not implement the webidl under dom/chrome-webidl/ suggested by D104136#3396152.

Depends on D104136

Differential Revision: https://phabricator.services.mozilla.com/D105332
2021-02-24 08:14:39 +00:00
Eden Chuang
aed62c9971 Bug 1684139 - Implement timer nesting level for workers r=dom-worker-reviewers,asuth
This patch implements the timer nesting level for workers according to https://html.spec.whatwg.org/#timer-initialisation-steps.

If the timer's nesting level is larger than 5 and the interval time is less than 4, the timer should be clamped to 4.

Differential Revision: https://phabricator.services.mozilla.com/D104136
2021-02-24 08:14:39 +00:00
Frederik Braun
fe5b17c259 Bug 1664485 - update WPT for optional sanitize arguments r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D105954
2021-02-24 08:01:01 +00:00
Frederik Braun
85f139b0d2 Bug 1664485 - make sanitize/sanitizeToString param's non-optional r=ckerschb,emilio
Differential Revision: https://phabricator.services.mozilla.com/D105953
2021-02-24 08:01:01 +00:00
Masayuki Nakano
b60a352c71 Bug 1661132 - Make test_bug596600.xhtml wait proper event after syntheisizing native mousemove event r=smaug
The test assumes that mousemove events are fired with waiting a tick
after synthesizing native mousemove event.  However, it's wrong since
synthesizing native mousemove event may run after a tick for waiting
safe time to synthesize a native event.

Differential Revision: https://phabricator.services.mozilla.com/D106136
2021-02-24 07:01:16 +00:00
Tooru Fujisawa
36a819f0cc Bug 1694364 - Remove CompilationStencil constructor with CompilationInput parameter. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D106128
2021-02-24 04:22:38 +00:00
Tooru Fujisawa
8bf21e07a7 Bug 1692577 - Part 16: Remove unnecessary and redundant ExtensibleCompilationStencil::finish from reflect_parse. r=tcampbell
reflect_parse wasn't using CompilationStencil, but uses
ExtensibleCompilationStencil in CompilationState.

Differential Revision: https://phabricator.services.mozilla.com/D105908
2021-02-24 04:22:38 +00:00
Tooru Fujisawa
265f679178 Bug 1692577 - Part 15: Use frontend::CompileGlobalScriptToExtensibleStencil in DumpStencil. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105907
2021-02-24 04:22:37 +00:00
Tooru Fujisawa
a40c3d117c Bug 1692577 - Part 14: Use frontend::CompileGlobalScriptToExtensibleStencil in CompileStencilXDR. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105906
2021-02-24 04:22:37 +00:00
Tooru Fujisawa
6486950bdd Bug 1692577 - Part 13: Use frontend::CompileGlobalScriptToExtensibleStencil in CompileSourceBufferAndStartIncrementalEncoding. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105905
2021-02-24 04:22:36 +00:00
Tooru Fujisawa
264b455882 Bug 1692577 - Part 12: Add frontend::CompileLazyFunction. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105904
2021-02-24 04:22:36 +00:00
Tooru Fujisawa
bfac577ab5 Bug 1692577 - Part 11: Use ExtensibleCompilationStencil in off-thread module compilation task r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105903
2021-02-24 04:22:36 +00:00
Tooru Fujisawa
90598b2bf4 Bug 1692577 - Part 10: Add ParseModuleToStencilAndMaybeInstantiate. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105902
2021-02-24 04:22:35 +00:00
Tooru Fujisawa
7ac8a44635 Bug 1692577 - Part 9: Use ExtensibleCompilationStencil in off-thread script compilation task. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105901
2021-02-24 04:22:35 +00:00
Tooru Fujisawa
f8bcc0524c Bug 1692577 - Part 8: Add ExtensibleCompilationStencil::{sizeOfExcludingThis,sizeOfIncludingThis}. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105900
2021-02-24 04:22:34 +00:00
Tooru Fujisawa
e9ad0d01c7 Bug 1692577 - Part 7: Cleanup JSRuntime::initSelfHosting. r=tcampbell
Stop reusing already-initialized CompilationInput from decode to compile.

Differential Revision: https://phabricator.services.mozilla.com/D105899
2021-02-24 04:22:34 +00:00
Tooru Fujisawa
5cc10c73ab Bug 1692577 - Part 6: Add frontend::CompileGlobalScriptToExtensibleStencil. r=tcampbell
For the case the consumer needs heap-allocated ExtensibleCompilationStencil,
make CompileGlobalScriptToStencilAndMaybeInstantiate possible to also return
ExtensibleCompilationStencil.

Differential Revision: https://phabricator.services.mozilla.com/D105898
2021-02-24 04:22:34 +00:00
Tooru Fujisawa
b77a51c09c Bug 1692577 - Part 5: Add CompileGlobalScriptToStencilAndMaybeInstantiate. r=tcampbell
To support instantiating without heap-allocate CompilationStencil, modify
CompileGlobalScriptToStencil to receive either CompilationStencil pointer or
CompilationGCOutput pointer, and if CompilationGCOutput pointer is passed,
instantiate it internally.

Differential Revision: https://phabricator.services.mozilla.com/D105897
2021-02-24 04:22:33 +00:00
Tooru Fujisawa
fd545742b8 Bug 1692577 - Part 4: Unify Compiler class interface. r=tcampbell
Make all classes to follow init() + compile() + stencil().
stencil() returns a reference to ExtensibleCompilationStencil, and consumer
can either use BorrowingCompilationStencil to create temporary
CompilationStencil from it, or use ExtensibleCompilationStencil::finish to
get non-temporary CompilationStencil.

Differential Revision: https://phabricator.services.mozilla.com/D105896
2021-02-24 04:22:33 +00:00
Tooru Fujisawa
e399685ee4 Bug 1692577 - Part 3: Make more CompilationStencil& parameter const. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105895
2021-02-24 04:22:32 +00:00
Tooru Fujisawa
8aacd24949 Bug 1692577 - Part 2: Move finish to ExtensibleCompilationStencil. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105894
2021-02-24 04:22:32 +00:00
Tooru Fujisawa
180bfe382b Bug 1692577 - Part 1: Add BorrowingCompilationStencil. r=tcampbell
BorrowingCompilationStencil provides a CompilationStencil instance that
borrows all ExtensibleCompilationStencil data,

Differential Revision: https://phabricator.services.mozilla.com/D105893
2021-02-24 04:22:32 +00:00
Tooru Fujisawa
f6ee9a2a00 Bug 1693433 - Part 5: Add ref-counted StencilAsmJSContainer. r=tcampbell
To borrow ExtensibleCompilationStencil.asmJS from CompilationStencil.asmJS.

Differential Revision: https://phabricator.services.mozilla.com/D105892
2021-02-24 04:22:31 +00:00
Tooru Fujisawa
21f7c222fc Bug 1693433 - Part 4: Make StencilModuleMetadata ref-counted. r=tcampbell
To borrow ExtensibleCompilationStencil.moduleMetadata from CompilationStencil.moduleMetadata.

Differential Revision: https://phabricator.services.mozilla.com/D105891
2021-02-24 04:22:31 +00:00
Tooru Fujisawa
cb0853be4b Bug 1693433 - Part 3: Add borrow variant to SharedDataContainer. r=tcampbell
To borrow ExtensibleCompilationStencil.sharedData from CompilationStencil.sharedData.

Differential Revision: https://phabricator.services.mozilla.com/D105890
2021-02-24 04:22:30 +00:00
Tooru Fujisawa
930010f263 Bug 1693433 - Part 2: Add {CompilationStencil,ExtensibleCompilationStencil}::assertNoExternalDependency. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105799
2021-02-24 04:22:30 +00:00
Tooru Fujisawa
441c738f4f Bug 1693433 - Part 1: Add CompilationStencil.hasExternalDependency field. r=tcampbell
For now, the field is set to true only when decoding from XDR.

Differential Revision: https://phabricator.services.mozilla.com/D105621
2021-02-24 04:22:30 +00:00
Tooru Fujisawa
2c1de41799 Bug 1692648 - Part 5: Accumulate all data into CompilationState, and copy/move to CompilationStencil in CompilationState::finish. r=tcampbell
Instead of directly storing into CompilationStencil, store all data into
CompilationState, from Parser and BytecodeEmitter.

Differential Revision: https://phabricator.services.mozilla.com/D105145
2021-02-24 04:22:29 +00:00
Tooru Fujisawa
0bbe9def38 Bug 1692648 - Part 4: Add ExtensibleCompilationStencil and move stencil-related fields from CompilationState, and make CompilationState subclass of it. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105720
2021-02-24 04:22:29 +00:00
Tooru Fujisawa
23690adb54 Bug 1692648 - Part 3: Move CompilationState definition after CompilationStencil. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105143
2021-02-24 04:22:28 +00:00
Tooru Fujisawa
87f2f509f0 Bug 1692648 - Part 2: Pass LifoAlloc to ScopeStencil::createFor*. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D105141
2021-02-24 04:22:28 +00:00
Tooru Fujisawa
38cae24ecb Bug 1692648 - Part 1: Pass LifoAlloc to CompilationState constructor. r=tcampbell
As a preparation to decouple CompilationState from the final CompilationStencil,
removed the direct dependency to CompilationStencil from the constructor.

The later patch adds yet another LifoAlloc inside CompilationState base class.

Differential Revision: https://phabricator.services.mozilla.com/D105140
2021-02-24 04:22:28 +00:00
Masayuki Nakano
cc1bfd3ee1 Bug 1691622 - part 13: Make helper_scrollbarbutton_repeat.html use new API to synthesize native mouse click. r=fix CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D106244
2021-02-24 03:38:59 +00:00
Mike Conley
344a56022e Bug 1693177 - Apply Proton stylings to Firefox Accounts menu and surroundings. r=emalysz
Differential Revision: https://phabricator.services.mozilla.com/D105697
2021-02-24 03:01:51 +00:00
Mike Conley
3da2d710da Bug 1688960 - Use h1 and h2 elements for panel headers and subheaders. r=Standard8,yzen,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D105081
2021-02-24 02:52:30 +00:00
Mike Hommey
1b305c741e Bug 1694323 - Upgrade psutil to 5.8.0. r=firefox-build-system-reviewers,andi,sheehan,mhentges
It is the first version that comes with wheels for most platforms.

Differential Revision: https://phabricator.services.mozilla.com/D106066
2021-02-24 02:45:59 +00:00
Mike Hommey
0aa3513884 Bug 1694324 - Use in-tree autoconf in make-source-package. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D106067
2021-02-24 02:36:41 +00:00
Mike Hommey
61a1cf7c5a Bug 1694296 - Remove the debian8-amd64-build-base docker image. r=firefox-build-system-reviewers,andi,sheehan,mhentges
It was added back when we were using Debian 7-based images, and we
were using a more recent version of Gtk than available in Debian 7 in
the normal Firefox build. We've since upgraded to Debian 8 and removed
the difference.

Differential Revision: https://phabricator.services.mozilla.com/D106055
2021-02-24 02:17:14 +00:00
Daisuke Akatsuka
9e63f9ba1f Bug 1692368: Make page-removed event to batch handle. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D105283
2021-02-24 02:15:46 +00:00
Mike Hommey
1afcdbc6aa Bug 1693725 - Make --enable-bootstrap install missing toolchains. r=firefox-build-system-reviewers,andi,sheehan,mhentges
This means --enable-bootstrap now is the same as what
--enable-bootstrap=install currently does. --enable-bootstrap=install is at the
same time desupported.
We also remove --enable-bootstrap=update, which is not worth supporting.

Differential Revision: https://phabricator.services.mozilla.com/D105719
2021-02-24 02:13:10 +00:00
Mike Hommey
34ada26a0e Bug 1693723 - Avoid bootstrapping when an explicit path is given for tools. r=firefox-build-system-reviewers,mhentges
This changes things such that setting e.g. NASM=/usr/bin/nasm will avoid
bootstrapping nasm even when bootstrapping is enabled.

This is not applied to CC/CXX/HOST_CC/HOST_CXX because things are more
complicated.

This also simplifies how check_prog is called for a bootstrapped tool,
and avoids the repetition of when.

CBINDGEN handling needs the pattern being applied manually because it
currently doesn't use check_prog. Once --enable-bootstrap=install
becomes the default on developer builds, it will be possible to simplify
this.

Differential Revision: https://phabricator.services.mozilla.com/D105718
2021-02-24 02:01:33 +00:00
Mike Hommey
dfb8c396a6 Bug 1693723 - Pass bootstrap path in one piece to bootstrap_{,search_}path. r=firefox-build-system-reviewers,andi,mhentges
It will make upcoming changes simpler.

Differential Revision: https://phabricator.services.mozilla.com/D105717
2021-02-24 02:01:32 +00:00
Masayuki Nakano
1c60ca0e2c Bug 1691622 - part 12: Change the default unit of screenX/Y of synthesizeNativeMouseEvent from device pixels to CSS pixels r=smaug
For minimizing the previous patch changes, `scale`'s default value for
`screenX/Y` is treated as 1.0.  It means that `screenX/Y` are device
pixels by default, but `offsetX/Y` are in CSS pixels by default.  This
difference may make developers confused.  Therefore, we should align the
default unit of them to `screenPixelsPerCSSPixel`.  I.e., their default
unit becomes CSS pixels.

Differential Revision: https://phabricator.services.mozilla.com/D105929
2021-02-24 01:27:11 +00:00
Masayuki Nakano
876ef492b9 Bug 1691622 - part 11: Make mochitests stop using nsIDOMWindowUtils.sendNativeMouseEvent directly as far as possible r=smaug
For making the test framework/API change easier, such raw API shouldn't be
used directly.  Therefore, this patch makes tests using it directly stop
using it and use `synthesizeNativeMouseEvent` instead.

However, this patch does not fix `browser_touch_event_iframes.js` because
it accesses the API from `ContentTask`.  So, `EventUtils.js` isn't available
without larger change.

Note that this patch disables `test_bug596600.xhtml` because as I commented
in it, it's completely broken.  It depends on the race of next native event
loop and `waitForTick`, and this patch changes the result of the race.

Differential Revision: https://phabricator.services.mozilla.com/D105765
2021-02-24 01:27:11 +00:00
Masayuki Nakano
b77b790e20 Bug 1691622 - part 10: Make synthesizeNativeMouseEvent take a button argument r=smaug
Now, it should take `button` argument whose default value is 0 (primary
button).

Differential Revision: https://phabricator.services.mozilla.com/D105764
2021-02-24 01:27:10 +00:00
Masayuki Nakano
ef2253b4a1 Bug 1691622 - part 9: Make nsIWidget::SynthesizeNativeMouseEvent take an XP button ID and abstract message value r=smaug,geckoview-reviewers,agi,m_kato
Currently, it takes a raw native message value, but it makes JS content too
complicated.  And on Linux, it cannot synthesize non-primary button events
because GDK has only button press and release messages which dont' include
mouse button information.

For solving these problems, this patch creates a new abstract native message
as `nsIWidget::NativeMouseMessage` and makes each widget converts it to
a platform native message.

Additionally, this patch adds an argument to make it possible its callers
to specify pressing or releasing mouse button with a DOM mouse button value.

Note that the following patch adds new argument to
`synthesizeNativeEventMouse*` for mochitests and which will be tested by
new tests.

Differential Revision: https://phabricator.services.mozilla.com/D105763
2021-02-24 01:27:10 +00:00
Masayuki Nakano
e675c8343f Bug 1691622 - part 8: Get rid of nsIDOMWindowUtils::SendNativeMouseMove() r=smaug
Now, there are no users of this API.  However,
`nsIWidget::SynthesizeNativeMouseMove()` is still used by `EventStateManager`.
Even though it's just redirected to `nsIWidget::SynthesizeNativeMouseEvent()`,
but it hides the native event message from `EventStateManager`.  Therefore,
this patch keeps the widget API for now.

Differential Revision: https://phabricator.services.mozilla.com/D105762
2021-02-24 01:27:09 +00:00