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

67977 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 70d739d347 Bug 1215878 - Temporarily skip font-family subtest because of bug 1533392.
CLOSED TREE
2019-03-07 20:41:06 +01:00
Botond Ballo d1666c7f65 Bug 1158392 - Make sure the 113905-*-vh-*.html tests do not render as blank. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D19682

--HG--
extra : moz-landing-system : lando
2019-03-07 18:03:23 +00:00
Botond Ballo 3ddbc386e0 Bug 1158392 - Disable 1133905-*-vh-rtl reftests with zoom levels > 1. r=kats
These were rendering as blank with container scrolling, and their failure with
containerless scrolling is caused by an unrelated viewport bug, tracked in
bug 1527511.

Differential Revision: https://phabricator.services.mozilla.com/D19681

--HG--
extra : moz-landing-system : lando
2019-03-07 18:03:03 +00:00
Botond Ballo 0a8f586cc5 Bug 1158392 - Fix 1133905-*-vh-*.html reftests so they are valid in the presence of new viewport sizing rules. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D19680

--HG--
extra : moz-landing-system : lando
2019-03-07 18:02:48 +00:00
Botond Ballo 2412bb993a Bug 1158392 - Mark some more webm-video reftests as failing or random on Android. r=kats
Manual testing shows expected rendering of the pages in question. The tests
do not reproduce locally and are tricky to debug on Try. Moreover, most
other reftests in this directory are already marked as failing or random
on Android.

For these reasons, I don't want these failures to block the rollout of
containerless scrolling. Bug 1084564 tracks re-enabling them.

Differential Revision: https://phabricator.services.mozilla.com/D19679

--HG--
extra : moz-landing-system : lando
2019-03-07 18:02:34 +00:00
Ciure Andrei 712dd2bb8c Backed out 16 changesets (bug 1525245) for perma failing test_document_cookie.html CLOSED TREE
Backed out changeset 3fd27215698f (bug 1525245)
Backed out changeset d9a9e8e77873 (bug 1525245)
Backed out changeset 0e6f7be92e3f (bug 1525245)
Backed out changeset 6790802e2fa5 (bug 1525245)
Backed out changeset a5a9e01116ed (bug 1525245)
Backed out changeset 66e19a0c38dd (bug 1525245)
Backed out changeset fb90d51ba853 (bug 1525245)
Backed out changeset 4772db3625b3 (bug 1525245)
Backed out changeset 9affaf0cb998 (bug 1525245)
Backed out changeset a91b7ebe8bdd (bug 1525245)
Backed out changeset c2a13a7480e1 (bug 1525245)
Backed out changeset abe4482fa137 (bug 1525245)
Backed out changeset b3920c0bcf84 (bug 1525245)
Backed out changeset 0821b81f2724 (bug 1525245)
Backed out changeset 70bed2ad7899 (bug 1525245)
Backed out changeset 5f72ba232cc8 (bug 1525245)
2019-03-07 17:54:18 +02:00
Miko Mynttinen 8625692016 Bug 1526941 - Part 5: Rewrite nsDisplayTransform bounds calculations r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D22333

--HG--
extra : moz-landing-system : lando
2019-03-07 17:13:45 +00:00
Miko Mynttinen 2ab05c6458 Bug 1526941 - Part 4: Remove mStoredList from nsDisplayTransform r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21187

--HG--
extra : moz-landing-system : lando
2019-03-07 17:13:17 +00:00
Miko Mynttinen dd22737962 Bug 1526941 - Part 3: Use mozilla::UniquePtr for mTransformPreserves3D r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21186

--HG--
extra : moz-landing-system : lando
2019-03-07 17:12:59 +00:00
Miko Mynttinen 11e49ee34d Bug 1526941 - Part 2: Refactor nsDisplayWrapList::GetComponentAlphaBounds() and nsDisplayWrapList::GetOpaqueRegion() and move some of the logic to nsDisplayList r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21185

--HG--
extra : moz-landing-system : lando
2019-03-07 17:12:44 +00:00
Miko Mynttinen d546ab5155 Bug 1526941 - Part 1: Simplify nsDisplayTransform constructors r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21184

--HG--
extra : moz-landing-system : lando
2019-03-07 17:12:21 +00:00
Timothy Nikkel 7e07e94a56 Bug 1306896. Disable assert on 32-bit Windows. r=kats
The Timestamp implementation on Windows seems to be based off of two system APIs: GetTickCount64 and QueryPerformanceCounter. QPC seems to be preferred over GTC, unless a "failure" in QPC is detected.

There is code in the Timestamp implementation to detect if QPC "fails" be comparing elapsed time of QPC to elapsed time of GTC.

Through logging on try server I observed the following in different failures:

1) the QPC failure detection kicks in a lot and disables use of QPC
2) the QPC of the vsync timestamp was in the future compared to the QPC of TimeStamp::Now().
3) the QPC of TimeStamp::Now() was missing (presumably because it was disabled) and the GTC of the vsync timestamp was in the future compared to the GTC of TimeStamp::Now()
4) the vsync timestamp printf of raw GTC and QPC values matched at the source (SoftwareDisplay::NotifyVsync) and in the refresh driver, so the vsync timestamp wasn't getting messed up.

I guess we could spend more time on the error detection in our Windows TimeStamp code, but this failure is only happening on 32-bit machines.

Here's a patch to disable the assertions on 32-bit Windows. Depends how important we think this assertion is relative to the work to investigate more.

Differential Revision: https://phabricator.services.mozilla.com/D22453

--HG--
extra : moz-landing-system : lando
2019-03-07 14:24:23 +00:00
Emilio Cobos Álvarez 0b5807bc62 Bug 1215878 - Implement CSS revert keyword. r=heycam,birtles
The only fishy bit is the animation stuff. In particular, there are two places
where we just mint the revert behavior:

 * When serializing web-animations keyframes (the custom properties stuff in
   declaration_block.rs). That codepath is already not sound and I wanted to
   get rid of it in bug 1501530, but what do I know.

 * When getting an animation value from a property declaration. At that point
   we no longer have the CSS rules that apply to the element to compute the
   right revert value handy. It'd also use the wrong style anyway, I think,
   given the way StyleBuilder::for_animation works.

   We _could_ probably get them out of somewhere, but it seems like a whole lot
   of code reinventing the wheel which is probably not useful, and that Blink
   and WebKit just cannot implement either since they don't have a rule tree,
   so it just doesn't seem worth the churn.

The custom properties code looks a bit different in order to minimize hash
lookups in the common case. FWIW, `revert` for custom properties doesn't seem
very useful either, but oh well.

Differential Revision: https://phabricator.services.mozilla.com/D21877

--HG--
extra : moz-landing-system : lando
2019-03-07 11:59:36 +00:00
Masayuki Nakano 20dc75af80 Bug 1466208 - part 34: Create a helper class, PresShell::EventHandler::HandlingTimeAccumulator() r=smaug
`PresShell::EventHandler::HandleEventInternal()` needs to accumulate event
handling time per each event type.  The handling start time needs to be
recorded before sending EventStateManager.  Therefore, this patch makes the
helper class which is a stack class, records current time at construction
and calls `Telemetry::AccumulateTimeDelta()` at destruction automatically.

Differential Revision: https://phabricator.services.mozilla.com/D21335

--HG--
extra : moz-landing-system : lando
2019-03-07 06:30:08 +00:00
Andrea Marchesini 6856f88972 Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 12 - nsICookieSettings for the channel creation, r=ckerschb,asuth,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D21538

--HG--
extra : moz-landing-system : lando
2019-03-07 10:21:15 +00:00
Brian Birtles b956fdbf9f Bug 1532568 - Don't pass the display item types to FrameLayerBuilder::EnumerateGenerationForDedicatedLayers; r=hiro
We always pass the same set of types so it seems simpler to just look it up
within the function itself.

Differential Revision: https://phabricator.services.mozilla.com/D22444

--HG--
extra : moz-landing-system : lando
2019-03-07 05:40:24 +00:00
Brian Birtles 46f45a965b Bug 1532568 - Look up the animation generation on the primary frame for transform display items; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D22443

--HG--
extra : moz-landing-system : lando
2019-03-07 05:40:51 +00:00
Masayuki Nakano 933d7866ff Bug 1466208 - part 35: Reduce one indent level in PresShell::EventHandler::HandleEventInternal() r=smaug
If `aEvent` requires frame but there is no event target,
`PresShell::EventHandler::HandleEventInternal()` just records the response
time.  So, we can reduce one indent level in the big method.

Note that I'm not sure recording the response time in such case because
the *good* values may make the average and median better.  But this is
out of scope of bug 1466208.

Differential Revision: https://phabricator.services.mozilla.com/D21336

--HG--
extra : moz-landing-system : lando
2019-03-07 06:30:36 +00:00
Emilio Cobos Álvarez 7c218f7b2a Bug 1533392 - followup: Remove ok() calls since we have testharness.js tests using this file.
CLOSED TREE
2019-03-08 00:47:19 +01:00
Hiroyuki Ikezoe af78a85968 Bug 1532443 - Drop clampScrollPoistion stuff. r=kats
This was introduced in bug 726817 for B2G stuff and there is no call site of
SetClampScrollPosition now and the only one entry point to call the function
was nsIFrameLoader.clampScrollPosition which was removed in
https://hg.mozilla.org/mozilla-central/rev/cd9aace7bb96 .

ScrollFrameHelper::ShouldClampScrollPosition() had always returned true in both
cases of root and non-root scrollable frames. (In the case of non-root
scrollable, nsFrameLoader.mClampScrollPosition is initially set to true and
nobody changes the value)

Differential Revision: https://phabricator.services.mozilla.com/D22026

--HG--
extra : moz-landing-system : lando
2019-03-04 22:16:46 +00:00
Masayuki Nakano 6f89be791a Bug 1466208 - part 33: Create PresShell::EventHandler::RecordEventHandlingResponsePerformance() r=smaug
`PresShell::EventHandler::HandleEventInternal()` recodes event handling
response performance with telemetry after it dispatches the event.  We can move
it into new method simply.

Differential Revision: https://phabricator.services.mozilla.com/D21334

--HG--
extra : moz-landing-system : lando
2019-03-06 06:03:54 +00:00
Glenn Watson e920cc3f6a Bug 1533236 - Add a fast path to WR for common gradient types. r=kvark
The existing linear gradient shader is quite slow, especially
on very large gradients on integrated GPUs.

The vast majority of gradients in real content are very simple
(typically < 4 stops, no angle, no repeat). For these, we can
run a fast path to persist a small gradient in the texture cache
and draw the gradient via the image shader.

This is _much_ faster than the catch-all gradient shader, and also
results in better batching while drawing the main scene.

In future, we can expand the fast path to handle more cases, such
as angled gradients. For now, it takes a conservative approach,
but still seems to hit the fast path on most real content.

Differential Revision: https://phabricator.services.mozilla.com/D22445

--HG--
extra : moz-landing-system : lando
2019-03-07 21:20:40 +00:00
Emilio Cobos Álvarez 045148755c Bug 1533392 - Fix initial font-family detection in property-database.js. r=dholbert
Calling getComputedStyle on an element outside of the document always returns
the empty string since bug 1511138, so we were incorrectly thinking that the
initial font-family was serif when it was not.

I chose a <meta> element instead of a <div> because they're undisplayed and they
don't cause the <body> of the document to start (though I _think_ that only
happens from the parser).

In any case I'm pretty surprised this didn't cause issues in other tests...

Differential Revision: https://phabricator.services.mozilla.com/D22604

--HG--
extra : moz-landing-system : lando
2019-03-07 21:27:23 +00:00
arthur.iakab 93997623bd Merge mozilla-central to autoland a=merge on a CLOSED TREE 2019-03-08 00:14:12 +02:00
Masayuki Nakano c59fa8ef73 Bug 1466208 - part 36: Create PresShell::EventHandler::PrepareToDispatchContextMenuEvent() r=smaug
If `Shift` state of `eContextMenu` event is active, we make it not fired on
web content.  Additionally, if it's not time to open context menu, we shouldn't
dispatch it into the DOM.  The new method prepare and check them.

Differential Revision: https://phabricator.services.mozilla.com/D21337

--HG--
extra : moz-landing-system : lando
2019-02-28 10:33:52 +00:00
Jan Varga 39748c637d Bug 1526891 - Part 6: Introduce InitializeQuotaManager and call it in nsLayoutStatics::Initialize; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D20915
2019-02-23 17:08:42 +01:00
hrdktg 91e094a66a Bug 1532570 - nsDOMCSSDeclaration::SetProperty should check for the "important" string in a case-insensitive way. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D22423

--HG--
extra : moz-landing-system : lando
2019-03-06 23:36:23 +00:00
Daniel Holbert f5d7a9b940 Bug 1533088: Initialize member-var FlexItem::mAlignSelfFlags to zero, in the legacy-box and 'visibility:collapse' FlexItem scenarios. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22350

--HG--
extra : moz-landing-system : lando
2019-03-06 23:11:19 +00:00
Emilio Cobos Álvarez cb19991fd7 Bug 1533142 - Use more cbindgen features. r=kats
We can get back the fancy flag syntax as soon as we get C++17 inline variables,
which I sent an email to dev-platform@ about, with no reply.

Differential Revision: https://phabricator.services.mozilla.com/D22382

--HG--
extra : moz-landing-system : lando
2019-03-06 23:01:11 +00:00
Botond Ballo 5a7e4e2124 Bug 1528743 - Move the top-layer display items inside the async zoom container. r=mstange
This maintains the important invariant that layers that carry scroll metadata
for the RCD-RSF are inside the async zoom container.

Differential Revision: https://phabricator.services.mozilla.com/D22049

--HG--
extra : moz-landing-system : lando
2019-03-06 22:51:09 +00:00
Emilio Cobos Álvarez 2028cb1479 Bug 1530751 - Make the pres context optional in the style system. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D21239

--HG--
extra : moz-landing-system : lando
2019-03-06 21:36:12 +00:00
Emilio Cobos Álvarez 8c9a745531 Bug 1530193 - Refactor preference stylesheet prefs to not require a pres context. r=jwatt
We really only have two sets of prefs, one for chrome-like documents
(stuff in chrome docshells + chrome-origin images), and one for the rest.

Differential Revision: https://phabricator.services.mozilla.com/D20946

--HG--
extra : moz-landing-system : lando
2019-03-06 21:34:30 +00:00
Emilio Cobos Álvarez 136be39b83 Bug 1532768 - Don't crash when given bad types to cssPropertySupportsType. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22222

--HG--
extra : moz-landing-system : lando
2019-03-06 20:50:19 +00:00
Daniel Holbert 99a091abb7 Bug 1532833: Use servo code to serialize CSS 'contain' property. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D22260

--HG--
extra : moz-landing-system : lando
2019-03-06 16:50:05 +00:00
Daniel Holbert 1467eb13b8 Bug 1530896: Drop css parser support for 'contain:style'. r=emilio
We're not sure we're going to ship support for this value, and it's been marked
as 'at-risk' in the spec, so let's stop pretending we support it in the parser.

Spec issue:
https://github.com/w3c/csswg-drafts/issues/3280

Differential Revision: https://phabricator.services.mozilla.com/D22203

--HG--
extra : moz-landing-system : lando
2019-03-06 20:44:37 +00:00
Dorel Luca ac34e1d973 Backed out 16 changesets (bug 1525245) for Android failures. CLOSED TREE
Backed out changeset 9f8a1b410320 (bug 1525245)
Backed out changeset 0ef284a9a1d5 (bug 1525245)
Backed out changeset 835e5f642a03 (bug 1525245)
Backed out changeset 362f5a8d033c (bug 1525245)
Backed out changeset 9da3ab33cf67 (bug 1525245)
Backed out changeset 6aacd2d6e835 (bug 1525245)
Backed out changeset 8ff9e8f45e02 (bug 1525245)
Backed out changeset 2020227181cc (bug 1525245)
Backed out changeset fc3c64c330b9 (bug 1525245)
Backed out changeset 2762bf88e050 (bug 1525245)
Backed out changeset ffc10fdc50a6 (bug 1525245)
Backed out changeset bb6ade1207d7 (bug 1525245)
Backed out changeset 1875eb5085e4 (bug 1525245)
Backed out changeset 7e4f67a6d6f1 (bug 1525245)
Backed out changeset e671fc9581eb (bug 1525245)
Backed out changeset b89f5def8d0d (bug 1525245)
2019-03-06 21:07:49 +02:00
Jan Henning 50c69a3713 Bug 1529863 - Remove remnants of unused browser.firstrun and browser.snippets prefs. r=geckoview-reviewers,whimboo,esawin
"browser.firstrun.*" seems to have been unused since the end of XUL-based
Fennec, whereas the code referencing the "browser.snippets.*" prefs was removed
in bug 1482836.

Differential Revision: https://phabricator.services.mozilla.com/D20862

--HG--
extra : moz-landing-system : lando
2019-03-06 14:59:46 +00:00
Emilio Cobos Álvarez fdb4ec179c Bug 1533040 - Remove invalid NS_WARNING_ASSERTION. r=dholbert
We can totally get there with a negative percentage basis, see comment 0 for an
example.

We could keep the warning like:

  NS_WARNING_ASSERTION(clamping_mode == StyleAllowedNumericType::All ||
                       basis >= 0, "nscoord overflow?");

Which will catch cases where the style system would refuse to parse a negative
<length-percentage>, but we got a negative percent basis, which would be weird.

But that's a bit misleading since right now at least we rely on the caller to do
the appropriate clamping. I also think that NS_WARNING_ASSERTION is not very
useful, since we're not very likely to catch stuff with it. But anyhow, your
call.

Differential Revision: https://phabricator.services.mozilla.com/D22328

--HG--
extra : moz-landing-system : lando
2019-03-06 17:13:14 +00:00
Andrea Marchesini 4fabb4a2a8 Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 12 - nsICookieSettings for the channel creation, r=ckerschb,asuth,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D21538

--HG--
extra : moz-landing-system : lando
2019-03-06 17:04:06 +00:00
David Major dc3f107c67 Bug 1528071 - Re-unify some source files that had been de-unified for MSVC. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D22015

--HG--
extra : moz-landing-system : lando
2019-03-05 06:38:49 +00:00
Masayuki Nakano 90e0a6d2d9 Bug 1466208 - part 32: Create PresShell::EventHandler::HandleEventAtFocusedContent() and PresShell::EventHandler::HandleEventWithFrameForPresShell() r=smaug
The remaining part of `PresShell::EventHandler::HandleEvent()` does:
1. Handles the event at focused content.
2. Handles the event with given frame which is a frame for `mPresShell`.

For making them clearer, this patch moves them into new methods.

Differential Revision: https://phabricator.services.mozilla.com/D21197

--HG--
extra : moz-landing-system : lando
2019-03-06 06:03:31 +00:00
Emilio Cobos Álvarez f3861e094c Bug 1532856 - Serialize radii with servo. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22231

--HG--
extra : moz-landing-system : lando
2019-03-06 04:47:47 +00:00
David Major 2b024928d3 Bug 1528071 - Move `GetAtomBase`s into classes to avoid unified name conflict. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22013

--HG--
extra : moz-landing-system : lando
2019-03-06 04:41:13 +00:00
Csoregi Natalia 56c430aac5 Merge mozilla-central to autoland. CLOSED TREE
--HG--
extra : rebase_source : 10555d94c948e45e86188feff6153ac981879fcc
2019-03-06 12:39:05 +02:00
Gurzau Raul 0208b45a04 Backed out changeset 6878f6294d68 (bug 1519718) for bustages on a CLOSED TREE. 2019-03-06 12:34:28 +02:00
Csoregi Natalia fbb251448f Merge inbound to mozilla-central. a=merge 2019-03-06 11:56:17 +02:00
Gurzau Raul 0e6a425f79 Backed out 2 changesets (bug 1519718) for performance regression (bug 1530611) on a CLOSED TREE.
Backed out changeset 9bae35dc1471 (bug 1519718)
Backed out changeset 640e731ed52e (bug 1519718)

--HG--
extra : rebase_source : ee2bc4503c84e709f7cd2265b4b6286960c20d4a
2019-03-06 11:47:53 +02:00
Matt Woodrow f1c492571e Bug 1529831 - Don't create wrap lists for positioned frames that are leaves. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D20773

--HG--
extra : moz-landing-system : lando
2019-03-05 20:45:40 +00:00
Daniel Holbert afe37f4964 Bug 1532835: clang-format nsStyleConsts.h. r=emilio
There aren't any manual changes here; this is just from me running:
  ./mach clang-format  -p layout/style/nsStyleConsts.h

Differential Revision: https://phabricator.services.mozilla.com/D22211

--HG--
extra : moz-landing-system : lando
2019-03-06 00:54:05 +00:00
Emilio Cobos Álvarez 87b3e6bbd3 Bug 1450652 - Remove platform support for display="" in XBL bindings. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D12586

--HG--
extra : moz-landing-system : lando
2019-03-06 00:47:13 +00:00
Masayuki Nakano 772c722daf Bug 1466208 - part 31: Create a PresShell::EventHandler::MaybeHandleEventWithAnotherPresShell() overload r=smaug
If focused element is in another document,
`PresShell::EventHandler::HandleEvent()` needs to retarget the event to another
`PresShell`.  This patch moves the case into new overload method,
`MaybeHandleEventWithAnotherPresShell()`.

Additionally, removes `PresShell::HandleRetargetedEvent()` and makes
`EventHandler::HandleRetargetedEvent()` non-public because the new method
is the only user of them.

