Граф коммитов

749426 Коммитов

Автор SHA1 Сообщение Дата
Gijs Kruitbosch ea660003e2 Bug 1699427 - Update Windows 10 context menu styling to fix colours, remove the shadow, fix padding, and submenu overlap as per spec, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D108981
2021-03-18 19:36:32 +00:00
Jon Coppeard 28916d6345 Bug 1699364 - Re-add special case pre-barrier for rope flattening r=sfink
It turns out that patch for bug 1698543 was too optimistic and we need the special case barrier for rope flattening for another reason: during flattening rope nodes are transformed before their ancestors.  Interior rope nodes are transformed to dependent strings with the base being the root node, and the root transformed into a linear string. Since the root is changed last the GC graph is not safe to traverse until flattening has finished.

This makes the test case pass.  I added this test case and the one for the previous bug.  I don't think we need to hide these since this change has only been on nightly so far.

If there are futher issues with this then I'm going to back out the barrier changes and think about an alteranative approach.

Differential Revision: https://phabricator.services.mozilla.com/D108979
2021-03-18 19:31:57 +00:00
Nika Layzell d14469fe31 Bug 1675820 - Part 7: Fix marionette BrowsingContext replace detection logic, r=whimboo,marionette-reviewers,farre
Differential Revision: https://phabricator.services.mozilla.com/D108866
2021-03-18 19:24:51 +00:00
Nika Layzell c733984c4b Bug 1675820 - Part 6: Make DocGroup cycle-collected, r=farre,smaug
Previously, the DocGroup type was not cycle-collected, as it needed to have
references from other threads for Quantum DOM. Nowadays the only off-main-thread
use of DocGroup is for dispatching runnables to the main thread which should be
tracked using a performance counter for about:performance. This means we can
remove the DocGroup references from these dispatching callsites, only storing
the Performance Counter we're interested in, and simplify make DocGroup be
cycle-collected itself.

This fixes a leak caused by adding the WindowGlobalChild getter to
WindowContext, by allowing cycles between the document and its BrowsingContext
to be broken by the cycle-collector.

Differential Revision: https://phabricator.services.mozilla.com/D108865
2021-03-18 19:24:50 +00:00
Nika Layzell 3365f956a4 Bug 1675820 - Part 5: Keep BCGs alive while waiting for WindowContext discards to be acked, r=kmag
This should further reduce the chance that a BrowsingContextGroup is mentioned
in a message which has already ben destroyed by a remote process.

Differential Revision: https://phabricator.services.mozilla.com/D108121
2021-03-18 19:24:50 +00:00
Nika Layzell 0f7f0e91a0 Bug 1675820 - Part 4: Track WindowGlobalChild in WindowContext, r=kmag
This allows for the WindowGlobalChild getter in WindowContext to be acquired
more efficiently without performing hashtable lookups, and should generally
simplify things.

The patch also removes the unnecessary XRE_IsContentProcess assertions, and
removes the global hashtable for tracking WindowGlobalChild instances which is
no longer necessary.

Differential Revision: https://phabricator.services.mozilla.com/D108120
2021-03-18 19:24:50 +00:00
Nika Layzell 81bbd0a146 Bug 1675820 - Part 3: Ensure WindowContext is discarded when WindowGlobalChild is destroyed, r=kmag
Previously it appears that `WindowContext::Discard` was never invoked in the
content process which hosts the window in question, which may have lead to the
crashes mentioned in this issue, among other problems.

Differential Revision: https://phabricator.services.mozilla.com/D108119
2021-03-18 19:24:49 +00:00
Nika Layzell 5e9e049d24 Bug 1675820 - Part 2: Trace inner window mBrowsingContext and mWindowGlobalChild fields, r=smaug
When these fields were added, it appears I completely forgot to add them to the
cycle collection unlink logic. This somehow didn't cause leaks due to existing
code which would break the cycles between the inner window and the outer window
/ BrowsingContext.

Differential Revision: https://phabricator.services.mozilla.com/D108118
2021-03-18 19:24:49 +00:00
Nika Layzell 51907e2d1f Bug 1675820 - Part 1: Upgrade destroyed asserts in BrowsingContextGroup, r=kmag
The issues with BrowsingContextGroup identity may be related to using a
destroyed BrowsingContextGroup in some situations when we shouldn't be. By
upgrading the intensity of these assertions, we should be able to catch the
issues more readily.

