Skip to content

Animation stops when scrolling #11433

Closed
Closed

Description

@MarcinusX

scroll_freeze

Steps to Reproduce

I am creating NumberPicker which is a ListView inside a Dialog.
Right now after opening a dialog and scrolling few times I get an error and then the scrolling just freezes.

The reason is calling intScrollController.animateTo method.

In the attached gif you can see that at first I can scroll freely but at some point the scroll freezes and I get a lot of this:

I/flutter ( 3471): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414: '_hold == null || _drag == null': is not true.

Code

Widget _intListView(ThemeData themeData) {
    final TextStyle style = themeData.textTheme.body1;
    return new NotificationListener(
      child: new Container(
        height: _listViewHeight,
        width: log(widget.maxIntValue).floorToDouble() * 20,
        child: new ListView.builder(
          controller: intScrollController,
          itemExtent: _itemExtent,
          itemCount: widget.maxIntValue - widget.minIntValue + 3,
          itemBuilder: (BuildContext context, int index) {
            final int value = widget.minIntValue + index - 1;

            final TextStyle itemStyle = value == selectedIntValue
                ? themeData.textTheme.headline
                    .copyWith(color: themeData.accentColor)
                : style;

            bool isExtra = index == 0 ||
                index == widget.maxIntValue - widget.minIntValue + 2;

            return isExtra
                ? new Container()
                : new Center(
                    child: new Text(value.toString(), style: itemStyle),
                  );
          },
        ),
      ),
      onNotification: (notification) {
        if (notification is ScrollNotification) {
          if (notification is UserScrollNotification && notification.direction == ScrollDirection.idle) {
            intScrollController.animateTo(
                (selectedIntValue - widget.minIntValue) * _itemExtent,
                duration: new Duration(seconds: 1),
                curve: new ElasticOutCurve());
          } else {
            //calculate
            int intIndexOfMiddleElement =
                (notification.metrics.pixels + _listViewHeight / 2) ~/
                    _itemExtent;
            int intValueInTheMiddle =
                widget.minIntValue + intIndexOfMiddleElement - 1;

            if (intValueInTheMiddle != selectedIntValue) {
              setState(() => selectedIntValue = intValueInTheMiddle);
            }
          }
        }
        return true;
      },
    );
  }

Logs

Error message:
I/flutter (20929): ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
I/flutter (20929): The following assertion was thrown while handling a gesture:
I/flutter (20929): 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 409 pos 12: '_hold == null':
I/flutter (20929): is not true.
I/flutter (20929): Either the assertion indicates an error in the framework itself, or we should provide substantially
I/flutter (20929): more information in this error message to help you determine and fix the underlying cause.
I/flutter (20929): In either case, please report this assertion by filing a bug on GitHub:
I/flutter (20929):   https://github.com/flutter/flutter/issues/new
I/flutter (20929): When the exception was thrown, this was the stack:
I/flutter (20929): #2      ScrollableState._handleDragStart (package:flutter/src/widgets/scrollable.dart:409:12)
I/flutter (20929): #3      DragGestureRecognizer.acceptGesture.<anonymous closure> (package:flutter/src/gestures/monodrag.dart:156:54)
I/flutter (20929): #4      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:71:24)
I/flutter (20929): #5      DragGestureRecognizer.acceptGesture (package:flutter/src/gestures/monodrag.dart:156:9)
I/flutter (20929): #6      GestureArenaManager._resolveByDefault (package:flutter/src/gestures/arena.dart:171:25)
I/flutter (20929): #7      GestureArenaManager._tryToResolveArena.<anonymous closure> (package:flutter/src/gestures/arena.dart:178:31)
I/flutter (20929): (elided 4 frames from class _AssertionError and package dart:async)
I/flutter (20929): Handler: onStart
I/flutter (20929): Recognizer:
I/flutter (20929):   VerticalDragGestureRecognizer#3b7b5
I/flutter (20929): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 414 pos 12: '_hold == null || _drag == null': is not true.
I/flutter (20929): Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 420 pos 12: '_hold == null || _drag == null': is not true.

Flutter Analyze

