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

81 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 1a7c5067ca Bug 1446851. Get rid of nsIDOMWheelEvent. r=qdot
We can't include WheelEventBinding.h in MouseEvents.h because that produces
this include loop:

WheelEventBinding.h -> MouseEventBinding.h -> UIEventBinding.h ->
nsGlobalWindow.h -> nsGlobalWindowInner.h -> nsRefreshDriver.h ->
AnimationEventDispatcher.h -> AnimationComparator.h -> Animation.h ->
EffectCompositor.h -> PseudoElementHashEntry.h -> Element.h ->
PointerEventHandler.h -> MouseEvents.h -> WheelEventBinding.h

MozReview-Commit-ID: 5KNwH69aJYW
2018-03-20 00:16:05 -04:00
Kartikaya Gupta c864e00967 Bug 1441324 - Move the input event messages from PAPZCTreeManager to PAPZInputBridge. r=froydnj,rhunt
This remotes the APZInputBridge interface over the PAPZInputBridge
protocol in the case of the GPU process, and makes the GPU process'
main thread act as the APZ controller thread in that process. If
there is no GPU process we continue as before and the APZInputBridge
interface implementation is the concrete APZCTreeManager instance
in the UI process.

The main changes in this patch are moving all the code associated with
these messages out of APZCTreeManager{Parent,Child} and into
APZInputBridge{Parent,Child}. APZCTreeManagerChild now returns an
APZInputBridgeChild instance via InputBridge(), instead of returning
itself. The SetControllerThread call in the GPU process is also updated.

MozReview-Commit-ID: M4AaIW1Q0h

--HG--
extra : rebase_source : e5a8f14e23be34229fe80a47f6789d19b19e0a9f
2018-03-16 16:28:19 -04:00
Kartikaya Gupta 9154159eef Bug 1419834 - Add hit-testing results for MozMouseHittest events to APZTestData. r=botond,mrbkap
This allows us to fire MozMouseHittest events from tests and then read
the hittest result from the compositor APZTestData. The MozMouseHittest
event was chosen in particular because the existing uses of it are
similar in nature - it is a dummy event that is used to determine what
elements a particular coordinate targets. It is also an event that is
never generated by the OS and so using this event gives us more control
over what ends up in the APZTestData.

MozReview-Commit-ID: KHjIX7EpK2A

--HG--
extra : rebase_source : f7d7d729c1935eefd49ed06d8644ff9ef537f2e1
2017-11-29 23:16:26 -05:00
Botond Ballo 1b91441c7c Bug 951793 - Obey overscroll-behavior for swipe navigation. r=mstange
MozReview-Commit-ID: i2BuiAfG71
2017-11-25 01:29:15 +01:00
Sebastian Hengst 6d4637aebb Backed out 15 changesets (bug 951793) because it landed before the necessary servo changes. r=backout requested by emilio on a CLOSED TREE
Backed out changeset ca8c86e229df (bug 951793)
Backed out changeset 6eef6403fa71 (bug 951793)
Backed out changeset a5e529f52fb1 (bug 951793)
Backed out changeset 054e837609d0 (bug 951793)
Backed out changeset 713a3c9617ce (bug 951793)
Backed out changeset 884913aa1668 (bug 951793)
Backed out changeset c3340b84e534 (bug 951793)
Backed out changeset 50fe3c6ac486 (bug 951793)
Backed out changeset be4e22e5c257 (bug 951793)
Backed out changeset 7055bd5dfc4e (bug 951793)
Backed out changeset fa6da1e723cf (bug 951793)
Backed out changeset 386f77004d89 (bug 951793)
Backed out changeset fa82cdc01408 (bug 951793)
Backed out changeset 867d8ea5355c (bug 951793)
Backed out changeset e61ac8e48971 (bug 951793)
2017-11-25 01:01:41 +02:00
Botond Ballo 3ddd46e5f1 Bug 951793 - Obey overscroll-behavior for swipe navigation. r=mstange
MozReview-Commit-ID: i2BuiAfG71

--HG--
extra : rebase_source : 9fd9b60db5c6e5f01033f6dca934024ce488cedb
2017-10-23 18:27:24 -04:00
Botond Ballo 8b7ba8ac1c Bug 1377020 - Use MOZ_DEFINE_ENUM instead of a sentinel enumerator for enumerations in gfx/layers. r=kats
MozReview-Commit-ID: IUQDb0VIAwQ

--HG--
extra : rebase_source : 50d05ab09a5fb03d16c044edd38f0f3e0dba7ada
2017-06-30 21:18:55 -04:00
Ryan Hunt c24e099b23 Bug 1351783 part 15 - Hook up APZC for scrolling based on a KeyboardScrollAction. r=kats,botond
This commit adds code for keyboard scroll animations and computing the delta
needed for a keyboard scroll action. Keyboard scrolling behavior is more complex
with scroll snapping, so we don't support async keyboard scrolling when we have
scroll snap points.

