Commit Graph

1129 Commits

Author SHA1 Message Date
Kartikaya Gupta
bdbee472bd Bug 1561698 - Check the layers id in hit-testing mochitests as well. r=botond,hsivonen
This exposes the layers id on the APZ hit result testing API, and
updates callers to check the layers id is correct. This is mostly
unnecessary for these tests, but introduces machinery that will be
useful in Fission-enabled tests, where iframes may be OOP and have
different layers ids.

Differential Revision: https://phabricator.services.mozilla.com/D36146
2019-07-01 07:12:24 +00:00
Csoregi Natalia
b129fa1ca1 Merge inbound to mozilla-central. a=merge 2019-06-29 12:59:53 +03:00
Botond Ballo
eaa9fff445 Bug 1561726 - Add an nsIDOMWindowUtils API for querying the size of layout scrollbars. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D34257
2019-06-28 20:22:49 +00:00
Nicholas Nethercote
25e6095b36 Bug 1561825 - Make layout.* static prefs follow the naming convention. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D36160
2019-06-27 16:28:25 +10:00
Jean-Yves Avenard
b66b1a5a50 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256
2019-05-26 14:29:42 +00:00
Gurzau Raul
938877e121 Backed out 31 changesets (bug 1552643, bug 1550422) for xpcshell crash on a CLOSED TREE.
Backed out changeset e30c1aa75529 (bug 1552643)
Backed out changeset caadcd7e02d3 (bug 1552643)
Backed out changeset aa7086ab09be (bug 1552643)
Backed out changeset 0b4029671710 (bug 1550422)
Backed out changeset a16295296035 (bug 1550422)
Backed out changeset 3b70307c0db5 (bug 1550422)
Backed out changeset 69df7818d4a3 (bug 1550422)
Backed out changeset d98dfc565927 (bug 1550422)
Backed out changeset 6f0997976944 (bug 1550422)
Backed out changeset 0edd264464c2 (bug 1550422)
Backed out changeset 9ea6da7a74ec (bug 1550422)
Backed out changeset f855f9309c8b (bug 1550422)
Backed out changeset 1033546224a7 (bug 1550422)
Backed out changeset ade7384c6186 (bug 1550422)
Backed out changeset 75b04de7e99c (bug 1550422)
Backed out changeset 91c3acdb2454 (bug 1550422)
Backed out changeset 77d2f80257d1 (bug 1550422)
Backed out changeset e0cd10d35327 (bug 1550422)
Backed out changeset 097091082423 (bug 1550422)
Backed out changeset 2f328853c1ab (bug 1550422)
Backed out changeset f92f2cc29cb1 (bug 1550422)
Backed out changeset 6dc82f88333d (bug 1550422)
Backed out changeset c20f66494d69 (bug 1550422)
Backed out changeset 2ba22cddeb6f (bug 1550422)
Backed out changeset 3aa72f89e295 (bug 1550422)
Backed out changeset ab4c4e806977 (bug 1550422)
Backed out changeset 72e5de040dda (bug 1550422)
Backed out changeset 7d3c2d486706 (bug 1550422)
Backed out changeset 132e0b8d8468 (bug 1550422)
Backed out changeset 54c85ac75dd0 (bug 1550422)
Backed out changeset d7ba4a18dd54 (bug 1550422)
2019-05-25 09:07:49 +03:00
Jean-Yves Avenard
3816a05854 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256
2019-05-25 00:03:32 +00:00
Gurzau Raul
8d7b43d90a Backed out 28 changesets (bug 1550422) for marionette AssertionError and failing browser_policy_hardware_acceleration.js on a CLOSED TREE.
Backed out changeset 5dd10a365ba9 (bug 1550422)
Backed out changeset 529f5be01ab9 (bug 1550422)
Backed out changeset b6861d3badf8 (bug 1550422)
Backed out changeset 059cff1a3dde (bug 1550422)
Backed out changeset 6ada1116b241 (bug 1550422)
Backed out changeset ca67e8e45262 (bug 1550422)
Backed out changeset a1961a51ae44 (bug 1550422)
Backed out changeset 1c90b9cb3ad4 (bug 1550422)
Backed out changeset 285fa46e4f26 (bug 1550422)
Backed out changeset e2938a444234 (bug 1550422)
Backed out changeset 7a930fc51125 (bug 1550422)
Backed out changeset 898ed02804fe (bug 1550422)
Backed out changeset e1b7abc99ae9 (bug 1550422)
Backed out changeset f781d415cef6 (bug 1550422)
Backed out changeset 2fef10a7cce5 (bug 1550422)
Backed out changeset ea64b4d8d4ff (bug 1550422)
Backed out changeset 86a8ba1b755c (bug 1550422)
Backed out changeset 9c0c9e80f309 (bug 1550422)
Backed out changeset 10c153ddbaea (bug 1550422)
Backed out changeset 60fe635ec2c9 (bug 1550422)
Backed out changeset a38796266b28 (bug 1550422)
Backed out changeset 2db647dcdf1c (bug 1550422)
Backed out changeset 952ddac02972 (bug 1550422)
Backed out changeset ba46b53643ec (bug 1550422)
Backed out changeset ca47ef6c59f7 (bug 1550422)
Backed out changeset f45f471a1a40 (bug 1550422)
Backed out changeset 371b4da5b771 (bug 1550422)
Backed out changeset 02fc78890032 (bug 1550422)
2019-05-23 05:59:44 +03:00
Jean-Yves Avenard
935940dd3f Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256
2019-05-22 12:43:42 +00:00
Boris Zbarsky
340192a3f0 Bug 1550092 part 3. Stop using [array] in stopFrameTimeRecording. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D30443
2019-05-10 09:29:17 +00:00
Boris Zbarsky
964522f0dc Bug 1550092 part 2. Stop using [array] in numberOfAssignedPaintedLayers. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D30442
2019-05-10 09:09:25 +00:00
Boris Zbarsky
c17e35b12e Bug 1550092 part 1. Stop using [array] in sendTouchEvent/sendTouchEventToWindow. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D30441
2019-05-10 09:03:39 +00:00
Masayuki Nakano
f63fd7340c Bug 1543315 - part 13: Mark PresShell::Paint() as MOZ_CAN_RUN_SCRIPT r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D30008
2019-05-06 13:25:35 +00:00
Masayuki Nakano
cf345a4a71 Bug 1547618 - Make dom use mozilla::PresShell rather than via nsIPresShell r=smaug
Additionally, this patch makes `nsContentUtils::DispatchXULCommand()` because
it guarantees the lifetime of **only** `PresShell` in it.  So, we need to check
the lifetime of each argument at each caller here.

