From 9f85e0c721927f1e3bd195a998ec7a80ec0e7455 Mon Sep 17 00:00:00 2001 From: bungoboingo Date: Sat, 24 Dec 2022 21:27:44 -0800 Subject: Reworked Scrollable to account for lack of widget order guarantees. Fixed thumb "snapping" bug on scrollable when cursor is out of bounds. --- native/src/widget/operation/scrollable.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'native/src/widget/operation') diff --git a/native/src/widget/operation/scrollable.rs b/native/src/widget/operation/scrollable.rs index 1e8b7543..6981b1f4 100644 --- a/native/src/widget/operation/scrollable.rs +++ b/native/src/widget/operation/scrollable.rs @@ -1,19 +1,19 @@ //! Operate on widgets that can be scrolled. use crate::widget::{Id, Operation}; -use iced_core::Vector; +use iced_core::Point; /// The internal state of a widget that can be scrolled. pub trait Scrollable { - /// Snaps the scroll of the widget to the given `percentage`. - fn snap_to(&mut self, percentage: Vector); + /// Snaps the scroll of the widget to the given `percentage` along the horizontal & vertical axis. + fn snap_to(&mut self, percentage: Point); } /// Produces an [`Operation`] that snaps the widget with the given [`Id`] to /// the provided `percentage`. -pub fn snap_to(target: Id, percentage: Vector) -> impl Operation { +pub fn snap_to(target: Id, percentage: Point) -> impl Operation { struct SnapTo { target: Id, - percentage: Vector, + percentage: Point, } impl Operation for SnapTo { -- cgit