From 85ed6713488652c9c42598a5db2c4540c6e15b3a Mon Sep 17 00:00:00 2001 From: Julian Mutter Date: Sat, 25 Oct 2025 21:44:05 +0200 Subject: [PATCH] fix scroll not working on web --- lib/sheet.dart | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/lib/sheet.dart b/lib/sheet.dart index 7d227ca..23dd01f 100644 --- a/lib/sheet.dart +++ b/lib/sheet.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:ui'; import 'package:flutter/material.dart'; import 'package:sheetless/storage_helper.dart'; @@ -115,20 +116,27 @@ class _SheetsWidgetState extends State { ), ), Expanded( - child: ListView.builder( - itemCount: filteredSheets.length, - itemBuilder: (context, index) { - var sheet = filteredSheets[index]; - return ListTile( - title: Text(sheet.name), - subtitle: Text(sheet.composerName), - onTap: () => setState(() { - widget.onSheetOpenRequest(sheet); - widget.sheets.remove(sheet); - widget.sheets.insert(0, sheet); - }), - ); - }, + // Fixes scroll on web + child: ScrollConfiguration( + behavior: ScrollConfiguration.of(context).copyWith( + dragDevices: {PointerDeviceKind.touch, PointerDeviceKind.mouse}, + ), + child: ListView.builder( + physics: const AlwaysScrollableScrollPhysics(), + itemCount: filteredSheets.length, + itemBuilder: (context, index) { + var sheet = filteredSheets[index]; + return ListTile( + title: Text(sheet.name), + subtitle: Text(sheet.composerName), + onTap: () => setState(() { + widget.onSheetOpenRequest(sheet); + widget.sheets.remove(sheet); + widget.sheets.insert(0, sheet); + }), + ); + }, + ), ), ), ],