Differential Revision: https://phabricator.services.mozilla.com/D29199
2019-04-30 01:35:30 +00:00
Masayuki Nakano
5910153fa0 Bug 1547416 - Move nsIPresShell::ScrollAxis to PresShellForwards.h r=smaug
`nsIPresShell::ScrollAxis` can be used anywhere and it's used by some
utils actually. So, it should be in `mozilla` namespace and perhaps,
 `PresShellForwards.h` is a good place to move it rather than creating
new header file.

Differential Revision: https://phabricator.services.mozilla.com/D29110
2019-04-30 00:07:49 +00:00
Emilio Cobos Álvarez
8ba05939c2 Bug 1546697 - Use a consistent style for enum classes in layout. r=dholbert
Per the discussion in:

  https://groups.google.com/d/msg/mozilla.dev.platform/P79pwa9z5m8/iPYPAWPHCAAJ

They should be CamelCase, and that's what most of them already do. This converts
the rest, which are a few.

For the ones that already used `e` or `k` prefixes, I've mostly done:

 for file in $(rg Type::e layout | cut -d : -f 1 | sort | uniq); do sed -i 's#Type::e#Type::#g' $file; done

For the ones that used uppercase, I've removed the prefix if it was already in
the type name, and turn them into CamelCase.

Depends on D28680

