Commit Graph

18187 Commits

Author SHA1 Message Date
shindli
c6c323a9e4 Merge mozilla-central to inbound. a=merge CLOSED TREE
--HG--
extra : rebase_source : 4502430f7e773b654c4557946c39000735b14bb3
2019-02-14 06:58:32 +02:00
Hiroyuki Ikezoe
ff820309e3 Bug 1525075 - Use the ICB size for Element.{clientWidth, clientHeight} instead of expanded the layout viewport size. r=botond
This is what Chrome does.

documentElement-clientWidth-on-minimum-scale-size.tentative.html was the test
case for this but unfortunately it was disabled in bug 1515043. And it seems
that the test case failed on Android in the first place.

Differential Revision: https://phabricator.services.mozilla.com/D19461

--HG--
extra : moz-landing-system : lando
2019-02-13 23:47:32 +00:00
Andrea Marchesini
769f057698 Bug 433274 - Allow popups from context menu events - part 2, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D19500

--HG--
extra : moz-landing-system : lando
2019-02-12 15:11:36 +00:00
Hiroyuki Ikezoe
e4b8830fe1 Bug 1443320 - Drop |aNotify| argument from Element::SetSMILOverrideStyleDeclaration. r=birtles
The other call site was removed in
https://hg.mozilla.org/mozilla-central/rev/e8c0ffefb34f

Depends on D19570

Differential Revision: https://phabricator.services.mozilla.com/D19571

--HG--
extra : moz-landing-system : lando
2019-02-13 04:44:34 +00:00
Andreea Pavel
7b1605af56 Backed out 3 changesets (bug 1525959, bug 1526002) for failing android
Backed out changeset de0efca1118e (bug 1526002)
Backed out changeset 503cbc86e442 (bug 1525959)
Backed out changeset 33ea61c54aea (bug 1525959)
2019-02-12 23:53:05 +02:00
Thomas Nguyen
92cca5e26c Bug 1517703 - Part 1 - Implement ReferrerInfo class r=smaug
The class contains original full referrer and referrer policy will be
applied to the referrer.

Differential Revision: https://phabricator.services.mozilla.com/D17923

--HG--
extra : moz-landing-system : lando
2019-02-12 19:35:32 +00:00
Markus Stange
f3d9f254c8 Bug 1506976 - Make FirstContentfulPaint timing measure until the composite end of the paint. r=bas
Differential Revision: https://phabricator.services.mozilla.com/D18880

--HG--
extra : moz-landing-system : lando
2019-02-12 19:09:06 +00:00
Jonathan Kingston
3421b8fcff Bug 1520868 - Replacing AsyncOpen2 with AsyncOpen always r=valentin
Replacing js and text occurences of asyncOpen2
Replacing open2 with open

Differential Revision: https://phabricator.services.mozilla.com/D16885

--HG--
rename : layout/style/test/test_asyncopen2.html => layout/style/test/test_asyncopen.html
extra : moz-landing-system : lando
2019-02-12 16:08:25 +00:00
James Willcox
c7a8bf9699 Bug 1526002 - Replace 'isFennec' with 'is_fennec' in mochitest.ini r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D19038

--HG--
extra : moz-landing-system : lando
2019-02-10 19:07:57 +00:00
James Willcox
228b5844d5 Bug 1525959 - Skip some mochitests tests under GeckoView r=geckoview-reviewers,esawin
There are few things that are either Fennec-specific or don't work
currently under GeckoView w/ e10s under TestRunnerActivity. Disable
these so we can get some testing going in automation.

Differential Revision: https://phabricator.services.mozilla.com/D19016

--HG--
extra : moz-landing-system : lando
2019-02-12 15:15:28 +00:00
Andrea Marchesini
b962fd77c9 Bug 433274 - Allow popups from context menu events, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D19476

--HG--
extra : moz-landing-system : lando
2019-02-12 12:02:07 +00:00
Tom Schuster
a60d06b5ef Bug 1525006 - Add a new internal ContentPolicyType for ES6 modules. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D19269

