Граф коммитов

3154 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione d038453393 Bug 1406278: Part 2c - Use subject principal as triggering principal in <img> "srcset" attribute. r=bz
MozReview-Commit-ID: 784EsgwBcS1

--HG--
extra : rebase_source : 01b701f84c425786b66cd9787d4e570dd9341ae5
2017-10-02 21:30:34 -07:00
Kris Maglione d72aa193c4 Bug 1406278: Part 2b - Use subject principal as triggering principal in <img> "src" attribute. r=bz
MozReview-Commit-ID: DrblTjP99WJ

--HG--
extra : rebase_source : 649cf6757266c9e08a3f5a621c3e9451a7ccef67
2017-10-02 20:28:32 -07:00
Kris Maglione 4275cd1039 Bug 1406278: Part 1 - Pass subject principal to SetAttribute and friends. r=bz
In order to tailor certain security checks to the caller that is attempting to
load a particular piece of content, we need to be able to attach an
appropriate triggering principal to the corresponding requests. Since most
HTML content is loaded based on attribute values, that means capturing the
subject principal of the caller who sets those attributes, which means making
it available to AfterSetAttr hooks.

MozReview-Commit-ID: BMDL2Uepg0X

--HG--
extra : rebase_source : 25e438c243700a9368c393e40e3a6002d968d6c8
2017-10-09 14:33:38 -07:00
Kyle Machulis 669ff05b49 Bug 1406525 - Remove nsIDOMHTMLLinkElement; r=bz
MozReview-Commit-ID: 4xUSQ8SiIqX
2017-10-09 16:09:38 -07:00
Jorg K 49156443d9 Bug 1403658 - Add nsString overload for HTMLAnchorElement::GetName() and HTMLBodyElement::GetBackground(), add HTMLBodyElement::FromContentOrNull(). r=bz 2017-10-09 07:19:00 -04:00
Nicholas Nethercote d225f7151b 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

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
JW Wang 49c2485657 Bug 1402584. P2 - reset readyState to HAVE_NOTHING before loading next source child. See comment 18 for the root cause. r=gerald on a CLOSED TREE
Also assert readyState is HAVE_NOTHING before creating a new decoder.

MozReview-Commit-ID: B0QACf96AA3

--HG--
extra : amend_source : ef4b41db04ee10f7eaae8f388d984ed0fd0863b5
2017-10-08 17:08:00 +02:00
JW Wang f23594e114 Bug 1402584. P1 - Backed out changeset 442e8020e2ac. r=gerald
MozReview-Commit-ID: JqZJDTMyKGm
2017-10-08 17:07:55 +02:00
Sebastian Hengst e25887767b Backed out changeset e17425d9f940 (bug 1402584) for frequent mda failures on Windows 10, e.g. in dom/media/test/test_seek-2.html. r=backout
--HG--
extra : amend_source : 6e736c36d615c4662faf63612ef72935eeaa27c9
2017-10-08 01:16:34 +02:00
Sebastian Hengst 1b9a243342 Backed out changeset e80105b6353d (bug 1402584) 2017-10-08 01:16:29 +02:00
JW Wang f60e753628 Bug 1402584. P2 - reset readyState to HAVE_NOTHING before loading next source child. See comment 18 for the root cause. r=gerald
Also assert readyState is HAVE_NOTHING before creating a new decoder.

MozReview-Commit-ID: B0QACf96AA3

--HG--
extra : rebase_source : f89bd84b130273ff734471619485d5f12a83006d
extra : source : 9b63f9eaa250ebe7259cc7fab709aac00858aaf6
2017-10-07 09:05:56 +08:00
JW Wang bc8e42651b Bug 1402584. P1 - Backed out changeset 442e8020e2ac. r=gerald
MozReview-Commit-ID: JqZJDTMyKGm

--HG--
extra : rebase_source : 944bc58aa562de066854668746e4af158d747484
extra : source : 394da3f085e52296e62af852add26e72fa688a62
2017-10-07 07:58:19 +08:00
Sebastian Hengst 5d61e2eec8 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JDCYKq7yKwb
2017-10-07 10:45:11 +02:00
Kyle Machulis 6a4d37f8bb Bug 1403819 - Remove nsIDOMHTMLCanvasElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLCanvasElement, replacing it
with binding class usage.

MozReview-Commit-ID: DQJhqGlY8U6
2017-10-06 10:49:26 -07:00
Kyle Machulis 2090426dc0 Bug 1405792 - Remove nsIDOMHTMLIFrameElement r=bz
MozReview-Commit-ID: 1u9C66X8j59

--HG--
extra : rebase_source : 5d87fe933170e32fbb44e24ec843623e143164d2
2017-10-04 20:41:24 -07:00
JW Wang e1a489f570 Bug 1405962. P2 - use thread-safe ref counting. r=gerald
These listeners will be AddRefed/Released off the main thread when
OMT data delivery is enabled.

MozReview-Commit-ID: CSOBgNNf3OW

--HG--
extra : rebase_source : d9085c6447e51d3aa9cad79fa1e25d986fdee792
extra : intermediate-source : 21be6f0003e6d3ccf4448e6574ea5d3122665155
extra : source : 8ce13766af359b5e55524e47ea74bcfc0e0133f8
2017-09-20 17:14:01 +08:00
Wes Kocher 8c2d84a198 Backed out changeset 959244bbe99d (bug 1403819) for windows build failures in TaskbarPreview.cpp a=backout CLOSED TREE
MozReview-Commit-ID: 6nOitwKk7JX

--HG--
extra : amend_source : 3eb1aecc07ab474fe3e1b5d9157bcb751a2d89d4
2017-10-05 17:43:43 -07:00
Kyle Machulis 3ea37c285d Bug 1403819 - Remove nsIDOMHTMLCanvasElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLCanvasElement, replacing it
with binding class usage.

MozReview-Commit-ID: DQJhqGlY8U6

--HG--
extra : rebase_source : a33146a22ee356a0840bb9fef82d51b2b315f6d7
2017-09-28 12:17:07 -07:00
JW Wang 06967bc27c Bug 1402584 - add logs for debugging. See comment 5 for the detail. r=gerald
MozReview-Commit-ID: 48zKkVt5hbK

--HG--
extra : rebase_source : 91a12ef83c5b2560eafe9f41226bfa87413aba92
2017-10-02 13:51:04 +08:00
bechen@mozilla.com d262781541 Bug 1324883 - part2: Once a MediaElement receive document unload event, remove all MediaElements in gElementTable with the same uri. r=jwwang
MozReview-Commit-ID: 7Z0ouKsebp8

--HG--
extra : rebase_source : ffb52a12f9a31280dc3be1093b73099394fe7a17
2017-10-03 12:07:13 +08:00
bechen@mozilla.com b6e091b3ea Bug 1324883 - Shutdow the decoder when receiving nsIWebProgressListener with flag LOAD_RELOAD_BYPASS_PROXY_AND_CACHE in docshell. r=jwwang,smaug
We register the nsIWebProgressListener at the root docshell(GetSameTypeRootTreeItem) to handle video element embedded in iframe.

MozReview-Commit-ID: D4CavLDAnKD

--HG--
extra : rebase_source : 93032297272bbfc8570dce0c8c13ea9f0d45f7a8
2017-10-03 12:07:09 +08:00
Kyle Machulis e54a4653ba Bug 1404079 - Remove nsIDOMHTMLFrameElement; r=bz
MozReview-Commit-ID: GSvMwRpl7g4

--HG--
extra : rebase_source : a5e8ee45bae90eaa9ecdcc6f0bac0c9dac0ce2c8
2017-09-28 19:06:14 -07:00
Wes Kocher 6dc323cfe9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: Dxbv9TjDlDY
2017-10-04 16:47:41 -07:00
Wes Kocher d8985b6e57 Merge inbound to central, a=merge
MozReview-Commit-ID: IUFdbLdYFhX
2017-10-04 16:37:59 -07:00
Florian Quèze d906e37232 Bug 1401919 - Functions used after the seekToNextFrame promise should not be interpreted half the time, r=nbp. 2017-10-04 16:01:04 +02:00
Kyle Machulis 7b422ad271 Bug 1405162 - Simplify CC macros for HTMLOutputElement; r=bz
MozReview-Commit-ID: 4d4ZSztVCCI

--HG--
extra : rebase_source : 9b5b4f7a3175b419782f3b4aacc29db4887cc754
2017-10-02 16:21:17 -07:00
Wes Kocher 9e15b5649f Merge m-c to autoland, a=merge
MozReview-Commit-ID: 43R3aNMoMyN
2017-10-03 14:58:01 -07:00
Kartikaya Gupta 31daec89c0 Bug 1403915 - Remove the layers-free pref entirely and assume it's true at the call sites. r=jrmuizel
MozReview-Commit-ID: 7tLxaBGiE4R

--HG--
extra : rebase_source : 2d2596677ad822eb829c73c7ea90bc76aed871a7
2017-10-03 16:31:07 -04:00
Ryan VanderMeulen 9f63919fe8 Bug 1388764 - Skip test_object_plugin_nav.html on Windows debug builds for frequent mozilla::ipc::MessageChannel::WillDestroyCurrentMessageLoop() shutdown crashes. r=qdot 2017-10-03 14:04:34 -04:00
Kyle Machulis f63f2e6c2a Bug 1402499 - Simplify HTMLAnchorElement CC macros; r=bz
The HTMLAnchorElement macros were basically a verbose version of the
CYCLE_COLLECTION_INHERITED helper macros.

MozReview-Commit-ID: 1bxuKdWUMlG

