Merge pull request #2584 from iced-rs/fix/scrollable-transactions
Fix `scrollable` transactions when `on_scroll` is not set
This commit is contained in:
commit
fc722f1356
1 changed files with 10 additions and 8 deletions
|
|
@ -760,13 +760,17 @@ where
|
|||
content_bounds,
|
||||
);
|
||||
|
||||
if notify_scroll(
|
||||
let has_scrolled = notify_scroll(
|
||||
state,
|
||||
&self.on_scroll,
|
||||
bounds,
|
||||
content_bounds,
|
||||
shell,
|
||||
) {
|
||||
);
|
||||
|
||||
let in_transaction = state.last_scrolled.is_some();
|
||||
|
||||
if has_scrolled || in_transaction {
|
||||
event::Status::Captured
|
||||
} else {
|
||||
event::Status::Ignored
|
||||
|
|
@ -1194,11 +1198,6 @@ fn notify_viewport<Message>(
|
|||
return false;
|
||||
}
|
||||
|
||||
let Some(on_scroll) = on_scroll else {
|
||||
state.last_notified = None;
|
||||
return false;
|
||||
};
|
||||
|
||||
let viewport = Viewport {
|
||||
offset_x: state.offset_x,
|
||||
offset_y: state.offset_y,
|
||||
|
|
@ -1229,9 +1228,12 @@ fn notify_viewport<Message>(
|
|||
}
|
||||
}
|
||||
|
||||
shell.publish(on_scroll(viewport));
|
||||
state.last_notified = Some(viewport);
|
||||
|
||||
if let Some(on_scroll) = on_scroll {
|
||||
shell.publish(on_scroll(viewport));
|
||||
}
|
||||
|
||||
true
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue