Commit Graph

748497 Commits

Author SHA1 Message Date
Bogdan Tara
5a7cb2592d Backed out 9 changesets (bug 1697935, bug 1697904) for assertion failure at StaticPrefList_layers.h and hardware acceleration related failures CLOSED TREE
Backed out changeset f37bc1afe77c (bug 1697904)
Backed out changeset 4aaab7a45b92 (bug 1697904)
Backed out changeset 87c31ed94b30 (bug 1697904)
Backed out changeset d9a650b603f5 (bug 1697904)
Backed out changeset c8680ade8ec5 (bug 1697904)
Backed out changeset 2b0048582dcf (bug 1697904)
Backed out changeset 09df3a61027d (bug 1697904)
Backed out changeset 17d4fbbd7a1e (bug 1697904)
Backed out changeset ddb46dad7605 (bug 1697935)
2021-03-13 04:47:57 +02:00
Tim Nguyen
eec5839457 Bug 1698058 - Update downloads panel/window icons & icon button styling. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D108189
2021-03-13 01:51:28 +00:00
Timothy Nikkel
c21d494430 Bug 1697756. Restructure dmanip code so it's not possible to hit MOZ_ASSERT(updateLastScale) in DManipEventHandler::OnContentUpdated. r=botond
I'm not sure if the weird dmanip behaviour coming from the OS is new (because we have a new bug (bug 1697091) that seems like dmanip has changed what it sends us sometimes), or has always existed. But it seems like a good idea to make the code robust against this.

We can hit this assert in the following way. It seems as though dmanip decides after the first few OnContentUpdate calls if it is processing a pinch or a pan (because we can get a scale that is slightly different from 1 on the first OnContentUpdated call, but after that point never changes at all while the offset is changing fluidly) and if it decides it is a pan then it locks the scale to whatever it's last value was. So if we get a scale that is very close to 1 but not fuzzy equal to 1 on the first OnContentUpdated call we will decide that we are processing a pinch, but dmanip can then decide that it's processing a pan. Once the user lifts their finger dmanip will inform us via OnViewportStatusChanged that it is now in inertia mode, it is allowed to go into inertia for pans but not pinches because we pass DIRECTMANIPULATION_CONFIGURATION_TRANSLATION_INERTIA but not DIRECTMANIPULATION_CONFIGURATION_SCALING_INERTIA when we create dmanip here https://searchfox.org/mozilla-central/rev/87a8afd9f57ee4bc542ba0ec3f96a891042b6db7/widget/windows/DirectManipulationOwner.cpp#554 And then dmanip can go straight from inertia to running, this causes us to start a new pinch because our current scale is not fuzzy equal to 1. But also, the current scale has not changed, so it is equal to our last scale, so we have no scale change to send in the pinch start event.

An example of logging when it happens is helpful for understanding and can be found at https://bugzilla.mozilla.org/show_bug.cgi?id=1697756#c2

Differential Revision: https://phabricator.services.mozilla.com/D107994
2021-03-13 01:11:30 +00:00
smolnar
547a309816 Backed out changeset 3d812f02347c (bug 1698058) for causing OS X build bustages. CLOSED TREE 2021-03-13 03:18:51 +02:00
Drew Willcoxon
bee11b65b5 Bug 1691436 - Always include page actions in the address bar when Proton is enabled. r=Gijs
The IDs of actions pinned to the urlbar are kept in
`PageActions._persistedActions.idsInUrlbar`. To pin all actions to the urlbar,
theoretically all we need to do is add all action IDs to this array, and things
should just work. PageActions already has a migration mechanism that could check
if Proton is enabled and add all the action IDs if it is. However, that would
mean that if Proton were subsequently disabled, or if the user downgraded to a
Firefox without Proton, they'd end up with all their actions still in the
urlbar. They could remove them one by one so it's not a big problem, but it
would be annoying.

Instead, this patch keeps two arrays of urlbar IDs. One stashes the user's
original pinned actions and PageActions never touches it as long as Proton is
enabled, and the other is the usual array that happens to have the IDs of all
the actions when Proton is enabled.

Depends on D107763

