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

730097 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 93b282a460 Bug 1651538 - Relabel docker images with the prefix "docker-image" instead of "build-docker-image". r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D82807
2020-10-09 00:07:56 +00:00
Razvan Caliman 22dbe9a21d Bug 1668265 - [devtools] Ensure node picker reacts to inspector fronts as they become available or destroyed r=ochameau
When a page is refreshed, the inspector fonts associated with targets within are destroyed and recreated.

The node picker didn't observe for this behavior. When a page was refreshed, it kept picking against dead fronts and ignored the newly created fronts, thus leaving users confused. This is an issue in popular web dev workflows like Hot Module Reloading, where the page may end up being refreshed. See [Bug1352121#c4](https://bugzilla.mozilla.org/show_bug.cgi?id=1352121#c4)

This patch makes the node picker listen for targets and inspector fronts as they become available or get destroyed. If node picking isn't explicitly stopped by either clicking a node or pressing the Escape key, node picking continues onto the refreshed page or to new page (same behavior as in Firefox Release).

Differential Revision: https://phabricator.services.mozilla.com/D92779
2020-10-10 08:09:41 +00:00
Makoto Kato 11895001ad Bug 1670170 - Remove strip flag from js/src/old-configure.in. r=firefox-build-system-reviewers,glandium
strip flag is moved to moz.configure by bug 1639815, but js/src/old-configure.in
still sets this flag on Darwin.

Differential Revision: https://phabricator.services.mozilla.com/D93058
2020-10-10 07:16:24 +00:00
Timothy Nikkel dafb74eec8 Bug 1669625. Add test. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D92891
2020-10-10 03:00:36 +00:00
Bas Schouten 68865466cc Bug 1669256 - Part 5: Remove dead code from ProcessNextEvent and its supporting functions. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D92713
2020-10-09 17:38:15 +00:00
Bas Schouten ba72f1b5e7 Bug 1669256 - Part 4: Remove broken code to control input event prioritization and fix it. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D92712
2020-10-09 16:57:47 +00:00
Bas Schouten fa8811a91b Bug 1669256 - Part 3: Remove priority related code from ThreadEventQueue. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D92711
2020-10-09 16:57:40 +00:00
Bas Schouten c8d25dc789 Bug 1669256 - Part 2: Remove code for idle handling from ThreadEventQueue. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D92710
2020-10-09 16:57:38 +00:00
Bas Schouten 25a1b0f61f Bug 1669256 - Part 1: Remove AbstractEventQueue and de-templatize ThreadEventQueue. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D92709
2020-10-09 17:56:34 +00:00
sotaro 71009c41fa Bug 1670148 - Fix release fence handling at AsyncImagePipelineManager on Android r=jnicol
By Bug 1661189, AndroidHardwareBuffer owning TextureHosts became to be stored in mTextureHostsUntilRenderSubmitted.

AndroidHardwareBuffer usage is not enabled on gecko.

Differential Revision: https://phabricator.services.mozilla.com/D93050
2020-10-09 14:15:52 +00:00
Razvan Maries 5fa72e54df Backed out 2 changesets (bug 1440203) for causing bug 1670277. CLOSED TREE
Backed out changeset 0b10bf76fe35 (bug 1440203)
Backed out changeset 468878422866 (bug 1440203)
2020-10-10 03:39:33 +03:00
Masayuki Nakano efdb198637 Bug 1539769 - Make `eSetSelection` event go to focused `BrowserParent` instead of `BrowserPargent` for focused content in the main process r=hsivonen
when there is no composition, `IMEStateManager::HandleSelectionEvent()` calls
`TextComposition::HandleSelectionEvent()` with `BrowserParent` which is
retrieved from `aEventTargetContent` which is focused content in the main
process.  This means that `eSetSelection` event is handled in root document
of the focused tab when there is no composition.  However, following composition
events will go to focused `BrowserParent`, i.e., if an OOP iframe has focus
in the tab, `eSetSelection` event won't be handled in it.  Therefore, IME
always fails to replace existing text with new composition.

