Commit Graph

581200 Commits

Author SHA1 Message Date
James Teh
d557fc0b1d Bug 1431404: Remove some accessibility related diagnostic crashes on Nightly. r=aklotz
These conditions are rare and do indicate a problem which breaks accessibility.
However, we aren't getting any closer to diagnosing these as a result of these crashes, so they cause user pain without any gain to us.

MozReview-Commit-ID: D9U4et3Bg7d

--HG--
extra : rebase_source : a81263a0ef97a8ed87129d15ef30ded3005e740c
2018-02-09 15:28:13 +10:00
Chris Manchester
d9c25ac16f Bug 1437182 - Take IPDL/WebIDL generated sources into account when associating object files with linkables in the emitter. r=gps
MozReview-Commit-ID: BHABdAk3Esm

--HG--
extra : rebase_source : 83e344b3b5ab792731ebc137acf24ec2b40059ee
2018-02-12 18:41:43 -08:00
Chris Manchester
d0d19d5199 Bug 1437182 - Note object files associated with linkables in the emitter. r=gps
MozReview-Commit-ID: 3IR8TolZpKs

--HG--
extra : rebase_source : 94dce395470de1c78750302892c88ab891de5103
2018-02-12 18:41:43 -08:00
Hiroyuki Ikezoe
665b294c28 Bug 1237454 - Unthrottle transform animations in visibility:hidden element periodically only if the element is scrolled out. r=birtles
In the case where we throttle transform animations in visibility:hidden
element, we just need to unthrottle only if the element is scrolled out since
unlike the scrolled out element, visibility:hidden element keeps invisible
even after the element moved into view.

MozReview-Commit-ID: 7X2SsOLz4Y5

--HG--
extra : rebase_source : ca7210f7ed637f858127c4008fe98fbeec874a10
2018-02-09 19:00:19 +09:00
Hiroyuki Ikezoe
54a0194045 Bug 1237454 - Throttle animations on visibility:hidden element. r=birtles,boris,emilio
This patch does basically throttle animations on visibility:hidden element
and unthrottle it once the animating element became visible or a child of the
animating element became visible.  But still there are some cases that we don't
throttle such animations perfectly.  For example;

  div.style.visibility = 'hidden'; // the 'div' has no children at this moment
  div.animate(..);
  // The animation is throttled

  div.appendChild(visibleChild);
  // The animation isn't throttled

  visibleChild.style.visibility = 'hidden';
  // Now the animation should be throttled again, but actually it's not.

To throttle this case properly, when the |visibleChild|'s visibility changed
to hidden, we would need to do either

 1) Check all siblings of the |visibleChild| have no visible children

or

 2) The parent element stores visible children count somewhere and decrease it
    and check whether the count is zero

To achieve 1) we need to walk up ancestors and their siblings, actually it's
inefficient.

2) is somewhat similar to what we already do for animating images but it's hard
to reuse it for CSS animations since it does not take into account that
descendants' visibilities.

Another example that this patch does not optimize is the the case where
animating element has children whose visibility is inherited and the element
itself initially visible something like this;

  let child = document.createElement('div'); // child visibility is 'inherit'
  div.appendChild(child);

  div.animate(..); // the 'div' is visible
  // The animation isn't throttled since the animating element is visible

  div.style.visiblily = 'hidden';
  // Now the animation should be throttled, but it's not since this patch does
  // not descend down all descendants to check they are invisible or not when the
  // animating element visibility changed to hidden.

This patch adds a test case for this case introduced with todo_is().

Another test case added in this patch fails if we don't use
nsPlaceholderFrame::GetRealFrameFor() in HasNoVisibleDescendants().

MozReview-Commit-ID: BJwzQvP9Yc4

--HG--
extra : rebase_source : e56505706bb2799b59bbfb3bbcce4a9ce86892f4
2018-02-09 10:43:10 +09:00
Hiroyuki Ikezoe
024e9bf76c Bug 1237454 - Test for an animation on visibility: hidden element which has grandchild. r=boris
MozReview-Commit-ID: C0yLy4clwbY

--HG--
extra : rebase_source : f535ab7c981ae4574cbd4ae5e4cf92f08f43679a
2018-02-09 10:43:10 +09:00
Hiroyuki Ikezoe
2b3923c536 Bug 1237454 - Test for an animation on a visibility:hidden element which has a child. r=boris
MozReview-Commit-ID: AfmQJThhp8d

