Travis Ralston
62ba7dde94
Download PDFs as blobs to avoid empty grey screens
...
Fixes https://github.com/vector-im/riot-web/issues/8605
The grey screen of sadness comes up when Chrome tries to open the PDF but doesn't have the right CSP headers. To avoid this, we'll just force a download of the PDF through `fetch` and `Blob`.
There are a few cases where the user might still get a grey screen though: namely if they open the URL in a new tab or when the event content is lying about the file type, or the file is too large to blobify.
`fetch` works in Chrome, Firefox, and our packaged Electron version.
2019-03-29 14:12:48 -06:00
Travis Ralston
86e4d29582
Merge remote-tracking branch 'origin/develop' into travis/cancel-3pid
2019-03-29 11:47:46 -06:00
Travis Ralston
07cc640089
Add common utility for checking 3pid invites
...
We just need to make sure they are structurally sound - actual validation is done by other parties.
2019-03-29 11:45:07 -06:00
J. Ryan Stinnett
328f0cd6bf
Notify user when crypto data is missing
...
If we have account data in local storage but nothing in the crypto store, it
generally means the browser has evicted IndexedDB out from under us. This adds a
modal to explain the situation and offer to completely clear storage to get
things back to normal.
Fixes https://github.com/vector-im/riot-web/issues/9109
2019-03-29 16:06:08 +00:00
Bruno Windels
e7852ad1b4
Merge pull request #2846 from matrix-org/bwindels/atbottomfix
...
round scrollTop upwards to prevent never detecting bottom
2019-03-29 15:57:24 +00:00
Bruno Windels
8e4a06db77
round scrollTop upwards to prevent never detecting bottom
2019-03-29 16:41:10 +01:00
J. Ryan Stinnett
6e79cbc092
Delay Notifier
check until we have push rules
...
The `Notifier` class expects push rules to be available, so it can explode in
strange ways if called too early. This changes to wait until the sync is in the
`PREPARED` state (when push rules should be ready) before using the `Notifier`.
Fixes https://github.com/vector-im/riot-web/issues/9323
2019-03-29 15:19:39 +00:00
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
0258f61f63
Fix typo preventing custom status from deregistering listeners on tiles
2019-03-28 21:02:24 -06: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
Bruno Windels
0a4ef44bcf
fix lint
2019-03-28 18:29:48 +01: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
92c99546f6
Merge pull request #2837 from matrix-org/travis/breadcrumbs/persist
...
Persist breadcrumb state between sessions
2019-03-28 10:32:26 -06:00
Travis Ralston
f73556d278
Remove unnecessary params
2019-03-28 09:52:12 -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
90d7e82399
Use custom tooltips on breadcrumb icons
...
Fixes https://github.com/vector-im/riot-web/issues/9303
We have to track our own onHover for this, and out of safety we ensure that exactly 1 room is hovered at a time.
2019-03-27 17:51:48 -06:00
Travis Ralston
bbbf509a8c
Always append the current room to the breadcrumbs
...
Fixes https://github.com/vector-im/riot-web/issues/8659
Fixes https://github.com/vector-im/riot-web/issues/8970
2019-03-27 15:38:42 -06:00
Travis Ralston
c8e42d61f5
Persist breadcrumb state between sessions
...
Fixes https://github.com/vector-im/riot-web/issues/8549
2019-03-27 15:32:51 -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
David Baker
1b8b3efece
Merge pull request #2835 from matrix-org/dbkr/no_no_referrer
...
Remove noreferrer on widget pop-out
2019-03-27 15:17:38 +00: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
David Baker
1fe830d1c6
Remove noreferrer on widget pop-out
...
Having the referrer allows widgets to do customisation based on what
riot instance is embedding it. It gets a referrer when we embed it
in the iframe so there's nothing gained by suppressing it here.
2019-03-27 13:27:57 +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
ddcb7a68bd
Merge pull request #2781 from matrix-org/travis/openid-widget
...
Widget OpenID reauth implementation
2019-03-27 03:42:39 -06: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
J. Ryan Stinnett
db834b315a
Merge pull request #2828 from jryans/notification-labels
...
Clarify devices affected by notification settings
2019-03-26 17:43:19 +00:00
J. Ryan Stinnett
f8dce875f2
Clarify devices affected by notification settings
...
This clarifies that the notification settings only apply to the current device.
This also tries to apply the spirit of
https://github.com/matrix-org/matrix-react-sdk/pull/1995 (authored by @aidalgol)
which wanted to remove "web" from the label, since there's also a desktop
client.
2019-03-26 17:39:07 +00: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
Travis Ralston
1703e3860b
Merge pull request #2822 from matrix-org/travis/minimize-widgets
...
Minimize stickerpicker when the title is clicked
2019-03-26 07:44:14 -06: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
J. Ryan Stinnett
dbc4735b06
Merge pull request #2825 from YaoiFangirl420/develop
...
Add <code> blocks around homeserver and identity server urls
2019-03-26 09:35:56 +00: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
69fcebf045
Use allow/deny instead of whitelist/blacklist for terminology
2019-03-25 21:14:21 -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
J. Ryan Stinnett
1e5c0a8713
Apply suggestions from code review
...
Co-Authored-By: turt2live <travpc@gmail.com>
2019-03-25 11:56:49 -06:00
J. Ryan Stinnett
3e676454b6
Update src/components/views/dialogs/TimelineExplosionDialog.js
...
Co-Authored-By: turt2live <travpc@gmail.com>
2019-03-25 11:33:31 -06:00
Travis Ralston
1172488cce
Merge pull request #2823 from matrix-org/travis/fix-add-widget-button
...
Fix typo preventing users from adding more widgets easily
2019-03-25 09:59:43 -06:00
Travis Ralston
0d5c98634d
Merge pull request #2817 from matrix-org/travis/blacklist-unverified-devices
...
Attach an onChange listener to the room's blacklist devices option
2019-03-25 09:59:29 -06:00
Travis Ralston
a9ea74610a
Merge pull request #2818 from matrix-org/travis/leave-room-chain
...
Use leaveRoomChain when leaving a room
2019-03-25 09:57:17 -06:00
Bruno Windels
8f7170a4a1
add timeline profiling markers when updateheight and onscroll run
2019-03-25 12:47:08 +01:00
YaoiFangirl420
f2b64a8e7f
Add <code> blocks around homeserver and identity server urls
...
To make the urls visually distinct from the surrounding non-url text
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-03-24 02:05:04 -07:00
Travis Ralston
1ba23d6833
Fix typo preventing users from adding more widgets easily
...
Fixes https://github.com/vector-im/riot-web/issues/9266
2019-03-23 23:53:21 -06:00
Travis Ralston
a8ae63bb06
Minimize stickerpicker when the title is clicked
...
Fixes https://github.com/vector-im/riot-web/issues/6437
This also fixes a bug where if the room had apps open and you clicked the sticker picker's title, you'd end up closing the apps and not the picker.
2019-03-23 23:50:06 -06:00
Travis Ralston
3654c895eb
Appease the linter
2019-03-23 23:31:19 -06:00
Travis Ralston
2dcb40f1be
Track OpenID automatic permissions by (widgetLocation, widgetUrl)
2019-03-23 23:25:31 -06:00
Travis Ralston
d3268801ed
Merge branch 'develop' into travis/openid-widget
2019-03-23 22:48:12 -06:00
YaoiFangirl420
00335e2462
Fix bug with NetworkList dropdown
...
The NetworkDropdown component was incorrectly guarding against a null
check when retrieving the list of networks
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com>
2019-03-23 20:53:09 -07: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
Travis Ralston
50614fa7fb
Attach an onChange listener to the room's blacklist devices option
...
Fixes https://github.com/vector-im/riot-web/issues/9235
The global option in user settings is unaffected by this bug. Users who have previously set the per-room flag without success can simply refresh the page and the change will be picked up. The bug here is that the current session would not update accordingly, however.
Introduced in https://github.com/matrix-org/matrix-react-sdk/pull/2523
2019-03-22 14:22:20 -06:00
J. Ryan Stinnett
c17f7a2949
Trim the logging for URL previews
...
It should be sufficient to have the error stack and general log message for URL
preview failure.
2019-03-22 18:50:08 +00: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
David Baker
324781005d
Merge pull request #2808 from matrix-org/dbkr/velocity-mainline
...
Go back to using mainine velocity
2019-03-20 19:01:20 +00: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
Travis Ralston
94e91e6f9a
Merge pull request #2796 from matrix-org/travis/upgrade-warning
...
Warn that members won't be autojoined to upgraded rooms
2019-03-20 08:34:33 -06: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
Bruno Windels
88f039fe44
keep track of current updateHeight request outside of method
...
it's only called from one place
2019-03-20 10:59:55 +01:00
Bruno Windels
2bcced72ad
take (potentially clipped) content height into account for filling
2019-03-19 16:51:39 +01:00
Bruno Windels
469511aa44
correctly calculate last node in viewport
...
these variables are now relative to bottom of timeline,
before it was the top
2019-03-19 16:50:55 +01:00
Travis Ralston
9f6b550caa
Merge pull request #2801 from matrix-org/travis/renew-widget
...
Discard old sticker picker when the URL changes
2019-03-19 08:50:33 -06:00
Travis Ralston
d713c62774
Merge pull request #2799 from matrix-org/travis/widget-reload
...
Reload widget messaging when widgets reload
2019-03-19 08:49:24 -06:00
Bruno Windels
71f6b08b26
first impl of new scrolling, still a bit broken
2019-03-19 13:42:22 +01:00
Travis Ralston
6a7e4ba52c
Merge pull request #2806 from matrix-org/t3chguy/explicit_room_name_settings
...
Don't show calculated room name in room settings name input field
2019-03-18 20:32:11 -06:00
Michael Telatynski
cadf36e1c9
Don't show calculated room name in room settings name input field
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-18 23:33:24 +00:00
Michael Telatynski
d6f31bef8e
Disable big emoji for m.emote messages as it looks weird
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-03-18 23:25:11 +00:00
Bruno Windels
d84003ac44
dont break room directory and search
2019-03-18 14:05:56 +01:00
Travis Ralston
a397f333d7
Discard old sticker picker when the URL changes
...
Fixes https://github.com/vector-im/riot-web/issues/7547
2019-03-16 16:02:38 -06:00
David Baker
591a968368
Update CustomRoomTagPanel.js
2019-03-16 12:37:34 +00:00