Commit Graph

475 Commits

Author SHA1 Message Date
Mounir Lamouri
e07c431650 Bug 737786 - 1/5 - Show/hide placeholder based on display lists instead of CSS class. r=bz 2012-11-09 10:22:29 +00:00
Olli Pettay
cb96deed0a Bug 802985, PreDestroy editor, r=ehsan 2012-10-20 21:48:34 +03:00
Trevor Saunders
ef05b16386 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
David Zbarsky
b22e7c6a8e [Bug 799407] Fix build warnings in layout r=roc 2012-10-10 01:00:05 -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
e813da3696 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Ed Morley
ed4fe023b5 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
24eaff95c9 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Ehsan Akhgari
57ec2ec569 Bug 792502 - Kill the FunctionTimer code; r=vlad 2012-09-19 16:59:38 -04:00
Mark Capella
66b118d802 Bug 785091 - Remove nsIEditorObserver, r=ehsan 2012-09-17 11:14:56 -04:00
Peter Van der Beken
817be9d200 Fix for bug 788532 (Add the new DOM bindings API to DOM lists). r=bz. 2012-09-05 22:49:53 +02:00
Boris Zbarsky
a965f1de68 Bug 782660. Resizing a text control frame with borders should invalidate the borders as needed. r=roc 2012-08-29 01:14:46 -04:00
Ehsan Akhgari
243c878d26 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
Charly Molter
5902467a98 Bug 776265 - changing the way ComputeHeightValue works to make it work just
like ComputeWidthValue already does. this fixes {min,max}-height + adding
  reftests for {min,max}-{height,width} r=mats
2012-08-08 17:58:26 +02:00
Ms2ger
bd02c3e237 Bug 716822 - Move attributes and methods on nsIDOMNSEvent to nsIDOMEvent; r=smaug 2012-08-04 09:44:00 +02:00
Ed Morley
a246794e16 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
Ms2ger
e42f8c031a Bug 716822 - Move attributes and methods on nsIDOMNSEvent to nsIDOMEvent; r=smaug 2012-08-04 09:44:00 +02:00
Aryeh Gregor
8b4a23fc4c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Aryeh Gregor
318c755d1f Bug 772807 - Clean up editor/ includes with include-what-you-use; r=ehsan 2012-07-13 09:33:42 +03:00
David Zbarsky
9050aef271 Bug 763350 - Clean up some includes in content/ and dom/ r=smaug 2012-07-01 16:45:59 -07:00
Charly Molter
8dfebacb7d Bug 716875 - Make nsTextControlFrame inherits from nsContainerFrame instead of nsStackFrame. r=roc,bz 2012-06-23 13:11:00 +02:00
Ehsan Akhgari
b57741437e Bug 762764 - Prevent selection from descending into text boxes when extending it for things like caret navigation and extension for deletion; r=roc 2012-06-19 19:31:03 -04:00
Ryan VanderMeulen
4c71ae6d9a Revert c39d36167b99 due to a horribly munged backout. 2012-06-10 19:44:50 -04:00
Ryan VanderMeulen
202bd53a55 Backout the bug 754202 backout due to orange. 2012-06-10 19:37:47 -04:00
Ryan VanderMeulen
f7bfb2c7b3 Merge the last PGO-green inbound changeset to m-c 2012-06-10 18:21:22 -04:00
Olli Pettay
2146ee62af Bug 761613 - Merge nsIPrivateDOMEvent to nsIDOMEvent, r=jst 2012-06-10 21:14:30 +03:00
Aryeh Gregor
463121ea8c Bug 762862 - Rename nsTypedSelection to mozilla::Selection; r=ehsan 2012-06-08 17:20:55 +03:00
Aryeh Gregor
b3ad97272c Bug 757771 part 4 - Create new nsContentUtils::GetSelectionInTextControl method; r=ehsan 2012-06-07 18:00:58 +03:00
Trevor Saunders
b9aec915ac bug 759033 - nsAccessible -> Accessible and nsAccessibleWrap -> AccessibleWrap r=surkov 2012-05-28 21:18:45 -04:00
Frank Yan
627c1d3238 Bug 673873 - Display placeholder when focusing empty input. r=mounir 2012-05-24 03:54:25 -07:00
Ed Morley
37ca1550e9 Backout 0d782874abea, 75571af38ce5 & bfd3a65c0feb (bug 673873) for increasing the failure rate of bug 702184 2012-05-24 14:12:19 +01:00
Frank Yan
7f77f2baca Bug 673873 - Display placeholder when focusing empty input. r=mounir 2012-05-24 03:54:25 -07:00
Ed Morley
7212749e9b Merge mozilla-central to mozilla-inbound 2012-05-21 13:19:38 +01:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
L. David Baron
2548b743d5 Remove width determination parameters from font inflation methods. (Bug 747720, patch 5) r=roc
These are no longer needed since we're getting the width from the
nsFontInflationData.
2012-05-20 22:18:28 -07:00
Andrew Quartey
b361b42d11 Bug 722599 - Move change event firing to content from layout r=mounir 2012-05-07 12:27:24 -04:00
Masayuki Nakano
7232e1001c Bug 668606 input event should be fired on all editors r=ehsan+smaug, sr=smaug 2012-03-27 10:36:44 +09:00
Nathan Froyd
20f5ce545a Bug 731615 - Eliminate duplicate headers in layout. rs=smontagu 2012-02-29 10:57:47 -05:00
L. David Baron
c6e45feee7 Switch nsLayoutUtils inflation methods to the new setup with state on the pres context. (Bug 706609, patch 5) r=roc
This is the third of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
2012-01-24 17:21:29 -08:00
Benjamin Stover
a38eb5067f Bug 524925 - Recompute overflow without reflowing for transforms. part=1/6 r=dbaron
Add an extra change hint, UpdateOverflow, that can be used to specify that
a frame's overflow areas may have changed and that they need to be recalculated.
When a transform on a frame changes, instead of marking it for reflow, set this
hint instead.

There is an added virtual function on nsIFrame, UpdateOverflow, which is called
recursively on a frame when the corresponding hint is set, to allow it to
update its overflow areas.
2011-06-15 14:03:49 -07:00
David Zbarsky
c6abd95045 Bug 682611 - Part 2: Remove nsIRange; r=smaug 2012-01-10 15:19:54 +01:00
L. David Baron
e34405d957 Apply font size inflation to line heights. (Bug 627842, patch 11) r=roc
Since font size inflation applies to the text after style data
computation, we must separately apply this inflation to line heights.
2011-11-23 18:48:23 -08:00
Ms2ger
553391cf46 Bug 684821 - Remove nsIDOMNSHTMLElement; r=peterv 2011-10-29 22:03:55 +02:00
Olli Pettay
1cdbb1b884 Bug 682420 - Rename nsINode::GetOwnerDoc to nsINode::OwnerDoc, part 1, r=jst 2011-10-18 13:53:36 +03:00
Ehsan Akhgari
478ad1a412 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
Michael Wu
0fe7772ece Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
Randell Jesup
5e5c2a8e62 Bug 682684: handle frames being deleted when running EditorInitializer when under scriptblocker r=roc 2011-09-19 23:14:47 -04:00
Ms2ger
717aa1d9e1 Bug 672054 - Part a: Remove nsIDOMNSUIEvent; r=smaug 2011-08-26 09:43:49 +02:00
Mats Palmgren
4e2a044a66 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
Jonas Sicking
aed52c6d27 Bug 661297 Part 1: Remove Add/RemoveEventListenerByIID API. r=smaug 2011-08-08 11:26:26 -07:00