David Zbarsky
307c734c43
[Bug 799407] Fix build warnings in layout r=roc
2012-10-10 01:00:05 -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
958ce7d98d
Bug 539356 - Part 9c - Remove old invalidation code. r=bz
2012-08-29 17:39:31 +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
Ehsan Akhgari
b5c39afb4e
Bug 792502 - Kill the FunctionTimer code; r=vlad
2012-09-19 16:59:38 -04:00
Mark Capella
5a5ba0a45c
Bug 785091 - Remove nsIEditorObserver, r=ehsan
2012-09-17 11:14:56 -04:00
Peter Van der Beken
71b55b1f68
Fix for bug 788532 (Add the new DOM bindings API to DOM lists). r=bz.
...
--HG--
extra : rebase_source : 18e21a786b6a9cc2aeada52ba5ca3a2614cb596b
2012-09-05 22:49:53 +02:00
Boris Zbarsky
bdd656ebd3
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
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
Charly Molter
db958503bc
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
c7a5b33778
Bug 716822 - Move attributes and methods on nsIDOMNSEvent to nsIDOMEvent; r=smaug
2012-08-04 09:44:00 +02:00
Ed Morley
bba173e66e
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
babf67cce2
Bug 716822 - Move attributes and methods on nsIDOMNSEvent to nsIDOMEvent; r=smaug
2012-08-04 09:44:00 +02:00
Aryeh Gregor
e806eeab4f
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Aryeh Gregor
b0041eadcc
Bug 772807 - Clean up editor/ includes with include-what-you-use; r=ehsan
2012-07-13 09:33:42 +03:00
David Zbarsky
ae718ee1c0
Bug 763350 - Clean up some includes in content/ and dom/ r=smaug
2012-07-01 16:45:59 -07:00
Charly Molter ext:(%20and%20Alexandre%20Dumont%20%3CAlexandre%20Dumont%20%3E)
f924084c27
Bug 716875 - Make nsTextControlFrame inherits from nsContainerFrame instead of nsStackFrame. r=roc,bz
2012-06-23 13:11:00 +02:00
Ehsan Akhgari
f50c2ec7a7
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
891e38e528
Revert c39d36167b99 due to a horribly munged backout.
2012-06-10 19:44:50 -04:00
Ryan VanderMeulen
f497d31a0a
Backout the bug 754202 backout due to orange.
2012-06-10 19:37:47 -04:00
Ryan VanderMeulen
9c1d160da3
Merge the last PGO-green inbound changeset to m-c
2012-06-10 18:21:22 -04:00
Olli Pettay
ac6b89bfdb
Bug 761613 - Merge nsIPrivateDOMEvent to nsIDOMEvent, r=jst
2012-06-10 21:14:30 +03:00
Aryeh Gregor
6865bb0c16
Bug 762862 - Rename nsTypedSelection to mozilla::Selection; r=ehsan
...
--HG--
rename : layout/generic/nsTypedSelection.h => layout/generic/Selection.h
2012-06-08 17:20:55 +03:00
Aryeh Gregor
b36b8ee24e
Bug 757771 part 4 - Create new nsContentUtils::GetSelectionInTextControl method; r=ehsan
2012-06-07 18:00:58 +03: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
Frank Yan
0a903d1211
Bug 673873 - Display placeholder when focusing empty input. r=mounir
2012-05-24 03:54:25 -07:00
Ed Morley
019cfa6b7f
Backout 0d782874abea, 75571af38ce5 & bfd3a65c0feb (bug 673873) for increasing the failure rate of bug 702184
2012-05-24 14:12:19 +01:00
Frank Yan
4483e800c1
Bug 673873 - Display placeholder when focusing empty input. r=mounir
2012-05-24 03:54:25 -07:00
Ed Morley
c5acb642c1
Merge mozilla-central to mozilla-inbound
2012-05-21 13:19:38 +01:00
Gervase Markham
ca171eec44
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
L. David Baron
54995e2a8e
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
783825908b
Bug 722599 - Move change event firing to content from layout r=mounir
2012-05-07 12:27:24 -04:00
Masayuki Nakano
2ab8e3fb4a
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
72e8d1d540
Bug 731615 - Eliminate duplicate headers in layout. rs=smontagu
2012-02-29 10:57:47 -05:00
L. David Baron
5eb8920348
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
0a52de4032
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
e96cf389ad
Bug 682611 - Part 2: Remove nsIRange; r=smaug
2012-01-10 15:19:54 +01:00
L. David Baron
4053e3de9f
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
567f4260b6
Bug 684821 - Remove nsIDOMNSHTMLElement; r=peterv
2011-10-29 22:03:55 +02:00
Olli Pettay
a86b1a4d43
Bug 682420 - Rename nsINode::GetOwnerDoc to nsINode::OwnerDoc, part 1, r=jst
...
--HG--
extra : rebase_source : baf1a25cdea68d499a7673fdf96e27b5a12dc83c
2011-10-18 13:53:36 +03: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
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
Randell Jesup
b20b338621
Bug 682684: handle frames being deleted when running EditorInitializer when under scriptblocker r=roc
2011-09-19 23:14:47 -04:00
Ms2ger
b12351fbda
Bug 672054 - Part a: Remove nsIDOMNSUIEvent; r=smaug
2011-08-26 09:43:49 +02: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
Jonas Sicking
5491caaaf4
Bug 661297 Part 1: Remove Add/RemoveEventListenerByIID API. r=smaug
2011-08-08 11:26:26 -07:00
Ehsan Akhgari
473351faa5
Bug 674820 - input/textarea.selectionStart/selectionEnd/selectionDirection should not require the presence of a frame; r=bzbarsky
...
--HG--
rename : layout/reftests/editor/selection_visibility_after_reframe.html => layout/reftests/editor/selection_visibility_after_reframe-3.html
2011-07-29 17:31:57 -04:00
Ehsan Akhgari
2f51d73796
Bug 674558 - Implement the HTML5 selectionDirection property for text controls (input and textarea); r=bzbarsky
2011-07-28 13:51:22 -04:00
Jonas Sicking
5e5e6bd544
Bug 658714 Part 10: Remove nsIDOM3EventTarget/nsIDOMEventGroup. r=smaug
2011-06-23 19:18:02 -07:00