Commit Graph

4515 Commits

Author SHA1 Message Date
Boris Zbarsky
ed3406b369 Bug 1452786 part 2. Stop using a generated chromeonly isInstance method. r=qdot
This changes semantics in all sorts of ways (e.g. now we get the right proto
from our |this| value instead of it being baked into the function).  But if all
our chrome callers are well-behaved this should be ok.

We _could_ bake the proto id and depth into the function itself by using
js::NewFunctionWithReserved if it were not for Xrays.  Those already need the
reserved slots on functions we Xray.

MozReview-Commit-ID: 1bYrKWWIc1P
2018-04-12 00:06:07 -04:00
Boris Zbarsky
e94c1c593e Bug 1452786 part 1. Move the "is chrome" check for installing [ChromeOnly] stuff into the shared CreateInterfaceObjects method. r=qdot
Right now we do this check pretty much always anyway for isInstance... we do it
twice for anything that actually has [ChromeOnly] bits.

MozReview-Commit-ID: FHbYED4FPJe
2018-04-12 00:06:05 -04:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Nika Layzell
c3cbd8710f Bug 1434768 - Part 1: Add Child/ParentSHistory classes which wrap nsISHistory, r=bz 2018-04-10 17:49:44 -04:00
Karl Tomlinson
2405fe930c bug 1328964 use nsContentUtils::GetCurrentJSContext() on all threads r=smaug
nsContentUtils::GetCurrentJSContextForThread() originally needed to use
workers::GetCurrentThreadJSContext() in
https://hg.mozilla.org/mozilla-central/rev/366a45b41539#l2.18
because CycleCollectedJS*()->Context() did not exist until
https://hg.mozilla.org/mozilla-central/rev/1a0cd542e1e9#l7.12

nsContentUtils::GetCurrentJSContext() is thread-safe since these changes:
https://hg.mozilla.org/mozilla-central/rev/e636c7186286#l3.12
https://hg.mozilla.org/mozilla-central/rev/c8029c072776#l2.12

MozReview-Commit-ID: 2f1eGS9uBBO

--HG--
extra : rebase_source : dad1d2084a63413c3975f9e7c66c6b06857c9f23
2018-04-09 12:11:18 +12:00
Boris Zbarsky
1c287692f6 Bug 1452235 part 5. Stop inheriting nsISupports for nsDOMSerializer. r=qdot
MozReview-Commit-ID: 89iyRqKcAl0
2018-04-09 16:30:33 -04:00
Adrian Wielgosik
2837c659de Bug 1170771 - Remove now-empty nsDOMClassInfo. r=bz
MozReview-Commit-ID: 7XsiPD1kTt9

--HG--
extra : rebase_source : 2935c0fe1a51083f37e113c3e0599760f40829e2
2018-04-05 14:20:44 +02:00
Boris Zbarsky
7842086412 Bug 1451516 part 9. Remove the now-unused needsSpecialGenericOps method. r=qdot 2018-04-05 20:29:42 -04:00
Boris Zbarsky
1e83f6e69e Bug 1451516 part 8. Remove now-dead handling for cross-origin objects in CastableObjectUnwrapper. r=qdot 2018-04-05 20:29:41 -04:00
Boris Zbarsky
024f4366e8 Bug 1451516 part 7. Stop code-generating generic methods. r=qdot 2018-04-05 20:29:41 -04:00
Boris Zbarsky
e3323859c6 Bug 1451516 part 6. Stop code-generating generic setters. r=qdot 2018-04-05 20:29:41 -04:00
Boris Zbarsky
0fc236f464 Bug 1451516 part 5. Stop code-generating generic cross-origin getters. r=qdot 2018-04-05 20:29:41 -04:00
Boris Zbarsky
96880eb840 Bug 1451516 part 4. Stop code-generating generic lenient getters. r=qdot 2018-04-05 20:29:41 -04:00
Boris Zbarsky
d6f68586ee Bug 1451516 part 3. Stop code-generating generic getters for maybe-global objects. r=qdot 2018-04-05 20:29:40 -04:00
Boris Zbarsky
e5888e7298 Bug 1451516 part 2. Refactor GenericBindingGetter to make it easier to use in more cases. r=qdot 2018-04-05 20:29:40 -04:00
Boris Zbarsky
2aaacc9bf8 Bug 1451516 part 1. Make it possible to use binding_detail in generated binding code without too much verbosity. r=qdot 2018-04-05 20:29:40 -04:00
Noemi Erli
ff466e94c1 Merge inbound to mozilla-central. a=merge 2018-04-05 13:02:11 +03:00
Nils Ohlmeier [:drno]
05732f56d8 Bug 1446880: updated exception test to new setIdentityProvider API. r=jib
MozReview-Commit-ID: 8gYEUiL1xvd

--HG--
extra : rebase_source : 84f63a03e84fd8cb620c606b2eede78db187ce2d
2018-04-04 20:47:46 -07:00
Boris Zbarsky
764cd472b6 Bug 1445710. Reduce codesize a bit by removing DOM DefineInterfaceObject methods. r=peterv
MozReview-Commit-ID: 6JRYz4FV9vP
2018-04-04 15:32:19 -04:00
Boris Zbarsky
b808305604 Bug 1450182. Remove the EventListenerWasAdded/Removed hooks from DOMEventTargetHelper. r=smaug
MozReview-Commit-ID: GWnAvK61hVT
2018-04-04 15:32:19 -04:00
Boris Zbarsky
2c63cffb46 Bug 1447454. Stop allowing implicit downcasts in StrongOrRawPtr. r=peterv
MozReview-Commit-ID: BSXp3ThY1dC
2018-04-04 15:32:19 -04:00
Boris Zbarsky
aa63116f80 Bug 1085062 followup. Actually address the review comments. r=peterv 2018-04-04 14:43:41 -04:00
Boris Zbarsky
fe15e92e6b Bug 1085062. Remove hasXPConnectImpls support from bindings codegen. r=peterv 2018-04-04 14:39:52 -04:00
Boris Zbarsky
419465b581 Bug 1085061. Remove the hasXPConnectImpls flag from EventTarget. r=peterv
This is the behavior change.  The cleanup will be in bug 1085062.
2018-04-04 14:39:48 -04:00
Xidorn Quan
d7f3530f07 Bug 1449068 part 2 - Use Servo data to back @counter-style rule. r=emilio
This patch basically does:
* Add descriptor setters and generation count to CounterStyleRule in
  Servo. (This code is mostly based on the old code inside
  nsCSSCounterStyleRule for handling mutation.)
* Use RawServoCounterStyleRule in CounterStyleManager.
* Add ServoCounterStyleRule and remove nsCSSCounterStyleRule.

Test change:
* "fixed" was parsed as and thus serialized to "fixed 1", but Servo
  doesn't do so. It preserves whether the number presents. Either way
  is probably fine.

MozReview-Commit-ID: EtKTeu32isi

--HG--
extra : rebase_source : ec44f01c581003ce4b6ef69435a05de7f3da5469
2018-04-05 08:41:28 +10:00
Xidorn Quan
67fd806b66 Bug 1449087 part 2 - Use Servo data to back @font-face rule. r=emilio
This patch does the following things:
* Create a new class ServoFontFaceRule for CSSOM of @font-face rule
  which mostly follows how nsCSSFontFaceRule was implemented.
