Commit Graph

2490 Commits

Author SHA1 Message Date
Xidorn Quan
56b9331e0f Bug 1064843 part 10 - Create and render backdrop frame for top layer frames. r=dbaron 2016-01-28 10:11:00 +11:00
Xidorn Quan
fba483483d Bug 1064843 part 9 - Change nsCSSFrameConstructor::CreatePlaceholderFrameFor to accept parent style context. r=dbaron 2016-01-28 10:11:00 +11:00
Xidorn Quan
4213a7c9b9 Bug 1064843 part 4 - Add a placeholder type for top layer. r=roc 2016-01-28 10:11:00 +11:00
Xidorn Quan
3552dbe981 Bug 1233135 - Do not touch display value of anonymous box for ruby. r=dbaron 2016-01-26 20:31:45 +11:00
Nicholas Nethercote
bb5a4f7dc2 Bug 1232852 (part 4) - Remove some unused parameters in and around layout/base/. r=heycam. 2016-01-05 16:08:17 -08:00
Nicholas Nethercote
4fab88afad Bug 1232852 (part 3) - Remove unused parameters from some accessibility code. r=tbsaunde. 2015-12-15 21:24:06 -08:00
Karl Tomlinson
63e1e4f8f6 bug 1230025 remove declaration of non-existant NS_NewThumbFrame r=dholbert 2015-12-03 14:07:46 +13:00
Mats Palmgren
834e6710ce Bug 1230672 part 3 - Add support for multicol layout on <fieldset> elements. r=bz 2015-12-15 02:51:03 +01:00
Mats Palmgren
56e3a4ec4d Bug 1230207 - Add support for display:grid/flex layout on <fieldset> elements. r=bz,dholbert 2015-12-15 02:51:02 +01:00
Boris Zbarsky
4ce4f9e4fc Bug 1230466. Make sure to update our scrollbar styles when a <body> is removed from the DOM, since we might now need to propagate from some other element. r=roc 2015-12-08 14:55:50 -05:00
Nicholas Nethercote
a0edd1fb5f Bug 1230863 - Remove unused nsPresContext args from many functions. r=roc. 2015-12-06 17:15:53 -08:00
Ting-Yu Lin
f0f1e723e1 Bug 1226875 - Remove nsIFrame::GetLastChild(). r=mats 2015-11-26 17:12:39 +08:00
Ting-Yu Lin
ec7b5746f9 Bug 1226875 - Remove nsIFrame::GetFirstChild(). r=mats 2015-11-26 17:12:39 +08:00
Chris Peterson
734bc9facd Bug 1224951 - Part 2: Fix -Wunreachable-code warnings in layout. r=dholbert
layout/base/nsCSSFrameConstructor.cpp:12067:12: warning: will never be executed [-Wunreachable-code]
layout/base/nsPresContext.cpp:2861:10: warning: will never be executed [-Wunreachable-code]
layout/generic/nsFrameSetFrame.cpp:730:11: warning: will never be executed [-Wunreachable-code]
layout/generic/nsFrameSetFrame.cpp:725:11: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:268:62: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:269:66: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:270:68: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:271:75: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:272:73: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:273:81: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:274:69: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:275:60: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:276:68: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:277:68: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:279:18: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:290:62: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:291:66: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:292:68: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:293:75: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:294:73: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:295:81: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:296:69: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:297:60: warning: will never be executed [-Wunreachable-code]
layout/generic/nsSelection.cpp:5657:7: warning: will never be executed [-Wunreachable-code]
layout/mathml/nsMathMLmrootFrame.cpp:405:5: warning: will never be executed [-Wunreachable-code]
2015-11-14 00:06:58 -08:00
Cameron McCormack
6fdc2f1032 Bug 1223228 - Remove unused nsFrameManagerBase::mStyleSet. r=dholbert 2015-11-10 12:27:47 +11:00
Daniel Holbert
e1a8bc08bc Bug 1219868: Don't warn for CreateAnonymousContent failure (due to e.g. detecting & breaking <use> reference loops). r=jwatt 2015-11-06 14:59:55 -08:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Xidorn Quan
29a4c77f2b Bug 1126230 part 5 - Give proper geometric parent for top layer frames. r=bz,dbaron 2015-10-07 14:04:32 +11:00
Xidorn Quan
9f7af52340 Bug 1126230 part 2 - Refactor part of nsFrameConstructorState::AddChild. r=bz 2015-10-07 14:04:32 +11:00
Xidorn Quan
632c18f541 Bug 1126230 part 1 - Use delegated constructor to simplify constructor of nsFrameConstructorState. r=bz 2015-10-07 14:04:32 +11:00
Nigel Babu
b3962e0c30 Backed out 9 changesets (bug 1126230) for Mulet Gij(25) and M(5) failures
Backed out changeset 8a9d8a556183 (bug 1126230)
Backed out changeset 441b55f015c2 (bug 1126230)
Backed out changeset 7bfa2a2d4e29 (bug 1126230)
Backed out changeset b55511536c65 (bug 1126230)
Backed out changeset ada76e419aac (bug 1126230)
Backed out changeset 745d659bef49 (bug 1126230)
Backed out changeset 7c303cc4c30b (bug 1126230)
Backed out changeset 8bf708acbad4 (bug 1126230)
Backed out changeset 590404aac357 (bug 1126230)
2015-10-02 13:39:20 +05:30
Xidorn Quan
ef9f184b8b Bug 1126230 part 4 - Give proper geometric parent for top layer frames. r=bz,dbaron 2015-10-02 16:34:09 +10:00
Xidorn Quan
d014080ab6 Bug 1126230 part 2 - Refactor part of nsFrameConstructorState::AddChild. r=bz 2015-10-02 16:34:09 +10:00
Xidorn Quan
47672114ed Bug 1126230 part 1 - Use delegated constructor to simplify constructor of nsFrameConstructorState. r=bz 2015-10-02 16:34:09 +10:00
Xidorn Quan
9d30172424 Bug 1201798 part 2 - Update viewport scrollbar override for fullscreen and remove the leagcy css rule. r=roc 2015-09-30 10:48:41 +10:00
Xidorn Quan
c80b532ea2 Bug 1201798 part 1 - Move PropagateScrollToViewport() from nsCSSFrameConstructor to nsPresContext as a public method. r=roc 2015-09-30 10:48:41 +10:00
Xidorn Quan
8b93ee4418 Bug 1203405 - Ignore order of abs/fixed-pos frames in the frame list. r=roc 2015-09-23 10:38:56 +10:00
Boris Zbarsky
75fc04334d Bug 1177819. Replace the warning about anon content being passed into frame construction with an assert plus whitelisting of the known-OK cases. r=dholbert 2015-07-23 11:51:09 -04:00
Cameron McCormack
e74adb043e Bug 1182496 - Don't create frames for SVG <text> descendants with failing conditional processing attributes. r=dholbert 2015-07-17 11:29:22 +10:00
Mats Palmgren
29ea64f952 Bug 817406 part 1 - Let ApplyStyleFixups propogate 'direction' to the viewport. r=bz,heycam 2015-05-27 22:18:36 +00:00
Phil Ringnalda
8d133af525 Back out 2 changesets (bug 817406) for b2g reftest-7 bustage
CLOSED TREE

