summaryrefslogtreecommitdiffstats
path: root/native/src/widget/button.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2020-12-17 05:19:14 +0100
committerLibravatar GitHub <noreply@github.com>2020-12-17 05:19:14 +0100
commit89e604d1602251f1ec16521fd714d60807217df7 (patch)
tree64d2f7683e9b465b4e85d8e12a5f01f354654fe1 /native/src/widget/button.rs
parenta42b3c6998274e75fd10f5ff3cecbdb37b9e3895 (diff)
parent277ae74d6817ee6192b5f7a44de19dcbdf8d58f7 (diff)
downloadiced-89e604d1602251f1ec16521fd714d60807217df7.tar.gz
iced-89e604d1602251f1ec16521fd714d60807217df7.tar.bz2
iced-89e604d1602251f1ec16521fd714d60807217df7.zip
Merge pull request #57 from simlay/ios-support-wip
Touch support
Diffstat (limited to 'native/src/widget/button.rs')
-rw-r--r--native/src/widget/button.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/native/src/widget/button.rs b/native/src/widget/button.rs
index dca20e13..8e2450de 100644
--- a/native/src/widget/button.rs
+++ b/native/src/widget/button.rs
@@ -4,6 +4,7 @@
use crate::event::{self, Event};
use crate::layout;
use crate::mouse;
+use crate::touch;
use crate::{
Clipboard, Element, Hasher, Layout, Length, Point, Rectangle, Widget,
};
@@ -164,7 +165,8 @@ where
_clipboard: Option<&dyn Clipboard>,
) -> event::Status {
match event {
- Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left)) => {
+ Event::Mouse(mouse::Event::ButtonPressed(mouse::Button::Left))
+ | Event::Touch(touch::Event::FingerPressed { .. }) => {
if self.on_press.is_some() {
let bounds = layout.bounds();
@@ -175,7 +177,8 @@ where
}
}
}
- Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)) => {
+ Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left))
+ | Event::Touch(touch::Event::FingerLifted { .. }) => {
if let Some(on_press) = self.on_press.clone() {
let bounds = layout.bounds();
@@ -190,6 +193,9 @@ where
}
}
}
+ Event::Touch(touch::Event::FingerLost { .. }) => {
+ self.state.is_pressed = false;
+ }
_ => {}
}