Differential Revision: https://phabricator.services.mozilla.com/D107600
2021-03-13 00:52:11 +00:00
Emma Malysz
411ea1a3d2 Bug 1696524, update selected tab box shadow r=desktop-theme-reviewers,ntim
Differential Revision: https://phabricator.services.mozilla.com/D108274
2021-03-13 00:40:02 +00:00
Tim Nguyen
6b556978c0 Bug 1698058 - Update downloads panel/window icons & icon button styling. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D108189
2021-03-13 00:35:11 +00:00
Ted Campbell
c4a537e166 Bug 1697904 - Stop using RelaxedAtomicBool type for js prefs. r=jandem
We seem to have cargo-culted this in from nearby gfx code, but since we read
prefs only during the spidermonkey prefs callback this is a bit silly. Note
that the Streams cases *do* make use of off-thread uses of the mirror
variable from within Gecko.

Differential Revision: https://phabricator.services.mozilla.com/D108127
2021-03-13 00:33:10 +00:00
Ted Campbell
d427d39af2 Bug 1697904 - Cleanup StaticPrefList.yaml formatting of javascript prefs. r=jandem
The top of the file has a clear formatting guide, so we should try to follow it.

Differential Revision: https://phabricator.services.mozilla.com/D108126
2021-03-13 00:33:10 +00:00
Ted Campbell
9f21666087 Bug 1697904 - Migrate the JIT spectre mitigation prefs to StaticPrefs. r=jandem
To simplify this code, turns these prefs into unlisted prefs on MIPS
platforms since the JIT support is missing there. The JitOptions will
continue to default them to false on MIPS.

Differential Revision: https://phabricator.services.mozilla.com/D108107
2021-03-13 00:33:09 +00:00
Ted Campbell
1cd5b3b30c Bug 1697904 - Migrate more JIT prefs to StaticPrefs. r=jandem
Also relax the type on large_arraybuffers to plain bool since it is only read
once on startup.

Differential Revision: https://phabricator.services.mozilla.com/D108106
2021-03-13 00:33:09 +00:00
Ted Campbell
2fddbf10e9 Bug 1697904 - Migrate JIT threshold prefs to StaticPrefs. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D108105
2021-03-13 00:33:08 +00:00
Ted Campbell
288af81e5b Bug 1697904 - Migrate JIT-enable prefs to StaticPrefs. r=jandem,KrisWright
Use 'mirror: once' for these prefs to make it clear they are only read again
after a restart.

Differential Revision: https://phabricator.services.mozilla.com/D108104
2021-03-13 00:33:08 +00:00
Ted Campbell
18136a0ffb Bug 1697904 - Make default values of unlisted javascript.options prefs explicit. r=jandem
These prefs are unlisted in all.js / StaticPrefs and so make sure that is
obvious from the code and that their default is explicit. These probably
should just become listed prefs in the future.

Differential Revision: https://phabricator.services.mozilla.com/D108103
2021-03-13 00:33:07 +00:00
Ted Campbell
1d1a50f0ca Bug 1697904 - Remove javascript.*.unsafe_eager_compilation prefs. r=iain
These prefs are unlisted (eg not in about:config) and seem to hark back to a
different era. In practice, setting the appropriate JIT threshold to 0 does
the same thing and is much clearer.

Differential Revision: https://phabricator.services.mozilla.com/D108102
2021-03-13 00:33:07 +00:00
Ted Campbell
5298ae8882 Bug 1697935 - Remove unused javascript.options.spectre.object_mitigations.barriers pref. r=iain
The "barriers" here refered to type-barriers which no longer exist after
IonBuilder was removed so this pref is now dead. Also remove the .misc suffix
of the sibling pref.

Differential Revision: https://phabricator.services.mozilla.com/D108123
2021-03-13 00:33:07 +00:00
Sam Foster
72d4c476b1 Bug 1682162 - Use the paperSizeUnit to display and handle mm/inch custom margin values. r=emalysz,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D104291
2021-03-13 00:27:53 +00:00
Nick Alexander
2dd2d5d19d Bug 1694530 - Allow to prepend a distinct header by using MOZ_LOG=prependheader. r=xpcom-reviewers,nika
This is follow-up to Bug 1687549, which added the `maxsize` flag.
That works well, but it's hard to distinguish separate logging
sessions.  This makes it a little easier.

This calls through to a slightly modified `Print`, leveraging the
concurrency correctness of that implementation.  Doing so doesn't
allow great visual distinction, but it's enough.