--HG--
extra : rebase_source : b693600cee1ed166b8a4104bd0566c425abbc2ab
2018-02-09 10:43:10 +09:00
Hiroyuki Ikezoe
b9fbc876db Bug 1237454 - Test for an animation in the parent element whose visibility is changed. r=boris
MozReview-Commit-ID: BBMOuPimlPH

--HG--
extra : rebase_source : 68f045fbe4e72b3ce8cc344058f3ae561637468d
2018-02-09 10:43:10 +09:00
Hiroyuki Ikezoe
ed45df9024 Bug 1237454 - An additional check that an animation on visibility: hidden element starts restyling when the element gets visible. r=boris
MozReview-Commit-ID: 2Lvk2IqEaXY

--HG--
extra : rebase_source : 710553c6e404afe8a948171d1263c03b9d79e21e
2018-02-09 10:43:10 +09:00
Hiroyuki Ikezoe
40907715ce Bug 1237454 - Add VisibilityChange change hint. r=emilio
This new change hint doesn't influence layout so that it can be regarded
as nsChangeHint_Hints_CanIgnoreIfNotVisible.  Note that if visibility changed
from collapse or to collapse, we set NS_STYLE_HINT_REFLOW separetely.

MozReview-Commit-ID: AirDWeBYVKG

--HG--
extra : rebase_source : a462845ac2d8280986bb8db5e6482bf401f65322
2018-02-09 10:43:10 +09:00
Cameron McCormack
bc326a5bf5 Bug 1437362 - Remove nsIDOMWindowUtils.focus. r=bz
Replace the one use of it with element.focus().

MozReview-Commit-ID: 5qK6yfyuRoY

--HG--
extra : rebase_source : f6f9a738c6ebf2201dbd6a2ac5fe476797e0adb5
2018-02-11 17:16:58 +08:00
Andreea Pavel
318bf3315d Backed out 2 changesets (bug 1437182) for gecko decision task failure
Backed out changeset 588efc6f3520 (bug 1437182)
Backed out changeset 19497c8c5b6f (bug 1437182)
2018-02-13 03:55:56 +02:00
Chris Manchester
afd306c52d Bug 1437182 - Take IPDL/WebIDL generated sources into account when associating object files with linkables in the emitter. r=gps
MozReview-Commit-ID: BHABdAk3Esm

--HG--
extra : rebase_source : fd2b592a3afc747a8b34bb81f7010f33bc32d055
2018-02-12 17:40:22 -08:00
Chris Manchester
fe4e66cbd1 Bug 1437182 - Note object files associated with linkables in the emitter. r=gps
MozReview-Commit-ID: 3IR8TolZpKs

--HG--
extra : rebase_source : 48063f31cec6f4ca40f699f038cfc76b3095c995
2018-02-09 14:28:02 -08:00
Andreea Pavel
3d2179915d Backed out changeset e68169412c0b (bug 1431404) for failing mochitest browser chrome at browser/base/content/test/general/browser_datachoices_notification.js on a CLOSED TREE 2018-02-13 03:28:44 +02:00
Hiroyuki Ikezoe
272f2f4dd8 Bug 1437680 - Don't change media feature in the callback for MediaQueryListEvent. r=jryans
In our current implementation for media query stuff, it's possible to change
media features inside the callback for media query list events and the events
are dispatched at an early stage in flush pending styles.  Whereas at a later
stage in flush pending styles, we don't allow pending media feature changes.
According to the spec [1], the media query list events have to be dispatched
in a different place from flush pending styles.  We have to move the event
handling someday, but as for test_contentViewer_overrideDPPX.html, we don't
need to change media features inside the callbacks (precisely it has done
inside a Promise for the callbacks), so we add setTimeout call to make sure
the media feature changes are processed after the flush pending styles.

[1] https://html.spec.whatwg.org/multipage/webappapis.html#processing-model-8

MozReview-Commit-ID: 5VoQJ1uGUwD

--HG--
extra : rebase_source : 47443f7dc00aa62a35f570796eeec547526d8142
2018-02-13 09:41:44 +09:00
Dustin J. Mitchell
23bfb18da8 Bug 1437710: fix spelling of zstd; r=gps
MozReview-Commit-ID: 8bSU61Lvh0T