--HG--
extra : rebase_source : 84f5b0de5b1191d0df5c34bcadf61fca72178769
2017-09-29 12:04:09 -07:00
Wes Kocher 83fd890d27 Merge m-c to autoland, a=merge CLOSED TREE
MozReview-Commit-ID: HeJwJwwTzhQ
2017-10-02 16:26:42 -07:00
Wes Kocher 382a7d90d6 Merge inbound to central, a=merge
MozReview-Commit-ID: CvJ9hmTQBcR
2017-10-02 16:22:37 -07:00
Kirk Steuber 0dc3847027 Bug 1402025 - Ensure form submission flush when unsetting relevant attributes r=bz
It seems that we were flushing any pending submission when changing the action or target attributes of a form, but not when unsetting those attributes.

MozReview-Commit-ID: E6aUnokg54k

--HG--
extra : rebase_source : 1e331b0ce03dbd77a79a8bafa6bb3ea39c6ea22b
2017-09-28 12:09:56 -07:00
Andrea Marchesini 9067ec472c Bug 1404845 - Renaming BlobImpl::GetInternalStream to BlobImpl::CreateInputStream, r=smaug 2017-10-02 13:53:12 +02:00
Olli Pettay 657d54de19 Bug 1402941 - Add HTMLSlotElement (disabled for now), r=hsivonen
--HG--
extra : rebase_source : ced3d844425bee6fddd22641646a7366ffd5d69e
2017-10-02 13:22:12 +03:00
Cameron McCormack 6fdd311839 Bug 1404180 - Don't allow associating form elements by ID to <form>s across anonymous subtree boundaries. r=smaug
MozReview-Commit-ID: KRJjrkL4FgZ

--HG--
extra : amend_source : 80cd5e00804a8b2a5fd4e51b0f7ea9160dd63b1c
2017-10-02 13:10:18 +08:00
Kyle Machulis 6842f6f2a4 Bug 1405169 - Fix/Simplify Refcount and CC macros for HTML Element classes; r=bz
MozReview-Commit-ID: CV77bM0Pq1e

--HG--
extra : rebase_source : e7c6572e07234938a1baaec30f267a73d8fad542
2017-10-02 16:42:09 -07:00
Kyle Machulis 2ac26c5527 Bug 1403795 - Remove nsIDOMHTMLButtonElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLButtonElement, replacing it
with binding class usage.

MozReview-Commit-ID: CzqRb7lI28W
2017-09-29 11:57:19 -07:00
Ryan VanderMeulen ddad6938ab Bug 1388764 - Skip test_iframe_sandbox_plugins.html on debug builds for frequent mozilla::ipc::MessageChannel::WillDestroyCurrentMessageLoop() shutdown crashes. r=qdot 2017-10-03 08:41:40 -04:00
Catalin Badea f8162c4bfd Bug 651120 - Remove index argument from content removed/appended/inserted notifications. r=peterv 2017-10-03 11:09:08 +01:00
Kearwood "Kip" Gilbert c5a2279e20 Bug 1400457 - Isolate VR Rendering from Compositor r=daoshengmu,jgilbert
- WebVR is no longer dependent on PTexture, TextureParent,
  TextureHost, and TextureChild.  It continues to use TextureClient
  for pooling and coordinating locks with other Gecko code.
- PreserveDrawingBuffer now behaving correctly for 2d display mirroring
- Preparation for separating to VR process
MozReview-Commit-ID: 2RGOulCInSu

--HG--
extra : rebase_source : 3542b804c3def36fa74541be32d0e7cbc9698641
2017-07-21 17:30:34 -07:00
Jan Henning f371937595 Bug 1398374 - Part 1 - Add helper method to test for the last non-disabled single line form input. r=bz
We want to treat those specially in IME handling.

MozReview-Commit-ID: 8OI2fDQEiGj

--HG--
extra : rebase_source : 03d15472572c9411cf10e941145e7fdbfd35323e
2017-10-01 15:57:16 +02:00
Jessica Jong f783bf3a95 Bug 1378079 - Part 3: Complete the steps related to custom elements in "create an element for a token". r=hsivonen,smaug
--HG--
extra : rebase_source : c393051fc6f025ff4c013b5349b53c8a5ba2c3c4
2017-10-26 14:55:41 +08:00
Jessica Jong d70b8d543c Bug 1378079 - Part 2: Introduce throw-on-dynamic-markup-insertion counter. r=hsivonen
Per spec, document objects have a throw-on-dynamic-markup-insertion counter,
which is used in conjunction with the create an element for the token algorithm
to prevent custom element constructors from being able to use document.open(),
document.close(), and document.write() when they are invoked by the parser.

--HG--
extra : rebase_source : 7cbc10c77765b84bbaf07a05f205f02169a79ee0
2017-10-26 14:08:35 +08:00
Kyle Machulis e6d0a7ad13 Bug 1402180 - Remove nsIDOMHTMLAreaElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLAreaElement, replacing it
with binding class usage.

MozReview-Commit-ID: IaX4JFTPZn6

--HG--
extra : rebase_source : 79f9200c6ff9e081a5d9bc21eaa605f88caa99e9
2017-09-21 17:52:28 -07:00
Wes Kocher 61c098eae7 Merge inbound to m-c a=merge CLOSED TREE
MozReview-Commit-ID: 3pMHYV9oXLm

--HG--
rename : dom/base/nsReferencedElement.cpp => dom/base/IDTracker.cpp
rename : dom/base/nsReferencedElement.h => dom/base/IDTracker.h
2017-09-27 16:51:49 -07:00
Chris Peterson c4dff4f83d Bug 1402666 - Part 3: Replace Replace(NS_LITERAL_STRING("")) with ReplaceLiteral(u""). r=erahm
MozReview-Commit-ID: Ji6UdG32RF4

--HG--
extra : rebase_source : 1565a1e99f40785dad0d0d7652e42222dcdf8881
extra : source : c57e906ba75fda4745134ef8307589e28f4c8d70
2017-09-15 19:32:55 -07:00
Wes Kocher acf8913934 Merge m-c to inbound, a=merge
MozReview-Commit-ID: IsbKCdZU2Ui
2017-09-26 17:14:31 -07:00
Wes Kocher a341b32d06 Merge autoland to central, a=merge
MozReview-Commit-ID: 8B7y2ULc04
2017-09-26 17:11:14 -07:00
Sebastian Hengst 5ed0b93c50 Backed out changeset 26805294a547 (bug 1389650) 2017-09-26 10:47:41 +02:00
Kartikaya Gupta 818cfd7499 Bug 1389000 - Update reftest annotations for layers-free results. r=jrmuizel
This patch:
- adds fails-if annotations for all the reftests that were consistently failing
  with layers-free turned on.
- removes fails-if or reduces the range on fuzzy-if annotations for all
  the reftests that were producing UNEXPECTED-PASS results with
  layers-free turned on.
- adds skip-if, random-if, or fuzzy-if annotations to the reftests that
  were intermittently failing due to timeout, obvious incorrectness, or
  slight pixel differences, respectively.

MozReview-Commit-ID: A0Aknn6rnjj

--HG--
extra : rebase_source : 420d9cf43f23a5d654fa36eec69138937d13c173
2017-09-26 14:49:19 -04:00
Kyle Machulis a3876f104a Bug 1389650 - Remove nsIDOMHTMLAnchorElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLAnchorElement, replacing it
with binding class usage.

MozReview-Commit-ID: 7v0bKlY7Fax
2017-09-26 11:41:28 -07:00
Andreas Pehrson 4279601af7 Bug 1296531 - Don't keep OutputMediaStreams with a null mStream member. r=jwwang
Fix after an observed nullptr deref on try where mOutputStreams contained an
object whose mStream member had been nulled out.

MozReview-Commit-ID: 4kL1choTeW3

--HG--
extra : rebase_source : e4a6f600a66f00a963b19bf74717246c5099a784
2017-08-24 19:02:28 +02:00
Sebastian Hengst 72d1ea4a4b merge mozilla-central to autoland. r=merge a=merge 2017-09-27 11:49:57 +02:00
Nicholas Nethercote dfd3b7e7aa 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

--HG--
extra : rebase_source : 254404e318e94b4c93ec8d4081ff0f0fda8aa7d1
2017-09-26 08:33:21 +10:00
Kyle Machulis e2ace7d91f Bug 1389650 - Remove nsIDOMHTMLAnchorElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLAnchorElement, replacing it
with binding class usage.

MozReview-Commit-ID: 7v0bKlY7Fax
2017-09-25 23:12:44 -07:00
Boris Zbarsky cb3d8d129c Bug 850684. Make sure offset* is computed correctly on absolutely positioned kids of relatively positioned elements with scrolllframes and borders. r=mats
The check for isAbsolutelyPositioned was an old incorrect attempt to fix bug
81290.  We have since added the proper fix (not adding offsets of the offset
parent frame) in bug 375003.

MozReview-Commit-ID: 7NgnfrYcs8h
2017-09-26 02:01:57 -04:00
Yoshi Huang c3e27f8363 Bug 1376971 - Part 4: query loadingprincipal in HTMLMediaElement. r=baku
Query loadingprincipal attribute on the media part.
2017-09-26 12:41:27 +08:00
Olli Pettay c80e124562 Bug 1396584 - Remove support for multiple ShadowRoots, r=mrbkap
--HG--
extra : rebase_source : 2bb600ed1ffd35c195617a7eb70d0ba847a46898
2017-09-25 18:09:26 +03:00
John Dai cc16112226 Bug 1301024 - Part 2: Implement create an element steps. r=smaug 2017-09-25 01:33:00 -04:00
Sebastian Hengst c0dac760d3 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: It9WfByQfV3
2017-09-23 11:38:06 +02:00
Emilio Cobos Álvarez b4949a9204 Bug 1401706: Move ownership of editor anon content to nsTextControlFrame. r=Ehsan
MozReview-Commit-ID: 4QpbarX5dvf
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

--HG--
extra : rebase_source : f2bd73c696bc3e7937a8e6c365c9ef31a6888524
2017-09-22 02:18:30 +02:00
Kyle Machulis 9b4ac7e03f Bug 1402102 - Remove nsIDOMHTMLObjectElement; r=bz
Removes the nsIDOMHTMLObjectElement XPCOM interface, replacing it with
HTMLObjectElement and FromContent conversion usage.

