diff --git a/code/websites/pokedex.online/src/views/GamemasterExplorer.vue b/code/websites/pokedex.online/src/views/GamemasterExplorer.vue index 3784bda..07fcac8 100644 --- a/code/websites/pokedex.online/src/views/GamemasterExplorer.vue +++ b/code/websites/pokedex.online/src/views/GamemasterExplorer.vue @@ -761,7 +761,16 @@ function scrollToResult() { // Use virtual scroller API if available (for large files) if (virtualScroller.value && displayLines.value.length > 1000) { nextTick(() => { - virtualScroller.value.scrollToItem(lineIndex); + // Calculate the scroll position to center the item + const scroller = virtualScroller.value; + const itemHeight = lineHeight.value; + const containerHeight = scroller.$el.clientHeight; + + // Calculate scroll position to center the item + const targetScrollTop = (lineIndex * itemHeight) - (containerHeight / 2) + (itemHeight / 2); + + // Use the scroller's internal scrollTop + scroller.$el.scrollTop = Math.max(0, targetScrollTop); }); } else { // Fallback for non-virtual scrolled content