* Remove the old nsCSSFontFaceRule and binding code to create it.
* Have FontFace backed by Servo data via making mRule and mDescriptors
  of the class hold RawServoFontFaceRule like ServoFontFaceRule.

To keep this patch small, it effectively just delays the conversion
from Servo data to nsCSSValue from parsing to using. This may cause
worse performance if the font set is flushed repeatedly. Supposing we
don't flush font set very frequently, it may not be a big deal.

We may still want to remove the intermediate nsCSSValue conversion at
some point, and have everything converted to their final form directly
when used, but that can happen in followups.

There are some unfortunate bits from this change:
* We lose style sheet for logging in FontFaceSet. This is probably not
  all that worse, because we wouldn't have that before either if the
  page doesn't use CSSOM to visit it. But we should figure out some
  approach to fix it anyway.
* InspectorFontFace no longer shares the same rule object as CSSOM.
  This isn't really a problem if the @font-face rule isn't very mutable.
  Unless we want to make the rule returned from InspectorFontFace to be
  mutable (i.e. via inspector), not using the same object probably isn't
  too bad.

This patch switches the code we use to serialize stuff in FontFace and
CSSFontFaceRule, which leads to some failures in tests. Specifically,
the expected changes including:
* Value of font-family now can be serialized to identifier sequence like
  font-family property. The old code always serializes it to string,
  but it doesn't seem to have different requirement than the property.
  Blink can serialize to identifier as well.
* Family name inside local() is also changed to use the same way as
  family names elsewhere (i.e. can be identifier sequence). Blink has
  the same behavior as the old code, but I don't think it's a big deal.
* The order of descriptors serialized gets changed. I don't think it
  matters at all.
* Empty string as font-family via using string syntax is no longer
  considered invalid for FontFace. I don't find it is mentioned anywhere
  that it should be specifically treated invalid.


MozReview-Commit-ID: 32Fk3Fi9uTs

--HG--
extra : rebase_source : 6221ec8fc56de357b06dd27e770fb175348a2f77
2018-04-04 08:42:10 +10:00
Boris Zbarsky
1ce7e994ba Bug 1450149. Mark Prefable arrays const in bindings codegen. r=qdot 2018-04-03 00:42:40 -04:00
Tom Ritter
449237fc51 Bug 1378552 - Reduce the liklihood of inadvertently misusing NullPrincipal::Create(). r=ckerschb
NullPrincipal::Create() (will null OA) may cause an OriginAttributes bypass.
We change Create() so OriginAttributes is no longer optional, and rename
Create() with no arguments to make it more explicit about what the caller is doing.

MozReview-Commit-ID: 7DQGlgh1tgJ
2018-03-22 13:36:20 -05:00
Boris Zbarsky
4373a04574 Bug 1446246 part 2. Combine HTMLConstructor and CreateXULOrHTMLElement into a single function. r=peterv
This fixes an observable bug we had due to doing the steps in a different order
from the spec: the 'prototype' get can have side-effects so needs to happen
after some of the other sanity checks.

MozReview-Commit-ID: 83zNhqfqFRu
2018-03-27 15:49:02 -04:00
Boris Zbarsky
753e5af2f1 Bug 1446246 part 1. Use a single handwritten HTMLConstructor implementation, instead of code-generating lots of very similar implementations. r=peterv
The codegen changes are mostly a backout of the changes made in bug 1274159.

The HTMLConstructor implementation is mostly copied from one of the
code-generated ones, with a few modifications:

* Derive the interface name from the proto id instead of hardcoding it.
* Use the proto/constructor ids to get constructor and prototype objects.
* Use ErrorResult instead of FastErrorResult; we don't want the precedent of
  using FastErrorResult in non-generated code.

There will be further changes to combine HTMLConstructor and
CreateXULOrHTMLElement, in a separate changeset.

MozReview-Commit-ID: 44D0qw23ioP
2018-03-27 15:49:02 -04:00
Tom Schuster
2bf6212869 Bug 1255800 - Remove JS_THIS_OBJECT from dom/xpconnect. r=bz
--HG--
extra : rebase_source : dcaa891010e25e10079db853fe4eb1a7fe261e47
2018-03-07 14:35:22 +01:00
Boris Zbarsky
17509bc9da Bug 1449019. Actually propagate out exceptions from the innerHTML getter. r=smaug
I moved the IgnoreErrors decl so it would come after the OOMReporter decl and I
could add the new conversion operator.

MozReview-Commit-ID: B1S6DXmZfvE
2018-03-26 16:41:43 -04:00
Coroiu Cristina
f7507f7dd5 Merge mozilla-central to inbound a=merge on a CLOSED TREE 2018-03-27 01:33:50 +03:00
Nicholas Nethercote
bac452f9ad Bug 1411469 - Statically allocate static atoms. r=froydnj
Currently static atoms are stored on the heap, but their char buffers are
stored in read-only static memory.

This patch changes the representation of nsStaticAtom (thus making it a
non-trivial subclass of nsAtom). Instead of a pointer to the string, it now has
an mStringOffset field which is a 32-bit offset to the string. (This requires
placement of the string and the atom within the same object so that the offset
is known to be small. The docs and macros in nsStaticAtom.h handle that.)

Static and dynamic atoms now store their chars in different ways: nsStaticAtom
stores them inline, nsDynamicAtom has a pointer to separate storage. So
`mString` and GetStringBuffer() move from nsAtom to nsDynamicAtom.

The change to static atoms means they can be made constexpr and stored in
read-only memory instead of on the heap. On 64-bit this reduces the per-process
overhead by 16 bytes; on 32-bit the saving is 12 bytes. (Further reductions
will be possible in follow-up patches.)

The increased use of constexpr required multiple workarounds for MSVC.
- Multiple uses of MOZ_{PUSH,POP}_DISABLE_INTEGRAL_CONSTANT_OVERFLOW_WARNING to
  disable warnings about (well-defined!) overflow of unsigned integer
  arithmetic.
- The use of -Zc:externConstexpr on all files defining static atoms, to make
  MSVC follow the C++ standard(!) and let constexpr variables have external
  linkage.
- The use of -constexpr:steps300000 to increase the number of operations
  allowed in a constexpr value, in order to handle gGkAtoms, which requires
  hashing ~2,500 atom strings.

The patch also changes how HTML5 atoms are handled. They are now treated as
dynamic atoms, i.e. we have "dynamic normal" atoms and "dynamic HTML5 atoms",
and "dynamic atoms" covers both cases, and both are represented via
nsDynamicAtom. The main difference between the two kinds is that dynamic HTML5
atoms still aren't allowed to be used in various operations, most notably
AddRef()/Release(). All this also required moving nsDynamicAtom into the header
file.

There is a slight performance cost to all these changes: now that nsStaticAtom
and nsDynamicAtom store their chars in different ways, a conditional branch is
required in the following functions: Equals(), GetUTF16String(),
WeakAtom::as_slice().

Finally, in about:memory the "explicit/atoms/static/atom-objects" value is no
longer needed, because that memory is static instead of heap-allocated.

MozReview-Commit-ID: 4AxPv05ngZy
2018-03-26 11:18:31 +02:00
L. David Baron
1da1c4f2be Bug 1448138 - Rename string DataFlags::SHARED to REFCOUNTED to make it clearer to those reading the code. r=erahm
MozReview-Commit-ID: 1mJuwY5dQkj