Differential Revision: https://phabricator.services.mozilla.com/D21196

--HG--
extra : moz-landing-system : lando
2019-03-05 06:09:02 +00:00
shindli 1be0a5d3ce Merge inbound to mozilla-central. a=merge 2019-03-05 23:41:05 +02:00
Daniel Holbert e2f3884dca Bug 1530048 part 1: Remove quirks-mode-only UA stylesheet rule that made table borders gray. r=dbaron
This quirk was originally for compatibility with IE, but IE doesn't have this
special behavior anymore (in quirks-mode or in standards-mode).
And Blink/WebKit have yet another set of behaviors, which are also not
quirks-mode-dependent, and vary depending on the part of the table:
 https://bugs.chromium.org/p/chromium/issues/detail?id=935708
 https://bugs.chromium.org/p/chromium/issues/detail?id=935729

Differential Revision: https://phabricator.services.mozilla.com/D21175

--HG--
extra : moz-landing-system : lando
2019-03-04 23:33:50 +00:00
Neil Deakin 68ec31a473 Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, updated to get popup type earlier to avoid possible crash, r=tnikkel
--HG--
extra : rebase_source : 953446ea44e48966fa41f8623aae259aed032ca0
2019-03-05 04:32:40 -05:00
Bogdan Tara 3e0f1d95fc Merge inbound to mozilla-central. a=merge 2019-03-05 11:27:18 +02:00
Matt Woodrow 7132aa2044 Bug 1531532: Remove incorrect reftest fuzzy annotation. r=bustage 2019-03-05 18:36:39 +13:00
Ciure Andrei 698d0759ec Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-03-05 06:24:16 +02:00
Jeff Muizelaar 4febae72fc Bug 1495170. Use CreateClippedDrawTarget more. r=mstange
This lets us restrict the size of the mask surface that we allocate
to the destination tile size. This gives a large performance
improvement.

It also includes some miscelanous fixes to the CreateClippedDrawTarget
code path.

Differential Revision: https://phabricator.services.mozilla.com/D21750
2019-03-04 22:30:09 -05:00
Jeff Muizelaar 967d03ef66 Bug 1531532. Use preTranslate instead of postTranslate when correcting for the mask offset. r=mattwoodrow
DTO = DrawTargetOffset = (-Origin.x, -Origin.y)
CTM = CurrentTransform
MASKT = MaskTransform = Inv(CurrentTransform)
MASKO = MaskOffset = (GetRect().x, GetRect().y)

The transform to device space is:

MASKT * CTM * DTO

Currently we do:
MASKT = MASKT * MASKO

Which gives us MASKT * MASKO * CTM * DTO. This works fine if there's no scale but
will not properly cancel out if there is.

I believe we want:
MASKO * MASKT * CTM * DTO

To get this we need to preTranslate instead of postTranslate.

Differential Revision: https://phabricator.services.mozilla.com/D21604
2019-03-04 22:30:06 -05:00
Hiroyuki Ikezoe 2fcc3c784e Bug 1532477 - Return BEnd() from LogicalRect::YMost() in the case of non vertical. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D22035

--HG--
extra : moz-landing-system : lando
2019-03-05 01:22:06 +00:00
Brian Birtles 8ed54f03c6 Bug 1527210 - Drop KeyframeEffect::MaybeUpdateFrameForCompositor; r=hiro
Since bug 1524480 we set the NS_FRAME_MAY_BE_TRANSFORMED frame bit when needed
in RestyleManager::ProcessRestyledFrames so that it is now redundant to also set
it from KeyframeEffect.

Furthermore, setting frame bits from KeyframeEffect is a little fragile since it
depends on the life cycle of the KeyframeEffect which is independent of the
nsFrame. If we can avoid doing that, we probably should.

Differential Revision: https://phabricator.services.mozilla.com/D21885

--HG--
extra : moz-landing-system : lando
2019-03-05 03:09:48 +00:00
Brian Birtles d83da99f63 Bug 1527210 - Fix handling of animation of opacity on display:table; r=hiro
As with the previous patch in this series, we need to pay particular attention
to how we handle display:table content when detecting animations on a element.
Please see the extended description in that patch for an explanation of
different frame types involved.

As with transforms, our handling of opacity is also inconsistent.  In
particular, we fail to return true from nsIFrame::HasOpacityInternal for
display:table content with opacity animations applied due to the conflicting
requirements for a primary frame and having opacity animations (which are stored
on the style frame).

Unlike transforms, however, we do not inherit the opacity to the table wrapper.
Instead we leave it on the inner table frame. As a result, we should not check
for a primary frame, but instead we should check for the style frame for the
primary frame.

This patch adjusts this handling to check instead for the appropriate style
frame as opposed to requiring a primary frame. It includes a reftest that fails
without the code changes in this patch.

Differential Revision: https://phabricator.services.mozilla.com/D21884

--HG--
extra : moz-landing-system : lando
2019-03-05 03:09:33 +00:00
Brian Birtles 4264e3210a Bug 1527210 - Be more consistent about only applying transforms to primary frames; r=hiro
For display:table content we generate two frames: a table wrapper frame and an
inner table frame. The styles are applied to the inner frame (referred to as the
style frame), whilst the wrapper frame is the primary frame for the content.

However, in order to make tables with transforms behave as a container for
abspos/fixed-pos content as required by the spec, we apply the transform to the
wrapper frame (bug 722777) by inheriting the transform from inner to wrapper and
then ignoring the transform on the inner frame (bug 722777 and bug 816458).

When handling animations on table elements we need to be careful of this
distinction. in particular, css animations[1] and web animations[2] require that
when we have an unfinished transform animation targetting an element, the
element acts as if it had `will-change: transform` applied and therefore
generates a stacking context. As a result we need to accurately detect when
a frame should be considered as having transform animations applied to it or not
for the purpose of creating a stacking context.

Previously our handling of display:table content was quite inconsistent and
contradictory. For example, `nsIFrame::HasAnimationOfTransform` would check for
a primary frame AND for animations on that frame, despite the fact that we only
ever store animations on the style frame. As a result it could never return true
for either a table wrapper or inner table frame.

This patch attempts to make this handling at least a little more consistent,
producing the following result:

Outer table frame (primary frame):

    nsIFrame::IsTransformed → true
    nsIFrame::IsCSSTransformed → true
    nsIFrame::HasAnimationOfTransform → true
    nsLayoutUtils::HasAnimationOfProperty(frame, eCSSProperty_transform) → false

Inner table frame (style frame):

    nsIFrame::IsTransformed → false
    nsIFrame::IsCSSTransformed → false
    nsIFrame::HasAnimationOfTransform → false
    nsLayoutUtils::HasAnimationOfProperty(frame, eCSSProperty_transform) → true

We maintain that the NS_FRAME_MAY_BE_TRANSFORMED bit is only set on the primary
frame whilst the mMayHaveTransformAnimation flag is only set on the style frame.

Note that we don't simply always put everything on the primary frame because for
other property types (e.g. opacity) the default setup of putting all styles and
animations on the style frame is simpler and correct. So far it is only
transforms that require special handling to apply the effect to the wrapper
frame.

This patch adds a reftest that fails without the code changes included in this
patch.


[1] https://drafts.csswg.org/css-animations/#animations
[2] https://drafts.csswg.org/web-animations-1/#side-effects-section

Differential Revision: https://phabricator.services.mozilla.com/D21883

--HG--
extra : moz-landing-system : lando
2019-03-05 03:09:19 +00:00
Masayuki Nakano f410998652 Bug 1466208 - part 30: Create PresShell::EventHandler::AutoCurrentEventInfoSetter class r=smaug
With splitting `HandleEvent()` a lot, it becomes more difficult to keep
managing each set of calling `PushCurrentEventInfo()` and
`PopCurrentEventInfo()`.  So, `EventHandler` should have a helper class
to push and pop current event info into/from the stack.

Differential Revision: https://phabricator.services.mozilla.com/D21198

--HG--
extra : moz-landing-system : lando
2019-03-04 06:12:22 +00:00
Dan Glastonbury ff5c70a292 Bug 1530584 - Correct placeholder overflow calculation. r=miko,mattwoodrow
The calculation of aOverflow rect for a placeholder contained in a transformed
stacking context didn't take the transform into account, leading to an incorrect
rect which artificially inflated the calculated rebuild region.

Differential Revision: https://phabricator.services.mozilla.com/D21168

--HG--
extra : moz-landing-system : lando
2019-03-04 12:26:49 +00:00
Daniel Holbert f87df579d4 Bug 1531025 part 2: Skip an unnecessary border-radius calculation if the radii are 0 (to avoid division by 0). r=boris
This patch avoids a potential division by 0 (one that's unlikely to be
triggered by real content), for correctness and robustness.

This patch isn't really changing the logic, because the newly-guarded code is
already guarded by a "length < sum" check, and "length" is expected to be
nonnegative [1], which means "sum" would already have been nonzero in cases
where the existing strict less-than comparison returned true.

[1] One special case where we can have negative `length` values here:
if this is an outline with an `outline-offset` that is sufficiently negative
to entirely cancel out the outlined element's border-box size, then that can
produce a negative `length` (i.e. the outline box will have a negative size,
conceptually). In that scenario, we were previously dividing by 0 here and
working with bogus huge/infinite negative values as a result, but we should
not do that.

Depends on D21578

Differential Revision: https://phabricator.services.mozilla.com/D21579

--HG--
extra : moz-landing-system : lando
2019-03-04 19:24:01 +00:00
Daniel Holbert 88cd5203ba Bug 1531025 part 1: Add braces around conditions in nsIFrame::ComputeBorderRadii(). r=boris
This patch doesn't change any logic/behavior -- it's just adding braces for clarity.

Differential Revision: https://phabricator.services.mozilla.com/D21578

--HG--
extra : moz-landing-system : lando
2019-03-04 19:23:56 +00:00
Kartikaya Gupta fecd1d365c Bug 1511740 - Use nsDisplayAsyncZoom items to insert zooming animations in WR. r=jrmuizel,botond
The way we control APZ zooming in WebRender is by inserting an animation
property placeholder on a WR stacking context, and then having APZ
update the animation transform value with the proper matrix at composite
time.

Previously, the stacking context being used was the rootmost
stacking context in the content process. However this doesn't work for
zoomable content in the UI process (e.g. about:support), and after
recent changes, also wraps display items that should not be affected by
zoom (e.g. scrollbars or the background color item).

This patch moves the animation property placeholder so that it
corresponds to the newly added nsDisplayAsyncZoom display item, which
corrects both of the above problems and is conceptually in line with the
desired behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D21795

--HG--
extra : moz-landing-system : lando
2019-03-04 20:55:46 +00:00
Emilio Cobos Álvarez 25098daaaa Bug 1532122 - Make word-spacing, letter-spacing, and line-height use Rust lengths. r=boris
This also adopts the resolution from [1] while at it, making letter-spacing
compute to a length, serializing 0 to normal rather than keeping normal in the
computed value, which matches every other engine.