MozReview-Commit-ID: 97CpprCBp2A

--HG--
extra : rebase_source : 154b2c6b5a6c587fca011ab885c8d46ba6b4d80a
extra : histedit_source : 87ba53fe89069a47751d9ce25fc344011fb0f4de
2017-06-06 04:47:10 -05:00
Ryan Hunt c1312e5abc Bug 1351783 part 12 - Create and sync focus sequence numbers. r=kats,botond,dvander
Focus can change at any moment in a document. This causes non-determinism and
correctness problems for doing keyboard apz scrolling. To get around this, we
will maintain deterministic behavior for focus changes initiated by input events
and see if we can get away with more non-determinism for things like `setTimeout`

In order to do this, we disable async keyboard scrolling when an input event is
processed that could have a event listener. We then attach a sequence number to
that input event and dispatch it to content. In content, we record the highest
sequence number that we have processed from an event, and send that on each focus
update. Using this, we can determine in APZ if we have a current focus target or
if we are still waiting for an input event to be processed and focus to be
reconfirmed.

MozReview-Commit-ID: CWcu8YEFQz4

--HG--
extra : rebase_source : 8c54a619bd4f5ee892f0cc8768a10f3e1e4e0b59
extra : histedit_source : 601ca293a028787883841adc6b40e62c0cc829e5
2017-06-05 19:45:31 -05:00
Ryan Hunt e747db20e3 Bug 1351783 part 2 - Add a KeyboardInput type. r=kats
Every event type handled by APZ needs to have a InputData type. This commit
adds a new KeyboardInput type that stores the minimum fields needed to match
keyboard shortcuts.

MozReview-Commit-ID: 3KUnH4sWrST

--HG--
extra : rebase_source : 710274199a1ced0716abe02e9d6aaea0d31c9498
2017-06-05 18:09:40 -05:00
Randall Barker a606cd8b60 Bug 1335895 - Android GeckoView Dynamic Toolbar Version 3 r=botond,dvander,jchen,kats
This version of the Dynamic Toolbar moves the animation of the toolbar
from the Android UI thread to the compositor thread. All animation for
showing and hiding the toolbar are done with the compositor and a static
snapshot of the real toolbar.

MozReview-Commit-ID: BCe8zpbkWQt
2017-04-20 15:15:14 -07:00
Kartikaya Gupta cf44e08da9 Bug 1302736 - Fire click events with a clickCount of 2 when the user does a double-tap gesture with double taps not allowed. r=botond
MozReview-Commit-ID: 5qxHMoHXDXh
2016-09-29 10:05:25 -04:00
Kartikaya Gupta cb429d93ab Bug 1298886 - Convert the PinchGestureInput span fields from float to ParentLayerCoord. r=botond
MozReview-Commit-ID: 1Odp9ml6reK
2016-09-24 09:46:01 -04:00
Kartikaya Gupta 0e04f56656 Bug 1304729 - When transitioning from a pinch to a pan, make sure we start the pan with the correct coordinates. r=botond
MozReview-Commit-ID: CC4gPT2jubR
2016-09-22 14:54:01 -04:00
Kartikaya Gupta 05d91128f8 Bug 1289432 - Introduce a skeleton QueuedInput class. r=botond
Note that this patch makes the InputData hierarchy polymorphic.

MozReview-Commit-ID: HrZ2KhHeDoy
2016-09-14 07:54:36 -04:00
Kartikaya Gupta ee30b1debc Bug 1302093 - Move all the method bodies from InputData.h to InputData.cpp to avoid rebuilding the world for itty-bitty changes. r=mstange
MozReview-Commit-ID: 88zPelaPcRR

--HG--
extra : rebase_source : 01174ebe41c7eebc35bd50a0a96724144229f4ad
2016-09-12 09:47:01 -04:00
Ryan Hunt 4e4f481bba Bug 1281575 - Create IPDL protocol implementation of IAPZCTreeManager. r=kats
MozReview-Commit-ID: BEgcbidyLjm
2016-07-20 13:37:00 +02:00
Carsten "Tomcat" Book 361b6edfc1 Backed out changeset b95ebdb96050 (bug 1281575) 2016-07-21 06:26:47 +02:00
Ryan Hunt aa91ba815f Bug 1281575 - Create IPDL protocol implementation of IAPZCTreeManager. r=kats 2016-07-20 13:37:00 +02:00
Kartikaya Gupta 07d2a157f8 Bug 1273137 - Add the mHandledByAPZ flag to MouseInput as well. r=rbarker
MozReview-Commit-ID: EGEzIjvHbml