MozReview-Commit-ID: dmsjSO97uh

--HG--
extra : rebase_source : 9b2c25b8681f754bc34233afccdb6fc5d38f0804
2017-09-22 17:05:12 -07:00
Bobby Holley 2ceae78919 Bug 1401992 - Don't cross anonymous boundaries when finding the fieldset. r=bz
MozReview-Commit-ID: DiywRognpqx
2017-09-22 15:38:32 -07:00
Andrea Marchesini 79eff427b5 Bug 1398733 - HTMLFormSubmission should pass the size of the post data inputStream if known, r=smaug 2017-09-22 08:12:03 +02:00
Andrea Marchesini cee83bc968 Bug 1398733 - nsILinkHandler::OnLinkClick and OnLinkClickSync should know the post data inputStream length, r=smaug 2017-09-22 08:11:18 +02:00
Nicholas Nethercote e3c9cbb969 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.

--HG--
extra : rebase_source : 4e3f982e0873877174a08a25413595ff66f7d20e
2017-09-22 14:35:46 +10:00
Geoff Brown 81c675f7bc Bug 1397615 - Skip some long-running mochitests on Android Debug only; r=snorp 2017-09-21 12:39:35 -06:00
John Dai c891a377df Bug 1401726 - Fix crash in nsLabelsNodeList::PopulateSelf. r=smaug 2017-09-21 02:06:00 -04:00
JW Wang 16f3e9dd23 Bug 1401366. P2 - bail out Observe() if not subcribed per comment 2. r=kaku
MozReview-Commit-ID: 4LEBD3g0OwX

--HG--
extra : rebase_source : c31cb94eeb52b06a3f327492b918e93c82b83616
2017-09-20 17:51:10 +08:00
JW Wang ed0a449136 Bug 1401366. P1 - format HTMLMediaElement::ShutdownObserver. r=kaku
MozReview-Commit-ID: K9ZYTedgUjC

--HG--
extra : rebase_source : 6a2537f27c91962ecfadd3b7489c9cdcf852da42
2017-09-20 17:46:34 +08:00
Boris Zbarsky 203072cfe1 Bug 1401171 - Make nsIMultiplexInputStream not inherit from nsIInputStream. r=bkelly
This is a preexisting issue that makes nsMultiplexInputStream multiple-inherit
from nsIInputStream: once via nsIMultipartInputStream and once via
nsIAsyncInputStream.  This causes problems once we end up with more multiplex
streams that are async streams, because then some assingments to
nsCOMPtr<nsIInputStream> start asserting.  This patch just removes the footgun
by getting rid of the multiple inheritance.
2017-09-19 16:26:21 +02:00
Sebastian Hengst 7973633f84 Backed out changeset 3c9e25405f59 (bug 1401204) an request from baku for landing with wrong bug number. r=backout 2017-09-19 16:25:20 +02:00
Boris Zbarsky 5c70c28414 Bug 1401204 - Make nsIMultiplexInputStream not inherit from nsIInputStream. r=bkelly
This is a preexisting issue that makes nsMultiplexInputStream multiple-inherit
from nsIInputStream: once via nsIMultipartInputStream and once via
nsIAsyncInputStream.  This causes problems once we end up with more multiplex
streams that are async streams, because then some assingments to
nsCOMPtr<nsIInputStream> start asserting.  This patch just removes the footgun
by getting rid of the multiple inheritance.
2017-06-11 00:07:23 -04:00
Andreas Pehrson 5e6a6af6f3 Bug 1296531 - Remove MediaStream blocking logic from HTMLMediaElement. r=jesup
MediaStreamGraph only implements the blocking notifications for SourceMediaStreams,
but the MediaStream that gets attached as srcObject on a media element is always
a TrackUnionStream. Hence, this code is unused and can be removed.

MozReview-Commit-ID: 6DKtCGNsZec

--HG--
extra : rebase_source : 0b3b7156a9e2e70933edadcc0a59c8fa81d49913
2017-05-08 18:41:28 +02:00
Olli Pettay 61679d58d1 Bug 1398605, keep nsContentList objects alive for awhile when generating state keys so that new objects don't need to be created all the time, r=ehsan
--HG--
extra : rebase_source : 8ba989365f0c9b5fbacc9effd4a41b628614b788
2017-09-14 21:56:58 +03:00
Nicholas Nethercote 2ef37710e7 Bug 1395828 (part 4) - Remove nsIParserService/nsParserService. r=mrbkap.
It a stateless wrapper around static methods in nsHTMLTags and nsHTMLElement,
and hence an unnecessary layer of indirection that just adds complexity and
slowness. This patch removes it, cutting almost 300 lines of code.

This requires making nsElementTable.h an exported header, to expose the
nsHTMLElement methods.

--HG--
extra : rebase_source : abbcb8e5001389affbf717092213b898673db07f
2017-09-05 20:19:06 +10:00
Boris Zbarsky 342f622ad1 Bug 1393806 part 4. Rename the ErrorResult argument of nsHTMLDocument::Open to aError.
This makes it clear that it's not a local.

MozReview-Commit-ID: 5OwXRIIra93
2017-09-13 13:34:58 -04:00
Boris Zbarsky 4d16655b25 Bug 1393806 part 3. Change dom::ReparentWrapper to take an ErrorResult. r=peterv
This makes it easier for its consumers to avoid leaving a dangling exception on
the JSContext.

MozReview-Commit-ID: Xep7IkYxSx
2017-09-13 13:34:55 -04:00
Sebastian Hengst e4a2f44531 merge autoland to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 9SALJlvWgoZ
2017-09-13 13:32:44 +02:00
Sebastian Hengst 1fbe7771e8 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: GUc4LEY8qp4
2017-09-13 11:27:47 +02:00
JW Wang 2df8570673 Bug 1399358 - call mDecoder->CanPlayThrough() so MDSM has a chance to exit buffering quickly. r=gerald
MozReview-Commit-ID: A5e3A8HV2ih

--HG--
extra : rebase_source : a70fdd615b178b9d110b66d64c874c55295d401d
2017-09-13 12:43:33 +08:00
James Cheng 073b9ad68c Bug 1398102 - [Part1] canPlayType should return 'maybe' if the codec parameter is empty. r=gerald
MozReview-Commit-ID: BmzIUOuaTj9

--HG--
extra : rebase_source : d23d70aeb6097c0ba31f810240594ca4daa52f20
2017-09-11 17:17:55 +08:00
Sebastian Hengst 797770f328 Backed out changeset 939ecf1b80cb (bug 1398102) for failing mda's dom/media/test/test_can_play_type_wave.html. r=backout 2017-09-12 11:03:50 +02:00
James Cheng ae3bc947af Bug 1398102 - canPlayType should return 'maybe' if the codec parameter is empty. r=gerald
MozReview-Commit-ID: BmzIUOuaTj9

--HG--
extra : rebase_source : 530b713cf259920b65181d9459323f5f14bae39e
2017-09-11 17:17:55 +08:00
Emilio Cobos Álvarez afb59c871d Bug 1387942: Relax backdrop frame parenthood assertion, and re-enable test. r=xidorn
MozReview-Commit-ID: 99I3apwe52l

--HG--
extra : rebase_source : a9900b925cb58e095572fca75e211cc0e16c942f
2017-09-12 08:41:17 +02:00
Mike Hommey 8cdad036f1 Bug 1398965 - Fold memory/mozjemalloc into memory/build. r=njn
The files relevant to the memory allocator are currently spread between
memory/mozjemalloc and memory/build, and the distinction was
historically from sharing some Mozilla-specific things between
mozjemalloc and jemalloc3. That distinction is not useful anymore, so
we fold everything together.

As we will likely rename the allocator at some point in the future, it
is preferable to move away from the mozjemalloc directory rather than in
its direction.

--HG--
rename : memory/mozjemalloc/Makefile.in => memory/build/Makefile.in
rename : memory/mozjemalloc/mozjemalloc.cpp => memory/build/mozjemalloc.cpp
rename : memory/mozjemalloc/mozjemalloc.h => memory/build/mozjemalloc.h
rename : memory/mozjemalloc/mozjemalloc_types.h => memory/build/mozjemalloc_types.h
rename : memory/mozjemalloc/rb.h => memory/build/rb.h
2017-09-12 13:14:35 +09:00
Michael Layzell c67b1f18a3 Bug 1340578 - Allow execCommand('paste') to be called from webextensions without a target, r=ehsan 2017-09-11 14:13:26 -04:00
Christoph Kerschbaumer 9048e3f216 Bug 1397655 - Update tests within dom/ to comply with new toplevel data: URI navigation policy. r=smaug 2017-09-10 13:24:07 +02:00
Wes Kocher 2a30786cad Merge inbound to central, a=merge
MozReview-Commit-ID: 4FEkd1x2GD
2017-09-08 13:36:31 -07:00
Olli Pettay 4f57f848d4 Bug 1397904 - nsTextControlFrame::SetValueChanged is too QI heavy, r=baku
--HG--
extra : rebase_source : caeef7fcee84688f99ab8bb0802ce550f8c08d1d
2017-09-08 14:07:22 +01:00
Jon Coppeard a4fe4cbe3c Bug 1301863 - Tell the JS engine how much memory blob reflectors hold alive r=baku 2017-09-12 10:46:51 +01:00
Masayuki Nakano 4ce89d8f61 Bug 1369072 - part3: nsXBLPrototypeHandler::DispatchXBLCommand() should use controller of visible window r=smaug
With previous change, KeyboardEvent is dispatched even when invisible window
has focus.  However, nsRootWindow::GetControllerForCommand() returns controller
for focused window even when the window is invisible because it uses
nsFocusManager::GetFocusedDescendant() to retrieve focused window.

Perhaps, we can assume that users won't expect to do something with invisible
window when they type some keys.  Then, nsRootWindow::GetControllerForCommand()
should return controller for visible ancestor window if focused window is
invisible.

This patch makes nsFocusManager::GetFocusedDescendant() can return only visible
descendants.  However, it already has a bool argument.  Therefore, it should
have a flag instead of adding new flag.  Most changes of this patch is replacing
its callers.

Then, nsRootWindow::GetControllerForCommand() and nsRootWindow::GetControllers()
should have a bool flag if it should return controller(s) for visible window.
This patch adds a bool flag for it.  Fortunately, the interface isn't scriptable.

Finally, this patch makes nsXBLPrototypeHandler::DispatchXBLCommand() and
EventStateManager::DoContentCommandEvent() retrieve controller for visible
window since they are always handles user input.

MozReview-Commit-ID: GygttTHuKRm

--HG--
extra : rebase_source : 1341273c4606298cb9b890b9312d9f5c8a75d144
2017-09-07 22:54:49 +09:00
Sebastian Hengst 8eb249afcc merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JSRVc5yW6Kx
2017-09-07 12:39:12 +02:00
Andrew McCreight 7f7f149167 Bug 1395636 - Convert code to use NS_IMPL_ISUPPORTS_CYCLE_COLLECTION_INHERITED. r=peterv
MozReview-Commit-ID: DivJPerL5SF

--HG--
extra : rebase_source : 890df75914906a5d34e8af67f9fc3a4be239d2d6
2017-08-31 16:29:22 -07:00
Sebastian Hengst 2f7f455fa1 Backed out changeset 9306866e8df0 (bug 1395636) for build bustage. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 20d028d6b971cf6a221dc2f1553687d6c074bdcb
2017-09-06 19:18:06 +02:00
Andrew McCreight 4d6e76dfcf Bug 1395636 - Convert code to use NS_IMPL_ISUPPORTS_CYCLE_COLLECTION_INHERITED. r=peterv
MozReview-Commit-ID: DivJPerL5SF

--HG--
extra : rebase_source : cb952cfc5600a163a5580438e5b0177595689dab
2017-08-31 16:29:22 -07:00
Kris Maglione 04acc0aace Bug 1396449: Part 2 - Use atoms to test WebExtension permissions. r=krizsa
The extension policy services uses atoms internally for permission names, so
using them directly rather than strings is considerably cheaper.

MozReview-Commit-ID: Io8EuOXHKVy

--HG--
extra : rebase_source : 577b4bdf7f899729e4cf92961a8e9e25bf886a72
2017-09-03 18:51:02 -07:00
Andrew McCreight 64b725c5cd Bug 1390660, part 2 - Define and use a new macro for CC isupports. r=peterv
The main purpose of defining this is to make conversion of places that
use the non-CC variant easier. There are many more places that could
be converted to use these new macros, if somebody felt motivated.

MozReview-Commit-ID: HspjcN76fjg

--HG--
extra : rebase_source : bf3baa586f90f0afbe9229c32d38cb34cc909b9b
2017-08-16 13:14:11 -07:00
Andrew McCreight e8ec349629 Bug 1390660, part 1 - Clean up some uses of the table-to-map segue. r=peterv
In a number of places, there's no substantial use of maps any more
after the segue.

The ELEMENT segue tries the FragmentOrElement QI, but that is
redundant with the Element QI.

This lets me use a few higher-level macros.

MozReview-Commit-ID: Gstq3Cm8LDl

--HG--
extra : rebase_source : f0c7dbf5281ce7375b1369b49db095a211569d6c
2017-08-16 13:37:20 -07:00
Alastor Wu 24213ab2e7 Bug 1395359 - make sure all references value are set before we use them. r=cpearce
1. since setVolume would trigger updateWakelock(), we should set |mOuter| before that.
2. move outer as required parameter in its constructor.
3. should init all member varaibles which would be referenced by wakeLockWrapper before its initialization.

MozReview-Commit-ID: H9A3aCKp6eT

--HG--
extra : rebase_source : 5ba1c78b305cc0db125b43c29bff1389f3e9ddb1
2017-09-04 11:05:15 +08:00
Wes Kocher 8b84853ed6 Merge m-c to autoland, a=merge
MozReview-Commit-ID: GcHZLNPPNnI
2017-09-01 16:34:14 -07:00
Boris Zbarsky 2bcb5d26b9 Bug 1395701 part 1. Maintain the "registered common ancestor" in a member on selection ranges. r=ehsan
This costs an extra word per range, but ranges aren't that small anyway.  The
benefit is that we don't have to recompute it dynamically when we need it, which
lets us simplify how selection ranges get registered with their common ancestors.
2017-09-01 11:13:25 -04:00
Ehsan Akhgari 9807a0448d Bug 1395442 - Remove nsHTMLDocument::mFormControls because it's never set; r=smaug 2017-08-31 12:41:04 -04:00
Sebastian Hengst 030c11d7dd merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4IUksc3Mn9i
2017-08-31 14:36:51 +02:00
Wes Kocher ef3d37e889 Merge m-c to inbound a=merge
MozReview-Commit-ID: 3rHXXSEcJ6k
2017-08-30 19:58:40 -07:00
Bevis Tseng 5652aa4c4a Bug 1394349 - Label dom::SimpleTextTrackEvent with its associated inner window. r=billm 2017-08-28 17:22:20 +08:00
Chris Pearce 50bc88ccf9 Bug 1395021 - Fix up includes to account for StreamTracks.h not being indirectly included in so many places. r=jwwang
With MediaInfo.h no longer including StreamTracks.h, some things that include
MediaInfo.h now use things that are no longer included. This patch adds the
includes back in, so the build works again.

MozReview-Commit-ID: INpH3vnBAmk

--HG--
extra : rebase_source : 8b91a999c71242c1eb5030f86c2a1f1c85d5fb27
2017-08-30 15:38:56 +12:00
JW Wang 29df163b4e Bug 1394705 - let HTMLMediaElement::MediaLoadListener implement nsIThreadRetargetableStreamListener. r=cpearce
This is required to use nsIThreadRetargetableRequest::RetargetDeliveryTo().

MozReview-Commit-ID: GFuAjovabpY

--HG--
extra : rebase_source : 4fbc7877f2548dcf0777c820ee724f41c46de688
2017-08-29 14:28:13 +08:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00
Sebastian Hengst 2a9cc8e3be merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: BQuBmVtsdki
2017-08-29 20:30:41 +02:00
Ehsan Akhgari 75e9304a93 Bug 1392891 - Part 5: Devirtualize nsHTMLDocument::GetForms(); r=smaug 2017-08-29 07:30:30 -04:00
Ehsan Akhgari 0aeb82a9cc Bug 1392891 - Part 4: Remove nsIHTMLDocument::GetFormControls(); r=smaug 2017-08-29 07:30:28 -04:00
Ehsan Akhgari 399ce96953 Bug 1392891 - Part 3: Avoid creating live nsContentList objects in nsContentUtils::GenerateStateKey(); r=smaug 2017-08-29 07:30:26 -04:00
Ehsan Akhgari 35146883ae Bug 1392891 - Part 2: Add an API to return nsHTMLDocument::mForms/mFormControls without creating a new nsContentList; r=smaug 2017-08-29 07:30:24 -04:00
Wes Kocher d03d9bee49 Merge m-c to inbound, a=merge
MozReview-Commit-ID: BJmeuDcuHke
2017-08-28 17:45:07 -07:00
Blake Kaplan f48bc2cbf2 Bug 1325923 - Use this API where we're supposed to. r=Ehsan
MozReview-Commit-ID: HGU5YtUzv9U
2017-08-28 16:41:49 -07:00
Ryan VanderMeulen afcf43248f Backed out revision 2e5306010ce1 (bug 1389421) due to unresolved spec issues. 2017-08-28 15:20:55 -04:00
Sebastian Hengst 9769c22d10 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: AeoHOxZLi6m
2017-08-28 16:53:53 +02:00
John Lin bad6535260 Bug 842782 - p2: introduce attributes for orientation lock to video element. r=jwwang,smaug
MozReview-Commit-ID: odq1y9qH1
2017-08-28 18:15:31 +08:00
Henri Sivonen 30ebfb2e95 Bug 1385836 - Remove special cases obsoleted by "replacement" becoming a label of the replacement encoding. r=emk
MozReview-Commit-ID: 52uO6AVRHWX

--HG--
extra : rebase_source : de5bef4768724c68bc938f9456f906554b6290d1
2017-08-28 12:57:17 +03:00
Sebastian Hengst 3074ff30be Backed out changeset ba812092214c (bug 842782) 2017-08-28 09:59:11 +02:00
John Lin ae733d5007 Bug 842782 - p2: introduce attributes for orientation lock to video element. r=jwwang,smaug
MozReview-Commit-ID: odq1y9qH1

--HG--
extra : rebase_source : 65daa7bde05ceee01704bb3677c5511c39c20848
2017-08-25 14:23:03 +08:00
Masayuki Nakano 5c2c570f9b Bug 1393816 - part1: Cache a range until new range is created in Selection r=smaug
When setting value of <input type="text">, nsTextEditorState removes all
ranges of normal selection first.  Then, TextEditor sets the value.  Finally,
TextEditor collapses the selection at the end of the text.

In bug 1386471, we got that there are some problems to remove the call of
Selection::RemoveAllRanges() in nsTextEditorState.  Therefore, we need another
approach to improve Selection::Collapse().

The approach of this patch is, when removing all ranges from normal selection,
Selection can cache an nsRange instance if there is an instance which is not
referenced from other than the Selection (i.e., it'll be removed when
Selection::Clear() is called).  Then, Selection::Collapse() can reuse it.  With
this fix, Selection::Collapse() can reduce allocation cost and may reduce some
other cost like adding it to mutation observer.