Analyzing /home/marcinus/dev/numberpicker...
No issues found!
Ran in 6.3s

Flutter Doctor

[✓] Flutter (on Linux, locale en_US.UTF-8, channel alpha)
    • Flutter at /home/marcinus/flutter
    • Framework revision d36e2f6191 (5 weeks ago), 2017-06-21 15:09:10 -0700
    • Engine revision b0dee695ec
    • Tools Dart version 1.24.0-dev.6.7

[✓] Android toolchain - develop for Android devices (Android SDK 25.0.3)
    • Android SDK at /home/marcinus/Android/Sdk
    • Platform android-25, build-tools 25.0.3
    • Java binary at: /home/marcinus/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] Android Studio (version 2.3)
    • Android Studio at /home/marcinus/android-studio
    • Gradle version 3.2
    • Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] IntelliJ IDEA Ultimate Edition (version 2017.2)
    • Flutter plugin version 15.2
    • Dart plugin version 172.3317.48

[✓] Connected devices
    • ALE L21 • W3D7N16C16019415 • android-arm • Android 6.0 (API 23)

Activity

  1. added
    c: crashStack traces logged to the console
    frameworkflutter/packages/flutter repository. See also f: labels.
    on Oct 3, 2017
  2. added
    f: scrollingViewports, list views, slivers, etc.
    f: gesturesflutter/packages/flutter/gestures repository.
    on Dec 28, 2018
  3. tresheffron commented on May 14, 2019

    @tresheffron

    I have very similar code and this is happening to me as well. It doesn't happen 100% of the time, but there is a sequence of holding+dragging in the middle of a ballistic event that triggers the error.

    Pressing on the listview stops the BallisticScrollActivity. This ends the scrolling and dispatches a UserScrollNotification that is Idle with a HoldScrollActivity. That (like in MarcinusX's code) indicates the animateTo should run to center the closest item in the list.

    I've added some print outputs to trace the code, but it isn't explaining to me why it's happening. Some parts of the trace have been snipped (...) where it is the same output repeated.

    The trace shows that when the animateTo is called, a DrivenScrollActivity replaces the HoldScrollActivity. I bracketed a call to activity.dispose() just before the error, and that trace seems to indicate that the HoldScrollActivity is disposed of, setting the _hold to null in Scrollable. Yet, in the very next call to _handleDragStart, _hold is not null. In a similar sequence of events further up the trace, it works fine.

    Logs

    code is from my app inside a NotificationListener.
    newActivity is the activity inbound to ScrollPosition.
    _activity is the existing activity that is being replaced.

    The user interaction is to hold the current item in the list, drag partially to get to the next item in the list (causing ballistic activity), then in the midst of the ballistic activity, hold and drag again.

    It took a couple of tries to cause the error. The first sets of logs show a successful sequence of events.

    Of note: the error only occurs (that I've seen) when the HoldScrollActivity interrupts a BallisticScrollActivity. In the successful sequences, my attempts to interrupt the activity did not cause a BallisticScrollActivity (or was not in the midst of one) and thus no error.

    The only work-around seems to be to check to ensure that _scrollController.position.activity isn't a HoldScrollActivity when the UserScrollNotification is ScrollDirection.idle. If it is, then don't invoke the animateTo. This isn't ideal though as position's activity is only exposed for testing purposes.

      if (notification is UserScrollNotification &&
          notification.direction == ScrollDirection.idle &&
          _scrollController.position.activity is! HoldScrollActivity) {
    
    flutter: scrollable.dart: _handleDragDown
    flutter: scroll_position.dart:626 : newActivity.runtimeType="HoldScrollActivity",  _activity.runtimeType="IdleScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on IdleScrollActivity
    flutter: scrollable.dart: _handleDragStart
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DragScrollActivity",  _activity.runtimeType="HoldScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on HoldScrollActivity
    flutter: scrollable.dart: _disposeHold
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    flutter: scrollable.dart: _handleDragUpdate
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragEnd
    flutter: scroll_position.dart:626 : newActivity.runtimeType="IdleScrollActivity",  _activity.runtimeType="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DragScrollActivity
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="IdleScrollActivity"
    flutter: code: call animateTo()
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DrivenScrollActivity",  _activity.runtimeType="IdleScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on IdleScrollActivity
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    ...
    flutter: scrollable.dart: _handleDragDown
    flutter: scroll_position.dart:626 : newActivity.runtimeType="HoldScrollActivity",  _activity.runtimeType="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DrivenScrollActivity
    flutter: scrollable.dart: _handleDragStart
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DragScrollActivity",  _activity.runtimeType="HoldScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on HoldScrollActivity
    flutter: scrollable.dart: _disposeHold
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    flutter: scrollable.dart: _handleDragUpdate
    flutter: scrollable.dart: _handleDragUpdate
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.reverse", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragEnd
    flutter: scroll_position.dart:626 : newActivity.runtimeType="IdleScrollActivity",  _activity.runtimeType="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.reverse", _scrollController.position.activity="DragScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DragScrollActivity
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="IdleScrollActivity"
    flutter: code: call animateTo()
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DrivenScrollActivity",  _activity.runtimeType="IdleScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on IdleScrollActivity
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scrollable.dart: _handleDragDown
    flutter: scroll_position.dart:626 : newActivity.runtimeType="HoldScrollActivity",  _activity.runtimeType="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DrivenScrollActivity
    flutter: scrollable.dart: _handleDragStart
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DragScrollActivity",  _activity.runtimeType="HoldScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on HoldScrollActivity
    flutter: scrollable.dart: _disposeHold
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.reverse", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragEnd
    flutter: scroll_position.dart:626 : newActivity.runtimeType="IdleScrollActivity",  _activity.runtimeType="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.reverse", _scrollController.position.activity="DragScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DragScrollActivity
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="IdleScrollActivity"
    flutter: code: call animateTo()
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DrivenScrollActivity",  _activity.runtimeType="IdleScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on IdleScrollActivity
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scrollable.dart: _handleDragDown
    flutter: scroll_position.dart:626 : newActivity.runtimeType="HoldScrollActivity",  _activity.runtimeType="DrivenScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DrivenScrollActivity
    flutter: scrollable.dart: _handleDragStart
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DragScrollActivity",  _activity.runtimeType="HoldScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on HoldScrollActivity
    flutter: scrollable.dart: _disposeHold
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    flutter: scrollable.dart: _handleDragUpdate
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragUpdate
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="DragScrollActivity"
    flutter: scrollable.dart: _handleDragEnd
    flutter: scroll_position.dart:626 : newActivity.runtimeType="BallisticScrollActivity",  _activity.runtimeType="DragScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DragScrollActivity
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="BallisticScrollActivity"
    ...
    flutter: code: notification.runtimeType="ScrollUpdateNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="BallisticScrollActivity"
    flutter: scrollable.dart: _handleDragDown
    flutter: scroll_position.dart:626 : newActivity.runtimeType="HoldScrollActivity",  _activity.runtimeType="BallisticScrollActivity"
    flutter: code: notification.runtimeType="ScrollEndNotification", _scrollController.position.userScrollDirection="ScrollDirection.forward", _scrollController.position.activity="BallisticScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on BallisticScrollActivity
    flutter: code: notification.runtimeType="UserScrollNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="HoldScrollActivity"
    flutter: code: call animateTo()
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DrivenScrollActivity",  _activity.runtimeType="HoldScrollActivity"
    ***********************************************************************************************
    flutter: scroll_position.dart:632 calling _activity.dispose() on HoldScrollActivity
    flutter: scrollable.dart: _disposeHold
    ***********************************************************************************************
    flutter: code: notification.runtimeType="ScrollStartNotification", _scrollController.position.userScrollDirection="ScrollDirection.idle", _scrollController.position.activity="DrivenScrollActivity"
    flutter: scrollable.dart: _handleDragStart
    flutter: scroll_position.dart:626 : newActivity.runtimeType="DragScrollActivity",  _activity.runtimeType="DrivenScrollActivity"
    flutter: scroll_position.dart:632 calling _activity.dispose() on DrivenScrollActivity
    
    flutter: ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
    flutter: The following assertion was thrown while handling a gesture:
    flutter: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 496 pos 12: '_hold == null':
    flutter: is not true.
    flutter:
    flutter: Either the assertion indicates an error in the framework itself, or we should provide substantially
    flutter: more information in this error message to help you determine and fix the underlying cause.
    flutter: In either case, please report this assertion by filing a bug on GitHub:
    flutter:   https://github.com/flutter/flutter/issues/new?template=BUG.md
    flutter:
    flutter: When the exception was thrown, this was the stack:
    flutter: #2      ScrollableState._handleDragStart                           package:flutter/…/widgets/scrollable.dart:496
    flutter: #3      DragGestureRecognizer.acceptGesture.<anonymous closure>       package:flutter/…/gestures/monodrag.dart:218
    flutter: #4      GestureRecognizer.invokeCallback                         package:flutter/…/gestures/recognizer.dart:166
    flutter: #5      DragGestureRecognizer.acceptGesture                       package:flutter/…/gestures/monodrag.dart:218
    flutter: #6      GestureArenaManager._resolveByDefault                       package:flutter/…/gestures/arena.dart:250
    flutter: #7      GestureArenaManager._tryToResolveArena.<anonymous closure> package:flutter/…/gestures/arena.dart:231
    flutter: (elided 12 frames from class _AssertionError and package dart:async)
    flutter:
    flutter: Handler: onStart
    flutter: Recognizer:
    flutter:   HorizontalDragGestureRecognizer#885a1(start behavior: start)
    flutter: ════════════════════════════════════════════════════════════════════════════════════════════════════
    flutter: scrollable.dart: _handleDragUpdate
    flutter: Another exception was thrown: 'package:flutter/src/widgets/scrollable.dart': Failed assertion: line 502 pos 12: '_hold == null || _drag == null': is not true.
    

    Flutter Doctor

    [✓] Flutter (Channel beta, v1.5.4-hotfix.2, on Mac OS X 10.14.4 18E226, locale en-US)
        • Flutter version 1.5.4-hotfix.2 at /Users/tres/Library/flutter
        • Framework revision 7a4c33425d (2 weeks ago), 2019-04-29 11:05:24 -0700
        • Engine revision 52c7a1e849
        • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)
    
    [✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
        • Android SDK at /Users/tres/Library/Android/sdk
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-28, build-tools 28.0.3
        • ANDROID_HOME = /Users/tres/Library/Android/sdk
        • ANDROID_SDK_ROOT = /Users/tres/Library/Android/sdk
        • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
        • All Android licenses accepted.
    
    [✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 10.2.1, Build version 10E1001
        • ios-deploy 1.9.4
        • CocoaPods version 1.6.1
    
    [✓] Android Studio (version 3.3)
        • Android Studio at /Applications/Android Studio.app/Contents
        • Flutter plugin version 33.4.1
        • Dart plugin version 182.5215
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
    
    [✓] VS Code (version 1.33.1)
        • VS Code at /Applications/Visual Studio Code.app/Contents
        • Flutter extension version 3.0.1
    
    [✓] Connected device (2 available)
        • Android SDK built for x86 • emulator-5554                        • android-x86 • Android 9 (API 28) (emulator)
        • iPhone Xʀ                 • 11A659F3-2EDE-40E7-8E0B-CBEEA8F84EAA • ios         • com.apple.CoreSimulator.SimRuntime.iOS-12-2 (simulator)
    
  4. Piinks commented on Jul 2, 2019

    @Piinks
    Contributor

    This looks to be related to #14452

  5. self-assigned this
    on Aug 1, 2019
  6. added this to the August 2019 milestone on Aug 1, 2019
  7. goderbauer commented on Aug 12, 2019

    @goderbauer
    Member

    Dupe of #14452.

  8. github-actions commented on Aug 28, 2021

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  9. locked as resolved and limited conversation to collaborators on Aug 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

a: animationAnimation APIsc: crashStack traces logged to the consolef: gesturesflutter/packages/flutter/gestures repository.f: scrollingViewports, list views, slivers, etc.frameworkflutter/packages/flutter repository. See also f: labels.

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions