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

67977 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez a6bbc0eb10 Bug 1395964 - Don't clear the previously painted image on intrinsic size changes. r=tnikkel
This is needed if we want to handle cases like the reporter's example or Google
Images. Rendering the old image upscaled is much better than not rendering
anything while it's loading.

I added a test for the reframing bit, but I don't know how to add a test for the
second bit.

Differential Revision: https://phabricator.services.mozilla.com/D23127
2019-03-18 16:20:34 +01:00
Emilio Cobos Álvarez 2884637218 Bug 1395964 - Make image loading changes not reframe. r=tnikkel
Bug 1472637 makes the decision of whether to construct an image frame not depend
on this, so this is sound.

We need to avoid reframing to fix this bug because otherwise we lose track of
the previously painted image.

Differential Revision: https://phabricator.services.mozilla.com/D23127
2019-03-18 16:18:52 +01:00
Emilio Cobos Álvarez 59c8f44032 Bug 1472637 - Don't display alt text while loading, to match other UAs. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D18518

--HG--
extra : moz-landing-system : lando
2019-03-18 15:15:13 +00:00
Brad Werth e77eba40ba Bug 1501665 Part 10: Modify viewport resize zoom scaling to account for clamped zoom levels. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D21291

--HG--
extra : moz-landing-system : lando
2019-03-18 14:59:12 +00:00
Brad Werth 217c46ca45 Bug 1501665 Part 9: Early exit around an unnecessary call to UpdateVisualViewportSize. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D21287

--HG--
extra : moz-landing-system : lando
2019-03-18 14:58:49 +00:00
Brad Werth a4eaa45fd4 Bug 1501665 Part 8: Allow MVM::RequestReflow to adjust resolution, and do so when destroying the MVM. r=botond
Currently the MobileViewportManager leaves somethings permanently changed
even after it is destroyed: it may have changed the resolution of
the Document, and it may have set a fixed size for the visual viewport.
Both of these changes need to be un-done to return to normal display of
the Document.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 14:58:31 +00:00
Brad Werth 1e6b91bfc7 Bug 1501665 Part 7: Add a new function to allow visual viewport size to be un-set. r=smaug
Once nsIPresShell::SetVisualViewportSize is called, we currently have
no way to restore the default viewport sizing behavior. This corrects that.
We need the default behavior to get correctly-placed scrollbars when
turning off meta viewport handling in Responsive Design Mode panes.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 14:58:07 +00:00
Brad Werth 6c983e6a60 Bug 1501665 Part 5: Change UpdateShouldBuildAsyncZoomContainer to check if document is zoomable. r=botond
Also update ScrollFrameHelper::LayoutScrollbars() to correctly handle
overlay scrollbars when zoomed in in RDM.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 14:57:20 +00:00
Brad Werth b43c639430 Bug 1501665 Part 4: Use the new function as a replacement for APZAllowZooming. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D19239

--HG--
extra : moz-landing-system : lando
2019-03-18 14:56:55 +00:00
Brad Werth e0fb57be15 Bug 1501665 Part 3: Add a new function to determine if a document can use resolution zooming. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D19238

--HG--
extra : moz-landing-system : lando
2019-03-18 14:56:32 +00:00
Brian Birtles 598c65b47f Bug 1518816 - Set the NS_FRAME_MAY_BE_TRANSFORMED bit for animations when we check for the EffectSet; r=hiro
Currently the way we set the NS_FRAME_MAY_BE_TRANSFORMED frame bit for transform
animations fails to take into account the primary/style frame distinction for
display:table content.

This patch moves setting that bit for animations to the point where we already
have a handle on the appropriate EffectSet and already detect the primary/style
frame distinction.

This should be equivalent because:

a) Although it is inside a branch that is only run when |mContent| is set,
   nsLayoutUtils::HasAnimationOfPropertySet will return false if the passed-in
   frame does not have associated content (see
   EffectCompositor::GetAnimationElementAndPseudoForFrame).

b) EffectSet::MayHaveTransformAnimation() should be set if we have any
   transform animations in the EffectSet so this should be equivalent to
   querying nsLayoutUtils::HasAnimationOfPropertySet.