This produces output like:
```
$ firefox --backgroundtask success --MOZ_LOG prependheader

***

[(null) 1937604: Main Thread]: I/Logger Opening log
*** You are running in background task mode. ***
...
```
and
```
$ firefox --backgroundtask success --MOZ_LOG prependheader,raw

***

Opening log
*** You are running in background task mode. ***
...
```

Differential Revision: https://phabricator.services.mozilla.com/D106224
2021-03-13 00:18:47 +00:00
Gijs Kruitbosch
d6848e7101 Bug 1692082 - fix spacing, icons and colours for checkmarks and arrows in Windows 10 menus, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D108108
2021-03-13 00:16:36 +00:00
Toshihito Kikuchi
2279f22a3f Bug 1697282 - Make the repo buildable without MOZ_LAUNCHER_PROCESS. r=aklotz
This patch makes sure the repo can be built without `MOZ_LAUNCHER_PROCESS`.

- Compile WinTokenUtils.cpp under winlaucher regardless of `MOZ_LAUNCHER_PROCESS`
  because we still need `IsAdminWithoutUac`.
- Skip TestDllBlocklist.NoOpEntryPoint GTest because the `RedirectToNoOpEntryPoint`
  feature is only available with the new blocklist with the launcher process.

Differential Revision: https://phabricator.services.mozilla.com/D108142
2021-03-12 23:38:01 +00:00
Tomislav Jovanovic
fdbb88c4cf Bug 1646817 - Support DocumentChannel process switching in sidebars and popups r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D100396
2021-03-12 22:58:29 +00:00
Emilio Cobos Álvarez
ccbc2fe63d Bug 1698175 - Add a pref for window.print to block. r=tsmith
Let me know if this doesn't work for your purposes.

Differential Revision: https://phabricator.services.mozilla.com/D108254
2021-03-12 22:45:46 +00:00
Mitchell Hentges
4672929606 Bug 1695366: Only submit Sentry events when Mach is unmodified r=sheehan
If the "mach" file and all "*.py" files are unchanged, then the reported
exception is likely legitimate and can be reproduced on the public tree.

Differential Revision: https://phabricator.services.mozilla.com/D108262
2021-03-12 22:29:28 +00:00
Bogdan Tara
afa4e42330 Backed out 3 changesets (bug 1693677) for browser_devices_get_user_media_grace.js failures CLOSED TREE
Backed out changeset df230c366ab3 (bug 1693677)
Backed out changeset 816d2b917939 (bug 1693677)
Backed out changeset f9895c7f1b26 (bug 1693677)
2021-03-13 01:16:10 +02:00
Dave Hunt
9e3ef144c3 Bug 1697772 - Replace uses of "whitelist" with "allowlist" in Talos r=perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D108163
2021-03-12 22:04:46 +00:00
Emma Malysz
6e4c1b1588 Bug 1694678: update fxa and remote tabs sync now buttons r=fluent-reviewers,mconley
This patch:
-Maintains consistency between the fxa and remote tabs' panels "sync now" buttons
-Removes a fluent string no longer in use
-Restores tooltip functionality

