summaryrefslogtreecommitdiffstats
path: root/native/src/widget/text_input.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-12-15 06:13:19 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-12-15 06:13:19 +0100
commit09110a93b06ae33af6870b4aded8637748cecace (patch)
tree64f4d9a4dde51ef44ea47f94c2079e5346df4c6c /native/src/widget/text_input.rs
parenta42b3c6998274e75fd10f5ff3cecbdb37b9e3895 (diff)
parent36bdc0be1a0f959c84c18286b85c1ab51be330e6 (diff)
downloadiced-09110a93b06ae33af6870b4aded8637748cecace.tar.gz
iced-09110a93b06ae33af6870b4aded8637748cecace.tar.bz2
iced-09110a93b06ae33af6870b4aded8637748cecace.zip
Merge branch 'ios-support-wip' into feature/touch-support
Diffstat (limited to 'native/src/widget/text_input.rs')
-rw-r--r--native/src/widget/text_input.rs11
1 files changed, 8 insertions, 3 deletions
diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs
index 3e637e97..ca71c20c 100644
--- a/native/src/widget/text_input.rs
+++ b/native/src/widget/text_input.rs
@@ -16,6 +16,7 @@ use crate::keyboard;
use crate::layout;
use crate::mouse::{self, click};
use crate::text;
+use crate::touch::{self, Touch};
use crate::{
Clipboard, Element, Hasher, Layout, Length, Point, Rectangle, Size, Widget,
};
@@ -247,7 +248,11 @@ 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 {
+ phase: touch::Phase::Started,
+ ..
+ }) => {
let is_clicked = layout.bounds().contains(cursor_position);
self.state.is_focused = is_clicked;
@@ -321,10 +326,10 @@ where
Event::Mouse(mouse::Event::ButtonReleased(mouse::Button::Left)) => {
self.state.is_dragging = false;
}
- Event::Mouse(mouse::Event::CursorMoved { x, .. }) => {
+ Event::Mouse(mouse::Event::CursorMoved { position }) => {
if self.state.is_dragging {
let text_layout = layout.children().next().unwrap();
- let target = x - text_layout.bounds().x;
+ let target = position.x - text_layout.bounds().x;
if target > 0.0 {
let value = if self.is_secure {