Differential Revision: https://phabricator.services.mozilla.com/D108117
2021-03-18 19:24:48 +00:00
Bryce Seager van Dyk c5ccffda56 Bug 1699509 - Re-enalbe test_playback.html on macos + linux, but don't test ambisonics.mp4 on intermittent configs. r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D108978
2021-03-18 19:24:14 +00:00
Emilio Cobos Alvarez 31b583bbcc Bug 1698783 - Respect Windows' system scrollbar sizes. r=mstange
Depends on D108960

Differential Revision: https://phabricator.services.mozilla.com/D108973
2021-03-18 19:12:49 +00:00
Emilio Cobos Álvarez 2ef90f0690 Bug 1698783 - Make non-native scrollbar size configurable in Windows too. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D108960
2021-03-18 19:12:49 +00:00
Henrik Skupin c33fc977ba Bug 1697159 - [marionette] Simplify handling of application information. r=marionette-reviewers,jdescottes,jgraham
Simplify code and improve performance by adding
lazy getters for checks that will be constant
for the whole lifetime of the application process.

Differential Revision: https://phabricator.services.mozilla.com/D107645
2021-03-18 19:02:38 +00:00
Tom Tung b82346e44d Bug 1500116 - Allow mActorDestroyed to be set to true more than one time; r=dom-storage-reviewers,sg
Differential Revision: https://phabricator.services.mozilla.com/D108918
2021-03-18 18:45:43 +00:00
Jamie Nicol ac9cef0aca Bug 1507074 - Don't block webrender due to lack of GL_OES_EGL_image_external_essl3 support. r=aosmond
Thanks to the previous patch in this series we can now play video
using the non-essl3 GL_OES_EGL_image_external extension, therefore we
no longer require the essl3 version.

It is assumed that all android devices support
GL_OES_EGL_image_external (non-essl3). Even if that is not the case,
webrender is no worse off than layers in that regard.

Differential Revision: https://phabricator.services.mozilla.com/D108909
2021-03-18 18:31:26 +00:00
Jamie Nicol 34616ad68b Bug 1507074 - Use GL_OES_EGL_image_external to render external textures. r=nical
On android video data is provided to webrender via EGL external
images. Webrender currently relies on the extension
GL_OES_EGL_image_external_essl3 to render these images. Unfortunately,
however, there are a number of devices which support GLES 3, but do
not support GL_OES_EGL_image_external_essl3.

This means we that must use the older GL_OES_EGL_image_external
(non-essl3) extension to render video on such devices. This requires
shaders to be written in ESSL1 rather than ESSL3.

Most of webrender's shaders use too many modern GLSL features to be
compatible with ESSL1. For that reason, this patch implements ESSL1
compatible variants of just the composite and cs_scale shaders, as
they are both relatively simple.

In the happy path, videos are promoted to compositor surfaces and we
simply use this new composite shader variant. In other cases, this
patch makes it so that we use a render task to perform a copy of the
video frame using the cs_scale shader, then the output of that render
task can be rendered using the regular ESSL3 TEXTURE_2D variant of
whatever shader is required. The extra copy is unfortunate, but
rewriting every shader to be ESSL1 compatible is unrealistic.

Differential Revision: https://phabricator.services.mozilla.com/D108908
2021-03-18 18:31:26 +00:00
Jamie Nicol 9b9b862e65 Bug 1507074 - Update glslopt-rs to add support for GL_OES_EGL_image_external. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D108907
2021-03-18 18:31:25 +00:00
Agi Sferro f6eb2f79b8 Bug 1698823 - Don't allow null delegateController. r=aklotz,droeh
We used to support having a null delegateController because WebExtension could
be constructed from the app. Now that we can only go through the Controller we
don't need to do that anymore.

Differential Revision: https://phabricator.services.mozilla.com/D108695
2021-03-18 18:31:09 +00:00
Yury Delendik da4c6fbb94 Bug 1697846 - Fix ARM64 simulator execution for FCVTN. r=nbp
Patch from 5319db71bd

Differential Revision: https://phabricator.services.mozilla.com/D108846
2021-03-18 18:11:39 +00:00
Yury Delendik f005e50ce5 Bug 1693368 - Implement SIMD i64x2.abs instruction. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D106671
2021-03-18 18:08:47 +00:00
Eden Chuang 888442c1d8 Bug 1691153 - mochitest for testing Blob URL data is transmitted with correct principal type. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D106919
2021-03-18 18:04:43 +00:00
Emilio Cobos Álvarez 8e09166c3a Bug 1699088 - Move LookAndFeel color caching and prefs code into nsXPLookAndFeel.cpp. r=cmartin
No reason this needs to be declared in the header.

