Commit Graph

159 Commits

Author SHA1 Message Date
Kyle Machulis
d02dd47205 Bug 1406224 - Remove nsIDOMHTMLImageElement; r=bz
MozReview-Commit-ID: GCATWRt6qMo
2017-10-06 13:27:23 -07:00
Nicholas Nethercote
7dbfdaf890 Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP
2017-10-03 09:05:19 +11:00
Catalin Badea
fc6ab5f0ea Bug 651120 - Remove index argument from content removed/appended/inserted notifications. r=peterv 2017-10-03 11:09:08 +01:00
Sebastian Hengst
b36c461e52 Backed out changeset 0ce8d073a16e (bug 256180) 2017-09-28 11:30:33 +02:00
Henri Sivonen
d2c77a8997 Bug 256180 parser part - Insert elements as siblings instead of children at the Blink-defined magic depth for compatibility. r=smaug
MozReview-Commit-ID: K8fgv3rgklt
2017-09-12 16:57:05 +03:00
Nicholas Nethercote
9fda5528d2 Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam.
This patch merges nsAtom into nsIAtom. For the moment, both names can be used
interchangeably due to a typedef. The patch also devirtualizes nsIAtom, by
making it not inherit from nsISupports, removing NS_DECL_NSIATOM, and dropping
the use of NS_IMETHOD_. It also removes nsIAtom's IIDs.

These changes trigger knock-on changes throughout the codebase, changing the
types of lots of things as follows.

- nsCOMPtr<nsIAtom> --> RefPtr<nsIAtom>

- nsCOMArray<nsIAtom> --> nsTArray<RefPtr<nsIAtom>>
  - Count() --> Length()
  - ObjectAt() --> ElementAt()
  - AppendObject() --> AppendElement()
  - RemoveObjectAt() --> RemoveElementAt()

- ns*Hashtable<nsISupportsHashKey, ...> -->
  ns*Hashtable<nsRefPtrHashKey<nsIAtom>, ...>

- nsInterfaceHashtable<T, nsIAtom> --> nsRefPtrHashtable<T, nsIAtom>
  - This requires adding a Get() method to nsRefPtrHashtable that it lacks but
    nsInterfaceHashtable has.

- nsCOMPtr<nsIMutableArray> --> nsTArray<RefPtr<nsIAtom>>
  - nsArrayBase::Create() --> nsTArray()
  - GetLength() --> Length()
  - do_QueryElementAt() --> operator[]

The patch also has some changes to Rust code that manipulates nsIAtom.

MozReview-Commit-ID: DykOl8aEnUJ
2017-09-26 08:33:21 +10:00
Nicholas Nethercote
e8236888ee Bug 1401813 - Rename Null[C]String() as Void[C]String(). r=erahm.
XPCOM's string API doesn't have the notion of a "null string". But it does have
the notion of a "void string" (or "voided string"), and that's what these
functions are returning. So the names should reflect that.
2017-09-22 14:35:46 +10:00
John Dai
e12408afb5 Bug 1398401 - Add preference check for custom element setup. r=smaug 2017-09-12 00:40:00 -04:00
Henri Sivonen
fa792cb56c Bug 1375701 - Atomize class attribute value in the parser in the innerHTML case. r=Ehsan
MozReview-Commit-ID: CKyGlzYS15e
2017-08-11 09:22:57 +03:00
Sebastian Hengst
7e433bbe75 Backed out changeset fabf345eec6e (bug 1375701) for bustage at parser/html/nsHtml5String.h:143:3: bad implicit conversion constructor for 'nsHtml5String'. r=backout on a CLOSED TREE 2017-08-15 16:28:10 +02:00
Henri Sivonen
8d12eac1f2 Bug 1375701 - Atomize class attribute value in the parser in the innerHTML case. r=Ehsan
MozReview-Commit-ID: CKyGlzYS15e
2017-08-11 09:22:57 +03:00
Henri Sivonen
3b532a7391 Bug 483155 - Put content creator function pointers onto nsHtml5ElementName. r=smaug
MozReview-Commit-ID: E2AAx7Zz2UF
2017-07-04 11:00:03 +03:00
Sebastian Hengst
b20f04d43a Backed out changeset 5b706cd241cb (bug 483155) for Valgrind failure on Linux x64 opt. r=backout 2017-08-11 10:48:10 +02:00
Henri Sivonen
b2625c0d7e Bug 483155 - Put content creator function pointers onto nsHtml5ElementName. r=smaug
MozReview-Commit-ID: E2AAx7Zz2UF
2017-07-04 11:00:03 +03:00
Nicholas Nethercote
723f585d9c Bug 1386600 - Change nsIStringBundle methods to return |AString| instead of |wstring|. r=emk,sr=dbaron.
This removes about 2/3 of the occurrences of nsXPIDLString in the tree. The
places where nsXPIDLStrings are null-checked are replaced with |rv| checks.