--HG--
extra : transplant_source : %B8%97%C2%AAa%A6%3D%E3%AC%9C%C1%15%99%FE%94%1A%E2K%81%F1
2018-03-23 17:31:37 -07:00
Margareta Eliza Balazs
190225b29c Backed out changeset 794ee6857d83 (bug 1421070) for 15 failures in toolkit/components/payments/test/mochitest/test_ObservedPropertiesMixin.html on a CLOSED TREE
--HG--
extra : amend_source : 0574ce1b5b6a6e8735245684eb8e9ec7b0ac2647
2018-03-23 03:42:25 +02:00
Dave Townsend
c70f34995e Bug 1421070: Always enable custom elements in chrome. r=smaug, rs=MattN
This allows custom elements to work in any document in the parent process that
allows XUL and XBL. The test takes the easy option of moving the existing XUL
custom element test to a run with the custom element pref disabled.

MozReview-Commit-ID: CMiLzmp60jA

--HG--
extra : rebase_source : 735688061116c633b816f4f9d488712408df11a5
extra : source : 794ee6857d83dfe0b18629c12e96a622fc899586
2017-10-20 11:02:33 -07:00
Boris Zbarsky
a245fdf72d Bug 1448397. Make WebIDL QueryInterface chrome-only. r=qdot 2018-03-26 13:35:04 -04:00
Dave Townsend
2626e1c261 Bug 1421070: Always enable custom elements in chrome. r=smaug
This allows custom elements to work in any document in the parent process that
allows XUL and XBL. The test takes the easy option of moving the existing XUL
custom element test to a run with the custom element pref disabled.

MozReview-Commit-ID: CMiLzmp60jA

--HG--
extra : rebase_source : b9632de82cf79c1df15be09fadf1d25817c8a894
extra : amend_source : 235a76453d1d6782903d5051ee8e234b965dcc36
2017-10-20 11:02:33 -07:00
Boris Zbarsky
35d4bc91ec Bug 1444143 part 13. Remove nsIFrameLoader. r=mystor
MozReview-Commit-ID: 4LG8nIePsMH
2018-03-21 22:43:17 -04:00
Peter Van der Beken
e673e5f508 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 5: Convert MessageManager globals to WebIDL. r=bz.
The change in browser_net_view-source-debugger.js is needed because we now use WebIDL callbacks for MessageListener, and they add async creation stack frames.

--HG--
extra : rebase_source : 0adb349b40a0c51bb3d8f4b9b7d98106a3929cbd
extra : source : a88d94ec010a12c1d829708aaf59a85609478477
2017-07-19 14:59:02 +02:00
Peter Van der Beken
5ad9618d7c Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 4: Convert MessageManager to WebIDL. r=bz.
--HG--
extra : rebase_source : aa7aa3a5f720b5a4f6ff88e41eb9e80ffb9092cd
2017-06-20 11:09:50 +02:00
Boris Zbarsky
f406b29197 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 1a: Make PinnedStringId constructor constexpr. r=Waldo/froydnj.
--HG--
extra : rebase_source : 0ed87197f6740b74648fc5107bd6fb4e7409cdfa
2018-03-07 21:50:24 +01:00
Peter Van der Beken
ef631ce856 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 1: Add infrastructure to expose 'system' names on a WebIDL global. r=bz.
--HG--
extra : rebase_source : 70d3a641c60968e013f048e6be91f07641e7b81b
2017-07-19 15:04:14 +02:00
Daniel Holbert
ac637fa79e Bug 1447420: Give CallbackObject.cpp an include for nsContentUtils.h (whose methods it calls). r=baku
MozReview-Commit-ID: 84cktBhkUOd

--HG--
extra : rebase_source : 1d03ce470c749e675e8afb9cd0ffe0cce686c109
2018-03-20 12:18:20 -07:00
Boris Zbarsky
971ee6f9cb Bug 1446533 part 2. Rename nsGenericDOMDataNode.{h,cpp} to CharacterData. r=mystor
The DOMMatrix.cpp changes are because it was sneaking in headers via another
unified file.

MozReview-Commit-ID: GPp9WOywI5D

--HG--
rename : dom/base/nsGenericDOMDataNode.cpp => dom/base/CharacterData.cpp
rename : dom/base/nsGenericDOMDataNode.h => dom/base/CharacterData.h
2018-03-19 15:18:07 -04:00
Boris Zbarsky
b06aa7e061 Bug 1446533 part 1. Rename nsGenericDOMDataNode to CharacterData. r=mystor
This is not renaming the files yet; that will be a separate changeset.

MozReview-Commit-ID: 5TxkEiQlaKF
2018-03-19 15:18:06 -04:00
Andrea Marchesini
6f7a4bfd5d Bug 1445199 - Remove JSContext parameter in worker NotifyHolder, r=smaug 2018-03-13 15:25:50 +01:00
Narcis Beleuzu
298d1d55b5 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-13 12:36:54 +02:00
Emilio Cobos Álvarez
98e6994aaf Bug 1444416: Make bindings generate appropriate MOZ_KnownLive wrappers. r=bz
MozReview-Commit-ID: DBmgwNYVjTM

--HG--
extra : rebase_source : a0866d03686d5ca8aabd954014bf8abb89a419d9
2018-03-09 21:21:59 +01:00
Andrea Marchesini
5784769019 Bug 1443079 - nsScriptError.isFromPrivateWindow must match the correct value also in e10s mode, r=smaug 2018-03-13 06:40:38 +01:00
Boris Zbarsky
ae49ae4bef Bug 1444586. Fix the signatures of some binding test methods. r=qdot
MozReview-Commit-ID: EeuowmJxwt
2018-03-13 00:59:24 -04:00
Boris Zbarsky
aa3ff36ffc Bug 1444880. Stop including jsfriendapi.h in PrototypeList.h. r=mccr8
This way we don't include it in all the binding headers.  We only need
jsfriendapi.h for the static_asserts involving JSJitInfo, so we move those to
PrototypeList.cpp.

MozReview-Commit-ID: 7KOmbjwSBOD
2018-03-13 00:59:23 -04:00
Boris Zbarsky
272ace7ae2 Bug 1444286. Common up the Get*ObjectHandle methods in bindings. r=peterv
This reduces codesize, at the cost of a bit more includes in the binding headers.

MozReview-Commit-ID: 40dLELF36Oh
2018-03-09 16:04:11 -05:00
Nicholas Nethercote
8ac9830be0 Bug 1444031 - Rename Is{Static,Dynamic,HTML5}Atom. r=froydnj
By removing the "Atom" suffix, which is redundant.

MozReview-Commit-ID: 4MCX9Icfjrw

--HG--
extra : rebase_source : c3c759a508a8938b59d36dbb20448d2964b98c91
2018-03-07 15:17:34 +11:00
Kris Maglione
444be7c1c2 Bug 1442931: Part 1 - Forbid web-visible interfaces outside of WebIDL root. r=mystor
Web-visible WebIDL interfaces require DOM peer review with every change, which
is enforced by a commit hook. ChromeOnly interfaces are not exposed to the
web, and therefore don't require the same strictures.