This patch makes both `IMEStateManager::HandleSelectionEvent()` and
`PresShell::EventHandler::DispatchEventToDOM()` use
`IMEStateManager::GetActiveBrowserParent()` for sending both `eSetSelection`
and composition events to same process.  Additionally, this patch make
`IMEStateManager::GetActiveBrowserParent()` returns
`IMEStateManager::sFocusedIMEBrowserParent` when it's set to non-nullptr
because native IME tries to modify the editor which enabled IME context.

On the other hand, for making the behavior safer, we should make
`eCompositionStart` event have replacing range optionally.  I filed
bug 1669907 to change the design, but it requires several non-tiny patches.
Once we fix it, we can write automated tests for this simply, but without
the fix, I need to write too many lines with low level API, and it becomes
unnecessary after fixing the bug.  Therefore, I give up to write a test
for this for now.

Differential Revision: https://phabricator.services.mozilla.com/D93053
2020-10-09 07:01:20 +00:00
Masayuki Nakano 498c3f96b9 Bug 1668134 - part 3: Add telemetry probes to collect how percentage of `HTMLEditor` is or is not handled with `beforeinput` event listeners r=smaug data-review=tdsmith
Unfortunately, there is no official way to detect whether browser supports
or not `beforeinput` event in the wild because Chromium does not support
`onbeforeinput` event handler attribute.  On the other hand, we're the
last browser vendor which does not support `beforeinput` event, and we
make `InputEvent.getTargetRanges()` enabled only when `beforeinput` event
because it returns meaningful value only when the event type is `beforeinput`.
So, web apps can detect `beforeinput` event support with checking type of
or existence of it instead.  However, in our experience, it's guessed what
a lot of web apps check whether "Firefox" or not to consider whether it
can use `beforeinput` events.  If so, we need to announce shipping
`beforeinput` event and the way to feature detection before actually shipping
it.  Otherwise, we wouldn't get enough feedback from testers.

First of all for shipping `beforeinput` events, we should collect how much
web apps which use `HTMLEditor` use `beforeinput` event when it's enabled,
and how much web apps use mutation events or mutation observer instead of
`beforeinput` events even when it's enabled.

Honestly, I'd like to collect URLs which don't use `beforeinput` event, but
use mutation events or mutation observer.  But it's really sensitive data
so that I believe that we shouldn't collect it.

Differential Revision: https://phabricator.services.mozilla.com/D92548
2020-10-09 23:54:19 +00:00
Masayuki Nakano 0f46ae6a8e Bug 1668134 - part 2: Make `nsPIDOMWindowInner` have an API to know whether a node is (was) in the window has been observed by web apps with a mutation observer r=smaug
There is similar API in `Document`, but they indicate whether a node has been
observed by any mutation receiver, not only by `MutationObserver` of JS.
However, I'd like to know the percentage of web apps which use
`MutationObserver`, but not use `beforeinput` events.  Therefore, this patch
adds similar API into `nsPIDOMWindowInner` as same as `beforeinput` and
ignores `MutationObserver`s which are created by chrome script and addons.

Differential Revision: https://phabricator.services.mozilla.com/D92547
2020-10-08 02:25:35 +00:00
Masayuki Nakano 8c5fa85517 Bug 1668134 - part 1: Make `nsPIDOMWindowInner` have an API to know whether the window or its descendants has had `beforeinput` event listeners r=smaug
When `HTMLEditor` instances are destroyed, I'd like to collect how much
instances are worked with `beforeinput` event listeners.  Before adding such
telemetry probe, this patch adds methods to set/get whether a `beforeinput`
event listener has had added or not to `nsPIDOMWindowInner`.

Differential Revision: https://phabricator.services.mozilla.com/D92546
2020-10-08 02:25:35 +00:00
Razvan Maries 580c003812 Backed out changeset 8f481c06bcd7 (bug 1670039) for Android build bustages. CLOSED TREE 2020-10-10 02:39:01 +03:00
Chun-Min Chang 156825631e Bug 1646719 - P2: Queue a suspended status check when cloning a cache-stream r=jya
- What this patch does:

Send a "download-suspended-by-cache" signal to the media-element paired
with a cloned cache-stream right after the cache-stream is cloned. That
signal help the media-element to decide if it's ready to enter the
HAVE_ENOUGH_DATA state and fire a "canplaythrough" event.

- Why this patch is needed:

