floaty_chatheads 1.0.1
floaty_chatheads: ^1.0.1 copied to clipboard
A complete rewrite of the floating chathead plugin for Android & iOS. Supports draggable bubbles, expandable Flutter content panels, theming, snap-to-edge physics, accessibility, and bidirectional mes [...]
Changelog #
1.0.1 #
- Added Android and iOS demo GIFs to README.
- Fixed foreground notification on service reuse.
- Documentation and metadata updates.
1.0.0 #
🎉 Initial Release — Complete Rewrite #
A ground-up rewrite of the floating chathead plugin, inspired by flutter_overlay_window.
Platform Support
- Android —
SYSTEM_ALERT_WINDOWoverlay with foreground service, Facebook Rebound spring physics, and fullFlutterEnginecontent panels. - iOS —
UIWindow-based PiP overlay at.alert + 1window level. No special permissions required. Supports iOS 13+.
Core Features
- Floating chathead bubbles rendered as system-level overlays.
- Expand / collapse Flutter widget content panels.
- Bidirectional data messaging between the main app and overlay isolate
via
BasicMessageChannel. - Drag-and-drop with spring-animated snap-to-edge.
- Close target with magnetic snap and animated reveal.
- Badge counter on chathead bubbles.
- Multi-bubble support — add / remove individual chatheads by ID.
Theming API
ChatHeadThememodel with badge colors, bubble border, shadow color, close tint, and overlay color palette.- Automatic palette delivery to overlay isolate on engine start.
FloatyOverlay.paletteandonPaletteChangedstream for overlay-side consumption.
Size Presets
ContentSizePresetenum:compact,card,halfScreen,fullScreen.- Preset dimensions resolved before passing to the native layer.
Debug Inspector
debugModeflag onChatHeadConfig.DebugOverlayView(Android) with bounds rectangles, position labels, spring velocity HUD, and FPS counter.- Pigeon message log (circular buffer, 50 entries).
FloatyOverlay.getDebugInfo()for Dart-side debug panels.
Accessibility (Android)
- Full TalkBack support with content descriptions, state announcements, and accessibility actions on all interactive views.
- Focus management: content panel receives focus on expand, bubble receives focus on collapse.
ACTION_CLICK("Expand / Collapse chat") andACTION_DISMISS("Close chat bubble") custom actions.AccessibilityLiveRegion.POLITEon close target for automatic announcements.
Snap & Animation
SnapEdgeenum:left,right,nearest,none.- Configurable snap margin in dp.
persistPosition— remembers last bubble position across sessions.EntranceAnimationenum:none,slideInFromLeft,slideInFromRight,fadeIn.
Developer Experience
- Federated plugin architecture (main → platform_interface → android / ios).
- Pigeon-generated type-safe Dart ↔ Kotlin / Swift communication.
- VGV-style
{@template}/{@macro}documentation across all packages. FloatyPermissionGatewidget for declarative permission handling.- 12 runnable example screens in the gallery app.
Architecture
floaty_chatheads— app-facing APIfloaty_chatheads_platform_interface— abstract contract + modelsfloaty_chatheads_android— Kotlin + Pigeon implementationfloaty_chatheads_ios— Swift + Pigeon implementation