The only other consideration is that this code is only executed when aPrevInFlow
is nullptr. As a result, this patch also updates the branch where aPrevInFlow is
set to copy the NS_FRAME_MAY_BE_TRANSFORMED bit in that case too.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:38 +00:00
Brian Birtles 76cea81357 Bug 1518816 - Set the "may have transform animations" flag on the primary frame; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23635

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:23 +00:00
Brian Birtles 2f2ba2907e Bug 1518816 - Add a crashtest for a scale animation on a block continuation; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23614

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:16 +00:00
Brian Birtles 75b97de014 Bug 1518816 - Rename EffectSet::GetEffectSet(const nsIFrame*) to make it more clear what it does; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23286

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:14 +00:00
Brian Birtles f9f6d9275c Bug 1518816 - Make nsLayoutUtils utility functions for getting animations use the EffectSet::GetEffectSetForFrame; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23285

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:12 +00:00
Brian Birtles 15d4d3276b Bug 1518816 - Rework AnimationUtils::EffectSetContainsAnimatedScale to handle looking up the effect set correctly; r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D23284

--HG--
extra : moz-landing-system : lando
2019-03-18 04:12:10 +00:00
Brian Birtles 04e79479f6 Bug 1518816 - Add EffectSet::GetEffectSetForFrame and use it in FindAnimationsForCompositor; r=hiro
There are many bugs regarding our use of EffectSet::GetEffectSet(nsIFrame*)
because the intention of the caller is not clear. If it is called for the
primary frame of display:table content do we expect it to get the EffectSet
associated with the style frame or not? Generally it depends on if we are
looking for transform animations or not.

Rather than inspecting each call site and making it choose the appropriate frame
to use, this patch introduces a new method to EffectSet to get the appropriate
EffectSet based on the properties the caller is interested in.

This patch also uses this function in FindAnimationsForCompositor which in turns
fixes the glitching observed on Tumblr that arose since a number of places in
our display list code were passing the style frame to
EffectCompositor::HasAnimationsForCompositor.

Over the remainder of this patch series we will convert more callers of
EffectSet::GetEffectSet(nsIFrame*) to this new method before renaming
EffectSet::GetEffectSet to GetEffectSetForStyleFrame to make clear how the
method is intended to work.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:10:30 +00:00
Brian Birtles 8e3d3cbf03 Bug 1518816 - Clarify when and why KeyframeEffect::HasEffectiveAnimationOfPropertySet might return false even when there are effective animations in a property set; r=boris
It took me a long time to understand why
KeyframeEffect::HasEffectiveAnimationOfPropertySet behaved so differently to
KeyframeEffect::HasAnimationOfPropertySet. This patch attempts to clarify that
while making KeyframeEffect::HasEffectiveAnimationOnPropertySet a little more
generally useful. This will allow us to tidy up the various animation checks in
nsLayoutUtils later in this patch series.

Ultimately, however, we should make this check part of the regular compositor
animation vetting machinery in bug 1534884. That should remove a number of
inconsistencies such that we don't need the extended comments added in this
patch.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:10:10 +00:00
Brian Birtles fb706f4828 Bug 1518816 - Replace nsLayoutUtils::HasCurrentTransition with something that takes an element/pseudo pair; r=hiro
The trouble with utility functions that take an nsIFrame is it's not clear what
the caller's intention is. For example, with
nsLayoutUtils::HasCurrentTransition, is the caller asking for transitions on
that frame? Or animations on _both_ that frame and its corresponding
style/primary frame?

Probably the caller hasn't even thought about it and there are likely to be bugs
when display:table content is encountered.

Where practical it's much better to take an element/pseudo pair since it's clear
that the caller is concerned with all animations (or transitions in this case)
on the element regardless of how it is represented in the frame tree.

This patch updates nsLayoutUtils::HasCurrentTransition to take an element/pseudo
pair and moves it to mozilla::AnimationUtils at the same time.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:09:55 +00:00
Brian Birtles 738f8c74d1 Bug 1518816 - Look up the will-change style on the _style_ frame for will-change: transform; r=mattwoodrow
I was unable to create a failing reftest for this since this method is not
used when determining whether or not to create a stacking context.
However, I verified that for content with animated transforms and
will-change:transform on display:table content this change does cause us to
return true from the will-change check in this method when previously it would
not.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:09:35 +00:00
Brian Birtles 3205c6d7ec Bug 1518816 - Make sure all transform-related properties are inherited from a table's inner frame to its wrapper frame; r=mattwoodrow
We test the transform-style of a frame in places like
KeyframeEffect::CanAnimateTransformOnCompositor but this will likely not work as
expected for display:table content since the transform-style will not be
inherited to the primary frame (and later in this patch series we will ensure
that we are dealing with the primary frame in
KeyframeEffect::CanAnimateTransformOnCompositor).

The individual transform properties are new but they should also be inherited so
that all the appropriate tests for "is this frame transformed?" produce the
correct result when these properties are applied.

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

--HG--
extra : moz-landing-system : lando
2019-03-18 04:09:21 +00:00
Sebastian Hengst cee711baf9 Bug 1535353 - update Core :: DOM: * bugzilla product and component meta data in moz.build files after reorganization in bug 1533440 r=hsinyi
Differential Revision: https://phabricator.services.mozilla.com/D23546

