Commit Graph

381 Commits

Author SHA1 Message Date
Masayuki Nakano
29ac54f8a6 Bug 805306 Get rid of nsIMEStateManager::OnTextStateBlur() and nsIMEStateManager::OnTextStateFocus() r=smaug 2012-10-26 09:49:13 +09:00
Nikhil Marathe
655bc4632d Bug 804174 - Inline IsCallerTrustedForWrite with IsCallerChrome. r=mccr8 2012-10-25 16:10:54 -07:00
Peter Van der Beken
7cda84f5e5 Fix for bug 801083 (Remove old proxy-based list bindings). r=bz. 2012-10-13 14:50:24 +02:00
Peter Van der Beken
82b618706e Fix for bug 773780 (Add API for new DOM bindings for Node). r=bz. 2012-10-09 14:31:24 +02:00
Masayuki Nakano
c1a783f7b1 Bug 705057 part.1 Ensure a set of composition events is fired on same content r=smaug 2012-09-26 14:47:45 +09:00
David Zbarsky
857c4a57f6 Backout bug 779684 for topcrash 2012-10-15 14:35:50 -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
Randell Jesup
3b4961b603 Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -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
Jan Varga
c9f27fa528 Bug 779684 - Move FrameIteratorFlags to nsFrameIterator class. r=roc 2012-08-06 20:27:04 -04:00
David Zbarsky
2d1e72a475 Bug 779684: Create a stack-based nsFrameIterator class out of nsIFrameTraversal and nsIFrameEnumerator r=roc 2012-08-05 23:00:55 -04:00
Neil Deakin
7a6cd04f49 Bug 777339, Use prlogging for focus instead of enabling a define, allowing for easier enabling of focus logging, r=smaug 2012-07-30 20:43:28 -04:00
Aryeh Gregor
6b3ee254ff Bug 777292 - Convert incorrect conversions to nsresult and fix named constants; r=ehsan 2012-07-27 16:59:29 +03:00
Aryeh Gregor
8b4a23fc4c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Tim Taubert
64d5b5f8c7 Bug 771555 - Revert setting DEBUG_FOCUS to avoid spamming the console; rs=jdm,unfocused 2012-07-11 11:12:44 +02:00
Michael Ratcliffe
2c28c97247 Bug 771555 - GCLI needs a addon, resize, restart, cookie and pagemanip commands; r=dcamp,jwalker 2012-07-10 17:53:04 +01:00
David Zbarsky
9050aef271 Bug 763350 - Clean up some includes in content/ and dom/ r=smaug 2012-07-01 16:45:59 -07:00
Chris Jones
3dd62cdedf Bug 761927: Fix focus for <iframe mozbrowser remote>. r=jlebar,Enn 2012-06-22 18:27:30 -07:00
Mats Palmgren
bffc2c8faf Bug 575294, bug 760946. part=1/5 r=enndeakin,smaug 2012-06-23 03:13:56 +02:00
Andrew McCreight
42a9fa424a Bug 750820 - make oldFocusedContent an nsCOMPtr in nsGlobalWindow::PageHidden. r=bz 2012-05-18 15:19:34 -07:00
Aryeh Gregor
463121ea8c Bug 762862 - Rename nsTypedSelection to mozilla::Selection; r=ehsan 2012-06-08 17:20:55 +03:00
Ms2ger
45c3e6dc46 Bug 760156 - Cleanup LOCAL_INCLUDES in content/media/; r=sicking
This patch makes it possible to include nsGenericHTMLElement.h without adding
to LOCAL_INCLUDES.
2012-06-06 09:40:02 +02:00
Mats Palmgren
8948fc60fc Back out bug 575294, bug 726264. (cset 1727de7d26ec, 6bcea3a628d8, 011c1c8e9cc7, 0be261a5042b, d51338c5cd0c) 2012-06-03 18:05:00 +02:00
Mats Palmgren
1ea6b798d1 Bug 575294. part=1/4 r=enndeakin 2012-06-02 01:41:54 +02:00
Neil Rashbrook
10d4aa2217 Bug 626441 Moving the caret should not look for panels r=Enn 2012-05-30 08:39:17 +01:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Trevor Saunders
3cd54a7fc5 bug 693933 - make nsFrameSelection::GetSelection() return nsTypedSelection* r=smaug 2012-04-06 17:54:38 -04:00
Adam Dane [:hobophobe]
4be7089305 Bug 720126 - Update scroll API to use ScrollAxis parameters (where and when). r=roc 2012-03-19 21:09:50 -05:00
Tim Taubert
99e94d98ff Bug 731726 - Moving the parentNode of a focused DOM node does not remove the node's focus ring; r=Enn 2012-03-05 20:59:50 +01:00
Neil Deakin
a14361e942 Bug 653230, add panels with focusable elements into the document tab navigation order, r=smaug 2012-02-23 16:02:33 -05:00
Neil Deakin
50489236c4 Bug 670317, add a focus manager flag to restrict tab navigation to the same frame, r=smaug 2012-02-13 14:24:28 -05:00
Ms2ger
5aaaad9380 Bug 718504 - Remove some GetChildAt callers; r=smaug 2012-01-25 08:50:07 +01:00
Olli Pettay
ecdf5a14fc Bug 704583 - Add testing mode to FocusManager, p=enn,smaug r=smaug,enn 2012-01-13 14:42:18 +02:00
Neil Rashbrook
311401e855 Bug 669026 Fix caret movement when contenteditable areas are present r=ehsan 2011-12-24 00:11:30 +00:00
Chris Pearce
5e45c964ef Bug 706672 - Revoke DOM full-screen when windowed plugin focused on non-MacOSX systems, and deny requests for full-screen from non-focused-tab documents. r=smaug 2011-12-16 10:42:36 +13:00
Masayuki Nakano
c7b04c3d79 Bug 685395 part.3 Rename SetInputMode()/GetInputMode() to SetInputContext()/GetInputContext() and make SetInputContext() take the reason by a separated argument r=roc, sr=matspal 2011-11-27 20:51:52 +09:00
Masayuki Nakano
6e0992af09 Bug 685395 part.2 Move IMEContext to mozilla::widget::InputContext r=roc 2011-11-27 20:51:52 +09:00
Eitan Isaacson
5ee7fc420f Bug 700741 - Add and implement nsIFocusManager.elementIsFocusable r=Enn 2011-11-10 08:20:47 -08:00
Timothy Nikkel
6c713be6ea Bug 658005. Part 2. Add a frame visibility API that takes into account everything we need, and use it. r=roc 2011-10-26 18:57:55 -05:00
Olli Pettay
9f3a97207e Bug 695758 - Don't limit E10s event/focus handling to xul:browser, but allow also xul:iframe, r=felipe 2011-10-20 15:11:31 +03: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
Yazen Ghannam
97959aad55 Bug 677085 - Merge "nsIDOMNSHTMLFrameElement" into "nsIDOMHTMLFrameElement"; r=bz 2011-10-15 09:34:31 +02: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
Alexander Surkov
6aff769f3a Bug 673958 - rework accessible focus handling, r=enndeaking, marcoz, tbsaunde, matspal, f=marcoz 2011-09-28 10:46:11 +09:00
Masayuki Nakano
9b3db49f2f Bug 669028 part.8 dom should use mozilla::LookAndFeel rather than nsILookAndFeel r=enndeakin 2011-09-09 11:27:12 +09:00
Ehsan Akhgari
03f689dea6 Bug 677661 - Remove nsTPtrArray and add a SafeElementAt(index_type) API to nsTArray when it's instantiated with a pointer type; r=sicking 2011-08-10 01:36:00 -04:00
Felipe Gomes
9d6c83e1a7 Bug 583976. Part 1 - Add focus manager support for focus activation/deactivation in remote content. r=enn,smaug 2011-06-17 17:08:32 -07:00
Jonas Sicking
9e55f5c437 Bug 658714 Part 5: Search'n'replace nsPIDOMEventTarget to nsIDOMEventTarget. r=smaug 2011-06-23 19:18:00 -07:00
Olli Pettay
8695341baa Bug 664438 - Don't keep DelayedBlurFocusEvents alive after xpcom-shutdown, e=enndeakin 2011-06-18 12:12:13 +03:00