However, keeping nsRange instance may cause increasing mutation observer's cost
since nsRange will be adjusted its start node/offset and end node/offset with
mutation observer to guarantee that the range is always valid.  So, we can
cache such range only when the caller (or its callee) will set selection range
later.  Therefore, this patch adds Selection::RemoveAllRangesTemporarily()
and make only nsTextEditorState::SetValue() and
ContentEventHandler::OnSelectionEvent() use it.

MozReview-Commit-ID: FjWrbz4S1ld

--HG--
extra : rebase_source : 83677640525e0b1a84bdd7fce63ff4704b9cc22b
2017-08-25 19:21:39 +09:00
Masayuki Nakano da1455e4b2 Bug 1393348 - part1: nsTextEditorState should use nsTextInputSelectionImpl::GetSelection(SelectionType) instead of nsTextInputSelectionImpl::GetSelection(RawSelectionType, nsISelection**) r=m_kato
nsTextEditorState stores selection controller as
RefPtr<nsTextInputSelectionImpl> mSelCon.  However, some methods still use
nsTextInputSelectionImpl::GetSelection(RawSelectionType, nsISelection**) which
is a virtual method overriding nsISelectionController.

So, instead, we should make it use
nsTextInputSelectionImpl::GetSelection(SelectionType).

MozReview-Commit-ID: Cvxa85LegsO

--HG--
extra : rebase_source : f8618fb9b4b2a1d3a02b4ce49906c8b995766e3f
2017-08-24 16:19:28 +09:00
Chris Pearce 4ffa31745b Bug 1392498 - Move TimeIntervals to dom::TimeRanges conversion into TimeRanges class. r=jya
If TimeUnits.h includes mozilla/dom/TimeRanges.h, then the build ends up
pulling in the Gecko DOM bindings, which pulls in a whole lot of JavaScript and
DOM bindings code. That makes it trickier to import GeckoMedia into Servo, and
makes Gecko's build slower, so move the code to convert TimeIntervals into
dom::TimeRanges.

Also remove an extraneous "virtual" and add "const" to some functions in TimeRanges.

MozReview-Commit-ID: BLeehaf9gCE

--HG--
extra : rebase_source : 84ef054cf8fd5b4434dc761a1b0a39803d3231f5
2017-08-21 15:08:25 +12:00
Bobby Holley 8fb4fb3d6c Bug 1393791 - Stop unbinding native-anonymous content off a script runner. r=emilio
The failure mode in the attached crashtest is an inconsistency in the flattened
tree. Specifically, we null out mVideoControls in an nsVideoFrame, but defer
the UnbindFromTree call on that NAC element, which measn that its mParent still
points to the nsVideoFrame's mContent. Because all this stuff runs off of script
runners, and the anonymous content destroyer is not guaranteed to run before
other potential script runners, we end up running arbitrary script while the
tree mismatch exists. This script calls back into ProcessPendingRestyles, which
causes trouble.

We could build a separate deferral mechanism, but it's not clear that we actually
need to defer the unbind anymore. The deferred unbind was added in bug 489008,
which predated a lot of simplifications in layout/dom interaction.

MozReview-Commit-ID: 1JYAhiXKVJC
2017-08-27 15:29:36 -07:00
Ryan Hunt 6ab1a5a3fc Bug 1396323 - Don't initialize HTMLInputElement editor for eVoidEvent. r=ehsan
Keyboard APZ dispatches an eVoidEvent to gather all event targets that a key event
would normally go to. This can sometimes trigger an HTMLInputElement to initialize its
editor, which can cause unnecessary DOM modifications.

MozReview-Commit-ID: 6EEttouVB81

--HG--
extra : rebase_source : e7ff9c50a13f43f66976e3f0294e3d1696b87169
2017-09-05 15:09:53 -05:00
Catalin Badea 393fe4f3b1 Bug 1380621 - Change the order of member variables in HTMLMediaElement. r=cpearce
This reduces the size of the object by avoiding memory alignment padding.
2017-09-06 11:20:00 +01:00
Catalin Badea 42e06700b2 Bug 1380621 - Use node pointer for HTMLMediaElement::mSourcePointer. r=cpearce
Using a pointer instead of an index helps us avoid some costly
operations such as IndexOf and GetChildAt with the upcoming changes from
bug 651120.
2017-09-06 11:16:23 +01:00
Chung-Sheng Fu 263bc01b68 Bug 1354633 - When privacy.resistFingerprinting = true, MediaError.message can only get whitelisted messages r=arthuredelstein,jwwang
MozReview-Commit-ID: mYBftzcZT5

--HG--
extra : rebase_source : bca8c7cbf003bfa7795fa1579a1a6c94065c0252
2017-08-04 18:46:26 +08:00
Alastor Wu ac5a951f4a Bug 1373888 - part6 : only release the wakelock when video is paused. r=cpearce
Wakelock would automatically handle the lock/unlock by listening "hidden/visible", we
don't need to handle it in HTMLVideoElement.

MozReview-Commit-ID: AcOwR2nqm6L

--HG--
extra : rebase_source : 8f96b8cd908332be33ed3289dd288990da56c1c9
2017-08-29 15:25:57 +08:00
Alastor Wu 5aaf1c6ce7 Bug 1373888 - part5 : only request audio wake lock when it's audible. r=cpearce
No need to prevent sleeping for non-audible audio.

MozReview-Commit-ID: 6p3azSUWTU2

--HG--
extra : rebase_source : 89ff9d1753ac4a23269ec100920e18020ab5aafb
2017-08-29 15:25:44 +08:00
Alastor Wu 6a6ee2a0d7 Bug 1373888 - part3 : rename the topic of the wake lock. r=cpearce
For knowing the wake lock usage more clearly, we should use more specific topic name.

In OSX, you can use "$ pmset -g assertions" to check all the wakelock.
In Windows, using "$ powser -energy" to generate the energy report.

MozReview-Commit-ID: rAXnkxTvLc

--HG--
extra : rebase_source : 42ebf204673d3c913739f64c71c24af20d37c95d
2017-08-29 10:54:28 +08:00
Alastor Wu 71ad2fdb83 Bug 1373888 - part2 : remove the timer which was used for b2g. r=cpearce
The timer was added for the b2g issue, now we can remove it.

MozReview-Commit-ID: BNjIghImCzC

--HG--
extra : rebase_source : c5490d417b2d40619eb7092dfc21b19a99982a1c
2017-08-29 10:54:25 +08:00
Alastor Wu f570c3c5ec Bug 1373888 - part1 : remove useless function. r=cpearce,smaug
These functions didn't be used by anyone, remove them.

MozReview-Commit-ID: BLj8GsVp1gR

--HG--
extra : rebase_source : 1b7eee86c62314401c2374a2979ba2a42fda2490
2017-08-29 10:54:18 +08:00
JW Wang f8f989dd93 Bug 1394313 - replace use of nsAutoPtr with UniquePtr in MediaDecoderOwner.h. r=cpearce
MozReview-Commit-ID: 49lyvMzg7oY

--HG--
extra : rebase_source : b83cd03b0026c73d0293ef937a3c2544349f464d
2017-08-28 14:10:35 +08:00
Tom Ritter ae930caa79 Bug 1393535 Fix unused variable warnings in dom/ r=cpearce
MozReview-Commit-ID: 1Ql20AHx1Jz

--HG--
extra : rebase_source : 21105b4fc70953ecdccd4c1e7fe9c9d5564795c4
2017-08-24 11:52:36 -05:00
Sebastian Hengst de6f7dc3a1 merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE 2017-08-25 13:21:40 +02:00
Nicholas Nethercote 7e120ce35e Bug 1393636 (part 3) - Pass nsWindowSizes to more AddSizeOf*() functions. r=heycam.
This is a purely non-functional plumbing change. Instead of passing a
SizeOfState and an nsStyleSizes a bunch of places, we pass an nsWindowSizes,
which contains both of them.

This is a necessary precursor for the next patch.

MozReview-Commit-ID: Ek03wDM50rB

--HG--
extra : rebase_source : 7b05708bd21dc4e3812ea041647fa74bb413d0b9
2017-08-25 14:47:54 +10:00
JW Wang c62c2c21b4 Bug 1392919. P3 - remove unused code and fix naming. r=gerald
MozReview-Commit-ID: 36PqGtOpAbf

--HG--
extra : rebase_source : 9ff9234f1f5db9151808d9a2ee33ced6d9e089c6
2017-08-23 14:42:25 +08:00
Ryan VanderMeulen 3d0158833d Merge autoland to m-c. a=merge 2017-08-24 20:20:08 -04:00
Alastor Wu 556554c6f5 Bug 1382780 - part2 : separate the value of actual playback rate and media element's attribute. r=cpearce
According to [1], we should separate the value of actual playback rate and media elemenet's attribute.
But still keep a MAX and MIN threshold to control the highest and lowser playback rate for decoder.

[1] http://w3c-test.org/html/semantics/embedded-content/media-elements/playing-the-media-resource/playbackRate.html

MozReview-Commit-ID: EGCa4yrNXO6

--HG--
extra : rebase_source : d03b831eeebb3e3e3bb0759394eab0116be0f1d5
2017-08-24 16:58:45 +08:00
Alastor Wu 8417fdd605 Bug 1382780 - part1 : return NS_ERROR_DOM_NOT_SUPPORTED_ERR for the negative playback rate. r=cpearce
According to [1], we should return NotSupportedError for the negative playback rate.

[1] https://github.com/w3c/web-platform-tests/pull/6522

MozReview-Commit-ID: KoqDkBmP3h9

--HG--
extra : rebase_source : ddf1cdd03a980686df6d6613e1bd507bf37d8337
2017-08-24 16:58:42 +08:00
Nicholas Nethercote f582d96b98 Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm.
This is straightforward, with only two notable things.

