another-flushbar icon indicating copy to clipboard operation
another-flushbar copied to clipboard

penetration on WebView

Open mkbsugita opened this issue 2 years ago • 3 comments

Describe the bug

I put the flushbar on WebView (webview_flutter). my tap penetrates the flushbar and taps button on WebView.

To Reproduce Steps to reproduce the behavior:

    await Flushbar<dynamic>(
      padding: EdgeInsets.zero,
      messageText:
          Padding(
            padding: const EdgeInsets.all(16),
            child: Center(
              child: Text(
                message,
                textAlign: TextAlign.center,
                style: const TextStyle(
                  color: Colors.white,
                  fontSize: 16,
                  fontWeight: FontWeight.bold,
                ),
              ),
            ),
          ),
      duration: Duration(milliseconds: (showTime * 1000).toInt()),
      flushbarPosition: FlushbarPosition.TOP,
    ).show(context);

and call the showToast method.

Expected behavior

non-penetration

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: OS 14.7.1
  • Browser webview_flutter

Additional context

I made gard WebView below.

import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

class WebViewGuard extends StatefulWidget {
  const WebViewGuard({super.key});

  @override
  WebViewGuardState createState() => WebViewGuardState();
}

class WebViewGuardState extends State<WebViewGuard> {
  WebViewController controller = WebViewController();
  @override
  void initState() {
    super.initState();

    Future(() async {
      await controller.setBackgroundColor(Colors.transparent);
    });
  }

  @override
  Widget build(BuildContext context) {
    return WebViewWidget(
      controller: controller,
    );
  }
}
    await Flushbar<dynamic>(
      padding: EdgeInsets.zero,
      messageText: Stack(
        alignment: AlignmentDirectional.center,
        children: [
          // I dded this.. but wired
          const SizedBox(height: 60, child: WebViewGuard()),
          Padding(
            padding: const EdgeInsets.all(16),
            child: Center(
              child: Text(
                message,
                textAlign: TextAlign.center,
                style: const TextStyle(
                  color: Colors.white,
                  fontSize: 16,
                  fontWeight: FontWeight.bold,
                ),
              ),
            ),
          ),
        ],
      ),
      duration: Duration(milliseconds: (showTime * 1000).toInt()),
      flushbarPosition: FlushbarPosition.TOP,
    ).show(context);

mkbsugita avatar Jun 22 '23 01:06 mkbsugita

no answers. sigh sigh

mkbsugita avatar Jun 27 '23 05:06 mkbsugita

which webview_flutter version are you using ?

cmdrootaccess avatar Jun 27 '23 11:06 cmdrootaccess

@cmdrootaccess Thank you for replying. I use 4.0.7 version. Is your webview guards from it?

mkbsugita avatar Jun 29 '23 02:06 mkbsugita