Commit Graph

600 Commits

Author SHA1 Message Date
Mats Palmgren
562ae29032 Bug 1144096 part 24 - [css-grid] Move the child frame merging code at the start of ReflowOverflowContainerChildren into a new method: DrainExcessOverflowContainersList. Make both take a param so that we can override how the OC child lists are merged together (normally just an Append; MergeSortedFrameLists for Grid). r=dholbert 2016-03-11 17:39:27 +01:00
Mats Palmgren
3b2dcdc462 Bug 1144096 part 22 - [css-grid] Check NS_INLINE_IS_BREAK_BEFORE before checking other completion status. r=dholbert 2016-03-11 17:39:27 +01:00
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d871b9515f Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Xidorn Quan
9ad6eb8dd0 Bug 1230034 part 8 - Convert frame properties which assert on destructor to be typed. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
8e2ada8719 Bug 1230034 part 4 - Make FramePropertyDescriptor to be a template. r=froydnj,dbaron
This patch makes methods of FramePropertyTable and FrameProperties to be
simple template wrapper functions. Then it converts all references to
FramePropertyDescriptor to use "void" parameter to simulate the current
unsafe behavior.

SmallValueHolder is used for storing small values like int32_t, float,
which can fit in the size of a pointer directly, and thus no lifetime
management is needed.
2016-01-28 14:23:59 +11:00
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
7625a8c5fb Bug 1064843 part 6 - Add backdrop frame list. r=dholbert 2016-01-28 10:11:00 +11:00
Xidorn Quan
0f1150d793 Bug 1064843 part 5 - Ensure frames behave properly for unknown child list id passed into SetInitialChildList. r=dholbert
Note that nsMathMLContainerFrame and its subclasses are unchanged since
they are not target of fullscreen (and thus no backdrop frame), and they
have an assertion to ensure we really don't pass any unexpected list in.
2016-01-28 10:11:00 +11:00
Chris Peterson
e704df2450 Bug 1235186 - Part 1: Fix -Wformat warnings in layout/. r=dholbert
layout/base/AccessibleCaret.cpp:129:48 [-Wformat-extra-args] data argument not used by format string
layout/generic/nsContainerFrame.cpp:425:71 [-Wformat] more '%' conversions than data arguments
layout/style/FontFaceSet.cpp:798:10 [-Wformat] format specifies type 'int' but the argument has type 'size_type' (aka 'unsigned long')
layout/style/Loader.cpp:1817:12 [-Wformat] format specifies type 'unsigned int' but the argument has type 'nsICSSLoaderObserver *'
layout/style/Loader.cpp:1817:35 [-Wformat] format specifies type 'unsigned int' but the argument has type 'mozilla::css::SheetLoadData *'
layout/style/Loader.cpp:1827:12 [-Wformat] format specifies type 'unsigned int' but the argument has type 'nsICSSLoaderObserver *'
layout/style/Loader.cpp:1827:23 [-Wformat] format specifies type 'char *' but the argument has type 'mozilla::css::SheetLoadData *'
2015-12-24 16:04:20 -07:00
Jared Wein
704070fe18 Bug 1211635 - Popups should be treated as top-level windows, allowing XUL alerts translucency. r=MattN r=roc 2015-11-25 08:49:23 -05:00
Jared Wein
1be5916a72 Bug 1226796 - Remove redundant preprocessor flags in nsContainerFrame.cpp. r=jfkthame 2015-11-24 11:21:02 -05:00
Jonathan Kew
e418782b93 Bug 1224230 - Explicitly store the lineContainer's writing mode in InlineIntrinsicISizeData. r=dbaron 2015-11-14 08:46:11 +00:00
Xidorn Quan
4c7aca9a84 Bug 1216332 - Remove framearena helpers from abstract frame classes and stop them from being instantiated. r=dbaron 2015-11-04 20:57:35 +11: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
Jonathan Kew
a20144d65d Bug 1202993 - Remove the logical-direction-based keywords for caption-side, and instead interpret the old physical keywords as logical sides. r=dholbert 2015-09-15 22:02:30 +01:00
Jonathan Kew
7e8bda5a72 Bug 1131451 part 1 - Replace containerWidth with containerSize in logical-coordinate classes and APIs, frame classes, etc. r=dholbert 2015-07-16 10:07:57 +01:00
Jonathan Kew
5d676f656e Bug 1177076 patch 2 - Convert nsTableOuterFrame to work with logical coordinates. r=dholbert 2015-07-03 11:37:33 +01:00
Daniel Holbert
4bdbe39881 Bug 1177925: Use range-based "for" loops for nsFrameList iteration, in various places in layout. r=tn 2015-06-29 13:02:21 -07:00
Jonathan Kew
b45f261251 Bug 1159305 - patch 2 - Clean up layout code by using the new accessors. r=smontagu 2015-05-11 11:37:46 +01: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
Jonathan Kew
3bdc0a8e35 Bug 1028716 part 2 - Handle the new orient values in <progress> and <meter> layout. r=smontagu 2014-06-27 11:25:11 +01:00
Mats Palmgren
c81d072f41 Bug 1153478 part 2 - Remove useless assertions. r=roc 2015-04-16 09:04:19 +00:00
Mats Palmgren
d731f9f7b1 Bug 1153478 part 1 - Add nsInlineFrame::StealFrame and make it deal with being called on the wrong parent for aChild (due to lazy reparenting). r=roc 2015-04-16 09:04:19 +00:00
Mats Palmgren
0280e62037 Bug 1143299 - Make frame insertion methods deal with aPrevFrame being on an overflow list. r=roc a=abillings 2015-04-11 00:21:06 +00:00
Jonathan Kew
3ab64637e3 Bug 1153140 - Include borderPadding width in the containerWidth for grid item placement. r=mats 2015-04-10 16:56:23 +01:00
Jonathan Kew
c4eaedb5ec Bug 1130907 - patch 2 - Account for writing-mode in nsContainerFrame::DoInlineIntrinsicISize. r=smontagu 2015-04-07 09:24:04 +01:00
Mats Palmgren
fbe5abdf30 Bug 1149785 - Make nsIWidget::ClientToWindowSize use LayoutDeviceIntSize instead of the unit-less nsIntSize. r=roc 2015-03-31 22:09:03 +00:00
Mats Palmgren
073bd5f952 Bug 1149041 - Make nsIWidget::SizeConstraints use LayoutDeviceIntSize instead of unit-less nsIntSize. r=roc 2015-03-30 11:35:25 -04:00
Carsten "Tomcat" Book
8e43fcbf46 Backed out changeset 9534a3d38191 (bug 1149041) 2015-03-30 15:03:19 +02:00
Mats Palmgren
56c709e01b Bug 1149041 - Make nsIWidget::SizeConstraints use LayoutDeviceIntSize instead of unit-less nsIntSize. r=roc 2015-03-30 10:37:34 +00:00
Mats Palmgren
3f92be8fe8 Bug 1148833 part 3 - Remove nsIFrame::WillReflow and add a non-virtual MarkInReflow method instead that sets NS_FRAME_IN_REFLOW. Call it at the start of Reflow(). r=roc 2015-03-29 22:38:40 +00: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
Andrea Marchesini
6b10d5e43e Bug 1134280 - Get rid of Tag() - patch 1 - Is{HTML,XUL,MathML,SVG}Element and IsAnyOf{HTML,XUL,MathML,SVG}Elements, r=smaug 2015-03-03 11:08:59 +00:00
Simon Montagu
aba410ebbb Bug 1079154 patch 5: convert callers of ApplyRelativePosition, ReflowChild and FinishReflowChild in layout/generic to the logical versions, r=jfkthame 2015-01-06 23:10:07 -08:00
Simon Montagu
a12bf47984 Bug 1079154 patch 4: Logical versions of ReflowChild and FinishReflowChild, r=jfkthame 2015-01-06 23:10:07 -08:00
Mats Palmgren
055fe56a7c Bug 1109571 part 3 - Implement table caption specific code for ComputeAutoSize(), GetCorrectedParent() (for getting the style parent frame) and AccessibleType(). r=roc 2014-12-26 07:21:32 +00:00
Xidorn Quan
866c49eb53 Bug 1093998 - Make nsContainerFrame::CreateNextInFlow return the new frame instead of using an our param. r=dbaron 2014-12-01 22:03:57 -08:00
Xidorn Quan
71052dfdb0 Bug 1052924 - Implement basic line breaking for ruby. r=dbaron
Known problem:
It would cause infinite loop if there is any line break happens inside
ruby base or annotation, or the width of container is not enough for
the widest pair/span. This might be fixed in bug 1098272.
2014-11-26 15:52:50 +11:00
Simon Montagu
e7034c290f Bug 1062963 patch 3: make nsFloatManager's origin a LogicalPoint, adapt GetFlowAreas, AddFloats, ClearFloats, etc. to use it and make nsFloatManager region functions work with logical region. r=jfkthame 2014-10-21 15:16:12 -07:00
Phil Ringnalda
32261f5095 Backed out 4 changesets (bug 1062963, bug 1079139) for failures in 427129-table-caption.html in b2g reftest-6 and Android 2.3 reftest-5
Backed out changeset a9672db96a5d (bug 1079139)
Backed out changeset 241c23570a62 (bug 1062963)
Backed out changeset 90172cc0b012 (bug 1062963)
Backed out changeset 71211c4a4acc (bug 1062963)
2014-10-19 18:44:16 -07:00
Simon Montagu
3c9c6d4a60 Bug 1062963 patch 3: make nsFloatManager's origin a LogicalPoint, adapt GetFlowAreas, AddFloats, ClearFloats, etc. to use it and make nsFloatManager region functions work with logical region. r=jfkthame 2014-10-19 12:32:17 -07:00
Jonathan Kew
423a0e9db5 bug 1046950 pt 3 - convert ComputeAutoSize to use logical-coordinate parameters. r=smontagu 2014-08-24 15:34:51 +01:00
Jonathan Kew
f6c74bf220 bug 1031241 pt 4 - Rename the {MIN,PREF}_WIDTH constants used to identify the type of intrinsic inline-size. r=smontagu 2014-07-24 18:03:26 +01:00
Jonathan Kew
fe8090d7de bug 1031241 pt 3 - Also rename Intrinsic{Width,Height} to Intrinsic{I,B}Size. r=smontagu 2014-07-24 18:03:26 +01:00
Jonathan Kew
711a2298a4 bug 1031241 pt 2 - More renaming, e.g. where {Min,Pref}Width occurs within longer type and function names. r=smontagu 2014-07-24 18:03:25 +01:00
Simon Montagu
0132cc9646 Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame 2014-07-24 01:28:46 -07:00
Martin Stransky
79cc5b4d53 Bug 957396 - Enlarge container constraints when MinSize is bigger than MaxSize. r=enndeakin 2014-06-11 05:03:00 +02:00
Mats Palmgren
a43fc7a0a3 Bug 1015781 - part 1+2, Make the SetInitialChildList/AppendFrames/InsertFrames/RemoveFrame methods return void (scripted change). Remove code handling the return values. r=roc 2014-05-28 19:36:58 +00:00