This removes the SMIL tests for percentages from letter-spacing since
letter-spacing does in fact not support percentages, so they were passing just
by chance.

[1]: https://github.com/w3c/csswg-drafts/issues/1484

Differential Revision: https://phabricator.services.mozilla.com/D21850

--HG--
extra : moz-landing-system : lando
2019-03-04 18:19:40 +00:00
Geoff Brown a908bb5504 Bug 1531611 - Check for ANR and tombstone files in all android tests; r=bc
The existing ANR and tombstone checks in remoteautomation are used
by mochitests and reftests but are awkward for other harnesses like cppunit
that do not use remoteautomation...and easily missed. This patch moves that
code to the mozharness AndroidMixin, treating ANRs and tombstones like the
logcat: Make sure any old logs are deleted when the mozharness script starts,
then move any logs found at the end of the run to the upload directory.
https://treeherder.mozilla.org/#/jobs?repo=try&tier=1%2C2%2C3&revision=f3de1e9836da2b0c9232f5d92c751b979459e19b
demonstrates tombstone artifacts for the Android 7.0 cppunit tests.

Differential Revision: https://phabricator.services.mozilla.com/D21774

--HG--
extra : moz-landing-system : lando
2019-03-05 14:22:45 +00:00
Tim Nguyen fa021187df Bug 1513343 - Remove textarea binding and replace usages with html:textarea. r=bgrins,dao
Differential Revision: https://phabricator.services.mozilla.com/D15001

--HG--
extra : moz-landing-system : lando
2019-03-05 11:41:42 +00:00
Sam Sneddon f392bc3d20 Bug 1531740 - make reftest-analyzer.xhtml stricter finding images r=dbaron
Depends on D21688

Differential Revision: https://phabricator.services.mozilla.com/D21689

--HG--
extra : moz-landing-system : lando
2019-03-05 00:23:49 +00:00
Sam Sneddon 565ef75673 Bug 1530008 - make reftest-analyzer.xhtml work with local WPT output r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D21688

--HG--
extra : moz-landing-system : lando
2019-03-05 10:03:52 +00:00
Bogdan Tara e264b82244 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-05 11:30:19 +02:00
Emilio Cobos Álvarez f1c235dc68 Bug 1512993 - Get rid of XBL display usage for buttons and toolbarbuttons. r=mats
This is the last use of them!

Differential Revision: https://phabricator.services.mozilla.com/D21924

--HG--
extra : moz-landing-system : lando
2019-03-04 17:20:29 +00:00
Chris Peterson d51a0249ac Bug 1532128 - layout/build: #include nsLayoutModule.h in nsLayoutModule.cpp. r=dholbert
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

layout/build/nsLayoutModule.cpp:95:6 [-Wmissing-prototypes] no previous prototype for function 'nsLayoutModuleInitialize'
layout/build/nsLayoutModule.cpp:176:11 [-Wmissing-prototypes] no previous prototype for function 'CreateXMLContentSerializer'
layout/build/nsLayoutModule.cpp:178:11 [-Wmissing-prototypes] no previous prototype for function 'CreateHTMLContentSerializer'
layout/build/nsLayoutModule.cpp:180:11 [-Wmissing-prototypes] no previous prototype for function 'CreateXHTMLContentSerializer'
layout/build/nsLayoutModule.cpp:182:11 [-Wmissing-prototypes] no previous prototype for function 'CreatePlainTextSerializer'
layout/build/nsLayoutModule.cpp:184:11 [-Wmissing-prototypes] no previous prototype for function 'CreateContentPolicy'
layout/build/nsLayoutModule.cpp:188:11 [-Wmissing-prototypes] no previous prototype for function 'CreateGlobalMessageManager'
layout/build/nsLayoutModule.cpp:189:11 [-Wmissing-prototypes] no previous prototype for function 'CreateParentMessageManager'
layout/build/nsLayoutModule.cpp:191:11 [-Wmissing-prototypes] no previous prototype for function 'CreateChildMessageManager'
layout/build/nsLayoutModule.cpp:225:10 [-Wmissing-prototypes] no previous prototype for function 'Construct_nsIScriptSecurityManager'
layout/build/nsLayoutModule.cpp:237:10 [-Wmissing-prototypes] no previous prototype for function 'LocalStorageManagerConstructor'
layout/build/nsLayoutModule.cpp:255:6 [-Wmissing-prototypes] no previous prototype for function 'nsLayoutModuleDtor'

Differential Revision: https://phabricator.services.mozilla.com/D21854

--HG--
extra : rebase_source : 000c6f3cc49acb942a84af13037f7854f14af5e4
extra : histedit_source : 997598f1d82099cc195fc1bff23ffad9ffff7fdb
2019-02-22 22:40:57 -08:00
Chris Peterson f582ab2be4 Bug 1532128 - layout: Move NS_NewLayoutDebugger() function prototype to a common header file. r=dholbert
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

NS_NewLayoutDebugger() is defined in nsLayoutDebugger.cpp.

layout/base/nsLayoutDebugger.cpp:44:10 [-Wmissing-prototypes] no previous prototype for function 'NS_NewLayoutDebugger'

Differential Revision: https://phabricator.services.mozilla.com/D21853

--HG--
extra : rebase_source : d56bdbce2030fdd3d036493c32af69addc6d1b73
extra : histedit_source : 61343f17eb6d5a774c848b1694e6507b7c1239ed
2019-02-22 22:01:01 -08:00
Chris Peterson 38f4796563 Bug 1532128 - layout/style: Remove unused functions Gecko_AnnotateCrashReport() and Gecko_AddBufferToCrashReport(). r=heycam
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

The Gecko_*CrashReport() function definitions were added in bug 1407080. The function calls were removed in https://hg.mozilla.org/integration/autoland/rev/22f60f0b91ee. A clue that this function was no longer called: bug 1348273 changed the function prototype in GeckoBindings.h to take a uint32_t key parameter, but left the function definition in GeckoBindings.cpp taking a const char* key. And yet nothing blew up.

layout/style/GeckoBindings.cpp:2294:6 [-Wmissing-prototypes] no previous prototype for function 'Gecko_AnnotateCrashReport'

Differential Revision: https://phabricator.services.mozilla.com/D21852

--HG--
extra : rebase_source : 1ca8100716900f4b39504b743f4b06a17f6be832
extra : histedit_source : d662b34fdc783abe95d56ea1d6033ccc34d2ae38
2019-03-02 21:31:23 -08:00
Chris Peterson 9b04fe7446 Bug 1532128 - layout: Make some global functions static. r=dholbert
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

layout/painting/FrameLayerBuilder.cpp:2593:6 [-Wmissing-prototypes] no previous prototype for function 'ReleaseLayerUserData'
layout/painting/RetainedDisplayListBuilder.cpp:1084:6 [-Wmissing-prototypes] no previous prototype for function 'FindContainingBlocks'
layout/style/FontFaceSet.cpp:423:6 [-Wmissing-prototypes] no previous prototype for function 'IsPdfJs'
layout/svg/SVGObserverUtils.cpp:969:6 [-Wmissing-prototypes] no previous prototype for function 'DestroyFilterProperty'

Differential Revision: https://phabricator.services.mozilla.com/D21851

--HG--
extra : rebase_source : 7b876a976087eef710ff70ca0ae42abb3c505e49
extra : histedit_source : 4254fd49e36bef38bbb6197861a4a22e040d17e0
2019-02-22 20:33:01 -08:00
Botond Ballo 6dd772b9e2 Bug 1533796 - Always run 1133905-*-vh-*.html reftests with containerless scrolling enabled. r=kats
They were revised in bug 1158392 to work with containerless scrolling and
not with container scrolling.

Differential Revision: https://phabricator.services.mozilla.com/D22744

--HG--
extra : moz-landing-system : lando
2019-03-08 19:36:39 +00:00
Botond Ballo d5b02efa59 Bug 1533803 - Mark webm-video reftests as only failing on Android nightly. r=kats
They are only failing with containerless scrolling, which is nightly-only
for now.

Differential Revision: https://phabricator.services.mozilla.com/D22732

--HG--
extra : moz-landing-system : lando
2019-03-08 18:47:35 +00:00
Jan Varga de8bd6609d Bug 1517089 - Part 8: Add GetBaseDomainFromSchemeHost to ThirdPartyUtil and make ThirdPartyUtil ref counting thread safe; r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D19202
2019-02-08 21:01:46 +01:00
Emilio Cobos Álvarez 759875a3fe Bug 1530193 - followup: Fix default type and value of browser.display.focus_ring_style.
It warns on debug builds.
2019-03-07 15:06:35 +01:00
Masayuki Nakano 47ef72825f Bug 1466208 - part 29: Create PresShell::EventHandler::ComputeFocusedEventTargetElement() r=smaug
Most remaining code in `PresShell::EventHandler::HandleEvent()` is what computes
event target of the event which should be handled on focused content.  This
patch moves the part to the new method.

Additionally, moves `nsIPresShell::gKeyDownTarget` to
`EventHandler::sLastKeyDownEventTargetElement` and make it use `StaticRefPtr`.

Finally, for using `Element*` instead of `nsIContent*`, changes the result type
of `Document::GetUnfocusedKeyEventTarget()` to `Element*`.

Differential Revision: https://phabricator.services.mozilla.com/D21195

--HG--
extra : moz-landing-system : lando
2019-03-04 06:11:41 +00:00
Miko Mynttinen c0ca483df6 Bug 1526958 - Cache dom::TouchEvent::PrefEnabled in nsDisplayListBuilder r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D20326

--HG--
extra : moz-landing-system : lando
2019-03-04 13:22:05 +00:00
Makoto Kato a312b63f3e Bug 1212398 - Extend timeout value for test_parse_rule.html. r=emilio
Although debug build of Android/arm runs on emulator, test_parse_rule.html
sometimes runs over 5 min. So we should extend timeout value for this.

Differential Revision: https://phabricator.services.mozilla.com/D21663

--HG--
extra : moz-landing-system : lando
2019-03-04 06:12:50 +00:00
Emilio Cobos Álvarez 37d6170f7f Bug 1530177 - Downgrade an assertion to a diagnostic assert since it exposes pre-existing bugs. r=dholbert
nsIconChannel (for moz-icon:// images) is unsound, see bug 1438939.

nsMenuPopupFrame::Init is also unsound on mac, looks like...

I'll try to get them fixed on trunk, but it's not worth crashing release for
this IMO, given it's pre-existing. The assert in PresShell::~PresShell hopefully
avoids exploitable issues.

Differential Revision: https://phabricator.services.mozilla.com/D20945

--HG--
extra : moz-landing-system : lando
2019-02-28 23:37:44 +00:00
violet 3f63d086cd Bug 1528635 - Check urlExtraReferrer not null before dereference to avoid crash r=longsonr
urlExtraReferrer could be null, we should check before dereference.  Otherwise
it will cause crash when webrender is enabled by gfx.webrender.enabled=true
and gfx.webrender.all=true,

Differential Revision: https://phabricator.services.mozilla.com/D20805

--HG--
extra : moz-landing-system : lando
2019-03-03 19:35:42 +00:00
Masayuki Nakano 3ea27c2fd8 Bug 1466208 - part 28: Make PresShell::EventHandler::HandleEvent() handle non-using-coordinates events without frame before with frame case r=smaug
When the event is not handled with coordinates and there is no frame for
`mPresShell`, `PresShell::EventHandler::HandleEvent()` handles the events
simpler than the case there is a frame.  Therefore, this patch moves the
`else` block of `if (aFrame)` and reduce the indent of `if (aFrame)` case.

Differential Revision: https://phabricator.services.mozilla.com/D21194

--HG--
extra : moz-landing-system : lando
2019-03-02 20:35:21 +00:00
Hiroyuki Ikezoe f0fc35f1b8 Bug 1531470 - Use nsLayoutUtils::GetNearestScrollableFrame with SAME_DOC and INCLUDE_HIDDEN flags to get position:sticky target scrollable frame. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D21835

--HG--
extra : moz-landing-system : lando
2019-03-03 00:33:55 +00:00
Emilio Cobos Álvarez f02f6a3545 Bug 1218257 - Use rust lengths for the SVG lengths. r=boris
As it turns out we need this to avoid losing precision both during painting and
during serialization.

This patch also changes to serialize `context-value` if it's the computed value.

I could keep the previous behavior, but it makes no sense to serialize the
initial value. We're the only ones to support this value anyway, and I couldn't
find a definition or spec for this.

Also update tests and expectations for:

 * New unexpected passes.
 * Always serializing the unit in getComputedStyle.
 * Calc and interpolation support.

Chrome also always serializes the unit in getComputedStyle, so I'm pretty sure
this is compatible with them. Chrome is inconsistent and keeps numbers in
specified style, but that's inconsistent with itself and with other quirky
lengths, so I updated the tests instead.

Differential Revision: https://phabricator.services.mozilla.com/D21819
2019-03-03 00:16:24 +01:00
Emilio Cobos Álvarez 7e10c7b612 Bug 1218257 - Cleanup and fix interpolation of SVG lengths. r=boris
Instead of storing them as LengthPercentage | Number, always store as
LengthPercentage, and use the unitless length quirk to parse numbers instead.

Further cleanups to use the rust representation can happen as a followup, which
will also get rid of the boolean argument (since we can poke at the rust length
itself). That's why I didn't bother to convert it to an enum class yet.

Differential Revision: https://phabricator.services.mozilla.com/D21804
2019-03-03 00:16:13 +01:00
Jeff Muizelaar 70f8b5c221 Bug 1532088. Use ImageMask directly instead of duplicating it as WrImageMask. r=kats
WrImageMask is a relic from before we had good bindings generation.

Differential Revision: https://phabricator.services.mozilla.com/D21845

--HG--
extra : moz-landing-system : lando
2019-03-02 21:48:06 +00:00
Masayuki Nakano 291457b9da Bug 1466208 - part 27: Create PresShell::EventHandler::HandleEventUsingCoordinates() r=smaug
Now, the block in HandleEvent(), which handles event using coordinates is
less than 200 lines.  Perhaps, this is good amount to be split to a method.

This patch just moves the block to a new method.

Differential Revision: https://phabricator.services.mozilla.com/D21193

--HG--
extra : moz-landing-system : lando
2019-03-02 00:03:01 +00:00
Razvan Maries cfdc9fc660 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-03-02 12:06:27 +02:00
Razvan Maries c51046f730 Merge mozilla-inbound to mozilla-central a=merge 2019-03-02 11:41:18 +02:00
Daniel Varga 65ee224091 Backed out changeset 2e63fa41257b (bug 1530594) for mochitest failure use-after-poison /builds/worker/workspace/build/src/layout/xul/nsMenuPopupFrame.h:280:42 in PopupType 2019-03-02 06:45:31 +02:00
Dorel Luca db32a5e766 Bug 1456855 - Fix syntax for test layout/inspector/tests/chrome/test_fontVariationsAPI.xul r=aryx 2019-03-02 01:16:36 +02:00
Neil Deakin 986bb46eaa Bug 1530594, generate frames before setting the active child in a menulist, so that menulists with sizetopopup='none' will still allow keyboard navigation when the menulist has not yet been opened, r=tnikkel 2019-03-01 22:07:58 -05:00
Masayuki Nakano fcb0072133 Bug 1466208 - part 26: Create PresShell::EventHandler::EventTargetData::UpdateTouchEventTarget() r=smaug
After dispatching pointer events, `PresShell::EventHandler::HandleEvent()`
updates event target only when the event is a touch event.  We should do it in
a new method of `EventTargetData`.

Although I don't know why this is done in
`PresShell::EventHandler::DispatchPrecedingPointerEvent()`.

Differential Revision: https://phabricator.services.mozilla.com/D21192

--HG--
extra : moz-landing-system : lando
2019-03-02 00:02:10 +00:00
Boris Chiou 192a13d12f Bug 1526850 - Part 4: Add nsCSSPropertyIDSet::IsSubsetOf() for checking the restrictions of some arguments. r=hiro
We restrict the argument (i.e. `nsCSSPropertyIDSet`) of some functions is
the subset of other property set (e.g. transform-like properties), so
add this function for better readability.

Depends on D19629

Differential Revision: https://phabricator.services.mozilla.com/D21598

--HG--
extra : moz-landing-system : lando
2019-03-01 21:13:07 +00:00
Boris Chiou a47dc39197 Bug 1526850 - Part 3: Use DisplayItemType as the input of AddTransitionsAndAnimationsToLayer. r=hiro
Transform display item may have multiple properties, so it's better to
use display item type as the input.

Also, factor some code out of AddAnimationsForProperty, so we can easier
to extend this for multiple properties.

We will pass a list of layers::Animation to the compositor thread. In
this list, the animations belonging to the same property are grouped together,
so we can easily separate the animations by property and sample the animations
for each property on the compositor thread. (Will do this in Bug 1425837.)

Depends on D19628

Differential Revision: https://phabricator.services.mozilla.com/D19629

--HG--
extra : moz-landing-system : lando
2019-03-01 21:13:05 +00:00
Boris Chiou 97ae508f2d Bug 1526850 - Part 2: Let FindAnimationsForCompositor take nsCSSPropertyIDSet. r=hiro
We use DisplayItemType as the input of HasAnimationsForCompositor, and
nsCSSPropertyIDSet as the input of GetAnimationsForCompositor.

The caller of HasAnimationsForCompositor just wants to check if there is
any compositor animation for a display item, so we can replace it by the
display item, and get the properties from this display item.

However, the caller of GetAnimationsForCompositor may use a subset of
transform-like properties for getting scale factors, or use all the
transform-like properties for sending all transform animations to the
compositor thread.

Depends on D19630

Differential Revision: https://phabricator.services.mozilla.com/D19628

--HG--
extra : moz-landing-system : lando
2019-03-01 21:13:03 +00:00
Boris Chiou 55287b9a0b Bug 1526850 - Part 1: Add a function which sets RunningOnCompositor by DisplayItemType. r=hiro
FrameLayerBuilder needs to clear this flag by DisplayItemType, so we add
a new function for it.

Differential Revision: https://phabricator.services.mozilla.com/D19630

--HG--
extra : moz-landing-system : lando
2019-03-01 21:13:01 +00:00
Joel Maher d99950f9a4 Bug 1456855 - adjust manifests for tests that now run with the new linux64 FreeType. r=ahal
Depends on D21559

Differential Revision: https://phabricator.services.mozilla.com/D21560

--HG--
extra : moz-landing-system : lando
2019-03-01 20:35:47 +00:00
Botond Ballo 83a64ce389 Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D18367

--HG--
extra : moz-landing-system : lando
2019-03-01 20:18:35 +00:00
Masayuki Nakano 72ca6260c0 Bug 1466208 - part 25: Create PresShell::EventHandler::DispatchPrecedingPointerEvent() r=smaug
Now, we can move the block dispatching preceding pointer event to separated
method.  Then, we can hide the complicated retarget process after dispatching
a pointer event from HandleEvent().

Differential Revision: https://phabricator.services.mozilla.com/D21191

--HG--
extra : moz-landing-system : lando
2019-03-01 02:02:31 +00:00
Gurzau Raul a218f01445 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-03-01 15:14:00 +02:00
Gurzau Raul cdf9392948 Merge inbound to mozilla-central. a=merge 2019-03-01 15:01:31 +02:00
Emilio Cobos Álvarez 3d044b1111 Bug 1296042 - Make word-break: break-word behave like word-break: normal; overflow-wrap: anywhere. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D21398

--HG--
extra : moz-landing-system : lando
2019-03-01 02:33:07 +00:00
Narcis Beleuzu 98480534f6 Backed out changeset 60128088f862 (bug 1531582) for reftest failures on value-prop.html . CLOSED TREE 2019-03-01 07:55:22 +02:00
Narcis Beleuzu 60f9321340 Backed out 2 changesets (bug 1531025) for WR failures on outline-013.html . CLOSED TREE
Backed out changeset fd71937c6f25 (bug 1531025)
Backed out changeset e4028e1ca6c7 (bug 1531025)
2019-03-01 07:22:50 +02:00
Emilio Cobos Álvarez 94bec57b28 Bug 1531582 - Don't drop the change hint for ContentStateChanged on the floor. r=heycam
This doesn't matter yet because all the states that return a change hint are on
stylesheets, but will matter with bug 1472637.

Differential Revision: https://phabricator.services.mozilla.com/D21616

--HG--
extra : moz-landing-system : lando
2019-03-01 02:04:12 +00:00
Masayuki Nakano cfd764b949 Bug 1466208 - part 24: Move `overrideClickTarget` into EventTargetData r=smaug
Currently, PresShell::EventHandler::HandleEvent() sets `overrideClickTarget`
only when Pointer Events is enabled and there is pointer capturing content,
and this is computed while dispatching a pointer event.

So, if we move it into EventTargetData, we can move the pointer event
dispatching block into a separated method and caller can receive it with
an EventTargetData instance which is anyway necessary to receive new
target frame after dispatching a pointer event.

Differential Revision: https://phabricator.services.mozilla.com/D21190

--HG--
extra : moz-landing-system : lando
2019-03-01 01:58:02 +00:00
Gurzau Raul 6b94d177d1 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-03-01 09:28:28 +02:00
Mike Conley ca728851ca Bug 1530862 - Add an Init() method to HTMLMediaElement to be called right after construction to do any AddRef / Release-ing. r=jya,mccr8,smaug
Differential Revision: https://phabricator.services.mozilla.com/D21400

--HG--
extra : moz-landing-system : lando
2019-02-28 19:02:55 +00:00
Emilio Cobos Álvarez 5696ae7e4c Bug 1531582 - Don't drop the change hint for ContentStateChanged on the floor. r=heycam
This doesn't matter yet because all the states that return a change hint are on
stylesheets, but will matter with bug 1472637.

Differential Revision: https://phabricator.services.mozilla.com/D21616
2019-03-01 11:16:36 +01:00
Daniel Holbert 416ea2613e Bug 1531025 part 2: Skip an unnecessary border-radius calculation if the radii are 0 (to avoid division by 0). r=boris
This patch avoids a potential division by 0 (one that's unlikely to be
triggered by real content), for correctness and robustness.

This patch isn't really changing the logic, because the newly-guarded code is
already guarded by a "length < sum" check, and "length" is expected to be
nonnegative [1], which means "sum" would already have been nonzero in cases
where the existing strict less-than comparison returned true.

[1] except for integer overflow or other bizarreness.

Depends on D21578

Differential Revision: https://phabricator.services.mozilla.com/D21579

--HG--
extra : moz-landing-system : lando
2019-02-28 23:52:51 +00:00
Daniel Holbert b28b09a5fc Bug 1531025 part 1: Add braces around conditions in nsIFrame::ComputeBorderRadii(). r=boris
This patch doesn't change any logic/behavior -- it's just adding braces for clarity.

Differential Revision: https://phabricator.services.mozilla.com/D21578

--HG--
extra : moz-landing-system : lando
2019-02-28 23:50:39 +00:00
Lee Salzman a330f87601 Bug 1530471 - remove Moz2D/thebes SkiaGL glue r=jrmuizel
Depends on D21052

Differential Revision: https://phabricator.services.mozilla.com/D21053

--HG--
extra : moz-landing-system : lando
2019-02-28 14:59:16 +00:00
Cosmin Sabou 00f3836a87 Merge mozilla-inbound to mozilla-central. a=merge 2019-02-28 12:57:50 +02:00
Ciure Andrei 14dcb83669 Backed out changeset 28bc841f06fc (bug 1530862) for failing HTMLMediaElement CLOSED TREE 2019-02-28 07:52:37 +02:00
Mike Conley 55a5944b50 Bug 1530862 - Add an Init() method to HTMLMediaElement to be called right after construction to do any AddRef / Release-ing. r=jya,mccr8,smaug
Differential Revision: https://phabricator.services.mozilla.com/D21400

--HG--
extra : moz-landing-system : lando
2019-02-27 23:40:00 +00:00
Masayuki Nakano 1a1542b28c Bug 1466208 - part 23: Create PresShell::EventHandler::ComputeEventTargetFrameAndPresShellAtEventPoint() r=smaug
We cannot move each block into separated methods while computing EventTargetData
because we need to check capturing contents, etc.  Therefore, only each block
should be moved to separated methods for now.

This moves a block which computes event target from point of the event.  If
this can be moved to EventTargetData, it might be easier to understand, but
its helper method GetFrameToHandleNonTouchEvent() requires to access members
of EventHandler.  Therefore, we need to treat EventTargetData as an out param
of the new method.

Differential Revision: https://phabricator.services.mozilla.com/D21189

--HG--
extra : moz-landing-system : lando
2019-02-27 13:59:30 +00:00
Hiroyuki Ikezoe 163a45f495 Bug 1531173 - Drop nsIContentViewer.scrollToNode. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D21458

--HG--
extra : moz-landing-system : lando
2019-02-28 01:31:47 +00:00
Boris Zbarsky 2e5c884144 Bug 1489308 part 5. Align the work we do on document.open with the spec. r=mccr8,smaug
The main behavior changes are:

1) We no longer create a new Window when doing document.open().  We use the
same Window but remove all the event listeners on it and on the existing DOM
tree before removing the document's existing kids.