It solves a WPT timeout issue. That WPT test waits a "canplaythrough"
event.

- What problem this patch solves is:

This patch addresses the problem mentioned in [1].

Each media-element pairs with a cache-stream downloading the data it
needs. When the data-download of a cache-stream gets suspended, the
media-element paired with the cache-stream should be notified. This
notification is one of the factor to move the ready-state of the
media-element to HAVE_ENOUGH_DATA. However, the media-element paired
with a cloned cache-stream may never receive this notification. And the
worst is that it may never have a chance to download enough data it
needs to move the ready-state to HAVE_ENOUGH_DATA as well at the same
time, in the case mentioned below.

This can happen when a media-element paired with a cloned cache-stream
is created after the cache is full, and all of the cache-streams are
suspended. (Cloned cache-stream is a cache-stream cloned from another
cache-stream that shares the same underlying data with it since their
paired media-elements have the same `src` (of `HTMLMediaElement`)).

"canplaythrough" event is fired when the ready-state is transited to
HAVE_ENOUGH_DATA. As a result, it will never be fired in this case.

In usual case, if the cache-stream gets suspended from non-suspended, it
will send a "download-suspended-by-cache=true" signal to its paired
media-element when running `MediaCache::Update()`. In fact, all other
cache-streams sharing the same underlying data will send this signal at
the same time if necessary. (Later, once the cache-stream is resumed
from suspended to non-suspended it will send a
"download-suspended-by-cache=false" signal to its paired media-element.
All other cache-streams sharing the same underlying data will do the
same if necessary.) The media-element keeps tracking that signal it
receives. After the first-frame of the media-element is loaded, the
ready-state of the media-element will be transited to HAVE_ENOUGH_DATA
by force if the signal is true. (Otherwise, the ready-state will be
inferred by other information.)

When cloning a cache-stream from another one, the cloned cache-stream is
suspended by default. If it's added to a jammed cache that all of the
cache-streams are suspended since the cache is full, then it never has a
chance to fire the "download-suspended-by-cache" signal. Both its
source-stream and itself have no status-change between suspended and
non-suspended, so `MediaCache::Update` is unable to send the signal.

In this case, we should force the media-element paired with the newly
cloned cache-stream transits its ready-state to HAVE_ENOUGH_DATA, which
follows the existing mechanism, by queueing a status-change-update when
cloning the stream. The status-change-update will be run in the
`MediaCache::Update` and it will check what the signal should be sent.
Once the "download-suspended-by-cache=true" is sent, the
"canplaythrough" event of the media-element can be dispatched after
its first-frame is loaded. (The event listeners can possibly make the
media-element starts playing, which is likely to cause a cache-seek that
can revitalize the cache eventually.)

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1646719#c5

Differential Revision: https://phabricator.services.mozilla.com/D92125
2020-10-09 23:07:05 +00:00
Chun-Min Chang 9d1970b6ea Bug 1646719 - P1: Add more debugging logs r=gerald
Add some logs that can help us to check how many cache-streams are
suspended and the working status in `MediaCache::Update`

Differential Revision: https://phabricator.services.mozilla.com/D92124
2020-10-04 07:19:18 +00:00
Mike Hommey 6d61924d28 Bug 1670039 - Always call virtualenv with python -S. r=firefox-build-system-reviewers,perftest-reviewers,mhentges
It disables site modules from the caller python, which are irrelevant
anyways as virtualenv is self-contained.

Differential Revision: https://phabricator.services.mozilla.com/D93064
2020-10-09 15:39:22 +00:00
Razvan Maries 0c7b531573 Backed out changeset 699c9b84e8cb (bug 1632351) for perma failures on test_transitions_per_property.html and properties-db.js. CLOSED TREE 2020-10-10 01:50:47 +03:00
Mike Hommey 0eb4a07d1d Bug 1670167 - Unset PYTHONEXECUTABLE once python configure has been reexecuted in the virtualenv. r=firefox-build-system-reviewers,andi,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D93061
2020-10-09 14:27:03 +00:00
Olli Pettay ab91a68474 Bug 1670098 - location.replace should do a proper replace for same document navigations, r=peterv
With this change SHIP seems to also fix an issue with hashchange event - those are triggered now
more consistently than without SHIP.