--HG--
extra : moz-landing-system : lando
2019-03-17 23:13:22 +00:00
violet 68968a150f Bug 1504072 - non-display outer SVG also doesn't maintain overflow r=longsonr
There is some inconsistency between nsIFrame::FrameMaintainsOverflow() and
nsSVGContainerFrame::ComputeCustomOverflow(). If an element is a nondisplay
outer SVG, the latter gives false while the former returns true. We make them
consistent since nondisplay element doesn't need to maintain overflow.

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

--HG--
extra : moz-landing-system : lando
2019-03-17 11:00:48 +00:00
Ciure Andrei 4763b8d576 Merge inbound to mozilla-central. a=merge
--HG--
rename : testing/web-platform/tests/css/css-images/support/100x100-blue-green.html => testing/web-platform/tests/css/css-images/reference/100x100-blue-green.html
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-1-block.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-block.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-1-generic.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1-generic.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-1.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-1.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-2-generic.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2-generic.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-2.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-2.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-3.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-3.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-5.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-5.xml
rename : testing/web-platform/tests/css/css-namespaces/reftest/ref-lime-6.xml => testing/web-platform/tests/css/css-namespaces/reference/ref-lime-6.xml
rename : testing/web-platform/tests/css/css-transforms/reftest/transform-3d-rotateY-stair-above-ref-001.xht => testing/web-platform/tests/css/css-transforms/reference/transform-3d-rotateY-stair-above-ref-001.xht
rename : testing/web-platform/tests/css/css-transforms/reftest/transform-applies-to-001-ref.xht => testing/web-platform/tests/css/css-transforms/reference/transform-applies-to-001-ref.xht
rename : testing/web-platform/tests/css/css-transforms/reftest/transform-applies-to-002-ref.xht => testing/web-platform/tests/css/css-transforms/reference/transform-applies-to-002-ref.xht
rename : testing/web-platform/tests/css/css-transforms/reftest/transform-origin-01-ref.html => testing/web-platform/tests/css/css-transforms/reference/transform-origin-01-ref.html
rename : testing/web-platform/tests/css/css-transforms/transform-box/support/greensquare200x200.html => testing/web-platform/tests/css/css-transforms/transform-box/reference/greensquare200x200.html
rename : testing/web-platform/tests/css/css-writing-modes/reftest/writing-mode-vertical-lr-002-ref.xht => testing/web-platform/tests/css/css-writing-modes/reference/writing-mode-vertical-lr-002-ref.xht
rename : testing/web-platform/tests/css/css-writing-modes/reftest/writing-mode-vertical-rl-001-ref.xht => testing/web-platform/tests/css/css-writing-modes/reference/writing-mode-vertical-rl-001-ref.xht
rename : testing/web-platform/tests/css/css-writing-modes/reftest/writing-mode-vertical-rl-002-ref.xht => testing/web-platform/tests/css/css-writing-modes/reference/writing-mode-vertical-rl-002-ref.xht
rename : testing/web-platform/tests/orientation-event/devicemotionevent-init.html => testing/web-platform/tests/orientation-event/devicemotionevent-init.https.html
rename : testing/web-platform/tests/orientation-event/deviceorientationabsoluteevent.html => testing/web-platform/tests/orientation-event/deviceorientationabsoluteevent.https.html
rename : testing/web-platform/tests/orientation-event/deviceorientationevent-init.html => testing/web-platform/tests/orientation-event/deviceorientationevent-init.https.html
rename : testing/web-platform/tests/orientation-event/ondeviceorientationabsolute.html => testing/web-platform/tests/orientation-event/ondeviceorientationabsolute.https.html
rename : testing/web-platform/tests/svg/embedded/support/green-rect-100x100.svg => testing/web-platform/tests/svg/embedded/reference/green-rect-100x100.svg
rename : testing/web-platform/tests/svg/shapes/reftests/support/empty.svg => testing/web-platform/tests/svg/shapes/reftests/reference/empty.svg
2019-03-17 11:44:39 +02:00
longsonr fd7d94f776 Bug 1532156 - correct marker-start for closed paths so it is the average of the start and end angles i.e. the same as marker-end r=dholbert 2019-03-16 17:00:23 +00:00
Csoregi Natalia db0b4a6acd Merge mozilla-central to autoland. CLOSED TREE 2019-03-16 12:25:06 +02:00
Ting-Yu Lin 7f6824aa03 Bug 1493317 Part 2 - Enable AccessibleCaret in unit tests. r=jchen
And use correct AccessibleCaret preference to disable it individually in tests.

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

