Emilio Cobos Álvarez
d161d20ce7
Bug 1336708: Don't reuse cached flex-item reflow measurements if the item's computed height has changed. r=dholbert
...
For some stretched items, we override the computed height of the input for
measuring reflows, which may change the ascent and height result.
Just use that as a key for the reflow result cache too.
MozReview-Commit-ID: 9NyObfVucnC
2017-02-07 21:00:45 +01:00
Emilio Cobos Álvarez
222cfd4e2c
Bug 1209697: Part 2, Cache flex measuring reflows to avoid exponential behavior. r=dholbert
...
MozReview-Commit-ID: 8vcLUvASEFM
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
--HG--
extra : rebase_source : e0341ceaf269a6d0ed44fb6a82fff90956192073
2017-01-06 15:34:16 +01:00
Daniel Holbert
85f6680212
Bug 1331756 part 5: Drop redundant 'virtual' keyword from method overrides in several frame classes. r=xidorn
...
MozReview-Commit-ID: IwjWBbGe9jo
2017-01-17 16:27:03 -08:00
Mats Palmgren
deb52d2e03
Bug 1312379 part 2 - [css-flexbox] Improve support for CSS Alignment 'last baseline' alignment by exporting the last baseline when asked for. r=dholbert
2016-12-20 23:56:35 +01:00
Mats Palmgren
ed15c70d6d
Bug 1312379 part 1 - [css-align][css-flexbox][css-grid] Introduce nsIFrame methods for calculating baselines per CSS Alignment and CSS2 'vertical-align'. r=dholbert
2016-12-20 23:56:35 +01:00
Daniel Holbert
a720a44ada
Bug 1321698 part 2: Use the new frame state bit to check for -webkit-box containers. r=mats
...
Note that at the callsites in nsCSSFrameConstructor.cpp, we have to also check
the frame type (since the frame state bit is in a range of bits whose meaning
differs depending on frame type). The first change in this patch is the
addition of a convenience fucntion that checks both the frame type as well as
the frame state bit.
MozReview-Commit-ID: DEOThTX5NAO
--HG--
extra : rebase_source : 95e86eec663b3ef2e7bb86214871fcd3ea86057c
2016-12-02 10:32:31 -08:00
Daniel Holbert
f2e0c89b68
Bug 1321698 part 1: Set a frame state bit on nsFlexContainerFrame if it's emulating -webkit-box. r=mats
...
MozReview-Commit-ID: 5eL55atUBnT
--HG--
extra : rebase_source : c947804edfadd1b9aa3630e1f1e57484b98adb59
2016-12-02 01:02:00 -08:00
Daniel Holbert
5801c1a6f6
Bug 1269046 part 7: Give nsFlexContainerFrame a CSSAlignmentForAbsPosChild() implementation (to determine appropriate align enum for abspos children). r=mats
...
MozReview-Commit-ID: LFQfKPlR9Gv
2016-10-31 08:59:40 -07:00
Daniel Holbert
4bef1cf802
Bug 1269045 part 2: Separate out abspos placeholders when creating FlexItems, and give them a trivial reflow at container's content-box origin. r=mats
...
MozReview-Commit-ID: 5lXUsusLryC
2016-10-31 08:58:17 -07:00
Daniel Holbert
72b186f76f
Bug 1309119 part 1: Expose nsFlexContainerFrame helper-function IsLegacyBox as a static method. r=mats
...
MozReview-Commit-ID: 8fztWk2sp0L
2016-10-20 13:23:51 -07:00
Daniel Holbert
9fd00fc1f2
Bug 1235922 Part 2: Add support for "justify-content: space-evenly" to flexbox layout. r=mats
...
MozReview-Commit-ID: 6Am15EIVAXH
--HG--
extra : rebase_source : f0500b5737f8834765707724c5204bc2ab5b40d1
2016-10-14 17:16:00 -07:00
Brad Werth
8bd396d59a
Bug 1235922 Part 1: Introduce a helper-function to share code for justify-content and align-content space-around and space-between in flexbox layout. r=mats
...
MozReview-Commit-ID: tncRJiojh
--HG--
extra : rebase_source : 279c790926f89b1942069f8cc4eeb70fe58eaf65
2016-10-14 17:23:36 -07:00
Brad Werth
35c396cb6a
Bug 1306894 Part 1: Cache baseline from nsFlexContainerFrame::Reflow() for use in later calls to GetLogicalBaseline(). r=dholbert
...
MozReview-Commit-ID: JXUK8a0L1RZ
--HG--
extra : rebase_source : 9c4f885ac883429512073f38dfa1226058d8b8a5
2016-10-11 12:54:00 -07:00
Ting-Yu Lin
40fcd21b9a
Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron
...
This patch is generated by the following script:
function rename() {
find .\
-type f\
! -path "./obj*"\
! -path "./.git"\
! -path "./.hg"\
\( -name "*.cpp" -or\
-name "*.h" \)\
-exec sed -i -r "s/$1/$2/g" "{}" \;
}
rename "([[:alpha:]]*)([rR])eflowState(s?)" "\1\2eflowInput\3"
MozReview-Commit-ID: ITFO7uMTkSb
--HG--
extra : rebase_source : c91a2e174a0baec60c1b0111ac7636295004ab35
2016-07-21 18:36:39 +08:00
Ting-Yu Lin
4053c4c028
Bug 1277129 Part 5c - Rename nsHTMLReflowMetrics to ReflowOutput. r=dbaron
...
This patch is generated by the following script:
function rename() {
find .\
-type f\
! -path "./obj*"\
! -path "./.git"\
! -path "./.hg"\
\( -name "*.cpp" -or\
-name "*.h" \)\
-exec sed -i -e "s/$1/$2/g" "{}" \;
}
rename "nsHTMLReflowMetrics" "ReflowOutput"
MozReview-Commit-ID: 2HBb7DkooH5
--HG--
extra : rebase_source : acfa442a6483772fcb5748dc6f5e7072e599032a
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
820f88de49
Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
...
This patch is generated by the following script:
function rename() {
find .\
-type f\
! -path "./obj*"\
! -path "./.git"\
! -path "./.hg"\
\( -name "*.cpp" -or\
-name "*.h" \)\
-exec sed -i -e "s/$1/$2/g" "{}" \;
}
rename nsHTMLReflowState ReflowInput
MozReview-Commit-ID: 9r9vdVv1pXc
--HG--
extra : rebase_source : 623ec822996ba0ea0058dd137acf5a658cdea04a
2016-07-21 18:36:35 +08:00
Michael Li
7fc51f7d9e
Bug 1283273 - Change nsAutoPtr to UniquePtr in classes within layout/generic. r=dholbert
2016-07-08 08:08:00 +02:00
Daniel Holbert
23f714b1cd
Bug 1262049 part 5: Honor -webkit-box-orient & -webkit-box-direction when determining axes for a -webkit-box flexbox. r=mats
...
MozReview-Commit-ID: BG93ObYPjUg
2016-04-20 16:43:24 -07:00
Ting-Yu Lin
b2197b464d
Bug 1264837 Part 5 - Remove nsFlexContainerFrameSuper. r=dholbert
...
MozReview-Commit-ID: 1PejkyMfn0V
--HG--
extra : rebase_source : d8b63bd7f6fb064155eb40fa4b80f14e1f7f852a
2016-04-18 13:51:36 +08:00
Jonathan Kew
4e6c40d7ea
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
Birunthan Mohanathas
a8939590de
Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
...
The bulk of this commit was generated by running:
run-clang-tidy.py \
-checks='-*,llvm-namespace-comment' \
-header-filter=^/.../mozilla-central/.* \
-fix
2015-07-13 08:25:42 -07:00
Daniel Holbert
f82cdd0c52
Bug 1158290 part 1: Use AvailableBSize instead of AvailableHeight, throughout flex layout. r=mats
...
This patch was auto-generated, with the following command:
sed -i "s/vailableHeight/vailableBSize/g" nsFlexContainerFrame.*
2015-05-12 13:34:22 -07:00
Ehsan Akhgari
883849ee32
Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
...
This patch was automatically generated using the following script:
function convert() {
echo "Converting $1 to $2..."
find . \
! -wholename "*/.git*" \
! -wholename "obj-ff-dbg*" \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Daniel Holbert
f3f221e566
Bug 1054010: Skip final reflow for flex items that receive an earlier 'measuring reflow' with the right size. r=mats
2015-01-23 14:15:11 -08:00
Daniel Holbert
93662abfdf
Bug 1054054 part 2: Add "a" prefix to args which were formerly local variables, in ReflowFlexItem. r=mats
2015-01-23 10:25:59 -08:00
Daniel Holbert
36b02b61f3
Bug 1054054 part 1: Split out code for doing final reflow of each flex item into its own helper-function, "ReflowFlexItem". r=mats
2015-01-23 10:25:58 -08:00
Ehsan Akhgari
60360fc645
Bug 1060985 - Fix more bad implicit constructors in layout; r=roc
2014-08-31 23:36:37 -04:00
Jonathan Kew
ce9cbe4216
bug 1031241 pt 1 - Rename Get{Min,Pref}Width to Get{Min,Pref}ISize throughout layout. r=dbaron,smontagu
2014-07-24 18:03:25 +01:00
Daniel Holbert
5a5a3f91dc
Bug 1015474 part 1: Update behavior of "min-width:auto"/"min-height:auto" to match current spec text. r=mats
...
This updates min-width:auto / min-height:auto to now take several more things
into account, beyond just a flex item's min-content size. Now we'll also
consider its used 'flex-basis', its main max-size property ('max-width' or
'max-height'), and its intrinsic ratio & any constraints in the other
dimension.
2014-07-22 08:24:37 -07:00
Daniel Holbert
52ee9264f1
Bug 1037177 part 5: Update documentation for GenerateFlexItemForChild & helpers. (comment-only, no review)
2014-07-22 08:24:36 -07:00
Daniel Holbert
9fb7acb17b
Bug 1037177 part 3: Split out flexbox's auto-height-measuring code into its own dedicated function. r=mats
2014-07-22 08:24:36 -07:00
Daniel Holbert
4b3514805d
Bug 1037177 part 2: Rename ResolveFlexItemMaxContentSizing to ResolveAutoFlexBasisAndMinSize. r=mats
2014-07-22 08:24:36 -07:00
Birunthan Mohanathas
bc0233fe47
Bug 1026535 - Fix mismatched class/struct tags. r=ehsan
2014-06-18 17:57:51 -07:00
Daniel Holbert
d6254c995e
Bug 1024875: Make reflow-related functions in nsFlexContainerFrame return void, now that Reflow returns void. r=mats
2014-06-13 08:37:02 -07:00
Mats Palmgren
2831fb8a6a
Bug 508665 - part 4, Make nsCSSFrameConstructor use nsContainerFrame* for frames used as parent frames. r=roc
2014-05-24 22:20:40 +00:00
Mats Palmgren
9795aca511
Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc
2014-05-13 00:47:52 +00:00
Wes Kocher
42253715d7
Backed out 11 changesets (bug 1008917) for apparently introducing an intermittent failure of B2G Crashtest-2 on a CLOSED TREE
...
Backed out changeset e2ab653f688a (bug 1008917)
Backed out changeset b52154d8d900 (bug 1008917)
Backed out changeset 2ab5b01da4de (bug 1008917)
Backed out changeset f7a38df1d44f (bug 1008917)
Backed out changeset 80304bb9a572 (bug 1008917)
Backed out changeset 10ed89a302e9 (bug 1008917)
Backed out changeset 161c41991d46 (bug 1008917)
Backed out changeset 25b2475d2368 (bug 1008917)
Backed out changeset b8000b31277c (bug 1008917)
Backed out changeset 9afa5e7715e1 (bug 1008917)
Backed out changeset 5c380c21351f (bug 1008917)
2014-05-12 15:47:41 -07:00
Mats Palmgren
a722b491f1
Bug 1008917 - part 2,3,4, make Reflow() return type 'void', and make a few reflow related helper methods 'void' too. r=roc
2014-05-12 17:40:28 +00:00
Daniel Holbert
a5a455d41e
Bug 983434 part 2: Store FlexLines and FlexItems in MFBT LinkedLists instead of nsTArrays. r=mats
2014-03-18 09:23:23 +08:00
Daniel Holbert
ed868958c3
Backed out c5dc2de8d224 (Bug 983434 part 2) for Linux static-analysis build bustage
...
CLOSED TREE
2014-03-18 07:27:52 +08:00
Daniel Holbert
ecb4f7cb34
Bug 983434 part 2: Store FlexLines and FlexItems in MFBT LinkedLists instead of nsTArrays. r=mats
2014-03-18 06:09:41 +08:00
Kyle Huey
d7764d686d
Bug 981150: Use nsTArrayForwardDeclare.h more. r=ehsan
2014-03-15 12:00:17 -07:00
Daniel Holbert
cded82fd98
Bug 981116: Convert nsFlexContainerFrame boolean member-var into frame state bit. r=heycam
2014-03-07 15:58:38 -08:00
Daniel Holbert
3146c96a56
Bug 919806 followup: Reindent method declarations affected by NS_IMETHOD-removal. (whitespace-only; no review) DONTBUILD
2014-02-18 00:36:33 -08:00
Arnaud Sourioux
2d583fd28f
Bug 919806: Get rid of NS_IMETHOD in nsIFrame.h and its implementations r=dholbert
2014-02-17 23:47:48 -08:00
Daniel Holbert
0e5aa291e4
Bug 969147: Compute (and sum) the cross sizes of flex lines as we go, to make pagination easier. r=mats
2014-02-06 17:04:52 -08:00
Daniel Holbert
ddc963a2e5
Bug 962267: Move nsFlexContainerFrame.h's forward-decls into the class's scope. r=mats
2014-01-21 17:05:07 -08:00
Daniel Holbert
23a7b2bd07
Bug 783470 part 3: Use the strut metadata we've saved to actually build special "strut" FlexItems on our second pass through reflow. r=mats
2014-01-21 14:52:27 -08:00
Daniel Holbert
2781ee2855
Bug 783470 part 2: Create an array with information about each visibility:collapse "strut" that we need to build. r=mats
2014-01-21 14:51:58 -08:00
Daniel Holbert
8e6318cf6a
Bug 783470 part 1: Split most of flex reflow into a helper-function, so that we can easily restart it by reinvoking that helper. r=mats
2014-01-21 14:51:57 -08:00