diff --git a/app/lib/widgets/src/clide_tooltip.dart b/app/lib/widgets/src/clide_tooltip.dart index f78b0048..a807e89b 100644 --- a/app/lib/widgets/src/clide_tooltip.dart +++ b/app/lib/widgets/src/clide_tooltip.dart @@ -22,6 +22,7 @@ class ClideTooltip extends StatefulWidget { class _ClideTooltipState extends State { OverlayEntry? _entry; + bool _hovering = false; void _show() { final overlay = Overlay.maybeOf(context); @@ -68,10 +69,14 @@ class _ClideTooltipState extends State { tooltip: widget.message, child: MouseRegion( onEnter: (_) async { + _hovering = true; await Future.delayed(widget.showDelay); - if (mounted) _show(); + if (mounted && _hovering) _show(); + }, + onExit: (_) { + _hovering = false; + _hide(); }, - onExit: (_) => _hide(), child: widget.child, ), );