Skip to content

Commit

Permalink
Pass force on touch events on android
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasmerlin authored and daxpedda committed Sep 8, 2023
1 parent c00c1e9 commit c651da6
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ And please only add new entries to the top of this list, right below the `# Unre
- **Breaking:** `with_x11_visual` now takes the visual ID instead of the bare pointer.
- On X11, add a `with_embedded_parent_window` function to the window builder to allow embedding a window into another window.
- On iOS, add force data to touch events when using the Apple Pencil.
- On Android, add force data to touch events.

# 0.29.0-beta.0

Expand Down
5 changes: 4 additions & 1 deletion src/event.rs
Original file line number Diff line number Diff line change
Expand Up @@ -939,7 +939,10 @@ pub struct Touch {
///
/// ## Platform-specific
///
/// - Only available on **iOS** 9.0+, **Windows** 8+, and **Web**.
/// - Only available on **iOS** 9.0+, **Windows** 8+, **Web**, and **Android**.
/// - **Android**: This will never be [None]. If the device doesn't support pressure
/// sensitivity, force will either be 0.0 or 1.0. Also see the
/// [android documentation](https://developer.android.com/reference/android/view/MotionEvent#AXIS_PRESSURE).
pub force: Option<Force>,
/// Unique identifier of a finger.
pub id: u64,
Expand Down
4 changes: 3 additions & 1 deletion src/platform_impl/android/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -426,7 +426,9 @@ impl<T: 'static> EventLoop<T> {
phase,
location,
id: pointer.pointer_id() as u64,
force: None,
force: Some(crate::event::Force::Normalized(
pointer.pressure() as f64
)),
}),
};
callback(event, self.window_target());
Expand Down

0 comments on commit c651da6

Please sign in to comment.