add scrollbar to chips

This commit is contained in:
Henry Hiles 2026-09-16 15:56:45 -04:00
commit e2c171adec
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -83,34 +83,39 @@ final class const EmojiPicker({
),
SizedBox(
height: 48,
child: SuperListView(
scrollDirection: .horizontal,
child: Scrollbar(
controller: categoryScrollController,
listController: categoryListController,
children: combined
.mapIndexed(
(index, category) => Padding(
padding: .symmetric(horizontal: 4),
child: FilterChip(
label: Text(category.name),
avatar: category.icon,
selected: selectedCategory.value == index,
showCheckmark: false,
onSelected: (_) {
selectedCategory.value = index;
child: SuperListView(
padding: .only(bottom: 12),
scrollDirection: .horizontal,
controller: categoryScrollController,
listController: categoryListController,
children: combined
.mapIndexed(
(index, category) => Padding(
padding: .symmetric(horizontal: 4),
child: FilterChip(
label: Text(category.name),
avatar: category.icon,
selected: selectedCategory.value == index,
showCheckmark: false,
onSelected: (_) {
selectedCategory.value = index;
listController.animateToItem(
index: index,
scrollController: scrollController,
curve: (_) => Curves.easeInOut,
duration: (_) => Duration(milliseconds: 300),
alignment: 0,
);
},
listController.animateToItem(
index: index,
scrollController: scrollController,
curve: (_) => Curves.easeInOut,
duration: (_) =>
Duration(milliseconds: 300),
alignment: 0,
);
},
),
),
),
)
.toList(),
)
.toList(),
),
),
),
Expanded(