Commit Graph

5068 Commits

Author SHA1 Message Date
Cameron McCormack
2688bea4cd Bug 795802 - Define content flags like frame state bits. r=bz
--HG--
extra : rebase_source : 4d67320ada060e29644ab6c070a1d5154b304d96
2012-10-02 10:52:06 +10:00
Ehsan Akhgari
4b71a98ab2 Bug 579517 follow-up: Remove NSPR types that crept in 2012-10-01 16:04:09 -04:00
Timothy Nikkel
e597215240 Bug 784591. Add an optional argument to the unlock image api on documents so that we can request that the image be discarded only in some situations. r=khuey 2012-10-01 12:53:57 -05:00
Nathan Froyd
3c013d928f Bug 720768 - add nsDOMEventTargetHelper::DispatchTrustedEvent; r=mounir, sr=smaug 2012-09-27 16:11:31 -04:00
Mark Goodwin
38b8c56de1 Bug 770099 - Send CSP policy and report information to Web Console (Part 1); r=dveditz,msucan,jwalker 2012-10-01 10:10:29 +01:00
Peter Van der Beken
b5b5988316 Fix for bug 791774 (Hook DOM lists up to the new DOM bindings). r=bz.
--HG--
extra : rebase_source : 873020edd9cd3defc932d77bd26b5d65ebf263cb
2012-06-13 17:18:30 +02:00
Kyle Huey
53271e4c0c Bug 795128: Add memory reporting for attribute maps and nodes. r=smaug 2012-09-30 09:43:47 -07: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
Mounir Lamouri
990268d0ba Bug 795136 - 1/2 - Add events notifying the window if upload/download happen on the system. r=smaug sr=sicking 2012-09-30 14:47:48 +01:00
Simon Montagu
2b02131b60 Add vendor prefix to :dir selector. Bug 562169, r=dbaron 2012-09-29 13:41:10 -07:00
Phil Ringnalda
72a97ced78 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-09-28 22:06:29 -07:00
Ed Morley
bb53ce0424 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-09-29 00:08:58 +01:00
Olli Pettay
fe6fc67766 Bug 794694 - Make sure to trace all the gray GCthings, not only wrapper, r=mccr8 2012-09-29 01:29:37 +03:00
Isaac Aggrey
a53c93b026 Bug 795351: Replace LL_MAXINT, LL_MININT, LL_MAXUINT with stdint versions; r=ehsan 2012-09-28 14:55:23 -05:00
Isaac Aggrey
0cc4b12d36 Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Olli Pettay
80d2f005af Bug 794623 - Fewer virtual GetTargetForEventTargetChain calls, r=jst
--HG--
extra : rebase_source : db5b18e28b2ed362e0761370b21ef74e6231a476
2012-09-28 02:15:29 +03:00
Philipp von Weitershausen
44fec9de95 Bug 777508 - Notify parent if child processes are terminated through message manager. r=cjones 2012-09-27 22:43:24 -07:00
Philipp von Weitershausen
ffc72e3d22 Bug 776832 - Add a scriptable API to assert app permissions through messagemanager. r=smaug 2012-09-27 22:43:12 -07:00
Ed Morley
a86b50f6bc Merge mozilla-central to mozilla-inbound 2012-09-28 16:01:22 +01:00
Ed Morley
ce04490c89 Backout 52be204da1cf (bug 776663), 965397b043c0 (bug 777508), 182c763efa68 (bug 776832), a2a509184b07 & cba5ba69091f (bug 789973) for failures in test_child_process_shutdown_message.html and friends / conflicting with the backout on a CLOSED TREE 2012-09-28 14:08:04 +01:00
Philipp von Weitershausen
6fc22757f7 Bug 795061 - AssertAppProcessPermission: Kill any process that doesn't have the specified permission, not just app processes. r=cjones 2012-09-28 10:29:36 -07: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
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Matt Woodrow
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Masatoshi Kimura
f1e6b8f196 Bug 764234 - Implement StringEncoding API. r=dougt,smontagu 2012-09-28 11:19:18 +01:00
Philipp von Weitershausen
76d445df15 Bug 777508 - Notify parent if child processes are terminated through message manager. r=cjones 2012-09-27 22:43:24 -07:00
Philipp von Weitershausen
7775e8c877 Bug 776832 - Add a scriptable API to assert app permissions through messagemanager. r=smaug 2012-09-27 22:43:12 -07:00
Phil Ringnalda
4201311ebf Back out b24a73b2c617 for Windows build bustage and test_xhr_timeout.html failure 2012-09-27 21:24:42 -07:00
Andrea Marchesini
7e21557bd5 Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent 2012-09-27 23:05:59 -04:00
Aryeh Gregor
923550b985 Bug 779809 part 2 - Don't safe-forward [notxpcom] methods; r=khuey,bz 2012-08-09 11:33:38 +03:00
Paul Adenot
01931fe9e5 Bug 730765 - Remove a copy of nsBlobProtocolHandler.h. r=khuey 2012-09-25 16:23:32 -07:00
Terrence Cole
185355684f Bug 791322 - Move Rooted to js:: namespace; r=billm
These should not be part of the public API.

