Commit Graph

12 Commits (8b492fdaa5470b3519d64565408a8956800d5ef1)

Author SHA1 Message Date
Travis Ralston 17a57eb3e5 Bind the onWheel listener directly to props
React doesn't seem to care if this is null/undefined.
2019-04-05 09:43:29 -06:00
Travis Ralston 138fd4ec87 Translate vertical scrolling to horizontal movement in breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/9314
2019-04-04 16:43:04 -06:00
Bruno Windels 30d848b86e use AutoHideScrollbar in ScrollPanel 2019-03-15 10:16:21 +01:00
Bruno Windels 3ce2309ae2 get scrolltop and scrollevent out of autohide/indicator scrollbar 2019-02-13 14:49:14 +01:00
Bruno Windels 495f264ad5 prevent badge jumping when hovering over sublist
this was caused by the layout growing wider than it could,
hence the overflow event being triggered.

The overflow event is only supported in FF and we fire the
manual check often enough that the overflow gradient still
reliably (dis)appears when needed.
2019-01-29 16:20:39 +01:00
Bruno Windels 5aff76b49d use css scrollbar styles to make native scrollbars prettier 2019-01-21 19:06:49 +01:00
Bruno Windels 31c13adaba cleanup: do initialization in componentDidMount instead of render 2018-12-18 15:10:57 +01:00
Bruno Windels e67d9c6d4f forward checkOverflow to AutoHideScrollbar, fix over/underflow detection
the overflow/underflow events are not always reliable in nooverlay
browsers (FF), so forward the checkOverflow call we need anyway
for the scroll indicator gradients to see if we need to do the
margin trick for the on-hover scrollbar we use in nooverlay browsers.

this fixes on hover jumping in a subroomlist
2018-12-18 14:29:42 +01:00
Bruno Windels 0f226853f5 add scroll indicator gradients to top and bottom of room sub list 2018-11-12 12:57:21 +01:00
Bruno Windels c9dc273cb0 better native scrollbar width compensation for FF
instead of having to offset the padding of children of the
autohiding scrollbar container, which gets fiddly quickly,
add a new child to the scrollbar container that gets a negative
margin of the scrollbar width when needed
(on hover and overflowing when overlay is not supported).

This needs an extra DOM element, but as it doesn't do anything weird
layout-wise (like set position), it shouldn't affect styling at all.

It also makes the auto hide scrollbar workarounds completely transparent
to the rest of the code.
2018-11-06 11:37:49 +01:00
Bruno Windels 4c5bd71114 fix lint 2018-11-01 17:56:08 +01:00
Bruno Windels 03781e1327 AutoHideScrollbar component
shows scrollbar on hover when needed
has fallback to overflow: overlay
and fiddling with padding to make content not jump on hover.
2018-11-01 16:32:17 +01:00