Skip to content

Commit 6468ce6

Browse files
committed
Fix scroll being stuck at bottom
The check for whether we're at the bottom or not allowed for a difference of 1 to account for fractional scroll values, but allowed the difference of exactly 1 too, meaning we'd consider the timeline to be at the bottom if you were scrolled up by exactly a single pixel. If your scrolling was set up to be precise enough and the event handlers fired fast enough that they'd evaluate each time you scrolled up by a single pixel, it would reset you back to the bottom each time and you'd never be able to scroll up. Fixes element-hq/element-web#18903
1 parent a4c0fa8 commit 6468ce6

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/components/structures/ScrollPanel.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,8 +275,8 @@ export default class ScrollPanel extends React.Component<IProps> {
275275
// fractional values (both too big and too small)
276276
// for scrollTop happen on certain browsers/platforms
277277
// when scrolled all the way down. E.g. Chrome 72 on debian.
278-
// so check difference <= 1;
279-
return Math.abs(sn.scrollHeight - (sn.scrollTop + sn.clientHeight)) <= 1;
278+
// so check difference < 1;
279+
return Math.abs(sn.scrollHeight - (sn.scrollTop + sn.clientHeight)) < 1;
280280
};
281281

282282
// returns the vertical height in the given direction that can be removed from

0 commit comments

Comments
 (0)