Exclude semantics to improve performance of gallery

This commit is contained in:
ashilkn 2023-07-10 10:13:50 +05:30
parent a4b6ea66ae
commit 21e836643b
4 changed files with 17 additions and 11 deletions

View file

@ -176,7 +176,9 @@ class HugeListViewState<T> extends State<HugeListView<T>> {
initialScrollIndex: widget.startIndex,
itemCount: max(widget.totalCount, 0),
itemBuilder: (context, index) {
return widget.itemBuilder(context, index);
return ExcludeSemantics(
child: widget.itemBuilder(context, index),
);
},
),
)

View file

@ -31,15 +31,17 @@ class GalleryGridViewWidget extends StatelessWidget {
physics: const NeverScrollableScrollPhysics(),
// to disable GridView's scrolling
itemBuilder: (context, index) {
return GalleryFileWidget(
file: filesInGroup[index],
selectedFiles: selectedFiles,
limitSelectionToOne: limitSelectionToOne,
tag: tag,
photoGridSize: photoGridSize,
currentUserID: currentUserID,
filesInGroup: filesInGroup,
asyncLoader: asyncLoader,
return ExcludeSemantics(
child: GalleryFileWidget(
file: filesInGroup[index],
selectedFiles: selectedFiles,
limitSelectionToOne: limitSelectionToOne,
tag: tag,
photoGridSize: photoGridSize,
currentUserID: currentUserID,
filesInGroup: filesInGroup,
asyncLoader: asyncLoader,
),
);
},
itemCount: filesInGroup.length,

View file

@ -32,7 +32,7 @@ class PlaceHolderGridViewWidget extends StatelessWidget {
shrinkWrap: true,
physics: const NeverScrollableScrollPhysics(),
itemBuilder: (context, index) {
return Container(color: faintColor);
return ExcludeSemantics(child: Container(color: faintColor));
},
itemCount: limitCount,
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(

View file

@ -1,6 +1,8 @@
import 'package:flutter_driver/flutter_driver.dart' as driver;
import 'package:integration_test/integration_test_driver.dart';
///https://api.flutter.dev/flutter/flutter_driver/TimelineSummary/summaryJson.html
Future<void> main() {
return integrationDriver(
responseDataCallback: (data) async {