Differential Revision: https://phabricator.services.mozilla.com/D92993
2020-10-09 19:20:07 +00:00
Mike Hommey 5a6250bf22 Bug 1670169 - Fix hack from bug 914563 when python gets more arguments somehow. r=firefox-build-system-reviewers,rstewart DONTBUILD
Some recent change apparently made the multiprocessing code reenter
python with the arguments `-s -c "..."` instead of `-c "..."`, which
broke the assumption of the hack.

Differential Revision: https://phabricator.services.mozilla.com/D93060
2020-10-09 14:27:28 +00:00
Richa Sharma 4bf7a105cc Bug 1665568 - Throw no receiver error if tab is not available. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D93005
2020-10-09 21:42:17 +00:00
Mike Hommey cd2608386e Bug 1670168 - Fix configure lint error when a template uses an undefined variable. r=firefox-build-system-reviewers,rstewart DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D93057
2020-10-09 16:25:25 +00:00
Tim Nguyen abaf37a336 Bug 1632351 - Enable CSS conic-gradient by default and let it ride the trains. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D93024
2020-10-09 21:09:43 +00:00
Mike Hommey 85f2357130 Bug 1670163 - Upgrade fix-stacks to latest master. r=dmajor
This updates dependencies, fixing build failures with rustc 1.47 in some
of them.

Differential Revision: https://phabricator.services.mozilla.com/D93054
2020-10-09 12:02:27 +00:00
Mike Conley 119b2d05fb Bug 1669649 - Use ShowPopupAtScreen to get the SystemStatusBar menu to open at the right coordinates. r=mhowell
Unfortunately, it's pretty difficult to write an automated test for this.

Differential Revision: https://phabricator.services.mozilla.com/D93123
2020-10-09 21:12:08 +00:00
Henrik Skupin bcd7618282 Bug 1651542 - [puppeteer] Warm-up font cache for Firefox when running Puppeteer unit tests. r=maja_zf
Due to font cache issues with the ub18-test docker image in
TaskCluster the first startup of Firefox sometimes takes more
than 15s.

As workaround for now just start Firefox once before running
Puppeteer unit tests.

Differential Revision: https://phabricator.services.mozilla.com/D93110
2020-10-09 21:03:10 +00:00
Toshihito Kikuchi 09dbd09134 Bug 1468250 - Block all versions of database.dll to stop the crash. r=aklotz
We blocked the older versions of database.dll as Bug 1566109 in 2019,
but the same crash is still happening with the newer versions.
We decided to block all versions because crashing in the middle of printing
or file uploading is not acceptable.

