Repository navigation
Closed
Closed
Copy link
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)customer: googleVarious Google teamsVarious Google teamsf: focusFocus traversal, gaining or losing focusFocus traversal, gaining or losing focusfound in release: 3.24Found to occur in 3.24Found to occur in 3.24found in release: 3.27Found to occur in 3.27Found to occur in 3.27has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onp: material_uimaterial_ui package in flutter/packagesmaterial_ui package in flutter/packagesplatform-iosiOS applications specificallyiOS applications specificallyr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionteam-accessibilityOwned by Framework Accessibility team (i.e. responsible for accessibility code in flutter/flutter)Owned by Framework Accessibility team (i.e. responsible for accessibility code in flutter/flutter)triaged-accessibilityTriaged by Framework Accessibility teamTriaged by Framework Accessibility team
Description
Steps to reproduce
- Enable Switch Control in iOS settings app (https://support.apple.com/en-us/119835).
- Using the repro app below, attempt to navigate between
NavigationDestinations within theNavigationBar.
Expected results
It is possible to navigate between NavigationDestination tabs.
Actual results
Focus seems to be stuck on a single NavigationDestination tab.
Code sample
Code sample
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(useMaterial3: false),
title: 'Flutter Demo',
home: MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key? key, required this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
int _selectedIndex = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
void _changeIndex(int index) {
setState(() {
_selectedIndex = index;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title, style: TextStyle(fontFamily: 'ProductSans')),
),
body: Center(
child: Column(
children: [
Text(
'Button tapped $_counter time${_counter == 1 ? '' : 's'}.',
// This optional key is used to uniquely identify this widget in
// the integration test at: test_driver/tap_test.dart.
key: Key('CountText'),
style: TextStyle(fontSize: 24),
),
MaterialButton(
onPressed: () {
print('Button tapped');
},
color: Colors.blue,
child: Text('Test button 1'),
),
MaterialButton(
onPressed: () {
print('Button tapped');
},
color: Colors.blue,
child: Text('Test button 2'),
),
MaterialButton(
onPressed: () {
print('Button tapped');
},
color: Colors.blue,
child: Text('Test button 3'),
),
],
),
),
bottomNavigationBar: NavigationBar(
onDestinationSelected: (index) {
print('Selected destination $index');
_incrementCounter();
_changeIndex(index);
},
selectedIndex: _selectedIndex,
destinations: [
NavigationDestination(label: 'one', icon: Icon(Icons.home)),
NavigationDestination(label: 'two', icon: Icon(Icons.home)),
NavigationDestination(label: 'three', icon: Icon(Icons.home)),
],
),
);
}
}
Screenshots or Video
Video demonstration
IMG_4624.MP4
Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel google3)
• Framework revision 1d60fc7843 (2 days ago), 2024-12-08T00:00:00.000
• Engine revision 82d7c1b2c2
• Dart version c7e47c6c5d
[✓] Xcode - develop for iOS and macOS (Xcode 16.0)
• Xcode at /Applications/Xcode_16.0.0.app/Contents/Developer
• Build 16A242dGoogle bug tracker: b/382363824.
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)customer: googleVarious Google teamsVarious Google teamsf: focusFocus traversal, gaining or losing focusFocus traversal, gaining or losing focusfound in release: 3.24Found to occur in 3.24Found to occur in 3.24found in release: 3.27Found to occur in 3.27Found to occur in 3.27has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onp: material_uimaterial_ui package in flutter/packagesmaterial_ui package in flutter/packagesplatform-iosiOS applications specificallyiOS applications specificallyr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer versionteam-accessibilityOwned by Framework Accessibility team (i.e. responsible for accessibility code in flutter/flutter)Owned by Framework Accessibility team (i.e. responsible for accessibility code in flutter/flutter)triaged-accessibilityTriaged by Framework Accessibility teamTriaged by Framework Accessibility team
Activity
maheshj01 commentedon Dec 11, 2024
Seems related to #139235, #44077
danagbemava-nc commentedon Dec 11, 2024
Reproducible using the steps outlined above.
flutter doctor -v
github-actions commentedon Feb 18, 2025
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 -vand a minimal reproduction of the issue.