diff --git a/crates/op-host-native/src/widget_host/scroll.rs b/crates/op-host-native/src/widget_host/scroll.rs index 660dc84e8..d123e3d08 100644 --- a/crates/op-host-native/src/widget_host/scroll.rs +++ b/crates/op-host-native/src/widget_host/scroll.rs @@ -517,6 +517,9 @@ impl WidgetHostNative { .agent_settings .scroll_y .scroll_by(-delta_y, max_scroll, 0.0); + // Content moved under a stationary cursor — re-derive + // the hover state so buttons don't keep a stale wash. + self.update_agent_settings_hover(x, y); self.mark_dirty(); return true; } diff --git a/crates/op-host-web/src/widget_host.rs b/crates/op-host-web/src/widget_host.rs index 247e3a63c..c4c4c7de8 100644 --- a/crates/op-host-web/src/widget_host.rs +++ b/crates/op-host-web/src/widget_host.rs @@ -875,6 +875,9 @@ impl WidgetHost { .agent_settings .scroll_y .scroll_by(-delta_y, max_scroll, 0.0); + // Content moved under a stationary cursor — re-derive + // the hover state so buttons don't keep a stale wash. + self.update_agent_settings_hover(x, y); self.mark_dirty(); return true; }