--HG--
extra : rebase_source : 4fabfadcde7c51f483c6612e2b3a4c0d2c2efd92
2018-02-12 23:32:11 +00:00
Xidorn Quan
e71a2dc0f2 servo: Merge #20033 - Output unquoted family name as a series of identifiers (from upsuper:font-space); r=emilio
It tries to serialize unquoted family names as a series of identifiers. For family names which contain special white spaces like leading white space, trailing white space, and consective white spaces, unquoted names are marked quoted in parsing to avoid complicating serialization code.

This fixes [bug 1434802](https://bugzilla.mozilla.org/show_bug.cgi?id=1434802).

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d6ce6c36aab3229929db3d49a8fec94dcf16f66

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 715a879e920a8d0776412f48607b26a2d38e9d8c
2018-02-12 18:21:47 -05:00
James Teh
3f381e616f Bug 1431404: Remove some accessibility related diagnostic crashes on Nightly. r=aklotz
These conditions are rare and do indicate a problem which breaks accessibility.
However, we aren't getting any closer to diagnosing these as a result of these crashes, so they cause user pain without any gain to us.

MozReview-Commit-ID: D9U4et3Bg7d

--HG--
extra : rebase_source : a81263a0ef97a8ed87129d15ef30ded3005e740c
2018-02-09 15:28:13 +10:00
Zibi Braniecki
9e88c6aaf7 Bug 1437427 - Workaround promise/microtask bug with a callback in Fluent runtime. r=Pike
Due to bug 1193394 triggering a Promise in the event loop causes the Promise to be
resolved after the event loop microtask.
In this particular case the result is that the document localization is triggered
right before initial layout, but is executed much later, only after DOMContentLoaded.

This in turn causes an additional reflow and frame creation.

In order to workaround this, we're adding a callback method that is executed synchronously
after the event resolves which puts back the initial document localization to happen
right before layout.

MozReview-Commit-ID: HXuMJPwS24N

--HG--
extra : rebase_source : 7d5065658e9873dde2d61964dcb22e209cc6d4f6
2018-02-12 10:30:46 -08:00
paavininanda
e796410e73 servo: Merge #19963 - Correct default SelectionStart and SelectionEnd (from paavininanda:Issue#19958); r=<try>
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] Added unit tests and wpt for these changes
- [x] These changes fix #19958

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 62e1fc7899c2b0210dd24044d388b43ae80c276c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 148314440b92a4f50ef93e97133ada5afe168ec1
2018-02-12 11:56:27 -05:00
Daniel Holbert
c27a38f524 Bug 1437625: Promote a few nsCSSRendering.cpp static functions into exposed static methods, since another .cpp file is already using them. r=mattwoodrow
In partiuclar: nsCSSRenderingBorders.cpp is already using IsBoxDecorationSlice
and BoxDecorationRectForBorder. This would be compile error, except that we
happen to unify the two .cpp files together.  This patch promotes these two
functions (along with a closely-related function, for consistency).

MozReview-Commit-ID: 4sWj5Rb9QSw

--HG--
extra : rebase_source : 542f0200a82121f13626c9c2d129fcb5c441ff45
2018-02-12 11:38:53 -08:00
J. Ryan Stinnett
a17e3637e6 Bug 1430919 - Enable grid highlighter writing mode support. r=gl
As well as flipping the pref on, this also moves the pref to the common all.js
prefs file because the pref is used by DevTools server code.

MozReview-Commit-ID: GfkLfXg1EiR

--HG--
extra : rebase_source : 952dcc4bce3f9f2ae598a98be3b63a70ba4068b2
2018-02-12 12:49:22 -06:00
Ciure Andrei
bddcf84abe Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-13 00:12:21 +02:00
Adrian Wielgosik
598264eaff Bug 830221 - Remove nsIDOMDOMImplementation. r=bz
MozReview-Commit-ID: 3SCN1mHiMMn

--HG--
extra : rebase_source : 68494c099873ed487fc71800006afd93d0edf4e7
2018-02-12 21:49:07 +01:00
Matt Woodrow
cfc46fcb12 Bug 1436189 - Part 2: Make sure we descend to the modified frame so that we descend through the containing block and mark out of flow frames for display. r=miko a=mass-reftest-fix CLOSED TREE
--HG--
extra : source : 3403b5f669d1395097f26c69c514e52d302a3ec0
extra : amend_source : 2d4c67e9142fd4e2404a772643a845634110ea0e
2018-02-09 11:47:08 +13:00
Matt Woodrow
284526cffc Bug 1436189 - Part 1: Add testcase. r=miko
--HG--
extra : source : ee3062043923076fceffbb61f85acc6d10339605
2018-02-09 11:47:08 +13:00
Ryan Hunt
bdc27969fe Restore FilterNodeSoftware intermediate surface caching (bug 1436723, r=mstange)
This is a just a back out of changeset 6882857e1bb5.