- `#include "nsXPIDLString.h" is replaced with `#include "nsString.h"`
  throughout, because all nsXPIDLString.h did was include nsString.h. The
  exception is for files which already include nsString.h, in which case the
  patch just removes the nsXPIDLString.h inclusion.

- The patch removes the |xpidl_string| gtest, but improves the |voided| test to
  cover some of its ground, e.g. testing Adopt(nullptr).

--HG--
extra : rebase_source : 452cc4a08046a1adb1a8099a7e85a1917de5add8
2017-08-17 15:29:03 +10:00
Eric Rahm a33f11e0f5 Bug 1391803 - Use nsStringFwd.h for forward declaring string classes. r=froydnj
We should not be declaring forward declarations for nsString classes directly,
instead we should use nsStringFwd.h. This will make changing the underlying
types easier.

--HG--
extra : rebase_source : b2c7554e8632f078167ff2f609392e63a136c299
2017-08-16 16:48:52 -07:00
Andrew Sutherland 792729291f Bug 1383518 - Part 1: Augment test_formSubmission.html test to include ServiceWorker variants. r=bkelly
This test causes the expected serviceworker failure messages in the child
process and then hangs the test.

--HG--
extra : rebase_source : b1ea1db02d84ce7eb1e7b939cd1ef96825ab8e9f
2017-08-23 04:23:13 -04:00
Andrew Sutherland 9bd2e89d01 Bug 1383518 - Part 0: Test whitespace cleanup. r=bkelly
This test had trailing whitespace in a number of places, including one spot
inside a <textarea> that explicitly had a test expectation against it.

Since it's popular to have text editors purge trailing whitespace, this patch
converts the one significant piece of trailing whitespace to use an HTML
entity to encode a trailing ASCII space character.  This keeps that test happy.

--HG--
extra : rebase_source : ce6b3f3b923d06c3364b44ff006c8e245bd4f133
2017-08-23 04:18:39 -04:00
Masatoshi Kimura 5f035965ac Bug 1390209 - Remove unused nsIDOMHTML*Element interfaces. r=qdot
MozReview-Commit-ID: DagD3IHhRZy

--HG--
extra : rebase_source : 2add5ad8e9181ba9bf29f53a6df75b730ab5ea78
2017-08-15 01:31:47 +09:00
Aryeh Gregor 1b3b415680 Bug 1389421 - Support nonce IDL property; r=ckerschb,smaug
We already support the actual functionality, but nobody added support
for the IDL property to the .webidl file.

Also added <style nonce> to the web-platform-tests reflection tests,
since nobody updated that to the current spec either.

This does not add support for .nonce to SVGScriptElement, because I
couldn't find any standard that specified it.  I updated the wpt tests
to expect .nonce to work on HTMLScriptElement but not SVGScriptElement.

MozReview-Commit-ID: F1K7WMfMoDi

--HG--
extra : rebase_source : 247c63b63446dc0d60062bb9d9c61228c379b989
2017-08-21 14:49:44 +03:00
JW Wang 2834911596 Bug 1391170 - lessen the assertion in AddMediaElementToURITable() so we can move MediaDecoder::GetResource() to private. r=gerald
If AddMediaElementToURITable() is called after the decoder Load failed, mDecoder
will be reset and it is sufficient to assert mDecoder only.

MozReview-Commit-ID: 58WT8zFeiFj

--HG--
extra : rebase_source : 712579b544e9a9ce971778b85795d06e58bd4ea5
extra : intermediate-source : 470e2d8a20010e11d7a7dce5540957e89439811e
extra : source : 59f4b2b33212794aa1cf3e8782737a2d4af8c241
2017-08-17 15:41:22 +08:00
JW Wang 934fb866da Bug 1390443. P3 - rewrite the logic about mWaitingForKey. r=cpearce
This fixes the bug where mWaitingForKey is reset only when mPaused is false.
We should reset mWaitingForKey to NOT_WAITING_FOR_KEY when the key is
available and decoding can continue.

http://w3c.github.io/encrypted-media/#resume-playback

MozReview-Commit-ID: LjIhe9cTsdg

--HG--
extra : rebase_source : d2d351928d1994ee3ae688d4e798ab204ab1609c
extra : intermediate-source : e8700b4344aa29f6b2c52ee4d920d59db4012577
extra : source : 41e1c10f32465ca0abac61bbfd555ee89a8c67a1
2017-08-17 10:47:07 +08:00
JW Wang 6ce3e3224c Bug 1390443. P1 - don't change nextFrameStatus when MDSM reaches the end of playback. r=cpearce
Instead, MediaDecoder::NextFrameStatus() checks IsEnded() and returns
NEXT_FRAME_UNAVAILABLE to ensure we have HAVE_CURRENT_DATA when playback
is ended on the main thread.

This will fix the timing issue (comment 0) which causes 'waiting' to fire.

MozReview-Commit-ID: 7O21x2q0lb8

--HG--
extra : rebase_source : bbd898edfb5f4a47a5062dd2bc916c911caf0c8e
extra : intermediate-source : 2b3e413db02a7aad00d13fdf274b346bccafc414
extra : source : 6f60fad11b65e75b456e128f8414fe2ea545455f
2017-08-16 15:33:58 +08:00
Masayuki Nakano 428b006ab1 Bug 1395146 - part3: nsTextEditorState should cache empty value with mCachedValue r=smaug
nsTextEditorState::GetValue() uses mCachedValue only when the value isn't empty
string.  However, with SetIsVoid() and IsVoid() of nsAString, nsTextEditorState
can cache empty value only with mCachedValue.

MozReview-Commit-ID: AmQDquEn9M8

--HG--
extra : rebase_source : 3acfe765cbe37664ef3e28e640753da240bf38a4
2017-08-30 20:54:45 +09:00
Masayuki Nakano 0356f81706 Bug 1395146 - part2: Make nsTextEditorState cache the value of TextEditor with mCachedValue even when the editor is single line text control r=smaug
Currently, nsTextEditorState caches the value of TextEditor only when it's for
a multi-line text control, i.e., <textarea>.  However, using it for single-line
text control improves the score of attachment 8848015.  Although this might
increase the cost of creating and registering mutation observer, but it may not
make damage to performance of loading pages since editor for each element won't
be initialized until each element gets focus.

MozReview-Commit-ID: DnjEJ5AUh3M

--HG--
extra : rebase_source : 8f45cb57ac03dff9a696acaaa5d0fd35faed0c09
2017-08-30 19:43:00 +09:00
Masayuki Nakano b3c33d13ad Bug 1395146 - part1: Get rid of nsITextControlElement::IsPlainTextControl() and nsTextEditorState::IsPlainTextEditor() r=smaug
nsTextEditorState::GetValue() refers nsITextControlElement::IsPlainTextControl()
via nsTextEditorState::IsPlainTextEditor().  However, it always returns true and
virtual call with QI.  So, we should get rid of these unnecessary methods.

MozReview-Commit-ID: 3gHdGrzlys4

--HG--
extra : rebase_source : a1be33a18e93e64b8cc87e4f12d5e494b14520bf
2017-08-30 18:57:55 +09:00
Olli Pettay 045eeefaaa Bug 1390402, add a faster variant of TextEditor::GetDocumentIsEmpty(), r=masayuki
--HG--
extra : rebase_source : 3238aec96be5b0393c395ce8cce9a0489d2e671d
2017-08-24 13:53:34 +03:00
Sebastian Hengst 3549a5a1ac merge mozilla-central to autoland. r=merge a=merge 2017-08-28 17:09:10 +02:00
Chung-Sheng Fu e5b80e9a8f Bug 863246 - Move resources that need to be exposed to web content to locations that are marked as contentaccessible r=billm
MozReview-Commit-ID: ArhSHKPYOr8

--HG--
extra : rebase_source : 888f7ce8f9db809ad5abbe6340af74e9dfb1d73b
2017-06-08 17:52:46 +08:00
Sebastian Hengst b3764d9e0a Backed out changeset 4f8ac9b281da (bug 1390443) for failing web-platform-tests, e.g. /encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential-readyState.html. r=backout 2017-08-21 10:20:24 +02:00
Sebastian Hengst ddc7c75859 Backed out changeset 5bcf66374df8 (bug 1390443) 2017-08-21 10:19:34 +02:00
JW Wang 56bf968d96 Bug 1390443. P3 - rewrite the logic about mWaitingForKey. r=cpearce
This fixes the bug where mWaitingForKey is reset only when mPaused is false.
We should reset mWaitingForKey to NOT_WAITING_FOR_KEY when the key is
available and decoding can continue.

http://w3c.github.io/encrypted-media/#resume-playback

MozReview-Commit-ID: LjIhe9cTsdg

--HG--
extra : rebase_source : 0563bf7831ed66bcdb5bec741b1366243eed49f9
extra : intermediate-source : e8700b4344aa29f6b2c52ee4d920d59db4012577
extra : source : 41e1c10f32465ca0abac61bbfd555ee89a8c67a1
2017-08-17 10:47:07 +08:00
JW Wang a69873c9a9 Bug 1390443. P1 - don't change nextFrameStatus when MDSM reaches the end of playback. r=cpearce
Instead, MediaDecoder::NextFrameStatus() checks IsEnded() and returns
NEXT_FRAME_UNAVAILABLE to ensure we have HAVE_CURRENT_DATA when playback
is ended on the main thread.

This will fix the timing issue (comment 0) which causes 'waiting' to fire.

MozReview-Commit-ID: 7O21x2q0lb8

--HG--
extra : rebase_source : 0a676ef7278214a707c97687311a73da8bcd983e
extra : intermediate-source : 2b3e413db02a7aad00d13fdf274b346bccafc414
extra : source : 6f60fad11b65e75b456e128f8414fe2ea545455f
2017-08-16 15:33:58 +08:00
Jean-Yves Avenard 329ff1fecf Bug 1391666 - P3. Change to HAVE_ENOUGH_DATA when possible. r=cpearce
In bug 1312886, we made sure that readyState would never become HAVE_ENOUGH_DATA if we were waiting for a key.
However, this is in effect useless as the next call to ChangeReadyState would have reset mWaitingForKey.

