I’m curious to know how the GTK Inspector determines which items are visible.
I ran into the same issue in my app (also displaying pages in a GtkListView). Ideally, I’d like to modify that hard 200 limit. In the absence of that, my workaround was to monitor the vadjustment’s value, page-size, and upper properties, then manually calculate which pages fall within the viewport by dividing the total scroll height evenly across all pages. I then render only those pages (plus a small buffer of ~5 pages above and below), and clear textures from pages that scroll out of range to keep memory usage down.
The obvious limitation is that the calculations can break down for documents with a large number of mixed page sizes. It would be much more accurate if we could replicate whatever GtkListView is exposing to the Inspector, which presumably knows the actual allocated position of each row.