make calculation a bit easier to read

This commit is contained in:
Henry Hiles 2026-09-17 11:43:21 -04:00
commit 5480889848
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -59,31 +59,26 @@ class EmojiPicker extends HookConsumerWidget {
useEffect(() { useEffect(() {
void syncSelectedCategoryWithScroll() { void syncSelectedCategoryWithScroll() {
final viewport = final viewport = scrollViewKey.currentContext
scrollViewKey.currentContext?.findRenderObject() ?.findRenderObject();
as RenderBox?; if (viewport is! RenderBox) return;
if (viewport == null) return;
var firstVisibleIndex = 0; final selectedIndex = headerKeys.lastIndexWhere((headerKey) {
final renderObject = headerKey.currentContext
for (var index = 0; index < headerKeys.length; index++) {
final header = headerKeys[index].currentContext
?.findRenderObject(); ?.findRenderObject();
if (header is! RenderBox) continue;
final headerTop = header if (renderObject is! RenderBox) return false;
final top = renderObject
.localToGlobal(Offset.zero, ancestor: viewport) .localToGlobal(Offset.zero, ancestor: viewport)
.dy; .dy;
if (headerTop > 1) break; return top <= 1;
});
firstVisibleIndex = index; if (selectedIndex != selectedCategory.value) {
} selectedCategory.value = selectedIndex;
final chipContext = chipKeys[selectedIndex].currentContext;
if (firstVisibleIndex != selectedCategory.value) {
selectedCategory.value = firstVisibleIndex;
final chipContext =
chipKeys[firstVisibleIndex].currentContext;
if (chipContext != null) { if (chipContext != null) {
unawaited( unawaited(