The current commit hook enforces the review requirement for changes to any
(non-Servo) WebIDL file, and is not smart enough to determine if the change is
web-visible. In order to loosen that restriction, we need the build system to
enforce the requirement that only WebIDL files in certain locations may
contain web-visible interfaces, so that the commit hook can restrict itself to
checking only those directories.

This change restricts the location of web-visible WebIDL interfaces to the
dom/webidl/ and dom/bindings/ roots (along with the corresponding objdir root
for generated interfaces). A follow-up will change the commit hook to only
enforce review requirements on these directories.

MozReview-Commit-ID: CiDxXxN4oO4

--HG--
extra : rebase_source : d836004da9f2def74e7c8cd5d580db2290a938d4
extra : intermediate-source : 608e21fcd1674dae3f8b685cedab85c43ffdb485
extra : source : 6cb20ada1a0aa1f6d621ba3c85ce9946a6f9841f
2018-03-05 14:21:38 -08:00
Andreea Pavel
01d4e4cfa4 Backed out 2 changesets (bug 1442931) for build bustages at ..\dom\bindings\mozwebidlcodegen\test\test_mozwebidlcodegen.py::TestWebIDLCodegenManager::test_copy_input on a CLOSED TREE
Backed out changeset 9f46e7d52b9b (bug 1442931)
Backed out changeset 608e21fcd167 (bug 1442931)

--HG--
rename : dom/chrome-webidl/ChannelWrapper.webidl => dom/webidl/ChannelWrapper.webidl
rename : dom/chrome-webidl/ChromeUtils.webidl => dom/webidl/ChromeUtils.webidl
rename : dom/chrome-webidl/DominatorTree.webidl => dom/webidl/DominatorTree.webidl
rename : dom/chrome-webidl/HeapSnapshot.webidl => dom/webidl/HeapSnapshot.webidl
rename : dom/chrome-webidl/InspectorUtils.webidl => dom/webidl/InspectorUtils.webidl
rename : dom/chrome-webidl/MatchGlob.webidl => dom/webidl/MatchGlob.webidl
rename : dom/chrome-webidl/MatchPattern.webidl => dom/webidl/MatchPattern.webidl
rename : dom/chrome-webidl/MozStorageAsyncStatementParams.webidl => dom/webidl/MozStorageAsyncStatementParams.webidl
rename : dom/chrome-webidl/MozStorageStatementParams.webidl => dom/webidl/MozStorageStatementParams.webidl
rename : dom/chrome-webidl/MozStorageStatementRow.webidl => dom/webidl/MozStorageStatementRow.webidl
rename : dom/chrome-webidl/PrecompiledScript.webidl => dom/webidl/PrecompiledScript.webidl
rename : dom/chrome-webidl/PromiseDebugging.webidl => dom/webidl/PromiseDebugging.webidl
rename : dom/chrome-webidl/StructuredCloneHolder.webidl => dom/webidl/StructuredCloneHolder.webidl
rename : dom/chrome-webidl/WebExtensionContentScript.webidl => dom/webidl/WebExtensionContentScript.webidl
rename : dom/chrome-webidl/WebExtensionPolicy.webidl => dom/webidl/WebExtensionPolicy.webidl
2018-03-07 08:53:06 +02:00
Kris Maglione
c8a6abe11d Bug 1442931: Part 1 - Forbid web-visible interfaces outside of WebIDL root. r=mystor
Web-visible WebIDL interfaces require DOM peer review with every change, which
is enforced by a commit hook. ChromeOnly interfaces are not exposed to the
web, and therefore don't require the same strictures.

The current commit hook enforces the review requirement for changes to any
(non-Servo) WebIDL file, and is not smart enough to determine if the change is
web-visible. In order to loosen that restriction, we need the build system to
enforce the requirement that only WebIDL files in certain locations may
contain web-visible interfaces, so that the commit hook can restrict itself to
checking only those directories.

This change restricts the location of web-visible WebIDL interfaces to the
dom/webidl/ and dom/bindings/ roots (along with the corresponding objdir root
for generated interfaces). A follow-up will change the commit hook to only
enforce review requirements on these directories.

MozReview-Commit-ID: CiDxXxN4oO4

--HG--
extra : source : 6cb20ada1a0aa1f6d621ba3c85ce9946a6f9841f
extra : histedit_source : 1f02888264a936db3e77134c0a7203e911707312%2C6ea38c077b8a7dfaf358bc819d150a20db9bd6b7
2018-03-05 14:21:38 -08:00
Kris Maglione
27f4fb5abd Backed out two changesets (bug 1442931) for Windows build bustage
MozReview-Commit-ID: EAP1dIdvd8g

--HG--
extra : histedit_source : 0848dcd64f0e1cccaf9ce2c5faa08509990cfade%2Cd100c0c3dfca8b92f9cd1fda1b126a0d2f8a47cd
2018-03-06 20:47:41 -08:00
Kris Maglione
d047164a17 Bug 1442931: Part 1 - Forbid web-visible interfaces outside of WebIDL root. r=mystor
Web-visible WebIDL interfaces require DOM peer review with every change, which
is enforced by a commit hook. ChromeOnly interfaces are not exposed to the
web, and therefore don't require the same strictures.

The current commit hook enforces the review requirement for changes to any
(non-Servo) WebIDL file, and is not smart enough to determine if the change is
web-visible. In order to loosen that restriction, we need the build system to
enforce the requirement that only WebIDL files in certain locations may
contain web-visible interfaces, so that the commit hook can restrict itself to
checking only those directories.

This change restricts the location of web-visible WebIDL interfaces to the
dom/webidl/ and dom/bindings/ roots (along with the corresponding objdir root
for generated interfaces). A follow-up will change the commit hook to only
enforce review requirements on these directories.

MozReview-Commit-ID: CiDxXxN4oO4

--HG--
extra : rebase_source : f61b33ae4c973b1c9ec1423bb9baca59725e44b1
2018-03-05 14:21:38 -08:00
Zibi Braniecki
8313ce3a74 Bug 1363862 - Add Node.localize API as a fast-path for Fluent DOM localization. r=baku
MozReview-Commit-ID: 6mj0q21Nbey

--HG--
extra : rebase_source : 3da2ba3b712f4708f57cc859c28e3dd996208ca5
2018-02-21 14:07:53 -08:00
Kannan Vijayan
627eb6ae9a Bug 1411415 - r=bz r=fitzgen 2018-03-05 19:27:02 -05:00
Olli Pettay
2439836b37 Bug 1193394 - Part 1: Microtasks and promises scheduling. r=bevis 2017-11-17 11:01:27 +08:00
Csoregi Natalia
1fd0486e23 Backed out 7 changesets (bug 1193394) for browser-chrome failures on browser_ext_popup_background.js. CLOSED TREE
Backed out changeset 9683f24ff8ec (bug 1193394)
Backed out changeset 0e7140a7c841 (bug 1193394)
Backed out changeset a0e26f6b2784 (bug 1193394)
Backed out changeset 29e1fceaf48d (bug 1193394)
Backed out changeset b8632bbbd273 (bug 1193394)
Backed out changeset a54ef2d8f896 (bug 1193394)
Backed out changeset 55c94c05c57f (bug 1193394)
2018-03-01 16:29:02 +02:00
Sebastian Hengst
6098a3cc4d merge mozilla-central to mozilla-inbound. CLOSED TREE 2018-03-01 12:29:42 +02:00
Sebastian Hengst
3a10644021 Backed out 6 changesets (bug 888600) for beta simulation failures: build bustage on Linux and Windows opt (bug 1442036) and devtools failure browser_net_view-source-debugger.js (bug 1441961). a=backout
Backed out changeset 83c87140dc3d (bug 888600)
Backed out changeset 2efb9b1753f6 (bug 888600)
Backed out changeset af5303781961 (bug 888600)
Backed out changeset 79ef59047e63 (bug 888600)
Backed out changeset 30d568d628dd (bug 888600)
Backed out changeset c7bd4c6c9741 (bug 888600)