MozReview-Commit-ID: 9Z6iEHl3eAy

--HG--
extra : rebase_source : 3d091c72a6e589e702d90ffe6800e131b009604b
2018-02-08 15:21:06 -06:00
shindli
5468b5b6a3 Backed out changeset bf20a59521ad (bug 1436100) per developers request on a CLOSED TREE 2018-02-13 13:47:08 +02:00
Andrew Osmond
cf10de0f91 Bug 1436247 - Part 4. Fix image/DecodePool.h inclusions. r=tnikkel 2018-02-13 06:43:31 -05:00
Andrew Osmond
c6886d2e24 Bug 1436247 - Part 3. Process image decoding tasks in a more predictable order. r=tnikkel
Originally image decoding tasks were processed in a FILO ordering, due
to that being the most efficient way to use an nsTArray as a queue. This
patch changes the decoding pool to use an std::queue to promise FIFO
ordering (relative to the priority of the tasks). This will allow the
first images to be requested to be the first images displayed.
2018-02-13 06:43:31 -05:00
Andrew Osmond
94c773742a Bug 1436247 - Part 2. Shutdown idle image decoder threads after the configured timeout. r=tnikkel
The image decoding thread pool can grow to be quite large, up to 32
threads, depending on the number of processors on the system. If the
user is not actively browsing, these threads are occupying resources
which could be reused elsewhere. After the timeout period, it will
release up to half of the threads in the pool.
2018-02-13 06:43:31 -05:00
Andrew Osmond
a2cece0cab Bug 1436247 - Part 1. Spawn image decoder threads on demand, rather than at startup. r=tnikkel
Currently imagelib's DecodePool spawns the maximum number of threads
during startup, based on the number of processors. This patch changes it
to spawn a single thread on startup (which cannot fail), and more up to
the maximum as jobs are added to the queue. A thread will only be
spawned if there is a backlog present when a new job is added. This
typically results in fewer threads allocated in the parent process, as
well as deferred spawning in the content processes.
2018-02-13 06:43:30 -05:00
Jan de Mooij
c31f244e4c Bug 1437471 - Use singleton type only for big typed arrays created with an existing buffer. r=bhackett 2018-02-13 12:39:59 +01:00
Paul Adenot
46da831f14 Bug 1422820 - Don't recurse too much when shutting down cameras. r=pehrsons
--HG--
extra : histedit_source : 2f3145f04e4ca35a412b9870a29ff26d28eab5d6
2018-02-08 17:49:25 +01:00
Tom Ritter
42bb60fffe Bug 1435296 Update the CSS Animations tests to handle our new Timer Precision decision r=baku
This commit does several subtle things.

1: It changes ok() to opener.ok()

ok is not defined, we have to use opener.ok. This was not caught before because
this call is used to provide additional debugging information when a test fails.
Test didn't fail, didn't hit that line.

2: It disables the call to opener.ok() we just fixed.

As the comment there describes, we expect that function to fail, so we don't want
to assert(false).

3: It inverts failures to successes if only the reduceTimerPrecision pref is set

MozReview-Commit-ID: lpKKhJoDs6

--HG--
extra : rebase_source : 0d29f2b6061526abe989c4b58397bb78631cec7b
2018-02-07 20:35:38 -06:00
Tom Ritter
aa82f54ab6 Bug 1435296 Address test failures caused by bumping timer precision to 2 ms r=baku
There are a few different reasons why tests needed updating (not an exhaustive list):

- Tests assume that successive operations take place at different times.
- Tests assume that an operation took a minimum amount of time.
- Tests hardcodes a specific delay.

In most cases we hardcode the preference off. In some cases this is the best approach,
in others, we would like to improve. The bug for tracking those improvements is Bug 1429648

An improvement that is present in some tests is to hardcode a specific precision reduction
that is acceptable based on the confides of the test. (Obviously this needs to be a fix for
the test framework and not a requirement on the feature being tested.)

In a few places, the test itself can be fixed, for example to no longer require the end
time of an operation to be strictly greater than the start time, and allows it to be equal
to it.

MozReview-Commit-ID: J59c7xQtZZJ

--HG--
extra : rebase_source : df8a03e76eaf9cdc9524dbb3eb9035af237e534b
2018-02-12 11:39:41 -06:00
Tom Ritter
8184fa2b43 Bug 1435296 Do not apply timer clamping to CSS animations. r=birtles
This patch creates the capability to have callsites specify if timestamps
should be clamped only in Resist Fingerprinting Mode, or in the more expansive
Timer PRecision Reduction Mode.

Then it changes the CSS Animation callsite to only apply in RFP Mode.

This avoids regressing RFP.

MozReview-Commit-ID: B1pSri0kRk6

--HG--
extra : rebase_source : f3d8c1f9561fbb19d1ca8594ba2b69cffd25445b
2018-02-07 16:50:57 -06:00
Johann Hofmann
9b1ad03ff0 Bug 1433511 - Properly handle default popup permissions in the site identity popup. r=prathiksha
We were not correctly setting the menulist value for default popup permissions,
which went largely unnoticed so far because the user had no way of actually setting
these permissions explicitly. It might happen with policy engine in the future
and so we should fix this.

MozReview-Commit-ID: 1VQc1NRGGX

--HG--
extra : rebase_source : 91dd30d11913316e1fc50c09b3ca37ae6430c938
2018-02-07 12:10:26 +01:00
Emilio Cobos Álvarez
ba54406ac4 servo: Merge #20026 - style: Use more CascadeData and less Stylist for XBL stuff (from emilio:less-stylist-xbl); r=upsuper
Just some more use-cases that can be converted right away.

I'm trying to make XBL not use a whole Stylist, slowly...

Source-Repo: https://github.com/servo/servo
Source-Revision: 63691f01d79874aae4bb84badf86667c863cec9b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : da4fa29f65cb29a337b99877f44fe18db26ee4b9
2018-02-12 06:03:30 -05:00
Coroiu Cristina
5dbddf88c1 Backed out changeset 9eb8652389f2 (bug 1427635) for clipboard failures at dom/browser-element/mochitest/test_browserElement_oop_CopyPaste.html 2018-02-12 13:44:46 +02:00
Sebastian Hengst
e6123cd888 merge mozilla-central to autoland 2018-02-12 13:38:04 +02:00
Sebastian Hengst
51a308a50b merge mozilla-inbound to mozilla-central. a=merge 2018-02-12 13:36:48 +02:00
Simon Fraser
ff314eda63 Bug 1437473 Don't cache smaller partials diffs r=mtabara
MozReview-Commit-ID: 7pYvEgRD382

--HG--
extra : rebase_source : 8ea798abe88d3fdea53f6e9aeaa81eb304eb1957
2018-02-12 11:02:17 +00:00
arthur.iakab
9c5831300f Backed out 7 changesets (bug 1429932) for frequently failing layout/reftests/table-background/backgr_layers-opacity.html a=backout
Backed out changeset 24cf388d5d5b (bug 1429932)
Backed out changeset 8f7a4df5efcc (bug 1429932)
Backed out changeset c48601351975 (bug 1429932)
Backed out changeset c91a2b710a65 (bug 1429932)
Backed out changeset 5d146aec735e (bug 1429932)
Backed out changeset db244e692584 (bug 1429932)
Backed out changeset 39ffcc432d0c (bug 1429932)
2018-02-12 12:09:21 +02:00
arthur.iakab
3f11c2714c Backed out 2 changesets (bug 1436189) for frequently failing on layout/reftests/table-background/backgr_layers-opacity.html a=backout
Backed out changeset 3403b5f669d1 (bug 1436189)
Backed out changeset ee3062043923 (bug 1436189)
2018-02-12 12:06:58 +02:00
arthur.iakab
650430f45c Backed out changeset 4ebdab0e3328 (bug 1334465) for frequently failing marionette\test_refresh_firefox.py a=backout 2018-02-12 12:00:40 +02:00
David Anderson
aca7c9a268 Record paint phase timing for small frames. (bug 1430897 part 2, r=mattwoodrow, data_r=rweiss) 2018-02-12 19:03:10 +13:00
David Anderson
2a12caeded Reduce data sent for CONTENT_LARGE_PAINT_PHASE_WEIGHT. (bug 1430897 part 1, r=mattwoodrow) 2018-02-12 19:03:09 +13:00
Matt Woodrow
a7749bbfe2 Bug 1435649 - Don't deference the display item when attempting the early return in ComputeGeometryChangeForItem to avoid a cache miss. r=jnicol 2018-02-12 19:03:09 +13:00