Trevor Saunders
b51bb304d8
bug 542039 - accessible object types r=surkov, roc
2012-09-28 17:53:44 -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
5a14809d04
Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc
2012-08-29 17:47:18 +12:00
Matt Woodrow
958ce7d98d
Bug 539356 - Part 9c - Remove old invalidation code. r=bz
2012-08-29 17:39:31 +12:00
Matt Woodrow
f4205ce848
Bug 539356 - Part 9b - Add new frame invalidation API. r=roc
2012-08-29 17:39:01 +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
c73c0db2f1
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
2012-08-29 17:38:58 +12:00
Chris Lord
8a10cc33bd
Bug 788202 - Add optional subdocument traversal to nsIFrame::List. r=bz
...
Add subdocument frame traversal to nsIFrame::List, controlled via an optional
flag.
2012-09-19 15:36:35 +01:00
Chris Lord
0e8485ff4d
Backout bug 788202 for build failures.
2012-09-19 14:05:26 +01:00
Chris Lord
ca82e0a1a5
Bug 788202 - Add optional subdocument traversal to nsIFrame::List. r=bz
...
Add subdocument frame traversal to nsIFrame::List, controlled via an optional
flag.
2012-09-19 12:39:53 +01:00
Matt Woodrow
891faaf4e5
Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc
2012-09-16 22:32:59 +12:00
Robert O'Callahan
f716b5f69e
Bug 787089. Rip out mUpdatePluginGeometryForFrame optimization. It's not known to be a significant win, and creates problems when prescontext ancestor chains are broken; the complexity probably isn't worthwhile. Also, soon (or now) we can rework plugin bounds computation to be use the display list built for rendering. r=matspal
...
--HG--
extra : rebase_source : 0394fcb5111b8b96b5f8ce48e20d6e5503f9ccf7
2012-09-05 22:30:10 +12:00
Boris Zbarsky
ec294637e8
Bug 787131. Move management of primary content state stuff from the nsSubDocumentFrame into the nsFrameLoader, so it works on display:none elements. r=jlebar
2012-09-04 23:00:26 -04:00
Chris Pearce
df4654c650
Bug 781279 - Forget update plugin geometry frame when presentation detaches. r=roc
2012-08-24 23:12:21 +12:00
Jonathan Kew
c7a3425c40
bug 784837 - call SetPrimaryFrame earlier during nsSubDocumentFrame::Init. r=roc
2012-08-24 10:16:15 +01:00
Ehsan Akhgari
0fd9123eac
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
Chris Pearce
6631a2867f
Bug 783824 - Don't stash the presentation (discard it if it was stashed) when subdoc frames are destroyed if the presentation is being destroyed. r=roc
2012-08-21 17:07:03 +12:00
Chris Pearce
274d465a14
Bug 775965 - Ensure presentation persists across nsSubDocumentFrame reframes. r=roc
2012-08-14 16:06:44 +12:00
Ed Morley
966fee8835
Backout bcac58cbf328 & 9c75f0428f8a (bug 775965) for causing bug 782981
2012-08-15 18:10:55 +01:00
Chris Pearce
e847557147
Bug 775965 - Ensure presentation persists across nsSubDocumentFrame reframes. r=roc
2012-08-14 16:06:44 +12:00
Ms2ger
3f950b5744
Bug 780387 - Part b: Stop using PRIntn; r=bsmedberg
2012-08-09 09:09:40 +02:00
Aryeh Gregor
e806eeab4f
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Ehsan Akhgari
5e6974df88
Backout changeset f568fc280fb0 (bug 539356) because of performance and correctness regressions
2012-07-03 20:24:55 -04:00
David Zbarsky
ae718ee1c0
Bug 763350 - Clean up some includes in content/ and dom/ r=smaug
2012-07-01 16:45:59 -07:00
Matt Woodrow
cbd39105d9
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
2012-06-30 15:06:11 +12:00
Ryan VanderMeulen
8f8c9230b8
Re-land bug 757362 since it wasn't at fault for OSX orange.
2012-06-20 22:54:56 -04:00
Ryan VanderMeulen
8c533723e9
Backout 5ba4c3a2338c (bug 757362) for OSX reftest orange.
2012-06-20 21:53:31 -04:00
Timothy Nikkel
756c5f818c
Bug 757362. Use the displayport for the dirty rect (if one is set) when building the display list for a subdocument so that position: fixed items are correctly included. r=roc
2012-06-20 17:35:54 -05:00
Kartikaya Gupta
5ace9309ab
Bug 763570 - Part 1 - Back out 18b206c111cd from bug 747493 as we have a better solution that also fixes other broken frameset behaviours. r=tnikkel
2012-06-15 17:49:46 -04:00
Ed Morley
a73fc227f9
Backout 61fd66629c4f, 7c8121f8d3af & 2a2e9cf8fd41 (bug 539356), e31a5e6545d3 (bug 761884), 85fa80bd9792, a284ccb25b83, 2865904db9fc, 34e07b09c426, e9b3d41e0360, cef00ebcd6c8, f943b729ac14 & 783f298401b6 (bug 539356), 330a086f1570 (bug 741682), d80219c8842c (bug 739671), e8c96b4fd4da, 313af486e68d, 0adc41ff56dc, 0cd288a38085, f1d43208825c, 4859876972f3, eec8ef3ebe48, f7f29fcd1845, 6079b229d306, f23c3a7e7ce0, 9824458a41e2 & 6748b5496059 (bug 539356) for mochitest-4 orange & talos regressions on multiple platforms
2012-06-11 10:08:32 +01:00
Matt Woodrow
147cab5783
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
...
* * *
Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc
* * *
Bug 539356 - Part 9b - Add new frame invalidation API. r=roc
* * *
Bug 539356 - Part 9c - Remove old invalidation code. r=bz
* * *
Bug 539356 - Part 9d - Make SVG support the new invalidation model. r=jwatt
* * *
Bug 539356 - Part 9e - FrameLayerBuilder changes for display list invalidation. r=roc
* * *
Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc
* * *
Bug 539356 - Part 9g - Modify MozAfterPaint code to work with the new invalidation model. r=roc
2012-06-11 16:45:30 +12:00
Timothy Nikkel
7437c32e01
Bug 747493. Give frameset documents a basic scroll layer so we can communicate the document's metrics to the compositor and frontend. r=roc,mats
2012-06-09 19:26:57 -05:00
Trevor Saunders
3b1f9183dc
bug 759033 - nsAccessible -> Accessible and nsAccessibleWrap -> AccessibleWrap r=surkov
...
--HG--
rename : accessible/src/atk/nsAccessibleWrap.cpp => accessible/src/atk/AccessibleWrap.cpp
rename : accessible/src/atk/nsAccessibleWrap.h => accessible/src/atk/AccessibleWrap.h
rename : accessible/src/base/nsAccessible.cpp => accessible/src/generic/Accessible.cpp
rename : accessible/src/base/nsAccessible.h => accessible/src/generic/Accessible.h
rename : accessible/src/mac/nsAccessibleWrap.h => accessible/src/mac/AccessibleWrap.h
rename : accessible/src/mac/nsAccessibleWrap.mm => accessible/src/mac/AccessibleWrap.mm
rename : accessible/src/msaa/nsAccessibleWrap.cpp => accessible/src/msaa/AccessibleWrap.cpp
rename : accessible/src/msaa/nsAccessibleWrap.h => accessible/src/msaa/AccessibleWrap.h
rename : accessible/src/other/nsAccessibleWrap.cpp => accessible/src/other/AccessibleWrap.cpp
rename : accessible/src/other/nsAccessibleWrap.h => accessible/src/other/AccessibleWrap.h
2012-05-28 21:18:45 -04:00
Gervase Markham
ca171eec44
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Robert O'Callahan
c36374c0bc
Bug 737784. Create mInnerView eagerly to ensure that its bounds will always be correctly set in Reflow. r=tnikkel
2012-03-22 16:15:19 +13:00
Daniel Holbert
7dcfb057c4
Bug 732610 - Make nsIFrame::ComputeSize take a bitfield 'aFlags' instead of a bool 'aShrinkWrap'. r=dbaron
2012-03-16 11:01:05 -07:00
Timothy Nikkel
b2533d0dc1
Bug 714346. Part 2. When we create the display clip item that contains a subdocument we use the prescontext of the child document to snap the clip's bounds. This is wrong when the parent and child documents don't have the same app units per dev pixel ratio. Leave the presshell before creating the clip item. r=mats
2012-02-28 23:53:52 -06:00
Timothy Nikkel
7465ab46a9
Bug 714346. Part 1. Make some code stop checking useless return values because it makes the control flow more complicated then needed. r=mats
2012-02-28 23:53:37 -06:00
Robert O'Callahan
d72e514bba
Bug 699351. Part 3: Fix clipping to subdocument to not use subdocument root view bounds. r=tnikkel
2011-12-06 01:39:43 +13:00
Robert O'Callahan
854ef91454
Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky
2011-12-06 01:38:46 +13:00
Brad Lassey
8d2f605b6d
Bug 687972 - backing out changesets b17ab862bbc1 and a6db0c6c94a3 r=orange
2011-11-30 22:59:00 -05:00
Robert O'Callahan
a86c192475
Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky
2011-11-30 21:14:26 -05:00
Neil Deakin
e40bc148fb
Bug 703260, part 1, remove view from eventstatemanager and presshell event handling, r=smaug,sr=roc
2011-11-21 12:53:20 -05:00
Ehsan Akhgari
2a602a5685
Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
...
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Ms2ger
cd715d9c9b
Bug 540433 - Remove nsIDocumentViewer; r=smaug
2011-10-15 09:33:26 +02:00
Michael Wu
d8e503c38b
Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
...
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Mats Palmgren
6894179e71
Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc
...
Remove the nsIAtom* child list names and use child list ID enum instead.
2011-08-24 22:54:30 +02:00
Mats Palmgren
f06792a6ef
Bug 653649 - New way of getting child lists from frames. (part 3/5) r=roc
...
Update GetAdditionalChildListName consumers to use the new
child list iterator instead.
2011-08-24 22:54:29 +02:00
Ms2ger
9414376b01
Bug 677101, part b - Remove nsContentUtils.h includes from headers; r=volkmar
2011-08-11 15:29:50 +02:00
Benjamin Stover
4d6860feb1
Bug 658076 nsSubDocumentFrame uses content to get docshell r=bz
2011-06-08 09:04:16 -07:00