2) We no longer create a new session history entry.  The existing one always
gets replaced instead.

3) We now support document.open on documents that are not in a Window.

The reasons for the various test changes are as follows:

The change to browser_modifiedclick_inherit_principal.js is because we no
longer set the docshell to a wyciwyg URL when document.open() happens and the
test was depending on that to terminate.

browser_wyciwyg_urlbarCopying.js is being removed because it's trying to test
wyciwyg URIs, which no longer exist.

The changes in docshell/test/navigation are because document.open() no longer
affects session history.  One of the tests was testing the interactions there
and is being removed; another is being repurposed to just test that
document.open() does not affect history.length.

The change to test_x-frame-options.html is because document.open() now removes
event listeners on the window, which it didn't use to do (and in the specific
case in this test reused the existing inner too, so the listener was still
around in practice).  The new behavior matches other browsers.

The removal of test_bug172261.html is because document.open() no longer affects
session history, so you can't go back across it or forward to the "opened"
state, so the situation that test is trying to test no longer exists.

The changes to test_bug255820.html are because reloading a document after
document.open() will now just load the URL of the document that was the entry
document for the open() call, not reload the written content.  So there's not
much point testing reload behavior, and in this test it was just reloading the
toplevel test file inside the frames.

The change to test_bug346659.html is because now we no longer create a new
Window on document.open().

The change to test_bug1232829.html is because document.open() (implicit in this
test) no longer adds history entries, so the back() was just leaving the test
page instead of going back across the document.open().  The test is a
crashtest in practice, so might still be testing something useful about how
document.open() interacts with animations.

The change to test_bug715739.html is because the URL of the document after
document.open() is now the URL of the entry document, not a wyciwyg URL, so
reload() has different behavior than it used to.

The change to test_bug329869.html is because now when we go back we're
reloading the original document we had, not doing a wyciwyg load, and the
security info now doesn't include the untrusted script.

The changes to the wpt expectations are removing a bunch of expected failures
now that we pass those tests and disabling some tests that are fundamentally
racy and hence fail randomly.  The latter all have github issues filed for the
test problem.

The change to testing/web-platform/tests/common/object-association.js is fixing
tests that were not matching the spec (and were failing in other browsers).

The change to parser-uses-registry-of-owner-document.html is fixing tests that
were not matching the spec (and were failing in other browsers).

The change to document-write.tentative.html is because the test was buggy: it
was using the same iframe element for all its tests and racing loads from some
tests against API calls from other tests, etc.  It's a wonder it ever managed
to pass, independent of these patches (and in fact it doesn't pass according to
wpt.fyi data, even in Firefox).

The changes in html/browsers/history/the-history-interface are because
document.open() no longer adds history entries.  The test was failing in all
other browsers for the same reason.

The changes in html/browsers/history/the-location-interface are because
reloading a document.open()-created thing now loads the URL of the page that
was the entry document for the open() call.  The test was failing in all other
browsers.

The change to reload_document_open_write.html is because we now reload the url
of the document that entered the script that called open() when we reload, not
the written content.  Other browsers were failing this test too; Gecko with
the old document.open implementation was the only one that passed.

The change to http-refresh.py is to fix a test bug: it was not returning a
Content-Type header, so we were putting up helper app dialogs, etc.

The change to test_ext_contentscript.js is because we no create a new global
for document.open() calls.  Kris Maglione OKed this part.

Differential Revision: https://phabricator.services.mozilla.com/D17323

--HG--
extra : moz-landing-system : lando
2019-02-27 23:24:48 +00:00
Jonathan Kingston f6680698bd Bug 1525319 - Removing context from OnDataAvailable r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20881

--HG--
extra : moz-landing-system : lando
2019-02-27 23:42:27 +00:00
Jonathan Kingston c4853316e7 Bug 1525319 - Removing context from OnStopRequest r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20770

--HG--
extra : moz-landing-system : lando
2019-02-27 23:41:31 +00:00
Jonathan Kingston f7e35ae39e Bug 1525319 - Removing context from OnStartRequest r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20769

--HG--
extra : moz-landing-system : lando
2019-02-27 23:41:04 +00:00
Ciure Andrei b7e9c5588b Backed out changeset 2c0ca241bd4b (bug 1519621) for frame-reconstruction-scroll-clamping.html high frequency failures CLOSED TREE 2019-02-28 01:52:04 +02:00
Ciure Andrei 56434d5988 Backed out 2 changesets (bug 1509466) for rusttests build bustages CLOSED TREE
Backed out changeset 65c438efa01f (bug 1509466)
Backed out changeset e1cdaf345c39 (bug 1509466)
2019-02-28 01:29:15 +02:00
Brian Birtles bcad38978b Bug 1509466 - Make cancelAnimationFrame cancel a pending request frame callback scheduled in the same frame; r=farre
As per the following change to the HTML spec:

  86b05f8a07

when running a requestAnimationFrame callback it should be possible to cancel
another requestAnimationFrame callback scheduled to run in the same frame by
using cancelAnimationFrame.

See issue:

  https://github.com/whatwg/html/issues/4359

Differential Revision: https://phabricator.services.mozilla.com/D20974

--HG--
extra : moz-landing-system : lando
2019-02-27 10:18:48 +00:00
Brian Birtles c2a7b658ea Bug 1509466 - Pass frame request callbacks along with their handles to nsRefreshDriver; r=farre
In the next patch in this series we want to compare the handle of frame
callbacks we are about to run,  with a set of canceled handles stored on the
document. This patch makes us pass the handles along with the callbacks so we
can do that.

Incidentally doing this allows us to just swap array elements when building up
the refresh driver's set of callbacks to run. That is hopefully a little more
efficient than running the implicit conversion operator on each item and then
appending to an array.

Differential Revision: https://phabricator.services.mozilla.com/D20973

--HG--
extra : moz-landing-system : lando
2019-02-27 13:43:23 +00:00
Botond Ballo 34d9171482 Bug 1519621 - Make sure ScrollToRestoredPosition() restores both the layout and visual scroll positions. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D18367

--HG--
extra : moz-landing-system : lando
2019-02-27 20:19:33 +00:00
Ehsan Akhgari f9817933f0 Bug 1531019 - Ignore the return value of IsSelectable in order to make sure Coverity isn't confused by unchecked return value with IsSelectable returning a boolean; r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D21362

--HG--
extra : moz-landing-system : lando
2019-02-27 16:25:52 +00:00
arthur.iakab 20c9fd087e Bug 1525117 - disable long-url-list-stack-overflow.html on Windows 7 debug r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D21165

--HG--
extra : moz-landing-system : lando
2019-02-26 11:09:24 +00:00
Emilio Cobos Álvarez 90554be433 Bug 1530826 - Fix computed value clamping. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D21268

