servo/components
Bi Fuguo 3fe42a0b5a
implement Touchevent prevent default behavior (#35031)
* implement Touchevent prevent default behavior

* The status change logic of the `TouchHandler` is changed.
> The `WaitingForScript` state is canceled. TouchAction can be identified
  based on the current touch type and numbers if touch points.
* Sends current event to script thread along with recognized `TouchAction`.
> After dispatch event, script thread sends a `TouchEventProcess(EventResult)`
  message to main thread. If the event is set to `DefaultAllowed`, the
  corresponding `TouchAction` information is added.
* After receiving `DefaultAllowed(TouchAction)` message, main thread executes corresponding action.
> `DefaultPrevented(TouchEventType)` is received. Use `prevent_click` to mark
  that the default `Click` is blocked, and `prevent_move` to mark that the
  default `Scroll` and `Zoom` are blocked. In this way, all TouchActions
  implement preventDefault.
Signed-off-by: Bi Fuguo <1782765876@qq.com>

* fix some suggestions

* support preventDefault fling
* move `TouchAction` to share touch directory
* check preventDefault everytime when touch
* fix zoom ineffective

Signed-off-by: Bi Fuguo <1782765876@qq.com>

* fix some suggestions

rename on_event_processed to  on_touch_event_processed
clear unused features

Signed-off-by: Bi Fuguo <1782765876@qq.com>

* Optimizes pan performance by continuously sliding without waiting for the eventhandler.

Signed-off-by: kongbai1996 <1782765876@qq.com>

* resolve conflict

Signed-off-by: kongbai1996 <1782765876@qq.com>

---------

Signed-off-by: Bi Fuguo <1782765876@qq.com>
Signed-off-by: kongbai1996 <1782765876@qq.com>
2025-02-17 10:50:04 +00:00
..
allocator Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
background_hang_monitor Only compile platform samplers when cargo feature enabled (#35312) 2025-02-06 06:53:08 +00:00
bluetooth Include WebViewId into EmbedderMsg variants where possible (#35211) 2025-01-30 11:15:35 +00:00
canvas Use surfman with glow bindings (take II) (#35422) 2025-02-13 07:26:38 +00:00
compositing implement Touchevent prevent default behavior (#35031) 2025-02-17 10:50:04 +00:00
config deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
constellation deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
deny_public_fields Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
devtools libservo: Flesh out permissions API (#35396) 2025-02-10 15:50:33 +00:00
dom_struct script: Feature-gate all crown support. (#35055) 2025-01-18 21:36:15 +00:00
domobject_derive Upgrade rustc to 1.83 (#34793) 2025-01-01 09:38:28 +00:00
fonts deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
geometry servoshell: Allow overriding screen resolution with a command-line argument (#34038) 2024-10-30 11:54:13 +00:00
hyper_serde Elide lifetimes where possible after rustup (#34824) 2025-01-03 18:54:44 +00:00
jstraceable_derive Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
layout layout: Implement overflow scroll support for different axes (#35414) 2025-02-14 08:14:57 +00:00
layout_2020 Fix scroll_sensitivity related naming issue (#35462) 2025-02-14 10:18:25 +00:00
layout_thread deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
layout_thread_2020 Fix scroll_sensitivity related naming issue (#35462) 2025-02-14 10:18:25 +00:00
malloc_size_of deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
media Remove some unused dependencies (#34355) 2024-11-25 10:29:58 +00:00
metrics script_traits: Rename ConstellationControlMsg to ScriptThreadMessage (#35226) 2025-01-30 22:46:17 +00:00
net net: Use the unfiltered response status when comparing against cached resources. (#35483) 2025-02-16 13:19:51 +00:00
pixels Update pixels::unmultiply_inplace to support RB swap and use it in canvas_state (#35313) 2025-02-06 05:02:49 +00:00
profile libservo: Expose a single InputEvent type and pass it to script (#35430) 2025-02-12 17:07:15 +00:00
rand crypto: Begin SubtleCrypto implementation (#33628) 2024-10-08 03:51:08 +00:00
range Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
script implement Touchevent prevent default behavior (#35031) 2025-02-17 10:50:04 +00:00
script_bindings dom: expose obsolete scheme attribute for meta tag (#35505) 2025-02-17 07:07:24 +00:00
servo implement Touchevent prevent default behavior (#35031) 2025-02-17 10:50:04 +00:00
shared implement Touchevent prevent default behavior (#35031) 2025-02-17 10:50:04 +00:00
timers deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
url Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
webdriver_server libservo: Expose a single InputEvent type and pass it to script (#35430) 2025-02-12 17:07:15 +00:00
webgpu deps: Upgrade to webrender@0.66 (#35325) 2025-02-07 11:57:26 +00:00
webxr Use surfman with glow bindings (take II) (#35422) 2025-02-13 07:26:38 +00:00