The patch also removes a couple of unused declarations from
nsIStringBundle.idl.

Note that nsStringBundle::GetStringFromNameHelper() was merged into
GetStringFromName(), because they both would have had the same signature.
2017-08-04 14:40:52 +10:00
Bevis Tseng
2ecbda13e2 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm 2017-07-26 16:13:35 +08:00
Henri Sivonen
cc83c1cd0f Bug 1266495 - Remove <isindex>. r=wchen
MozReview-Commit-ID: KM0sTMM1GaD
2017-07-05 11:42:04 +03:00
Henri Sivonen
c3862d6f4b Bug 1333333 - Label runnables in the HTML parser (again). r=billm.
MozReview-Commit-ID: 1Z89LSr46dN
2017-06-27 10:38:30 -07:00
Masatoshi Kimura
a725dc3e13 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Sebastian Hengst
9736fc0664 Backed out changeset 7235d05662b0 (bug 1373984) for Android bustage. r=backout on a CLOSED TREE 2017-06-25 18:30:13 +02:00
Masatoshi Kimura
cff1fdcb48 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Wes Kocher
d214d1f5fa Backed out changeset 77af189b5c49 (bug 1373984) for build bustage in nsHtml5Parser.cpp a=backout CLOSED TREE
MozReview-Commit-ID: 6kBmU71j2To
2017-06-25 05:10:14 -07:00
Masatoshi Kimura
d3e74dcb2d Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14
2017-06-18 20:37:50 +09:00
Henri Sivonen
62b1a36ca4 Backout changeset 3d64bdd31c15 (bug 1333333) for causing bug 1367067, bug 1367085 and bug 1367330.
MozReview-Commit-ID: E7Q3LQDXgIA
2017-05-24 11:35:33 +03:00
Henri Sivonen
50f9822551 Bug 1333333 - Label runnables in the HTML parser. r=billm
MozReview-Commit-ID: 6ItIgFSSR2s
2017-05-15 15:54:54 +03:00
Henri Sivonen
43720a8e05 Bug 1269490 - Merge nsHtml5Atoms into nsGkAtoms. r=wchen
MozReview-Commit-ID: EcfnXkFuJy3
2017-04-20 11:47:02 +03:00
Henri Sivonen
cb263a268d Bug 1347737 - Introduce a new non-heap-allocated type for holding nsStringBuffer* in the HTML parser. r=wchen.
MozReview-Commit-ID: Gn9fXroxQhY
2017-03-20 14:45:15 +02:00
Kris Maglione
142d32b864 Bug 1333990: Part 2c - Interrupt the flush loop after inserting document element. r=hsivonen
In order to asynchronously load content scripts that need to run very early in
the page load cycle, we need to be able to block further parsing from the
document-element-inserted observer, before any page scripts are loaded.
Interrupting the flush loop after the document element is inserted allows
the observers to run, and temporarily block further parsing if necessary.