Differential Revision: https://phabricator.services.mozilla.com/D108763
2021-03-18 18:00:26 +00:00
Dylan Roeh 11f680c9cd Bug 1685486 - Annotate SessionState.fromString/toString appropriately, stop throwing JSONExceptions, and handle null values a bit more gracefully. r=agi,geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D105385
2021-03-18 17:49:23 +00:00
Tim Nguyen 3d835208e2 Bug 1699499 - Increase proton touch mode toolbar height. r=desktop-theme-reviewers,dao
...and one consistency improvement in a selector.

Differential Revision: https://phabricator.services.mozilla.com/D108975
2021-03-18 17:42:18 +00:00
Tim Nguyen 0e1ec7142e Bug 1696221 - Update bookmark button border radius for proton. r=mtigley
Differential Revision: https://phabricator.services.mozilla.com/D108893
2021-03-18 17:37:34 +00:00
Marcos Cáceres 8bf9405dac Bug 1697089 - Web manifest: Remove query & fragment components from scope URL r=saschanaz,annevk
Differential Revision: https://phabricator.services.mozilla.com/D107775
2021-03-18 17:36:02 +00:00
Stephen A Pohl c5af287e10 Bug 1696113: Add some fuzz to a reftest when the non-native theme is enabled on macOS. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D108971
2021-03-18 17:17:58 +00:00
Nika Layzell bf27412e89 Bug 1563624 - Part 2: Automatically reject async IPC responses when the resolver is dropped, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D108868
2021-03-18 16:56:10 +00:00
Nika Layzell d43ea8e721 Bug 1563624 - Part 1: Add a weak reference variant of ActorLifecycleProxy for IPDL internal use, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D108867
2021-03-18 16:56:10 +00:00
Nicolas Chevobbe 8469f542e0 Bug 1697747 - [devtools] Ignore already destroyed root node resources in onResourceAvailable callback. r=jdescottes.
It looks like this reduces the number of failures in browser_toolbox_backward_forward_navigation.js.

Differential Revision: https://phabricator.services.mozilla.com/D107980
2021-03-18 16:53:55 +00:00
Tim Nguyen 55e5804632 Bug 1699360 - Fix non-proton #back-button hover state for light themes. r=harry
Differential Revision: https://phabricator.services.mozilla.com/D108914
2021-03-18 16:43:34 +00:00
Sebastian Hengst b30662ffaf Bug 1699483 - drop unused task group labels. r=jmaher DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D108966
2021-03-18 16:42:57 +00:00
Tim Nguyen 5bf8663393 Bug 1698223 - Cleanup --proton-shadow-blur-radius and --proton-tab-radius variables. r=emalysz
Differential Revision: https://phabricator.services.mozilla.com/D108939
2021-03-18 16:41:54 +00:00
Aki Sasaki dcc2a24017 Bug 1698670 - log sha256 of downloads in funsize.py r=releng-reviewers,bhearsum DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D108892
2021-03-18 16:32:43 +00:00
Alexandre Poirot be9a714771 Bug 1698842 - [devtools] Avoid a few cases where targetFront is null during a client side target switching. r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D108680
2021-03-18 16:28:29 +00:00
Alexandre Poirot c261f0be80 Bug 1698842 - [devtools] Avoid notifying about already destroyed targets from TargetCommand. r=nchevobbe
This helps browser_toolbox_backward_forward_navigation.js passing with fission enabled.

Differential Revision: https://phabricator.services.mozilla.com/D108648
2021-03-18 16:28:29 +00:00
Alexandre Poirot 557c1c05cc Bug 1699432 - [devtools] Ignore connection closed when closing browser toolbox in tests. r=nchevobbe
This is to fix intermittent failure on all browser toolbox tests.
It looks like these patches make toolbox.destroy shuts down connection faster
and lead to evaluateJSAsync request still be pending while the connection is closed
and actors and fronts are destroyed.

Differential Revision: https://phabricator.services.mozilla.com/D108630
2021-03-18 16:28:29 +00:00
Alexandre Poirot ef448d774b Bug 1699432 - [devtools] Destroy TabDescriptor instead of Target from toolbox and tests. r=nchevobbe,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D108577
2021-03-18 16:28:28 +00:00
Alexandre Poirot 5c242f881a Bug 1699432 - [devtools] Always listen to target-available and destroyed events from TargetCommand. r=nchevobbe,jdescottes
This is to allow destroying correctly the targets even if we aren't watching for additional targets.