--HG--
extra : moz-landing-system : lando
2019-03-16 07:38:34 +00:00
Ting-Yu Lin 2fac17be1a Bug 1493317 Part 1 - Fix pending popup group assertion after enabling AccessibleCaret in unittest. r=mats
The assertion can be reproduced locally by running
"./mach test dom/canvas/test/chrome/test_drawWindow_widget_layers.html"
with layout.accessiblecaret.enabled=true.

When AccessibleCaret is enabled, caret elements will be inserted into
nsCanvasFrame::mCustomContentContainer, thus it recursively invokes
ConstructFramesFromItemList() to construct frames for carets before it had a
chance to construct popup group.

I feel it's too strict to assume that ConstructFramesFromItemList() cannot be
invoke recursively whenever there's a popup group item. I move the assertion to
the end of ConstructDocElementFrame() to ensure the popup group is processed by
then.

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

--HG--
extra : moz-landing-system : lando
2019-03-16 07:29:11 +00:00
violet d307082a12 Bug 1072758 - ScheduleReflowSVGNonDisplayText when changing style to display none r=emilio
DidSetComputedStyle won't be called if the style changes to "display:none".
To ensure the reflow is properly scheduled, we need to also hook DestroyFrom.

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

--HG--
extra : moz-landing-system : lando
2019-03-16 02:36:09 +00:00
Edwin Gao c75639eee2 Bug 1530033 - disable build/tests/reftest/tests/layout/reftests/bugs/256180-1.html, 256180-2.html, 256180-3.html r=jmaher
Disabled:
- 256180-1.html
- 256180-2.html
- 256180-3.html

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

--HG--
extra : moz-landing-system : lando
2019-03-15 23:13:12 +00:00
Chris Peterson 3f655a7340 Bug 1534878 - xpcom: Rename NS_InitXPCOM2() to NS_InitXPCOM(). r=froydnj
--HG--
extra : rebase_source : 6e7a46cf49f78e46e12d1e7fc76aba6f0c377be0
2019-03-14 23:38:09 -07:00
Botond Ballo dafe6fcdd9 Bug 1137890 - Let containerless scrolling ride the trains. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D23370

--HG--
extra : moz-landing-system : lando
2019-03-15 18:12:27 +00:00
Emilio Cobos Álvarez 4c1252347e Bug 1533783 - Avoid crashing when calling insertRule("@import ...") on a detached sheet. r=heycam
This should unblock the fuzzers for now, though it's not the ideal solution.

It's the only reasonably easy solution to unblock them though, I think.

We should probably always keep track of the document a stylesheet was associated
with. We'll need that for constructible stylesheets anyway.

That requires some though on how to get the cycle-collection and such right,
though, and I wouldn't be able to write or land that ASAP.

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

--HG--
extra : moz-landing-system : lando
2019-03-14 22:30:37 +00:00
Emilio Cobos Álvarez 789b125fcf Bug 1533891 - Give up on optimizing out image loads load resolution for non-text. r=heycam
::first-line reparenting may make non-first continuations to get a new style on
which we haven't run StartImageLoads when fragmenting out of the first-line.

Given this was mostly an opportunistic optimization let's remove it rather than
sacrificing correctness.

With bug 1465474 we would be able to fix this...

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

--HG--
extra : moz-landing-system : lando
2019-03-14 22:24:37 +00:00
Dorel Luca 0e9ffb4c4f Merge mozilla-inbound to mozilla-central. a=merge 2019-03-14 18:25:40 +02:00
Emilio Cobos Álvarez 5aa8533517 Bug 1533963 - Use a single RestyleHint representation. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22828

--HG--
extra : moz-landing-system : lando
2019-03-14 11:47:50 +00:00
Sylvestre Ledru 4aa92e3091 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D22514
2019-03-13 10:19:06 +01:00
Andrew Osmond bc278165ae Bug 1534188 - Use high quality downscaling for raster images embedded in SVGs. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D23374
2019-03-14 07:16:29 -04:00
Kyle Machulis 514400e811 Bug 1522713 - Allow updating of Frameloader Remoteness via FrameLoaderOwner; r=nika
Adds a method for to nsFrameLoaderOwner destroying and rebuilding a
FrameLoader in order to facilitate a process switch. Method works
without requiring that the work be done in the frontend.

Depends on D22789

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

--HG--
extra : moz-landing-system : lando
2019-03-14 01:25:07 +00:00
Chris Peterson 2b18063c04 Bug 1534467 - Fix layout debugger build in non-DEBUG builds. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23397