--HG--
extra : moz-landing-system : lando
2019-02-26 23:34:25 +00:00
Andreea Pavel b28887843f Backed out 2 changesets (bug 1509466) for win build bustages
Backed out changeset da0f977287bd (bug 1509466)
Backed out changeset de1481b9b6fa (bug 1509466)
2019-02-28 06:08:46 +02:00
Brian Birtles 0f89db0c64 Bug 1509466 - Make cancelAnimationFrame cancel a pending request frame callback scheduled in the same frame; r=farre
As per the following change to the HTML spec:

  86b05f8a07

when running a requestAnimationFrame callback it should be possible to cancel
another requestAnimationFrame callback scheduled to run in the same frame by
using cancelAnimationFrame.

See issue:

  https://github.com/whatwg/html/issues/4359

Differential Revision: https://phabricator.services.mozilla.com/D20974

--HG--
extra : rebase_source : ff3c69a82f0ef61f562edd1610017a17c8f26276
2019-02-25 15:15:56 +09:00
Brian Birtles 8bb88e9016 Bug 1509466 - Pass frame request callbacks along with their handles to nsRefreshDriver; r=farre
In the next patch in this series we want to compare the handle of frame
callbacks we are about to run,  with a set of canceled handles stored on the
document. This patch makes us pass the handles along with the callbacks so we
can do that.

Incidentally doing this allows us to just swap array elements when building up
the refresh driver's set of callbacks to run. That is hopefully a little more
efficient than running the implicit conversion operator on each item and then
appending to an array.

Differential Revision: https://phabricator.services.mozilla.com/D20973

--HG--
extra : rebase_source : 4786ffedf33051298c9593a588a6e8ce70cabf04
2019-02-25 15:02:12 +09:00
Daniel Holbert a790bf04bf Bug 1530462 followup: remove end-of-line whitespace in testcase. (no review, trivial test-only change) 2019-02-27 10:15:35 -08:00
Brian Grinstead 63c5cd8f87 Bug 1465457 - Load osx theme reftests over chrome r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D20586

--HG--
extra : moz-landing-system : lando
2019-02-26 17:13:46 +00:00
Brian Grinstead 73784db919 Bug 1465457 - Add support for chrome reftests r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D20585

--HG--
extra : moz-landing-system : lando
2019-02-26 17:13:44 +00:00
Daniel Holbert ad874c840f Bug 1530462: Adjust reftest 'float-retry-push-image.html' to allow for rounding error on linear-gradient edge. r=bradwerth
And while we're at it, update the reference case to have "Reference" in
its title, so that the reference case and testcases are easier to distinguish
when viewing them side-by-side in several tabs.

Differential Revision: https://phabricator.services.mozilla.com/D21045

--HG--
extra : moz-landing-system : lando
2019-02-26 16:50:08 +00:00
shindli c442603050 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-02-26 18:58:45 +02:00
shindli 2869f9215c Merge inbound to mozilla-central. a=merge 2019-02-26 18:54:03 +02:00
Kartikaya Gupta 06beabd0b7 Bug 1514992 - Update annotation for webrender. r=lsalzman
Apparently we sometimes fall back to skia canvas with WebRender if ANGLE
fails to initialize. This makes the azureSkia condition true, but the
test still passes because of WebRender's magical properties. This patch
updates the annotation to reflect reality, so we don't get unexpected
passes.

Differential Revision: https://phabricator.services.mozilla.com/D21012

--HG--
extra : moz-landing-system : lando
2019-02-26 11:51:19 +00:00
Brian Grinstead db663b11af Bug 1508446 - Require that [accesskey] gets set on <xul:label> to enable formatting without referencing a binding parent;r=paolo
Previously, if the accesskey attribute was missing then the label would reach up
to binding parent to find it's accesskey. In practice, bindings already do
[xbl:inherits=accesskey] to send it down to the label anyway.

The problem with this is that for controls without accesskeys, the attribute doesn't get set,
so the label will access the control from JS. This is fine for XBL, since typically
the label XBL will construct at the same time as the control, but when migrating
to Custom Elements, the label gets connected even when the control is hidden.

Differential Revision: https://phabricator.services.mozilla.com/D12355

--HG--
extra : moz-landing-system : lando
2019-02-26 16:41:47 +00:00
Emilio Cobos Álvarez b7bb398730 Bug 1516454 - Use rust lengths for border corners. r=boris
The test in https://github.com/web-platform-tests/wpt/pull/15423 hasn't been
synced over yet, but it passes with this patch of course.

Differential Revision: https://phabricator.services.mozilla.com/D20960
2019-02-26 06:01:34 -08:00
Hiroyuki Ikezoe 8802c054f3 Bug 1530571 - Add scroll-padding cases in test_transitions_per_property.html. r=boris
Depends on D21153

Differential Revision: https://phabricator.services.mozilla.com/D21154

--HG--
extra : moz-landing-system : lando
2019-02-26 10:17:33 +00:00
Hiroyuki Ikezoe 146ce4ddef Bug 1530571 - Add scroll-margin cases in test_transitions_per_property.html. ?boris r=boris
Depends on D21151

Differential Revision: https://phabricator.services.mozilla.com/D21152

--HG--
extra : moz-landing-system : lando
2019-02-26 10:17:01 +00:00
Hiroyuki Ikezoe 1afaf68dd9 Bug 1530571 - Add entries for for scroll-padding in property_database.js. r=emilio
All test data came from wpt.

Depends on D21150

Differential Revision: https://phabricator.services.mozilla.com/D21151

--HG--
extra : moz-landing-system : lando
2019-02-26 10:16:48 +00:00
Hiroyuki Ikezoe da985ea171 Bug 1530571 - Add entries for for scroll-margin in property_database.js. r=emilio
All test data came from wpt.

Depends on D21149

Differential Revision: https://phabricator.services.mozilla.com/D21150

--HG--
extra : moz-landing-system : lando
2019-02-26 10:16:36 +00:00
Hiroyuki Ikezoe 083e5bee19 Bug 1530571 - Add an entry for scroll-snap-align in property_database.js. r=emilio
All test data came from scroll-snap-align-{valid,invalid}.html in wpt.

Differential Revision: https://phabricator.services.mozilla.com/D21149

--HG--
extra : moz-landing-system : lando
2019-02-26 10:16:18 +00:00
Emilio Cobos Álvarez 6250346acd Bug 1530247 - Turn the Servo serialization property whitelist into a blacklist. r=boris
It's easier to see what remains that way. Done with the following script:

```
execfile("layout/style/ServoCSSPropList.py")
for p in data:
  if p.type() != "longhand":
    continue
  if "GetCSNeedsLayoutFlush" in p.flags or "SerializedByServo" in p.flags or "Internal" in p.flags:
    continue
  print(p.name)
```

Ran like:

```
$ python print.py | sort
```

From the objdir.

Differential Revision: https://phabricator.services.mozilla.com/D20965
2019-02-25 22:07:16 -08:00
Noemi Erli 92db37a618 Merge inbound to mozilla-central. a=merge 2019-02-26 05:53:25 +02:00
Cosmin Sabou a499294d09 Backed out 4 changesets (bug 1516454, bug 1530247) for multiple failures on Linux x64 asan. CLOSED TREE
Backed out changeset 180c7672c57c (bug 1516454)
Backed out changeset a460a4d0a66c (bug 1516454)
Backed out changeset c6ab8d3dd19a (bug 1530247)
Backed out changeset 43862dc87e0b (bug 1516454)
2019-02-26 00:49:27 +02:00
Cosmin Sabou 0efdc36b08 Backed out changeset fe756391d9f9 (bug 1514992) for linux qr debug reftest failures on canvas-outside-document-invalidate-02.html. CLOSED TREE 2019-02-26 00:06:38 +02:00
Emilio Cobos Álvarez 0c417e25d2 Bug 1516454 - Remove an extra brace on a CLOSED TREE, whoops. r=me 2019-02-25 13:44:22 -08:00
Emilio Cobos Álvarez e2933c6040 Bug 1516454 - Add some braces on a CLOSED TREE. r=me 2019-02-25 13:32:57 -08:00
Emilio Cobos Álvarez 5ed1049145 Bug 1530247 - Turn the Servo serialization property whitelist into a blacklist. r=boris
It's easier to see what remains that way. Done with the following script:

```
execfile("layout/style/ServoCSSPropList.py")
for p in data:
  if p.type() != "longhand":
    continue
  if "GetCSNeedsLayoutFlush" in p.flags or "SerializedByServo" in p.flags or "Internal" in p.flags:
    continue
  print(p.name)
```

Ran like:

```
$ python print.py | sort
```

From the objdir.

Differential Revision: https://phabricator.services.mozilla.com/D20965
2019-02-25 12:42:33 -08:00
Emilio Cobos Álvarez b411b3894d Bug 1516454 - Use rust lengths for border corners. r=boris
The test in https://github.com/web-platform-tests/wpt/pull/15423 hasn't been
synced over yet, but it passes with this patch of course.

Differential Revision: https://phabricator.services.mozilla.com/D20960
2019-02-25 12:42:31 -08:00
Alex Henrie 9d83a1b171 Bug 1529182 - Correctly apply scale factor when clamping SVG text size. r=longsonr
--HG--
extra : amend_source : 63508a69c60363cac314ae6d1278df728c3fa0a6
2019-02-24 15:14:32 -07:00
Nika Layzell a5cbaaf6e7 Bug 1522579 - Part 4: Remove {As,Is}ContentParent, r=mccr8
These casts are now unnecessary after Part 2, due to all consumers directly
using `ContentParent`.

Depends on D20551

Differential Revision: https://phabricator.services.mozilla.com/D20552

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:51 +00:00
Kartikaya Gupta 906d3332da Bug 1514992 - Update annotation for webrender. r=lsalzman
Apparently we sometimes fall back to skia canvas with WebRender if ANGLE
fails to initialize. This makes the azureSkia condition true, but the
test still passes because of WebRender's magical properties. This patch
updates the annotation to reflect reality, so we don't get unexpected
passes.

Differential Revision: https://phabricator.services.mozilla.com/D21012

--HG--
extra : moz-landing-system : lando
2019-02-25 16:13:01 +00:00
Andreea Pavel cd1b27ad4d Backed out 6 changesets (bug 1522579) for build bustages on a CLOSED TREE
Backed out changeset 3c8320baa230 (bug 1522579)
Backed out changeset 0a288a3d85cd (bug 1522579)
Backed out changeset ecfd27e7d150 (bug 1522579)
Backed out changeset eda40fca0758 (bug 1522579)
Backed out changeset 5c7aafa32a0a (bug 1522579)
Backed out changeset a3c5a2c16411 (bug 1522579)
2019-02-25 18:19:38 +02:00
Nika Layzell 73b719457a Bug 1522579 - Part 4: Remove {As,Is}ContentParent, r=mccr8
These casts are now unnecessary after Part 2, due to all consumers directly
using `ContentParent`.

Depends on D20551

Differential Revision: https://phabricator.services.mozilla.com/D20552

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:21 +00:00
Matt Woodrow b09e2d7048 Bug 1468021 - Handle anonymous content when comparing using DoCompareTreePosition. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D20596