--HG--
extra : rebase_source : 9c9be98807a81e90fffa075a209346988a8fc614
2016-06-07 11:07:55 -04:00
Kartikaya Gupta c065a77f0b Bug 1269032 - Add support for user multipliers to pan gesture inputs. r=mstange
MozReview-Commit-ID: 91ooLOswm7q

--HG--
extra : rebase_source : 4b545b6f95052adc951c37cc096110a7df8be1bb
2016-05-03 09:09:10 -04:00
Botond Ballo 4058840cb9 Bug 1259296 - Scroll snap in the compositor in response to wheel events. r=kats
MozReview-Commit-ID: 9fOlssstgvR

--HG--
extra : source : fbdee753c4618cbc1a7c79e3ec07b7479f93a05d
extra : histedit_source : dd42dfa282ea2e14fe5c9e028acc699746fcf8bc
2016-04-04 17:43:21 -04:00
Markus Stange 0ab404928f Bug 1254275 - Inspect the event queue to find out whether momentum events are following. r=kats
MozReview-Commit-ID: 6k3SaJ6X7Mr

--HG--
extra : histedit_source : 1b6842a2cd855dc04b1375c2c0f174005b1e0c75
2016-03-28 14:56:28 -04:00
Randall Barker 9a7d54c34b Bug 1251346 - Fennec should not generate touch events from mouse events. r=kats 2016-03-14 16:56:46 -07:00
Randall Barker 17328787e7 Bug 1232338 - part 1, Add better mouse support to InputData MouseInput r=kats 2016-03-11 11:03:50 -08:00
Kartikaya Gupta d805fe7934 Bug 1247677 - Add support for the general.smoothScroll.{pages,pixels} prefs in APZ. r=dvander
MozReview-Commit-ID: HCOqbRZV5ui
2016-02-12 08:30:16 -05:00
Masayuki Nakano 02e13bc9fe Bug 1153156 part.4 Make APZC system scroll speed overriding aware r=mstange 2016-01-27 15:09:13 +09:00
Kartikaya Gupta 0c40233914 Bug 1235994 - Add a flag to wheel events to track if they may have momentum following them. r=mstange
--HG--
extra : commitid : EAEUoOFxeOj
2016-01-07 10:39:37 -05:00
Botond Ballo 70b749edea Bug 1069417 - Modify TransformTo() and related functions to use typed matrices. r=kats
Call sites (all in APZ and related code) were modified accordingly. Some of
these modifications involved changing some matrices stored in APZ to be typed.

--HG--
extra : rebase_source : 6f1cf33a5550987097fcd386c77765d046f5ec34
extra : source : 8f66bdc8e6e86f482a06b9c7a160740026cf24b4
2015-11-30 20:14:31 -05:00
Botond Ballo 0858698ac3 Bug 1069417 - Generalize Matrix4x4 into Matrix4x4Typed<SourceUnits, TargetUnits>. r=Bas
Matrix4x4 remains a typedef for Matrix4x4Typed<UnknownUnits, UnknownUnits>.

