apptomate_custom_tooltip 0.0.1 copy "apptomate_custom_tooltip: ^0.0.1" to clipboard
apptomate_custom_tooltip: ^0.0.1 copied to clipboard

A highly customizable and interactive tooltip widget for Flutter applications with smooth animations and flexible styling options.

CustomToolTip #

Flutter Dart

A highly customizable and interactive tooltip widget for Flutter applications with smooth animations and flexible styling options.

Features ✨ #

  • 🎨 Fully customizable - Colors, text styles, padding, and more
  • Timing control - Adjust show/hide durations
  • 🖱 Multiple triggers - Hover (desktop) and long press (mobile)
  • 📏 Auto-sizing - Handles text wrapping and max width constraints
  • 🎥 Smooth animations - Fade in/out with customizable curves
  • Arrow indicator - Visual pointer to the target element
  • 🌓 Dark/light ready - Works with any theme

Installation 📦 #

Add this to your pubspec.yaml:

dependencies:
  apptomate_custom_tooltip: ^0.0.1

Then run:

flutter pub get

Basic Usage 🚀 #

CustomToolTip(
  message: 'This is a helpful hint',
  child: Icon(Icons.help_outline),
)

Customization Options ⚙️ #

Parameter Description Default
message Tooltip text content required
child Widget that triggers the tooltip required
backgroundColor Background color Colors.black87
textStyle Text styling TextStyle(color: Colors.white, fontSize: 14)
padding Inner padding EdgeInsets.symmetric(horizontal: 12, vertical: 8)
borderRadius Corner radius 8.0
arrowColor Arrow color Same as background
showDuration How long tooltip stays visible 2 seconds
waitDuration Delay before showing 500 milliseconds
maxWidth Maximum width before text wraps 200

Advanced Examples 🎨 #

Styled Tooltip #

CustomToolTip(
  message: 'Important information!',
  backgroundColor: Colors.deepPurple,
  textStyle: TextStyle(
    color: Colors.white,
    fontSize: 16,
    fontWeight: FontWeight.bold,
  ),
  padding: EdgeInsets.all(16),
  borderRadius: 12,
  child: ElevatedButton(
    onPressed: () {},
    child: Text('Hover Me'),
  ),
)

Custom Timing #

CustomToolTip(
  message: 'Appears quickly, stays longer',
  showDuration: Duration(seconds: 5),
  waitDuration: Duration(milliseconds: 200),
  child: Icon(Icons.timer),
)

Best Practices ✅ #

  1. For accessibility:

    CustomToolTip(
      message: 'Descriptive text for screen readers',
      child: Semantics(
        label: 'Button with tooltip',
        child: IconButton(...),
      ),
    )
    
  2. For performance:

    • Use const constructors for static child widgets
    • Avoid extremely long show durations
  3. For responsive design:

    maxWidth: MediaQuery.of(context).size.width * 0.7,
    
  4. For consistency:

    • Create a reusable styled tooltip component
    • Use theme colors for better dark/light mode support

Troubleshooting 🛠 #

Issue: Tooltip not appearing
Fix: Ensure the widget has enough space to render and check trigger method (hover vs long press)

Issue: Text clipping
Fix: Increase maxWidth or reduce padding/font size

Issue: Animation jank
Fix: Avoid complex widgets in tooltip content

0
likes
140
points
20
downloads

Publisher

unverified uploader

Weekly Downloads

A highly customizable and interactive tooltip widget for Flutter applications with smooth animations and flexible styling options.

Homepage

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on apptomate_custom_tooltip