Skip to content

Conversation

@bleroux
Copy link
Contributor

@bleroux bleroux commented Feb 15, 2023

Description

This PR adds a check to avoid accessing an invalid scroll controller position when switching from a scrollable tab bar to a non scrollable tab bar while using different tab controllers.

Related Issue

Fixes #120649

Tests

Adds 1 test.

@flutter-dashboard flutter-dashboard bot added f: material design flutter/packages/flutter/material repository. framework flutter/packages/flutter repository. See also f: labels. labels Feb 15, 2023
@bleroux bleroux requested a review from HansMuller February 15, 2023 09:51
Copy link
Contributor

@HansMuller HansMuller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@HansMuller HansMuller merged commit 541a8bf into flutter:master Feb 15, 2023
@bleroux bleroux deleted the fix_switching_from_scrollable_and_nonscrollable_tabbars_throws branch February 15, 2023 20:54
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 16, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Feb 16, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 16, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 16, 2023
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Feb 16, 2023
* 3ad7ea3 Roll Plugins from 9c312d4d2f5f to 2ce625f1a87e (5 revisions) (flutter/flutter#120793)

* 7865713 Roll Flutter Engine from 1328c4bc6299 to 4db9673d48d6 (2 revisions) (flutter/flutter#120796)

* 541a8bf Fix switching from scrollable and non-scrollable tab bars throws (flutter/flutter#120771)

* ab1390e Use black30 for CupertinoTabBar's border (flutter/flutter#119509)

* a513d4e Fix `flutter_localizations` README references (flutter/flutter#120800)

* a664f08 In test of --(no-)fatal-infos analyzer flags, pin missing_return to info (flutter/flutter#120797)

* ef49f56 Add Android unit tests to plugin template (flutter/flutter#120720)

* a12e242 Improve CupertinoContextMenu to match native more (flutter/flutter#117698)

* a9f4366 Fix the `flutter run -d linux` tests (flutter/flutter#120721)

* dff0955 09da59a5a Roll Dart SDK from c022d475e9d8 to 5d17a336bdfe (1 revision) (flutter/engine#39649) (flutter/flutter#120816)

* f35de0c Adds wide gamut saveLayer integration test (flutter/flutter#120131)

* 99dcaa2 Roll Flutter Engine from 09da59a5adcf to a8b3d1af55b6 (3 revisions) (flutter/flutter#120821)

* 8d15083 Use the impellerc GLES output flag when compiling shaders for Android (flutter/flutter#120647)

* c6b636f [flutter_tools] Replace Future.catchError() with Future.then(onError: ...) (flutter/flutter#120637)

* 2b7d709 Add `@widgetFactory` annotation (flutter/flutter#117455)

* e65dfba Add Linux unit tests to plugin template (flutter/flutter#120814)

* dccec41 5de007b90 Remove "bringup: true" from "Linux Fuchsia FEMU" (flutter/engine#39651) (flutter/flutter#120826)

* d6de6bc 9f3b061b7 Roll buildroot to 64b0c3deecaff8e66c2deb74e2171e8297b2bfcd (flutter/engine#39653) (flutter/flutter#120830)

* da2508c bb1ff84b6 Add a white background to app anatomy diagram (flutter/engine#39638) (flutter/flutter#120832)

* 1f85497 [flutter_tools] Add the NoProfile parameter to the PowerShell execution statement (flutter/flutter#120786)

* 4ad47fb Fix `StretchingOverscrollIndicator` not handling directional changes correctly (flutter/flutter#116548)

* 9a721c4 Update AndroidManifest.xml.tmpl (flutter/flutter#120527)

* c0b7d2d Roll Flutter Engine from bb1ff84b6c4f to 02a379db1d38 (4 revisions) (flutter/flutter#120845)

* a10e295 Added identical(a,b) short circuit to Material Library lerp methods (flutter/flutter#120829)

* efde350 Roll Flutter Engine from 02a379db1d38 to a966cf878ffd (2 revisions) (flutter/flutter#120846)

* cc473e4 Roll Flutter Engine from a966cf878ffd to 3fc40ca5beb9 (3 revisions) (flutter/flutter#120850)

* d125242 Roll Flutter Engine from 3fc40ca5beb9 to 9fa2a5c3cfbd (2 revisions) (flutter/flutter#120856)

* 22e17bb ea1d087c4 Roll Skia from b8b36146c7a0 to 7b3fb04bc3d4 (3 revisions) (flutter/engine#39673) (flutter/flutter#120860)

* f85438b c8b1d2ffa Roll Fuchsia Mac SDK from YpQKlqmyn8r_snx06... to xl9Y8o-9FDyvPogki... (flutter/engine#39675) (flutter/flutter#120887)

* 174a562 d699b4a91 Roll Flutter from e3471f0 to df41e58 (83 revisions) (flutter/plugins#7184) (flutter/flutter#120888)

* 170539f Roll Flutter Engine from c8b1d2ffaec8 to 0d8d93306822 (2 revisions) (flutter/flutter#120891)
auto-submit bot pushed a commit to flutter/plugins that referenced this pull request Feb 16, 2023
* 3ad7ea3c9 Roll Plugins from 9c312d4 to 2ce625f (5 revisions) (flutter/flutter#120793)

* 786571368 Roll Flutter Engine from 1328c4bc6299 to 4db9673d48d6 (2 revisions) (flutter/flutter#120796)

* 541a8bfd9 Fix switching from scrollable and non-scrollable tab bars throws (flutter/flutter#120771)

* ab1390e0a Use black30 for CupertinoTabBar's border (flutter/flutter#119509)

* a513d4e7b Fix `flutter_localizations` README references (flutter/flutter#120800)

* a664f08a5 In test of --(no-)fatal-infos analyzer flags, pin missing_return to info (flutter/flutter#120797)

* ef49f5661 Add Android unit tests to plugin template (flutter/flutter#120720)

* a12e242c0 Improve CupertinoContextMenu to match native more (flutter/flutter#117698)

* a9f43665c Fix the `flutter run -d linux` tests (flutter/flutter#120721)

* dff09558d 09da59a5a Roll Dart SDK from c022d475e9d8 to 5d17a336bdfe (1 revision) (flutter/engine#39649) (flutter/flutter#120816)

* f35de0c80 Adds wide gamut saveLayer integration test (flutter/flutter#120131)

* 99dcaa2d9 Roll Flutter Engine from 09da59a5adcf to a8b3d1af55b6 (3 revisions) (flutter/flutter#120821)

* 8d150833b Use the impellerc GLES output flag when compiling shaders for Android (flutter/flutter#120647)

* c6b636fa5 [flutter_tools] Replace Future.catchError() with Future.then(onError: ...) (flutter/flutter#120637)

* 2b7d709fd Add `@widgetFactory` annotation (flutter/flutter#117455)

* e65dfba8e Add Linux unit tests to plugin template (flutter/flutter#120814)

* dccec41d5 5de007b90 Remove "bringup: true" from "Linux Fuchsia FEMU" (flutter/engine#39651) (flutter/flutter#120826)

* d6de6bc68 9f3b061b7 Roll buildroot to 64b0c3deecaff8e66c2deb74e2171e8297b2bfcd (flutter/engine#39653) (flutter/flutter#120830)

* da2508c9f bb1ff84b6 Add a white background to app anatomy diagram (flutter/engine#39638) (flutter/flutter#120832)

* 1f85497ef [flutter_tools] Add the NoProfile parameter to the PowerShell execution statement (flutter/flutter#120786)

* 4ad47fb47 Fix `StretchingOverscrollIndicator` not handling directional changes correctly (flutter/flutter#116548)

* 9a721c456 Update AndroidManifest.xml.tmpl (flutter/flutter#120527)

* c0b7d2ddd Roll Flutter Engine from bb1ff84b6c4f to 02a379db1d38 (4 revisions) (flutter/flutter#120845)

* a10e295a0 Added identical(a,b) short circuit to Material Library lerp methods (flutter/flutter#120829)

* efde35081 Roll Flutter Engine from 02a379db1d38 to a966cf878ffd (2 revisions) (flutter/flutter#120846)

* cc473e4f1 Roll Flutter Engine from a966cf878ffd to 3fc40ca5beb9 (3 revisions) (flutter/flutter#120850)

* d1252428c Roll Flutter Engine from 3fc40ca5beb9 to 9fa2a5c3cfbd (2 revisions) (flutter/flutter#120856)

* 22e17bb71 ea1d087c4 Roll Skia from b8b36146c7a0 to 7b3fb04bc3d4 (3 revisions) (flutter/engine#39673) (flutter/flutter#120860)
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 10, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 10, 2023
waegari pushed a commit to waegari/flutter_plugins that referenced this pull request Jul 3, 2025
…r#7186)

* 3ad7ea3c9 Roll Plugins from 9c312d4 to 2ce625f (5 revisions) (flutter/flutter#120793)

* 786571368 Roll Flutter Engine from 1328c4bc6299 to 4db9673d48d6 (2 revisions) (flutter/flutter#120796)

* 541a8bfd9 Fix switching from scrollable and non-scrollable tab bars throws (flutter/flutter#120771)

* ab1390e0a Use black30 for CupertinoTabBar's border (flutter/flutter#119509)

* a513d4e7b Fix `flutter_localizations` README references (flutter/flutter#120800)

* a664f08a5 In test of --(no-)fatal-infos analyzer flags, pin missing_return to info (flutter/flutter#120797)

* ef49f5661 Add Android unit tests to plugin template (flutter/flutter#120720)

* a12e242c0 Improve CupertinoContextMenu to match native more (flutter/flutter#117698)

* a9f43665c Fix the `flutter run -d linux` tests (flutter/flutter#120721)

* dff09558d 09da59a5a Roll Dart SDK from c022d475e9d8 to 5d17a336bdfe (1 revision) (flutter/engine#39649) (flutter/flutter#120816)

* f35de0c80 Adds wide gamut saveLayer integration test (flutter/flutter#120131)

* 99dcaa2d9 Roll Flutter Engine from 09da59a5adcf to a8b3d1af55b6 (3 revisions) (flutter/flutter#120821)

* 8d150833b Use the impellerc GLES output flag when compiling shaders for Android (flutter/flutter#120647)

* c6b636fa5 [flutter_tools] Replace Future.catchError() with Future.then(onError: ...) (flutter/flutter#120637)

* 2b7d709fd Add `@widgetFactory` annotation (flutter/flutter#117455)

* e65dfba8e Add Linux unit tests to plugin template (flutter/flutter#120814)

* dccec41d5 5de007b90 Remove "bringup: true" from "Linux Fuchsia FEMU" (flutter/engine#39651) (flutter/flutter#120826)

* d6de6bc68 9f3b061b7 Roll buildroot to 64b0c3deecaff8e66c2deb74e2171e8297b2bfcd (flutter/engine#39653) (flutter/flutter#120830)

* da2508c9f bb1ff84b6 Add a white background to app anatomy diagram (flutter/engine#39638) (flutter/flutter#120832)

* 1f85497ef [flutter_tools] Add the NoProfile parameter to the PowerShell execution statement (flutter/flutter#120786)

* 4ad47fb47 Fix `StretchingOverscrollIndicator` not handling directional changes correctly (flutter/flutter#116548)

* 9a721c456 Update AndroidManifest.xml.tmpl (flutter/flutter#120527)

* c0b7d2ddd Roll Flutter Engine from bb1ff84b6c4f to 02a379db1d38 (4 revisions) (flutter/flutter#120845)

* a10e295a0 Added identical(a,b) short circuit to Material Library lerp methods (flutter/flutter#120829)

* efde35081 Roll Flutter Engine from 02a379db1d38 to a966cf878ffd (2 revisions) (flutter/flutter#120846)

* cc473e4f1 Roll Flutter Engine from a966cf878ffd to 3fc40ca5beb9 (3 revisions) (flutter/flutter#120850)

* d1252428c Roll Flutter Engine from 3fc40ca5beb9 to 9fa2a5c3cfbd (2 revisions) (flutter/flutter#120856)

* 22e17bb71 ea1d087c4 Roll Skia from b8b36146c7a0 to 7b3fb04bc3d4 (3 revisions) (flutter/engine#39673) (flutter/flutter#120860)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

f: material design flutter/packages/flutter/material repository. framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Exception when changing between scrollable and non-scrollable TabBar

2 participants