No client code needed changing, except for forward-declarations of Matrix4x4
as a class (since it's now a typedef).

--HG--
extra : rebase_source : ecd9470b9defcc55cfb9e7dbd26e928a6219c3e5
extra : source : 0fc99b5490830953f37a4d8769e42dad2d10bc6e
2015-12-02 18:52:00 -05:00
David Anderson d83a938d65 Add page scroll support for APZ wheel events. (bug 1228028, r=kats) 2015-12-02 17:05:11 -08:00
David Anderson 0bf441628c Add APZ support for mousewheel delta multiplier prefs. (bug 1214170 part 2, r=kats)
--HG--
extra : rebase_source : e2847430422f19d872c446524627cbaa526ffe06
2015-12-01 13:46:07 -08:00
David Anderson 83e664a4cd Add APZ support for mousewheel.acceleration prefs. (bug 1214170 part 1, r=kats)
--HG--
extra : rebase_source : b97121b98c3e42a83135f7e8fa186575b4fbfcb5
2015-12-01 13:45:49 -08:00
Nigel Babu 29e98fdbc3 Backed out changeset ebb6fb453cca (bug 1214170) for build bustage on a CLOSED TREE 2015-11-25 16:22:16 +05:30
David Anderson 859092e6a5 Add APZ support for mousewheel.acceleration prefs. (bug 1214170, r=kats) 2015-11-25 01:12:33 -08:00
Dmitry Rozhkov 8df43f8eae Bug 962243 - Implement PINCH to TOUCHING transition in APZC. r=botond
--HG--
extra : commitid : FoHvf2KH9rd
2015-11-22 08:57:45 -05:00
Randall Barker 47968a20fd Bug 1223946 - Part 1: Clean up and support needed for converting WidgetWheelEvent to ScrollWheelInput. r=kats
--HG--
extra : commitid : Cihc6iEBezl
2015-11-18 19:32:37 -05:00
Kartikaya Gupta eee88093b7 Bug 1217818 - Add support for the mHandledByAPZ flag on touch events as well. r=botond
--HG--
extra : commitid : Dcfgar8CZOi
2015-10-28 12:53:34 -04:00
Benoit Girard 5e9f05f89c Bug 1199885 - Part 9: Let APZC handle the drag events. r=kats
--HG--
extra : commitid : 5eL9kMtaPPT
2015-09-28 14:44:37 -04:00
Benoit Girard 3ccd3e736b Bug 1199885 - Part 1: Add MouseInput InputData. r=kats
--HG--
extra : commitid : Koa5TunrB2K
extra : rebase_source : 982a5bb2f320dd2c55410ef53904a44de1b06db5
2015-09-28 10:32:05 -04:00
Markus Stange 2705f93fbd Bug 1016035 - Don't wait for content to say that we need to swipe if APZ has enough information. r=kats
--HG--
extra : commitid : CUZqiDbltTx
extra : rebase_source : 90fb8cf0023177b7bb98ff93c5667c8dbc153f29
2015-08-28 16:50:00 -04:00
Markus Stange 49c4d7a190 Bug 1016035 - Delay the processing of a PanGestureInput block until we know whether it's a swipe. r=kats
--HG--
extra : commitid : 5utp02GzYAW
extra : rebase_source : 4415c7ac8fd3a8dbb718593bee63e89e8ba1625c
2015-08-12 00:11:54 -04:00
Markus Stange 4d793f82dd Bug 1193062 - Add mHandledByAPZ on PanGestureInput and ScrollWheelInput, and sync the information to the WidgetWheelEvent. r=kats
--HG--
extra : commitid : 2qlm0ULac3
extra : rebase_source : 52fc5d3930a9b3a941f7e3665ef6b371e8a4b1b5
extra : histedit_source : d99996a3729a1bc78b9f4631f950476321f93c1f
2015-08-11 18:04:55 -04:00
Markus Stange a4753aced8 Bug 1193062 - Process pan gesture deltas in begin+end events. r=kats
We don't want to split native NSEvents into two PanGestureInput events.

--HG--
extra : commitid : 7UnFAreSEcF
extra : rebase_source : 70121ddcf52f00547e70fcbea16975224835f890
extra : histedit_source : 0b8840795e6ab1cc808d75aa042c030b70f09f6f
2015-08-11 15:57:47 -04:00
Markus Stange 6d1e1e95c1 Bug 1193062 - Make OverscrollHandoffChain::FindFirstScrollable and AsyncPanZoomController::CanScroll able to deal with PanGestureInput events. r=kats
--HG--
extra : commitid : CW9kPLdmobP
extra : rebase_source : f26d419f8b263ffbc55d013e822835ccd357a587
extra : histedit_source : d031bfa29c918232db337e4e739b48e7fd653d31
2015-08-26 11:14:33 -04:00
Markus Stange fbaad2355a Bug 1193062 - Add fields to PanGestureInput and ScrollWheelInput. r=kats
We are going to create WidgetWheelEvents from them and need more information than what they currently have.

--HG--
extra : commitid : BQEuAY5Cr9b
extra : rebase_source : acd53b84301313774cc7d7cc76279859b9c77709
extra : histedit_source : f44e1da6dd48fabacd90c06a829e9e66f26cdbf3
2015-08-25 23:21:41 -04:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Kevin Wern c4068c3470 Bug 1120683 - Properly handle unapplying 3D projective transforms throughout APZ code. r=botond
Whenever the inverse of a 3D projective transform is applied to a point, only use the result if it has a positive w-coordinate.

When transforming by a matrix that we know should be 2D, assert to that effect.

Transformations of rectangles (as opposed to points) remain to be audited.

--HG--
extra : source : a183e31473fcca0d20e2331fdbd93b8cc0cee824
2015-07-03 15:06:26 -04:00
Markus Stange 83a1a05b18 Bug 1148868 - Make APZ wheel handling handle pixel scrolling on OS X. r=dvander, r=kats
--HG--
extra : rebase_source : 99a474406eac76a04b17a18caa9473ff6a392ea0
2015-04-13 15:45:37 -04:00
Kartikaya Gupta b7f540fb31 Bug 1143618 - Follow-up to fix static analysis build bustage. r=me on a CLOSED TREE 2015-03-25 12:41:50 -04:00