Commit Graph

78 Commits

Author SHA1 Message Date
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
Maksim Lebedev
e2514a23d9 Bug 1143618 - Change Window::OnTouch implementation to use MultiTouchInput class. r=kats 2015-03-25 12:20:20 -04:00
Nicholas Nethercote
242708cf72 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00
Andrew McCreight
d3826daa16 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00