summaryrefslogtreecommitdiffstats
path: root/runtime/src/user_interface.rs
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/src/user_interface.rs')
-rw-r--r--runtime/src/user_interface.rs62
1 files changed, 33 insertions, 29 deletions
diff --git a/runtime/src/user_interface.rs b/runtime/src/user_interface.rs
index 054d56b7..08431ced 100644
--- a/runtime/src/user_interface.rs
+++ b/runtime/src/user_interface.rs
@@ -5,9 +5,7 @@ use crate::core::mouse;
use crate::core::renderer;
use crate::core::widget;
use crate::core::window;
-use crate::core::{
- Clipboard, Element, Layout, Point, Rectangle, Shell, Size, Vector,
-};
+use crate::core::{Clipboard, Element, Layout, Rectangle, Shell, Size, Vector};
use crate::overlay;
/// A set of interactive graphical elements with a specific [`Layout`].
@@ -193,7 +191,12 @@ where
let mut manual_overlay = ManuallyDrop::new(
self.root
.as_widget_mut()
- .overlay(&mut self.state, Layout::new(&self.base), renderer)
+ .overlay(
+ &mut self.state,
+ Layout::new(&self.base),
+ renderer,
+ Vector::ZERO,
+ )
.map(overlay::Nested::new),
);
@@ -201,8 +204,7 @@ where
let bounds = self.bounds;
let mut overlay = manual_overlay.as_mut().unwrap();
- let mut layout =
- overlay.layout(renderer, bounds, Point::ORIGIN, Vector::ZERO);
+ let mut layout = overlay.layout(renderer, bounds);
let mut event_statuses = Vec::new();
for event in events.iter().cloned() {
@@ -245,6 +247,7 @@ where
&mut self.state,
Layout::new(&self.base),
renderer,
+ Vector::ZERO,
)
.map(overlay::Nested::new),
);
@@ -256,12 +259,7 @@ where
overlay = manual_overlay.as_mut().unwrap();
shell.revalidate_layout(|| {
- layout = overlay.layout(
- renderer,
- bounds,
- Point::ORIGIN,
- Vector::ZERO,
- );
+ layout = overlay.layout(renderer, bounds);
});
}
@@ -451,17 +449,18 @@ where
let base_cursor = if let Some(mut overlay) = self
.root
.as_widget_mut()
- .overlay(&mut self.state, Layout::new(&self.base), renderer)
+ .overlay(
+ &mut self.state,
+ Layout::new(&self.base),
+ renderer,
+ Vector::ZERO,
+ )
.map(overlay::Nested::new)
{
- let overlay_layout = self.overlay.take().unwrap_or_else(|| {
- overlay.layout(
- renderer,
- self.bounds,
- Point::ORIGIN,
- Vector::ZERO,
- )
- });
+ let overlay_layout = self
+ .overlay
+ .take()
+ .unwrap_or_else(|| overlay.layout(renderer, self.bounds));
let cursor = if cursor
.position()
@@ -520,7 +519,12 @@ where
.as_ref()
.and_then(|layout| {
root.as_widget_mut()
- .overlay(&mut self.state, Layout::new(base), renderer)
+ .overlay(
+ &mut self.state,
+ Layout::new(base),
+ renderer,
+ Vector::ZERO,
+ )
.map(overlay::Nested::new)
.map(|mut overlay| {
let overlay_interaction = overlay.mouse_interaction(
@@ -574,16 +578,16 @@ where
if let Some(mut overlay) = self
.root
.as_widget_mut()
- .overlay(&mut self.state, Layout::new(&self.base), renderer)
+ .overlay(
+ &mut self.state,
+ Layout::new(&self.base),
+ renderer,
+ Vector::ZERO,
+ )
.map(overlay::Nested::new)
{
if self.overlay.is_none() {
- self.overlay = Some(overlay.layout(
- renderer,
- self.bounds,
- Point::ORIGIN,
- Vector::ZERO,
- ));
+ self.overlay = Some(overlay.layout(renderer, self.bounds));
}
overlay.operate(