Commit Graph

568 Commits

Author SHA1 Message Date
L. David Baron
822b2ca3bc Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Robert O'Callahan
d9665619b9 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
Robert O'Callahan
59dfd955a1 Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : 50a3d6809ef76a25a3d02d91f2873d9ba11fdc56
2013-02-15 00:08:08 +13:00
L. David Baron
63fdfec174 Bug 841789, patch 1: Rename nsIFrame::GetStyleContext() to nsIFrame::StyleContext() since it can never return null. r=dholbert
This makes it conform to our convention that getters returning pointers
that can never be null do not begin with "Get".
2013-02-15 21:38:33 -08:00
Daniel Holbert
5a5743bb35 Bug 836954: Mark nsIFrame::GetBaseline() impls as MOZ_OVERRIDE. r=dbaron 2013-02-11 17:52:55 -08:00
Daniel Holbert
fe44e3d195 Bug 836957 part 3: Mark remaining nsIFrame::GetSkipSides() overrides as MOZ_OVERRIDE, and remove stale comments. r=mats 2013-02-04 08:17:31 -08:00
Daniel Holbert
fbf74bf166 Bug 836957 part 1: Remove unnecessary nsIFrame::GetSkipSides() overrides whose implementations are in .h files. r=mats 2013-02-04 08:17:11 -08:00
Glenna Buford
3f15e9ec8a Bug 837013: Removed virtual keyword from methods that are unnecessarily virtual in nsTableFrame. r=dholbert 2013-02-03 13:54:07 -08:00
Mats Palmgren
ee76b2931e Bug 835167 - Add reftest-wait to some crashtests to fix orange. 2013-01-28 01:26:04 +01:00
Bernd
383e91ff29 Bug 371290 - crashtest 2013-01-26 21:28:56 +01:00
Gavin Sharp
37e684fe2f Bug 368013 - crashtest 2013-01-26 21:28:56 +01:00
Jesse Ruderman
ab0bd9103b Bug 367755 - crashtest 2013-01-26 21:28:55 +01:00
Martijn Wargers
15fd542ae2 Bug 362275, bug 367749 - crashtests 2013-01-26 21:28:55 +01:00
Martijn Wargers
9763f076b8 Bug 347367 - crashtest. 2013-01-26 14:15:29 +01:00
Mats Palmgren
6c53161814 Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan 2013-01-15 13:22:03 +01:00
L. David Baron
09229da43e Don't distribute percentage width from column-spanning cells to columns that have no cells originating. (Bug 810586) r=dholbert
This makes the distribution of pref/min width and the distribution of
percentage width from column-spanning cells more consistent with each
other.  Having them inconsistent means that a column-spanning cell that
has both percentage width and minimum intrinsic width might distribute
those widths among its columns differently, which can then lead to the
percentages unnecessarily increasing the table's preferred intrinsic
width.

(It *might* also be worth fixing the FLEX_ALL_LARGE case in
DistributeWidthToColumns to also check for originating cells, since it's
now the only case that doesn't, except that we can't guarantee that
there are columns with originating cells, so it would really require
splitting that case, which is extra complexity that doesn't seem worth
it for such a rarely-hit and non-interoperable case.)

