mirror of
https://github.com/gabehf/Fladder.git
synced 2026-03-11 00:10:29 -07:00
Init repo
This commit is contained in:
commit
764b6034e3
566 changed files with 212335 additions and 0 deletions
30
lib/widgets/shared/hover_widget.dart
Normal file
30
lib/widgets/shared/hover_widget.dart
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
|
||||
class HoverWidget extends ConsumerStatefulWidget {
|
||||
final Size size;
|
||||
final Widget Function(bool visible) child;
|
||||
const HoverWidget({
|
||||
this.size = Size.infinite,
|
||||
required this.child,
|
||||
super.key,
|
||||
});
|
||||
|
||||
@override
|
||||
ConsumerState<ConsumerStatefulWidget> createState() => _HoverWidgetState();
|
||||
}
|
||||
|
||||
class _HoverWidgetState extends ConsumerState<HoverWidget> {
|
||||
bool hovering = false;
|
||||
|
||||
void setHovering(bool value) => setState(() => hovering = value);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return MouseRegion(
|
||||
onEnter: (event) => setHovering(true),
|
||||
onExit: (event) => setHovering(false),
|
||||
child: widget.child(hovering),
|
||||
);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue