import 'package:flutter/material.dart'; import 'package:webview_flutter/webview_flutter.dart'; class BotmanWidget extends StatefulWidget { const BotmanWidget({super.key}); @override State createState() => _BotmanWidgetState(); } class _BotmanWidgetState extends State { late final WebViewController _controller; @override void initState() { super.initState(); _controller = WebViewController() ..setJavaScriptMode(JavaScriptMode.unrestricted) ..loadHtmlString(_htmlWithBotman); } void openBotman() { _controller.runJavaScript("openBotmanFromFlutter();"); } final String _htmlWithBotman = ''' '''; @override Widget build(BuildContext context) { return Stack( children: [ WebViewWidget(controller: _controller), Positioned( right: 0, bottom: 0, child: FloatingActionButton( onPressed: openBotman, backgroundColor: Colors.blue, child: const Icon(Icons.chat), ), ) ], ); } }