summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-01-16 07:18:17 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2020-01-16 07:18:17 +0100
commitb3106738eba09a7dec98f28738ab29996654491f (patch)
tree15af856db58af15c281d966a8d24e9a11426dc89
parentf73bacb454615566abdbf45065e3fd11a3276d93 (diff)
downloadiced-b3106738eba09a7dec98f28738ab29996654491f.tar.gz
iced-b3106738eba09a7dec98f28738ab29996654491f.tar.bz2
iced-b3106738eba09a7dec98f28738ab29996654491f.zip
Produce new window file events in `iced_winit`
-rw-r--r--native/src/window/event.rs6
-rw-r--r--winit/src/application.rs31
2 files changed, 24 insertions, 13 deletions
diff --git a/native/src/window/event.rs b/native/src/window/event.rs
index c913385b..b177141a 100644
--- a/native/src/window/event.rs
+++ b/native/src/window/event.rs
@@ -26,7 +26,7 @@ pub enum Event {
/// A file was hovered, but has exited the window.
///
- /// There will be a single `FilesLeft` event triggered even if multiple
- /// files were hovered.
- FilesLeft,
+ /// There will be a single `FilesHoveredLeft` event triggered even if
+ /// multiple files were hovered.
+ FilesHoveredLeft,
}
diff --git a/winit/src/application.rs b/winit/src/application.rs
index 406443d3..42511fb0 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -302,6 +302,18 @@ pub trait Application: Sized {
event: window_event,
..
} => match window_event {
+ WindowEvent::Resized(new_size) => {
+ events.push(Event::Window(window::Event::Resized {
+ width: new_size.width.round() as u32,
+ height: new_size.height.round() as u32,
+ }));
+
+ size = new_size;
+ resized = true;
+ }
+ WindowEvent::CloseRequested => {
+ *control_flow = ControlFlow::Exit;
+ }
WindowEvent::CursorMoved { position, .. } => {
events.push(Event::Mouse(mouse::Event::CursorMoved {
x: position.x as f32,
@@ -370,17 +382,16 @@ pub trait Application: Sized {
modifiers: conversion::modifiers_state(modifiers),
}));
}
- WindowEvent::CloseRequested => {
- *control_flow = ControlFlow::Exit;
+ WindowEvent::HoveredFile(path) => {
+ events
+ .push(Event::Window(window::Event::FileHovered(path)));
}
- WindowEvent::Resized(new_size) => {
- events.push(Event::Window(window::Event::Resized {
- width: new_size.width.round() as u32,
- height: new_size.height.round() as u32,
- }));
-
- size = new_size;
- resized = true;
+ WindowEvent::DroppedFile(path) => {
+ events
+ .push(Event::Window(window::Event::FileDropped(path)));
+ }
+ WindowEvent::HoveredFileCancelled => {
+ events.push(Event::Window(window::Event::FilesHoveredLeft));
}
_ => {}
},