--HG--
extra : moz-landing-system : lando
2019-02-12 13:16:32 +00:00
Dorel Luca
313155b999 Backed out 4 changesets (bug 1521808) for build bustage. CLOSED TREE
Backed out changeset 80aeea5f7abe (bug 1521808)
Backed out changeset c8c151d92c03 (bug 1521808)
Backed out changeset cc0a5c7dabb4 (bug 1521808)
Backed out changeset 8d5174a560fa (bug 1521808)
2019-02-12 14:54:45 +02:00
Valentin Gosu
f8fe725d87 Bug 1521808 - Use topWindowPrincipal for CrossOriginOpenerPolicy check r=mayhemer,nika
- Adds nsIHttpChannelInternal.setTopWindowPrincipal used to pass the principal from the child to the parent

Differential Revision: https://phabricator.services.mozilla.com/D18391

--HG--
extra : moz-landing-system : lando
2019-02-12 12:16:16 +00:00
Randell Jesup
116aa4c705 Bug 1515132: Add telemetry for FirstContentfulPaint data-review=chutten r=mstange,a=chutten
Defined in the PerformancePaintTiming spec, though we're not supporting the
DOM API yet
2019-02-12 01:13:48 -05:00
Bogdan Tara
87a0b11003 Merge inbound to mozilla-central. a=merge 2019-02-12 07:25:23 +02:00
Hiroyuki Ikezoe
7f39371579 Bug 1526749 - Drop Element.scrollByNoFlush. r=kats,mccr8
It's no longer used since bug 970125.

Differential Revision: https://phabricator.services.mozilla.com/D19289

--HG--
extra : moz-landing-system : lando
2019-02-11 23:44:51 +00:00
Bogdan Tara
2c0ee18d6e Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-02-11 23:59:48 +02:00
Bogdan Tara
12bbbc3d51 Merge inbound to mozilla-central. a=merge 2019-02-11 23:55:15 +02:00
Boris Zbarsky
bc348929b6 Bug 1515582. Remove the separate XBL scope setup. r=bholley
With these changes, XBL just runs in the window scope of whatever document it's
attached to.  Since (outside of tests and "remote XUL") we no longer attach XBL
to web documents, this is fine.  And "remote XUL" already ran without the XBL
scope.

Native anonymous content, which used to be placed in the XBL scope to hide it
from the page, is now placed in the unprivileged junk scope, so it stays hidden
from the page.

dom/xbl/test/test_bug944407.xul is being removed because we are changing the
behavior it's trying to test for.  Since we now always put the XBL in the same
scope as the page, script is enabled for the XBL if and only if it's enabled for
the page.

dom/base/test/test_bug419527.xhtml, dom/events/test/test_bug391568.xhtml,
dom/xbl/test/test_bug1086996.xhtml are being switched to a chrome test because
otherwise the XBL can't see the getAnonymousNodes method.

All the XBL bits are being removed from test_interfaces because we no longer
have a separate XBL scope to test the behavior of.

js/xpconnect/tests/mochitest/test_nac.xhtml is being removed because XBL no
longer has access to NAC unless the page it's attached to does too, so the test
doesn't really make sense.

layout/xul/test/test_bug1197913.xul is being switched to a chrome test because
its XUL elements use bindings that rely on APIs that are not exposed to normal
web content.

layout/reftests/bugs/495385-2f.xhtml is being removed because I can't think of
a sane way to test that in the new world, short of running the reftest as
chrome.  And it doesn't seem worthwhile to look for a way to do that.

dom/xbl/test/test_bug1098628_throw_from_construct.xhtml now needs to
expectUncaughtException(), because the exception is now being thrown in Window
scope.