Differential Revision: https://phabricator.services.mozilla.com/D28681
2019-04-25 23:03:04 +00:00
Masayuki Nakano
0c074bf172 Bug 1545342 - part 3: Move remaining public enum of nsIPresShell to mozilla namespace in mozilla/PresShellForwards.h and make them enum class r=smaug
This patch moves remaining public `enum` of `nsIPresShell` to `mozilla`
namespace in `mozilla/PresShellForwards.h` and make them `enum class`es.

Additionally, some methods which use the moving `enum`s from `nsIPresShell`
to `PresShell`.

Differential Revision: https://phabricator.services.mozilla.com/D28607
2019-04-25 05:04:23 +00:00
Masayuki Nakano
12b5544904 Bug 1545342 - part 2: Make some public enum of nsIPresShell move to mozilla namespace and defined as enum class in PresShellForwards.h r=smaug
This patch moves some `enum` in `nsIPresShell` which are in public scope into
`mozilla` namespace and change them as `enum class`es.

Unfortunately, only "where to scroll" enum is just defines constants of
percentages of scroll destination.  Therefore, this patch makes only them
as `static const`.

Differential Revision: https://phabricator.services.mozilla.com/D28606
2019-04-25 05:04:15 +00:00
Ryan Hunt
7144ca54c8 Bug 1534395 - Rename TabChild to BrowserChild. r=nika
This commit renames TabChild to BrowserChild.

Differential Revision: https://phabricator.services.mozilla.com/D28135
2019-04-09 17:39:01 -05:00
Masayuki Nakano
769c571f03 Bug 1543315 - part 11: Mark nsIPresShell::ScrollContentIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
This patch marks `ScrollContentIntoView()` as `MOZ_CAN_RUN_SCRIPT` and changing
some callers of them to guarantee thar their parent callers are also safe.

Additionally, this patch moves it from `nsIPresShell` to `PresShell` because
all callers can refer `PresShell` directly.

Unfortunately, this patch changes a lot of methods in autocomplete and satchel
since this patch needs to mark some interface methods as `can_run_script` and
they are called each other.  This means that autocomplete module is really
sensitive like editor module.  Perhaps, autocomplete and satchel should do
scroll asynchronously and unmark some of them as `MOZ_CAN_RUN_SCRIPT` again.

Differential Revision: https://phabricator.services.mozilla.com/D28320
2019-04-23 01:34:24 +00:00
Sylvestre Ledru
893cfb7019 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D28329
2019-04-22 16:35:03 +00:00
Masayuki Nakano
fffa41ccde Bug 1544218 - part 2: Make APZCCallbackHelper::GetRootContentDocumentPresShellForContent() return mozilla::PresShell directly r=kats
Differential Revision: https://phabricator.services.mozilla.com/D27472
2019-04-16 04:33:52 +00:00
Mike Conley
eeb16a6513 Bug 1542756 - Bug 1543128 - Add option to only return visible nodes from nsIDOMWindowUtils.nodesFromRect. r=emilio
Depends on D26778

Differential Revision: https://phabricator.services.mozilla.com/D26809
2019-04-15 01:08:12 +00:00
Masayuki Nakano
ad34e89b46 Bug 1543315 - part 9: Mark nsIPresShell::FlushPendingNotifications() as MOZ_CAN_RUN_SCRIPT r=smaug
So, this patch makes all caller of it safe including its arguments unless
they come from other methods.

Differential Revision: https://phabricator.services.mozilla.com/D27225
2019-04-13 12:43:57 +00:00
Csoregi Natalia
aa00ef41ef Backed out 10 changesets (bug 1542756, bug 1543128, bug 1543122) for multiple media failures /test_setSinkId.html. CLOSED TREE
Backed out changeset ce3a15e1b737 (bug 1543128)
Backed out changeset cea8c1af70ad (bug 1543128)
Backed out changeset aeb23f8f45fb (bug 1543128)
Backed out changeset a2e73d143aba (bug 1543128)
Backed out changeset 1692fc6491a0 (bug 1543128)
Backed out changeset 9fbce4274cfd (bug 1542756)
Backed out changeset 20092bcebe6a (bug 1543122)
Backed out changeset 1645d577016c (bug 1543122)
Backed out changeset 3fce0b7586c1 (bug 1543122)
Backed out changeset aab68db4131b (bug 1543122)
2019-04-13 06:22:47 +03:00
Masayuki Nakano
76c65c6b5b Bug 1542665 - Stop using const nsCOMPtr<nsIPresShell>& arguments r=bzbarsky
Some methods take `const nsCOMPtr<nsIPresShell>&` as their argument to make
their callers guarantee the lifetime.  However, currently all of them are
marked as `MOZ_CAN_RUN_SCRIPT`.  So, it's safe to change them to raw pointer.