Differential Revision: https://phabricator.services.mozilla.com/D92988
2020-10-09 20:39:58 +00:00
Andreea Pavel 0b2240bc6e Bug 1657807 - disable browser_rules_css-compatibility-add-rename-rule.js on win/linux 64bits r=ahal DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D92772
2020-10-09 19:03:21 +00:00
Cosmin Sabou 2f21c99bdc Bug 1664481 - Disable browser_ion_ui.js on linux & mac opt. r=bc DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D92338
2020-10-09 19:02:53 +00:00
Ricky Stewart f3967a4084 Bug 1670130 - Fix contract of `_execute_child()` in `ProcessHandlerMixin` under Python 3.9 on Windows r=firefox-build-system-reviewers,mhentges
This updates the signature to match the actual signature which in 3.9 gained 4 additional arguments: `gid`, `gids`, `uid`, and `umask` (see [the source](https://github.com/python/cpython/blob/3.9/Lib/subprocess.py#L1330)).

Differential Revision: https://phabricator.services.mozilla.com/D93121
2020-10-09 19:51:32 +00:00
Neil Deakin af842b5083 Bug 1670134, remove message manager reference from LightweightThemeChild.jsm, by getting chromeOuterWindowId from BrowserChild instead, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D93043
2020-10-09 17:36:22 +00:00
Agi Sferro 52d04941c0 Bug 1667497 - Listen for MozAfterPaint on windowRoot. r=owlish
Differential Revision: https://phabricator.services.mozilla.com/D93027
2020-10-09 19:12:17 +00:00
Jeff Muizelaar 6583e56861 Bug 1670232 - swgl: Add a get_name() function to ProgramImpl. r=lsalzman
This is very useful when used when printing timings of draw calls.

Differential Revision: https://phabricator.services.mozilla.com/D93115
2020-10-09 18:41:37 +00:00
Razvan Maries d5e4596a8f Backed out 6 changesets (bug 1525076) for perma failures on browser_startup_mainthreadio.js. CLOSED TREE
Backed out changeset a425e504ae7e (bug 1525076)
Backed out changeset 5163df5430c1 (bug 1525076)
Backed out changeset 4313cfb9dfcb (bug 1525076)
Backed out changeset 9178ebc95da2 (bug 1525076)
Backed out changeset 7bde7f6ccbd8 (bug 1525076)
Backed out changeset 6c2c2e07b95f (bug 1525076)
2020-10-09 22:51:36 +03:00
Razvan Maries 040fd9f9f5 Backed out changeset 694d23b789b1 (bug 1651542) as per Henrik's request. CLOSED TREE 2020-10-09 22:34:56 +03:00
Razvan Maries 5dcad9e9b5 Backed out changeset 428c9c1eabb8 (bug 1655866) for multiple failures. CLOSED TREE 2020-10-09 22:28:00 +03:00
Razvan Maries ea34810caa Backed out 4 changesets (bug 1657404) for perma failures on GamepadPlatformService.cpp. CLOSED TREE
Backed out changeset a79143c550d7 (bug 1657404)
Backed out changeset ae904c76b6cc (bug 1657404)
Backed out changeset b225f6a01afe (bug 1657404)
Backed out changeset e6e1924fb688 (bug 1657404)
2020-10-09 21:56:28 +03:00
Kris Maglione 824fb768e1 Bug 1655866: Part 9 - Use the same PermitUnloadAction enum in WGP and nsIContentViewer. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D90939
2020-10-09 18:29:34 +00:00
Jeff Muizelaar 505b5e17d2 Bug 1670157 - Run wrench reftests with swgl in CI. r=kats
This adds some fuzz and the necessary dependencies.

Differential Revision: https://phabricator.services.mozilla.com/D93052
2020-10-09 18:06:36 +00:00
Emma Malysz 11e63b4411 Bug 1669207, ensure margins are initialized with valid settings r=sfoster
If margins are manually set to negative entries or if the selected printer
had bad values, we need to correctly reset the pref value to valid default
margins.

Differential Revision: https://phabricator.services.mozilla.com/D92465
2020-10-09 18:11:07 +00:00
Chris Martin d3e711c87d Bug 1657404 - Use WeakPtr for observer pattern in GamepadPlatformService r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D93085
2020-10-09 16:42:53 +00:00
Henrik Skupin 70a97d98be Bug 1651542 - [puppeteer] Warm-up font cache for Firefox when running Puppeteer unit tests. r=maja_zf
Due to font cache issues with the ub18-test docker image in
TaskCluster the first startup of Firefox sometimes takes more
than 15s.

As workaround for now just start Firefox once before running
Puppeteer unit tests.

Differential Revision: https://phabricator.services.mozilla.com/D93110
2020-10-09 17:42:38 +00:00
Nicolas B. Pierron a915b615e3 Bug 1661256 part 24 - Convert Atomics*Fn callWithABI dynamic calls. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D91804
2020-10-09 17:38:45 +00:00
Nicolas B. Pierron e7daacf42e Bug 1661256 part 23 - Convert js_free callWithABI calls. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D91803
2020-10-09 17:38:42 +00:00
Nicolas B. Pierron da60028b5d Bug 1661256 part 22 - Convert DOM/JSNative calls called with callWithABI. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D91802
2020-10-09 17:38:40 +00:00
Nicolas B. Pierron c6d3217e2a Bug 1661256 part 21 - Convert jsnum.h functions called with callWithABI. r=caroline
Differential Revision: https://phabricator.services.mozilla.com/D91801
2020-10-09 17:38:37 +00:00
Nicolas B. Pierron a8cb0b4601 Bug 1661256 part 20 - Convert calls to *IteratorObject callWithABI calls. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D91800
2020-10-09 17:38:35 +00:00