summaryrefslogtreecommitdiffstats
path: root/core/src/element.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-07-27 01:02:28 +0200
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-07-27 01:04:18 +0200
commite2ba7ece83f141c149659747977147392df008f4 (patch)
tree5fa04524d0ca95c6289c4d5962af7a97098ec811 /core/src/element.rs
parente29754f32d03efc4b075e9b63cc554d128bc2ccf (diff)
downloadiced-e2ba7ece83f141c149659747977147392df008f4.tar.gz
iced-e2ba7ece83f141c149659747977147392df008f4.tar.bz2
iced-e2ba7ece83f141c149659747977147392df008f4.zip
Introduce `visible_bounds` operation for `Container`
Diffstat (limited to 'core/src/element.rs')
-rw-r--r--core/src/element.rs11
1 files changed, 8 insertions, 3 deletions
diff --git a/core/src/element.rs b/core/src/element.rs
index b9b76247..d2c6358b 100644
--- a/core/src/element.rs
+++ b/core/src/element.rs
@@ -5,7 +5,9 @@ use crate::overlay;
use crate::renderer;
use crate::widget;
use crate::widget::tree::{self, Tree};
-use crate::{Clipboard, Color, Layout, Length, Rectangle, Shell, Widget};
+use crate::{
+ Clipboard, Color, Layout, Length, Rectangle, Shell, Vector, Widget,
+};
use std::any::Any;
use std::borrow::Borrow;
@@ -325,11 +327,12 @@ where
fn container(
&mut self,
id: Option<&widget::Id>,
+ bounds: Rectangle,
operate_on_children: &mut dyn FnMut(
&mut dyn widget::Operation<T>,
),
) {
- self.operation.container(id, &mut |operation| {
+ self.operation.container(id, bounds, &mut |operation| {
operate_on_children(&mut MapOperation { operation });
});
}
@@ -346,8 +349,10 @@ where
&mut self,
state: &mut dyn widget::operation::Scrollable,
id: Option<&widget::Id>,
+ bounds: Rectangle,
+ translation: Vector,
) {
- self.operation.scrollable(state, id);
+ self.operation.scrollable(state, id, bounds, translation);
}
fn text_input(