In practice, it only meant that we delayed the change from HAVE_FUTURE_DATA to HAVE_ENOUGH_DATA until the next call to UpdateReadyState.

MozReview-Commit-ID: 2wnMeN8xxCS

--HG--
extra : rebase_source : f5b0fa50ead1565882c3bf8ba245702987784d8a
2017-08-18 21:00:08 +02:00
Jean-Yves Avenard 34fd923c04 Bug 1391666 - P2. Reset mWaitingForKey when we have data and autoplay attribute is set r=cpearce
By default, a media element that has never played is in paused mode. As such, we need to reset mWaitingForKey to NOT_WAITING_FOR_KEY otherwise, readyState will never become HAVE_ENOUGH_DATA.

MozReview-Commit-ID: EIi3Crt4zHl

--HG--
extra : rebase_source : e9f9ad4136020db7db081b5c125f664e1c7bda20
2017-08-18 19:20:48 +02:00
Masayuki Nakano a7240d8532 Bug 1391538 - nsTextFragment for text nodes in <input> or <textarea> shouldn't store text as single byte characters even if all characters are less than U+0100 r=smaug
nsTextFrame stores text as single byte character array if all characters are
less than U+0100.  Although, this saves footprint, but retrieving and modifying
text needs converting cost.  Therefore, if it's created for a text node in
<input> or <textarea>, it should store text as char16_t array.

MozReview-Commit-ID: 9Z82rketT7g

--HG--
extra : rebase_source : 59f59ac1488c21a57d95d253cc794a011d672c95
2017-08-18 16:05:16 +09:00
Wes Kocher b1fc5e008c Merge inbound to central, a=merge
MozReview-Commit-ID: 4cWGBbMEU2x
2017-08-18 15:53:07 -07:00
Wes Kocher c1383cebf3 Merge m-c to autoland, a=merge
MozReview-Commit-ID: KLrOCT1a7El
2017-08-17 16:23:45 -07:00
Chris Pearce fcd4613526 Bug 1390748 - Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
I noticed that touching MediaDecoder rebuilds a lot of seemingly unrelated
code. This is because HTMLMediaElement includes MediaDecoder.h, and
HTMLMediaElement is included in a number of places. Having HTMLMediaElement.h
predeclare rather than include fixes it.

MozReview-Commit-ID: I0vrPgqvvge

--HG--
extra : rebase_source : 505f9dce979aad0529b07d2c046dca5028af6de6
2017-08-15 17:09:06 +12:00
btian 9de84f5fed Bug 1390394 - Mochitest to ensure FormData gets the new files after setting <input type=file>.files. r=smaug
--HG--
extra : rebase_source : 1987a73e03ffa7191f95f0259ba15f131ce709ee
2017-08-17 17:09:41 +08:00
Carsten "Tomcat" Book 99aa3f8e70 Merge mozilla-central to mozilla-inbound 2017-08-17 13:13:10 +02:00
Nicholas Nethercote 025461bde7 Bug 1390428 (part 1) - Remove many nsXPIDLCString local variables. r=erahm.
These are all easy cases where an nsXPIDLCString local variable is set via
getter_Copies() and then is only used in ways that nsCStrings can also be used
(i.e. no null checks or implicit conversions to |char*|).

In every case the patch trivially replaces the nsXPIDLCString with an
nsCString. (Also, there are a couple of unused nsXPIDLCString variables that
the patch simply removes.)
2017-08-16 13:58:35 +10:00
Henry Chang d09db9fb2b Bug 1390777 - Use srcdoc to replace src=data:xxx whenever possible. r=ckerschb
MozReview-Commit-ID: 1FeRTmZv46N

--HG--
extra : rebase_source : 1b53de3be3fdb37f2b85550bf2b922d4285721aa
2017-08-17 16:00:29 +08:00
Carsten "Tomcat" Book 2b8080e2fc Backed out changeset 4a31e4302e03 (bug 1390748)
--HG--
extra : rebase_source : 9571466ebc151a9788a380008c5d8941e3e24665
2017-08-17 08:35:30 +02:00
Chris Pearce 60751f0b79 Bug 1390748 - Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
I noticed that touching MediaDecoder rebuilds a lot of seemingly unrelated
code. This is because HTMLMediaElement includes MediaDecoder.h, and
HTMLMediaElement is included in a number of places. Having HTMLMediaElement.h
predeclare rather than include fixes it.

MozReview-Commit-ID: I0vrPgqvvge

--HG--
extra : rebase_source : 505f9dce979aad0529b07d2c046dca5028af6de6
2017-08-15 17:09:06 +12:00
Phil Ringnalda 38ce1ea2a0 Backed out 10 changesets (bug 1390748) for build bustage
Backed out changeset 02b36ee5fb17 (bug 1390748)
Backed out changeset 84e8bf01c856 (bug 1390748)
Backed out changeset fc8989be30f3 (bug 1390748)
Backed out changeset 14d421ace6cc (bug 1390748)
Backed out changeset 7dadac869038 (bug 1390748)
Backed out changeset 0e77809e7bc2 (bug 1390748)
Backed out changeset bf78a8dce9c5 (bug 1390748)
Backed out changeset 5fa77990472e (bug 1390748)
Backed out changeset 5d3b637d2485 (bug 1390748)
Backed out changeset 634fe076d134 (bug 1390748)

MozReview-Commit-ID: Dxio8vXDCHg
2017-08-16 21:33:10 -07:00
Chris Pearce a0917579b4 Bug 1390748 - Pre-declare MediaDecoder in HTMLMediaElement. r=jwwang
I noticed that touching MediaDecoder rebuilds a lot of seemingly unrelated
code. This is because HTMLMediaElement includes MediaDecoder.h, and
HTMLMediaElement is included in a number of places. Having HTMLMediaElement.h
predeclare rather than include fixes it.

MozReview-Commit-ID: I0vrPgqvvge

--HG--
extra : rebase_source : 366d4e34e9c425b478b4c9058e27c9a32de36515
2017-08-15 17:09:06 +12:00
Chris Pearce f2902bdf82 Bug 1390406 - Remove unnecessary includes in dom/media/mediasource. r=jya
MozReview-Commit-ID: 1aTncGfBicu

--HG--
extra : rebase_source : 8ad085eb81d195732c385718c283b4752e5e3c80
2017-08-15 16:13:00 +12:00
Masatoshi Kimura 9ab81a1042 Bug 1389723 - Remove @deprecated nsIMIMEInputStream.addContentLength. r=dragana
MozReview-Commit-ID: 9b45aozatin

--HG--
extra : rebase_source : 636da171929fe6ecd69de5c68d9ed4064a3a7b09
2017-08-12 13:34:02 +09:00
Masatoshi Kimura be91c9a266 Bug 886907 - Remove old synchronous contentPrefService from the tree. r=adw
MozReview-Commit-ID: BZsB3FR3jHC

--HG--
rename : toolkit/components/contentprefs/ContentPrefService2.jsm => toolkit/components/contentprefs/ContentPrefService2.js
rename : toolkit/components/contentprefs/nsContentPrefService.manifest => toolkit/components/contentprefs/ContentPrefService2.manifest
extra : rebase_source : ab45b7668e97734004502ea776effedcb9b74974
2017-08-11 23:29:55 +09:00
Masayuki Nakano 1bbc0d5920 Bug 1387317 - part4: Make editor flag setters use new AddFlags() or RemoveFlags() if useful r=m_kato
MozReview-Commit-ID: EMDeGfK37Lx

--HG--
extra : rebase_source : 8a2b4e809c608649fbb41edd32d2165db7e77516
2017-08-08 12:36:29 +09:00
Masayuki Nakano 7c54bc878b Bug 1387317 - part2: EditorEventListener should stop using interface methods as far as possible r=m_kato
MozReview-Commit-ID: EPQeBez2tJh

--HG--
extra : rebase_source : b18b3399f703d3cdcb6f26cec3fcb8f707fb9519
2017-08-08 11:25:36 +09:00
Sebastian Hengst 2612b5bcf7 Backed out changeset f92c249cae8b (bug 886907) for failing editor/libeditor/tests/test_bug1368544.html on Android 4.3 debug. r=backout
--HG--
rename : toolkit/components/contentprefs/ContentPrefService2.js => toolkit/components/contentprefs/ContentPrefService2.jsm
rename : toolkit/components/contentprefs/ContentPrefService2.manifest => toolkit/components/contentprefs/nsContentPrefService.manifest
2017-08-15 16:35:07 +02:00
Masatoshi Kimura 8b413e305a Bug 886907 - Remove old synchronous contentPrefService from the tree. r=adw
MozReview-Commit-ID: BZsB3FR3jHC

--HG--
rename : toolkit/components/contentprefs/ContentPrefService2.jsm => toolkit/components/contentprefs/ContentPrefService2.js
rename : toolkit/components/contentprefs/nsContentPrefService.manifest => toolkit/components/contentprefs/ContentPrefService2.manifest
extra : rebase_source : 2d10305f75dbbec173ef8965d159196bfbad77b0
2017-08-11 23:29:55 +09:00
Xidorn Quan cad67851c2 Bug 1374902 - Check pref when parsing :fullscreen pseudo-class. r=TYLin
MozReview-Commit-ID: 3UHeQ10E48J

--HG--
extra : rebase_source : efad34ea0de70473a323a13b4b4c61de28a6e79e
2017-08-02 16:34:47 +10:00
Aryeh Gregor 2340265246 Bug 718711 - getSelection() should exist for XML documents; r=smaug
The spec puts it on the Document interface, not HTMLDocument, so it
should apply to XML documents as well.  In general we want APIs to be
available for all types of documents unless there's a specific reason
not to.

