Commit Graph

1933 Commits

Author SHA1 Message Date
Ed Morley
7b377d8510 Backed out changeset 4bfe5e636d68 (bug 850964) for assertions on a CLOSED TREE 2013-03-14 15:19:06 +00:00
Mats Palmgren
f8e24f4117 Bug 850964 - Remove obsolete NS_FRAME_INVALIDATE_ON_MOVE flag. r=roc 2013-03-14 14:39:26 +01:00
Jeff Walden
ae46876880 Bug 847480 - Blindly convert all existing mozilla::Abs users to mozilla::DeprecatedAbs. Individualized conversions to the reformed mozilla::Abs will continue until mozilla::DeprecatedAbs is unused, at which point it will be removed. r=Ms2ger 2013-03-05 15:43:30 -08:00
Matt Woodrow
37bfe92da5 Bug 844750 - Don't use per-display-item invalidation for table frames. r=roc 2013-03-08 15:18:45 +13:00
Timothy Nikkel
66cfa5bd69 Bug 848421. Part 2. Remove useless PresContext argument to nsCSSRendering::FindBackground. r=mats 2013-03-07 10:03:49 -06:00
Trevor Saunders
f0513dc537 bug 846487 - remove remaining usage of some nsIDOMFooElement r=Ms2Ger 2013-02-14 10:33:16 -05:00
Jeff Walden
8be01906e2 Bug 835542 - Implement mozilla::Abs. r=Ms2ger 2013-02-15 19:55:36 -08:00
Gregory Szorc
9d12b5345a Bug 784841 - Part 18t: Convert /layout; f=Ms2ger rs=ted 2013-02-25 12:47:22 -08:00
L. David Baron
ca6c366dc6 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
b18cd55753 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow 2013-02-15 00:12:27 +13:00
Robert O'Callahan
3ac2cf9858 Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow 2013-02-15 00:08:08 +13:00
L. David Baron
3c5d51984d 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
b032a7cc07 Bug 836954: Mark nsIFrame::GetBaseline() impls as MOZ_OVERRIDE. r=dbaron 2013-02-11 17:52:55 -08:00
Daniel Holbert
10bd4089ae 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
a115c115c1 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
9ed50578ec 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
b320a6121c Bug 835167 - Add reftest-wait to some crashtests to fix orange. 2013-01-28 01:26:04 +01:00
Bernd
f2f7c42408 Bug 371290 - crashtest 2013-01-26 21:28:56 +01:00
Gavin Sharp
119d588043 Bug 368013 - crashtest 2013-01-26 21:28:56 +01:00
Jesse Ruderman
b9f1e49870 Bug 367755 - crashtest 2013-01-26 21:28:55 +01:00
Martijn Wargers
a4be5a148c Bug 362275, bug 367749 - crashtests 2013-01-26 21:28:55 +01:00
Martijn Wargers
ae5218af88 Bug 347367 - crashtest. 2013-01-26 14:15:29 +01:00
Mats Palmgren
7532b4e736 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
67295d9f54 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.)
2013-01-02 22:58:05 -05:00
Masatoshi Kimura
119c854c81 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
9ab34aa2a6 Bug 810572, part 2.5 - rename AccType constants again, r=tbsaunde, sr=roc 2012-12-18 10:25:52 +09:00
Mats Palmgren
6cddfab64a 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
3f8f49e192 bug 781409 - remove nsITableLayout r=roc,davidb 2012-08-08 09:05:17 -04:00
Alexander Surkov
7b6a8051eb Bug 810572, part2 - remove 'Accessible' postfix from AccTypes constants, r=tbsaunde, sr=roc 2012-12-12 19:04:12 +09:00
Matt Woodrow
3633a2a44d Bug 805507 - Only invalidate tables when the visual overflow changes. r=roc 2012-12-12 09:39:10 +13:00
Mats Palmgren
c3a3d22b55 Bug 814713. r=bz 2012-12-10 18:40:01 +01:00
Robert O'Callahan
ee2b23951e 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
18a9006d8e Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
Mats Palmgren
1c4e393776 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
f85c27053f 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
e7fc953610 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
d2aeb32b7e 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
f3c337d517 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
537fbfa9d6 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
49a6f5e64c 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
36461eed23 Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow 2012-11-09 18:14:59 -05:00
Ehsan Akhgari
ce141d03d3 Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Mats Palmgren
ab4069cbd7 Bug 685012 - Implement page-break-inside:avoid in layout. r=fantasai,sr=roc 2012-11-08 17:09:38 +01:00
Jacek Szpot
09f9b9a1c3 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Abhishek Potnis
dd0a15b5b8 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
ef05b16386 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Nathan Froyd
fde4327000 Bug 796129 - remove prtypes #includes in layout/ 2012-10-01 17:12:57 -04:00
Kyle Huey
0ee82049a5 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
a23ea55f4b 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
fa5886552e 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