-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
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 teamsfound in release: 3.16Found to occur in 3.16Found to occur in 3.16found in release: 3.19Found to occur in 3.19Found to occur in 3.19fyi-frameworkFor the attention of Framework teamFor the attention of Framework teamhas reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-iosiOS applications specificallyiOS applications specificallyteam-iosOwned by iOS platform teamOwned by iOS platform teamtriaged-iosTriaged by iOS platform teamTriaged by iOS platform team
Description
Internal: b/321855070
Steps to reproduce
- Run the sample code.
- Enable VoiceOver.
- Swipe right to focus successive Flutter icon buttons.
- Continue to swipe right until you reach the end of the list (a larger Flutter icon).
Expected results
You should be able to reach the larger Flutter icon button by swiping right.
Actual results
You cannot reach the bottom of the list.
Note: This is iOS-only. I tested Android and web (Chrome on macOS) and you can reach the end of the list with voice assist enabled there.
Code sample
Code sample
import 'package:flutter/material.dart';
void main() => runApp(const SliverFillRemainingExampleApp());
class SliverFillRemainingExampleApp extends StatelessWidget {
const SliverFillRemainingExampleApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('SliverFillRemaining Sample')),
body: const SliverFillRemainingExample(),
),
);
}
}
class SliverFillRemainingExample extends StatelessWidget {
const SliverFillRemainingExample({super.key});
@override
Widget build(BuildContext context) {
return CustomScrollView(
cacheExtent: 9999,
slivers: [
SliverList(
delegate: SliverChildListDelegate([
const SizedBox(height: 12),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 12),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 8),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 20),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 16),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 16),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 16),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
const SizedBox(height: 16),
ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 100,
),
),
// Add more buttons to the list if the button below is initially
// in the viewport.
]),
),
SliverFillRemaining(
hasScrollBody: false,
child: ElevatedButton(
onPressed: () {},
child: FlutterLogo(
size: 300,
),
),
),
],
);
}
}
Screenshots or Video
Screenshots / Video demonstration
[Upload media here]
Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel google3, on macOS 14.2.1 23C71 darwin-x64, locale en)
• Framework revision 1997bec685 (4 days ago), 2024-01-18T00:00:00.000
• Engine revision b75d6d80d8
• Dart version d6c08fa9bb
[✓] Android toolchain - develop for Android devices (Android SDK version Stable)
• Android SDK at google3
• Platform Stable, build-tools Stable
• Java binary at: /Applications/Android Studio with
Blaze.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build
17.0.7+0-17.0.7b1000.6-10550314)
[✓] VS Code (version 1.85.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.74.0
[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 15A240d
[✓] Connected device (1 available)
• Pixel 4 (mobile) • xx • android-arm64 • Android 13 (API 33)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 teamsfound in release: 3.16Found to occur in 3.16Found to occur in 3.16found in release: 3.19Found to occur in 3.19Found to occur in 3.19fyi-frameworkFor the attention of Framework teamFor the attention of Framework teamhas reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-iosiOS applications specificallyiOS applications specificallyteam-iosOwned by iOS platform teamOwned by iOS platform teamtriaged-iosTriaged by iOS platform teamTriaged by iOS platform team