Commit Graph

1130 Commits

Author SHA1 Message Date
L. David Baron
4419f3e86b Bug 1053986 - Rename nsIFrame::GetMinSize to GetXULMinSize, and related methods. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

MozReview-Commit-ID: Jhe3o3kIOe0
2016-04-20 21:28:31 -07:00
L. David Baron
7511e4ea42 Bug 1053986 - Rename nsIFrame::IsBoxFrame to IsXULBoxFrame. r=dholbert
Written purely with sed, over .h and .cpp files in layout/.

But with additional manual changes in accessible/.

MozReview-Commit-ID: W0wUPoQsVH
2016-04-20 21:28:30 -07:00
Nathan Froyd
b758a4030e Bug 1264784 - part 3 - make nsIFrame::GetNearestWidget methods non-virtual; r=dholbert
Nothing overrides these methods, and making them non-virtual reduces
vtable sizes and improves code size and performance.
2016-04-15 19:37:35 -04:00
Nathan Froyd
d7b5415e7b Bug 1264784 - part 2 - remove unused virtual methods from nsIFrame; r=dholbert
There are no callers of these methods in mozilla-central, and having
them in the vtable of nsIFrame (and its 100+ subclasses!) consumes
needless space.
2016-04-15 19:37:35 -04:00
Mats Palmgren
1a83f57b72 Bug 645647 part 4 - Add an 'm' prefix to some members to follow our naming conventions. r=dholbert 2016-04-14 01:32:12 +02:00
Mats Palmgren
b7644da205 Bug 645647 part 3 - Remove unused trailingTextFrame member. r=dholbert 2016-04-14 01:32:12 +02:00
Mats Palmgren
c066fae6e9 Bug 645647 part 1 - Don't let empty bullet frames block suppressing white-space in intrinsic size calculations. r=dholbert 2016-04-14 01:32:12 +02:00
Cameron McCormack
5c65b6f60f Bug 1261754 - Part 9: Move clip from nsStyleDisplay to nsStyleEffects. r=dholbert 2016-04-12 15:52:42 +10:00
Seth Fowler
0f24c44100 Bug 1157546 - Replace the image visibility API with a more general API that tracks visibility for any kind of frame. r=mstange 2016-03-25 14:49:43 -07:00
Mats Palmgren
7830a2f346 Bug 1144096 part 14 - [css-grid] Make ReflowInFlowChild() deal with a constrained available block-size. r=dholbert 2016-03-11 17:39:26 +01:00
Gregory Szorc
e92c5b0200 Bug 1244006 - Use const instead of MOZ_CONSTEXPR to avoid startup crash; r=dbaron
PGO builds on Visual Studio 2015 Update 1 did not take kindly to
MOZ_CONSTEXPR in this file, causing a startup crash (for reasons
I can't explain). Switching to literal "const" makes the crash
go away.

MozReview-Commit-ID: K1A43NIa6lG
2016-02-29 18:20:07 -08:00
Boris Chiou
32cdf253b7 Bug 1244049 - Part 2: Replace nsCSSPseudoElements::Type with CSSPseudoElementType. r=dbaron
Also, try to use forward declaraions for CSSPseudoElementType;
2016-02-17 21:37:00 +01:00
Jamie Nicol
5f4c0d8c4a Bug 1241078 - Only treat items as backface hidden if they are 3D-transformed. r=tlee
Add helper function nsIFrame::In3DContextAndBackfaceIsHidden() which
checks both if a frame is backface-hidden and whether it is within a
3D-transform context.

In FrameLayerBuilder, check this function rather than BackfaceIsHidden()
to determine whether a frame needs a backface-hidden layer. This will
avoid creating unnecessary extra layers for non-3d-transformed items
which for some reason have backface-hidden set.
2016-02-08 22:34:13 +00:00
L. David Baron
9283e05678 Bug 823483 patch 2 - Add frame state bit to indicate frame classes that do replaced-element-like sizing. r=dholbert
This is needed for patch 3.
2016-02-04 09:43:02 +11: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
Ting-Yu Lin
122e5b9aeb Bug 1227927 Part 2 - Remove nsIFrame::GetFirstPrincipalChild(). r=mats 2016-01-29 22:42:14 +08:00
Ting-Yu Lin
8c0bb9ebba Bug 1227927 Part 1 - Make nsIFrame::PrincipalChildList a const function. r=bz
Since nsIFrame::GetChildList() is a const function, PrincipalChildList()
should be a const function as well.
2016-01-29 22:42:13 +08:00
Xidorn Quan
0b78aca734 Bug 1230034 part 10 - Convert remaining frame properties to by typed and remove the unsafe declaring macro. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
f297712b64 Bug 1230034 part 9 - Convert FrameLayerBuilder::LayerManagerDataProperty to be typed. r=dbaron 2016-01-28 14:23:59 +11: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
506664c2df Bug 1230034 part 7 - Convert nsIFrame::GenConProperty to be typed. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
c26e860288 Bug 1230034 part 6 - Convert all frame properties which do not hold pointer to be typed. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
ca146f45ac Bug 1230034 part 5 - Convert all frame properties which use DeleteValue and ReleaseValue as destructor to be typesafe. r=dbaron
By changing signature of those two functions, we make compiler complain about
all their existing uses, so we can find all of them and convert them.

Some of the callsites of Get() with those properties are also converted, but not
all of them. It is fine because if there is any incorrect conversion, compilers
is able to find out now. So they are completely typesafe.
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
4dccb52f19 Bug 1230034 part 3 - Move some frame property declaration around. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
294f941c55 Bug 1230034 part 1 - Remove NS_PROPERTY_DESCRIPTOR_CONST macro. r=dbaron 2016-01-28 14:23:59 +11:00
Xidorn Quan
7625a8c5fb Bug 1064843 part 6 - Add backdrop frame list. r=dholbert 2016-01-28 10:11:00 +11:00
Nicholas Nethercote
7fabd8754f Bug 1231550 - Use DrawTarget instead of gfxContext and/or nsRenderingContext in many places in font/text code. r=jfkthame.
AutoTextRun now only needs a DrawTarget instead of an nsRenderingContext, and
similar nsRenderingContext/gfxContext-to-DrawTarget replacements can be
propagated a long way up the call graph. This patch replaces 93 occurrences of
nsRenderingContext and 135 occurrences of gfxContext with DrawTarget; that's
13% of them.

The patch is mostly plumbing changes. A couple of not-entirely-plumbing
changes:

- It adds a comment about the null check in
  gfxGlyphExtents::GetTightGlyphExtentsAppUnits().

- A couple of functions simply had an unused gfxContext or nsRenderingContext
  parameter removed, e.g. SetLineBreaks().
2015-12-15 13:56:41 -08:00
Nicholas Nethercote
85a3a5acf0 Bug 1231256 (part 1) - Remove unused nsBoxLayoutState parameters from many functions. r=roc. 2015-12-07 10:17:47 -08:00
Nicholas Nethercote
fe73890223 Bug 1230413 (part 4) - Remove unused nsRenderingContext argument from ForceBreak() and OptionallyBreak(). r=mattwoodrow. 2015-12-06 14:13:57 -08:00
Robert O'Callahan
f31d503c54 Bug 1221043. Revert to including trailing whitespace for accessibility APIs. r=marcoz,mats 2015-12-01 02:21:25 +13: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
Mats Palmgren
19a16fae90 Bug 1223282 - Make NS_AUTOMARGIN be a different value than NS_UNCONSTRAINEDSIZE to avoid having clamped huge margin values be interpreted as auto margins. r=roc 2015-11-16 17:32:39 +01:00
Wes Kocher
0047ed4a9e Backed out changeset 14641a6d6747 (bug 1223282) for test_value_cloning.html bustage CLOSED TREE 2015-11-16 11:00:47 -08:00
Mats Palmgren
7dd754b766 Bug 1223282 - Make NS_AUTOMARGIN not be the same value as NS_UNCONSTRAINEDSIZE to avoid having clamped huge margin values be interpreted as auto margins. r=roc 2015-11-16 17:32:39 +01: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
Hiroyuki Ikezoe
1867251d74 Bug 1216030 - Part 7: Add nsIFrame::RefusedAsyncAnimation. r=dbaron
Original nsIFrame::RefusedAsyncAnimation was renamed to
nsIFrame::RefusedAsyncAnimationProperty.
2015-10-20 22:03:00 +02:00
Mats Palmgren
98492d7dc4 Bug 1163435 part 1 - [css-grid][css-flexbox] Propagate an explicit CB width/height to the reflow state to resolve percentage lengths for grid items properly. Resolve percent against the size in the same axis for abs.pos. children too. r=dholbert
Grid items are supposed to use the size of their 'grid area',
not their grid container, as their containing block.
2015-11-03 21:45:33 +01:00
Robert O'Callahan
a6cc83a9c7 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.
2015-10-30 19:23:10 +13:00
Cameron McCormack
f9a9b435eb Bug 1219537 - Simplify a couple of PresContext() gets on nsIFrame/nsStyleContext. r=dholbert 2015-10-29 17:06:31 +11:00
Robert O'Callahan
0b818e072e Revert incorrectly committed changes ab657569f554 and a396f4262479 2015-10-24 22:38:22 +13:00
Robert O'Callahan
5919848f93 Bug 264412. Refactor nsIFrame::GetRenderedText API to be more sane. r=mats,marcoz
The test changes here are to adjust for the fact that
nsTextFrame::GetRenderedText can now trim whitespace from the end of lines
that end in a hard line break.
2015-10-24 22:27:29 +13:00
Daniel Holbert
e3f3a17054 Bug 1032613 part 1: Promote FrameMaintainsOverflow to be a public nsIFrame method, & implement it using HasAllStateBits. r=dbaron 2015-10-01 20:05:25 -07:00
Thinker K.F. Li
af80f65bac Bug 1097464 - Part 6: Handle preserves-3d by compositor. r=roc
Remove WrapPreserve3DList() and replaced it by creating a
nsDisplayTransform item for each transformed frame.

 - Add an additional item for each top frame extending 3D context to
   separate consequence contexts.

 - Effective transform of a layer is the accumulation of ancestors in
   the same 3D context.

 - The layers creating new context and extended by children need a
   temporary buffer if it's effective transform is not 2D.

 - Clip rects are accumulated along the context chain.

 - Visible rects of items are computed from dirty regions of the frame
   creating the context and accumulated transforms.

 - Bounds of items are computed from accumulated transforms and
   accumulated bounds of the descent frames.

 - Backface hidden is handled by compositor and BasicLayerManager.
2015-09-17 03:31:00 +02:00
Thinker K.F. Li
9e548da5a7 Bug 1097464 - Part 5: Fix preserve3d wording for nsIFrame. r=roc 2015-09-17 03:31:00 +02:00
Carsten "Tomcat" Book
a47b1a13c4 Backed out 6 changesets (bug 1097464) for causing OS X 10.10 Reftest Errors
Backed out changeset fbf63ce1ba88 (bug 1097464)
Backed out changeset fdaf4cfa6707 (bug 1097464)
Backed out changeset 727ebd9f744a (bug 1097464)
Backed out changeset 03f03a776042 (bug 1097464)
Backed out changeset 5ec6364b87d7 (bug 1097464)
Backed out changeset 47d056b3af7f (bug 1097464)
2015-09-17 16:24:43 +02:00
Thinker K.F. Li
4ca462453f Bug 1097464 - Part 6 - Handle preserves-3d by compositor. r=roc
Remove WrapPreserve3DList() and replaced it by creating a
nsDisplayTransform item for each transformed frame.

 - Add an additional item for each top frame extending 3D context to
   separate consequence contexts.

 - Effective transform of a layer is the accumulation of ancestors in
   the same 3D context.

 - The layers creating new context and extended by children need a
   temporary buffer if it's effective transform is not 2D.

 - Clip rects are accumulated along the context chain.

 - Visible rects of items are computed from dirty regions of the frame
   creating the context and accumulated transforms.

 - Bounds of items are computed from accumulated transforms and
   accumulated bounds of the descent frames.

 - Backface hidden is handled by compositor and BasicLayerManager.
2015-09-17 03:31:00 +02:00