--HG--
extra : histedit_source : 791b22f6770f4fead2f909478a93d65d85829fe0%2Cbb387309e90f53e1dde45dcf8cf4ebedcc6e5c5e
2018-03-01 11:51:09 +02:00
Florian Quèze
c714053d73 Bug 1433175 - scripted patch to replace Components.classes[, Components.interfaces.nsI, Components.utils. and Components.results. with Cc, Ci, Cu and Cr, r=Mossop. 2018-02-28 18:51:33 +01:00
Olli Pettay
b7726493fb Bug 1193394 - Part 1: Microtasks and promises scheduling. r=bevis 2017-11-17 11:01:27 +08:00
Peter Van der Beken
fc804325a9 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 5: Convert MessageManager globals to WebIDL. r=bz.
The change in browser_net_view-source-debugger.js is needed because we now use WebIDL callbacks for MessageListener, and they add async creation stack frames.

--HG--
extra : rebase_source : d7c026d8a77634ef2566feba78168beb8a66a552
2017-07-19 14:59:02 +02:00
Peter Van der Beken
e9ab02acb0 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 4: Convert MessageManager to WebIDL. r=bz.
--HG--
extra : rebase_source : 21a04b112c838f100afe28bc31265130900703da
2017-06-20 11:09:50 +02:00
Peter Van der Beken
615d394604 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 1: Add infrastructure to expose 'system' names on a WebIDL global. r=bz.
--HG--
extra : rebase_source : 6473c862fe98793438c02fa075f3378f8307b45b
2017-07-19 15:04:14 +02:00
arthur.iakab
9bffb6aa72 Merge inbound to mozilla-central. a=merge 2018-02-27 11:58:55 +02:00
Boris Zbarsky
933fb5668e Bug 1438961. Make DOM binding bits build in a debug --disable-tests build. r=qdot 2018-02-26 17:27:23 -05:00
Sylvestre Ledru
dc058f0310 Bug 1370794 - Replace some 0 by false in the dom bindings code generation r=Ehsan
MozReview-Commit-ID: IRErUEAlkTc

--HG--
extra : rebase_source : 117e6c696da2829088c63019f3805de77d5609e8
2018-02-07 12:05:45 +01:00
Jason Orendorff
e7c94fff59 Bug 1439063 - Part 1: Move several public headers from js/src to js/public. r=jandem.
js/src/jsalloc.h -> js/public/AllocPolicy.h
jsalloc.cpp -> js/src/util/AllocPolicy.cpp
jsbytecode.h -> merge into js/public/TypeDecls.h
jsprf.h -> js/public/Printf.h
jsprf.cpp -> js/src/util/Printf.cpp
jsprototypes.h -> public/ProtoKey.h
jswrapper.h -> js/Wrapper.h

--HG--
rename : js/src/jsalloc.h => js/public/AllocPolicy.h
rename : js/src/jsprf.h => js/public/Printf.h
rename : js/src/jsprototypes.h => js/public/ProtoKey.h
rename : js/src/jswrapper.h => js/public/Wrapper.h
rename : js/src/jsalloc.cpp => js/src/util/AllocPolicy.cpp
rename : js/src/jsprf.cpp => js/src/util/Printf.cpp
extra : rebase_source : 98b16d94c469202eab0303a8da844f1d0b6aa809
extra : amend_source : e0b16c1077226d6fe240f4d7096537f93b43f2b8
extra : histedit_source : d94e0ba7904a7d66742c7fac43f638aaec4fa4e5
2018-02-21 10:30:19 -06:00
Dorel Luca
9b2f91981c Backed out 6 changesets (bug 888600) for Valgrind and build bustge on a CLOSED TREE
Backed out changeset 7c8317f4ad48 (bug 888600)
Backed out changeset 5b990735f1ad (bug 888600)
Backed out changeset 9eafe225b804 (bug 888600)
Backed out changeset 16af80d6cd93 (bug 888600)
Backed out changeset a109987af625 (bug 888600)
Backed out changeset 0949dba396ad (bug 888600)
2018-02-22 13:56:43 +02:00
Peter Van der Beken
40a044892a Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 5: Convert MessageManager globals to WebIDL. r=bz.
The change in browser_net_view-source-debugger.js is needed because we now use WebIDL callbacks for MessageListener, and they add async creation stack frames.

--HG--
extra : rebase_source : 77672a73a6e1447c763930143116a261f2369e67
2017-07-19 14:59:02 +02:00
Peter Van der Beken
8c4cf977e2 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 4: Convert MessageManager to WebIDL. r=bz.
--HG--
extra : rebase_source : 9d34380827193c597b2754e290aa5636b75f7461
2017-06-20 11:09:50 +02:00
Peter Van der Beken
8ec89589cb Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 1: Add infrastructure to expose 'system' names on a WebIDL global. r=bz.
--HG--
extra : rebase_source : 3724f7d03d9c76067827ffce1e7b64a61389d469
2017-07-19 15:04:14 +02:00
Tooru Fujisawa
9a81f2437f Bug 1414674 - Do not enter the compartment of the target window when calling KeyframeEffect and KeyframeEffectReadOnly constructor via Xray. r=bz,birtles
KeyframeEffect and KeyframeEffectReadOnly constructors can run in the caller
compartment, which is okay because the current compartment is used in the
following places and all of them are safe:

1. GlobalObject::CallerType(), that is ultimately passed to
   nsDocument::IsWebAnimationsEnabled in KeyframeEffectParamsFromUnion,
   to decide whether to copy mIterationComposite/mComposite to
   KeyframeEffectParams.

   GlobalObject::CallerType() can now be different than the target window's one,
   if the caller has the system principal and the target is web content, and
   in that case nsDocument::IsWebAnimationsEnabled there always returns true
   while Web Animations can be disabled on web content.

   honoring the mIterationComposite/mComposite properties is OK, since it just
   changes the animation behavior, and this is disabled by default until
   remaining spec issues are resolved.

2. GlobalObject::Context(), that is ultimately passed to
   KeyframeUtils::GetKeyframesFromObject and used while extracting information
   from passed-in keyframe object, with iterable/iterator protocols.

   Performing that operation in the caller side is okay, since the same thing
   can be done on caller, and the operation doesn't perform any GCThing
   allocation on the target window global.
2018-02-17 17:21:13 +09:00
Chris Peterson
fe5cd3d5d9 Bug 1436263 - Part 3: Remove virtual from final virtual function declarations. r=froydnj
MozReview-Commit-ID: 8pjYjEvQF42

--HG--
extra : rebase_source : 5eb0bea2ef5f06a811b4f3daf57ce8720f12dd07
2018-02-08 21:22:43 -08:00
Chris Peterson
d09123f248 Bug 1436263 - Part 1: Replace final override virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D

--HG--
extra : rebase_source : 94831c1e13a840dd2ea0600f64bcf70c2bf938d9
extra : source : cf9283bf1b0bca3a6311c98e227329d451f80ecb
2018-02-05 22:46:57 -08:00
Tooru Fujisawa
d70a10cbd8 Backed out changeset c3f16a179c93 (bug 1414674) 2018-02-18 01:24:08 +09:00
Tooru Fujisawa
d58a217b1c Bug 1414674 - Do not enter the compartment of the target window when calling KeyframeEffect and KeyframeEffectReadOnly constructor via Xray. r=bz,birtles
KeyframeEffect and KeyframeEffectReadOnly constructors can run in the caller
compartment, which is okay because of the following reasons:

1. The target window global is used for most operation:
     * KeyframeEffectReadOnly::ConstructKeyframeEffect uses the target window
       global instead of current global.
     * KeyframeEffectParamsFromUnion which receives `aGlobal.CallerType()`

   In Xray case, Web Animations API can be disabled on web content
   (currently disabled on beta/release by default), and in that case some API
   won't work even it's triggered from WebExtensions, but it should be fine.

2. GetKeyframesFromObject is executed in the caller's compartment to access
   the passed-in JSObject that is keyframe, with iterable/iterator protocols.
   This operation doesn't perform any GCThing allocation on the target window
   global.
2018-02-17 17:21:13 +09:00
Nils Ohlmeier [:drno]
5d76400725 Bug 1173851: rename DataChannel to RTCDataChannel r=jib,smaug
MozReview-Commit-ID: L8OrIlxM7r1

--HG--
rename : dom/webidl/DataChannel.webidl => dom/webidl/RTCDataChannel.webidl
extra : rebase_source : 013fd0b02c6b5e3a95395bbfed68e27138b507ed
2018-02-09 14:36:48 -08:00
Dorel Luca
977a4712b6 Backed out 2 changesets (bug 1173851) for Mochitest failures on dom/tests/mochitest/general/test_interfaces.html. CLOSED TREE
Backed out changeset aba40941f027 (bug 1173851)
Backed out changeset 36e6f0595461 (bug 1173851)

--HG--
rename : dom/webidl/RTCDataChannel.webidl => dom/webidl/DataChannel.webidl
2018-02-15 01:10:06 +02:00
Nils Ohlmeier [:drno]
95deaeb484 Bug 1173851: rename DataChannel to RTCDataChannel r=jib,smaug
MozReview-Commit-ID: L8OrIlxM7r1

--HG--
rename : dom/webidl/DataChannel.webidl => dom/webidl/RTCDataChannel.webidl
extra : rebase_source : b89dbe0ac4dab71199d758b8cd85ea9655533067
2018-02-09 14:36:48 -08:00
Boris Zbarsky
891566df26 Bug 1437255. Use a null prototype for @@unscopables objects in the DOM. r=qdot
MozReview-Commit-ID: 9YjnPHe78Tg
2018-02-12 15:46:11 -05:00
Boris Zbarsky
07eaf60521 Bug 1436902 part 5. Change generated event classes to use NS_INLINE_DECL_REFCOUNTING_INHERITED when possible. r=mccr8
This makes 23 generated event clases use NS_INLINE_DECL_REFCOUNTING_INHERITED.

MozReview-Commit-ID: 7dyWTc1AUfH
2018-02-12 15:45:51 -05:00
Boris Zbarsky
d6807fd501 Bug 1436902 part 4. Refactor event codegen a bit to make it easier to tell whether the event class needs cycle collection. r=mccr8
I looked at the diff in the generated code, and the only change is that
SpeechRecognitionEvent's unlink impl goes from:

 NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(SpeechRecognitionEvent, Event)
   NS_IMPL_CYCLE_COLLECTION_UNLINK(mResults)
   tmp->mInterpretation.setUndefined();
   NS_IMPL_CYCLE_COLLECTION_UNLINK(mEmma)
 NS_IMPL_CYCLE_COLLECTION_UNLINK_END

to:

 NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(SpeechRecognitionEvent, Event)
   NS_IMPL_CYCLE_COLLECTION_UNLINK(mResults)
   NS_IMPL_CYCLE_COLLECTION_UNLINK(mEmma)
+  tmp->mInterpretation.setUndefined();
 NS_IMPL_CYCLE_COLLECTION_UNLINK_END

MozReview-Commit-ID: FISIphljlT6
2018-02-12 15:45:10 -05:00
Markus Stange
7e275b635a Bug 785440 - Add profiler labels to WebIDL bindings: getters / setters / method calls. r=bz
MozReview-Commit-ID: IyhXzv0Chye

--HG--
extra : rebase_source : 6ad1a5bc7f65e157cafa22646c10e56c5f45f90a
extra : source : f38192387128b3e2479c1a3e1654e8339668b34f
2018-01-05 14:40:03 +01:00
Boris Zbarsky
a6fdc48869 Bug 1436276. Bindings should create their return promises in the current compartment even when called over Xrays. r=bholley
These are cases that are implementing the "convert an exception to a Promise"
steps of the Web IDL spec.  Typically the exception is thrown in the current
compartment; the Promise returned should simply match that.  Otherwise we can
end up with a situation in which the promise doesn't actaully have access to
its rejection value, which will cause problems if someone uses then() on the
promise: the return value of the then() call will get a sanitized exception
instead of the real one.

We _could_ try to match the actual compartment of the exception, in theory.
But it's not clear why this would be preferable to using the current
compartment, even if there were cases in which the exception _doesn't_ match
the current compartment.  Which there likely are not.

MozReview-Commit-ID: Ac2BHIHxfvY

--HG--
rename : dom/promise/tests/test_promise_argument.html => dom/promise/tests/test_promise_retval.html
rename : dom/promise/tests/test_promise_argument_xrays.html => dom/promise/tests/test_promise_retval_xrays.html
2018-02-10 01:34:10 -05:00
Boris Zbarsky
a6113241a2 Bug 1436831 part 1. Support [Pref] annotations on Web IDL namespaces. r=qdot
MozReview-Commit-ID: 6gzMWPOlKWM
2018-02-09 11:17:10 -05:00
Adrian Wielgosik
1438296c97 Bug 1436865 - Remove nsIDOMCrypto. r=bz
MozReview-Commit-ID: 4bQVSF94bbz

--HG--
extra : rebase_source : 6386e08c4a392b75473c47997e6cf01d35be78e2
2018-02-08 13:22:20 +01:00
Andrea Marchesini
f6957bfded Bug 1435196 - Move the webidl binding interfaces out of WorkerPrivate - part 1 - WebIDL bindings, r=bkelly 2018-02-08 08:26:05 +01:00
Tim Taubert
1d2ba2eb2b Bug 1436308 - Generate a ToJSON() method for WebIDL types with records r=bz
We currently don't generate a ::ToJSON() method for WebIDL types with record<K,V>
members. These types should be safe to convert to JSON, as long as type V itself
is. Per spec, type K is always a DOMString, USVString, or ByteString.
2018-02-07 12:01:00 +01:00
Andrew McCreight
5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Boris Zbarsky
3bf93ec28e Bug 1435483 part 18. Remove nsIException::GetResult. r=qdot
MozReview-Commit-ID: JArus2ddEsL
2018-02-05 16:34:06 -05:00
Boris Zbarsky
12e9f78050 Bug 1435483 part 16. Switch to using dom::Exception, not nsIException, in C++ code. r=qdot
nsIException is builtinclass in idl, so whatever code we had to handle
non-dom::Exception nsIExceptions is dead code.

MozReview-Commit-ID: 6VnqDWt0041
2018-02-05 16:34:05 -05:00
Boris Zbarsky
fc5ae1f4a1 Bug 1435483 part 12. Add an infallible "toString" method on nsIStackFrame. r=qdot
MozReview-Commit-ID: CTCawPvw6VZ
2018-02-05 16:34:05 -05:00
Boris Zbarsky
539cfc28e6 Bug 1435483 part 11. Add an infallible "formattedStack" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: KLSzUuWt45x
2018-02-05 16:34:05 -05:00
Boris Zbarsky
c8bd8682bf Bug 1435483 part 10. Add infallible "asyncCaller" and "caller" getters on nsIStackFrame. r=qdot
MozReview-Commit-ID: 8pdMDFHWlVt
2018-02-05 16:34:05 -05:00
Boris Zbarsky
b7eaf4b6ae Bug 1435483 part 9. Add an infallible "name" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: ADxO2A8nkel
2018-02-05 16:34:05 -05:00
Boris Zbarsky
984978f22d Bug 1435483 part 8. Add an infallible "asyncCause" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: KpRyt21PF7W
2018-02-05 16:34:04 -05:00
Boris Zbarsky
fc7c1f0034 Bug 1435483 part 7. Add an infallible "columnNumber" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: 7VJvDR0qD3G
2018-02-05 16:34:04 -05:00
Boris Zbarsky
2c00c8c971 Bug 1435483 part 6. Add an infallible "lineNumber" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: 7aYg9kJhiab
2018-02-05 16:34:04 -05:00
Boris Zbarsky
02f7baafc0 Bug 1435483 part 5. Add an infallible "filename" getter on nsIStackFrame. r=qdot
MozReview-Commit-ID: D3uuehuDqOB
2018-02-05 16:34:04 -05:00
Andrea Marchesini
8cdf705535 Bug 1435174 - Remove the renaming 'using namespace workers', r=bkelly 2018-02-05 19:55:07 +01:00
Eric Rahm
14975c9574 Bug 1434689 - Part 4: Annotate IgnoreErrors as MOZ_TEMPORARY_CLASS. r=bz
IgnoreErrors is intended to only be used as a temporary class, this adds an
explicit annotation.

--HG--
extra : rebase_source : 4142429081d3f70097594d200950b74d100ab67b
2018-02-02 13:21:51 -08:00
Florian Quèze
2b1c8dccb6 Bug 1339461 - script-generated patch to convert foo.indexOf(...) == -1 to foo.includes(), r=Mossop. 2018-02-01 20:45:22 +01:00
Boris Zbarsky
bc7691a8db Bug 1434686 part 2. Use IgnoreErrors() in dom/bindings. r=mystor
MozReview-Commit-ID: G8vxR2s2qUJ
2018-02-01 14:21:14 -05:00
Boris Zbarsky
f7f6285330 Bug 1434686 part 1. Introduce a mozilla::IgnoreErrors which can be used as a temporary to pass to an ErrorResult& arg when the error should be ignored. r=mystor
Once bug 1434689 is fixed, we can mark this thing as being required to be a temporary.

MozReview-Commit-ID: 7VX0XSYVOc4
2018-02-01 14:21:14 -05:00
Andrea Marchesini
26352bfee1 Bug 1432963 - Fixing workers headers - part 17 - no LIBS=[workers] in moz.build files, r=smaug 2018-01-31 08:25:30 +01:00
Andrea Marchesini
2c7c69af24 Bug 1432963 - Fixing workers headers - part 14 - WorkerPrivate without workers namespace, r=smaug 2018-01-31 08:24:08 +01:00
Andrea Marchesini
063723a1f0 Bug 1432963 - Fixing workers headers - part 13 - WorkerHolder without workers namespace, r=smaug 2018-01-31 08:23:44 +01:00
Andrea Marchesini
c08095be82 Bug 1432963 - Fixing workers headers - part 1 - no workers namespace for SharedWorker, r=smaug 2018-01-31 08:19:10 +01:00
Kris Maglione
918ed6c474 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
extra : intermediate-source : 34c999fa006bffe8705cf50c54708aa21a962e62
extra : histedit_source : b2be2c5e5d226e6c347312456a6ae339c1e634b0
2018-01-29 15:20:18 -08:00
Gurzau Raul
c380dfe905 Merge inbound to mozilla-central. a=merge 2018-01-30 12:01:49 +02:00
Cosmin Sabou
9a65a40178 Backed out 3 changesets (bug 1431533) for Android mochitest failures on testEventDispatcher on a CLOSED TREE
Backed out changeset a1eca62826a1 (bug 1431533)
Backed out changeset 34c999fa006b (bug 1431533)
Backed out changeset e2674287e57f (bug 1431533)
2018-01-30 07:17:48 +02:00
Boris Zbarsky
a2a8a03a92 Bug 1276438 part 4. Move the .body getter from HTMLDocument to Document. r=mystor
The "body" part of responsexml-document-properties.htm is not really per current
spec text, and fails in every non-Firefox browser, and in Firefox after this
change.  https://github.com/w3c/web-platform-tests/issues/2668 tracks this issue
to some extent, but if all browsers are going to align here anyway, we should
just adjust the test and move on.

MozReview-Commit-ID: HTLfggvi5LL
2018-01-26 00:53:34 -05:00
Boris Zbarsky
f60fd673d6 Bug 1432186 part 19. Remove the nsIDOMNode::*_NODE constants. r=mccr8
MozReview-Commit-ID: KvKjeKIOB9K
2018-01-29 23:10:53 -05:00
Kris Maglione
6476f95b13 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : source : 12fc4dee861c812fd2bd032c63ef17af61800c70
2018-01-29 15:20:18 -08:00
Brindusan Cristian
af8879d1eb Backed out 2 changesets (bug 1431533) for ESlint failures on a CLOSED TREE
Backed out changeset 6e56f4c8843e (bug 1431533)
Backed out changeset 12fc4dee861c (bug 1431533)
2018-01-30 02:32:43 +02:00
Kris Maglione
c276bb9375 Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
This was done using the following script:
37e3803c7a/processors/chromeutils-import.jsm

MozReview-Commit-ID: 1Nc3XDu0wGl

--HG--
extra : rebase_source : c004a023389f1f6bf3d2f3efe93c13d423b23ccd
2018-01-29 15:20:18 -08:00
Kyle Machulis
ec22ae62ae Bug 1432271 - Remove dom/time; r=baku
dom/time contained the TimeService and TimeManager classes, used for
setting time via Gecko on FirefoxOS. Since FirefoxOS is no longer in
the code base, the directory can be removed.

MozReview-Commit-ID: 8PEk3e6HA67
2018-01-29 13:54:42 -08:00
Ben Kelly
e71d8db226 Bug 1430139 P3 Remove workers namespace from service worker code. r=asuth 2018-01-26 13:08:59 -08:00
Kris Maglione
aec63e140c Backed out 3 changesets (bug 1431533) for Android mochitest bustage. CLOSED TREE
MozReview-Commit-ID: 5ubE9EMQpZ9

--HG--
extra : histedit_source : df68d7595925c07d9d6e8bacc2c46e69556f479a%2C72b768b9825e20ede6603ead75f871c50dc041f7
2018-01-24 22:04:59 -08:00
Kris Maglione
30b3a49bfd Bug 1431533: Part 5a - Auto-rewrite code to use ChromeUtils import methods. r=florian
MozReview-Commit-ID: 8V1ZT53ReiP

--HG--
extra : rebase_source : 12b5f8c3e125111db7382eb3d7d20a99fb2c35b3
extra : absorb_source : e99fa7f6eee02e7e6cadeb898c7fcf6dac9c902a
extra : histedit_source : d0dfc31fadc2b81d341c9d0cd1efec02923c003b
2018-01-24 15:48:47 -08:00
Adrian Wielgosik
35b93ce926 Bug 1297480 - Add BindingAlias= for WebIDL attrbutes, use it to slim CSS2Properties down. r=bz
As opposed to Alias attribute, which reuses the JS function object for the property, BindingAlias will only reuse the generated attribute binding implementation, without changing observable behavior. It can be used to reduce amount of generated code, if the attributes are known to behave exactly the same.

This cuts the size of generated CSS2PropertiesBinding.cpp by half, and removes ~100kB of dupicated code from libxul.

MozReview-Commit-ID: G0q8TbaqFdp

--HG--
extra : rebase_source : 87a2a501cc8adb379df1f4563d3696a339abd0fc
2018-01-23 20:47:05 +01:00
Dustin J. Mitchell
26d48b3202 Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Noemi Erli
1c9bbfbebc Backed out 2 changesets (bug 1403519) for bustage on \python\mozbuild\mozbuild\test\frontend\test_reader.py on a CLOSED TREE
Backed out changeset f53f8adcd578 (bug 1403519)
Backed out changeset 5b293bcd3fc7 (bug 1403519)
2018-01-17 07:23:40 +02:00
Dustin J. Mitchell
00f03c413e Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Chris Peterson
37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Coroiu Cristina
c6a942e1bf Merge inbound to mozilla-central r=merge a=merge 2018-01-13 11:55:23 +02:00
Andrew McCreight
4a42e66fbe Bug 1430183 - ClassTypedef from CodeGen.py is unused. r=qdot
This was used in CGPrototypeTraitsClass, but that usage was removed at
some point.

MozReview-Commit-ID: G3bGMma5XTw

--HG--
extra : rebase_source : 89ff19e10bba68a8e3e3392d3695448dfb245d7c
2018-01-12 10:43:39 -08:00
Nika Layzell
319310193a Bug 1383876 - Part 4: Remove even more tests which no longer work, r=freesamael, r=smaug
MozReview-Commit-ID: 5j8fNeKuHAM
2018-01-12 17:52:58 -05:00
Nika Layzell
a0d1f16079 Bug 1383876 - Part 1: Remove GroupedSHistory and Prerendering logic from C++ code, r=freesamael, r=smaug
MozReview-Commit-ID: 2aHA6NcQPGk
2018-01-12 17:52:52 -05:00
Boris Zbarsky
4b3ce3fd3c Bug 1430164. Stop doing weird sandbox-callable-wrapping for DOM constructors. r=bholley
This fixes DOM constructor identity in web extension content scripts to work as expected.

MozReview-Commit-ID: Ab4sFWiMU6c
2018-01-12 14:28:28 -05:00
Cameron McCormack
eb5c3b0f3a Bug 1427512 - Part 23: Remove nsIDOMCounter. r=xidorn,bz
It's not actually implemented.  Since we never return any Counter
object, and to avoid exposing a Counter Web IDL interface object, we
declare getCounterValue() to return void (since it always throws).

MozReview-Commit-ID: JGvYtPmyeSp
2018-01-11 16:17:57 +08:00
Cameron McCormack
55679ff0a6 Bug 1428531 - Add chrome-only Foo.isInstance static methods to interface objects. r=bz
MozReview-Commit-ID: Kq0xONMnbEO
2018-01-11 13:00:25 +08:00
Cameron McCormack
c4663ea0f0 Bug 1427419 - Part 22: Move inIDOMUtils.getUsedFontFaces to InspectorUtils. r=bz
This also changes the function to return a sequence (JS Array) instead of
an nsFontFaceList object, and converts nsFontFace/nsIDOMFontFace into a
Web IDL implemented object too.

MozReview-Commit-ID: 1iAW3DYe5kO

--HG--
rename : layout/inspector/nsFontFace.cpp => layout/inspector/InspectorFontFace.cpp
2018-01-11 12:38:01 +08:00
Bogdan Tara
cd1c3cc5dd Merge mozilla-central to autoland, r=merge a=merge on a CLOSED TREE 2018-01-09 00:16:46 +02:00
Bogdan Tara
73b4d6b26a Merge inbound to mozilla-central r=merge a=merge 2018-01-09 00:05:31 +02:00
Jon Coppeard
3bd056fab8 Bug 1377402 - Add null check in SimpleGlobalObject's class hooks r=sfink 2018-01-08 14:27:50 +00:00
Edgar Chen
d6c2c3283e Bug 1428244 - Part 1: Add [CEReactions] in CSSStyleDeclaration; r=smaug
per https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-camel-cased-attribute.

MozReview-Commit-ID: 7QkAZeUOrlh

--HG--
extra : rebase_source : 1431dfd4edebf8140604ac79253c674f3bf4f89d
2017-12-13 10:24:35 -06:00
Valentin Gosu
b2e06a6d9b Bug 1426501 - Add nsINetUtil.notImplemented() method that always throws r=mayhemer
MozReview-Commit-ID: Ij3M5Ydtlac

--HG--
extra : rebase_source : f95ea333bad7eeacf7fd753028ac4ead18e70eef
2018-01-08 11:23:53 +01:00
Kyle Machulis
a5bf8f2796 Bug 1428229 - Add comments about purposefully uninitialized variables in BindingDeclarations; r=bz
MozReview-Commit-ID: HnWjU3BbwBE

--HG--
extra : rebase_source : a9a5ea5057c8892cb77d02c3873384b20897acd7
2018-01-05 12:37:42 -08:00
Kyle Machulis
0aafef6a46 Bug 1428229 - Partial backout a4094a8fa08d (bug 1406820) due to optimization removals; r=bz
MozReview-Commit-ID: AZDXw8NbgHt

--HG--
extra : rebase_source : 49c0f308120d92ef7e2cb0fcbb8337c006959c9f
2018-01-05 13:44:25 -08:00
Andrea Marchesini
d820259403 Bug 1425574 - Fill the feature gap between Console.jsm and Console API - part 1 - Console.createInstance(), r=smaug 2018-01-04 19:19:43 +01:00
Boris Zbarsky
0b411e80c7 Bug 1407858 part 3. Add a literal string state to DOMString. r=smaug
MozReview-Commit-ID: JOuoLoZ2tcR
2017-12-22 13:02:51 -05:00