summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2019-11-05 03:43:15 +0100
committerLibravatar GitHub <noreply@github.com>2019-11-05 03:43:15 +0100
commitda2717c74dbe3e1123ff41de345a409c1afc2f18 (patch)
treef8e5615166a5d5fa820a4d2acd9162e3a542b199 /winit
parent0ea911ae36bbde8c288f7ae1ba8a0049b696d7c4 (diff)
parenta2161586dab6837d8c641b6f93ad476f861d8580 (diff)
downloadiced-da2717c74dbe3e1123ff41de345a409c1afc2f18.tar.gz
iced-da2717c74dbe3e1123ff41de345a409c1afc2f18.tar.bz2
iced-da2717c74dbe3e1123ff41de345a409c1afc2f18.zip
Merge pull request #37 from hecrj/feature/text-input
Text input widget
Diffstat (limited to '')
-rw-r--r--winit/src/application.rs25
-rw-r--r--winit/src/conversion.rs1
2 files changed, 24 insertions, 2 deletions
diff --git a/winit/src/application.rs b/winit/src/application.rs
index c8748199..b90b5eef 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -1,6 +1,8 @@
use crate::{
- column, conversion, input::mouse, renderer::Windowed, Cache, Column,
- Element, Event, Length, MouseCursor, UserInterface,
+ column, conversion,
+ input::{keyboard, mouse},
+ renderer::Windowed,
+ Cache, Column, Element, Event, Length, MouseCursor, UserInterface,
};
pub trait Application {
@@ -167,6 +169,25 @@ pub trait Application {
));
}
},
+ WindowEvent::ReceivedCharacter(c) => {
+ events.push(Event::Keyboard(
+ keyboard::Event::CharacterReceived(c),
+ ));
+ }
+ WindowEvent::KeyboardInput {
+ input:
+ winit::event::KeyboardInput {
+ virtual_keycode: Some(virtual_keycode),
+ state,
+ ..
+ },
+ ..
+ } => {
+ events.push(Event::Keyboard(keyboard::Event::Input {
+ key_code: conversion::key_code(virtual_keycode),
+ state: conversion::button_state(state),
+ }));
+ }
WindowEvent::CloseRequested => {
*control_flow = ControlFlow::Exit;
}
diff --git a/winit/src/conversion.rs b/winit/src/conversion.rs
index bb0d252e..e73fa008 100644
--- a/winit/src/conversion.rs
+++ b/winit/src/conversion.rs
@@ -9,6 +9,7 @@ pub fn mouse_cursor(mouse_cursor: MouseCursor) -> winit::window::CursorIcon {
MouseCursor::Working => winit::window::CursorIcon::Progress,
MouseCursor::Grab => winit::window::CursorIcon::Grab,
MouseCursor::Grabbing => winit::window::CursorIcon::Grabbing,
+ MouseCursor::Text => winit::window::CursorIcon::Text,
}
}