Created attachment 179688 [details] Pair of screenshots showing the timeline before & after reproducing this bug *** If you're not sure this is actually a bug, instead post about it at https://discuss.kde.org If you're reporting a crash, attach a backtrace with debug symbols; see https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports Please remove this comment after reading and before submitting - thanks! *** SUMMARY STEPS TO REPRODUCE 1. Open your timeline. You must be able to see two or more posts to reproduce the issue 2. Scroll down as little as possible, just enough for scrolling up to be possible 3. Press Page Up (This bug can also be reproduced at the bottom of a thread using Page Down) OBSERVED RESULT The bottom-most post disappears (that is to say, it becomes an empty space) until you scroll again, at which point it re-appears. EXPECTED RESULT The bottom-most post remains visible, as it is still in the viewport. SOFTWARE/OS VERSIONS Windows: macOS: (available in the Info Center app, or by running `kinfo` in a terminal window) Linux/KDE Plasma: KDE Plasma Version: KDE Frameworks Version: Qt Version: ADDITIONAL INFORMATION This is a 100% repro on my system, I can easily do it on command if more info is needed I know nothing about the structure of this software, but as a software developer I have a suspicion about its origins: - When Page Up is pressed, the offset of the viewport is clamped by the upper bounds of the page - ...but the process that determines which widgets to render / cull receives the original un-clamped value - As such, the bottom-most post appears to be "off the page" to this algorithm and is no longer rendered until the viewport scrolls again
Additional note since I missed the relevant field when reporting and can't update the description: - KDE Frameworks Version: 6.11.0 - QT Version: 6.8.2
A possibly relevant merge request was started @ https://invent.kde.org/network/tokodon/-/merge_requests/726
Git commit a43ec02c1a3e884e4f428bfba0707227cd60da92 by Joshua Goins. Committed on 18/04/2025 at 22:17. Pushed by redstrate into branch 'master'. Clamp contentY when using the PageUp key This can end up going way below 0, and causes all sorts of issues like missing posts. VERSION-FIXED-IN: 25.04.1 M +3 -0 src/content/ui/Components/TimelineView.qml https://invent.kde.org/network/tokodon/-/commit/a43ec02c1a3e884e4f428bfba0707227cd60da92
Git commit b904f9d2db670f983ef15e2c734c7fb9380e9115 by Joshua Goins. Committed on 18/04/2025 at 22:18. Pushed by redstrate into branch 'release/25.04'. Clamp contentY when using the PageUp key This can end up going way below 0, and causes all sorts of issues like missing posts. VERSION-FIXED-IN: 25.04.1 (cherry picked from commit a43ec02c1a3e884e4f428bfba0707227cd60da92) M +3 -0 src/content/ui/Components/TimelineView.qml https://invent.kde.org/network/tokodon/-/commit/b904f9d2db670f983ef15e2c734c7fb9380e9115
While the fix you've just made looks like it ought to work, I should note that as alluded to in the title of the thread--the same bug can also be performed by scrolling past the end of a finite page with Page Down. Reading back at my report, I apparently *only* put this in the title and not the body...sorry about that, that's on me. Same idea, just a somewhat harder to repro. Looking at your commit, I believe it's just a matter of clamping the value of root.contentY to not exceed the bottom of the page (maybe minus the viewport height? I don't work with Qt so I can only speculate here) in the other callback.
Git commit 66c2aa98a448e58ad295b97a277d23ce07c278fd by Joshua Goins. Committed on 26/05/2025 at 00:26. Pushed by redstrate into branch 'master'. Clamp contentY in both directions M +1 -3 src/content/ui/Components/TimelineView.qml https://invent.kde.org/network/tokodon/-/commit/66c2aa98a448e58ad295b97a277d23ce07c278fd