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

17432 Коммитов

Автор SHA1 Сообщение Дата
Ting-Yu Lin a8f560ec17 Bug 1290276 Part 7 - Restyle element and its descendant after loading XBL bindings. r=heycam
MozReview-Commit-ID: 1WiioW3xxMX

--HG--
extra : rebase_source : fd0820151911e7c1b69ed2524282ecbd72a42c57
2017-06-05 14:21:32 +08:00
Ting-Yu Lin e2e9e98b3f Bug 1290276 Part 3 - Move nsStyleSet's call to SetBindingManager to PresShell::Init(). r=heycam
Delete the NS_WARNING because it's not needed once this bug is fixed.

MozReview-Commit-ID: Ht3ayjSvYW8

--HG--
extra : rebase_source : 457f011ac64fcd511ec2f15ea2b8ce24a88b0d84
2017-06-05 14:33:30 +08:00
Olli Pettay 03c8a070c4 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8
--HG--
extra : rebase_source : b7248c5b45fe43eb733d73965a49c1cd69a1c72d
2017-06-06 20:41:34 +03:00
Jonathan Kew 55bcceba64 Bug 1370053 - Fix a couple of comment/variable-name typos in ResolveParagraph. r=smontagu 2017-06-07 09:42:53 +01:00
Jonathan Kew e4bd6b69d2 Bug 1370053 - Don't do the empty-frame short-circuit in ResolveParagraph until after updating the current bidi run if necessary. r=smontagu 2017-06-07 09:42:52 +01:00
L. David Baron 53383e2d5c Bug 1369260 - Remove use of MOZ_ASSERT_IF in layout. r=heycam
As I've said before, as module owner I prefer that MOZ_ASSERT_IF not be
used in the module because I consider it to be unreadable.  However, a
few uses have crept in, and this patch removes them.

I consider it to be unreadable because the name looks like a name that
uses smalltalk-ish naming conventions, i.e., with a part of the name
corresponding to each parameter, in order.  However, the parameters are
in the order opposite the name.

