Commit Graph

5907 Commits

Author SHA1 Message Date
Bruno Windels a326c83016 Merge pull request #2842 from matrix-org/bwindels/bacat-scrolling-merged-develop
BACAT Scrolling
2019-03-29 14:02:15 +00:00
Bruno Windels f157838864 dispatch supports async dispatching on its own 2019-03-29 14:32:26 +01:00
Travis Ralston 99dc2c4738 Add MemberInfo for 3pid invites and support revoking those invites
Fixes https://github.com/vector-im/riot-web/issues/625
Fixes https://github.com/vector-im/riot-web/issues/6411
Fixes https://github.com/vector-im/riot-web/issues/5490
2019-03-28 21:02:24 -06:00
Bruno Windels 1a264006f7 turn off debug logging 2019-03-28 18:42:49 +01:00
Travis Ralston 6eb8368aa7 Merge pull request #2827 from matrix-org/travis/v3-room-permalink
Handle all the segments of a v3 event ID
2019-03-28 11:38:47 -06:00
Travis Ralston acb33e1aa0 Merge pull request #2839 from matrix-org/travis/breadcrumbs/visual
Add custom tooltips and scrolling to breadcrumbs
2019-03-28 11:29:48 -06:00
Travis Ralston a0e3182e47 Merge pull request #2829 from matrix-org/travis/unread-button
Check if the message panel is at the end of the timeline on init
2019-03-28 11:26:48 -06:00
Bruno Windels 41c5582a7b make resizeNotifier optional so tests don't fail 2019-03-28 17:56:12 +01:00
Travis Ralston 87ca3069bb Misc code cleanup 2019-03-28 10:43:01 -06:00
Travis Ralston 6a840a56d6 Add a comment to explain the state of affairs for refs.messagePanel 2019-03-28 09:50:17 -06:00
Travis Ralston 9b64dd0cd7 Support horizontal scrolling on breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/8714
Fixes https://github.com/vector-im/riot-web/issues/8890
Fixes https://github.com/vector-im/riot-web/issues/9034
Fixes https://github.com/vector-im/riot-web/issues/8954

This turned out to be much more complicated than it needed to be. We use an IndicatorScrollbar to do all the math for us and some minor changes have been made so it can flag left/right overflow. The complicated part is the css changes which make the gradients work: unlike the RoomSubList, we have to calculate the offset of the indicators (gradients) on our own because position:sticky doesn't work horizontally.

The changes to the css (well, mostly pointer-events:none) make it so the gradient doesn't interfere with the room avatars. 

9034 and 8954 are fixed by this because they represent an overflow-x:none style breakage where browsers won't let you scroll without a scrollbar. The gradient offset problem is also demonstrated in 8954.
2019-03-27 17:52:05 -06:00
Travis Ralston 64a6b47692 Merge pull request #2831 from matrix-org/travis/hidden-bing
Alert the user to unread notifications in prior versions of rooms
2019-03-27 13:23:57 -06:00
Travis Ralston c94ae6401b Use an AccessibleButton for the clickable element 2019-03-27 13:14:31 -06:00
Bruno Windels 82e44249ff make resizeNotifier optional in MainSplit for GroupView 2019-03-27 16:38:17 +01:00
J. Ryan Stinnett 055f833042 Change loading errors in room directory to inline instead of modal
This changes errors that may occur when loading the room directory so that the
message appears inline with the overall directory UI instead of in a new modal.
This is important so that the new room button remains on screen even if the
directory is down.

Fixes https://github.com/vector-im/riot-web/issues/9046
2019-03-27 14:57:41 +00:00
J. Ryan Stinnett 0466e0a306 Reorganise room directory code so new room is always available
This reorganises the room directory so that the new room buttons is always
available no matter what state the overall directory is in.

Part of https://github.com/vector-im/riot-web/issues/9046
2019-03-27 14:17:24 +00:00
J. Ryan Stinnett 8d27cfde36 Remove unused import 2019-03-27 13:57:48 +00:00
Bruno Windels adf263c4af Merge branch 'develop' into bwindels/bacat-scrolling-merged-develop 2019-03-27 11:46:28 +01:00
Bruno Windels 5d53913e35 fix filling conditions 2019-03-27 11:35:38 +01:00
Travis Ralston 04a9038a05 Alert the user to unread notifications in prior versions of rooms
Fixes https://github.com/vector-im/riot-web/issues/8161
2019-03-26 19:22:41 -06:00
Travis Ralston 4eb9fa6922 Check if the message panel is at the end of the timeline on init
Fixes https://github.com/vector-im/riot-web/issues/8503