--HG--
extra : rebase_source : 00a69ee54f06e3f557cd9ec2f3b059df10aa32df
2012-09-24 18:08:22 -07:00
Alexandre Dumont
01f3a22f41 Bug 596753: Flatten layout/svg/base/src into layout/svg. r=dholbert
--HG--
rename : layout/svg/base/src/Makefile.in => layout/svg/Makefile.in
rename : layout/svg/base/src/SVGFEContainerFrame.cpp => layout/svg/SVGFEContainerFrame.cpp
rename : layout/svg/base/src/SVGFEImageFrame.cpp => layout/svg/SVGFEImageFrame.cpp
rename : layout/svg/base/src/SVGFELeafFrame.cpp => layout/svg/SVGFELeafFrame.cpp
rename : layout/svg/base/src/SVGFEUnstyledLeafFrame.cpp => layout/svg/SVGFEUnstyledLeafFrame.cpp
rename : layout/svg/base/src/SVGViewFrame.cpp => layout/svg/SVGViewFrame.cpp
rename : layout/svg/base/src/nsISVGChildFrame.h => layout/svg/nsISVGChildFrame.h
rename : layout/svg/base/src/nsISVGGlyphFragmentNode.h => layout/svg/nsISVGGlyphFragmentNode.h
rename : layout/svg/base/src/nsISVGSVGFrame.h => layout/svg/nsISVGSVGFrame.h
rename : layout/svg/base/src/nsSVGAFrame.cpp => layout/svg/nsSVGAFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.cpp => layout/svg/nsSVGClipPathFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.h => layout/svg/nsSVGClipPathFrame.h
rename : layout/svg/base/src/nsSVGContainerFrame.cpp => layout/svg/nsSVGContainerFrame.cpp
rename : layout/svg/base/src/nsSVGContainerFrame.h => layout/svg/nsSVGContainerFrame.h
rename : layout/svg/base/src/nsSVGEffects.cpp => layout/svg/nsSVGEffects.cpp
rename : layout/svg/base/src/nsSVGEffects.h => layout/svg/nsSVGEffects.h
rename : layout/svg/base/src/nsSVGFilterFrame.cpp => layout/svg/nsSVGFilterFrame.cpp
rename : layout/svg/base/src/nsSVGFilterFrame.h => layout/svg/nsSVGFilterFrame.h
rename : layout/svg/base/src/nsSVGFilterInstance.cpp => layout/svg/nsSVGFilterInstance.cpp
rename : layout/svg/base/src/nsSVGFilterInstance.h => layout/svg/nsSVGFilterInstance.h
rename : layout/svg/base/src/nsSVGFilterPaintCallback.h => layout/svg/nsSVGFilterPaintCallback.h
rename : layout/svg/base/src/nsSVGForeignObjectFrame.cpp => layout/svg/nsSVGForeignObjectFrame.cpp
rename : layout/svg/base/src/nsSVGForeignObjectFrame.h => layout/svg/nsSVGForeignObjectFrame.h
rename : layout/svg/base/src/nsSVGGFrame.cpp => layout/svg/nsSVGGFrame.cpp
rename : layout/svg/base/src/nsSVGGFrame.h => layout/svg/nsSVGGFrame.h
rename : layout/svg/base/src/nsSVGGenericContainerFrame.cpp => layout/svg/nsSVGGenericContainerFrame.cpp
rename : layout/svg/base/src/nsSVGGenericContainerFrame.h => layout/svg/nsSVGGenericContainerFrame.h
rename : layout/svg/base/src/nsSVGGeometryFrame.cpp => layout/svg/nsSVGGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGGeometryFrame.h => layout/svg/nsSVGGeometryFrame.h
rename : layout/svg/base/src/nsSVGGlyphFrame.cpp => layout/svg/nsSVGGlyphFrame.cpp
rename : layout/svg/base/src/nsSVGGlyphFrame.h => layout/svg/nsSVGGlyphFrame.h
rename : layout/svg/base/src/nsSVGGradientFrame.cpp => layout/svg/nsSVGGradientFrame.cpp
rename : layout/svg/base/src/nsSVGGradientFrame.h => layout/svg/nsSVGGradientFrame.h
rename : layout/svg/base/src/nsSVGImageFrame.cpp => layout/svg/nsSVGImageFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.cpp => layout/svg/nsSVGInnerSVGFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.h => layout/svg/nsSVGInnerSVGFrame.h
rename : layout/svg/base/src/nsSVGIntegrationUtils.cpp => layout/svg/nsSVGIntegrationUtils.cpp
rename : layout/svg/base/src/nsSVGIntegrationUtils.h => layout/svg/nsSVGIntegrationUtils.h
rename : layout/svg/base/src/nsSVGMarkerFrame.cpp => layout/svg/nsSVGMarkerFrame.cpp
rename : layout/svg/base/src/nsSVGMarkerFrame.h => layout/svg/nsSVGMarkerFrame.h
rename : layout/svg/base/src/nsSVGMaskFrame.cpp => layout/svg/nsSVGMaskFrame.cpp
rename : layout/svg/base/src/nsSVGMaskFrame.h => layout/svg/nsSVGMaskFrame.h
rename : layout/svg/base/src/nsSVGOuterSVGFrame.cpp => layout/svg/nsSVGOuterSVGFrame.cpp
rename : layout/svg/base/src/nsSVGOuterSVGFrame.h => layout/svg/nsSVGOuterSVGFrame.h
rename : layout/svg/base/src/nsSVGPaintServerFrame.cpp => layout/svg/nsSVGPaintServerFrame.cpp
rename : layout/svg/base/src/nsSVGPaintServerFrame.h => layout/svg/nsSVGPaintServerFrame.h
rename : layout/svg/base/src/nsSVGPathGeometryFrame.cpp => layout/svg/nsSVGPathGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGPathGeometryFrame.h => layout/svg/nsSVGPathGeometryFrame.h
rename : layout/svg/base/src/nsSVGPatternFrame.cpp => layout/svg/nsSVGPatternFrame.cpp
rename : layout/svg/base/src/nsSVGPatternFrame.h => layout/svg/nsSVGPatternFrame.h
rename : layout/svg/base/src/nsSVGStopFrame.cpp => layout/svg/nsSVGStopFrame.cpp
rename : layout/svg/base/src/nsSVGSwitchFrame.cpp => layout/svg/nsSVGSwitchFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.cpp => layout/svg/nsSVGTSpanFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.h => layout/svg/nsSVGTSpanFrame.h
rename : layout/svg/base/src/nsSVGTextContainerFrame.cpp => layout/svg/nsSVGTextContainerFrame.cpp
rename : layout/svg/base/src/nsSVGTextContainerFrame.h => layout/svg/nsSVGTextContainerFrame.h
rename : layout/svg/base/src/nsSVGTextFrame.cpp => layout/svg/nsSVGTextFrame.cpp
rename : layout/svg/base/src/nsSVGTextFrame.h => layout/svg/nsSVGTextFrame.h
rename : layout/svg/base/src/nsSVGTextPathFrame.cpp => layout/svg/nsSVGTextPathFrame.cpp
rename : layout/svg/base/src/nsSVGTextPathFrame.h => layout/svg/nsSVGTextPathFrame.h
rename : layout/svg/base/src/nsSVGUseFrame.cpp => layout/svg/nsSVGUseFrame.cpp
rename : layout/svg/base/src/nsSVGUtils.cpp => layout/svg/nsSVGUtils.cpp
rename : layout/svg/base/src/nsSVGUtils.h => layout/svg/nsSVGUtils.h
rename : layout/svg/base/src/resources/content/svgBindings.xml => layout/svg/resources/content/svgBindings.xml
rename : layout/svg/base/src/svg.css => layout/svg/svg.css
2012-09-24 23:01:21 +02:00
Ed Morley
dce1c2e5c4 Backout be95f234ff6e (bug 776832) for various mochitest-1 failures 2012-09-26 10:31:19 +01:00
Philipp von Weitershausen
7d83192a58 Bug 776832 - Add a scriptable API to assert app permissions of apps through messagemanager. r=smaug 2012-09-26 00:41:51 -07:00
Sid Stamm
c356d3cd85 Bug 768029 - Apply CSP Policy to trusted and certified apps. Temporarily using a overly permissive policy for certified apps until Gaia is updated to handle the desired policy. r=sicking Parts by sicking, r=mounir 2012-09-25 16:28:17 -07:00
Fabrice Desré
3fd41470ed Backout Bug 768029 because that breaks Gaia (see https://github.com/mozilla-b2g/gaia/issues/5177) 2012-09-25 15:32:20 -07:00
Sid Stamm
bc5dd19449 bug 768029 - Apply CSP Policy to trusted and certified apps. r=sicking. Parts by sicking, r=mounir. 2012-08-02 12:13:53 -07:00
Antonio Manuel Amaya Calvo
daa36ed6ea Bug 773886: Prevent loading resources from app:// URIs from outside that app. r=sicking 2012-09-25 12:33:01 -07:00
Fernando Rodríguez Sela
6a73fbe53d Bug 744700 - B2G 3G: Notify connection errors in the WebMobileConnection API (part 2), r=philikon 2012-09-25 12:22:38 -07:00
Tanvi Vyas
d1557809d5 Bug 792101 - security.mixed_content.block_active_content causes crash in nsMixedContentBlocker::ShouldLoad (r=smaug) 2012-09-25 10:51:51 -07:00
Honza Bambas
3581c481dc Bug 756717 - Implement 'appcache jar' for apps, r=tlee+jduell 2012-07-31 02:36:00 -04:00
Henri Sivonen
76b0ef2302 Test for bug 750096 - Make sure nsIParserUtils::parseFragment does not dereference <embed src=javascript:...>. r=bzbarsky. 2012-09-25 10:29:23 +03:00
Phil Ringnalda
59da0af0b1 Back out 8bd13443d0bc (bug 579517) to get a clean backout
--HG--
extra : rebase_source : 63c8087f0a6de5adeddb8762ff9e410b2b818e22
2012-09-24 21:21:10 -07:00
Ehsan Akhgari
3eee84e809 Bug 579517 follow-up: Remove NSPR types that crept in 2012-09-24 17:55:10 -04:00
Bobby Holley
5af5a73d3d Bug 792036 - Automated fixups. r=mccr8
find /files/mozilla/build/d/_tests/testing/mochitest/tests/ | egrep "\.(xhtml|html|xml|js)$" | grep -v SimpleTest | grep -vi mochikit | grep -v simpleThread | grep -v test_ipc_messagemanager_blob.html | grep -v "indexedDB/test" | xargs grep -l Components |  xargs grep -L enablePrivilege | perl -pe 's#.*mochitest/tests/##' | xargs perl -p -i.bakkk -e 's/Components\.interfaces(\s|;|\.|\[)/SpecialPowers\.Ci$1/g, s/SpecialPowers\.wrap\(Components\)\.(.)(lasses|tils|nterfaces|esults)/SpecialPowers.C$1/g, s/(?<![\.a-zA-Z])Components/SpecialPowers\.Components/g, s/window\.Components/window\.SpecialPowers\.Components/g'
2012-09-24 14:46:29 +02:00
Bobby Holley
c64d31c5e0 Bug 792036 - Fix up tests to avoid relying on the existence of window.Components (MANUAL). r=mccr8
These are the manual fixes that the ensuing auto-generation can't deal with. Some of them
just fix up formatting (such as Components.\nFoo, so that subsequent auto-generation can
work better).
2012-09-24 14:46:28 +02:00
Boris Zbarsky
c1e1158cfc Bug 793196. Speed up hasAttribute string munging of the attr name. r=sicking 2012-09-22 22:04:54 -04:00
Diogo Golovanevsky Monteiro
88b8d85e57 Bug 784402 - Pointer Lock must respect iframe sandbox flag. r=smaug 2012-09-22 20:56:55 -04:00
Jim Mathies
9418b94d60 Bug 726615 - Completely remove MozTouch event support from mc. r=smaug 2012-09-22 14:28:08 -05:00