--HG--
extra : moz-landing-system : lando
2019-03-13 21:36:00 +00:00
Botond Ballo 621fce83ca Bug 1517895 - Execute scroll origin downgrade after frame reconstruction even if early-exiting ScrollToImpl(). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D19877

--HG--
extra : moz-landing-system : lando
2019-03-13 23:07:26 +00:00
Botond Ballo e79488c796 Bug 1517895 - Scroll the visual viewport in ScrollToRestoredPosition(). r=tnikkel
We scroll the visual viewport in addition to the layout viewport to make sure
that the layout viewport also ends up at the desired position; note that the
layout viewport's desired position will change in bug 1516056 as we start
clamping the layout viewport offset to the layout scroll range.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 22:42:48 +00:00
Csoregi Natalia d6418fe8b9 Merge mozilla-central to autoland. CLOSED TREE 2019-03-13 23:47:01 +02:00
Csoregi Natalia f5959347ee Merge inbound to mozilla-central. a=merge 2019-03-13 23:43:54 +02:00
Emilio Cobos Álvarez e4b13f1adb Bug 1535084 - Cleanup contain property. r=dholbert
Now that cbindgen supports bitflags, this is trivial.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 19:55:54 +00:00
David Major e5773183d6 Bug 1528074 - Remove MSVC warning flags that clang-cl doesn't understand r=chmanchester
Per the previous patch, clang-cl only understands five MSVC-style warning flags: 7219c7e9af/clang/include/clang/Driver/CLCompatOptions.td (L188-L197)

This patch removes the flags that clang-cl doesn't understand.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 20:19:08 +00:00
Emilio Cobos Álvarez 32f44a84cd Bug 1533085 - Fix some usage of display in XBL bindings in thunderbird. r=npotb 2019-03-13 19:00:08 +01:00
Emilio Cobos Álvarez a5a514eff4 Bug 1534914 - Improve blocked cursor behavior to fall back to next image. r=smaug
Right now we just block the image returned from nsIFrame::GetCursor, which is
the first loading cursor image.

I think we should do the same we do when the image fails to load, which is to
fall back to the next image instead.

This patch moves all the custom cursor code selection logic to
EventStateManager, and lets the frame return a CursorKind and whether custom
images are allowed.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 18:38:09 +00:00
Miko Mynttinen 33522c484e Bug 1510286 - Cache nsIFrame::BackfaceIsHidden() and nsIFrame::Combines3DTransformWithAncestors() in display items r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D13077

--HG--
extra : moz-landing-system : lando
2019-03-13 16:52:18 +00:00
Doug Thayer cb0fa9cf3b Bug 1441308 - Remove unnecessary StackingContextHelper params from clips r=kats
These aren't used, so I'm just getting rid of them as cleanup.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 16:44:05 +00:00
Miko Mynttinen a44f50e1ed Bug 1534821 - Add early exit from CollectItemsWithOpacity() for large nsDisplayOpacities r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D23237

--HG--
extra : moz-landing-system : lando
2019-03-13 16:17:19 +00:00
Masayuki Nakano a5791dba14 Bug 1466208 - part 45: Rename `aFrame` of `HandleEvent()` to `aFrameForPresShell` r=smaug
Now, other methods taking `aFrame` of `HandleEvent()` names the argument as
`aFrameForPresShell`.  So, `HandleEvent()`'s `aFrame` should also be renamed.

This patch renames it and adds MOZ_CAN_RUN_SCRIPT and comment to
`nsIPresShell::HandleEvent()`.

This is the final patch for bug 1466208.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 10:32:36 +00:00
Boris Zbarsky 4ff91d4938 Bug 1506439 part 2. Stop creating a useless nsCOMPtr in DispatchInputEvent. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D23068

--HG--
extra : moz-landing-system : lando
2019-03-13 02:34:48 +00:00
Boris Zbarsky ccfb4f16b1 Bug 1534370 part 1. Annotate doCommandWithParams as MOZ_CAN_RUN_SCRIPT. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D23036

--HG--
extra : moz-landing-system : lando
2019-03-13 00:43:48 +00:00
Boris Zbarsky 5bf2e408e6 Bug 1534608. MOZ_CAN_RUN_SCRIPT should disallow non-stack refptr arguments. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23217

--HG--
extra : moz-landing-system : lando
2019-03-13 00:30:11 +00:00
Jeff Muizelaar a00f951356 Bug 1534250. Always paint the entire mask. r=mattwoodrow
Previously we would only paint the building area but we
would not do anything to check that the building area had
changed. Since, we're already allocating a surface for the entire
item it's better to just paint it and not worry about doing extra
invalidations.