Backed out changeset 1499a08f564a (bug 817406)
Backed out changeset d2f3cb3c0233 (bug 817406)
2015-05-27 19:11:54 -07:00
Kang-Hao (Kenny) Lu
785ae1714b Bug 817406 (part 1) - Let ApplyStyleFixups propogate 'direction' to the viewport. r=bz,heycam 2015-05-27 22:18:36 +00:00
Ting-Yu Lin
a6eca62d0f Bug 1161389 - Skip AccessibleCaret frame if nsDisplayListBuilder doesn't build caret. r=roc
When nsDisplayListBuilder doesn't build caret, we need to skip building
AccessibleCaret frames. We check that the content of the frame has
"moz-accessiblecaret" class.
2015-05-27 16:37:44 +08:00
Robert Longson
c5082c5154 Bug 1165750 - metadata tag should be allowed in clipPath. r=jwatt 2015-05-19 09:25:52 +01:00
Mats Palmgren
7e86280181 Bug 1009214 part 1 - [css-grid] Don't wrap placeholders in an anonymous grid item. r=dholbert 2015-05-05 21:53:22 +00:00
Timothy Nikkel
e657109f88 Bug 1159772. Don't let nsContainerFrame::SyncWindowProperties make widget calls that can result in synchronous painting during reflow or frame construction. r=mats
Specifically on Windows nsIWidget::SetTransparencyMode can result in sync painting.