Tests submitted upstream:
https://github.com/w3c/web-platform-tests/pull/6804

MozReview-Commit-ID: A0QDxpONNCE

--HG--
extra : rebase_source : 0c84863b455c3e9748aedcfb562920f8679e358c
2017-08-10 16:53:42 +03:00
Milan Sreckovic 8ad3e52a49 Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in dom/*. r=overholt
MozReview-Commit-ID: B9YWmM3C1oX

--HG--
extra : rebase_source : d7c27de968295ee13ece8bda23798cb215d60a4b
2017-08-14 08:30:10 -04:00
Masayuki Nakano 8872065ef4 Bug 1388004 - part2: Make nsGenericHTMLElement::GetAssociatedEditor() return TextEditor instead of nsIEditor r=smaug
nsGenericHTMLElement::GetAssociatedEditor() retrieves TextEditor if the element is <input type="text"> or something, or <textarea>, or if it's editable, HTMLEditor associated to the document.  So, this method can return TextEditor (HTMLEditor is a subclass of TextEditor).

MozReview-Commit-ID: BvpFPaPLY70

--HG--
extra : rebase_source : 69edbe17aeb1ac72a8f8d247e5baca998569250e
2017-08-07 16:53:59 +09:00
Masayuki Nakano 9114d3d55d Bug 1388001 - part4: nsHTMLDocument should treat editor as HTMLEditor r=smaug
nsHTMLDocument retrieves its associated editor from nsIEditingSession and nsIDocShell.  So, both of them have methods returning HTMLEditor*. Therefore, nsHTMLDocument should treat all of them as HTMLEditor.

MozReview-Commit-ID: 5zPH708Vev3

--HG--
extra : rebase_source : 09e87fab64bc3e8a00300bc3109e45a1b8c8b797
2017-08-07 14:43:50 +09:00
Masayuki Nakano 9ee491b79f Bug 1388001 - part3: Remove nsIEditor argument of nsIHTMLDocument::TearingDownEditor() since it's unused r=smaug
nsIHTMLDocument::TearingDownEditor() takes nsIEditor as an argument.  However, it's not used in it.  So, we can remove it.

MozReview-Commit-ID: KUmIsnVGB6H

--HG--
extra : rebase_source : ddd344b9df18e0b33d54d2f99e6335449f55df81
2017-08-07 14:25:52 +09:00
Nicholas Nethercote 57c26c9834 Bug 1387956 - Overhaul ComputedValues measurement, and add style structs measurement. r=bholley.
This patch moves measurement of ComputedValues objects from Rust to C++.
Measurement now happens (a) via DOM elements and (b) remaining elements via
the frame tree. Likewise for the style structs hanging off ComputedValues
objects.

Here is an example of the output.

> ├──27,600,448 B (26.49%) -- active/window(https://en.wikipedia.org/wiki/Barack_Obama)
> │  ├──12,772,544 B (12.26%) -- layout
> │  │  ├───4,483,744 B (04.30%) -- frames
> │  │  │   ├──1,653,552 B (01.59%) ── nsInlineFrame
> │  │  │   ├──1,415,760 B (01.36%) ── nsTextFrame
> │  │  │   ├────431,376 B (00.41%) ── nsBlockFrame
> │  │  │   ├────340,560 B (00.33%) ── nsHTMLScrollFrame
> │  │  │   ├────302,544 B (00.29%) ── nsContinuingTextFrame
> │  │  │   ├────156,408 B (00.15%) ── nsBulletFrame
> │  │  │   ├─────73,024 B (00.07%) ── nsPlaceholderFrame
> │  │  │   ├─────27,656 B (00.03%) ── sundries
> │  │  │   ├─────23,520 B (00.02%) ── nsTableCellFrame
> │  │  │   ├─────16,704 B (00.02%) ── nsImageFrame
> │  │  │   ├─────15,488 B (00.01%) ── nsTableRowFrame
> │  │  │   ├─────13,776 B (00.01%) ── nsTableColFrame
> │  │  │   └─────13,376 B (00.01%) ── nsTableFrame
> │  │  ├───3,412,192 B (03.28%) -- servo-style-structs
> │  │  │   ├──1,288,224 B (01.24%) ── Display
> │  │  │   ├────742,400 B (00.71%) ── Position
> │  │  │   ├────308,736 B (00.30%) ── Font
> │  │  │   ├────226,512 B (00.22%) ── Background
> │  │  │   ├────218,304 B (00.21%) ── TextReset
> │  │  │   ├────214,896 B (00.21%) ── Text
> │  │  │   ├────130,560 B (00.13%) ── Border
> │  │  │   ├─────81,408 B (00.08%) ── UIReset
> │  │  │   ├─────61,440 B (00.06%) ── Padding
> │  │  │   ├─────38,176 B (00.04%) ── UserInterface
> │  │  │   ├─────29,232 B (00.03%) ── Margin
> │  │  │   ├─────21,824 B (00.02%) ── sundries
> │  │  │   ├─────20,080 B (00.02%) ── Color
> │  │  │   ├─────20,080 B (00.02%) ── Column
> │  │  │   └─────10,320 B (00.01%) ── Effects
> │  │  ├───2,227,680 B (02.14%) -- computed-values
> │  │  │   ├──1,182,928 B (01.14%) ── non-dom
> │  │  │   └──1,044,752 B (01.00%) ── dom
> │  │  ├───1,500,016 B (01.44%) ── text-runs
> │  │  ├─────492,640 B (00.47%) ── line-boxes
> │  │  ├─────326,688 B (00.31%) ── frame-properties
> │  │  ├─────301,760 B (00.29%) ── pres-shell
> │  │  ├──────27,648 B (00.03%) ── pres-contexts
> │  │  └─────────176 B (00.00%) ── style-sets

The 'servo-style-structs' and 'computed-values' sub-trees are new. (Prior to
this patch, ComputedValues under DOM elements were tallied under the the
'dom/element-nodes' sub-tree, and ComputedValues not under DOM element were
ignored.) 'servo-style-structs/sundries' aggregates all the style structs that
are smaller than 8 KiB.

Other notable things done by the patch are as follows.

- It significantly changes the signatures of the methods measuring nsINode and
  its subclasses, in order to handle the tallying of style structs separately
  from element-nodes. Likewise for nsIFrame.

- It renames the 'layout/style-structs' sub-tree as
  'layout/gecko-style-structs', to clearly distinguish it from the new
  'layout/servo-style-structs' sub-tree.

- It adds some FFI functions to access various Rust-side data structures from
  C++ code.

- There is a nasty hack used twice to measure Arcs, by stepping backwards from
  an interior pointer to a base pointer. It works, but I want to replace it
  with something better eventually. The "XXX WARNING" comments have details.

- It makes DMD print a line to the console if it sees a pointer it doesn't
  recognise. This is useful for detecting when we are measuring an interior
  pointer instead of a base pointer, which is bad but easy to do when Arcs are
  involved.

- It removes the Rust code for measuring CVs, because it's now all done on the
  C++ side.

MozReview-Commit-ID: BKebACLKtCi

--HG--
extra : rebase_source : 4d9a8c6b198a0ff025b811759a6bfa9f33a260ba
2017-08-11 16:37:33 +10:00
Stone Shih 497e5b94f7 Bug 1351148 Part5: Revise test_bug1261673.html to continue the test after processing the wheel event. r=smaug.
Enabling event prioritization on content process may change the order of synthesized input event and the posted message. Instead of posting a message, uses the event listener to resolve it.

MozReview-Commit-ID: 3dmZpMgqiFg
2017-05-29 15:02:19 +08:00
Sebastian Hengst 56c035fa36 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4cZJ3qFjvPY
2017-08-12 23:49:21 +02:00
Nicholas Nethercote 764c284800 Bug 1387956 (part 1) - Change |nsWindowSizes*| arguments to |nsWindowSizes&|. r=mccr8.
This makes it clear they are never null.

MozReview-Commit-ID: H4i8uqZs48H

--HG--
extra : rebase_source : c7ada64881f015c68eaee2fbfad901f806cab833
2017-08-10 14:13:22 +10:00
Wes Kocher 5a4357c768 Merge inbound to central, a=merge
MozReview-Commit-ID: GArkKmOFIVH
2017-08-11 13:15:33 -07:00
Kyle Machulis 649634a721 Bug 1387184 - Remove nsIDOMHTMLEmbedElement; r=bz
Removes nsIDOMHTMLEmbedElement and all references. HTML elements are
now handled by WebIDL. With the deprecation of extensions, XPCOM
interfaces to HTML elements are no longer needed.

MozReview-Commit-ID: DI4XVvdgPDI

--HG--
extra : rebase_source : 74bd92619e3d1db04c3dd40ec3022474fe1d647c
2017-08-09 12:05:08 -07:00
Stone Shih 5d5578ad36 Backed out changeset b6025d3c4d03 (bug 1351148) 2017-08-11 15:19:24 +08:00
Henri Sivonen 3d387ac082 Bug 483155 - Put content creator function pointers onto nsHtml5ElementName. r=smaug
MozReview-Commit-ID: E2AAx7Zz2UF

--HG--
extra : rebase_source : 1b85ba3b1c699e71e6ecacf4d1dc4271f3416b08
2017-07-04 11:00:03 +03:00
Sebastian Hengst 56587adeab Backed out changeset 5b706cd241cb (bug 483155) for Valgrind failure on Linux x64 opt. r=backout 2017-08-11 10:48:10 +02:00
Aryeh Gregor 5450e8c4d5 Bug 1389207 - Document named getter should not return <embed>s by id; r=mystor
Spec: https://html.spec.whatwg.org/#dom-document-nameditem-filter

Edge, Chromium, and WebKit all pass the WPT test.

MozReview-Commit-ID: K63DlLiMxGa

--HG--
extra : rebase_source : 5440bf22a5ab79858677cf0381f9a9aa548041c2
2017-08-10 22:06:46 +03:00