--HG--
extra : transplant_source : %80%C9z%F4%EF%18%E1y%BB%B3%E57%0C%3A%0B%92%2C%B8%83%AC
2013-01-02 22:58:05 -05:00
Masatoshi Kimura
b5e27745c8 Bug 824247 - Part 3: Disable FAIL_ON_WARNINGS on not-yet-warning-free directories on MSVC. r=ted 2013-01-03 00:56:38 +09:00
Alexander Surkov
db23e3552b Bug 810572, part 2.5 - rename AccType constants again, r=tbsaunde, sr=roc 2012-12-18 10:25:52 +09:00
Mats Palmgren
cd819648ea Bug 696640 - Don't put an existing next-in-flow for the kid into 'rowGroups' - it's either already there or it's not our child. r=roc 2012-12-17 02:21:36 +01:00
Trevor Saunders
cdabdac86e bug 781409 - remove nsITableLayout r=roc,davidb 2012-08-08 09:05:17 -04:00
Alexander Surkov
e3cd8d0be2 Bug 810572, part2 - remove 'Accessible' postfix from AccTypes constants, r=tbsaunde, sr=roc 2012-12-12 19:04:12 +09:00
Matt Woodrow
c3f0542212 Bug 805507 - Only invalidate tables when the visual overflow changes. r=roc 2012-12-12 09:39:10 +13:00
Mats Palmgren
95383d41a3 Bug 814713. r=bz 2012-12-10 18:40:01 +01:00
Robert O'Callahan
af829db568 Bug 816458. Instead of removing the MAY_BE_TRANSFORMED bit in certain frame classes, add an nsIFrame::SupportsCSSTransforms method and call it when necessary. r=mats 2012-12-04 17:50:05 +13:00
Mats Palmgren
60ccae9fe3 Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
Mats Palmgren
9ceef7a8ca Bug 815315 - Make nsTableFrame::RemoveFrame remove all continuations of the removed child frame too. r=bz 2012-12-01 01:10:40 +01:00
Mats Palmgren
f0b3151f9f Bug 815315 - Avoid crashing if the last row-group child frame was removed. r=bz 2012-12-01 01:10:40 +01:00
Boris Zbarsky
10febd02e6 Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
e4050f92f8 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Ryan VanderMeulen
47710276d9 Backed out changesets 1a8b11ae0f4b, e02a02fd1208 (bug 776443), 86a3edf2960d (bug 812392), 26c59f23fd8f, and 288c74d7f87d (bug 812744) for mochitest orange.
CLOSED TREE
2012-11-21 12:47:40 -05:00
Boris Zbarsky
c02fa4914b Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
ad2325fe75 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Robert O'Callahan
9c308072cc Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
--HG--
extra : rebase_source : c532ae41706db6c9d5488bc2b7901c3bf0f0fc25
2012-11-09 18:14:59 -05:00
Ehsan Akhgari
303a79fb7c Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Mats Palmgren
b1a520c604 Bug 685012 - Implement page-break-inside:avoid in layout. r=fantasai,sr=roc 2012-11-08 17:09:38 +01:00
Jacek Szpot
0b35b0e3d8 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Abhishek Potnis
2509c81393 Bug 795511: Removed usages of PR_BIT and PR_BITMASK from the tree; r=ehsan 2012-10-20 07:31:43 +05:30
Trevor Saunders
b51bb304d8 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Nathan Froyd
e888ba80f4 Bug 796129 - remove prtypes #includes in layout/ 2012-10-01 17:12:57 -04:00
Kyle Huey
e5eb83ac5a Bug 760331: Coalesce data for inline style across nodes. r=bz
This patch enables sharing of an nsAttrValue's MiscContainer between nodes for style rules.  MiscContainers of type eCSSStyleRule are now refcounted (with some clever struct packing to ensure that the amount of memory allocated for MiscContainer remains unchanged on 32 and 64 bit).  This infrastructure can be used to share most MiscContainer types in the future if we find advantages to sharing other types than just eCSSStyleRuley.  A cache mapping strings to MiscContainers has been added to nsHTMLCSSStyleSheet.  MiscContainers can be shared between nsAttrValues when one nsAttrValue is SetTo another nsAttrValue or when there is a cache hit in this cache.  This patch also adds the ability to tell a style rule that it belongs to an nsHTMLCSSStyleSheet, with appropriate accessor functions to separate that from the existing case of belonging to an nsCSSStyleSheet.

The primary use case is to reduce memory use for pages that have lots of inline style attributes with the same value.  This can happen easily with large pages that are automatically generated.  An (admittedly pathological) testcase in Bug 686975 sees over 250 MB of memory savings with this change.  Reusing the same MiscContainer for multiple nodes saves the overhead of maintaining separate copies of the string containing the serialized value of the style attribute and of creating separate style rules for each node.  Eliminating duplicate style rules enables further savings in layout through style context sharing.  The testcase sees the amount of memory used by style contexts go from over 250 MB to 10 KB.

Because the cache is based on the text value of the style attribute, it will not handle attributes that have different text values but are parsed into identical style rules.  We also do not attempt to share MiscContainers when the node's base URI differs from the document URI.  The effect of these limitations is expected to be low.
2012-09-30 09:40:24 -07:00
Matt Woodrow
1572061ab5 Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
0cff39f9ec Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
958ce7d98d Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Ed Morley
c863356300 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
e3ab671352 Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
797525b693 Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
c73c0db2f1 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Arnaud Sourioux
815396c1bb Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
Chris Lord
6b2dc34a0b Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
Ehsan Akhgari
c87c3701f1 Bug 788014 - Part 2: Reduce the inclusion of prtypes.h in the tree to help using stdint types; r=jrmuizel
--HG--
extra : rebase_source : 66b3b6b9858fb032bebcc070347f781bdf61770c
2012-09-06 17:54:59 -04:00