Miko Mynttinen
b7eaedb6ea
Bug 1484966 - Part 3: Clang format layout/painting/ r=mattwoodrow
...
Depends on D3870
Differential Revision: https://phabricator.services.mozilla.com/D3871
--HG--
extra : moz-landing-system : lando
2018-09-04 20:46:21 +00:00
Csoregi Natalia
5984db0879
Backed out 2 changesets (bug 1484966) for bustage on RefPtr.h:42. CLOSED TREE
...
Backed out changeset 7b246c8f9de8 (bug 1484966)
Backed out changeset 399158a0a9b3 (bug 1484966)
2018-09-04 23:42:36 +03:00
Miko Mynttinen
bb2d78e17e
Bug 1484966 - Part 3: Clang format layout/painting/ r=mattwoodrow
...
Depends on D3870
Differential Revision: https://phabricator.services.mozilla.com/D3871
--HG--
extra : moz-landing-system : lando
2018-09-04 17:21:36 +00:00
Miko Mynttinen
2f3ec8cc90
Bug 1484966 - Part 1: Fix most clang-tidy warnings for layout/painting/ r=mattwoodrow
...
Differential Revision: https://phabricator.services.mozilla.com/D3869
--HG--
extra : moz-landing-system : lando
2018-09-04 17:19:36 +00:00
Matt Woodrow
b558f51c84
Bug 1479914 - Always use the new caret display item when available as these can change without an invalidation. r=miko
...
MozReview-Commit-ID: 8Le6xRfv5RL
--HG--
extra : rebase_source : 5703b21f786b51ae3bbb8ea6ce1e2d456b14b579
2018-08-03 22:15:55 +12:00
Matt Woodrow
1c14c56cce
Bug 1475971 - Copy the building rect into old items when we decide we can reuse them. r=miko
...
MozReview-Commit-ID: JXHZ17iFaei
--HG--
extra : rebase_source : 42fc06465a644de597f78e46878037b653da046e
2018-07-30 16:03:32 +12:00
Matt Woodrow
4f18c0f4a2
Bug 1475413
- Prefer using old items for uninvalidated frames during display list merging. r=miko
...
MozReview-Commit-ID: 14gc2IBJT1o
--HG--
extra : rebase_source : 6de86aec8ef1039b3adf8006cea456efadbed73b
2018-07-13 12:26:36 +12:00
Bas Schouten
7f6794045e
Bug 1472830: Reuse the work from ApplyOpacityToChildren when possible. r=mattwoodrow
2018-07-03 20:26:40 +00:00
Matt Woodrow
cfbee4345b
Bug 1461267 - Add some more assertions to verify the length of the DAG. r=mstange
...
MozReview-Commit-ID: DFy6Kb2KSwf
--HG--
extra : rebase_source : 5db508486e4d266b6cb80df83eda8c8b01253486
2018-06-19 15:14:14 +12:00
Hiroyuki Ikezoe
ca097c91ca
Bug 1468124 - Don't calculate overflow area if there is any frames in preserve-3d context. r=mattwoodrow
...
MozReview-Commit-ID: 2Ts3MzdouB7
--HG--
extra : rebase_source : f4cbff214d410012dae862670a82361e9a322f23
2018-06-19 14:49:47 +09:00
Miko Mynttinen
4c85ef17cc
Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
...
MozReview-Commit-ID: HpdFXqQdIOO
--HG--
extra : rebase_source : 1e7eea4f2d4ec16ec0c559a8afb26976ddbf4d07
2018-06-01 17:59:07 +02:00
arthur.iakab
7e765f798b
Backed out 2 changesets (bug 1465060) for build bustages on security/sandbox/linux/reporter/SandboxReporter.cpp
...
Backed out changeset 7c8905b6b226 (bug 1465060)
Backed out changeset 10446073eca8 (bug 1465060)
2018-06-03 19:25:41 +03:00
Miko Mynttinen
8d9dc85cd4
Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
...
MozReview-Commit-ID: HpdFXqQdIOO
--HG--
extra : rebase_source : 619d0e0ff63a2453c80f0c4d9beb906d43fa9b01
2018-06-01 17:59:07 +02:00
Emilio Cobos Álvarez
fffb25b74f
Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
...
This was done automatically replacing:
s/mozilla::Move/std::move/
s/ Move(/ std::move(/
s/(Move(/(std::move(/
Removing the 'using mozilla::Move;' lines.
And then with a few manual fixups, see the bug for the split series..
MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Matt Woodrow
c868a9a37d
Bug 1464288 - Make sure PreProcessDisplayLists logic for switching AGRs matches what ComputeRebuildRegion uses. r=miko
...
MozReview-Commit-ID: F6N0XLCpuEe
--HG--
extra : rebase_source : b706ded33ac5baf6433c99af8cacb62ebcf1e753
2018-05-26 16:55:17 +12:00
Dorel Luca
145f37a74f
Backed out changeset 18a7b3b1332d (bug 1464288) for failing reftests at reftest/tests/layout/reftests/display-list/1464288-1.htm a=backout
2018-05-26 07:04:24 +03:00
Matt Woodrow
3006bdf17e
Bug 1464288 - Make sure PreProcessDisplayLists logic for switching AGRs matches what ComputeRebuildRegion uses. r=miko
...
MozReview-Commit-ID: DeKzyGia1Va
--HG--
extra : rebase_source : b66e4056d0aa0cd51d2835e6697893fcd6569258
2018-05-26 09:21:15 +12:00
Coroiu Cristina
6ea42bbe36
Backed out changeset 5033de939b8c (bug 1464288) for failing reftests at reftest/tests/layout/reftests/display-list/1464288-1.htm a=backout
2018-05-25 20:42:33 +03:00
Matt Woodrow
6fdf0741d7
Bug 1464288 - Make sure PreProcessDisplayLists logic for switching AGRs matches what ComputeRebuildRegion uses. r=miko
...
MozReview-Commit-ID: Ht11ul21PRO
--HG--
extra : rebase_source : 3bb7b0128f3932142b518490cef3ba814245b5d6
2018-05-25 16:21:18 +12:00
Matt Woodrow
fa6ba0bd5b
Bug 1462497 - Part 1: Don't crash if we find an item from the wrong list, and keep looking instead r=miko
...
We will still crash in Nightly/DevEdition builds (so that we can fix the bug), but we'll just accept the possible duplication of items (and maybe minor rendering issues) for releases.
MozReview-Commit-ID: LNzjO8vJjGp
--HG--
extra : rebase_source : 3a755c0929bba42c0f6148e50f8d16567eea87e5
2018-05-23 10:59:11 +12:00
Matt Woodrow
52baaee863
Bug 1462497 - Add assertions to try diagnose which wrapper item went away. r=mstange
...
MozReview-Commit-ID: BkU5tTlgFum
--HG--
extra : rebase_source : f376fb94a99adfe92ae61f6a06a79d872885a5b3
2018-05-18 20:50:04 +12:00
Matt Woodrow
6d94d6c09f
Bug 1459997 - Add much more rigorous assertions for retained-dl assumptions. r=miko
...
This adds an assertion checking for duplicate items whenever we create an item, and when we merge an item into the final list.
I had to disable tracking for the anonymous inner list for nsDisplayPerspective and nsDisplayTransform (and manually forward RemoveFrame to them), as well as skipping the assertion for multi-page (since we can end up duplicating wrap lists, but isn't a problem, since we don't retain these).
MozReview-Commit-ID: 4n6rx9bQNan
--HG--
extra : source : ff93cd94b7c548ef57fa13b7eaf85992a0a60587
2018-05-01 11:56:40 -04:00
Matt Woodrow
b4687fa515
Bug 1460526 - Don't attempt to do a partial rebuild when a sublist DAG gets too complex, always rebuild the whole display list. r=miko
...
MozReview-Commit-ID: 5u3sBSepgJa
--HG--
extra : rebase_source : f08034d384cac0353017ff6dd6fe4f152d77d48d
extra : source : 21ab7bb3b993f2b2778f9dde10ff16c3c20f320f
2018-05-15 14:21:05 +12:00
Matt Woodrow
5412f4e50b
Bug 1461812 - Make sure we fully cleanup any partially constructed display lists when returning a failure from AttemptPartialUpdate. r=miko
...
MozReview-Commit-ID: DJBG6UFcoyR
--HG--
extra : rebase_source : 38e33ad785556b92b8058f00a85d48c27fb4d2e3
2018-05-16 12:55:08 +12:00
Andreea Pavel
9badaa53d2
Backed out changeset ff93cd94b7c5 (bug 1459997) for assertion failures at builds/worker/workspace/build/src/layout/painting/nsDisplayList.cpp:141 on a CLOSED TREE
2018-05-16 09:48:56 +03:00
Matt Woodrow
0d65266918
Bug 1460491 - Part 1: Split nsDisplayItem::mVisibleRect into two members, one for each stated purpose. Gets rid of the save/restore since we no longer modify the building rect. r=jnicol
...
MozReview-Commit-ID: 5wcsSoZRN44
--HG--
extra : rebase_source : 1bf7d655b048a972e392514542aee171e20afe82
2018-05-16 15:56:32 +12:00
arthur.iakab
5a50fe880e
Backed out changeset 21ab7bb3b993 (bug 1460526) for failing reftest on worker/workspace/build/src/layout/painting/RetainedDisplayListBuilder
2018-05-16 04:51:23 +03:00
Matt Woodrow
840b789b4b
Bug 1459997 - Add much more rigorous assertions for retained-dl assumptions. r=miko
...
This adds an assertion checking for duplicate items whenever we create an item, and when we merge an item into the final list.
I had to disable tracking for the anonymous inner list for nsDisplayPerspective and nsDisplayTransform (and manually forward RemoveFrame to them), as well as skipping the assertion for multi-page (since we can end up duplicating wrap lists, but isn't a problem, since we don't retain these).
MozReview-Commit-ID: 4n6rx9bQNan
--HG--
extra : rebase_source : 49da303965d63258f4c6023a0b09ef0de7553724
2018-05-01 11:56:40 -04:00
Matt Woodrow
4216a1235a
Bug 1460526 - Don't attempt to do a partial rebuild when a sublist DAG gets too complex, always rebuild the whole display list. r=miko
...
MozReview-Commit-ID: 5u3sBSepgJa
--HG--
extra : rebase_source : 860e147fdc463fec8ddb6c6d08cb86f1873a6326
2018-05-15 14:21:05 +12:00
Matt Woodrow
d7cebc698d
Bug 1461231 - Don't omit deleted items when constructing the DAG, since we need to record that we made a modification during MergeDisplayLists. r=miko
...
We can unconditionally delete the item though, and just put a placeholder entry into the DAG.
MozReview-Commit-ID: 7a2UnaByIZu
--HG--
extra : rebase_source : f9cf83f09c1a6b9b23f469f7d3ab3a67f99f4018
2018-05-15 14:20:59 +12:00
Matt Woodrow
085d0bbe3b
Bug 1459441 - Make sure we build the full display list when we have blend containers in order to get the correct sorting for them. r=mstange
...
MozReview-Commit-ID: ECTU7enMb1r
--HG--
extra : rebase_source : 70f1b6187c152e770c4e19539645174c62198dc0
2018-05-10 11:39:12 +12:00
Matt Woodrow
250e99f481
Bug 1453541
- Part 2: Look for Out Of Flow frames with modified ancestors during ProcessFrame instead of during display list building. r=mstange
...
MozReview-Commit-ID: KsgrFqr2gVN
--HG--
extra : rebase_source : c4c370a48cbc5d3955e4b4d815c1d2b91eeb5601
2018-04-15 16:38:45 +12:00
Matt Woodrow
52c6a96582
Bug 1453541
- Part 1: Move more code into ProcessFrame so that we can call it from multiple places. r=mstange
...
MozReview-Commit-ID: AOXPgteSgTL
--HG--
extra : rebase_source : 88da959b50c5ca9681482854e40d5d913aeac57d
2018-04-15 16:38:44 +12:00
Matt Woodrow
66ef22faf5
Bug 1439809 - Store the display list index on the display items during PreProcessDisplayList so that we can do lookup without a hashtable. r=miko,mstange
...
MozReview-Commit-ID: IYGk2KNkeY1
--HG--
extra : rebase_source : 11f9e6b3ff57ee129e339c882b7b53369e21308a
2018-04-24 12:59:11 +12:00
Matt Woodrow
8a8cc8c9a7
Bug 1453668 - Restrict the retained display list stacking context optimization to frames that are also containing blocks for position:fixed. r=miko
...
MozReview-Commit-ID: GP4uMpR2Lq0
--HG--
extra : rebase_source : 6142080157be59e189dbd0e8cc56a42375afb2f0
2018-04-16 14:23:47 +12:00
shindli
5898cbcbdf
Backed out changeset b584ff6f5afa (bug 1453668) for R failures in file:///C:/Users/task_1523893739/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-style-change-stacking-context-1.html on a CLOSED TREE
2018-04-16 20:15:19 +03:00
Matt Woodrow
61b0638917
Bug 1453668 - Restrict the retained display list stacking context optimization to frames that are also containing blockks for position:fixed. r=miko
...
This makes the optimization rarer, but is significantly simpler, since we should now be guaranteed that all placeholder frames have their out of flow frames in the same stacking context.
MozReview-Commit-ID: 1Nf8Sx1dca7
--HG--
extra : rebase_source : 74856420fdf6108fe749c94418a20bc9faa6fc5e
2018-04-16 14:23:47 +12:00
Andreea Pavel
fc3488c8d7
Backed out changeset ee5f61737378 (bug 1452805) for failing awsy/test_memory_usage.py on a CLOSED TREE
2018-04-16 17:05:13 +03:00
Matt Woodrow
552eaff7ef
Bug 1453942 - Invalidate if any content ancestor of the display item frame is modified, not just frame tree ancestors. r=miko
...
We already rebuild all display items for out-of-flow descendants of a modified frame, but we don't currently mark them modified.
In this case, a scrollframe becomes active, and causes position:fixed descendants to use nsDisplayFixedPosition instead of nsDisplayWrapList.
Not invalidating means that we end up with both versions, instead of removing the old one.
MozReview-Commit-ID: LXjjsQhzxiB
--HG--
extra : rebase_source : e286bad815f2d799ec641e5b2ef6507eb57d22cd
2018-04-16 10:14:00 +12:00
Matt Woodrow
7594997fb9
Bug 1452805 - Make sure we rebuild contents infront and behind stacking contexts if their size might have changed. r=miko
...
The test invalidates the z-index element, so that we do a partial build with just that and the DAG no longer knows the relative ordering between it and the other blue elements.
We then expand the size of the 'first' elements stacking context, and ensure that we provide enough intersecting items to know that we're on top of the z-index element.
MozReview-Commit-ID: 13aRGm1eucp
--HG--
extra : amend_source : 11d530fbec816b3dbcfa7228625e0ba0e73064d0
2018-04-13 11:09:11 +12:00
Matt Woodrow
5f47a3aed8
Bug 1451971 - Rebuild the whole page when we have perspective or preserve-3d. r=miko
...
MozReview-Commit-ID: 2SkKvpdLWMi
--HG--
extra : rebase_source : 6b19d557a93fb3e0f2a2faf34f238b96c3e0f0bd
2018-04-11 21:49:30 +12:00
Matt Woodrow
bbc9200a88
Bug 1451384 - Check IsChanged on the old item during merging, since that's the one that might have a deleted frame. r=mstange
...
This happens when an nsIFrame* that builds an nsDisplayWrapList is deleted, but then the memory is immediately reused for another frame that builds the same type display item, within the same display list.
PreProcessDisplayLists chooses not to descend into the nsDisplayWrapList for the deleted frame, and so mOldItems remains uninitialized for the old sublist.
When adding the new instance, IsChanged returns false, since the pointers are the same, and we're checking HasDeletedFrame on the new instance (where it's never true), instead of the old. We then recurse into MergeDisplayLists, with an uninitialized mOldItems array, and crash.
I haven't added a test because I haven't yet figured out how to create a minimal testcase, and the test would rely on implementation details of the frame allocator to remain unchanged to be useful.
MozReview-Commit-ID: pHimEvfAND
--HG--
extra : rebase_source : 10baa8cabf1eca8d592f2be0eb7bc7c9461f9785
2018-04-05 12:20:32 +12:00
Matt Woodrow
3cd23bdc29
Bug 1450360 - Reland chunk that got accidentally removed during a branch merge. r=mattwoodrow
...
MozReview-Commit-ID: 7gVvlsNcJnn
--HG--
extra : rebase_source : 3431ceb7ac784b378c7723b4d4f38a5770ee3f9c
2018-04-04 11:30:35 +12:00
Andreea Pavel
9048f2f6cb
Backed out changeset 08c9beb155d5 (bug 1450360) for build bustages at builds/worker/workspace/build/src/layout/painting/RetainedDisplayListBuilder.cpp:1118 on a CLOSED TREE
2018-04-04 02:22:21 +03:00
Matt Woodrow
9a7f6d89b0
Bug 1443027 - Fix the merging algorithm to pass the new tests correctly. r=mstange
...
MozReview-Commit-ID: JnglCbdhZzE
* * *
[mq]: update-test
--HG--
extra : rebase_source : c9e861bcf811575aedeef5ab9b6fe9d963036740
2018-03-23 16:47:37 +13:00
Matt Woodrow
2d4435d3af
Bug 1450360 - Reland chunk that got accidentally removed during a branch merge. r=mattwoodrow
...
MozReview-Commit-ID: MvE411GaHO
--HG--
extra : rebase_source : a696e0d77c41cd01f8991a76c9762b3f75284499
2018-04-04 10:56:55 +12:00
Sebastian Hengst
a0665934fa
Backed out 2 changesets (bug 1443027) for frequent crashes on OS X. a=backout
...
Backed out changeset 1e3dc6112e76 (bug 1443027)
Backed out changeset d2734042605a (bug 1443027)
2018-04-03 19:51:49 +03:00
Matt Woodrow
8e39fcdbe0
Bug 1443027 - Fix the merging algorithm to pass the new tests correctly. r=mstange
...
MozReview-Commit-ID: JnglCbdhZzE
* * *
[mq]: update-test
--HG--
extra : rebase_source : 1db0cc9843edd9654154d400b578a0432e5d765f
2018-03-23 16:47:37 +13:00
Noemi Erli
42b34ba196
Backed out 2 changesets (bug 1443027) for breacking Gmail on OSX r=pascalc a=backout
...
Backed out changeset 5deb310542a9 (bug 1443027)
Backed out changeset e04979dd66be (bug 1443027)
2018-03-30 19:08:30 +03:00
Matt Woodrow
0ab5810be5
Bug 1443027 - Fix the merging algorithm to pass the new tests correctly. r=mstange
...
MozReview-Commit-ID: JnglCbdhZzE
* * *
[mq]: update-test
MozReview-Commit-ID: JMIzrnVeSTo
--HG--
extra : rebase_source : 0ea5ff0e79d1eb1a8f13ea4a17e37fe2601d44e7
2018-03-23 16:47:37 +13:00