--HG--
extra : moz-landing-system : lando
2019-02-25 05:22:43 +00:00
Dorel Luca 4a4dcd57fa Backed out 4 changesets (bug 1525319) for Android failures in dom/base/test/test_progress_events_for_gzip_data.html
Backed out changeset b73f033efb41 (bug 1525319)
Backed out changeset 1d318d5c6b98 (bug 1525319)
Backed out changeset 6d73418988d4 (bug 1525319)
Backed out changeset 84ca79bd2dc3 (bug 1525319)
2019-02-25 04:06:11 +02:00
Dzmitry Malyshau 0bf19769e6 Bug 1519718 - WR mix-blend rewrite r=gw
This is a new implementation of mix-blend compositing that is meant to be more idiomatic to WR and efficient.

Previously, mix-blend mode was composed in the following way:
  1. parent stacking context was forced to isolate
  2. source picture is also isolated
  3. when rendering the isolated context, the framebuffer is read upon reaching the source. Both the readback and the source are placed in the RT cache.
  4. a mix-blend draw call is issued to read from those cache segments and blend on top of the backdrop

The new implementation works by using the picture cutting (intruduced for preserve-3D contexts earlier) and some bits of magic:
  1. backdrop stacking context is isolated with a special composition mode that prevents it from actually rendeing unless the suorce stacking context is invisible.
  2. source stacking context is isolated with mix-blend composition mode that has a pointer to the backdrop picture
  3. the instance of the backdrop picture is placed as a peer of the source picture (not a child)
  4. if the backdrop is invisible, the source is drawn as a simple blit
  5. otherwise, it's a draw call that reads from the isolated backdrop and source textures

Note the differences:
  - parent stacking context is not isolated, but backdrop is
  - no framebuffer readback is involved
  - the source and backdrop pictures are rendered in parallel in a pass, improving the batching
  - we don't blend onto the backdrop while reading from the backdrop copy at the same time
  - the depth of the render pass tree is reduced: previously the parent and the source were isolated, now the source and the backdrop, which are siblings

Differential Revision: https://phabricator.services.mozilla.com/D20608

--HG--
rename : gfx/wr/wrench/reftests/blend/multiply-2-ref.yaml => gfx/wr/wrench/reftests/blend/multiply-3-ref.yaml
rename : gfx/wr/wrench/reftests/blend/multiply-3.yaml => gfx/wr/wrench/reftests/blend/multiply-4.yaml
extra : moz-landing-system : lando
2019-02-25 00:17:22 +00:00
Jonathan Kingston 63ab2bd8aa Bug 1525319 - Removing context from OnDataAvailable r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20881

--HG--
extra : moz-landing-system : lando
2019-02-24 20:27:55 +00:00
Jonathan Kingston 332531fa9c Bug 1525319 - Removing context from OnStopRequest r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20770

--HG--
extra : moz-landing-system : lando
2019-02-24 20:26:59 +00:00
Jonathan Kingston 2441197975 Bug 1525319 - Removing context from OnStartRequest r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D20769

--HG--
extra : moz-landing-system : lando
2019-02-24 20:26:16 +00:00
Dorel Luca d0bf3145ed Backed out changeset 65294fe0c614 (bug 1529831) for wpt failures in /html/rendering/replaced-elements/svg-embedded-sizing/svg-in-img-auto.html 2019-02-25 01:01:39 +02:00
Matt Woodrow 02b8f3e382 Bug 1529831 - Don't create wrap lists for positioned frames that are leaves. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D20773

--HG--
extra : moz-landing-system : lando
2019-02-22 10:36:44 +00:00
Boris Chiou 988dc49bcc Bug 1529422 - Part 4: Log a warning if webpage is updating individual transforms. r=mstange
All transform-like properties should set PositioningPropertyMutated.

Depends on D19632

Differential Revision: https://phabricator.services.mozilla.com/D19635

--HG--
extra : moz-landing-system : lando
2019-02-24 03:26:26 +00:00
Boris Chiou 57e96cc438 Bug 1529422 - Part 3: Make sure the callers of ActivityTracker takes individual transforms into account. r=mstange
Add comments and property check for the caller of ActivityTracker.

Depends on D19525

Differential Revision: https://phabricator.services.mozilla.com/D19632

--HG--
extra : moz-landing-system : lando
2019-02-22 23:36:19 +00:00
Boris Chiou 542cdbc4f0 Bug 1529422 - Part 2: Let GetScaleValue support individual transforms. r=hiro,emilio
So we can let KeyframeEffect::ContainsAnimatedScale check individual
transforms, which is used by ActiveLayerTracker.

Depends on D19631

Differential Revision: https://phabricator.services.mozilla.com/D19525

--HG--
extra : moz-landing-system : lando
2019-02-24 03:27:51 +00:00
Boris Chiou cc43fb306a Bug 1529422 - Part 1: Add all transform-like properties into ActiveLayerTracker. r=hiro,mattwoodrow
Let ActiveLayerTracker track individual transforms. (Will add
motion-path in the future.)

Besides, using a property set for transform and opacity is more efficient,
so let's change it. For background position, we use a different code path,
so we can have more restrictions in IsStyleAnimated.

Differential Revision: https://phabricator.services.mozilla.com/D19631

--HG--
extra : moz-landing-system : lando
2019-02-23 00:21:45 +00:00
Kartikaya Gupta 54824644ff Bug 1529288 - Increase fuzz even more, there are still intermittents. r=me 2019-02-23 07:51:56 -05:00
Razvan Maries d7a2f49ed8 Merge mozilla-inbound to mozilla-central a=merge 2019-02-23 06:15:14 +02:00
Razvan Maries 5173412ca4 Backed out changeset 27284783216c (bug 1529182) for reftest fails on text-stroke-scaling-02a.html after fix. a=backout 2019-02-23 02:21:08 +02:00
Coroiu Cristina 4a72e9cc9a Merge inbound to mozilla-central a=merge 2019-02-22 18:30:44 +02:00
Samuel Thibault fb05007f2c Bug 919508 - layout: Do not trim spaces when inspected from accessibility layer r=jfkthame
--HG--
extra : histedit_source : 3fbe469291ddca0344d6fd88dcadb6282f1ca846
2019-02-22 22:12:48 +01:00
Samuel Thibault 3ec9cb5130 Bug 919508 - nsTextFrame::GetTrimmedOffsets: Rework flag parameters r=jfkthame
--HG--
extra : histedit_source : 5c59e716d7a94030b6146bc471bc8dbbd92c7122
2019-02-22 22:12:27 +01:00
Mats Palmgren 0f4868138a Bug 1526567 - [css-grid] Make the block-axis percentage basis be indefinite for measuring reflows. r=dholbert 2019-02-22 13:58:24 +01:00
Kartikaya Gupta e8b8cb0df8 Bug 1529288 - Increase number of allowed fuzzy pixels slightly. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D20734

--HG--
extra : moz-landing-system : lando
2019-02-22 11:47:50 +00:00
Alex Henrie 6dbf36393c Bug 1529182 - Recalculate context scale when inflating mRect of SVG text. r=longsonr
--HG--
extra : histedit_source : 532cfc0bb9c8ae23a9d2d8ab31452d8a3bdb7525
2019-02-21 09:06:28 -07:00
Ting-Yu Lin 000992e33e Bug 1527725 - Exclude ColumnSetWrapperFrame from the first letter style consistency check in nsBlockFrame. r=dbaron
If there's ::first-letter pseudo element on the multicol container,
ColumnSetWrapperFrame will have the first letter style, but it won't get
the NS_BLOCK_HAS_FIRST_LETTER_STYLE bit during frame construction. The
actual first-letter frame construction happens under -moz-column-content
anonymous block.

This patch excludes ColumnSetWrapperFrame from the debug check to meet
the expectation.

Add a reftest to make sure ::first-letter and ::first-line still work
after introducing ColumnSetWrapperFrame, and no assertion is fired.

Differential Revision: https://phabricator.services.mozilla.com/D20757

--HG--
extra : moz-landing-system : lando
2019-02-22 01:14:45 +00:00
Timothy Nikkel 4a54583c19 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-26 00:16:36 -06:00
Timothy Nikkel b2695b4b73 Backed out changeset 2bf33f573505 2019-02-25 22:48:35 -06:00
Timothy Nikkel b9d0354d8a Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 22:45:15 -06:00
Noemi Erli ee7d7c1ee3 Merge mozilla-central to mozilla-inbound
--HG--
rename : tools/lint/test/files/flake8/bad.py => tools/lint/test/files/flake8/subdir/exclude/bad.py
rename : taskcluster/taskgraph/util/templates.py => tools/tryselect/util/dicttools.py
extra : rebase_source : 67b83a21bd5d4a6d964cf26db2cd7ca155336022
2019-02-26 06:24:02 +02:00
Noemi Erli a50bfca7a3 Backed out 10 changesets (bug 1505871) for wrench bustages CLOSED TREE
Backed out changeset 045ab0ec3613 (bug 1505871)
Backed out changeset 6486435a048d (bug 1505871)
Backed out changeset 9be871042749 (bug 1505871)
Backed out changeset 0007feaf988d (bug 1505871)
Backed out changeset 3cb8fb01e77e (bug 1505871)
Backed out changeset 2fff213d97e3 (bug 1505871)
Backed out changeset 1ad20d485eca (bug 1505871)
Backed out changeset 0fd8742fa662 (bug 1505871)
Backed out changeset 1899600a7985 (bug 1505871)
Backed out changeset f9578d20e54e (bug 1505871)
2019-02-26 03:43:12 +02:00
Timothy Nikkel 17f5b2d751 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 19:20:26 -06:00
Mats Palmgren d23274a2ed Bug 1529036 - Clip <button> to its border area for event hit testing, but not its children. r=emilio 2019-02-25 22:16:57 +01:00
Ehsan Akhgari c9d73149e1 Bug 1529619 - Remove a needless null check from nsCSSFrameConstructor::BeginBuildingScrollFrame() which confuses Coverity; r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D20673

--HG--
extra : moz-landing-system : lando
2019-02-21 16:47:45 +00:00
Narcis Beleuzu 561078725c Bug 1526114 - Disable 289480-ref.html on linux-qr r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D20626

--HG--
extra : moz-landing-system : lando
2019-02-21 11:33:13 +00:00
Narcis Beleuzu 191967c019 Backed out 2 changesets (bug 1526114) for reftest failures on reftest.list . CLOSED TREE
Backed out changeset 9b4bb0f83ee4 (bug 1526114)
Backed out changeset 601af10b1100 (bug 1526114)
2019-02-21 09:03:04 +02:00
Cosmin Sabou d0c2d19441 Bug 1526114 - Add 289480.html for the reference file to fix the reftest failures. CLOSED TREE 2019-02-21 07:26:21 +02:00