Commit Graph

747 Commits

Author SHA1 Message Date
Robert O'Callahan
64eabc5eba Bug 811301. Part 2: Remove saved state IDs now that the root scroll frame state is captured normally. r=mats 2012-11-14 22:40:17 -08:00
Daniel Glazman
e8b28e1b27 Bug 811679 - Add nsIEditorObserver back; r=ehsan 2012-11-14 11:23:35 -08:00
Ehsan Akhgari
27d839024f Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Peter Van der Beken
ce50619032 Fix for bug 804991 (Make FromContent expect a non-null pointer and add FromContentOrNull). r=bz.
--HG--
extra : rebase_source : 52e1c9171d05ba034971cfa16741e12061e7335d
2012-09-26 16:17:51 +02:00
Mounir Lamouri
da6e093826 Bug 807613 - Add a pref to make the placeholder disappear when a text field is focused. r=bz 2012-11-09 10:32:58 +00:00
Mounir Lamouri
e6173e597b Bug 809585 - Remove nsITextControlFrame::GetTextLength. r=bz 2012-11-09 10:32:01 +00:00
Mounir Lamouri
814916f44b Bug 809584 - Move the placeholder visibility logic to nsTextEditorState. r=ehsan 2012-11-09 10:31:34 +00:00
Mounir Lamouri
7bf1a0c5fe Bug 737786 - 5/5 - Add pointer-events: none; in ::-moz-placeholder styling and test it. r=bz 2012-11-09 10:27:03 +00:00
Mounir Lamouri
e021a7f583 Bug 737786 - 2/5 - Use a pseudo-element instead of a pseudo-class for placeholder styling. r=bz 2012-11-09 10:24:23 +00:00
Mounir Lamouri
6955c37132 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
Daniel Holbert
373b4bed60 Bug 806001: Make nsListControlFrame pass a nsDidReflowStatus instead of a nsReflowStatus in its DidReflow calls. r=dbaron 2012-11-08 17:27:48 -08:00
Mats Palmgren
6cc0930e46 Bug 805153 - Check with the focus manager if our *content* is already focused. r=roc 2012-11-02 01:52:59 +01:00
Mats Palmgren
01cc61dab4 Bug 806056 - Make nsContainerFrame destroy abs/fixed pos. child frames unless a derived class already did so. Assert that there are no abs/fixed pos. child frames in nsFrame::DestroyFrom(). r=roc 2012-11-02 01:52:59 +01:00
Mats Palmgren
884cb6ddb8 Bug 806364 - Calculate dropdown height based on number of child frames for <option>s and <optgroup>s with non-empty label, instead of GetNumberOfOptions() which only includes <option> nodes. r=roc 2012-10-31 23:00:36 +01:00
Mats Palmgren
509fcab5bf Bug 803995 - Dispatch an nsAsyncRollup event (that calls RollupFromList) only if we're dropped down since otherwise it might reset mouse capturing for other content. r=roc 2012-10-31 06:10:38 +01:00
Mats Palmgren
2cedc9a480 Bug 807174 - Drop-down list used inside a frameset document renders outside the frame. r=roc 2012-10-31 06:10: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
Neil Deakin
88623b8f02 Bug 701760, merge <select> and popup manager rollup handling, so that select elements don't cancel out any popup rollup listeners, r=mats 2012-10-26 09:15:22 -04:00
Matt Woodrow
b280c405c4 Bug 803556 - Schedule a paint whenever we reflow a display root frame. r=roc 2012-10-25 12:04:41 +13:00
Olli Pettay
efe22ceaf9 Bug 802985, PreDestroy editor, r=ehsan 2012-10-20 21:48:34 +03:00
Daniel Holbert
7d881449a1 Bug 542039 followup: Replace "namespace ... = mozilla::..." with "using namespace mozilla", to fix build error w/ --disable-accessibility. rs=tbsaunde 2012-10-15 15:44:34 -07:00
Trevor Saunders
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
David Zbarsky
d70685476e [Bug 799407] Fix build warnings in layout r=roc 2012-10-10 01:00:05 -04:00
Jesse Ruderman
1964ca2b67 Fix typo. No bug, DONTBUILD. 2012-10-04 23:12:15 -07:00
Jesse Ruderman
895467e126 Remove trailing whitespace. No bug, DONTBUILD. 2012-10-04 23:12:15 -07: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
Robert O'Callahan
a350224ed9 Bug 770106. nsDisplayButtonBorderBackground should use the button's border-box for hit-testing, not its visual overflow area. r=mattwoodrow 2012-09-28 23:19:38 +12:00
Matt Woodrow
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Matt Woodrow
cc33f42c8a Bug 539356 - Part 9b - Add new frame invalidation API. r=roc 2012-08-29 17:39:01 +12:00
Matt Woodrow
c900597192 Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc 2012-08-29 17:39:01 +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
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12: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
Ehsan Akhgari
70ba385729 Bug 792502 - Kill the FunctionTimer code; r=vlad 2012-09-19 16:59:38 -04:00
Mark Capella
3ea938ca2a Bug 785091 - Remove nsIEditorObserver, r=ehsan 2012-09-17 11:14:56 -04:00
Peter Van der Beken
d21c8a19b6 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
Ms2ger
9c7def14f2 Bug 788491 - Remove kSizeNotSet constants; r=roc 2012-09-17 10:37:20 +02:00
Matt Woodrow
5e4a9f531a Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc 2012-09-16 22:32:59 +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
Andrew Quartey
d4c82a3e4a Bug 786172 - Fire change event for file dropped on file select box r=mounir 2012-09-14 10:38:04 -04:00
Arnaud Bienner
ada732679d Bug 790093 - Remove unnecessary const_cast in nsGfxButtonControlFrame.cpp. r=sicking 2012-09-11 11:26:29 +01:00
Bobby Holley
e04e482496 Bug 789494 - Rip enablePrivilege out of misbehaving mochitests. r=mccr8 2012-09-11 01:05:10 -07:00
Andrew McCreight
0e9f97bd16 Bug 775868, part 1: make tests access DomWinUtils via SpecialPowers. r=smaug 2012-09-10 12:43:45 -07:00
Ryan VanderMeulen
2ff849733d Backout bug 788914 and bug 789494 because they were backed out on inbound. 2012-09-07 19:40:57 -04:00
Bobby Holley
1aba2e3bc2 Bug 789494 - Rip enablePrivilege out of misbehaving mochitests. r=mccr8 2012-09-07 11:28:56 -07:00
Mats Palmgren
955816d1f7 Bug 783405 - Remember the y-positions used for estimating space above and below for the dropdown. r=smaug,roc 2012-09-06 02:17:57 +02:00
Aryeh Gregor
5cb11391e0 Bug 782594 - Use NS_FAILED instead of boolean test (content/, js/xpconnect/, layout/); r=bz 2012-08-07 17:58:47 +03:00
Boris Zbarsky
0e7df9c9c0 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
Boris Zbarsky
6203f67c1c Bug 785754. Fix handling of max-height for frame classes that still seem to think that the mComputedMinHeight/mComputedMaxHeight of a reflow state are border-box heights, not content-box heights. r=mats 2012-08-27 15:46:23 -04:00