This was written primarily with the vim commands:
:%s/MOZ_ASSERT_IF(\([^,]*\),/MOZ_ASSERT(!\1 ||/
:wn
followed by manual cleanup for indentation and removal of !!.

MozReview-Commit-ID: G6rLbOn7k8d
2017-06-06 22:27:17 -07:00
Phil Ringnalda 772debd9ae Backed out changeset 4524bfde8583 (bug 1361970) for failures in transform-3d/backface-visibility-3.html and transform-3d/opacity-preserve3d-1.html
CLOSED TREE

MozReview-Commit-ID: GmEmiedJYeX
2017-06-06 19:54:40 -07:00
Matt Woodrow 80c51057d4 Bug 1361970 - Make PostProcessLayers occlusion culling work against the surface we will draw to rather than the parent layer. r=mstange 2017-06-07 11:07:15 +12:00
Matt Brubeck 78af557ec8 Bug 1365163 - Remove pref layout.css.display-flow-root.enabled. r=mats
MozReview-Commit-ID: AA3tKHCQ5E0

--HG--
extra : rebase_source : 9a7b16043e4aff09a4997138a9016e2f7f791f58
2017-06-05 15:59:22 -07:00
Cameron McCormack faef490277 Bug 1365159 - Part 1: Record :-moz-browser-frame and :-moz-table-border-nonzero state on snapshots. r=emilio
MozReview-Commit-ID: BEglHnXhpYJ

--HG--
extra : rebase_source : 0b10b26a8ef0c504e38be89b87ea319af7a31d3f
2017-06-05 14:19:30 +08:00
Kartikaya Gupta 10f514bb72 Bug 1369840 - Support content-side APZ test data in WebRenderLayerManager. r=botond
This mostly just copies the functional parts of the APZTestData code from
ClientLayerManager into WebRenderLayerManager, and propagates the paint sequence
number over to the compositor using the existing WebRenderScrollData machinery.

MozReview-Commit-ID: LHupFpqtWTX
2017-06-04 22:29:35 -04:00
Tobias Schneider a55bd0e5fc Bug 1369870 - Float to int cast in nsLayoutUtils::TransformRect is losing precision. r=mstange 2017-06-02 13:36:13 -07:00
Sebastian Hengst c228c964b6 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-04 20:11:31 +02:00
Sebastian Hengst 4607d210e9 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 8W8H7Bg9Tq6
2017-06-04 20:09:18 +02:00
Mats Palmgren 590f2d8c48 Bug 1367209 part 4 - Use LookupForAdd to avoid an additional hashtable lookup when inserting a new entry. r=jfkthame
MozReview-Commit-ID: u24jLUvoCJ
2017-06-04 16:45:15 +02:00
Mats Palmgren 3717a95c70 Bug 1367209 part 3 - Add a generic frame state bit, NS_FRAME_HAS_CSS_COUNTERS, to indicate that a frame maybe has some counter styles and thus be known by nsCounterManager. r=jfkthame
If a frame doesn't have that bit then skip mCounterManager.DestroyNodesFor()
when the frame is destroyed because it's definitely not known by
the CounterManager.

MozReview-Commit-ID: Ky3575QvZME
2017-06-04 16:45:15 +02:00
Mats Palmgren 142367f96c Bug 1367209 part 2 - Remove a useless constructor. r=jfkthame
MozReview-Commit-ID: 9GVI3kSJiuJ
2017-06-04 16:45:15 +02:00
Mats Palmgren 7c81f55ccf Bug 1367209 part 1 - Fix some indentation and code style issues. r=jfkthame
MozReview-Commit-ID: GrmWUb0XvBL
2017-06-04 16:45:15 +02:00
Mats Palmgren c811bece89 Bug 1370037 - Remove an unnecessary friend declaration in FrameProperties. r=jfkthame
MozReview-Commit-ID: F6OfF8GsPhS
2017-06-04 16:45:15 +02:00
Mats Palmgren d53b7949ed Bug 1367206 - Iterate the frame property list once to collect which child list properties we have. r=jfkthame
MozReview-Commit-ID: BHZTjYP4pJp
2017-06-03 19:25:56 +02:00
Timothy Nikkel 6c8d12a5d2 Bug 1354933. Add some asserts for document viewer teardown. r=mats 2017-06-03 01:31:12 -05:00
Sebastian Hengst b3c51a3e2d merge mozilla-central to autoland. r=merge a=merge 2017-06-03 20:16:49 +02:00
Jet Villegas 5358af1fa7 Bug 1208197: Use addEventListener() in test_bug533845.xul to prevent raciness. r=smaug 2017-06-02 14:11:32 +09:00
Emilio Cobos Álvarez 96f5484a9f Bug 1369187: Don't return an old style context for ::first-line and ::first-letter, but not crash either. r=bholley
This will make us reframe until fixed. It's not hard to fix, just requires to
discuss how :)

MozReview-Commit-ID: 1vlRUSuMqtp
2017-06-01 22:19:26 +02:00
Olli Pettay 5361fd6640 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-07 23:46:31 +03:00
Emilio Cobos Álvarez 2a16d6a3c9 Bug 1357461: Assume viewport units are used on resize. r=heycam
MozReview-Commit-ID: Eu2QxaGFChX
2017-06-03 18:59:14 +02:00
Emilio Cobos Álvarez 2f69bad812 Bug 1357461: Ensure not to increment the restyle generation if we haven't restyled after all. r=heycam
This can happen with content attribute or state changes that end up not
generating any hint.

In particular, in the media_queries_dynamic.html case, the iframe resize was
toggling a few scrollbar attributes, which made us never pass the "didn't
restyle" test, even though the test really passed.

I'll probably need to add a workaround to assume we use viewport units, so
probably won't pass for long.

MozReview-Commit-ID: 2oEfic5yaOy
2017-06-03 18:59:10 +02:00
Emilio Cobos Álvarez f87691e784 Bug 1357461: Cache effective media query results. r=heycam
And implement a function that returns whether they changed, to be shared with
Servo.

MozReview-Commit-ID: 8gnAdJaEfZC
2017-06-03 18:59:07 +02:00
Sebastian Hengst ee709cb070 Backed out changeset b7bcbc5c1b92 (bug 1369840) 2017-06-03 10:11:17 +02:00
Botond Ballo 52ab6c0bae Bug 1365761 - Do not dispatch mouse-move events targeted as a slider frame to web content. r=smaug
MozReview-Commit-ID: Cpi7orSO7dS

--HG--
extra : rebase_source : 30bd643922409f47eb2318938a07e7543337d625
2017-06-05 15:05:47 -04:00
Alexis Beingessner adb013669b Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-13 11:00:10 -04:00
Nicholas Nethercote 0be77baa96 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.

--HG--
extra : rebase_source : 47e298fdd6f6b4af70e3357ec0b7b0580c0d0f50
2017-06-07 12:33:19 +10:00
Kartikaya Gupta 8a0e62b656 Bug 1369840 - Support content-side APZ test data in WebRenderLayerManager. r=botond
This mostly just copies the functional parts of the APZTestData code from
ClientLayerManager into WebRenderLayerManager, and propagates the paint sequence
number over to the compositor using the existing WebRenderScrollData machinery.

MozReview-Commit-ID: 6GD5Sl3dSJp

--HG--
extra : rebase_source : d2f212128f8b352ef81e5c25650b95fae1f90002
2017-06-02 16:19:33 -04:00
Markus Stange 9ec017c7c6 Bug 1370034 - Add -moz-window-opacity property, style system parts (excluding stylo). r=dbaron
MozReview-Commit-ID: J2SPMzh0I9C

--HG--
extra : rebase_source : b8c5f267f99fb7bab560af82a386cd3f3a9af5f3
2017-06-18 21:04:40 -04:00
Cameron McCormack 64d3469106 Bug 1352306 - Part 2: stylo: Only snapshot EventStates if there is some rule that depends on it. r=emilio
MozReview-Commit-ID: J5xhdi7pGSv

--HG--
extra : rebase_source : 91064f1837516c7401cbf12c6ab0b343fa7c51d0
2017-05-09 18:13:45 +08:00
Cameron McCormack 7bbb05753b Bug 1352306 - Part 1: stylo: Only snapshot attributes if there is some rule that depends on that attribute. r=emilio
MozReview-Commit-ID: Emey96ovc2a

--HG--
extra : rebase_source : 149334dacb7658b46c477b5286af67453deb5961
2017-05-08 16:04:31 +08:00
Ting-Yu Lin 83b30c2642 Bug 1371577 - stylo: Update test expectations after fixing pseudo element matching for XBL stylesheets. r=emilio
MozReview-Commit-ID: 39h2kZHww4k

--HG--
extra : rebase_source : 4c94d5addeb3fe69049fd4942db86d73224a1bd0
2017-06-14 16:45:46 +08:00
Carsten "Tomcat" Book 865741ad85 Merge mozilla-central to autoland
--HG--
rename : third_party/rust/euclid/src/matrix2d.rs => third_party/rust/euclid-0.13.0/src/matrix2d.rs
rename : third_party/rust/euclid/src/matrix4d.rs => third_party/rust/euclid-0.13.0/src/matrix4d.rs
2017-06-14 14:51:37 +02:00
Cameron McCormack 1b1d5804a7 Bug 1338761 - Re-enable test. r=me
--HG--
extra : rebase_source : 5920ec423b501db59e7d6e2f31cfda3dae6da8f4
2017-06-14 16:49:28 +08:00
John Schoenick 4ce6580106 Bug 558184 - Part 4.3 - Load fake plugin handlers as eType_FakePlugin in nsObjectLoadingContent. r=peterv.
--HG--
extra : rebase_source : 4683568e90fd65a38c974aa755dd5f6f94479ee3
extra : source : 8e4be859c1a1ec73b29df98422d5ee6935cd9aa9
2015-05-20 15:30:05 +02:00
Ryan VanderMeulen b2f44e5181 Merge inbound to m-c. a=merge 2017-05-31 20:25:52 -04:00
Brad Werth 9f3994b7ed Bug 1355675 Part 1: Add optional inCSSUnits parameters to GetTransformMatrix and GetTransformToAncestor. r=mattwoodrow
MozReview-Commit-ID: EA5uqeoUWE3

--HG--
extra : rebase_source : d57f895a356dfa106cf99c1411216f05b0914620
2017-05-30 09:05:52 -07:00
Mats Palmgren 6a061ca6cf Bug 1369037 - Make the assertions about NS_FRAME_PART_OF_IBSPLIT stricter and update the associated frame properties in nsContainerFrame::DestroyFrom instead of nsFrame::DestroyFrom. r=jfkthame
MozReview-Commit-ID: G8NQ70xzkQU
2017-05-31 21:29:49 +02:00
Mats Palmgren 357e4b9560 bug 1368547 part 2 - Remove nsFrameManager/PresShell methods dealing with placeholders and introduce a nsIFrame::GetPlaceholderFrame() convenience method. r=jfkthame
MozReview-Commit-ID: GBUiUBqJxhQ
2017-05-31 21:29:49 +02:00
Mats Palmgren 2cecf134ac bug 1368547 part 1 - Remove nsFrameManagerBase::mPlaceholderMap and store the placeholder on a frame property on the out-of-flow instead. r=jfkthame
MozReview-Commit-ID: 6AOxc2XgtO1
2017-05-31 21:29:49 +02:00
Mats Palmgren f03ef6fe25 Bug 1368802 - nsFrameIterator::GetPlaceholderFrame should only try to get the placeholder for out-of-flow frames, because in-flow frames never have a placeholder. r=jfkthame
MozReview-Commit-ID: CcAlCWMHQQX
2017-05-31 21:29:49 +02:00
Jonathan Kew 0bd0cd9cd7 Bug 1368369 - pt 2 - Move internal FrameProperties methods to the header as inlines, for better optimization opportunities. r=mats 2017-05-31 19:52:56 +01:00
Jonathan Kew db627c3bfb Bug 1368369 - pt 1 - Use nsTArray instead of AutoTArray in FrameProperties, and embed the FrameProperties object directly in nsIFrame. r=mats 2017-05-31 19:52:53 +01:00
Jonathan Kew 81a12a010e Bug 1368654 - pt 2 - (Partially) fix SizeOf method in FrameProperties. r=mats 2017-05-31 19:52:50 +01:00
Jonathan Kew 20b8376ffd Bug 1368654 - pt 1 - Implement memory reporter support for FrameProperties. r=mats 2017-05-31 19:52:47 +01:00
Emilio Cobos Álvarez ae62618daf Bug 1347270: remove the nsIDOMWindowUtils::ElementsRestyled API. r=bholley
MozReview-Commit-ID: AKsEWc7Wpip

--HG--
extra : rebase_source : 2d4611ca4205041e0ae9a36142b9fd65da122e29
2017-05-30 11:38:53 +02:00
Ryan VanderMeulen 81f9096e52 Backed out 2 changesets (bug 1347270) for browser_toolbariconcolor_restyles.js permafail on a CLOSED TREE.
Backed out changeset 445cb4d47d4f (bug 1347270)
Backed out changeset f2b7f1d599e3 (bug 1347270)
2017-05-30 18:11:02 -04:00
Emilio Cobos Álvarez fbf5749494 Bug 1347270: remove the nsIDOMWindowUtils::ElementsRestyled API. r=bholley
MozReview-Commit-ID: AKsEWc7Wpip

--HG--
extra : rebase_source : 2d4611ca4205041e0ae9a36142b9fd65da122e29
2017-05-30 11:38:53 +02:00
Fernando Jimenez Moreno adbbb144a4 Bug 1365873 - stylo: Fix toolkit/content/tests/chrome/test_bug437844.xul crash. r=emilio
MozReview-Commit-ID: GvKuA07PbUT

--HG--
extra : rebase_source : 407831e1911eb461a4364dd131e4137f86b3a85a
2017-05-30 13:03:57 +02:00
Mantaroh Yoshinaga b870a62ef9 Bug 1367981 - Use AutoTArray instead of nsCOMArray in Tick(). r=smaug
MozReview-Commit-ID: 48baDUvkTMc

--HG--
extra : rebase_source : c389059395ed2b8bb02b657953299dfd39b71b89
2017-05-26 16:22:34 +09:00
Emilio Cobos Álvarez 0eea23decf Bug 1357583: Tidy the PostRestyleEventForCSSRuleChanges API. r=heycam
MozReview-Commit-ID: BtOWWC5knsi
2017-05-29 23:01:50 +02:00
Jonathan Kew ee384ef57b Bug 1368249 - Create nsIFrame::AddProperty API for use when the property is known to not already exist, and use to optimize some call sites. r=mats 2017-05-28 13:16:55 +01:00
Sebastian Hengst 99f17a4e95 Backed out changeset 59c0589220ec (bug 1368249) unused function GetNormalPosition at nsIFrame.h:1073. r=backout 2017-05-28 15:38:15 +02:00
Jonathan Kew 1f8beade4e Bug 1368249 - Create nsIFrame::AddProperty API for use when the property is known to not already exist, and use to optimize some call sites. r=mats 2017-05-28 13:16:55 +01:00
Phil Ringnalda 914b992e95 Merge m-i to m-c, a=merge
MozReview-Commit-ID: CRhv88sOiOA
2017-05-27 21:29:31 -07:00
Jonathan Kew a8f81efd8e Bug 1365982 - Attach frame properties to each frame instead of looking them up in a hashtable on the prescontext. r=mats
--HG--
rename : layout/base/FramePropertyTable.cpp => layout/base/FrameProperties.cpp
rename : layout/base/FramePropertyTable.h => layout/base/FrameProperties.h
2017-05-27 12:36:00 +01:00
Manish Goregaokar f588139b16 Bug 1367275 - Part 5: stylo: Support -moz-min-font-size-ratio; r=xidorn
MozReview-Commit-ID: xRxkFJodeK
2017-05-27 13:23:15 -07:00
Manish Goregaokar e104a8487b Bug 1367619 - Use RWLock when accessing font prefs service off main thread; r=heycam
MozReview-Commit-ID: Dxdq6Etbwxa

--HG--
extra : rebase_source : ec9f847c7dce6a101db6a3d157395f5b73d87ba1
2017-05-25 15:04:13 -07:00
Ryan VanderMeulen 75fa1fd85f Merge inbound to m-c. a=merge 2017-05-26 15:43:59 -04:00
Andreas Farre 0833711613 Bug 1311425 - Prepare for handling several sources of idleness, r=smaug
--HG--
extra : rebase_source : 7f771167ae460a50715f23c587eea10d5fe7e815
2017-05-24 21:11:12 -04:00
Mats Palmgren 483a804512 Bug 1364805 part 3 - Implement Type() by indexing a static array using the mClass field. Remove the nsIFrame::mType field. r=jfkthame
In the nsWindowMemoryReporter.cpp / nsArenaMemoryStats.h I'm only
including the concrete frame classes now - we obviously never have
instances of the other IDs so there's no need to collect stats for them.

MozReview-Commit-ID: 48uFCZ3xKBC
2017-05-26 12:11:11 +02:00
Emilio Cobos Álvarez 69601ee10e Bug 1367553: Provide the kind of change that the stylesheet suffered to RecordStyleSheetChange. r=heycam
I plan to use it for now to force a full document restyle when a standalone rule
changes or something like that.

In practice, we can do better sometimes, and we may just want to propagate to
the StyleSet all the style change notifications in order to have access to the
rule that changed and all that...

But for now this seemed easier than adding other four or five functions to
StyleSetHandle.

MozReview-Commit-ID: 2BEIliGu4mO

--HG--
extra : rebase_source : 386a1b9fe5ffc5fefbf20678068573ea195043f0
2017-05-24 04:28:58 +02:00
Emilio Cobos Álvarez d4ee389879 Bug 1367553: Move dirty style tracking to the StyleSet. r=heycam
MozReview-Commit-ID: 2ut8SAwNGN2

--HG--
extra : rebase_source : d9f7d7f1da7b38e595021795ee902e63746c8161
2017-05-24 02:53:08 +02:00
Daniel Holbert 966d6e9978 Bug 1367568 part 3: For CSS "overflow" changes that don't require frame reconstruction, send same change hints as if CSS "height" and "width" changed. r=bz
This is less expensive than sending nsChangeHint_AllReflowHints, and it should
be sufficient since hiding/showing scrollbars is basically just changing the
available space.

MozReview-Commit-ID: 4KyyLzvplAN

--HG--
extra : rebase_source : 4ecb585961ae300e9016f93c4ae0b30fed738151
2017-05-25 17:53:27 -04:00
Daniel Holbert 69eda9c026 Bug 1367568 part 2: Rewrite nsChangeHint_ReflowHintsForBSizeChange in terms of nsChangeHint_AllReflowHints. r=bz
This patch doesn't affect behavior at all.  It's simply adjusting the way we
express a bitmask, without modifying the actual value of that bitmask.  The
intent of this change is to make this bitmask's definition as similar as
possible to the definition for its ISize (inline-axis) analog, so that it's
easy to compare the two.

MozReview-Commit-ID: FUJnBQm8hmJ

--HG--
extra : rebase_source : 400972b9af447721183769b603eedb9a9fd4c939
2017-05-25 17:53:23 -04:00
Daniel Holbert a84ae4bec1 Bug 1367568 part 1: Create reusable macros that represent our change hints for tweaks to CSS width or height (ISize/BSize). r=bz
This patch doesn't affect behavior at all; it's simply moving code (and
moving/extending some associated code comments).

MozReview-Commit-ID: JiX53R9e9GW

--HG--
extra : rebase_source : 96fca2c0ca59cc5bbfc48cf81abe5515bb62f372
2017-05-25 17:46:03 -04:00
Phil Ringnalda 4dcbd3095c Backed out 2 changesets (bug 1367553) for build bustage
CLOSED TREE

Backed out changeset 3e6c9a752596 (bug 1367553)
Backed out changeset 1ee24478fa16 (bug 1367553)

MozReview-Commit-ID: B805jBJYcqL
2017-05-25 06:13:01 -07:00
Emilio Cobos Álvarez 38735b0dbd Bug 1367553: Provide the kind of change that the stylesheet suffered to RecordStyleSheetChange. r=heycam
I plan to use it for now to force a full document restyle when a standalone rule
changes or something like that.

In practice, we can do better sometimes, and we may just want to propagate to
the StyleSet all the style change notifications in order to have access to the
rule that changed and all that...

But for now this seemed easier than adding other four or five functions to
StyleSetHandle.

MozReview-Commit-ID: 2BEIliGu4mO

--HG--
extra : rebase_source : 926f8442fbd17c7ffa7f72b6b4a515a28b9aa18b
2017-05-24 04:28:58 +02:00
Emilio Cobos Álvarez e2b5e966dc Bug 1367553: Move dirty style tracking to the StyleSet. r=heycam
MozReview-Commit-ID: 2ut8SAwNGN2

--HG--
extra : rebase_source : 5f84d20bd197cd2203093ef4b57cb6b8ce2eb15f
2017-05-24 02:53:08 +02:00
Brad Werth 450a0513e2 Bug 1339629 Part 9: Uplift EnsureUniqueInnerOnCSSSheets and SetNeedsRestyleAfterEnsureUniqueInner into StyleSetHandle, and eliminate CSSStyleSheet::EnsureUniqueInner. r=heycam
MozReview-Commit-ID: LH7vTKUmuv8

--HG--
extra : rebase_source : 35d2e23978150001c2a6293a8749065dd49eed4a
2017-05-15 16:30:10 -07:00
Kartikaya Gupta 88d6c78bc4 Bug 1341992 - Only do hit-testing with the ignore-root-scroll-frame flag on zoomable platforms. r=tnikkel
The ignore-root-scroll-frame flag is generally needed on Fennec, or possibly
other zoom-enabled platforms, when we have them. It allows hit-testing things
outside the main thread's notion of what is visible, because that might occur
when the user zooms out.

For largely historical reasons, we are passing this flag around in other scenarios,
such as when doing hit-tests for touch events, because in the past touch events
and zooming only happened on Fennec, so it didn't matter. Now that we have
touch events enabled on other platforms, such as Windows, we need to make the
distinction clearer.

MozReview-Commit-ID: BlHjtjFYgzv

--HG--
extra : rebase_source : cbfeab4666b5556ba0b38f3abdf666d63945b9a1
2017-05-24 16:23:03 -04:00
Xidorn Quan 918f0728dc Bug 1366735 part 3 - Remove SetCounterStyleDirty. r=heycam
When the counter style in the style struct changes, CalcDifference
would return ReconstructFrame, which should cause corresponding use
node to be reconstructed. That means a use node with retired counter
style should always be destroyed in the next flush, so it makes no
sense to reset them anymore.

However, we would still need to mark counter lists dirty because
otherwise their content may not get update when there are changes to
counter styles which are still valid.

MozReview-Commit-ID: FnBPx81StzG

--HG--
extra : rebase_source : 2adf7b64484746a5f416b7902df2ac718a3fdeab
2017-05-23 10:08:50 +10:00
Xidorn Quan 1dd9b6bad1 Bug 1366735 part 1 - Change counter functions to use struct rather than nsCSSValue::Array. r=heycam
MozReview-Commit-ID: 4FiOxCOsjtD

--HG--
extra : rebase_source : 0a2ef777045603fe591ba3a74259699a2339cede
2017-05-22 22:51:20 +10:00
Botond Ballo ae4b8838b4 Bug 1352863 - Add a CoordOf metafunction that maps point and rect types to their coordinate type. r=kats
The approach taken is to implement the metafunction by specialization as usual,
and then wrap it into an alias template. This avoids having to write "typename"
and "::Type" at the use site.

MozReview-Commit-ID: VLOxb4Gu0z

--HG--
extra : rebase_source : 65e4c255eeb5646e351692e6d4f91d3e6c8e5789
2017-05-19 19:54:25 -04:00
Ryan VanderMeulen bda1298f43 Merge m-c to autoland. a=merge
CLOSED TREE
2017-05-24 16:34:01 -04:00
Ting-Yu Lin 41dbaf6f6f Bug 1363640 Part 7 - Update reftest expectations after enabling stylo on XBL documents. r=heycam
MozReview-Commit-ID: I5HNk22XvKi

--HG--
extra : rebase_source : baf89a4c80b7984a020e1ca507643f8680153f9f
2017-05-19 20:33:10 -07:00
Ting-Yu Lin e28f16e90e Bug 1363640 Part 2 - Move the logic in SupportsServoStyleBackend() to UpdateStyleBackendType(). r=heycam
SupportsServoStyleBackend() uses methods in nsIDocument, so it would be more
straightforward to do that in UpdateStyleBackendType().

Also, call StyloEnabled() before doing other logic so that the warning about
"no docshell" won't show up when stylo is built but disabled.

MozReview-Commit-ID: 9ZUYatPBv1r

--HG--
extra : rebase_source : ea130cdf2ef0b49d73bd688aeca1fc227431441c
2017-05-09 18:33:57 -07:00
Ting-Yu Lin bd80f687dc Bug 1363640 Part 1 - Move IsContentDocument() and IsTopLevelContentDocument() from nsDocument to nsIDocument. r=heycam
In this way, the callers who have nsIDocument don't need to cast to nsDocument.

MozReview-Commit-ID: 8zVUjkbrlaG

--HG--
extra : rebase_source : c444a103a430e3746508cc894902e677d58e65fe
2017-05-09 18:28:36 -07:00
L. David Baron 76b64757a7 Bug 1367190 patch 3 - Store nsPresArena::mFreeLists as an array. r=mats
MozReview-Commit-ID: DDJetJaJMb4

--HG--
extra : transplant_source : r%2C1%CA%1B%3B%816/%A7%1A%82%28%E3%B6%EDj%A2W%B1
2017-05-24 09:41:41 -04:00
L. David Baron e50b00e813 Bug 1367190 patch 2 - Remove nsPresArena::AllocateBySize, nsIPresShell::AllocateMisc, and nsPresContext::AllocateFromShell. r=mats
MozReview-Commit-ID: l2UQC7qOQ0

--HG--
extra : transplant_source : L%29d%C1%7Cc%86%2B%A2%B3%FE%EC%9D%A5%D9%CEdQ%2CL
2017-05-24 09:36:11 -04:00
L. David Baron a852d0d5ce Bug 1367190 patch 1 - Convert the 4 objects that use nsPresArena::AllocateBySize to use AllocateByObjectID. r=mats
MozReview-Commit-ID: 3LaG8Daon6V

--HG--
extra : transplant_source : %AB%00%3E%F6B%13%B8%84%C7%7B%24%08%8BU%8A%91%7DA%2C%A1
2017-05-24 09:35:26 -04:00
Manish Goregaokar 4f4bcfd98c Bug 1366914 - Remove pref layout.css.background-clip-text.enabled; r=dholbert
MozReview-Commit-ID: 6XibTM1f1Rh

--HG--
extra : rebase_source : 4cc99452c8e5f1811d995735f2d6139581cba0ce
2017-05-22 18:57:21 -07:00
Mats Palmgren 5f995975b4 Bug 1359341 part 1 - Make PresShell::GetPlaceholderFrameFor return a nsPlaceholderFrame. r=jfkthame
MozReview-Commit-ID: AvfQcCtVMta
2017-05-23 19:09:26 +02:00
Ryan VanderMeulen 1734a80650 Merge m-c to inbound. a=merge 2017-05-23 11:15:49 -04:00
Ryan VanderMeulen 22d214ae4b Merge autoland to m-c. a=merge 2017-05-23 10:32:42 -04:00
Mats Palmgren 297b9d70e1 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz
MozReview-Commit-ID: IbwWM0FL6HF

--HG--
extra : source : bbb688fe1ba3f5201a190c6e25b693ef7272ea2d
2017-05-21 17:15:00 +08:00
Carsten "Tomcat" Book 00d4ea331d Backed out changeset bbb688fe1ba3 (bug 1365614) 2017-05-22 15:45:31 +02:00
Iris Hsiao 65ea740eda Merge mozilla-central to mozilla-inbound 2017-05-22 11:53:00 +08:00
Mats Palmgren e706869580 Bug 1365614 part 3 - Backout bug 1333482 part 1-9. Removes support for [-webkit-]appearance for now b/c web compat issues. r=bz 2017-05-21 17:15:00 +08:00
Emilio Cobos Álvarez 51e1c0b54e Bug 1366142: Ignore reentrant change hints without primary frame. r=heycam
MozReview-Commit-ID: 4bF7M0KMhNL

--HG--
extra : rebase_source : 5ad2d1a21e8b1110345b3b2c350de0f1011e61dc
2017-05-20 14:35:37 +02:00
Hiroyuki Ikezoe 49bc653390 Bug 1364799 - Add a new TraversalRestyleBehavior that represents the traversal is triggered by CSS rule changes. r=birtles
And propagate the new flag to servo if mRestyleForCSSRuleChanges is set.

MozReview-Commit-ID: HRZ5duYgciF

--HG--
extra : rebase_source : 65528ea0dfa21e84bb9184a849c72a5c322e306b
2017-05-21 08:16:26 +09:00
Hiroyuki Ikezoe 665da78452 Bug 1364799 - Add PostRestyleEventForCSSRuleChanges to distinguish PostRestyleEvent. r=birtles,heycam
The difference is that PostRestyleEventForCSSRuleChanges sets
mRestyleForCSSRuleChanges true. In a subsequent patch,
we propagate a new TraversalRestyleBehavior flag to servo side
if mRestyleForCSSRuleChanges is true.

MozReview-Commit-ID: IKsBbm09uT9

--HG--
extra : rebase_source : 5014c0a978f98e81543ec7766d2daa415317069c
2017-05-21 08:16:26 +09:00
Bobby Holley 74189ef7bc Bug 1329876 - Don't maintain a TreeMatchContext for Servo. r=bz 2017-05-20 22:00:01 +02:00
Manish Goregaokar 9ac08154b7 Bug 1362599 - Remember which languages were used and force-cache when reset; r=heycam 2017-05-20 21:48:04 +02:00
Manish Goregaokar bf23cb1d19 Bug 1362599 - Guard against threadsafety issues in lang group stuff. r=heycam 2017-05-20 21:44:37 +02:00
Sebastian Hengst af0f9643cf merge mozilla-central to autoland. r=merge a=merge 2017-05-20 18:53:36 +02:00
Sebastian Hengst 79f625ac56 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: EqC7wKnn6Jt
2017-05-20 18:48:53 +02:00
Hiroyuki Ikezoe 93e3eef4cb Bug 1341102 - Update test expecrations. r=me
https://github.com/servo/app_units/pull/26#issuecomment-301931183
2017-05-20 15:26:55 +09:00
Wes Kocher 8b07ba2a07 Merge m-c to inbound a=merge
a=release IGNORE BAD COMMIT MESSAGES
2017-05-19 15:18:51 -07:00
Olli Pettay 2d735273d9 Bug 1366250, don't flush layout when calling element.focus() on already focused element. Ensure layout is flushed after changing input.type, r=ehsan
--HG--
extra : rebase_source : 294d0220cc3c2b6be38566ff28722c5e9acc87a9
2017-05-19 23:20:48 +03:00
Boris Chiou 38215cedea Bug 1334036 - Part 11: Trigger animation-only restyle when we handle an event with coordinates. r=birtles,heycam
We need to request an animation-only restyle to force flush all throttled
animations on main thread when we handle an event with coordinates
(e.g. mouse event).

MozReview-Commit-ID: KkjeQVsLgTl

--HG--
extra : rebase_source : 314408062e719e9f52df9a6726e2f3dad817bbef
2017-05-19 16:16:41 +08:00
Boris Chiou 731ab38439 Bug 1334036 - Part 10: Return AnimationValue for BaseStyle. r=hiro
We need to retrieve the correct base style for Servo backend, so change
the return value to AnimationValue and update
KeyframeEffectReadOnly::BaseStyle().

MozReview-Commit-ID: 9FL3h1DLoJt

--HG--
extra : rebase_source : 42284c5fe8b8135910cde44b0815eb475ca2f1cc
2017-05-10 11:06:19 +08:00
Boris Chiou 9a42bdba22 Bug 1334036 - Part 8: Add AddLayerChangesForAnimation in ServoRestyleManager. r=birtles
Some changes to animations don't affect the computed style and yet still
require the layer to be updated. Therefore, we also need to call
AddLayerChangesForAnimation in ServoRestyleManager. In this patch, we
factor out this function from GeckoRestyleManager, so we can reuse it.

MozReview-Commit-ID: LL7D1oGS65l

--HG--
extra : rebase_source : cd028a3d8f5dc251ec6615918a0f9569f0af44f5
2017-05-02 14:03:16 +08:00
Emilio Cobos Álvarez b0e5579ecb Bug 1364871: Revert workaround added in bug 1328319. r=heycam
MozReview-Commit-ID: 804TV5qW3Xh

--HG--
extra : rebase_source : ccd88cde5128551e799302a11bbe98be89698718
2017-05-20 03:26:24 +02:00
Emilio Cobos Álvarez cd98f069a2 Bug 1364871: Restyle ::backdrop too. r=heycam
MozReview-Commit-ID: BGWRiaeZiD8

--HG--
extra : rebase_source : a3ebd025ca9a9d7a03a5aeec95e0d40791c9af7c
2017-05-19 23:59:23 +02:00
Emilio Cobos Álvarez cbebceac22 Bug 1364871: Add a function to update frame pseudo-element styles during the post-traversal, and restyle bullet frames. r=heycam
MozReview-Commit-ID: 9m0jqmxjOb6

--HG--
extra : rebase_source : 2d0b8dbcf451b8e9bc69759681dbce1f35ad28c5
2017-05-19 23:58:22 +02:00
Ryan VanderMeulen 96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Emilio Cobos Álvarez 5a98022984 Bug 1365902: Make ServoStyleSet::RebuildAllStyleData async. r=heycam
MozReview-Commit-ID: D9Ri4gO3F6G

--HG--
extra : rebase_source : 7bcd208994a7140eadc54fa32f209643a8570b72
2017-05-17 18:33:32 +02:00
cku d528aa4d56 Bug 1205475 - Part 2. Prevent multiple EffectSet property look up. r=mattwoodrow
Functions like BuildDisplayListForStackingContext or BuildDisplayListForChild look
up EffectSet property several times in callees, such as IsTransformed() or
HasOpacity(), which is time wasting.

We should look up EffectSet just once, and pass the found one to all callees
that need it.

MozReview-Commit-ID: GZywm2UcpU7

--HG--
extra : rebase_source : 21f5dd0076a90d876a6df35eee2b886844b44f0a
2017-05-17 15:13:12 +08:00
cku 19af87ab38 Bug 1205475 - Part 1. Hold MAY_HAVE_OPACITY_ANIM/ MAY_HAVE_TRANSFOMR_ANIM information in EffectSet. r=mattwoodrow
FRAME_STATE_BIT of nsFrame and nsINode::mBoolFlags are both full, we need to
find another place to hold MAY_HAVE_OPACITY information.

nsINode::mSlots might be a choice, but since we always use this information in
painting, memory footprint of nsINode will become larger after this change.

So I decide to put this information right in EffectSet. The drawback of storing
this information in EffectSet is, although unnecessary Effect look-up is
prevented, we still need EffectSet property look-up in each time
HasOpacityInternal call, so we need Part 2.

Conceptually, Part 1 and Part 2 are independent.

MozReview-Commit-ID: 6sfBFSHjxQb

--HG--
extra : rebase_source : 394141cec3b44bb352297a0add8f9763d815bddb
2017-05-16 19:11:04 +08:00
Jonathan Kew a0fe53386a Bug 1366623 - Ensure we don't continue using a stale BidiDataProperty after dynamic content changes make it obsolete. r=dholbert 2017-05-23 15:21:58 +01:00
Wes Kocher 0a5ec26ac6 Merge inbound to central, a=merge
UPGRADE_NSS_RELEASE

MozReview-Commit-ID: 9BuuGYyJ3RJ

--HG--
extra : amend_source : 57de84460e0ace13892ff1623451b9b9be8eaeeb
2017-05-17 14:48:30 -07:00
Jonathan Kew 6d345e8ee2 Bug 1365356 - patch 2 - Allow callers to pass an nsStyleDisplay in to FinishAndStoreOverflow, to avoid internal StyleDisplay() calls. r=mats 2017-05-17 15:47:31 +01:00
Ryan VanderMeulen 4b4b439b5e Merge inbound to m-c. a=merge
CLOSED TREE
2017-05-16 20:10:26 -04:00
Carsten "Tomcat" Book c8ef78fe63 Merge mozilla-central to mozilla-inbound on a CLOSED TREE 2017-05-16 15:08:58 +02:00
Emilio Cobos Álvarez 66f11e5df2 Bug 1364412: Simplify Servo_HasAuthorSpecifiedRules looking at the pseudo style. r=bholley
MozReview-Commit-ID: HpV92ttZGJz
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 0f93984a7af0ac5c0e5dd479607fa500f55f7506
2017-05-12 17:51:32 +02:00
Xidorn Quan 20d42c7e16 Bug 1328319 part 9 - Don't clean up retired counter styles for stylo. r=heycam
MozReview-Commit-ID: JWBhNvtYGIB

--HG--
extra : rebase_source : be7b1ad3221df48310d18c64e3aaf76e73309f72
2017-05-15 22:18:49 +10:00
Masayuki Nakano 4a6eeab901 Bug 1354443 part.3 While nsDocumentViewer is destroying mPrintEngine, null out its pointer & transfer ownership to local var r=dholbert
MozReview-Commit-ID: ALRlOC07SY2
2017-04-28 16:25:01 +09:00
Emilio Cobos Álvarez ab5433c222 Bug 1364824: Implement ServoRestyleManager::PostRebuildAllStyleDataEvent. r=heycam
MozReview-Commit-ID: I9HmM9ZMB2c
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 08481f2a84508ed79d544fefbf39a92cac0d5ce5
2017-05-15 09:41:42 +02:00
Xidorn Quan 8c54e3ce73 Bug 1363699 part 1 - Make named CounterStyle objects not refcounted. r=heycam
This change does the following:
* Introduce a new smart pointer called CounterStylePtr which either
  holds an AnonymousCounterStyle strongly, or a named CounterStyle
  managed by CounterStyleManager weakly, and use it to replace all
  RefPtr<CounterStyle> around the codebase.
* Rename CounterStyleManager::mCacheTable to mStyles to reflect the
  fact that it is used to manage all styles, not just for caching.
* Add a retired styles list which collect all named CounterStyle
  evicted from mStyles, and post a PostRefreshObserver to destroy
  objects in that list after next flush.
* Remove helper functions for counter style in nsStyleList and expose
  mCounterStyle directly, to make code simpler with the new pointer.

Reason for adding a new smart pointer type rather than making their
AddRef/Release behave like BuiltinCounterStyle is that, it is possible
that after a flush, some stale style structs may still be alive. They
can contain pointer to destroyed CounterStyle objects. Although the
actual content may never be accessed anymore, RefPtr may still access
the object for refcounting during destruction.

MozReview-Commit-ID: xxegwSDhNb

--HG--
extra : rebase_source : bb5443f0eb56eee51cbdfd08e0400335648610e8
2017-05-13 21:42:23 +10:00
Sebastian Hengst feb6f6c577 Backed out changeset 19f0b1e8f287 (bug 1358710) for failing reftest aja-linear-2.html on OS X with e10s. r=backout
--HG--
rename : layout/reftests/css-gradients/aja-linear-2.html => layout/reftests/css-gradients/aja-linear-2a.html
2017-05-15 00:18:47 +02:00
Nazım Can Altınova 19a0e93729 Bug 1358710 - Unprefix -moz-linear-gradient / -moz-radial-gradient in unit tests r=dholbert
MozReview-Commit-ID: J2Tn8GKfKIN

--HG--
rename : layout/reftests/css-gradients/aja-linear-2a.html => layout/reftests/css-gradients/aja-linear-2.html
extra : rebase_source : 9c1869bddf2068cf68666e0815b8f9d9424fe76a
2017-04-24 15:54:51 +03:00
Nazım Can Altınova d8be7ab275 Bug 1358710 - Unprefix -moz-linear-gradient / -moz-radial-gradient in unit tests r=dholbert
MozReview-Commit-ID: J2Tn8GKfKIN

--HG--
rename : layout/reftests/css-gradients/aja-linear-2a.html => layout/reftests/css-gradients/aja-linear-2.html
extra : rebase_source : 7b1ae51a435fae3782a03046ce21474b9a149f1a
2017-04-24 15:54:51 +03:00
Mats Palmgren 7da60ffe84 Bug 1359411 - Reftest. (test only: DONTBUILD)
MozReview-Commit-ID: H1y2uTW89i8
2017-05-13 21:15:03 +02:00
Emilio Cobos Álvarez 9e24a8c649 Bug 1364862: Make PostRebuildAllStyleData async. r=heycam
MozReview-Commit-ID: EM3eUP1dWwA
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 2928e4cbd12af99dde2d913bb814febec72200a0
2017-05-15 18:02:59 +02:00
Botond Ballo d40e44859b Bug 1359868 - Move the ComputePartialPrerenderArea() helper to nsLayoutUtils so it can be reused. r=mstange
MozReview-Commit-ID: GVRBUfYwOFP
2017-05-01 19:59:08 -04:00
Daniel Holbert ad52211150 Bug 1344398 part 2: React to some CSS 'overflow' changes on body/html by simply calling UpdateViewportScrollbarStylesOverride() instead of reframing. r=bz,tnikkel
MozReview-Commit-ID: Lpr9aNv9hAB

--HG--
extra : rebase_source : c8cccf8e6495ab1d57f9680c07b3e43a488e8691
2017-05-10 13:53:27 -07:00
Daniel Holbert 3b750bdae1 Bug 1344398 part 1: Move presContext variable a little earlier in a nsCSSFrameConstructor method. r=tnikkel
Also, assert that this presContext is non-null (which we already implicitly
assume, when we dereference it without null-checking it).

MozReview-Commit-ID: IIYUqGQTOnb

--HG--
extra : rebase_source : 67cbf91fb2fdeb46352559fb519693d6d13d3224
2017-05-10 13:53:25 -07:00
Jeremy Chen 920934c51e Bug 1363000 - re-enable <select> related SVG crashtests. r=heycam
MozReview-Commit-ID: CXoNYeiwJpL

--HG--
extra : rebase_source : d6c3a58bf07cb557f2be0d8311a6be11f1cee35f
2017-05-12 10:52:16 +08:00
Cameron McCormack 203bdaed3b Bug 1361235 - Part 2: Re-enable some tests. r=emilio
MozReview-Commit-ID: 76FaOwHjIMB

--HG--
extra : rebase_source : e2e36bd8a6b86761fe616d7c30d8df7b661a4e09
2017-05-11 19:19:52 +08:00
Ryan VanderMeulen ff1d6f6f88 Merge m-c to autoland. a=merge 2017-05-11 11:30:47 -04:00
Sebastian Hengst db8f56dd23 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: HWYxZeNWish
2017-05-11 16:50:12 +02:00
Mats Palmgren 1a7ef0cf26 Bug 1349320 part 2 - [css-grid] Make nsLayoutUtils::IntrinsicForAxis take an optional percentage basis to use for resolving transferred percentages. r=dholbert
If the percentage basis isn't provided it will be calculated from the ancestors
as before.  Note that that algorithm is only valid if the frame's containing
block is the ancestor's content box, which isn't the case for grid items.
So grid layout MUST provide a percentage basis, although the given value may
be NS_UNCONSTRAINEDSIZE for either axis if the value is indefinite.

MozReview-Commit-ID: 7nvAuR43xfM
2017-05-11 02:33:14 +02:00
Wes Kocher 02bf8c4425 Merge m-c to inbound, a=merge
MozReview-Commit-ID: FfNikA7un6F
2017-05-10 17:31:18 -07:00
Olli Pettay 33a3692644 Bug 1363396, ensure ContentViewer listeners are handled only when needed, r=mccr8
--HG--
extra : rebase_source : 49f1a2bc1a3ca1aecbf3639c580c19ae215cdcc8
2017-05-11 02:20:27 +03:00
Bas Schouten dafd50f856 Bug 1331718 - Part 3: Store pointers to DisplayItemData directly on nsIFrame. r=mattwoodrow r=dbaron
This patch aims to speed up the lookup and storage of DisplayItemData objects, by removing a level of indirection and preventing the previously required hashtable lookup in order to access these. Instead it stores an array of pointers on each frame that allows direct access to the DisplayItemData object by dereferencing the frame. Since most frames get either 1 or 2 DisplayItemData objects attached to them a specialized class is used that is of minimal size (2 * sizeof(void)) and that performs well for sizes 1 or 2.

MozReview-Commit-ID: HONKAmpk5H8
2017-05-10 05:07:38 +02:00
Bas Schouten cccd551d50 Bug 1330570: Allocate DisplayItemData into the PresShell Arena. r=mattwoodrow
MozReview-Commit-ID: 8zVPIVSslVA
2017-05-10 05:07:37 +02:00
Wes Kocher 8f6058b583 Backed out 3 changesets (bug 1344398) for assertion failures at Element.cpp a=backout
Backed out changeset d0e5a5ba01b5 (bug 1344398)
Backed out changeset d70f9de401d1 (bug 1344398)
Backed out changeset 647d0bb3714d (bug 1344398)

MozReview-Commit-ID: DTVWf28NcNb
2017-05-10 17:43:50 -07:00
Emilio Cobos Álvarez 68f1504992 Bug 1355343: Take all the snapshots into account. r=bholley
I've chosen this approach mainly because there's no other good way to guarantee
the model is correct than holding the snapshots alive until a style refresh.

What I tried before this (storing them in a sort of "immutable element data") is
a pain, since we call into style from the frame constructor and other content
notifications, which makes keeping track of which snapshots should be cleared an
which shouldn't an insane task.

Ideally we'd have a single entry-point for style, but that's not the case right
now, and changing that requires pretty non-trivial changes to the frame
constructor.

MozReview-Commit-ID: FF1KWZv2iBM

--HG--
extra : rebase_source : b02d516ea164fc567110338411bf6ba251d53dab
2017-05-07 16:36:47 +02:00
Hiroyuki Ikezoe 35bf2524cf Bug 1356916 - Skip crash tests causing scrollbar-thumb atom leak. r=heycam
MozReview-Commit-ID: K66L8EQmPY2

--HG--
extra : rebase_source : 75c69b1c5188ff094dfc7d79e9182d3725ccecd4
2017-05-11 07:30:42 +09:00
Hiroyuki Ikezoe 2cac8774d0 Bug 1356916 - Call PostRestyleEvent() with the change hint obtained by Element::GetAttributeChangeHint in ServoRestyleManager::AttributeChanged. r=heycam
MozReview-Commit-ID: 14clm0eE0iE

--HG--
extra : rebase_source : d2b14bdc264c283075284172cae873294b16a51f
2017-05-11 07:30:34 +09:00
Carsten "Tomcat" Book 954867b0f5 Merge mozilla-central to autoland 2017-05-10 15:32:46 +02:00
Carsten "Tomcat" Book 85e7d31eb4 Backed out changeset 9483bb6d8ce6 (bug 1330570) for test failures in test_selection_move_commands.html | cmd_scrollBottom - -300 should equal -300 2017-05-10 12:11:11 +02:00
Carsten "Tomcat" Book a1263f8111 Backed out changeset ff6861518bc3 (bug 1331718) 2017-05-10 12:09:04 +02:00
Jonathan Kew 83dd0ceea3 Bug 1362423 - Simplified testcase from the bug report. r=dholbert 2017-05-10 11:01:13 +01:00
Jonathan Kew 07bd548fcf Bug 1362423 - Ensure nsBidiPresUtils::Resolve always clears the NEEDS_BIDI_RESOLUTION flags for the block and continuations, whichever code-path it takes when looking for possible short-circuits. r=dholbert 2017-05-10 11:01:07 +01:00
Bill McCloskey c197e07ff2 Bug 1363560 - Name more runnables (r=mccr8)
MozReview-Commit-ID: 3hxZDA4JlTV
2017-05-09 21:53:25 -07:00
Bas Schouten 70d011d12c Bug 1331718 - Part 3: Store pointers to DisplayItemData directly on nsIFrame. r=mattwoodrow r=dbaron
This patch aims to speed up the lookup and storage of DisplayItemData objects, by removing a level of indirection and preventing the previously required hashtable lookup in order to access these. Instead it stores an array of pointers on each frame that allows direct access to the DisplayItemData object by dereferencing the frame. Since most frames get either 1 or 2 DisplayItemData objects attached to them a specialized class is used that is of minimal size (2 * sizeof(void)) and that performs well for sizes 1 or 2.

MozReview-Commit-ID: HONKAmpk5H8
2017-05-10 05:07:38 +02:00
Bas Schouten 17a260dee8 Bug 1330570: Allocate DisplayItemData into the PresShell Arena. r=mattwoodrow
MozReview-Commit-ID: 8zVPIVSslVA
2017-05-10 05:07:37 +02:00
Chris H-C b465ec140b bug 1362404 - Handle out-of-order overlapping event coalescing. r=masayuki
There are situations where events may be handled out-of-order. Allow
coalescing to happen backwards in time as well as forwards to cover them.

MozReview-Commit-ID: 3k7vNFxE1cz

--HG--
extra : rebase_source : 636a3671536747cf62cb410836b4c5a2275bbb49
2017-05-09 11:07:40 -04:00
Emilio Cobos Álvarez 266c5357b1 Bug 1362991: Compute at most one text style context per element. r=heycam
MozReview-Commit-ID: IDTRk47CsRS

--HG--
extra : rebase_source : fa38a591fea6ed6852532d939bce4323eb6552ae
2017-05-08 14:49:57 +02:00
Kartikaya Gupta 84a90cdcec Back out bug 1359868 (2 csets) for possibly causing a checkerboarding regression. r=backout
MozReview-Commit-ID: KFOsj8If3sZ
2017-05-09 13:23:23 -04:00
Daniel Holbert b216b7b0e8 Bug 1344398 part 2: React to some CSS 'overflow' changes on body/html by simply calling UpdateViewportScrollbarStylesOverride() instead of reframing. r=bz,tnikkel
MozReview-Commit-ID: Lpr9aNv9hAB

--HG--
extra : rebase_source : c8cccf8e6495ab1d57f9680c07b3e43a488e8691
2017-05-10 13:53:27 -07:00
Daniel Holbert 7cb2ea776a Bug 1344398 part 1: Move presContext variable a little earlier in a nsCSSFrameConstructor method. r=tnikkel
Also, assert that this presContext is non-null (which we already implicitly
assume, when we dereference it without null-checking it).

MozReview-Commit-ID: IIYUqGQTOnb

--HG--
extra : rebase_source : 67cbf91fb2fdeb46352559fb519693d6d13d3224
2017-05-10 13:53:25 -07:00
Matt Brubeck 0c70ae6c1d Bug 1349651 - stylo: Implement HasAuthorSpecifiedRules. r=bholley
MozReview-Commit-ID: 8ta5KqKzncZ

--HG--
extra : rebase_source : 3ec29f283dc6bfec4d2a1676ab3f78296893d94b
2017-05-10 13:11:36 -07:00
Carsten "Tomcat" Book 76ca853e3e Merge mozilla-central to mozilla-inbound 2017-05-09 14:40:11 +02:00
Bevis Tseng 4fc7851527 Bug 1356558 - Do not run ScriptRunner in the intermediate state before destroying PreShell, PresContext, etc at nsDocumentViewer::Hide() is done. r=bz
Do not run ScriptRunners queued by DestroyPresShell() in the intermediate state
  before we're done destroying PresShell, PresContext, ViewManager, etc.

MozReview-Commit-ID: LNP7Lp7zekS
2017-04-24 19:13:18 +08:00
Randall Barker 26b3324682 Bug 1361781 - Ensure nsLayoutUtils::SetFixedPositionLayerData sets the SideBits: eSideBitsTop and eSideBitsLeft r=tnikkel
MozReview-Commit-ID: LxKOsExXGfH
2017-05-08 17:02:07 -07:00
Wes Kocher ff0797bb47 Merge autoland to m-c a=merge
MozReview-Commit-ID: 8LTBWT5zY6o
2017-05-08 13:37:37 -07:00
Kartikaya Gupta 5d5cdc518c Merge m-c to graphics
MozReview-Commit-ID: 2cIoGVmLEuA
2017-05-08 10:50:52 -04:00
Kartikaya Gupta eac87bc2bf Merge m-c to graphics
MozReview-Commit-ID: 9HO5vhW5fyh
2017-05-04 09:05:26 -04:00
Iris Hsiao e71485e5b0 merge mozilla-inbound to mozilla-central a=merge 2017-05-04 11:18:36 +08:00
Kartikaya Gupta b6b23a1376 Merge m-c to graphics
MozReview-Commit-ID: DVUE3Wys3HV
2017-05-03 08:52:43 -04:00
Kartikaya Gupta 7259e787f4 Merge m-c to graphics
MozReview-Commit-ID: 9XwZUWIhGir
2017-05-02 09:45:11 -04:00
Carsten "Tomcat" Book a439f12e74 merge mozilla-inbound to mozilla-central a=merge 2017-05-02 11:04:56 +02:00
Ting-Yu Lin 918033ba12 Bug 1321754 Part 2 - Update reftest and crashtest expectations for stylo. r=heycam
MozReview-Commit-ID: AunZ2DE209M

--HG--
extra : rebase_source : 4a091cd55581039c8d81f4db9bfbe2af8c0d0863
2017-04-28 14:53:16 +08:00
Matt Woodrow 82005900e6 Bug 1349418 - Put the unscrolled item in the right place when we're doing container scrolling. r=mstange 2017-04-28 12:45:36 +12:00
Kartikaya Gupta 9fefc7a64a Merge m-c to graphics
MozReview-Commit-ID: 82en2F0AFQF
2017-04-30 19:10:35 -04:00
Ethan Lin f29e1a70ba Bug 1360112 - Correct background image position when enabling webrender background image. r=mattwoodrow 2017-05-01 00:59:26 +08:00
Carsten "Tomcat" Book 1045b9730a merge mozilla-inbound to mozilla-central a=merge 2017-04-28 10:36:11 +02:00
Timothy Nikkel 0b57ca9241 Bug 1354933. Add annotation if the view is for a printing document if the view has a frame in its destructor. r=mats 2017-04-27 17:50:00 -05:00
Cameron McCormack c9e89efdd7 Bug 1341102 - stylo test expectation adjustments. r=me 2017-04-28 11:42:16 +08:00
Emilio Cobos Álvarez 3f51663f2e Bug 1351339: Compute text style changes when the parent is a display: contents element. r=heycam
MozReview-Commit-ID: GWPNevfP4xc

--HG--
extra : rebase_source : b8fb49f80c4e5c30747eb76d95961ec669aa579b
2017-05-08 03:16:43 +02:00
Markus Stange 2a35142b62 Bug 1349418 - Remove checkerboarding code and just use an opaque background color behind root scroll frames. r=kats 2017-04-21 14:02:15 +12:00
Daniel Holbert 74687b05c2 Bug 1361086: Simplify UndisplayedMap::GetListFor/GetOrCreateListFor to take nsIContent* rather than nsIContent**. r=emilio
This patch shouldn't affect behavior -- it just takes a latent opportunity for
simplification and removes an unused layer of indirection. These functions were
set up to look like they took outparams, but none of the callers were using the
value left in the outparam.

MozReview-Commit-ID: LaL7YiyVYS2

--HG--
extra : rebase_source : 28466d6ab36da2e3609e7ed0fdb51618e652c7f7
2017-05-01 09:57:55 -07:00
Emilio Cobos Álvarez 1e75c0c5e1 Bug 1361041: Avoid posting ReconstructFrame hints to an uninitialized PresShell. r=bz
The call that's causing the crash seems to be [1], that is, we're trying to
recreate frames for the root element, which should always have a frame created
at the initialization of the PresShell.

So the function I removed in that bug had something like the following:

  if (!mDidInitialize) {
    // Nothing to do here.  In fact, if we proceed and aContent is the
    // root we will crash.
    return NS_OK;
  }

Which PostRecreateFramesFor doesn't guard against (because I thought it was not
needed, per tryserver results).