Originally, we used mVisibleRect here. That was changed to GetPaintRect()
in part 1 of 1460491 and then to GetBuildingRect in part 2. However,
I think the original code was always wrong and we should've been using
mBounds the whole time.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 15:43:56 +00:00
Emilio Cobos Álvarez 1daca69d91 Bug 1533424 - Don't allow InspectorUtils to mess up with our UA sheets. r=heycam
You can mess up stuff pretty badly if that happens, and we want to do this
anyway for the shared UA sheet stuff, so...

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

--HG--
extra : moz-landing-system : lando
2019-03-12 15:17:54 +00:00
Masayuki Nakano 229762b203 Bug 1466208 - part 44: Rename PresShell::EventHandler::HandleEventInternal() to HandleEventWithCurrentEventInfo() r=smaug
In my understanding, `PresShell::EventHandler::HandleEvent()` may redirect
the event to another class or PresShell first.  Otherwise, it computes
event target and sets current event info of mPresShell to it.  Then, calls
`HandleEventInternal()` to dispatch the event.  Then, `HandleEventInternal()`
may handle the event before dispatch, and/or prepare to dispatch, then,
finally dispatches the event and finalize the state of mPresShell and the
event.  Therefore, `HandleEventInternal()` actually handles the event, but
the word, "internal" is not explicitly explain its different points from
`HandleEvent()`.  Therefore, I think that `HandleEventWithCurrentEventInfo()`
is better name since `HandleEvent()` considers the current event info.

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

--HG--
extra : moz-landing-system : lando
2019-03-12 04:25:13 +00:00
Cameron McCormack 082aab3aaf Bug 1534471 - Reformat a couple of layout/style/ files. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23059

--HG--
extra : moz-landing-system : lando
2019-03-12 00:14:00 +00:00
Olli Pettay bc7cdf91ba Bug 1265104, paint dnd'ed content also when it is under non-displayed content (display: contents or ShadowRoot), r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23050

--HG--
extra : moz-landing-system : lando
2019-03-11 22:47:12 +00:00
Miko Mynttinen cbfb3b6b0b Bug 1534450 - Remove nsDisplayBackgroundColor::mBackgroundStyle r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D23055

