Commit Graph

541 Commits

Author SHA1 Message Date
Boris Zbarsky
abcee77db3 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
6eeb17d512 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
4b287535f2 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
ba3c8f34ef 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
84d68be849 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
de0ff3cd83 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
27d839024f Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Mats Palmgren
78355598f6 Bug 685012 - Implement page-break-inside:avoid in layout. r=fantasai,sr=roc 2012-11-08 17:09:38 +01:00
Jacek Szpot
bea8356b2c Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Abhishek Potnis
8ad6e4b4f3 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
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Nathan Froyd
5375444878 Bug 796129 - remove prtypes #includes in layout/ 2012-10-01 17:12:57 -04:00
Kyle Huey
1ccfbe810b 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
de918ca279 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
8243f6c21c 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
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Ed Morley
5a3b322459 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
9a9168f55a 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
685876852c 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
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Arnaud Sourioux
b20a9a4654 Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron 2012-09-14 09:10:08 -07:00
Chris Lord
bb16d413e7 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
59fbcc9b3c 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
L. David Baron
a173cba76b Change some uses of nsChangeHint_ReflowFrame to check nsChangeHint_NeedReflow. (Bug 789592, patch 1) r=bzbarsky 2012-09-07 15:57:06 -07:00
L. David Baron
ac347fa732 Distribute the width of column-spanning cells to columns with nothing in them, like we do for final table widths. (Bug 734569) r=dholbert 2012-09-07 15:57:06 -07:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -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 PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Kyle Huey
433d46efea Merge m-c to b-s. 2012-08-15 06:25:20 -07:00
Kyle Huey
57cf676096 Bug 697230: Part 0 - Make table frame classes call into their superclass in DidSetStyleContext. r=bz 2012-08-13 14:13:34 -07:00
Aryeh Gregor
982100775b Bug 780618 - Move all error codes to nsError.h; r=ehsan 2012-07-27 17:03:27 +03:00
Ms2ger
331accfcb4 Bug 780387 - Part b: Stop using PRIntn; r=bsmedberg 2012-08-09 09:09:40 +02:00
David Zbarsky
fe804d085c [Bug 780428] Don't include nsIFrame.h in places where it's not necessary r=roc 2012-08-05 23:00:56 -04:00
Tal Aloni
ecb7db2109 Bug 778413 - Fix table cell automatic width calculation when using box-sizing:border-box. r=dbaron 2012-08-03 09:05:01 +02:00
Mike Hommey
c1b35e7b2a Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Ed Morley
4eb11bee72 Revert inbound to 3d5d1daa2505 to stop OS X M5 failures (backout not clean/could have been a bad merge) on a CLOSED TREE 2012-08-04 18:05:15 +01:00
Tal Aloni
b2432a503e Bug 778413 - Fix table cell automatic width calculation when using box-sizing:border-box. r=dbaron 2012-08-03 09:05:01 +02:00
Cameron McCormack
b71d455883 Bug 655877 - Part 14: Ignore float in SVG text frames. r=roc 2012-08-02 21:38:49 +10:00
Aryeh Gregor
f956593743 Bug 777292 - Return -1 from nsTableRowGroupFrame::FindLineContaining on null param; r=roc 2012-07-27 17:03:25 +03:00
Aryeh Gregor
57c0ad57fb Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Rafael Ávila de Espíndola
946681c518 Bug 774040 - remove unused field. r=roc. 2012-07-15 00:20:24 -04:00
Tal Aloni
ccbab52b14 Bug 338554 - Honor -moz-box-sizing on table cells in standards mode (we ignore it in quirks mode). r=dbaron 2012-07-12 19:28:52 -04:00
Nathan Froyd
5b30baa4c3 Bug 370750 - consolidate mochitest files installation; r=glandium
With assistance on the patch from Ms2ger, Waldo, and Mossop.
2012-07-03 16:49:02 -04:00
Ehsan Akhgari
6ef72aef93 Backout changeset f568fc280fb0 (bug 539356) because of performance and correctness regressions 2012-07-03 20:24:55 -04:00
Ehsan Akhgari
91446bec6e Backout changeset 071d6332729b (bug 770058 part 1) because DLBI is being backed out 2012-07-03 19:38:00 -04:00
Robert O'Callahan
dfaac8e211 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-07-03 14:24:14 +12:00
Tal Aloni
5b3fc87350 Bug 248239 - Change standards mode height calculations for table cells to use content-box sizing rather than border-box sizing by default (and to honor -moz-box-sizing, which we do not do in quirks mode). Also remove -moz-box-sizing: border-box from default style for caption element (all modes). r=dbaron 2012-06-30 12:01:31 -04:00
Matt Woodrow
1f0dbc7c74 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-06-30 15:06:11 +12:00
L. David Baron
ab299d1ae2 Backout changeset 1e2b9cdc486b (Bug 248239) due to failure of tests/MochiKit-1.4.2/tests/test_MochiKit-Style.html . 2012-06-26 18:16:09 -07:00
Tal Aloni
84078db9be Change standards mode height calculations for table cells to use content-box sizing rather than border-box sizing by default (and to honor -moz-box-sizing, which we do not do in quirks mode). Also remove -moz-box-sizing: border-box from default style for caption element (all modes). (Bug 248239) r=dbaron 2012-06-26 16:24:23 -07:00
Jonathan Watt
9ac7bb2267 Bug 767388 - Kill NS_DEBUG. r=bz.
--HG--
extra : rebase_source : d045208a26345712dbb4628c973c616cd9504f28
2012-06-25 20:59:42 +01:00
Mats Palmgren
0941034370 Bug 759249. r=bz 2012-06-01 21:56:33 +02:00