componentDidUpdate is called a lot, and we don't really want to keep checking the messagePanel, so this introduces a new flag to check if the init is even needed.
2019-03-26 14:22:48 -06:00
Bruno Windels f2f3661b7e more debug logging 2019-03-26 17:40:24 +01:00
Bruno Windels 46f5f872c4 implement scrolling to a token (best effort) 2019-03-26 15:51:02 +01:00
Bruno Windels 805539fdc7 remove timestamp logging in profiler 2019-03-26 13:44:39 +01:00
Bruno Windels 82a9b348c0 add some comments and initialization for async filling 2019-03-26 13:39:18 +01:00
Bruno Windels 18b5041ed2 try filling async instead of sync in scroll handler
see if that avoids jumps
2019-03-26 12:19:30 +01:00
Travis Ralston d8edf2e3fb Handle all the segments of a v3 event ID
They may contain slashes, so it is not suitable to just pull the first segment after the room ID. Instead, we just recompile the event ID from known source, assuming everything afterwards is an event ID.

Fixes https://github.com/vector-im/riot-web/issues/8315

This will need adapting to support https://github.com/vector-im/riot-web/issues/9149
2019-03-25 23:02:49 -06:00
Travis Ralston 79ea873717 Merge pull request #2820 from matrix-org/travis/timeline-explosion-workaround
Ask the user for debug logs when the timeline explodes
2019-03-25 12:09:16 -06:00
Bruno Windels 8f7170a4a1 add timeline profiling markers when updateheight and onscroll run 2019-03-25 12:47:08 +01:00
Travis Ralston e5f7563dec Ask the user for debug logs when the timeline explodes
Fixes https://github.com/vector-im/riot-web/issues/9260
Workaround for https://github.com/vector-im/riot-web/issues/8593
Requires https://github.com/matrix-org/matrix-js-sdk/pull/869

We check if any dialogs are open before moving forward because we don't want to risk showing so many dialogs that the user is unable to click a button. We're also not overly concerned if the dialog being shown is irrelevant because whatever the user is doing will likely be unaffected, and we can scream in pain when they're finished.
2019-03-22 20:23:35 -06:00
Travis Ralston 389abed574 Define a title for generic error 2019-03-22 19:03:52 -06:00
Travis Ralston 4fd48988e9 Check for any errors leaving the room, not just the top level 2019-03-22 17:39:42 -06:00
Travis Ralston a34a8bb425 Use leaveRoomChain when leaving a room
Requires https://github.com/matrix-org/matrix-js-sdk/pull/868
Fixes https://github.com/vector-im/riot-web/issues/8539

We don't need to use leaveRoomChain when rejecting invites because we won't have the references needed. This leaves the couple spots where we do actually leave a room, and use the new function for that.
2019-03-22 17:36:54 -06:00
Bruno Windels c9c2519240 log scroll events 2019-03-22 15:47:04 +01:00
Bruno Windels 4bfdbe3094 fix jumping when unfilling the top while scrolling down 2019-03-22 15:23:21 +01:00
Bruno Windels ab49bc4fcf fix comment typo 2019-03-21 15:37:35 +01:00
Bruno Windels 680afc5ce0 fix scrollToToken alignment 2019-03-21 15:37:06 +01:00
Bruno Windels 494779393f Merge branch 'develop' into bwindels/bacat-scrolling 2019-03-21 13:50:32 +01:00
Bruno Windels 44f3cac5eb Merge branch 'master' into develop 2019-03-21 11:28:35 +01:00
Bruno Windels 817fe1a520 disable typing notifs jumping prevention for now 2019-03-21 11:01:47 +01:00
Bruno Windels 3e13a11372 restore scroll position after hiding typing notifs with checkScroll 2019-03-20 17:38:05 +01:00
Bruno Windels 85d305430f no need for forceUpdate here 2019-03-20 17:37:34 +01:00
Bruno Windels 02a5aa3b1f more logging cleanup 2019-03-20 17:15:43 +01:00
Bruno Windels 9da13fe430 small cleanup 2019-03-20 17:13:09 +01:00
Bruno Windels a8b149cfbb cleanup scrollpanel logging 2019-03-20 17:12:49 +01:00
Bruno Windels 460f9a5959 comment typo 2019-03-20 17:10:38 +01:00
Bruno Windels f164a78eaa reimplement typing notif timeline shrinking prevention
instead of setting a min-height on the whole timeline,
track how much height we need to add to prevent shrinking
and set paddingBottom on the container element of the timeline.
2019-03-20 17:10:30 +01:00
David Baker 1a8fe4dd43 Go back to using mainine velocity
We moved off to our own fork of velocity many moons ago to fix
a memory leak bug when velocity was being barely maintained. They
have now merged the bugfix, so go back to mainline.
2019-03-20 10:54:06 +00:00
Bruno Windels 1e372aad47 only log when node was found 2019-03-20 11:10:04 +01:00
Bruno Windels c306181fcd take into account that node might not be in DOM while updating height 2019-03-20 11:00:27 +01:00