Additionally, this patch makes them take `mozilla::PresShell*` directly
rather than via `nsIPresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D26456
2019-04-13 02:23:07 +00:00
Mike Conley
35c5d79449 Bug 1542756 - Bug 1543128 - Add option to only return visible nodes from nsIDOMWindowUtils.nodesFromRect. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D26809
2019-04-13 01:22:58 +00:00
Masayuki Nakano
d0d9ccd592 Bug 1542506 - Make nsDocShell use mozilla::PresShell* directly rather than nsIPresShell* r=bzbarsky
This patch makes `nsDocShell::GetPresShell()` and
`nsDocShell::GetEldestPresShell()` return `mozilla::PresShell*` and
some non-public methods use `mozilla::PresShell*` directly.

Differential Revision: https://phabricator.services.mozilla.com/D26424
2019-04-13 01:03:13 +00:00
Makoto Kato
4159570f66 Bug 1474902 - Part 5. Add mochitest. r=masayuki
Reviewers: masayuki

Reviewed By: masayuki

Bug #: 1474902

Differential Revision: https://phabricator.services.mozilla.com/D24842
2019-04-05 17:15:15 +09:00
Makoto Kato
66dc08631c Bug 1149300 - zoomToFocusedInput should make focused content visible. r=kats
ZoomToFocusedInput currently does not properly handle the
case where the input element is inside a nested scrollable subframe,
as it only asks APZ to pan/zoom the root content document, and
the root content document might not be zoomable or scrollable to
make the input element visible. To handle this case properly we need
to ask the main thread to scroll the element into view first.

Differential Revision: https://phabricator.services.mozilla.com/D20983
2019-04-01 15:46:24 +09:00
Masayuki Nakano
e56c690088 Bug 1540015 - part 3: Rename Document::GetShell() to Document::GetPresShell() and make it return PresShell* rather than nsIPresShell* r=smaug,emilio
This makes `Document::GetShell()` return `PresShell*` instead of `nsIPresShell`.

Additonally, "shell" is unclear ("docshell" vs. "presshell").  Therefore, this
also renames `Document::GetShell()` to `Document::GetPresShell()`.

Similarly, some other method names of `Document` are also renamed from
`*Shell*` to `*PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25338
2019-03-29 15:12:47 +00:00
Masayuki Nakano
5b1ecc8b12 Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25332
2019-03-29 15:11:04 +00:00
Dorel Luca
6cd4166b18 Backed out 3 changesets (bug 1540015) for build bustage. CLOSED TREE
Backed out changeset 7b71c9da0214 (bug 1540015)
Backed out changeset 5723ddbc5c44 (bug 1540015)
Backed out changeset 9561d2c36fa5 (bug 1540015)
2019-03-29 16:14:26 +02:00
Masayuki Nakano
12ec0ad7f4 Bug 1540015 - part 3: Rename Document::GetShell() to Document::GetPresShell() and make it return PresShell* rather than nsIPresShell* r=smaug,emilio
This makes `Document::GetShell()` return `PresShell*` instead of `nsIPresShell`.

Additonally, "shell" is unclear ("docshell" vs. "presshell").  Therefore, this
also renames `Document::GetShell()` to `Document::GetPresShell()`.