--HG--
extra : moz-landing-system : lando
2019-03-11 23:03:09 +00:00
Masayuki Nakano 5c8444252b Bug 1466208 - part 43: Create PresShell::EventHandler::FinalizeHandlingEvent() r=smaug
Finally, we should move the last switch statement in `HandleEventInternal()`
to the new method.  Then, `HandleEventInternal() does nothing complicated
things by itself.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 01:52:40 +00:00
Hiroyuki Ikezoe 5d075461ea Bug 1534158 - Drop InspectorUtils.scrollElementIntoView. r=emilio
This was introduced in bug 1018324 for the DOM Inspector addon but we no longer
support those kinds of addons.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 19:23:29 +00:00
Henrik Skupin 4b889bad47 Bug 1533786 - [marionette] Add support for the WebDriver Actions API. r=ato
Differential Revision: https://phabricator.services.mozilla.com/D22757

--HG--
extra : moz-landing-system : lando
2019-03-11 20:33:49 +00:00
Matt Woodrow c9e19a7db0 Bug 1529458 - Only create new hit test info for positioned frame if they might be sorted into a different location. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D22649

--HG--
extra : moz-landing-system : lando
2019-03-11 18:36:42 +00:00
Dorel Luca 57823a4f04 Backed out changeset e510d3ed595a (bug 1533786) for Marionette failures 2019-03-11 20:38:21 +02:00
Henrik Skupin c7b107e581 Bug 1533786 - [marionette] Add support for the WebDriver Actions API. r=ato
Differential Revision: https://phabricator.services.mozilla.com/D22757

--HG--
extra : moz-landing-system : lando
2019-03-11 15:26:20 +00:00
Boris Zbarsky 68863e1004 Bug 1533617 part 4. Mark virtual methods with CAN_RUN_SCRIPT overrides as CAN_RUN_SCRIPT. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D22838

--HG--
extra : moz-landing-system : lando
2019-03-11 14:20:29 +00:00
Boris Zbarsky 6f2f3304b0 Bug 1533617 part 1. Improve MOZ_CAN_RUN_SCRIPT annotations around synth mouse events. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D22835

--HG--
extra : moz-landing-system : lando
2019-03-11 14:58:04 +00:00
Matt Woodrow 6ae273bc63 Bug 1518524 - Don't try to restore the previous FrameLayerBuilder after a transaction since it should always be nullptr anyway. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D21879

--HG--
extra : moz-landing-system : lando
2019-03-06 15:56:55 +00:00
Masayuki Nakano 60f9f583fc Bug 1466208 - part 42: Clean up PresShell::EventHandler::DispatchEvent() with using early-return style r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D22460

--HG--
extra : moz-landing-system : lando
2019-03-11 01:52:17 +00:00
Victor Porof 9783bee1be Bug 1529900 - Columnpicker restore column order doesn't work anymore, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D22094

--HG--
extra : moz-landing-system : lando
2019-03-05 16:35:01 +00:00
Matt Woodrow d9bacb3214 Bug 1533317 - Only invalidate items from the current frame, not descendants when we start needing a wrap list during a partial display list build. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D22636

--HG--
extra : moz-landing-system : lando
2019-03-11 02:35:32 +00:00
shindli 1c03485629 Backed out changeset 200ab1e8d571 (bug 1533317) for multiple reftest failures 2019-03-11 02:26:27 +02:00
Masayuki Nakano 2e39c4ee90 Bug 1466208 - part 41: Create PresShell::EventHandler::DispatchEvent() r=smaug
This is the part which actually handles the event.  The new method should
notify EventStateManager of dispatching event before and after that, and
actually dispatch the event into the DOM.

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

--HG--
extra : moz-landing-system : lando
2019-03-09 23:39:16 +00:00
Matt Woodrow fd0b75b269 Bug 1533317 - Only invalidate items from the current frame, not descendants when we start needing a wrap list during a partial display list build. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D22636

--HG--
extra : moz-landing-system : lando
2019-03-10 22:16:11 +00:00
Masayuki Nakano 930da74b1d Bug 1466208 - part 40: Create PresShell::EventHandler::PrepareToDispatchEvent() r=smaug
For making `PresShell::EventHandler::HandleEventInternal()` easier to read,
move the large switch statement for preparation into the new method.

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

--HG--
extra : moz-landing-system : lando
2019-03-09 23:38:38 +00:00
Masayuki Nakano 1b0e6d02fe Bug 1466208 - part 39: Create PresShell::EventHandler::MaybeHandleKeyboardEventBeforeDispatch() r=smaug
`PresShell::EventHandler::HandleEventInternal()` may handle `Escape` key before
dispatching it in some cases.  This requires too many lines for somebody who
investigate the method for the other events.  Therefore, this patch moves it
into the new method.

Additionally, this patch creates `WidgetKeyboardEvent::CanTreatAsUserInput()`
and `WidgetKeyboardEvent::ShouldInteractionTimeRecorded()` because we should
manage similar checks in one place (we already have
`WidgetKeyboardEvent::CanUserGestureActivateTarget()`).  Finally, their
conditions are not enough for what the comment wants to do there since they do
not check some modifier keys.  Therefore, this patch makes them check all
possible modifier keys too.

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

--HG--
extra : moz-landing-system : lando
2019-03-08 12:46:17 +00:00
Razvan Maries 87c4a3175f Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-03-09 23:55:26 +02:00
Henri Sivonen decc78f432 Bug 1530661 - Make APZ report the per LayersId layer-to-screen transform matrices to the chrome process. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D22082

--HG--
extra : moz-landing-system : lando
2019-03-09 20:33:17 +00:00
longsonr 1260feab53 Bug 1531578 - don't process nsChangeHint_UpdateSubtreeOverflow for nondisplay frames r=dholbert 2019-03-09 16:01:31 +00:00
longsonr 65caeb2944 Bug 1532444 - Go back to doing synchronous invalidation in ReflowSVGNonDisplayText as its invoked by ScheduleReflowSVGNonDisplayText so is already asynchronous r=dholbert 2019-03-09 14:14:33 +00:00
violet 7d525e84a8 Bug 1508028 - Change stroke-miterlimit restriction from GreaterThanOrEqualToOneNumber to NonNegativeNumber. r=longsonr,emilio 2019-03-09 13:05:56 +00:00
Masayuki Nakano cca9243a46 Bug 1466208 - part 38: Create PresShell::EventHandler::PrepareToDispatchContextMenuEvent() r=smaug
The first switch statement of `PresShell::EventHandler::HandleEventInternal()`
has 2 jobs:
- Prepare something for specific event type.
- Record the preparation time of some types of events to telemetry.

This intermixed code is not easy to understand and somebody may add new
preparation after recording them.  So, even though the preparation time
becomes worse a couple of nanoseconds, we should split those jobs.

The patch moves the latter job into the new method.

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

--HG--
extra : moz-landing-system : lando
2019-03-08 23:41:30 +00:00
Dorel Luca 23fb3d3791 Merge mozilla-inbound to mozilla-central. a=merge 2019-03-09 11:47:52 +02:00
Bogdan Tara e3008ee390 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-03-08 23:57:07 +02:00
Masayuki Nakano e43a1df256 Bug 1466208 - part 37: Move trusted eMouseMove event preparation into the previous switch-case block r=smaug
Oddly, there are two trusted eMouseMove preparation code in
`PresShell::EventHandler::HandleEventInternal()`.  One is in the `switch`
statement which is used only when `aEvent` is trusted.  The other is after
`TouchManager::PreHandleEvent()` is called and after
`AutoHandlingUserInputStatePusher` is created.  However, both of them do
nothing if the event is `eMouseMove`.  Therefore, we can move the latter
into the former.

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

--HG--
extra : moz-landing-system : lando
2019-03-08 23:37:34 +00:00
Csoregi Natalia afc7afdf16 Backed out 2 changesets (bug 1532850) for apilint failure. CLOSED TREE
Backed out changeset 8feadb1f48f2 (bug 1532850)
Backed out changeset d3eed8f55897 (bug 1532850)
2019-03-09 03:13:56 +02:00
Daniel Holbert 3f763b8af9 Bug 1533870: Preemptively fix unified build bustage in layout/style. r=boris
I wrote this patch by first removing UNIFIED_ from layout/style/moz.build, and
then rebuilding, and then addressing build errors one by one.

Nearly all of the build errors were for using the "Document" type without a
proper namespace, and I've addressed this by sprinkling "using namespace"
declarations in the affected .cpp files (and removing a few now-unnecessary
dom:: prefixes on types in those files).

The only other errors were for WorkletGlobalScope.h which needed an #include to
provide the type "DOMHighResTimeStamp", and nsHTMLStyleSheet.h which needed a
forward-declaration for the type "mozilla::dom::Document".

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

--HG--
extra : moz-landing-system : lando
2019-03-08 21:48:39 +00:00
Oana Pop Rus 672a921504 Backed out changeset b56791a96f96 (bug 1533424) for crashtest on test_parsingMode.html on a CLOSED TREE 2019-03-08 17:42:37 +02:00
Hiroyuki Ikezoe 3673780587 Bug 1532850 - Check the return value of LookAndFeel::GetInt() in case of the function failure. r=emilio
Actually the function will fail on Android since on xpcshell tests we don't
initialize AndroidBridge so that we can't query the corresponding system
settings.

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

--HG--
extra : moz-landing-system : lando
2019-03-09 00:17:19 +00:00
Emilio Cobos Álvarez ea424f0740 Bug 1533424 - Don't allow InspectorUtils to mess up with our UA sheets. r=heycam
You can mess up stuff pretty badly if that happens, and we want to do this
anyway for the shared UA sheet stuff, so...

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

--HG--
extra : moz-landing-system : lando
2019-03-08 13:54:11 +00:00
Ryan Hunt c39b1f89d0 Bug 1532725 - Rename PRemoteFrame to PBrowserBridge. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D22132

--HG--
rename : dom/ipc/RemoteFrameChild.cpp => dom/ipc/BrowserBridgeChild.cpp
rename : dom/ipc/RemoteFrameChild.h => dom/ipc/BrowserBridgeChild.h
rename : dom/ipc/RemoteFrameParent.cpp => dom/ipc/BrowserBridgeParent.cpp
rename : dom/ipc/RemoteFrameParent.h => dom/ipc/BrowserBridgeParent.h
rename : dom/ipc/PRemoteFrame.ipdl => dom/ipc/PBrowserBridge.ipdl
extra : rebase_source : d5ca117b96c0d266041d23d80f0f4ab9b0471fb6
2019-03-04 20:15:58 -06:00
Andrea Marchesini 8e20bbbc9a 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-08 09:04:11 +00:00
arthur.iakab 77aa564189 Merge mozilla-central to autoland 2019-03-08 06:41:04 +02:00
arthur.iakab 013bbfceb8 Merge inbound to mozilla-central a=merge 2019-03-08 06:39:50 +02:00
arthur.iakab 6ac3e940d9 Merge autoland to mozilla-central a=merge 2019-03-08 06:38:18 +02:00
Neil Deakin b1a0d8a2a9 Bug 1519960, add a previousColumn property for tree columns so that tree drag and drop will work without box objects, r=bzbarsky
--HG--
extra : rebase_source : 35a235ee1119308021685d173c6b6d7487481f5b
2019-03-07 17:57:18 -05:00
Neil Deakin bdd278ae2c Bug 1519956, remove box object related crashtests that will no longer be applicable with no box objects, r=bzbarsky
--HG--
extra : rebase_source : d5dc1a25a740f9d95d00b261873a150f657c05d5
2019-03-07 17:57:12 -05:00
arthur.iakab 85ad02d41a Merge inbound to mozilla-central a=merge 2019-03-07 23:58:42 +02:00