So we give nsContainerFrame::SyncWindowProperties a sync or async option and use the view manager post pending update infrastructure to flush SyncWindowProperties calls async.
2015-05-04 14:29:19 -05:00
Xidorn Quan
166f3b8ee1 Backout df7c88910f47 (bug 1149009) for new patch. 2015-05-04 09:52:53 +12:00
Xidorn Quan
2e4686422b Bug 1159101 part 5 - Initialize writing mode of desired mode of table cell frame from its table frame on a CLOSED TREE. r=roc 2015-04-30 18:27:54 +12:00
L. David Baron
700408b375 Bug 1144410 - Remove finished transitions when a frame transitions away from being display:none. r=birtles
Since bug 960465 patch 14, we've retained finished transitions in order
to handle the issues described in
https://lists.w3.org/Archives/Public/www-style/2015Jan/0444.html .  The
code that did this made the assumption that the transition manager is
notified of the full sequence of style changes that happen to an
element.  However, when an element becomes part of a display:none
subtree and then later becomes displayed again, the transition manager
is not notified of a style change when it becomes displayed again (when
we do not have the old style context).

This patch introduces code to prune the finished transitions when that
happens.

This really fixes only part of the set of problems described in bug
1158431, which also affect running transitions.  However, it's the part
of that set that was a regression from bug 960465, which introduced the
retention of finished transitions, and which makes these issues
substantially easier to hit.

I'd like to fix this part quickly because it's a regression and we
should backport the fix.

Without the patch, I confirmed that the following two tests fail:
INFO TEST-UNEXPECTED-FAIL | layout/style/test/test_transitions_dynamic_changes.html | bug 1144410 test - opacity after starting second transition - got 0, expected 1
INFO TEST-UNEXPECTED-FAIL | layout/style/test/test_transitions_dynamic_changes.html | bug 1144410 test - opacity during second transition - got 0, expected 0.5

With the patch, all the added tests pass.
2015-04-26 19:20:19 -07:00
Xidorn Quan
e8df90d3ac Bug 1156222 - Check frame type instead of display type for ruby and simplify code. r=dholbert 2015-04-23 13:32:53 +12:00
Xidorn Quan
081671c691 Bug 1149009 - Fix line break suppression on whitespace not contained but wrapped in ruby boxes. r=dbaron 2015-04-20 15:04:09 +12:00
Xidorn Quan
c5eb13f53e Bug 1146112 - Mark ruby pseudo frames as line participant in frame constructor. r=roc 2015-03-31 09:20:01 +11:00
Xidorn Quan
ff95153fca Backout a6dbd23da598 (bug 1139283) since it is currently not needed. 2015-03-20 15:12:17 +11:00
Xidorn Quan
a22c833a7f Bug 1143535 - Fix condition of ruby leading/trailing whitespace trimming. r=bz a=kwierso 2015-03-20 09:45:41 +11:00
Robert O'Callahan
766f222f30 Bug 1125767. Clarify aContextFrame parameter to nsStylePosition::IsFixedPosContainingBlock and nsStylePosition::HasTransform and make nsCSSFrameConstructor actually honor it. r=mats 2015-03-11 00:18:49 +13:00
Robert O'Callahan
62f9945941 Bug 1125767. Centralize code into nsStylePosition::IsFixedPosContainingBlock. r=mats
Also renames IsPositioned to IsAbsPosContainingBlock.
2015-03-12 16:21:01 +13:00
Mats Palmgren
555a6959d6 Bug 1140579 - Additional tests and code comment update. 2015-03-09 17:29:00 +00:00
Xidorn Quan
9533554776 Bug 1139283 - Move some properties from nsStyleDisplay to nsStylePosition. r=dbaron
The moved properties are:
* clip
* transform-style
* transform-origin
* backface-visibility
* perspective
* perspective-origin
* will-change
2015-03-08 18:43:22 +11:00
Robert Longson
cd6cf3a3c7 Bug 1140080 - ensure we only create stop frames for gradients. r=dholbert 2015-03-08 06:49:33 +00:00
Mats Palmgren
0bcfb0110f Bug 1140579 - Make <legend>s have a legend frame when nearest ancestor frame is a fieldset frame. r=roc
IOW, drop the requirement that the parent *content* is a <fieldset>,
thus allowing a <legend> to become the fieldset legend also when it's
wrapped in one or more nodes that are styled with display:contents.
2015-03-07 14:53:46 +00:00