Similarly, some other method names of `Document` are also renamed from
`*Shell*` to `*PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25338
2019-03-29 13:09:26 +00:00
Masayuki Nakano
12b497174b Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25332
2019-03-29 12:12:20 +00:00
Boris Zbarsky
da3e3bf472 Bug 1533874. Make nsIDOMWindowUtils builtinclass. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D25282
2019-03-28 19:36:50 +00:00
Oana Pop Rus
6f77633292 Merge inbound to mozilla-central. a=merge 2019-03-28 12:11:35 +02:00
Alex Gaynor
05a5fc6732 Bug 1539521 - replace MaybeTransform IPDL union with native Maybe syntax; r=kats
Differential Revision: https://phabricator.services.mozilla.com/D25079
2019-03-27 17:56:31 +00:00
Botond Ballo
99f3269349 Bug 1538511 - Get rid of nsIPresShell::ScrollMode (use mozilla::ScrollMode instead). r=kats
Differential Revision: https://phabricator.services.mozilla.com/D24797
2019-03-26 00:51:57 +00:00
Bas Schouten
4c4b9ee3e7 Bug 1536174 - Part 2: Add nsDOMWindowUtils API for enabling window recording. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D23914
2019-03-18 19:23:14 +01:00
Masayuki Nakano
7f6befb2f1 Bug 1536353 - part 3: Make nsIDOMWindowUtils.dispatchDOMEventViaPresShell() dispatch only trusted event r=smaug
In normal cases, `PresShell::EventHandler` won't receive untrusted event.
However, only `nsIDOMWindowUtils.dispatchDOMEventViaPresShell()` may send
untrusted event if its `aTrusted` is false.  Currently, this is not used by
chrome so that we don't need to keep supporting it for dispatching untrusted
events.

This patch removes `aTrusted` argument from it.

Differential Revision: https://phabricator.services.mozilla.com/D24870
2019-03-26 10:10:22 +00:00
Botond Ballo
a28a305622 Bug 1531535 - Expose the ability to do a visual smooth scroll in nsIDOMWindowUtils. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D24555
2019-03-23 20:23:54 +00:00
Botond Ballo
a76969f2b8 Bug 1531535 - Add visual smooth scroll support to nsIPresShell. r=kats
This patch renames nsIPresShell::SetPendingVisualScrollUpdate() to
ScrollToVisual(), and adds an instant vs. smooth option.

SetPendingVisualScrollUpdate() still exists, as a helper for the instant case.

Differential Revision: https://phabricator.services.mozilla.com/D24553
2019-03-23 20:23:35 +00:00
Alex Chronopoulos
52616cc2a0 Bug 1534313 - Remove direct calls to GetDeviceCollection method. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D22988
2019-03-19 10:40:12 +00:00
Boris Chiou
5cc1382f40 Bug 1425837 - Part 8: Test that individual transforms run on the compositor thread. r=hiro,birtles
This also adds the missing preference in test_transition_per_property.html.

Depends on D22567

Differential Revision: https://phabricator.services.mozilla.com/D22568
2019-03-18 18:05:04 +00:00
shindli
826d0ad966 Backed out 4 changesets (bug 1534313) for causing a perfmafailing Gtest in /builds/worker/workspace/build/application/firefox/gmp-clearkey CLOSED TREE
Backed out changeset fe17244230e8 (bug 1534313)
Backed out changeset fc232edfe6e8 (bug 1534313)
Backed out changeset eae4a9ff0b9b (bug 1534313)
Backed out changeset f4252f238b68 (bug 1534313)
2019-03-18 18:53:33 +02:00
Alex Chronopoulos
1c714222dc Bug 1534313 - Remove direct calls to GetDeviceCollection method. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D22988
2019-03-14 16:31:48 +00:00
Timothy Nikkel
c5934e160a Bug 1535862. Don't use a property after changing it in nsDOMWindowUtils::SetDisplayPortForElement. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D23801
2019-03-16 22:14:35 +00:00
Emilio Cobos Álvarez
cf0e6ff153 Bug 1533963 - Use a single RestyleHint representation. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22828
2019-03-14 11:47:50 +00:00
Ryan Hunt
ad7b7dbb30 Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D21106
2019-02-25 16:05:29 -06:00