L. David Baron
0253d42661
Bug 828173 bustage fix for non-unified builds: add using declaration.
2014-03-04 21:05:18 -08:00
L. David Baron
598c0d4122
Bug 828173 patch 5: Call AddAnimationsAndTransitionsToLayer when we choose not to repaint when handling an UpdateTransformLayer hint, so that any new animations resulting from the style change get sent to the layer. r=mattwoodrow
2014-03-04 20:13:22 -08:00
L. David Baron
d38774f56a
Bug 978612: Ignore changes to offsets of static-positioned elements when they or their descendants have views. r=dholbert
...
We get slightly better optimization, and no loss of function, by putting
these checks in the opposite order.
2014-03-03 00:54:39 -08:00
L. David Baron
653e952e94
Bug 91419 patch 9: Fix comments and debugging output referring to "special" frames. r=mats
2014-02-06 17:45:33 -08:00
L. David Baron
1cd8290c55
Bug 91419 patch 6: Rename everything with IBSplitSpecialPrevSibling to IBSplitPrevSibling. r=mats
2014-02-06 17:45:31 -08:00
L. David Baron
d1d272808d
Bug 91419 patch 5: Rename everything with SpecialSibling to IBSplitSibling. r=mats
2014-02-06 17:45:31 -08:00
L. David Baron
9a314c5e74
Bug 91419 patch 3: Rename everything with IBSplitSpecialSibling to IBSplitSibling. r=mats
2014-02-06 17:45:30 -08:00
L. David Baron
f33181c366
Bug 91419 patch 1: Rename NS_FRAME_IS_SPECIAL to NS_FRAME_PART_OF_IBSPLIT. r=mats
2014-02-06 17:45:28 -08:00
Cameron McCormack
57e1ae7505
Bug 962427 - Make RestyleManager.cpp's GetNextBlockInInlineSibling static. r=dbaron
2014-01-23 15:24:22 +11:00
L. David Baron
5b9d1c52c2
Bug 945105 patch 3: Replace changes to ComputeStyleChangeFor with a check of GetPrevContinuationWithSameStyle to avoid the duplication in a way that still doesn't break direct restyling of an element whose continuations have different styles. r=heycam
2014-01-19 11:04:56 -08:00
L. David Baron
9a38f889bc
Bug 945105 patch 2: Convert RestyleManager::ComputeStyleChangeFor from while loops to for loops to make it easier to add continue statements to it. r=heycam
2014-01-19 11:04:56 -08:00
L. David Baron
a57a73469c
Bug 945105 patch 1: Revert the changes to RestyleManager::ComputeStyleChangeFor from bug 898333, patch 2, since they cause skipping (in addition to the desired skipping) of continuations that do need restyling, in the case of directly restyling an element where continuations have different styles. r=heycam
2014-01-19 11:04:56 -08:00
Robert O'Callahan
7efbad68b7
Bug 960277. Part 1: Don't optimize away frame reconstruction for 'transform' add/remove if the element has complex abs-pos container structure. r=mats
...
--HG--
extra : rebase_source : 4a1b57df9146a31ce8e25a7b215d2eb1edb09a55
2014-01-16 14:39:30 +13:00
Jonathan Kew
b9938a1edc
bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu
2013-12-27 17:59:21 +00:00
Robert Longson
abcd22038e
Bug 940193 - rename nsSVGTextFrame2 to SVGTextFrame. r=dholbert
...
--HG--
rename : layout/svg/nsSVGTextFrame2.cpp => layout/svg/SVGTextFrame.cpp
rename : layout/svg/nsSVGTextFrame2.h => layout/svg/SVGTextFrame.h
2013-12-20 16:38:51 +00:00
Arnaud Bienner
89b6530bc5
Bug 938334 - Use PseudoElementSupportsStyleAttribute(Type) when it makes sense to do so and remove now unnecessary nsCSSPseudoElements functions. r=dbaron
2013-12-02 22:38:45 +01:00
William Chen
1e84522b8f
Bug 929885 - Implement web components ShadowRoot style sheet behavior. r=mrbkap
2013-12-02 02:26:12 -08:00
Cameron McCormack
e7aea01906
Bug 922669 - Part 9: Restyle pseudo-elements when their content state changes. r=bz
2013-11-28 17:46:40 +11:00
Cameron McCormack
bd0078cfc1
Bug 922669 - Part 4: Pass in anonymous content nodes when restyling any pseudo-elements that can match user action pseudo-classes. r=bz
2013-11-28 17:46:38 +11:00
Cameron McCormack
4c052f5cfe
Bug 943746 - Choose a better default element when calling ElementForStyleContext for a pseudo-element. r=bz
2013-11-28 12:22:20 +11:00
Jonathan Watt
0cbbb98ce1
Bug 635240 - Implementation of the layout and anonymous shadow tree portion of <input type=number>. r=dholbert
2013-09-04 11:30:36 +01:00
Jonathan Watt
5dc11fc229
Bug 889736, part 2 - Remove nsSVGTextPathFrame. r=heycam
2013-11-18 14:29:52 +00:00
Jonathan Watt
159a62b18f
Bug 889736, part 1 - Remove nsSVGTextFrame and nsSVGGlyphFrame. r=heycam
2013-11-18 14:29:51 +00:00
Robert O'Callahan
2e02d90dd4
Bug 876321. Track restyling of top/left/right/bottom and treat such nodes as active scrolled roots. r=mattwoodrow
...
--HG--
extra : rebase_source : 24e7900efdb476a0533808956b9604d144e4db89
2013-09-09 17:08:41 -07:00
Cameron McCormack
6e5ef8f8c6
Bug 933044 - Push style scopes even if we would skip pushing ancestors when there is no ancestor filter. r=bz
2013-11-17 17:51:04 +11:00
Corey Ford
98358e22c2
Bug 925259: Avoid sticky positioning inner table elements. r=dholbert
2013-11-12 12:46:47 -08:00
Robert O'Callahan
e093640250
Backout changeset 3fb9ea77d858 for bug 876321 due to test failures (CLOSED TREE)
...
--HG--
extra : rebase_source : 6b21bf36f9a8bd73bdd72ddfb5fe8c25e7854071
2013-11-03 23:14:26 -08:00
Robert O'Callahan
81c6b33304
Bug 876321. Track restyling of top/left/right/bottom and treat such nodes as active scrolled roots. r=mattwoodrow
...
--HG--
extra : rebase_source : f92bcf0b60cadefa0197cdffcd6dd9b4eaa6b2d5
2013-09-09 17:08:41 -07:00
Robert O'Callahan
92d7124878
Bug 745485. Optimize positioning offset changes whenever the computed size does not change. r=dholbert
...
--HG--
extra : rebase_source : 16388d3cb0c6ee9acc1416ca0d27b2a53b0062ee
2013-09-09 17:08:41 -07:00
Robert O'Callahan
2709003286
Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
...
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.
2013-09-04 23:30:57 +12:00
Phil Ringnalda
98204c9e49
Back out 0a88dee3b92b:dc5cc7d7b84d (bug 911889) for beaucoup unexpected assertions
...
--HG--
extra : rebase_source : a2a13633b6028c99a3c732dbbafe8c800bc32071
2013-10-28 23:38:02 -07:00
Robert O'Callahan
58a3ced7c4
Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
...
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.
--HG--
extra : rebase_source : e69b8e7a95d36720bd38d74f0789ede603e58a09
2013-09-04 23:30:57 +12:00
Daniel Holbert
4c1ad784d2
Bug 875275 part 3: Make nsColorControlFrame inherit from nsHTMLButtonControlFrame instead of nsBlockFrame. r=jwatt f=arnaud.bienner
2013-10-22 17:29:20 +02:00
Arnaud Bienner
28e6e2c644
Bug 875275 part 1: Implement layout support for <input type="color">. r=dbaron,dholbert
2013-07-10 00:25:27 +02:00
Ehsan Akhgari
2fb9794854
Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
...
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Ehsan Akhgari
0a3a2ee94a
Bug 921876 - Stop #including nsIFrame.h in nsLayoutUtils.h; r=roc
...
This patch does the following:
* Move nsIFrame::IntrinsicSize to mozilla::IntrinsicSize so that it can
be forward-declared.
* Move a number of templated inline nsLayoutUtils methods to nsIFrame.
* Use mozilla::layout::FrameChildListID instead of the
nsIFrame::ChildListID typedef in nsLayoutUtils.h.
* Move nsReflowFrameRunnable to its only user, nsProgressMeterFrame.cpp.
* Make a number of functions requiring nsIFrame.h out-of-line.
* Remove the nsIFrame.h #include from nsLayoutUtils.h and add it to the
places which require it implicitly.
2013-09-30 17:26:04 -04:00
L. David Baron
0754b253b8
Bug 828312 patch 11: Don't generate change hints for restyling of later continuations, since the handling of the change hints from the first continuation is required to do the necessary work. r=bzbarsky
...
This depends on bug 898333 in order to avoid causing:
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/chrome/dom/tests/mochitest/chrome/test_focused_link_scroll.xul | Assertion count 1 is greater than expected range 0-0 assertions.
due to the assertion:
###!!! ASSERTION: Shouldn't be trying to restyle non-elements directly: '!aContent || aContent->IsElement()', file ../../../layout/base/nsStyleChangeList.cpp, line 62
The assertion count change in layout/generic/crashtests/571995.xhtml is
expected because it changes us from having 7 of:
###!!! ASSERTION: Shouldn't be trying to restyle non-elements directly: '!aContent || aContent->IsElement()', file ../../../layout/base/nsStyleChangeList.cpp, line 62
with the stack:
mozilla::ElementRestyler::CaptureChange(nsStyleContext*, nsStyleContext*, nsChangeHint) [layout/base/nsChangeHint.h:191]
mozilla::ElementRestyler::RestyleSelf(nsRestyleHint) [layout/base/RestyleManager.cpp:2304]
to only having one. This is expected since this patch changes
RestyleSelf to only call CaptureChange for the first continuation or
block-in-inline sibling.
2013-09-25 12:28:08 -07:00
L. David Baron
a26324d12e
Bug 828312 patch 10: Add assertions to check that handling of nsChangeHint_ChildrenOnlyTransform doesn't need to check continuations. r=bzbarsky
...
This is part of the patch stack making change hints apply across all
continuations and block-in-inline siblings.
2013-09-25 12:28:08 -07:00
L. David Baron
7888d4666c
Bug 828312 patch 9b: Make handling of RecomputePosition hint check continuations. r=bzbarsky
...
This is part of the patch stack making change hints apply across all
continuations and block-in-inline siblings.
2013-09-25 12:28:08 -07:00
L. David Baron
807a64dd8e
Bug 828312 patch 8: Make handling of UpdateEffects hint check continuations. r=bzbarsky
...
This is part of the patch stack making change hints apply across all
continuations and block-in-inline siblings.
2013-09-25 12:28:07 -07:00
L. David Baron
9df875e7c8
Bug 828312 patch 7: Use more typical loop structure and don't mutate |frame| in UpdateOverflow hint handling. r=bzbarsky
2013-09-25 12:28:07 -07:00
L. David Baron
79bf825f33
Bug 828312 patch 6: Make early transform handling check continuations. r=bzbarsky
...
This is part of the patch stack making change hints apply across all
continuations and block-in-inline siblings.
2013-09-25 12:28:07 -07:00
L. David Baron
57bc767f95
Bug 828312 patch 5: Don't handle UpdateCursor more than once per round of style change processing, since it's global. r=bzbarsky
...
(This is part of the patch stack making change hints apply across all
continuations and block-in-inline siblings. In this case, however, the
change hint only needs to apply once, globally.)
2013-09-25 12:28:07 -07:00
L. David Baron
239302f5ee
Bug 898209 patch 16: Move a comment that should have been moved in patch 15. No review.
2013-09-25 12:28:07 -07:00
L. David Baron
de0fdd8b25
Bug 898333, patch 2: Change RestyleManager::Restyle's tree traversal to reach next-continuations (and same-display block-in-inline siblings) from their prev-continuation rather than from their parent. r=bzbarsky
...
This patch fundamentally makes three changes:
(1) Change the way RestyleSelf is used so that it is called in a loop,
over all of the same-style continuations and block-in-inline
siblings.
(I had a note here reminding myself:
TODO: Don't set hints for descendants!
but I no longer remember what it meant.)
(2) Change the traversal of children to traverse all of the children of
the items traversed in (1).
(3) When traversing children, skip children that are continuations,
since we already reached them in (1) and (2).
A later patch will change the RestyleSelf loop to copy for the later
continuations rather than repeating the work. This will mean reverting
many of the RestyleSelf changes contained here.
Some of the pieces marked temporary will be removed in bug 828312 patch
11, and the rest should hopefully be removed in bug 918064.
2013-09-25 12:28:07 -07:00
L. David Baron
790b84762c
Bug 898333, patch 1: Restyle the :after pseudo-element after the content children. r=bzbarsky
2013-09-25 12:28:07 -07:00
Corey Ford
1a19b79ce1
Bug 904197 - Use the union of continuations' rects in sticky positioning calculations. r=dholbert
...
Reftest inline-3.html fails because handling the sticky element's margin correctly will take more work; similarly, border/padding on containing-block continuations won't be handled quite right. Reftest column-contain-1a fails because some of the anonymous blocks inside an nsColumnSetFrame have 0 height.
2013-09-13 16:53:48 -07:00
Corey Ford
b3400abc97
Bug 886646 - Part 6: Implement sticky positioning, calculated on reflow and scroll. r=dbaron, r=dholbert
2013-09-06 09:35:16 -04:00
Ms2ger
f2457c6b24
Bug 901269 - Part b: Stop including nsContentUtils.h in Element.h; r=jlebar
2013-08-14 08:55:46 +02:00
Corey Ford
b2510f37c3
Bug 898794 - Store normal frame position before applying relative positioning. r=dbaron
2013-08-08 17:20:17 -07:00