Sounds a lot like we do need that check, though I'd like to have a testcase
where it happens :(

[1]: http://searchfox.org/mozilla-central/rev/3dc6ceb42746ab40f1441e1e659ffb8f62ae78e3/layout/base/nsCSSFrameConstructor.cpp#2420

MozReview-Commit-ID: Lh6SohNmmI6

--HG--
extra : rebase_source : 5b7076f86d41f5489e47ca16ac2f3620812ee9e8
2017-05-01 18:59:50 +02:00
Wes Kocher be34ade6b6 Merge autoland to central, a=merge
MozReview-Commit-ID: 2pgVZdnDKno
2017-04-27 12:44:03 -07:00
Kartikaya Gupta c77714e7cd Merge m-c to graphics
MozReview-Commit-ID: EdvTPLc8PCy
2017-04-27 13:03:06 -04:00
Kartikaya Gupta a8407ac1c7 Bug 1359842 - Replace use of NSRectToRect in WebRender-related code with proper LayoutDevicePixel types. r=nical
MozReview-Commit-ID: 7MXFubPtLoD
2017-04-27 12:04:12 -04:00
Aryeh Gregor db1d64129d Bug 1358893 - Stop using document.createEvent("beforeunloadevent") internally; r=smaug
We want to see if we can drop support due to web pages not using it.
Edge and Safari already don't support it, and Chrome reports that usage
is low enough that they're willing to drop it.  But telemetry doesn't
tell us about web usage if we're triggering it via our own internal
code.

MozReview-Commit-ID: 5YBfhQJExHC

--HG--
extra : rebase_source : fd359e3264ba96ef10617f4de767080c94b792fb
2017-04-23 18:18:56 +03:00
Ting-Yu Lin 60af6a6d49 Bug 1361072 - Change caller of RestrictCaretDraggingOffsets() to use getter_AddRefs. r=dholbert
Per description in bug 1361072, this is the standard idiom to assign
outparam pointers of refcounted types.

MozReview-Commit-ID: 6kmDslMs94j

--HG--
extra : rebase_source : c151f0e6050cfd3ce1cf914eeb350166c539d160
2017-05-02 14:24:54 +08:00
Wes Kocher a463bb4c4c Merge m-c to autoland, a=merge
MozReview-Commit-ID: 6CUQEJghjzU
2017-04-27 13:37:47 -07:00
Emilio Cobos Álvarez b27ac0ada8 Bug 1360157: Assert that a display: contents child always has a parent. r=mats
MozReview-Commit-ID: Cyif2yCFu5

--HG--
extra : rebase_source : e32f308c4772507d549f7804b461d3fbecdfe4b6
2017-04-27 12:36:07 +02:00
Emilio Cobos Álvarez d77548d239 Bug 1331047: Implement the new traversal semantics for stylo. r=bholley,hiro
MozReview-Commit-ID: 4BXx9JpGZKX
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-04-27 17:06:11 +02:00
Chris H-C c2c97d341c bug 1357457 - Report non-overlapping Input Responses to Telemetry. r=bsmedberg,masayuki data-r=bsmedberg
Say there's a single lag event, a GC or a busy loop, during which the user
types several characters.

Is this one (lag) event? Several (input) events?

We have INPUT_EVENT_RESPONSE_MS which will accumulate several lagged events in
this case. However, that is more of an indication of how users use Firefox than
how good we've been at eliminating sources of lag.

INPUT_EVENT_RESPONSE_COALESCED_MS records the coalesced time spend waiting for
responses to input events. So in this case it will record one value for the
entire duration of the lag.

MozReview-Commit-ID: H5rYnhwF0q3

--HG--
extra : rebase_source : b9be179dac6c6a007d2835b909ec4ce71a3f1c90
2017-04-19 15:53:30 -04:00
Carsten "Tomcat" Book e1e203f1f5 Merge mozilla-central to autoland 2017-04-27 16:36:41 +02:00
Masatoshi Kimura a4c9e326d4 Bug 1358758 - Use CSSIntRect for nsIFrame::GetScreenRect. r=kats
MozReview-Commit-ID: KXPL1ERbFDa

--HG--
extra : rebase_source : 263b18d1736b09bb62d914f066481281966b288c
2017-04-25 07:33:13 +09:00
Botond Ballo 979e3ee035 Bug 1359868 - Move the ComputePartialPrerenderArea() helper to nsLayoutUtils so it can be reused. r=mstange
MozReview-Commit-ID: GVRBUfYwOFP

--HG--
extra : rebase_source : 8e16daf7709cc107f21e3b8b0050df44e83089fb
2017-05-01 19:59:08 -04:00
Wei-Cheng Pan cd1468cb2b Bug 1345540 - Measure input event handling latency. r=bsmedberg,smaug, data-review?bsmedberg
MozReview-Commit-ID: 9mvwMewgIkJ

--HG--
extra : rebase_source : 659976746df68beddfc3281586d03b25a56e0ca0
2017-04-18 11:25:21 +08:00
Emilio Cobos Álvarez 6fe2b3e89d Bug 1355351: Simplify nsLayoutUtils callers, and make child iterators notice display: contents pseudos. r=heycam
This also happens to fix other bugs, like making display: contents pseudos
animatable, which weren't before.

MozReview-Commit-ID: LhwTPNbFvSZ

--HG--
extra : rebase_source : 785105b08d6bfa15ad257e61b769a263c6810ad0
2017-04-19 12:53:57 +02:00
Emilio Cobos Álvarez 135c333511 Bug 1355351: Clean up pseudo-element props. r=heycam
MozReview-Commit-ID: JZAhEN3chPs

--HG--
extra : rebase_source : f5756182a9ad35b6ac73a6f4d022c1f93ccbf333
2017-04-19 10:27:33 +02:00
Emilio Cobos Álvarez de9ddcaddd Bug 1355351: Add a node property to access the ::before and ::after pseudo-elements. r=heycam
MozReview-Commit-ID: FJxJp2U0Lxh

--HG--
extra : rebase_source : 062f952aafcda95ca3b0eba69389999c20cb4458
2017-04-16 17:29:49 +02:00
Emilio Cobos Álvarez 8767e6b8cb Bug 1357142: Always append descendants to RestyleTracker. r=bz,heycam
MozReview-Commit-ID: 80ORql9Zixg

--HG--
extra : rebase_source : 60aef33f9eece5214d04deffa054209344806c11
2017-04-18 01:49:49 +02:00
Emilio Cobos Álvarez d2f3dc13ec Bug 1357142: Kill PresShell::RecreateFramesFor. r=bz
It's not only inefficient, but also prone to buggyness. Since styles may not be
up-to-date when it happens.

Post a reconstruct instead, which ensures a style flush happens before running
frame construction.

MozReview-Commit-ID: DrakHsJv5fY
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : 11900af908654336cc2391ab9480542c5474e38f
2017-04-17 18:01:37 +02:00
Benjamin Smedberg f5b5c4624c Bug 1335475 - Fix test_chrome_over_plugin_window to not load plugins from a data: URI, r=dvander
MozReview-Commit-ID: 8VAisndGqYI
2017-03-08 14:38:37 -05:00