dom/xbl/test/test_bug1359859.xhtml needs to expectUncaughtException() as needed
and not use XPCNativeWrapper (which it doesn't need to anyway now).

dom/xbl/test/test_bug389322.xhtml, dom/xbl/test/test_bug400705.xhtml,
dom/xbl/test/test_bug401907.xhtml, dom/xbl/test/test_bug403162.xhtml,
dom/xbl/test/test_bug526178.xhtml, dom/xbl/test/test_bug639338.xhtml don't need
to use XPCNativeWrapper anymore.

dom/xbl/test/test_bug821850.html is being removed because it exists only to test XBL scopes.

dom/xbl/test/file_bug950909.xml is being changed to work without a separate XBL
scope (though whether the test still makes sense at that point is a bit questionable).

Differential Revision: https://phabricator.services.mozilla.com/D19260

--HG--
extra : moz-landing-system : lando
2019-02-11 21:51:47 +00:00
Luke Wagner
fc9dea6cc7 Bug 1520931 - Remove asm.js cache hooks JS API (r=bbouvier)
--HG--
extra : rebase_source : aac95865af1b87970d49b89edbec0acad6c74219
2019-02-11 11:41:57 -06:00
Mike Conley
2c53e6da2d Bug 1525188 - Don't set remoteType attributes when swapping frameLoaders. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D19220

--HG--
extra : moz-landing-system : lando
2019-02-08 21:16:40 +00:00
Emilio Cobos Álvarez
8101ae2ea8 Bug 1523071 - Use Rust lengths for margin / padding / inset. r=jwatt
Also for the intersection observer root margin, since it was easier to fix it
up and clean it up than not doing it.

This is the first big step to get rid of nscoord. It duplicates a bit of logic
in nsLayoutUtils since for now max/min-width/height are still represented with
nsStyleCoord, but I think I prefer to land this incrementally.

I didn't add helpers for the physical accessors of the style rect sides that
nsStyleSides has (top/bottom/left/right) since I think we generally should
encourage the logical versions, but let me know if you want me to do that.

Differential Revision: https://phabricator.services.mozilla.com/D17739
2019-02-10 04:11:58 +01:00
Csoregi Natalia
ce23db018d Merge mozilla-central to mozilla-inbound. CLOSED TREE 2019-02-09 11:41:49 +02:00
Jon Coppeard
e3e3e6ab9a Bug 1525905 - Require both arguments to JS_TransplantObject to be non-gray r=sfink r=bz 2019-02-09 07:30:08 +00:00
Gurzau Raul
94e9660ff4 Backed out 9 changesets (bug 1500257) for build bustage at /dom/TabParent.h on a CLOSED TREE
Backed out changeset 335ddf6a213a (bug 1500257)
Backed out changeset 1e1b5cd23412 (bug 1500257)
Backed out changeset 4c85fb68f2ed (bug 1500257)
Backed out changeset ba62cc27c32f (bug 1500257)
Backed out changeset b68b732411e2 (bug 1500257)
Backed out changeset e33b9de7283e (bug 1500257)
Backed out changeset 002762a021c4 (bug 1500257)
Backed out changeset e72d9d31a8bc (bug 1500257)
Backed out changeset 1615df089ad3 (bug 1500257)
2019-02-09 09:10:29 +02:00
Masayuki Nakano
da6598c374 Bug 1524212 - Make nsContentUtils::DispatchInputEvent() update HTMLInputElement.validationMessage before dispatching "input" event r=smaug
"input" event listener may want to check HTMLInputElement.validationMessage.
However, due to moving "input" event dispatcher from
HTMLInputElement::SetUserInput() to editor, HTMLInputElement::SetValueInternal()
updates it **after** dispatching "input" event.

This patch makes nsContentUtils::DispatchInputEvent() guarantees to update
validationMessage value before dispatching every event.  On the other hand,
SetValueInternal() may be called without "input" event dispatchers.  Therefore,
it needs to keep updating validationMessage value in such cases.

Differential Revision: https://phabricator.services.mozilla.com/D19126

--HG--
extra : moz-landing-system : lando
2019-02-08 22:17:10 +00:00
John Dai
3013aa2b9f Bug 1513877 - Implement send and receive methods for base WindowActor class. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D18695

--HG--
extra : moz-landing-system : lando
2019-02-08 13:02:08 +00:00
Oana Pop Rus
1f2fab8f20 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-02-08 12:11:54 +02:00
Oana Pop Rus
03ebbdab95 Merge inbound to mozilla-central. a=merge 2019-02-08 11:53:37 +02:00
Jan de Mooij
13c7bd6d2c Bug 1525674 part 1 - Change the enumerate proxy trap to return the jsid vector instead of an iterator. r=bzbarsky,evilpie
In vm/Iteration.cpp this inlines some functions because there's a single
caller now. Follow-up patches will do additional cleanup/optimization.

Differential Revision: https://phabricator.services.mozilla.com/D18926

--HG--
extra : moz-landing-system : lando
2019-02-08 08:17:00 +00:00
Razvan Maries
8add624474 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-02-08 06:26:00 +02:00
Zibi Braniecki
aee876626a Bug 1524106 - Disconnect l10n root when destroying the document. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D18774

--HG--
extra : moz-landing-system : lando
2019-02-07 14:37:26 +00:00
Xidorn Quan
a55a8f3935 Bug 1524130 - Remove deprecation of attr modified event. r=smaug
It was added in bug 1461696 probably for tracking whether bug 1460295
is a wide-spread issue or so. This deprecation was already part of
deprecated mutation event, so it's never output to console. It was
added purely for getting telemetry.

Given that related issues are now fixed, we no longer needs this.

Differential Revision: https://phabricator.services.mozilla.com/D18935

--HG--
extra : moz-landing-system : lando
2019-02-07 14:21:08 +00:00
fabrice@desre.org
4d0cadaad2 Bug 1525831, let originaltarget be non-nsIContent in ShadowRoot, r=smaug
--HG--
extra : rebase_source : ae831713854c1f9131462bca387a49bf8f231748
2019-02-07 23:33:20 +02:00
Kris Maglione
4d9897ca16 Bug 1524688: Part 58 - Convert SlowScriptDebug to static registration. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D18468

--HG--
rename : dom/base/SlowScriptDebug.js => dom/base/SlowScriptDebug.jsm
extra : rebase_source : 25d86a38d8883325d64cde92c961a474fe2acae2
2019-01-30 11:42:53 -08:00
Kris Maglione
afe736f06a Bug 1524688: Part 57 - Convert ProcessSelector to static registration. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D18467

--HG--
rename : dom/base/ProcessSelector.js => dom/base/ProcessSelector.jsm
extra : rebase_source : f2d2742086578f3af1b0a7cf1751069bf24bf497
2019-01-30 11:41:05 -08:00
Kris Maglione
2aaa461aa4 Bug 1524688: Part 56 - Convert contentAreaDropsListener to static registration. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D18466

--HG--
rename : dom/base/contentAreaDropListener.js => dom/base/ContentAreaDropListener.jsm
extra : rebase_source : 6c187ac5acbd6b588f91ed7b432067b7be21fd57
2019-01-30 11:37:53 -08:00
Oana Pop Rus
490ab7f9b8 Merge inbound to mozilla-central. a=merge 2019-02-07 11:47:46 +02:00
Brendan Dahl
ed6a76c718 Bug 1524640 - Fix font loading during mozPrintCallback. r=smaug
Copy fonts loaded during a mozPrintCallback into the cloned document,
so they are available during printing.

Differential Revision: https://phabricator.services.mozilla.com/D18613

--HG--
extra : moz-landing-system : lando
2019-02-06 23:46:58 +00:00
Boris Zbarsky
0b91ef777d Bug 1471496 part 1. Fix IsPlatformObjectSameOrigin to do the right thing when we're doing first-party isolation but turning off its effects on scripted property access. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D18029

--HG--
extra : moz-landing-system : lando
2019-02-06 14:53:13 +00:00
Kris Maglione
2fdac262ce Bug 1524687: Part 9 - Convert gtk widget module to static registration. r=erahm
--HG--
extra : rebase_source : 86dc5b7cb29741bd67787d55e7198e204cfdb2d5
2019-01-24 17:27:24 -08:00
Ryan Hunt
2feee8e648 Bug 1500257 part 8 - Remove dependency on RenderFrame from nsDisplayRemote. r=aosmond
This commit removes the dependency on RenderFrame from nsDisplayRemote so that
it can work in child processes with remote subframes. Instead nsDisplayRemote
now works with an nsFrameLoader, which will return the LayerId from either
the RenderFrame (for top-level remote browsers), or from RemoteFrameChild
(for remote subframes).

Differential Revision: https://phabricator.services.mozilla.com/D17448

--HG--
extra : source : 1e1b5cd23412a85fad19ab8ec5aacf31b3a9c9b6
extra : intermediate-source : a62c029510315d109faa9edb31216014e7c70367
extra : histedit_source : 3df246e632fbb71f731c856779e0d2201b3673a3
2019-01-23 11:07:57 -06:00
Ryan Hunt
1834509eeb Bug 1500257 part 8 - Remove dependency on RenderFrame from nsDisplayRemote. r=aosmond
This commit removes the dependency on RenderFrame from nsDisplayRemote so that
it can work in child processes with remote subframes. Instead nsDisplayRemote
now works with an nsFrameLoader, which will return the LayerId from either
the RenderFrame (for top-level remote browsers), or from RemoteFrameChild
(for remote subframes).

Differential Revision: https://phabricator.services.mozilla.com/D17448

--HG--
extra : rebase_source : c16611bf63b8fcb2e5de6a9cb8f54155f992fc32
extra : histedit_source : 6323f7756c5d3ebfbbe55148cb81503c512b9afb
2019-01-23 11:07:57 -06:00
Ryan Hunt
a0478b2152 Bug 1500257 part 7 - Modify RenderFrame to hold onto TabParent instead of nsFrameLoader. r=aosmond
A TabParent for a remote subframe will have the same owner content as the top-level
remote browser. This means that 'TabParent::GetFrameLoader()' will return the
frame loader of the top-level remote browser.

This is fine for getting the layer manager and compositor for connecting layer trees,
but the frame loader is also used to acquire a TabParent for its process ID. This
is incorrect in the remote subframe case, and will lead to the compositor rejecting
layer transactions for the remote subframe because it will only accept them from
the top-level remote browser's process.

This commit switches RenderFrame to just hold on to TabParent, and acquire the
nsFrameLoader as necessary.

Another change is to RenderFrame::SetOwnerContent. Previously this method would
take the new owner content and check an assertion. I don't see much value in the
assertion, so I've removed it. Additionally, now that we acquire the owner content,
and therefore the layer manager, from TabParent, we need to ensure that
RenderFrame::SetOwnerContent is ran after the TabParent has had it's owner content
updated. So the callsite has been moved into TabParent. This resolved a test failure
with frame loader swapping.

Differential Revision: https://phabricator.services.mozilla.com/D17447

--HG--
extra : source : 4c85fb68f2ed297828bf4646301c2d80d1c8e0a1
extra : intermediate-source : 62ad54fb95eb76f88865f43da1a5d556421e7884
extra : histedit_source : 6b7085118bca83433b26fcec3983a385bd536672
2019-01-23 09:52:30 -06:00
Ryan Hunt
fc71962023 Bug 1500257 part 7 - Modify RenderFrame to hold onto TabParent instead of nsFrameLoader. r=aosmond
A TabParent for a remote subframe will have the same owner content as the top-level
remote browser. This means that 'TabParent::GetFrameLoader()' will return the
frame loader of the top-level remote browser.

This is fine for getting the layer manager and compositor for connecting layer trees,
but the frame loader is also used to acquire a TabParent for its process ID. This
is incorrect in the remote subframe case, and will lead to the compositor rejecting
layer transactions for the remote subframe because it will only accept them from
the top-level remote browser's process.

This commit switches RenderFrame to just hold on to TabParent, and acquire the
nsFrameLoader as necessary.

Another change is to RenderFrame::SetOwnerContent. Previously this method would
take the new owner content and check an assertion. I don't see much value in the
assertion, so I've removed it. Additionally, now that we acquire the owner content,
and therefore the layer manager, from TabParent, we need to ensure that
RenderFrame::SetOwnerContent is ran after the TabParent has had it's owner content
updated. So the callsite has been moved into TabParent. This resolved a test failure
with frame loader swapping.

Differential Revision: https://phabricator.services.mozilla.com/D17447

--HG--
extra : rebase_source : 7a4c6aede22c4c457b03803f794d6845f4fd6482
extra : histedit_source : 19692ca27b05c4b8a7eb521f432bc21a756e9085
2019-01-23 09:52:30 -06:00
Ryan Hunt
f83e394596 Bug 1500257 part 5 - Implement messages for loading and displaying remote subframes on PRemoteFrame. r=qdot
This commit hooks up the pieces of the PRemoteFrame protocol that
will proxy initialization, sizing, and display messages. The messages
chosen are just enough to start the frame and get an initial rendering.

Differential Revision: https://phabricator.services.mozilla.com/D17445

--HG--
extra : source : b68b732411e2e1e6851799262246bff70e6649da
extra : intermediate-source : c19bc81c4f43a5adba92184b2572c09c6c5a0680
2019-01-23 11:04:26 -06:00
Ryan Hunt
0d69472e8b Bug 1500257 part 4 - Modify nsFrameLoader to create PRemoteFrame when enabled via pref and attribute. r=qdot
This commit hooks up nsFrameLoader in the child process to use the
PRemoteFrame protocol to support remote iframes. This is only activated
when a special pref is set, and the iframe has a marker attribute on it.

For example:
<iframe fission/>

In the future, we should unify nsFrameLoader to operate on a common
interface between the parent process top-level browser, and child
process subframe case. This commit just adds a new member that can
be used instead of mRemoteBrowser, when appropriate. IsRemoteFrame()
will return true for both cases.

Differential Revision: https://phabricator.services.mozilla.com/D17444

--HG--
extra : source : e33b9de7283e5fb6441e118b25af8d4ac3411bf2
extra : intermediate-source : 697a9159e0d260118ee6ebd34948d187a8c5359f
2019-01-23 10:56:27 -06:00
Ryan Hunt
b84d458836 Bug 1500257 part 5 - Implement messages for loading and displaying remote subframes on PRemoteFrame. r=qdot
This commit hooks up the pieces of the PRemoteFrame protocol that
will proxy initialization, sizing, and display messages. The messages
chosen are just enough to start the frame and get an initial rendering.

Differential Revision: https://phabricator.services.mozilla.com/D17445

--HG--
extra : rebase_source : a361afeaa08e2bf450608ba6a3fd4040f155875a
extra : histedit_source : a2b33c6dbc756a323d825b29255da4a6343208bc
2019-01-23 11:04:26 -06:00
Ryan Hunt
e95b5afb88 Bug 1500257 part 4 - Modify nsFrameLoader to create PRemoteFrame when enabled via pref and attribute. r=qdot
This commit hooks up nsFrameLoader in the child process to use the
PRemoteFrame protocol to support remote iframes. This is only activated
when a special pref is set, and the iframe has a marker attribute on it.

For example:
<iframe fission/>

In the future, we should unify nsFrameLoader to operate on a common
interface between the parent process top-level browser, and child
process subframe case. This commit just adds a new member that can
be used instead of mRemoteBrowser, when appropriate. IsRemoteFrame()
will return true for both cases.

Differential Revision: https://phabricator.services.mozilla.com/D17444

--HG--
extra : rebase_source : 7bab851665c0ed99be6ee1b47f6baad369410987
extra : histedit_source : 76ee7b1dd959a12080da4e683ff174ab3a04d84e
2019-01-23 10:56:27 -06:00