Commit graph

12002 commits

Author SHA1 Message Date
Travis Ralston
87ca3069bb Misc code cleanup 2019-03-28 10:43:01 -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
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
1c6f0b62f4
Merge pull request #2830 from matrix-org/travis/autocomplete-ancient-history
Filter out upgraded rooms from autocomplete results
2019-03-27 13:23:37 -06:00
Travis Ralston
c94ae6401b Use an AccessibleButton for the clickable element 2019-03-27 13:14:31 -06:00
Travis Ralston
85c8d4d0e5 Remove extra debug lines 2019-03-27 13:03:25 -06:00
J. Ryan Stinnett
73b2484e08 Catch errors when checking IndexedDB
In Firefox private browsing, we may get errors when checking storage
consistency. We don't want that to block general Riot operation, so catch those
errors and log instead.

Fixes https://github.com/vector-im/riot-web/issues/9300
2019-03-27 15:48:38 +00: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
David Baker
a1e5fecb67
Merge pull request #2832 from jryans/storage-telemetry
Send telemetry about storage consistency
2019-03-27 09:58:55 +00: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
J. Ryan Stinnett
d06fb0d076 Send telemetry about storage consistency
This adds telemetry events about basic storage consistency, so we can start to
get an idea of how often IndexedDB eviction occurs in the field.

Fixes https://github.com/vector-im/riot-web/issues/9272
2019-03-27 09:26:15 +00:00
J. Ryan Stinnett
7f90607626
Merge pull request #2826 from jryans/storage-edge-cases
Log results of basic storage consistency check
2019-03-27 09:23:21 +00: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
340c24cfa7 Filter out upgraded rooms from autocomplete results
Fixes https://github.com/vector-im/riot-web/issues/9289

Theory is that this shouldn't happen in the first place (aliases should be transferred), but there's evidently some cases where this doesn't work, or gets state reset.
2019-03-26 15:13:20 -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
J. Ryan Stinnett
4c0f459995 Add basic storage consistency check
This adds a storage consistency check just before creating a client on login.
Each data store we use is checked for data and any problems are logged to the
console.

Fixes https://github.com/vector-im/riot-web/issues/9271
2019-03-26 16:34:13 +00:00
Travis Ralston
1a6bebcc1d
Merge pull request #2824 from matrix-org/travis/add-widget-command
Add a command for creating custom widgets without an integration manager
2019-03-26 10:26:59 -06:00
Travis Ralston
f61a6104b5
Use m.custom for widget type
As per https://github.com/matrix-org/matrix-doc/issues/1236
2019-03-26 09:23:17 -06: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
J. Ryan Stinnett
90dbeefcfb Remove unused option for disabling IndexedDB
`createMatrixClient` and surrounding paths support an argument to disable
IndexedDB, but it is never actually used. This removes the option to simplify
the code.
2019-03-26 13:29:04 +00: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
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
Travis Ralston
43291c708d i18n 2019-03-25 11:58:11 -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
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
8cca1bef23 Add a command for creating custom widgets without an integration manager
Fixes https://github.com/vector-im/riot-web/issues/4882
2019-03-24 00:07:00 -06: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
21d52a8311 Use the same function name to bind the OpenID request handler 2019-03-23 22:50:26 -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
J. Ryan Stinnett
68997f9652
Merge pull request #2816 from jryans/trim-preview
Trim the logging for URL previews
2019-03-22 20:50:36 +00: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