Differential Revision: https://phabricator.services.mozilla.com/D108576
2021-03-18 16:28:28 +00:00
Alexandre Poirot f4691adefc Bug 1699432 - [devtools] Bail out if DevToolsClient.close becomes reentrant. r=nchevobbe
Close method may be called by the transport on close.
This was highlighted by browser_target_from_url.js
Surprisingly devtools/shared/tests/xpcshell/test_debugger_client.js
tries quite hard to cover such issue, but we seem to get yet another type of reentrancy.
This probably depends on WebSocketTransport, which is a bit hard to get covered.
No test seems to be spawning a WebSocket DevToolsServer...

Differential Revision: https://phabricator.services.mozilla.com/D107988
2021-03-18 16:28:27 +00:00
Mark Striemer 82cccfaf64 Bug 1697788 - Move popup blocked infobar to informational r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D108814
2021-03-18 16:21:54 +00:00
Julian Seward 2f0ecea73d Bug 1699398 - Fix build failures resulting in "use of undeclared identifier 'forceWasmIon'" in obscure build configurations. r=lth.
Following the landing of wasm-via-Ion on arm64 (bug 1678097), some obscure
build configurations now break the build due to incorrect target-selection
ifdeffery.  This has been observed to happen for x86_64-linux when the
following are specified together (in a browser build):

  ac_add_options --enable-cranelift
  ac_add_options --enable-js-shell

In particular, `forceWasmIon` is declared in js.cpp and is guarded by
JS_CODEGEN_ARM64.  But there were later some uses of it guarded by
ENABLE_WASM_CRANELIFT.  In effect this incorrectly assumes that
JS_CODEGEN_ARM64 and ENABLE_WASM_CRANELIFT are both either defined or
undefined.  But that's not correct, (eg) for a build on x86_64-linux that is
configured `--enable-cranelift`.

This patch fixes that by guarding such use points *additionally* with
JS_CODEGEN_ARM64, so as to ensure the sets of configurations that read or
write `forceWasmIon` are a subset of the configurations that declare it.

Differential Revision: https://phabricator.services.mozilla.com/D108934
2021-03-18 16:19:11 +00:00
Kershaw Chang f5610eabae Bug 1699463 - Update neqo to v0.4.23 r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D108961
2021-03-18 16:18:27 +00:00
Daniel Holbert 48ed7013e4 Bug 1699354: Use "InProcess" version of GetCrossDocParentFrame() in FrameLayerBuilder.cpp. r=mstange
This patch doesn't change behavior; it's just switching us between two
functions that do the same thing. (One is literally a trivial wrapper for the
other.)

We're using the new "InProcess" version of this API as a way of annotating
callsites that have been vetted as behaving properly in out-of-process iframes.

The calls in FrameLayerBuilder.cpp seem to be about deciding how best to form
layers from our frame tree.  A layer tree and its associated frames will
always be restricted to all live in a particular process, so it's fine
that we're not able to reach other processes when we're making these decisions.

Differential Revision: https://phabricator.services.mozilla.com/D108902
2021-03-18 16:17:22 +00:00
Nika Layzell 8064f7baf7 Bug 1697927 - Part 2: Remove dead CreatedDynamically field, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D108861
2021-03-18 16:15:17 +00:00
Nika Layzell 27ff2d45df Bug 1697927 - Part 1: Only expose HadOriginalOpener on BrowsingContext, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D108860
2021-03-18 16:15:17 +00:00
smolnar b2e94b592b Backed out changeset 74ab7aa60b1a (bug 1699154) for causing reftest failures. CLOSED TREE 2021-03-18 18:39:44 +02:00
Markus Stange a3b8c07d77 Bug 1698668 - Adjust indexes in this subtest so that we can remove the todo_. r=harry
Differential Revision: https://phabricator.services.mozilla.com/D108717
2021-03-18 15:37:40 +00:00
Markus Stange 749b3ef965 Bug 1698668 - Allow calling nsStandaloneNativeMenu::ForceUpdateNativeMenuAt with an empty string, to force rebuilding of the root menu. r=harry
This could already be achieved by calling standaloneNativeMenu.menuOpened(),
except for the MenuClosed() call.

Depends on D108729

Differential Revision: https://phabricator.services.mozilla.com/D108730
2021-03-18 15:37:40 +00:00
Markus Stange 72ef050026 Bug 1698668 - Add a standaloneNativeMenu.dump() method that can be called from a test for debugging purposes. r=harry
Depends on D108555

Differential Revision: https://phabricator.services.mozilla.com/D108729
2021-03-18 15:37:39 +00:00