cmdrootaccess / another-flushbar

A flexible widget for user notification. Customize your text, button, duration, animations and much more. For Android devs, it is made to replace Snackbars and Toasts.
https://pub.dev/packages/another_flushbar
MIT License
146 stars 90 forks source link

Major issue : iOS swipe to pop corrupt flutter screen #90

Open EArminjon opened 1 year ago

EArminjon commented 1 year ago

When a flushbar is displayed, if user on iOS play with the swipe ability the flutter screen freeze in a weird position.

Screenshot (video & code bellow) : Capture d’écran 2022-11-25 à 16 32 12

import 'package:another_flushbar/flushbar.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const App());
}

class Home extends StatelessWidget {
  const Home({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            Navigator.push(
              context,
              MaterialPageRoute<dynamic>(
                settings: const RouteSettings(name: '/page'),
                builder: (BuildContext context) => const Page(),
              ),
            );
          },
          child: const Text("Push route"),
        ),
      ),
    );
  }
}

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

  @override
  State<Page> createState() => _Page();
}

class _Page extends State<Page> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.orange,
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            Flushbar<dynamic>(
              flushbarPosition: FlushbarPosition.TOP,
              message: "test",
            ).show(context);
          },
          child: const Text("Launch flushbar"),
        ),
      ),
    );
  }
}

class App extends StatelessWidget {
  const App({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: Home(),
    );
  }
}

To reproduce :

Video (with my ugly finger sorry, but it's to show the swipe)

https://user-images.githubusercontent.com/37028599/204016611-2a0d4f2b-4038-457c-8c6c-0d198c603af5.mp4

No logs or warning in console.

Flutter doctor :

[✓] Flutter (Channel stable, 3.3.4, on macOS 12.6.1 21G217 darwin-arm, locale fr-FR)
    • Flutter version 3.3.4 on channel stable at /Users/earminjon/fvm/versions/3.3.4
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision eb6d86ee27 (7 weeks ago), 2022-10-04 22:31:45 -0700
    • Engine revision c08d7d5efc
    • Dart version 2.18.2
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/earminjon/Library/Android/Sdk
    • Platform android-33, build-tools 33.0.0
    • ANDROID_HOME = /Users/earminjon/Library/Android/Sdk
    • Java binary at: /Users/earminjon/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/213.7172.25.2113.9123335/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14A400
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.3)
    • Android Studio at /Users/earminjon/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/213.7172.25.2113.9123335/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)

[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.3)
    • IntelliJ at /Users/earminjon/Applications/JetBrains Toolbox/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 71.0.5
    • Dart plugin version 222.4345.14

[✓] IntelliJ IDEA Ultimate Edition (version 2022.2.3)
    • IntelliJ at /Users/earminjon/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/222.4345.14/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] Connected device (4 available)
    • iPhone de Enguerrand (mobile) • 037a70ff3ad9e7787722c6c239f94d2aadceb764 • ios            • iOS 15.7 19H12
    • macOS (desktop)               • macos                                    • darwin-arm64   • macOS 12.6.1 21G217 darwin-arm

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!
EArminjon commented 1 year ago

https://github.com/flutter/flutter/issues/116267

synstin commented 1 year ago

any update?

EArminjon commented 1 year ago

any update?

No, this issue depend of https://github.com/flutter/flutter/issues/33875.