MozReview-Commit-ID: A6D2T52Mlx4
2017-03-16 18:50:28 -07:00
Andrew McCreight
79f8186a35 Bug 1333971 - Label nsHtml5SVGLoadDispatcher runnable. r=smaug
MozReview-Commit-ID: LmCbNw5qQft
2017-01-30 11:57:49 -08:00
Jonathan Kingston
e9efd52518 Bug 1330294 - Fixing disabled script tags that cause crashes in disabled SVG nodes r=hsivonen,smaug
MozReview-Commit-ID: Lr4s98aZM4W
2017-01-11 16:29:13 +00:00
Jonathan Kingston
87bc70f75d Bug 1216893 - Add in disabled namespace for SVG r=hsivonen,smaug
MozReview-Commit-ID: 7Gum6wazraS
2016-12-01 07:41:22 +00:00
Thomas Wisniewski
2f1accbc40 Bug 1305202 - Use NullString() more and remove superfluous Truncates(). r=smaug 2016-09-23 21:10:01 -04:00
Nicholas Nethercote
0b805da907 Bug 1297300 - Add missing checks to GetSpec() calls in parser/. r=hsivonen. 2016-08-31 12:13:59 +10:00
Edgar Chen
f37acbbb74 Bug 1275835 - Part 1: Move custom element codes from nsDocument to CustomElementsRegistry; r=wchen
MozReview-Commit-ID: 9gTSFrYW7o3
2016-08-30 11:48:53 +08:00
Nicholas Nethercote
e7de4ef9fc Bug 616421 - Better distinguish invalid mOpCode values in nsHtml5TreeOperation::Perform. r=hsivonen.
This patch:

- Removes eTreeOpAddError{Atom,TwoAtoms}, which are unused.

- Adds a MOZ_CRASHing case for eTreeOpUninitialized.

- Reorders the cases in the switch to match the enum declaration order, which
  makes it easier to see that all opcodes are now covered.
2016-06-02 17:49:44 +10:00
Aryeh Gregor
c4a3296430 Bug 1264270 - Parser should output attributes in source order, not reversed; r=hsivonen,bgrins 2016-05-01 15:15:26 +03:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Mike Hommey
338d086ead Bug 1134920 - Use moz_xmalloc/moz_xrealloc/free instead of nsMemory::Alloc/Realloc/Free. r=nfroyd 2015-04-01 13:51:45 +09:00
William Chen
b3789d6fc4 Bug 1081039 - cloneNode on a custom element should call createdCallback if cloned in a document with a custom element definition. r=smaug 2014-12-22 18:19:08 -08:00
William Chen
fdf3148d35 Bug 1091425 - Use the correct document when creating nodes in the HTML5 parser. r=hsivonen 2014-11-09 22:50:18 -08:00
Henri Sivonen
89552abfc6 Bug 1088635. r=smaug. 2014-11-05 17:44:37 +02:00
Diwas Joshi
cca79e512e Bug 617789 - Links in view page source when base href exists fixed. r=hsivonen. 2014-09-30 12:35:17 +03:00
Henri Sivonen
81214d3416 Bug 616421 preparation - Make bogus tree op enum crashes distinct from bogus pointers in append tree op. r=smaug. 2014-09-15 14:50:12 +03:00
William Chen
672980a40c Bug 1032654 - Remove invalid assertion from HTML parser. r=smaug 2014-07-07 18:09:39 -07:00
Kyle Huey
0c88b519d9 Bug 737976: Remove nsINodeInfo. r=smaug 2014-06-19 19:01:40 -07:00
Olli Pettay
948ecb7f4b Bug 902618 - Parser notifies about subtree roots, but not their descendants, r=hsivonen,bz 2014-06-17 02:01:22 +03:00
Boris Zbarsky
8bf32acd93 Bug 998356. Don't completely fail out of the parser if we can't format one of our string error messages. r=hsivonen 2014-05-23 17:32:37 -04:00
Birunthan Mohanathas
1ebdb921a5 Bug 869836 - Part 2: Use AppendLiteral instead of Append(NS_LITERAL_STRING(...)). r=ehsan 2014-05-22 06:48:50 +03:00
Henri Sivonen
0bb0daf4bd Bug 959150 part 7 - Retain probable bugs instead of changing behavior right now. r=smaug. 2014-03-05 21:38:50 +02:00
Henri Sivonen
d07d56d994 Bug 959150 part 4 - Avoid using tree ops when parsing with nsHtml5StringParser. r=smaug. 2014-03-05 21:38:50 +02:00