Differential Revision: https://phabricator.services.mozilla.com/D106651
2021-03-12 21:41:46 +00:00
heftydav
cfda812b52 Bug 1669205 - Ensure PictureinPicture attribute is preserved when parent tab is changed r=mhowell,mtigley
Differential Revision: https://phabricator.services.mozilla.com/D105831
2021-03-12 21:27:24 +00:00
Tim Nguyen
94c7e50db9 Bug 1695172 - Fix some flaws with the --toolbar-start-end-padding first button selector. r=mstriemer
* Applies it on toolbarpaletteitem for customize mode.
* Stops applying it on every child of the first toolbaritem child, since the content of toolbaritem is unpredictable (zoom-controls, reload/stop, profiler icon & dropmarker.

Differential Revision: https://phabricator.services.mozilla.com/D108258
2021-03-12 21:26:36 +00:00
Sebastian Zartner
13bcca8ae3 Bug 1212958 - Unified splitter colors throughout DevTools. r=victoria
This change unifies the different colors of splitters used within the different panels.

"Splitter" here referes to a thin (usually one pixel wide) line between different items in the UI. It does not mean borders around items.

Differential Revision: https://phabricator.services.mozilla.com/D105682
2021-03-12 21:23:51 +00:00
Bogdan Tara
4ef8cbdcc7 Backed out changeset 7480579b4348 (bug 1692308) for abouthomecache mochitest failures CLOSED TREE 2021-03-12 23:28:57 +02:00
Mike Hommey
a34d14071f Bug 1697960 - Don't prompt for telemetry when glean couldn't be installed. r=firefox-build-system-reviewers,mhentges,sheehan
Bootstrap runs mach create-mach-environment, which may or may not
successfully install glean. When it doesn't, it's not useful to ask
whether to enable telemetry when it's not going to work.

Differential Revision: https://phabricator.services.mozilla.com/D108131
2021-03-12 21:14:40 +00:00
Jed Davis
8262eb0e29 Bug 1690921 - Detect socket syscalls only once per process when building Linux sandbox policies. r=gcp
The function to detect whether the kernel has separate syscalls for
socket operations (rather than only `socketcall`) had a comment that
it's called only once, which is no longer true.  So, this seems like a
good time to add a cache (but not on newer archs like `x86_64` where the
answer is constant).

This patch also removes the ifdefs on `__NR_socket`, because all archs
have it now, and our local headers will define it even if the build
host's headers don't.

Differential Revision: https://phabricator.services.mozilla.com/D105853
2021-03-12 21:12:11 +00:00
Jed Davis
2d6db34852 Bug 1690921 - Limit IPC sendmsg gather list sizes based on socket buffer capacity. r=mccr8,gcp
When setting up calls to `sendmsg` for IPC on Unix systems, we generate
`iovec`s for the entire message or until the `IOV_MAX` limit is reached,
whichever comes first.  However, messages can be very large (up to 256
MiB currently), while the OS socket buffer is relatively small (8KiB on
macOS and FreeBSD, ~200KiB on Linux).

This patch detects the socket buffer size with the `SO_SNDBUF` socket
option and cuts off the `iovec` array after it's reached; it also adjusts
the Linux sandbox policy to allow reading that value in all processes.

On my test machines this increases throughput on large messages by about
2.5x on macOS (from ~0.3 to ~0.7 GB/s), but on Linux the improvement is
only about 5% (most of the running time is spent elsewhere).

Differential Revision: https://phabricator.services.mozilla.com/D105852
2021-03-12 21:12:10 +00:00
Jed Davis
4e2cf97309 Bug 1690921 - Avoid quadratic runtime when building sendmsg gather lists for IPC. r=mccr8
Currently we walk through the entire list of not-yet-written IPC buffers
when building the gathered I/O list for `sendmsg`, to determine the
total remaining length of the messages, even after reaching the OS's
limit on how many `iovec`s it will accept in one call.

This patch halts the iteration when we reach the `iovec` limit, because
we don't need the exact length; it's sufficient to know whether the
entire message was written, which is impossible in that case.

This increases throughput on large messages by about 7x on macOS (from
~0.04 to ~0.3 GB/s) and 1.7x on Linux (from ~0.3 to ~0.5 GB/s), on my
test machines.  The effect is more significant on macOS because its
smaller socket buffer size (8kB vs.  ~200kB) means we spend more time
setting up the syscall per unit data copied; see also the next patch.

Differential Revision: https://phabricator.services.mozilla.com/D105851
2021-03-12 21:12:10 +00:00
Andrew Halberstadt
e9d6672ac4 Bug 1638992 - Run ./mach test with Python 3, r=releng-reviewers,jmaher
Differential Revision: https://phabricator.services.mozilla.com/D108257
2021-03-12 21:10:31 +00:00
Drew Willcoxon
f0fcc77c53 Bug 1697191 - Remove remaining built-in page actions when Proton is enabled. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D107763
2021-03-12 20:48:30 +00:00
Andrew Halberstadt
a852a41088 Bug 1694833 - [ci] Enable mochitest-plain-fis on more platforms, r=jmaher
This patch enables the following tasks on mozilla-central:
> test-macosx1014-64-qr/debug-mochitest-plain-fis-e10s
> test-macosx1014-64-shippable-qr/opt-mochitest-plain-fis-e10s
> test-windows10-64-qr/debug-mochitest-plain-fis-e10s

And the following tasks on autoland:
> test-linux1804-64-qr/opt-mochitest-plain-fis-e10s
> test-macosx1014-64-qr/debug-mochitest-plain-fis-e10s
> test-macosx1014-64-qr/opt-mochitest-plain-fis-e10s
> test-windows10-64-qr/debug-mochitest-plain-fis-e10s
> test-windows10-64-qr/opt-mochitest-plain-fis-e10s

Depends on D108251

Differential Revision: https://phabricator.services.mozilla.com/D108252
2021-03-12 20:43:26 +00:00
Andrew Halberstadt
4ad325da5a Bug 1694833 - Skip some mochitest-plain tests with fission so we can add new tasks, r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D108251
2021-03-12 20:43:26 +00:00
Oliver Pope
adf8ad9bc6 Bug 1695020 - fix PiP InvalidStateError when PictureInPictureToggle is destroyed r=mtigley,mhowell
Differential Revision: https://phabricator.services.mozilla.com/D107580
2021-03-12 20:38:55 +00:00
Andrei Oprea
cd41c8cee5 Bug 1692381 - Update newtab dev dependencies r=pdahiya
Differential Revision: https://phabricator.services.mozilla.com/D107678
2021-03-12 20:25:48 +00:00
Micah Tigley
1bda33d163 Bug 1698133 - Enable layout.css.image-set.enabled in all channels. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D108222
2021-03-12 20:09:24 +00:00
Mike Kaply
7056bce458 Bug 1697566 - Correct implementation of SkipOnboarding policy. r=emalysz
Differential Revision: https://phabricator.services.mozilla.com/D107894
2021-03-12 20:02:49 +00:00
Mark Striemer
8b9967d92d Bug 1694817 - Fix tests that fail with browser.proton.toolbar.enabled r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D107294
2021-03-12 20:01:04 +00:00
Bogdan Tara
483cc72dd6 Backed out changeset 2cd64beb8bf3 (bug 1696546) on dao's request - for not addressing significant flaw CLOSED TREE 2021-03-12 22:29:33 +02:00
Justin Wood
6b61a2ee03 Bug 1696944 - Part 1 - Update decision image to 18.04 and add an image builder for the decision image. r=ahal,aki
Differential Revision: https://phabricator.services.mozilla.com/D108196
2021-03-12 19:15:50 +00:00
Jan-Ivar Bruaroey
9c82f9d673 Bug 1693677 - Test permission grace periods. r=mconley,pbz
Differential Revision: https://phabricator.services.mozilla.com/D107948
2021-03-12 19:15:14 +00:00
Jan-Ivar Bruaroey
6637d406c1 Bug 1693677 - Fix bug where nsIMediaDevice active devices list would omit camera from joint gUM requests. r=pehrsons
Fix a bug where camera was being omitted from accounting in cases where
camera and mic where obtained jointly with a single getUserMedia call.

The permission grace period implementation relies on more accurate
accounting of when individual active devices are deactivated, and this bug
caused an existing test to fail and permission to slip through by failing
to account for cameras needing clearing from webrtcUI.activePerms during a
session.

Also remove a few redundant lines from said test (behavior neutral).

Depends on D106043

Differential Revision: https://phabricator.services.mozilla.com/D107769
2021-03-12 19:15:14 +00:00
Mike Conley
8ff4b701e4 Bug 1693677 - Add a 50s grace period for re-requesting a camera or microphone device in a tab. r=mconley,johannh
Depends on D106160

Differential Revision: https://phabricator.services.mozilla.com/D106043
2021-03-12 19:15:13 +00:00
Dan Minor
4879bd2943 Bug 1691329 - Fix cursor capture for Windows and OS X; r=ng
This hacks around the fact we want to use desktop relative cursor position
on Linux but not on Windows and OS X. This version of the constructor has
been removed upstream, so this will need to be fixed in a different way
as part of the libwebrtc update.

Differential Revision: https://phabricator.services.mozilla.com/D107895
2021-03-12 19:11:09 +00:00
Tim Nguyen
ba3a985a7a Bug 1698161 - Rename check-animation.svg to success-animation.svg. r=harry
Since bug 1697665, the checkmark for which the animation is based on is no longer check.svg, but success.svg.

Differential Revision: https://phabricator.services.mozilla.com/D108235
2021-03-12 19:07:26 +00:00