Commit Graph

4172 Commits

Author SHA1 Message Date
Travis Ralston
bc9c08b11a
Merge pull request #2338 from matrix-org/travis/validate-emails
Check to make sure email addresses look roughly valid before inviting them to rooms
2018-12-12 08:12:15 -07:00
Bruno Windels
9f5a0250bf
Merge pull request #2345 from matrix-org/bwindels/jumptofirstunread-rebased
Redesign: restyle jump to first unread message & rework read marker logic (rebased)
2018-12-12 10:13:51 +00:00
Travis Ralston
ce7969e3d5 Display custom status messages in the UI
Part of https://github.com/vector-im/riot-web/issues/1528
2018-12-11 21:40:11 -07:00
J. Ryan Stinnett
04c30181c6 Expose hidden notification rules in UI
Adds UI control for 3 hidden notification rules:

* Messages containing @room
* Encrypted one-to-one messages
* Encrypted group messages

This should help to clarify some mysterious notification behavior, as it wasn't
obvious that these rules existed.

Fixes vector-im/riot-web#7833.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-12 01:41:27 +00:00
Bruno Windels
ac9902e52a apply redesign to topunreadmessagebar
with placeholder for message count
2018-12-11 15:43:00 +01:00
Bruno Windels
a31dacc4bc allow logout dialog to be cancelled (can't see why not?) 2018-12-11 12:43:56 +01:00
Bruno Windels
fc57109c54 use logout dialog in topleft menu instead of dispatching logout 2018-12-11 12:43:17 +01:00
Bruno Windels
48cfd08ea6 move logout dialog to own component so we can reuse it 2018-12-11 12:42:52 +01:00
Bruno Windels
84044fca1c fix lint 2018-12-11 11:09:11 +01:00
Bruno Windels
02367742bc bring back autocomplete attribute 2018-12-11 10:54:36 +01:00
Bruno Windels
3040f2d2e2 remove try/catch as the error is already prevented inside resize 2018-12-11 10:51:14 +01:00
Bruno Windels
93767fa5f1 fix invite button layout 2018-12-10 17:46:22 +01:00
Bruno Windels
ccf65d5f3c remove background from group room list header button 2018-12-10 17:45:47 +01:00
Bruno Windels
397e44b7ba fix query field width 2018-12-10 17:45:30 +01:00
Bruno Windels
dbe5449d0c bring invite buttons back in group member / room list
also put filter field on bottom
2018-12-10 17:21:55 +01:00
Bruno Windels
f4e61b2bf1 fixup for roomsublist fix 2018-12-10 16:53:04 +01:00
Bruno Windels
fb4a441341 fix navigation to room info in group view 2018-12-10 16:52:45 +01:00
Bruno Windels
fe76287035 style communities button, make it visible again 2018-12-10 15:43:48 +01:00
Bruno Windels
10a989a003 make icon optional in action button
as we'll draw the icon with css
2018-12-10 15:33:35 +01:00
Travis Ralston
a969237dc0 Disable the submit button while .well-known is underway
To give the user a little feedback about something happening. This definitely needs to be improved in the future though.
2018-12-07 15:37:20 -07:00
Travis Ralston
6707186edc Change how the default server name and HS URL interact
They are now independent of each other. If both are specified in the config, the user will see an error and be prevented from logging in. The expected behaviour is that when a default server name is given, we do a .well-known lookup to find the default homeserver (and block the UI while we do this to prevent it from using matrix.org while we go out and find more information). If the config specifies just a default homeserver URL however, we don't do anything special.
2018-12-07 15:36:49 -07:00
Travis Ralston
0a32570026 Merge branch 'develop' into travis/well-known-improvements 2018-12-07 15:08:19 -07:00
Travis Ralston
d062e2c2f4 Check to make sure email addresses look roughly valid before inviting them to room
Fixes https://github.com/vector-im/riot-web/issues/6854
2018-12-07 15:03:58 -07:00
J. Ryan Stinnett
a92d2902c4 Add an in-room reminder to set up key recovery
This adds an in-room reminder above the message timeline to set up Secure
Message Recovery so that your keys will be backed up. If you try to ignore it,
an additional dialog is shown to confirm.

Fixes vector-im/riot-web#7783.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-07 14:13:02 -06:00
Travis Ralston
95d15b7863 Fix tinting of notification icon and use a more reliable notification source
The js-sdk's placement of the notification change was unreliable and could cause stuck notifications. The new location (piggybacking the Notifier) is a lot more reliable.

The tinting has been changed fairly invasively in order to support the changing of the `fill` attribute. What was happening before was the `fill` property would happily get set to the forced color value, but when it came time to reset it it wouldn't be part of the colors array and fail the check, therefore never being changed back. By using a second field we can ensure we are checking the not-forced value where possible, falling back to the potentially forced value if needed. 

In addition to fixing which color the Tinter was checking against, something noticed during development is that `this.colors` might not always be a set of hex color codes. This is problematic when the attribute we're looking to replace is a rgb color code but we're only looking at `keyHex` - the value won't be reset. It appears as though this happens when people use custom tinting in places as `this.colors` often gets set to the rgb values throughout the file. To fix it, we just check against `keyHex` and `keyRgb`.
2018-12-06 22:26:51 -07:00
Travis Ralston
173669b375 Show the number of unread notifications above the bell on the right
Fixes https://github.com/vector-im/riot-web/issues/3383

This achieves the result by counting up the number of highlights across all rooms and setting that as the badge above the icon. If there are no highlights, nothing is displayed. The red highlight on the bell is done by abusing how the Tinter works: because it has access to the properties of the SVG that we'd need to override it, we give it a collection of colors it should use instead of the theme/tint it is trying to apply. This results in the Tinter using our warning color instead of whatever it was going to apply.

The RightPanel now listens for events to update the count too, otherwise when the user receives a ping they'd have to switch rooms to see the change.
2018-12-06 16:18:02 -07:00
Travis Ralston
ca1313099f Show the IncomingCallBox if the call is for the RoomSubList
Fixes https://github.com/vector-im/riot-web/issues/4369

Previously the RoomSubList would filter its list of rooms to verify that the incoming call belongs to it. This causes problems when the sub list is being told some rooms don't exist (ie: the list is filtered). It is trivial for the RoomList to instead track which RoomSubList (tag) it should be handing the call off to so we do that instead now. The RoomSubList trusts that the caller has already filtered it and will render the IncomingCallBox if it has an incoming call.
2018-12-06 11:45:58 -07:00
Travis Ralston
31b7a0ddcb
Merge pull request #2259 from matrix-org/t3chguy/account_deactivation_preferences
Remove temporary account_deactivation_preferences
2018-12-06 10:45:04 -07:00
Travis Ralston
0f348a7c78 Merge branch 'develop' into travis/invite-errors 2018-12-05 11:25:45 -07:00
David Baker
dad8e6a261
Merge pull request #2326 from jryans/group-users-error
Allow group summary to load when /users fails
2018-12-05 10:56:32 +00:00
Travis Ralston
633be5061c Introduce a default_server_name for aesthetics and rework .well-known
Fixes https://github.com/vector-im/riot-web/issues/7724

The `default_server_name` from the config gets displayed in the "Login with my [server] matrix ID" dropdown when the default server is being used. At this point, we also discourage the use of the `default_hs_url` and `default_is_url` options because we do an implicit .well-known lookup to configure the client based on the `default_server_name`. If the URLs are still present in the config, we'll honour them and won't do a .well-known lookup when the URLs are mixed with the new server_name option. Users will be warned if the `default_server_name` does not match the `default_hs_url` if both are supplied. Users are additionally prevented from logging in, registering, and resetting their password if the implicit .well-known check fails - this is to prevent people from doing actions against the wrong homeserver.

This relies on https://github.com/matrix-org/matrix-js-sdk/pull/799 as we now do auto discovery in two places. Instead of bringing the .well-known out to its own utility class in the react-sdk, we might as well drag it out to the js-sdk.
2018-12-04 23:34:57 -07:00
J. Ryan Stinnett
22ff76e6b7 Add error to UI when group member list fails to load
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-04 18:46:15 -06:00
Bruno Windels
13491e797d persists & load collapsed room sub lists 2018-12-03 10:39:31 +01:00
Will Hunt
2b077b4f5d Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-12-01 16:24:43 +00:00
Travis Ralston
987ad0b0db Check if users exist before inviting them and communicate errors
Fixes https://github.com/vector-im/riot-web/issues/3283
Fixes https://github.com/vector-im/riot-web/issues/3968
Fixes https://github.com/vector-im/riot-web/issues/4308
Fixes https://github.com/vector-im/riot-web/issues/1597
Fixes https://github.com/vector-im/riot-web/issues/6790

This does 3 things:
* Makes the `MultiInviter` check for a user profile before attempting an invite. This is to prove the user exists.
* Use the `MultiInviter` everywhere to avoid duplicating the logic. Although a couple places only invite one user, it is still worthwhile.
* Communicate errors from the `MultiInviter` to the user in all cases. This is done through dialogs, where some existed previously but were not invoked.

Specifically to the 403 error not working: What was happening was the `MultiInviter` loop was setting the `fatal` flag, but that didn't resolve the promise it stored. This caused a promise to always be open, therefore never hitting a dialog.
2018-11-29 15:05:53 -07:00
Travis Ralston
e3f2e69087
Merge pull request #2227 from matrix-org/travis/well-known
Support .well-known discovery
2018-11-27 13:51:44 -07:00
Bruno Windels
8f4292399b
Merge pull request #2297 from matrix-org/bwindels/roomlistsizingimprovements
Redesign: improve room sub list sizing & persist sizes
2018-11-27 13:40:48 +00:00
Bruno Windels
887defda9c temp solution to make room settings usable
make mx_fadable not do anything anymore, and make room settings
full size.

Room settings haven't been designed yet, so all of this will
have a full pass when we have a go at it.
2018-11-26 17:58:51 +01:00
Bruno Windels
0c7d51d70d persist room sub list sizes 2018-11-26 16:46:57 +01:00
Bruno Windels
f7a37be6dd support associating an id with a resize item/handle 2018-11-26 16:46:27 +01:00
Bruno Windels
8929ff9b5e use room resize classes 2018-11-26 14:42:01 +01:00
Bruno Windels
67e0030ccd Merge branch 'develop' into experimental 2018-11-26 13:10:29 +01:00
David Baker
4f8c4f1c6e Make create key backup dialog async
So we can add zxcvbn to it without inflating the main bundle size
2018-11-23 10:55:18 +00:00
David Baker
d443d6173d Forgot to enable continue button on download 2018-11-22 19:06:58 +00:00
Travis Ralston
4cfefe4c3c Introduce an onUsernameBlur and fix hostname parsing 2018-11-21 14:13:56 -07:00
Travis Ralston
6f0f930e0a Merge branch 'develop' into travis/well-known 2018-11-21 13:30:57 -07:00
David Baker
d714176fcd
Merge pull request #2169 from matrix-org/dbkr/e2e_backups
Online incremental megolm backups (v2)
2018-11-21 18:37:43 +00:00
David Baker
b529c98095
Merge pull request #2284 from matrix-org/dbkr/e2e_backups_download_recovery_key
Add recovery key download button
2018-11-21 18:25:33 +00:00
David Baker
3828798099 lint 2018-11-21 18:17:26 +00:00
David Baker
40ef2e0cf4 another missed translation 2018-11-21 18:08:44 +00:00
David Baker
1c06d781ae Missed translation 2018-11-21 18:06:37 +00:00
David Baker
08e2ba8c6c Don't allow enter to submit if field invalid 2018-11-21 18:02:58 +00:00
David Baker
985966f8be Update async dialog interface to use promises
Hopefully makes the syntax a bit nicer. Also uses ES6 async import
rather than require.ensure which is now deprecated. Also also
displays an error if the component fails to load rather than falling
over in a heap, which is nice.
2018-11-21 16:56:44 +00:00
David Baker
ed5d87e797 Add recovery key download button 2018-11-21 13:57:31 +00:00
David Baker
6fe2c9c2bb Merge branch 'dbkr/e2e_backups' into dbkr/e2e_backups_passphrase 2018-11-20 18:10:57 +00:00
David Baker
8ccaf53d20 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-11-20 18:08:39 +00:00
David Baker
63a7ff5273 lint 2018-11-20 16:20:31 +00:00
David Baker
132408cf02 Add e2e backup recovery with passphrase 2018-11-20 16:16:24 +00:00
David Baker
fbab8ceeef Passphrase based key backups
Add passphrase support to backup creation stage
2018-11-20 13:11:58 +00:00
Richard van der Hoff
c61031d3e1
Merge pull request #2279 from matrix-org/rav/sso_login_type
Support for m.login.sso
2018-11-19 14:14:21 +01:00
Travis Ralston
7dd610b41e
Merge pull request #2235 from MaxwellKepler/develop
Added badge to non-autoplay GIFs
2018-11-16 13:25:40 -07:00
Travis Ralston
2408eeeb3d
Merge pull request #2277 from matrix-org/travis/terms-auth-improvements
Improve terms auth flow
2018-11-16 12:36:17 -07:00
Travis Ralston
7df003ef74 Be more positive in property naming 2018-11-16 12:15:44 -07:00
David Baker
8281bdf875 Actually add the dialog 2018-11-16 11:33:09 +00:00
Travis Ralston
8916c90fed Make the 'Accept' button for consent a little more friendly
Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-15 20:26:37 -07:00
Richard van der Hoff
90f22c7b43 Support for m.login.sso
Adds support for the m.login.sso login type, which is handled the same way as
CAS, and also makes it look a bit nicer.
2018-11-15 19:05:39 +00:00
Travis Ralston
c8b38606cc Fix terms auth continue button CSS 2018-11-14 18:40:00 -07:00
Travis Ralston
2ffc024fab Add a dedicated "Continue" button to the terms auth stage
The button itself is conditionally enabled because the ILAG dialog already has a continue button. It'd be confusing to users to have 2 continue buttons on the same dialog, so this commit adds the structure required to pass along clicks from the dialog's button down to the UI auth component. 

The other place the continue button would appear is on the register page (not ILAG). The button's style is different here, however that will be improved in a later commit. 

Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-14 18:26:35 -07:00
Bruno Windels
ece549bf71 fix lint 2018-11-13 09:17:37 +01:00
Bruno Windels
ffc73c59b4 make padding and DOM more like event tile 2018-11-13 09:15:43 +01:00
Bruno Windels
8ddd2dd078 scroll down when showing typing notif and stuck at bottom 2018-11-13 09:15:16 +01:00
Bruno Windels
20b8994714 simplify DOM and style to design 2018-11-12 18:19:18 +01:00
Bruno Windels
7df47cbc87 move typing notifications to WhoIsTypingTile, shown in ScrollPanel 2018-11-12 16:09:51 +01:00
Bruno Windels
883126a528 Merge branch 'experimental' into bwindels/memberqueryfield 2018-11-07 13:29:28 +01:00
Bruno Windels
9e95a1402c
Merge pull request #2269 from matrix-org/bwindels/roomlistpolish
Redesign: room list visual polish
2018-11-07 11:44:47 +00:00
Bruno Windels
4e773c2665 Make right panel a dark-panel instead of every descendant.
Also move bg color central.
2018-11-06 14:47:58 +01:00
Bruno Windels
92e43ea181 move filter member field to bottom of memberlist
reorganize styles as well
2018-11-06 14:47:11 +01:00
Bruno Windels
ef26189add add dedicated menu button to room tile with new design 2018-11-05 17:42:25 +01:00
Bruno Windels
c0becc7664 fix roomtile badge
only put it in the dom if it has
anything to show as it has a border now in collapsed mode
2018-11-05 14:24:12 +01:00
Bruno Windels
3cd32e2f44 update search icon(s) 2018-11-05 13:07:49 +01:00
Bruno Windels
064662380f support search icon in mx_textinput, use in memberlist 2018-11-05 09:35:27 +01:00
Bruno Windels
46389457e3 add input styling for light and dark panels (leftpanel vs room header) 2018-11-05 09:32:37 +01:00
Bruno Windels
e29227db4e bring back "filter rooms" field
this does the filtering in RoomList instead of RoomSubList, so
we can hide sections that don't have any results.

The filtering does happen with every rerender of RoomList,
but only does something while searching, so the performance
implications are probably negligible.
2018-11-02 15:27:17 +01:00
Bruno Windels
9546df609e
Merge pull request #2260 from matrix-org/bwindels/rightpanelbelowheader
Redesign: move right panel below room/group header
2018-11-02 14:12:24 +00:00
Bruno Windels
4c5bd71114 fix lint 2018-11-01 17:56:08 +01:00
David Baker
6d6e6b5a4e Remove cryptic abbreviation 2018-10-31 20:01:36 +00:00
David Baker
1a878fc77a Quote consistency 2018-10-31 19:56:34 +00:00
David Baker
23332e16c5 keyBackupStatus event now has crypto. prefix 2018-10-31 18:07:29 +00:00
Bruno Windels
b4dd739771 Merge branch 'experimental' into bwindels/rightpanelbelowheader 2018-10-31 14:57:16 +01:00
Bruno Windels
ba83166661 Merge branch 'develop' into experimental 2018-10-31 14:54:22 +01:00
Bruno Windels
bd9c0dc6cf fix lint 2018-10-31 12:20:10 +01:00
Bruno Windels
e80a1c5051 move room/group panel header buttons into room/group header 2018-10-30 17:15:19 +01:00
Michael Telatynski
328d57f063 Remove temporary account_deactivation_preferences
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-10-29 22:57:33 +00:00
David Baker
8ac62f8c12 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-29 16:20:45 +00:00
Aaron Raimist
5f3b03c85a
Fix a few no-useless-escape lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 23:00:54 -05:00
Aaron Raimist
49ce4ef117
eslint --fix src/
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 22:50:38 -05:00
David Baker
de366fa0e8 Add cancel button to error stage 2018-10-26 17:55:59 +01:00
David Baker
156ffd1334 Fix autoreplacement of ascii emoji
More slate API updates in code paths I didn't test

Fixes https://github.com/vector-im/riot-web/issues/7509
2018-10-26 17:01:44 +01:00
Travis Ralston
6c23dc0020
Merge pull request #2252 from jryans/dialog-padding
Repair DevTools button padding by centralizing styles
2018-10-26 09:11:18 -06:00
Bruno Windels
2c039483c6 Merge branch 'develop' into experimental 2018-10-26 15:33:39 +02:00
J. Ryan Stinnett
2dc335798d Repair DevTools button padding by centralizing styles
This moves the padding styles for dialog content to the .mx_Dialog rule. In
addition, it fixes vector-im/riot-web#7548 where the DevTools buttons had double
padding.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-10-26 14:15:46 +02:00
Travis Ralston
aaeb6e4978 Use about:blank instead 2018-10-25 15:59:42 -06:00
Travis Ralston
749441b4d3 Merge branch 'develop' into travis/redirect-widgets 2018-10-25 15:57:26 -06:00
David Baker
b59b8b7fca Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-25 17:42:46 +01:00
David Baker
85bb8392c4
Merge pull request #2247 from matrix-org/dbkr/fix_emoji_replacement
Fix emoji replacement in composer
2018-10-25 16:23:13 +01:00
David Baker
5e81e5b8b8 Fix variable scope 2018-10-25 15:07:19 +01:00
David Baker
401f6333ed Do...while loops are a thing 2018-10-25 14:54:32 +01:00
David Baker
adee0fdcef
Merge pull request #2248 from matrix-org/bwindels/memberpanel
Redesign: basic makeover of member info panel
2018-10-25 14:52:54 +01:00
Bruno Windels
3096bf42ef fix css in chrome 2018-10-25 15:20:51 +02:00
Bruno Windels
030deba90c avoid downloading avatars at full resolution 2018-10-25 15:20:33 +02:00
Maxwell Kepler
5d35ce9449 Changed letter case. 2018-10-24 19:06:48 +01:00
Will Hunt
8118a9c71a Wall devtools button behind a setting 2018-10-24 18:15:35 +01:00
Will Hunt
44a41b589d Comma on strings and styling button 2018-10-24 17:50:27 +01:00
Will Hunt
79d467c551 Add button to open devtools in roomsettings 2018-10-24 17:36:58 +01:00
Bruno Windels
e4dfb90b85 basic makeover of member panel with big avatar 2018-10-24 18:23:34 +02:00
Bruno Windels
873ff7fc29 make EntityTile responsive 2018-10-24 18:22:57 +02:00
David Baker
78d8d22457 Fix emoji replacement in composer
* Re-scan the slate document tree on each emoji replacement since
   doing a replacement will invalidate all the offsets we have.
 * Reset the emoji regex each time we use it.

Fixes https://github.com/vector-im/riot-web/issues/7550
2018-10-24 16:46:06 +01:00
Bruno Windels
7244d30c9c guard against empty roomId/non-existant room 2018-10-24 16:44:18 +02:00
Bruno Windels
30e6fdc122 fix lint 2018-10-24 14:36:08 +02:00
Bruno Windels
8c62dddb32 one big commit, sorry
changing looks of input & buttons
changing background color of right panels
moving invite button around
change margins and paddings in memberlist
2018-10-24 13:50:58 +02:00
Bruno Windels
5425eda438
Merge pull request #2241 from matrix-org/bwindels/redesignicons1
Redesign: update (most) icons
2018-10-23 19:40:59 +00:00
Bruno Windels
e479c72e3c Merge branch 'experimental' into bwindels/roomheader1 2018-10-23 21:39:13 +02:00
Bruno Windels
466062e872
Merge pull request #2239 from matrix-org/bwindels/topleftmenu1
Redesign: 1st go at top left menu & restyling context menus
2018-10-23 19:37:05 +00:00
Bruno Windels
88df3d2a81
Merge pull request #2238 from matrix-org/bwindels/initialtimelinetweaks
Redesign: Initial timeline tweaks
2018-10-23 19:36:19 +00:00
Bruno Windels
eb453f4539 make icons in composer smaller, better spacing 2018-10-23 18:11:15 +02:00
Bruno Windels
18fedb23ec fix basic room header layout
make room name take as much space as it needs (but not more than width)
put all items apart from right buttons in one flex container
 so name and topic can grow as required
more small tweaks
2018-10-23 16:57:56 +02:00
Bruno Windels
4b90fd5c11 move TopLeftMenu to context_menus folder 2018-10-23 15:42:28 +02:00
Bruno Windels
eba91d3edc initial restyle of context menus with drop shadow 2018-10-23 15:23:59 +02:00
Bruno Windels
f2efbc15f4 apply color categories to sender profile name 2018-10-23 10:49:44 +02:00
Bruno Windels
2a264f36b7 style date separator 2018-10-23 10:25:04 +02:00
Travis Ralston
78f527cf95 Remove unused classes 2018-10-22 15:14:21 -06:00
Maxwell Kepler
5e9db3647a Fixed minor typo in comment 2018-10-22 21:03:39 +01:00
Maxwell Kepler
54f9231582 Added badge to GIFs (https://github.com/vector-im/riot-web/issues/7344) 2018-10-22 20:57:58 +01:00
David Baker
9976c4eba5
Merge pull request #2231 from matrix-org/travis/dialog-buttons
Move all dialog buttons to the right and fix their order
2018-10-22 15:00:35 +01:00
David Baker
c677dd8a24
Merge pull request #2225 from matrix-org/travis/join-room-text
Add a bit of text to explain the purpose of the RoomPreviewSpinner
2018-10-22 13:11:09 +01:00
Travis Ralston
7ef08314b8 Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:23:19 -06:00
Travis Ralston
c75beb0196 Revert "Redirect widgets to another location before deleting them"
This reverts commit 275d88dd4f.
2018-10-19 16:22:48 -06:00
Travis Ralston
275d88dd4f Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:22:20 -06:00
Travis Ralston
9582c1e65a Move all dialog buttons to the right and fix their order
Fixes https://github.com/vector-im/riot-web/issues/5689

Some dialogs had their own CSS that prevented the buttons from being placed in the right spot. This has been fixed by using a generic standard for the buttons. The only strange dialog that needed more CSS was the devtools dialog due to the header.

Not all dialogs have been checked - I spot-checked about half of them and verified the CSS manually on an established account. It's hard to get at all the dialogs without convoluted testing.
2018-10-19 15:33:23 -06:00
Travis Ralston
49efefa630 Fix an error where React doesn't like value=null on a select
This only happens when there are no canonical aliases for a room.
2018-10-19 14:18:05 -06:00
Bruno Windels
ebd3d34106 make sure no resize handle is put after last sublist 2018-10-19 18:35:27 +02:00
Bruno Windels
c6924c47fa no need for self 2018-10-19 14:43:54 +02:00
Bruno Windels
d48f19bc19 remove alwaysShowHeader, as now onAddRoom prop determines this 2018-10-19 14:43:02 +02:00
Bruno Windels
5091aa3b43 get rid of emptyContent, also cleanup sublist render method
also assume empty list in css by default and add nonEmpty class
2018-10-19 14:41:51 +02:00
Bruno Windels
0386a1e048 get rid of obsolete showEmpty prop 2018-10-19 14:32:49 +02:00
Bruno Windels
ae8723451a remove onShowMoreRooms, as room tiles & scrollbar rendered at same level 2018-10-19 14:27:36 +02:00
Bruno Windels
f14c2cf2b2 don't hide empty sections that have a (+) button 2018-10-19 12:46:59 +02:00
Bruno Windels
6af61ebb09 add plus button for rooms and people 2018-10-19 12:07:36 +02:00
Travis Ralston
0030ba7015 Support .well-known discovery
Fixes https://github.com/vector-im/riot-web/issues/7253
2018-10-18 16:42:54 -06:00
Bruno Windels
d264687796 don't scroll sub list header 2018-10-18 16:25:22 +02:00
Bruno Windels
01082c8595 hook up resizer events 2018-10-18 15:51:58 +02:00
Bruno Windels
39ab3d86bd create sizer that sets item size with flex-basis
works with the flex-grow we set initially for the sub lists
2018-10-18 15:51:22 +02:00
Bruno Windels
c1e602d56f scrollbars and resize handles around room sub lists 2018-10-18 15:19:45 +02:00
Bruno Windels
99982b1164 put repeated props in process function 2018-10-18 15:15:56 +02:00
Bruno Windels
c12368ea48 process RoomSubList props through function before creating them
this way, we'll be able to add adjacent resize handles and scroll wrappers
2018-10-18 15:09:58 +02:00
Bruno Windels
81d0ce2bcf remove sticky header code 2018-10-18 15:08:32 +02:00
Travis Ralston
af8dfda9a7 Add a bit of text to explain the purpose of the RoomPreviewSpinner
Fixes https://github.com/vector-im/riot-web/issues/5869
2018-10-17 13:53:12 -06:00
Bruno Windels
6906d5a5f9 remove DND for room tiles 2018-10-17 16:02:35 +02:00
Bruno Windels
8d3347bcfb fix lint 2018-10-17 13:36:15 +02:00
Travis Ralston
b929c36222 Documentation++ 2018-10-16 09:19:36 -06:00
Bruno Windels
cc29dd08da don't always show badge (leftover) 2018-10-16 14:54:14 +02:00
Bruno Windels
01471abdc5 Merge branch 'bwindels/redesign' into bwindels/resizehandles 2018-10-16 11:57:59 +02:00
Bruno Windels
6878ce3c6a Merge branch 'develop' into bwindels/redesign 2018-10-16 11:57:44 +02:00
Travis Ralston
d87ab8aac0 Support m.login.terms during registration
Fixes https://github.com/vector-im/riot-web/issues/7168
Requires https://github.com/matrix-org/synapse/pull/4004
2018-10-15 16:39:59 -06:00
Will Hunt
5a72a5863f Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-10-15 19:20:55 +01:00
Aaron Raimist
9f1b1d2028
Fix more lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:50:24 -05:00
Aaron Raimist
a66dbccef8
Fix lint errors in MessageComposerInput.js
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:46:55 -05:00
Aaron Raimist
1287d9c49b
Fix lint errors in Notifications.js
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:44:02 -05:00
Aaron Raimist
d452dd2b74
Fix lint error in LazyLoadingResyncDialog.js
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:32:25 -05:00
Aaron Raimist
58488c076e
Fix more lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 21:54:55 -05:00
David Baker
9c8e5119ba
Merge pull request #2206 from matrix-org/dbkr/slate_update_fix_quote
Fix quote post slate update
2018-10-11 11:09:25 +01:00
David Baker
3efc09586b More API changes 2018-10-11 10:47:36 +01:00
David Baker
4d1f2cdfa9 Fix quote post slate update
Missed API update
2018-10-11 10:29:55 +01:00
Bruno Windels
bba04a6820
Merge pull request #2205 from matrix-org/dbkr/lazy_load_check_before_sync
Handle InvalidStoreError from js-sdk
2018-10-10 18:35:36 +02:00
David Baker
0abcb5c78d Handle InvalidStoreError from js-sdk
js-sdk now emits sync state ERROR with an InvalidStoreError if the
store needs to be cleared before it can be used.

Requires https://github.com/matrix-org/matrix-js-sdk/pull/759
2018-10-10 17:07:17 +01:00
Bruno Windels
dfb4c594a8
Merge pull request #2204 from matrix-org/bwindels/rrfallbackavatars
Fall back to default avatar in RR when member isn't loaded yet
2018-10-10 16:58:59 +02:00
Bruno Windels
0767c278e7 put userId next to member in read receipt, fall back when member missing 2018-10-10 16:14:09 +02:00
David Baker
97ed4ed0bb
Merge pull request #2202 from matrix-org/dbkr/update_slate
Update to new version of slate
2018-10-10 11:10:20 +01:00
David Baker
4e1fabd140 Remove spurious ...atributes in the wrong place
We already have it above
2018-10-09 16:05:14 +01:00
David Baker
67e8a6f9dc Recovery key formatting is now done by the js-sdk 2018-10-09 14:01:58 +01:00
David Baker
41bc42e7d7
Merge pull request #2194 from pvagner/more_accessible_buttons
More accessible buttons - take 2
2018-10-09 11:04:50 +01:00
David Baker
c1f51a76dd Update to new version of slate
Lots of fixes here as a lot of the API has changed (eg. anchorKey /
offsetKey are now anchor.key and offset.key, and collapseFocusToThing
is moveFocusToThing).

Also changes the ref to a function (sorry for lumping this into the
same PR).

Hopefully will fix https://github.com/vector-im/riot-web/issues/7105
2018-10-09 10:55:55 +01:00
Bruno Windels
48299bb154 show warning when LL is disabled but was enabled before 2018-10-08 15:28:00 +02:00
David Baker
387128ed1e Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-05 14:01:50 +01:00
David Baker
8ceca3abe9
Update Pill.js
Commas are not semicolons
2018-10-04 10:34:34 +01:00
Will Hunt
17915b5082
Merge branch 'develop' into hs/purge-irc-hack 2018-10-03 19:39:14 +01:00
Will Hunt
fe788486b7 Drop (IRC) suffix hacks 2018-10-03 19:34:06 +01:00
David Baker
849f0f796a js-sdk now handles recovery key formatting 2018-10-03 12:02:50 +01:00
Peter Vágner
2b394c1869
Address review comments and fix lint errors 2018-10-02 20:32:54 +02:00
David Baker
56808077d0 js-sdk now handle recovery key formatting 2018-10-02 19:24:39 +01:00
Peter Vágner
e05ae29146
Also fix accessibility of sticker buttons 2018-10-02 20:19:21 +02:00
David Baker
fa30707eae Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-02 16:59:15 +01:00
Peter Vágner
ded35e43a0
A11y: repurpose more divs into AccessibleButtons.
With this more of the
controls that look like buttons can be operated via the keyboard and
navigated to by screen reader users. This includes editor buttons such
as File upload, Audio / Video call, Right pannel hide button, Jump to
the bottom timeline button, and some more buttons found in the user
settings.
Also I have added alt texts to some images that in turn label buttons
which these happen to be packed in and removed some untranslated alt
texts from decorative non-actionable images that might add more
verbosity when talking about screen reader user experience.
2018-10-02 13:55:24 +02:00
David Baker
3751074244
Merge pull request #2180 from matrix-org/travis/3pid-required
Communicate early that a 3pid is required during registration if needed
2018-10-01 11:55:53 +01:00
Matthew Hodgson
6652d2b0e6 try to encourage people to attach logs to bugs 2018-09-28 21:05:05 +01:00
Travis Ralston
de132a8f8e Communicate early that a 3pid is required during registration if needed
Fixes https://github.com/vector-im/riot-web/issues/7297
2018-09-27 11:53:45 -06:00
Bruno Windels
f4860cfe63 update copyright notice 2018-09-26 18:22:05 +01:00
Bruno Windels
fd2ab406d4 update copy 2018-09-26 16:48:04 +01:00
Bruno Windels
824ad5e318 delete sync data when LL is toggled, show message when enabling 2018-09-26 16:25:21 +01:00
Bruno Windels
928b6d47c8 add resize handles between 3 main app columns 2018-09-24 16:07:42 +01:00
Bruno Windels
91ec96c8d3 Merge branch 'develop' into bwindels/redesign 2018-09-21 12:44:44 +02:00
Matthew Hodgson
0f806d5b99 Merge branch 'develop' into matthew/canonical_aliases 2018-09-20 01:45:08 +01:00
Matthew Hodgson
e9806bb147 autocomplete domains on aliases 2018-09-20 01:38:25 +01:00
Matthew Hodgson
1aa85c69e4 fix vector-im/riot-web#7293 2018-09-20 01:23:29 +01:00
Matthew Hodgson
c6fa8ea24c show canonical aliases in timeline, and set/remove implicit ones 2018-09-20 01:07:01 +01:00
Bruno Windels
920e0d397c Merge branch 'develop' into bwindels/fixstalerr 2018-09-19 12:15:41 +02:00
David Baker
2cef0f7f72 lint 2018-09-18 15:04:51 +01:00
Matthew Hodgson
d39889e2cf
Merge pull request #2167 from matrix-org/t3chguy/m.room.aliases
Add m.room.aliases to the timeline
2018-09-18 11:14:44 +01:00
Matthew Hodgson
ece041d059 fix NPE on name (related to LL?) 2018-09-18 00:16:25 +01:00
Bruno Windels
8c4f4765df remove initial parameter and show available members on invite instead 2018-09-17 20:03:01 +02:00
Bruno Windels
0727e0f8d3 mounted can be set straight in componentWillMount 2018-09-17 20:02:15 +02:00
Bruno Windels
e8b4770940 fix lint 2018-09-17 20:01:55 +02:00
Matthew Hodgson
0e1a814d23 remove RoomAliasesEvent in favour of simpler textual event 2018-09-17 18:27:17 +01:00
Bruno Windels
e0a789f77e remove untrue comment, as we only load the members when joining 2018-09-17 19:21:22 +02:00
Bruno Windels
e1b9aa9626 better naming and document method 2018-09-17 19:20:26 +02:00
Matthew Hodgson
dc7212ec2b switch back to simple TextForEvent
I haven't found anyone who can justify to me why we need
more complicated plurals for i18n (even in Polish) for
%(senderName)s added %(addedAddresses)s and removed %(removedAddresses)s as addresses for this room.
2018-09-17 18:20:12 +01:00
Bruno Windels
d276b17c2a remove dead code 2018-09-17 19:19:07 +02:00
Bruno Windels
c3914d3493 show empty list as initial state instead of spinner
the spinner should only be shown when joined
2018-09-17 19:18:55 +02:00
Bruno Windels
2ed414494f use Room.myMembership event instead of RoomMember.membership for me
This is more reliable with LL enabled as the syncing user is
only known when it was active in the current timeline
or when the members have been loaded
2018-09-17 19:14:52 +02:00
David Baker
12d10cccef Show if sig is from this device 2018-09-17 17:14:03 +01:00
David Baker
f507aac3d5 Show if recovery key is valid 2018-09-17 17:05:29 +01:00
David Baker
9a65e6817a Support restoring key backup 2018-09-17 16:00:23 +01:00
Matthew Hodgson
3b868064c7 merge in develop 2018-09-16 19:06:52 +01:00
David Baker
2e6d27717c LIIIIIIIIIIIIIIIINT! 2018-09-14 17:33:25 +01:00
David Baker
d94553bafc UI for whether the key backup is enabled or not 2018-09-14 17:08:02 +01:00
Bruno Windels
27c496aecb remove unneeded async keywords 2018-09-14 13:55:47 +02:00
Bruno Windels
f194f323f4 postpone loading the members until the user joined the room
when peeking, the members weren't being loaded at all because
the room wasn't available yet,
and the need for loading the members was never re-evaluated after that.

This only loads the members once the user has joined the room,
which also helps to avoid load all the members before an invite
is accepted.
2018-09-13 18:43:24 +02:00
David Baker
292b1f09af WIP e2e key backups
Continues from Matthew's work: adds a feature flag & panel in
user settings to create a backup.

Can't restore a backup yet, nor even continue backing up to the same
backup after a refresh.
2018-09-13 17:11:46 +01:00
David Baker
59e4879b14 Merge remote-tracking branch 'origin/develop' into matthew/e2e_backups 2018-09-11 13:03:22 +01:00
David Baker
518be24a5b
Merge pull request #2164 from matrix-org/dbkr/dont_exit_fullscreen_when_not
Don't try to exit fullscreen if not fullscreen
2018-09-11 13:03:09 +01:00
David Baker
f62e92a07b Merge remote-tracking branch 'origin/develop' into matthew/e2e_backups 2018-09-11 11:37:22 +01:00
David Baker
d3038ea765 Don't try to exit fullscreen if not fullscreen
This was causing annoying exceptions on latest Chrome. Use
document.fullScreenElement to detect if we're fullscreen and don't
try to exit if we aren't.
2018-09-11 11:31:24 +01:00
Bruno Windels
ecaabd6b75
Merge pull request #2161 from matrix-org/bwindels/dontupdatememberlistwhileloading
avoid updating the memberlist while the spinner is shown
2018-09-11 10:57:29 +02:00
Bruno Windels
2aaf3e6b89 dont assign member in getInitialState 2018-09-10 17:39:03 +02:00
Bruno Windels
92f7e29132 missed one {} -> [], fix e2e tests 2018-09-10 17:32:40 +02:00
Bruno Windels
5044d4f2d6 dont keep the spinner in the memberlist when fetching /members fails 2018-09-10 14:56:10 +02:00
Bruno Windels
0cd222ef0b make users available in member by requesting them from client right before
before this was already foreseen, but memberDict wasn't being refreshed
as it's only used in roomMembers(), I got rid of memberDict as well
2018-09-07 23:44:20 +02:00
Bruno Windels
7fe822ca17 Merge branch 'develop' into bwindels/dontupdatememberlistwhileloading 2018-09-07 23:43:25 +02:00
Bruno Windels
467cdd2f1f Merge branch 'develop' into bwindels/optimizememberlist 2018-09-07 18:32:13 +02:00
Bruno Windels
9cc9fbf924 avoid memberlist refresh for events related to rooms other but the current 2018-09-07 14:05:26 +02:00
Bruno Windels
fec7d2ee5f avoid updating the memberlist while the spinner is shown
the memberlist gets updated constantly while the LL members
are being added to the room state. this slows things down unneed, and is one of the
main cause of dropping frames when member arrive.
2018-09-07 12:00:19 +02:00
David Baker
c8ab8bf5f8
Merge pull request #2150 from matrix-org/dbkr/disable_ilag_if_unsupported
Do full registration if HS doesn't support ILAG
2018-09-06 16:23:32 +01:00
Bruno Windels
26df485607 Merge branch 'develop' into revert-2149-revert-2145-bwindels/fixllroompermission 2018-09-06 15:35:41 +02:00
David Baker
4c8d2de563
Revert "Revert "Don't rely on room members to query power levels"" 2018-09-06 11:48:23 +01:00
David Baker
9e64a22884 s/DidMount/WillMount/ in MessageComposerInput
This fixes the tests that broke with https://github.com/matrix-org/matrix-js-sdk/pull/717

This is because of https://github.com/vector-im/riot-web/blob/master/test/app-tests/joining.js#L63
which prevents the DOM nodes from actually ending up in the DOM, even though the react components
get rendered. This means that WillMount and WillUnmount are called, but not DidMount.

Using WillMount is more symmertrical anyway since the resulting teardown code must be in
WillUnmount (since there is no DidUnmount).
2018-09-06 11:44:13 +01:00
David Baker
27fa21e403 Replace view_set_mxid with require_registration
To put all the other flows through the to-ilag-or-not-to-ilag flow
2018-09-05 18:08:49 +01:00
David Baker
34d27954cf
Revert "Don't rely on room members to query power levels" 2018-09-05 18:03:48 +01:00
Bruno Windels
8500a7131f avoid unneeded lookups in memberDict
have members be an array of RoomMember instead of userId, so
we can avoid multiple lookups when sorting, rendering, ...
2018-09-05 15:25:08 +02:00
Bruno Windels
50de22fb51
Merge pull request #2145 from matrix-org/bwindels/fixllroompermission
Don't rely on room members to query power levels
2018-09-05 13:07:55 +02:00
David Baker
4517eaba6f
Merge pull request #2148 from matrix-org/dbkr/dont_say_email_optional_if_it_isnt
Correctly mark email as optional
2018-09-05 11:31:19 +01:00