Commit Graph

2954 Commits (c697b48f99f21f1da8427d38ff961becffb73d54)

Author SHA1 Message Date
David Baker 8fc3104507 Replace submit button with a spinner when busy
and update test accordingly
2017-02-13 18:52:33 +00:00
David Baker 77b226631a Copyright 2017-02-13 16:15:00 +00:00
David Baker 79d9deb339 Split out InterActiveAuthDialog
Into a component that does Interactive Auth and a dialog that
wraps it, so we can do interactive auth not necessarily in a
dialog.

As a side effect:
 * Put the buttons for each auth stage in the stage itself.
   Some stages don't have submit buttons (and it's very possible
   other stages may have other buttons entirely, like 'resend')
   so it makes more sense for the buttons to live in the stage
   components themselves. Plus it saves the slightly evil
   calling-functions-on-react-children thing we were doing (and
   indeed extending that to show the submit button at all).
 * Give all BaseDialogs a cross in the top right to cancel. They
   were all dismissable by clicking outside or pressing esc, so
   this adds a more visually obvious way of dismissing them. Plus,
   it means our InteractiveAuthDialog can have a way of canceling
   the whole operation separate from buttons for the individual
   stages.
2017-02-13 16:03:21 +00:00
Luke Barnard 16e3365240 Use a callback prop instead of `window.` 2017-02-13 14:36:35 +00:00
Luke Barnard a21e71f59d Merge pull request #688 from matrix-org/luke/rts-use-sid-client-secret
Instead of sending userId, userEmail, send sid, client_secret
2017-02-13 13:49:23 +00:00
David Baker b45da45457 Merge pull request #686 from matrix-org/luke/rts-enable-branded-urls
Enable branded URLs again by parsing the path client-side
2017-02-13 13:38:55 +00:00
Luke Barnard 75deb55844 Null check on teamName 2017-02-13 11:48:03 +00:00
Luke Barnard 4ac769168a View /home on registered /w team 2017-02-10 17:17:58 +00:00
Luke Barnard 29f5e88f6a Instead of sending userId, userEmail, send sid, client_secret
This has the benefit of being possible from the _second_ riot instance, which may not actually have the email of the user registering. With these parameters, the RTS can get the email and user ID itself.

(see https://github.com/matrix-org/riot-team-server/pull/15)
2017-02-10 16:50:25 +00:00
David Baker 33fc4f7d8d Merge pull request #680 from matrix-org/luke/rts-fix-reg-icon
Use new method of getting team icon
2017-02-10 16:39:11 +00:00
Kegan Dougal c46f282139 Comments 2017-02-10 16:19:39 +00:00
Kegan Dougal f628ee2ef0 Merge branch 'develop' into kegan/indexeddb 2017-02-10 16:16:17 +00:00
Luke Barnard bdd031eac2 Enable branded URLs again by parsing the path client-side
Use the first path segment to key off config.teamTokenMap, which contains a mapping to teamTokens. The client then behaves as before, keeping the path in the address bar constant with no redirects required.
2017-02-10 15:09:45 +00:00
Kegan Dougal 407bcf1bb9 Delete database on logout. DI a SyncAccumulator. Log uncaught errors 2017-02-10 14:22:54 +00:00
Luke Barnard ec730056d8 Alter comment 2017-02-10 11:39:22 +00:00
Luke Barnard bab6a0b84a Persist query parameter team token across refreshes 2017-02-10 11:31:04 +00:00
Luke Barnard 45f5b8b3a9 Thread teamToken through to LeftPanel for "Home" button
This means the riot-web will use the same teamToken used by sdk components. This includes cases where only the fragment query parameter has been provided.

Fixes matrix-org/riot-web#3185
2017-02-10 09:57:28 +00:00
Luke Barnard 8d3876c7d0 MELS: either expanded or summary, not both
Fixes vector-im/riot-web#3097
2017-02-09 15:14:16 +00:00
Luke Barnard 69add8fd64 Actually use the RTS URL 2017-02-09 13:16:46 +00:00
Luke Barnard ae03244e6e Merge branch 'develop' into luke/feature-css-msg-colors 2017-02-09 13:14:15 +00:00
David Baker 7ba9e27893 Merge pull request #682 from matrix-org/luke/fix-typing-notif
Fix typing notif and status bar
2017-02-09 10:46:37 +00:00
Luke Barnard 103710728f Do not show "+1 other"
Instead show a user name or avatar.
2017-02-09 10:30:06 +00:00
Luke Barnard 553054409f Use (props,state) ordering of arguments
There was a bug here that meant that sometimes arguments were given in the wrong order; presumably leading to the status bar not appearing for calls etc.
2017-02-09 10:01:59 +00:00
Luke Barnard cc69e982a7 Use single state to set both avatars and typing notif 2017-02-09 10:01:51 +00:00
Luke Barnard 40658494b4 Consider emails ending in matrix.org as a uni email
For the purposes of testing (and having a team page)
2017-02-09 09:29:55 +00:00
Luke Barnard 747c0c44a6 Use new method of getting team icon
This was necessary because the team token may not be known when registering, but domain is. Storing the icon under the "common" directory is the chosen solution to this.
2017-02-09 09:24:46 +00:00
Matthew Hodgson ad2710ec5d fix CSS for import/export buttons 2017-02-09 02:00:58 +00:00
Matthew Hodgson ea50acfc87 fix dark theme for uploadbar 2017-02-09 01:26:53 +00:00
Matthew Hodgson 231997dd63 unbreak /markdown off 2017-02-09 01:18:09 +00:00
Luke Barnard 449519dc32 Merge pull request #679 from matrix-org/luke/rts-email-verif-referrer
Set referrer qp in nextLink
2017-02-08 22:05:49 +00:00
Luke Barnard c2d5b72d68 Set referrer qp in nextLink
This is so that when the verification link is clicked from an email, the referrer is set on the new instance of riot when /rts/register is hit
2017-02-08 17:58:40 +00:00
Luke Barnard 260cb62438 Do not set team_token if not returned by RTS on login 2017-02-08 16:49:33 +00:00
David Baker fe17e2452b Merge pull request #676 from matrix-org/luke/rts-team-token-login
Get team_token from the RTS on login
2017-02-08 10:54:24 +00:00
Matthew Hodgson 8fea4c27cb fix NPE 2017-02-07 22:00:56 +00:00
Luke Barnard 3d30db81e0 Only init RTS if configured correctly 2017-02-07 15:24:57 +00:00
Luke Barnard 3f9f59bb73 Import RtsClient at top 2017-02-07 15:23:23 +00:00
David Baker 96539a4054 Merge pull request #666 from matrix-org/luke/rts-welcome-pages
RTS Welcome Pages
2017-02-07 13:42:47 +00:00
Luke Barnard d5f6ecdc49 Use teamToken, not config when doing screen fallback 2017-02-07 13:23:58 +00:00
Luke Barnard c93b6c3c34 Style, fixes 2017-02-07 13:15:40 +00:00
Luke Barnard af19ea8bb7 Document login API 2017-02-07 12:01:44 +00:00
Richard van der Hoff 484d9d708e Logging to try to track down riot-web#3148
Since I can't figure out how this is happening, add a shedload of logging to
try to pin it down.
2017-02-06 16:01:25 +00:00
Richard van der Hoff 77f76db68b UserSettings: s/vector-web/riot-web/
vector is dead, long live riot
2017-02-06 09:50:14 +00:00
Luke Barnard 4f3549cc37 Fix: actually get the team token 2017-02-03 14:42:22 +00:00
Luke Barnard 173e80a5de Get team_token from the RTS on login
Use the /login endpoint of the RTS to get the team token when the user has successfully logged in.
2017-02-03 14:34:24 +00:00
Richard van der Hoff 827b5a6811 Fix deviceverifybuttons
Use DeviceInfo from deviceVerificationChanged event rather than calling
non-existent getStoredDevice
2017-02-03 14:34:19 +00:00
Luke Barnard efae5f6bf1 Use localStorage team token with fall-back on query parameter 2017-02-03 11:48:24 +00:00
Richard van der Hoff 5df5fed6f5 Merge pull request #675 from matrix-org/dbkr/fix_timeline_notifs_empty
Fix timeline & notifs panel spuriously being empty
2017-02-03 11:35:28 +00:00
Richard van der Hoff 2b67c1245f Merge pull request #636 from matrix-org/matthew/blacklist-unverified
UI for blacklisting unverified devices per-room & globally
2017-02-03 11:32:24 +00:00
Richard van der Hoff 3ea746db1d Fix RoomSettings
Don't enable encryption unless the box is checked!
2017-02-03 11:20:36 +00:00
David Baker 470e760e42 Fix timeline & notifs panel spuriously being empty
Only claim there's nothing to display once we've failed to back
paginate, otherwise we'll show the empty message instead of the
MessagePanel and therefore never try to back-paginate.
2017-02-03 11:11:37 +00:00
Richard van der Hoff e018eef9fa UnknownDeviceDialog.js: tweak warning 2017-02-03 10:50:03 +00:00
Matthew Hodgson 28d28b55d1 correctly reflect verify/blacklist state in UI 2017-02-03 01:49:22 +00:00
Matthew Hodgson 5de84f845a tweak verbiage 2017-02-03 01:49:05 +00:00
Matthew Hodgson e825a4af3c show better error msg after UnkDevDialog
should fix https://github.com/vector-im/riot-web/issues/3122
2017-02-03 00:45:33 +00:00
Matthew Hodgson be41462f3a merge 2017-02-02 22:05:44 +00:00
Richard van der Hoff cd5a1abfac Merge pull request #673 from matrix-org/dbkr/make_default_avatars_clickable
Make default avatars clickable
2017-02-02 18:49:08 +00:00
David Baker e7a32faf64 Wrap multiline JSX in parens 2017-02-02 18:47:24 +00:00
Matthew Hodgson 8799891e0e hopefully fix key array warning 2017-02-02 18:47:15 +00:00
Matthew Hodgson 2bb275c071 missing (c) 2017-02-02 18:45:49 +00:00
David Baker 1fc5c9ddcc Merge pull request #672 from matrix-org/dbkr/velociraptor_always_change_visibility
Fix one read receipt randomly not appearing
2017-02-02 18:45:29 +00:00
David Baker 10edab06a6 Don't c+p the complex markup 2017-02-02 18:41:50 +00:00
David Baker 7484cc3f70 Make default avatars clickable
BaseAvatar can be passed an onClick which is called when it's, er,
clicked, except when it was the default avatar in which case it
merrily ignored it. Make it not ignore it.
2017-02-02 18:29:33 +00:00
Matthew Hodgson 2cf24c17e2 double scrollback window on roomview 2017-02-02 18:27:21 +00:00
Matthew Hodgson d567b3bb6a fix 'show rightpanel' button alt text & icon 2017-02-02 18:27:21 +00:00
David Baker 42f75e1740 Fix one read receipt randomly not appearing
The velociraptor was only actioning hidden -> visible transitions
if the position had changed, so the one RR that stayed in position
but became visible... didn't become visible.
2017-02-02 18:21:53 +00:00
Matthew Hodgson e45ac36a3b Merge pull request #635 from matrix-org/matthew/warn-unknown-devices
very barebones support for warning users when rooms contain unknown devices
2017-02-02 18:08:18 +00:00
Matthew Hodgson 5d5125df15 fix copyright & always show gemini 2017-02-02 18:02:07 +00:00
Matthew Hodgson 4ab479594b temporarily stop hiding the statusbar
as per https://github.com/vector-im/riot-web/issues/1991#issuecomment-276953915
2017-02-02 17:48:54 +00:00
Richard van der Hoff e9a53a8957 Merge pull request #671 from matrix-org/dbkr/fix_read_receipt_unhide
Fix expanding/unexapnding read receipts
2017-02-02 17:45:04 +00:00
David Baker b561b711df Fix expanding/unexapnding read receipts
Make the AccessibleButton element be the img directly rather than
wrapping it in a div which is unnecessary and breaks the rendering.

Fixes https://github.com/vector-im/riot-web/issues/3052
2017-02-02 17:36:26 +00:00
Richard van der Hoff eebc7539f9 Megolm export: Increase to 500000 PBKDF rounds
This takes 370ms on my machine (100000 only took 100ms).
2017-02-02 16:38:19 +00:00
Matthew Hodgson 08ad69847c show placeholder of timeline empty 2017-02-02 16:32:10 +00:00
Richard van der Hoff 68f644c824 Merge pull request #669 from matrix-org/dbkr/read_receipt_title
Make read receipt's titles more explanatory
2017-02-02 15:25:45 +00:00
David Baker 7ae54b34f3 Merge pull request #667 from matrix-org/dbkr/fix_markdown_spurious_html
Fix spurious HTML tags being passed through literally
2017-02-02 15:18:42 +00:00
David Baker c5b752cac1 Make read receipt's titles more explanatory
Throwing this one in a suggestion while I'm in the area: I think
this would help people understand what the read receipt avatars
are.
2017-02-02 15:08:18 +00:00
Kegan Dougal 300cd962e5 Add glue code to make react-sdk use indexedDB 2017-02-02 14:27:27 +00:00
David Baker 853c89dfdc Fix spurious html tags like <shrug>
* Only render HTML tags in markdown if they're del tags
 * Consider non-allowed HTML tags as plain text nodes, so
   a message of just '<shrug>' doesn't need to be sent as
   HTML
 * Consequently rewrite isPlaintext to just look at the parse
   tree rather than making and gutting a renderer to walk
   the tree (now we're using a library that actually produces
   a meaningfgul parse tree).
 * Tweak when we put \n on text output to avoid putting \n on
   the end of messages.

Fixes https://github.com/vector-im/riot-web/issues/3065
2017-02-02 14:17:07 +00:00
Luke Barnard b9bc8eefd0 Typo 2017-02-02 13:56:54 +00:00
Matthew Hodgson 1c4c80cc5f boldify the preview bar click 2017-02-02 13:32:19 +00:00
Matthew Hodgson 211be5752c try to make joining rooms more obvious 2017-02-02 13:32:07 +00:00
Luke Barnard 2aaf77974d Pass RTS URL through 2017-02-02 11:57:56 +00:00
David Baker 63e47d8677 Make ourselves a new rendered each time
Rather than keeping one in memory, abusing it in different ways
each time and then craefully putting it back the way it was (and
in one case, failing, because we forgot to put the `out` method
back).
2017-02-02 11:45:21 +00:00
David Baker 72e5b2235d Parse once and re-use the parsed output
Rather than re-parsing the same output in each function
2017-02-02 11:34:39 +00:00
David Baker fc90ed1c3a Update the comments in Markdown.js
so they don't claim it;s a wrapper around marked when it's now
commonmark, and comment why we render markdown to plaintext which
is somewhat unintuitive.
2017-02-02 11:27:07 +00:00
Luke Barnard 8c941b11cd Use `mx_team_token` instead of config 2017-02-02 11:22:40 +00:00
Matthew Hodgson 5e5b7f89f4 support scrollable content for UnknownDeviceDialog 2017-02-02 00:25:49 +00:00
Matthew Hodgson c09d173415 Merge branch 'develop' into matthew/warn-unknown-devices 2017-02-01 22:34:55 +00:00
Luke Barnard acde1f3db7 Merge branch 'develop' into luke/rts-welcome-pages
Conflicts:
	src/components/views/avatars/BaseAvatar.js
2017-02-01 17:22:45 +00:00
Luke Barnard f8d7902d2e Merge pull request #662 from matrix-org/luke/rts-handle-errors
Throw errors on not 'ok' status codes from RTS, swap to `whatwg-fetch` for sending requests to RTS.
2017-02-01 11:44:04 +00:00
Luke Barnard 028c40e293 Linting 2017-02-01 11:16:14 +00:00
Luke Barnard fa1981ce09 Use whatwg-fetch instead of browser-request 2017-02-01 10:39:52 +00:00
David Baker 6f53b2de2c Merge pull request #663 from matrix-org/rav/fix_tests
Make tests pass on Chrome again
2017-02-01 10:20:30 +00:00
Richard van der Hoff cd1cf09dc9 Make tests pass on Chrome again
It seems that a number of the tests had started failing when run in
Chrome. They were fine under PhantomJS, but the MegolmExport tests only work
under Chrome, and I need them to work...

Mostly the problems were timing-related, where assumptions made about how
quickly the `then` handler on a promise would be called were no longer
valid. Possibly Chrome 55 has made some changes to the relative priorities of
setTimeout and sendMessage calls.

One of the TimelinePanel tests was failing because it was expecting the contents
of a div to take up more room than they actually were. It's possible this is
something very environment-specific; hopefully the new value will work on a
wider range of machines.

Also some logging tweaks.
2017-01-31 22:40:53 +00:00
Luke Barnard 2f188770e5 Typo 2017-01-31 15:59:38 +00:00
Luke Barnard be869a8ac6 Add referral section to user settings (#661)
This allows those who have registered to referrer other students to Riot and have their referral counted for the campaign competition. Also allows the base referral URL to be configurable (i.e. for Electron app, etc.) and be default this is `window.location.origin`.
2017-01-31 15:55:42 +00:00
Luke Barnard c261ca1f5e Allow base referral URL to be configurable 2017-01-31 15:17:43 +00:00
Luke Barnard 4c4cc585c7 Throw errors on !==200 status codes from RTS 2017-01-31 13:40:01 +00:00
Luke Barnard c2b0c603c0 Add referral section to user settings
This allows those who have registered to referrer other students to Riot and have their referral counted for the campaign competition.
2017-01-31 13:17:01 +00:00
Richard van der Hoff 91d33e3cc4 Merge pull request #660 from matrix-org/rav/megolm_export_fixes
Two megolm export fixes:
2017-01-31 13:13:20 +00:00
Richard van der Hoff c5f447260a Megolm import: Fix handling of short files
Make sure we throw a sensible error when the body of the data is too short.
2017-01-31 12:30:30 +00:00
Richard van der Hoff 62c8c20268 Megolm export: fix Android incompatibility
I'd carefully added a workaround to maintain compatibility with the Android
AES-CTR implementation... to the wrong thing.
2017-01-31 12:29:16 +00:00
Luke Barnard 878e5593ba Implement tracking of referrals (#659)
* Implement tracking of referrals

This also modifies (or fixes) auto-joining.
2017-01-31 11:13:05 +00:00
Luke Barnard 4e9229e936 Get rid of dupl. declaration 2017-01-30 16:37:16 +00:00
Luke Barnard 1e279d2335 Finish with .done() 2017-01-30 16:35:34 +00:00
Luke Barnard f5efc8e765 Use const, not var 2017-01-30 16:33:16 +00:00
Luke Barnard eb4d7f04e7 Use busy spinner when requesting teams 2017-01-30 16:23:52 +00:00
Luke Barnard 318d871097 Formatting 2017-01-30 16:13:57 +00:00
Luke Barnard 4e0889454a GET /teams from RTS instead of config.json
Now that the RTS contains config for teams, use GET /teams to get that information so that users will see be able to register as a team (but not yet auto-join rooms, be sent to welcome page or be tracked as a referral).
2017-01-30 15:50:31 +00:00
David Baker f5458d34aa Fix inviting import fail 2017-01-27 21:57:34 +00:00
Luke Barnard d9a8acd431 Redo team-based registration (#657)
For compatibility with referral campaign flows, re-implement team registration such that the team is selected through providing an email with a known team domain. The support email is now only shown when an email that _looks_ like a UK/US university email address, but is not known.
2017-01-27 16:31:36 +00:00
Luke Barnard f462bd8f99 Expand status *area* unless status *bar* not visible (#655) 2017-01-26 18:07:42 +00:00
Luke Barnard 9c99dafba5 Guard onStatusBarVisible/Hidden with this.unmounted 2017-01-26 17:03:01 +00:00
Richard van der Hoff 2c7b3d9a02 UnknownDeviceDialog: Reword the warning 2017-01-26 14:55:58 +00:00
Richard van der Hoff 0a3d9fc17f Fix lint 2017-01-26 14:12:00 +00:00
Richard van der Hoff 67bd2cf9dd Merge branch 'matthew/warn-unknown-devices' into matthew/blacklist-unverified 2017-01-26 14:09:25 +00:00
David Baker f06de1f129 Merge pull request #654 from matrix-org/rav/fix_e2e_dialog_cancel
Fix cancel button on e2e import/export dialogs
2017-01-26 11:41:30 +00:00
David Baker e2edecc55b Merge pull request #653 from matrix-org/dbkr/invite_look_up_emails
Look up email addresses in ChatInviteDialog
2017-01-26 11:35:06 +00:00
David Baker c42b705497 Use a cancel function
rather than checking queryList each time
2017-01-26 10:54:07 +00:00
David Baker 23a25e550d Missed a `function` 2017-01-26 10:09:33 +00:00
David Baker bf66f77acb Set state in _lookupThreepid 2017-01-26 10:08:44 +00:00
Richard van der Hoff 60d7575146 Merge branch 'matthew/warn-unknown-devices' of github.com:matrix-org/matrix-react-sdk into matthew/warn-unknown-devices 2017-01-25 23:17:57 +00:00
Matthew Hodgson ebf6ba8994 explicitly set device known-ness 2017-01-25 23:52:56 +01:00
Richard van der Hoff 70190be65c Factor out common onSendMessageFailed 2017-01-25 22:23:21 +00:00
Richard van der Hoff 5da6ca8fc1 Refactor UnknownDeviceDialog
hopefully make this a bit more readable, and use our new BaseDialog.
2017-01-25 22:23:21 +00:00
Richard van der Hoff 5538ce7c30 Merge branch 'develop' into matthew/warn-unknown-devices 2017-01-25 22:22:50 +00:00
Richard van der Hoff 81d95ecea0 Fix cancel button on e2e import/export dialogs
Make sure that we preventDefault on the cancel button.

Fixes https://github.com/vector-im/riot-web/issues/3066
2017-01-25 22:15:09 +00:00
David Baker e1e87807b5 Look up email addresses in ChatInviteDialog
So email addresses known to the IS get a display name & avatar
2017-01-25 18:51:28 +00:00
Kegsay c3616fd208 Merge pull request #652 from matrix-org/kegan/rageshake-glue
Move BugReportDialog to riot-web
2017-01-25 17:20:43 +00:00
David Baker 12642bdf2b Merge pull request #651 from matrix-org/rav/roomheader_theming_fix
Fix dark theme styling of roomheader cancel button
2017-01-25 17:02:07 +00:00
David Baker 8a5e19f64f Merge pull request #649 from matrix-org/rav/stack_dialogs
Allow modals to stack up
2017-01-25 16:45:50 +00:00
Richard van der Hoff a2dd1fa0a9 Merge branch 'develop' into matthew/warn-unknown-devices 2017-01-25 16:44:03 +00:00
Richard van der Hoff 21f3aeac8e Revert accidental change
This was an unrelated change which is being done on another branch anyway
2017-01-25 16:40:27 +00:00
Kegan Dougal e9de34ec40 We no longer supply a BugReportDialog 2017-01-25 16:35:16 +00:00
Richard van der Hoff 5099f07562 Fix dark theme styling of roomheader cancel button 2017-01-25 16:33:29 +00:00
Kegan Dougal bea6df88e0 Move BugReportDialog to riot-web 2017-01-25 16:33:00 +00:00
Richard van der Hoff 55dc2e0161 Factor out common CancelButton 2017-01-25 16:32:06 +00:00
Kegsay e5fde759e6 Merge pull request #642 from matrix-org/kegan/rageshake-ui
Add bug report UI
2017-01-25 16:03:22 +00:00
David Baker a3b938427d Merge pull request #625 from matrix-org/dbkr/user_search_feedback
Better feedback in invite dialog
2017-01-25 15:59:47 +00:00
Kegan Dougal 602ce37ba7 Merge branch 'develop' into kegan/rageshake-ui 2017-01-25 15:52:00 +00:00
Richard van der Hoff dc7a169779 Merge pull request #647 from matrix-org/rav/megolm_backup_ui
Import and export for Megolm session data
2017-01-25 15:43:15 +00:00
David Baker ced1c45a34 Doc state in getinitialstate 2017-01-25 15:23:50 +00:00
Richard van der Hoff 9cadc2f55f Merge pull request #613 from matrix-org/luke/fix-join-part-collapsing-causality
Overhaul MELS to deal with causality, kicks, etc.
2017-01-25 15:20:30 +00:00
Richard van der Hoff ebe6cddd21 Merge remote-tracking branch 'origin/develop' into rav/megolm_backup_ui 2017-01-25 15:13:14 +00:00
Richard van der Hoff 69b55fd9d1 Merge pull request #650 from matrix-org/dbkr/fix_alt_up_down
Re-add dispatcher as alt-up/down uses it
2017-01-25 15:10:56 +00:00
David Baker e9804086ca Point to InviteAddressType 2017-01-25 15:03:01 +00:00
Richard van der Hoff adf8f50f6e Merge remote-tracking branch 'origin/develop' into rav/base_dialog 2017-01-25 15:01:11 +00:00
David Baker b34f63d3e7 Re-add dispatcher as alt-up/down uses it
Alt-up/down still doesn't go through rooms in the right order,
but it should probably not error.
2017-01-25 14:59:18 +00:00
David Baker fd8d5af63a Fix import of InviteAddressType
and rewrite to import while we're at it
2017-01-25 14:54:21 +00:00
David Baker 9020a7515c Correctly bail out on unknown address 2017-01-25 14:50:00 +00:00
Kegan Dougal b00e090600 Do not show the bug report section if there is no bug_report_endpoint_url 2017-01-25 14:43:47 +00:00
David Baker e567162d28 Merge pull request #648 from matrix-org/rav/fix_set_displayname
Fix SetDisplayNameDialog
2017-01-25 14:32:52 +00:00
Luke Barnard f9ca2a8e59 Fix _renderCommaSeparatedList 2017-01-25 11:28:12 +00:00
David Baker f66e412d3a Merge pull request #643 from matrix-org/luke/fix-typing-indication
Sync typing indication with avatar typing indication
2017-01-25 11:13:55 +00:00
Luke Barnard b887d5b823 Much linting 2017-01-25 11:05:45 +00:00
David Baker fc9987a827 Merge pull request #646 from matrix-org/matthew/password-reset-warning
Warn users of E2E key loss when changing/resetting passwords or logging out
2017-01-25 11:04:35 +00:00
Luke Barnard 8091cf7df8 Enumerate->label 2017-01-25 09:32:28 +00:00
Luke Barnard f8e46819c5 Rename truncated->coalesced 2017-01-25 09:28:26 +00:00
Luke Barnard 3b8b2cf500 Document _getCanonicalTransitions 2017-01-25 09:18:47 +00:00
Richard van der Hoff 29b4dde878 Fix SetDisplayNameDialog
SetDisplayNameDialog got broken by the changes to support asynchronous loading
of dialogs.

Rather than poking into its internals via a ref, make it return its result via
onFinished.

Fixes https://github.com/vector-im/riot-web/issues/3047
2017-01-25 08:01:45 +00:00
Richard van der Hoff 10018374f8 Allow modals to stack up
Show the most recent modal; if we end up with more than one, just show the most
recent.
2017-01-25 07:44:33 +00:00
Richard van der Hoff 770820e6fa Fix a bunch of lint complaints 2017-01-24 22:41:52 +00:00
Matthew Hodgson 6a40abbbf0 actually, move signout warning to UserSettings.js
also, kill off the inexplicably useless LogoutPrompt in favour of a normal QuestionDialog.
This in turn fixes https://github.com/vector-im/riot-web/issues/2152
2017-01-24 23:18:25 +01:00
Matthew Hodgson 6e55bb4956 actually, move signout warning to UserSettings.js
also, kill off the inexplicably useless LogoutPrompt in favour of a normal QuestionDialog.
This in turn fixes https://github.com/vector-im/riot-web/issues/2152
2017-01-24 23:15:00 +01:00
Richard van der Hoff b85f53cadd Implement Megolm key importing 2017-01-24 21:50:24 +00:00
Richard van der Hoff e23deac1bb Implement e2e export 2017-01-24 21:50:24 +00:00
Matthew Hodgson b148619c52 warn on logout too 2017-01-24 22:47:03 +01:00
Matthew Hodgson 5b61d00533 warn users that changing/resetting password will nuke E2E keys 2017-01-24 22:36:55 +01:00
Richard van der Hoff 86276450f6 Add AccessibleButton to component-index 2017-01-24 21:27:57 +00:00
Richard van der Hoff 79e1108564 Merge branch 'develop' into rav/base_dialog 2017-01-24 21:03:08 +00:00
Richard van der Hoff 72492fd909 Fix broken merge
I messed up the merge in 6dd46d5.
2017-01-24 20:55:10 +00:00
Richard van der Hoff 6dd46d532a Merge remote-tracking branch 'origin/develop' into rav/hotkey-ux 2017-01-24 20:47:24 +00:00
David Baker 6c263c1c89 Change what AddressTile takes to be Objects
Rather than just passing in a list of strings. This paves the way
for passing in display names & avatars of looked-up threepids.
2017-01-24 18:23:34 +00:00
Richard van der Hoff 56cf7a6af7 Create a common BaseDialog
I'm fed up with copying the boilerplate for modal dialogs the whole time.
2017-01-24 18:18:54 +00:00
Luke Barnard a92fff9da7 Fix linting warnings 2017-01-24 17:18:56 +00:00
Luke Barnard 4186a769ca Default prop for whoIsTypingLimit 2017-01-24 17:16:26 +00:00
Kegan Dougal 97387db014 Reduce log spam: Revert a16aeeef2a
As per #riot-dev, this is no longer required.
2017-01-24 16:40:26 +00:00
Luke Barnard 9a360a48d2 Use the same property to limit avatars 2017-01-24 16:04:37 +00:00
Luke Barnard 7c66d1c867 Sync typing indication with avatar typing indication
Follow the same rules for displaying "is typing" as with the typing avatars.
2017-01-24 16:01:39 +00:00
Kegan Dougal 5991172182 Review comments 2017-01-24 15:51:53 +00:00
Kegan Dougal 3b9a112136 Add bug report UI 2017-01-24 14:47:11 +00:00
Luke Barnard ce7434984b Expand timeline in situations when _getIndicator not null
The status bar will now be expanded when:
 - props.numUnreadMessages
 - !props.atEndOfLiveTimeline
 - props.hasActiveCall
2017-01-24 14:32:52 +00:00
Luke Barnard bd106968ce Merge branch 'develop' into luke/fix-join-part-collapsing-causality
Conflicts:
	src/components/structures/MessagePanel.js
2017-01-24 14:22:18 +00:00
Luke Barnard d690677bde Merge branch 'luke/fix-join-part-collapsing-causality' of github.com:matrix-org/matrix-react-sdk into luke/fix-join-part-collapsing-causality
Conflicts:
	src/components/views/elements/MemberEventListSummary.js
2017-01-24 14:17:11 +00:00
David Baker 5091bab657 Fix failed merge #2 2017-01-24 13:59:02 +00:00
David Baker 5f24fc3e5d Fix merge fail 2017-01-24 13:56:22 +00:00
Richard van der Hoff c0de0870ed Some sarcastic comments 2017-01-24 13:32:17 +00:00
David Baker f1f6fc809c Merge remote-tracking branch 'origin/develop' into dbkr/user_search_feedback 2017-01-24 11:26:09 +00:00
David Baker c47d3e04a5 Merge pull request #621 from matrix-org/dbkr/add_searching_known_users
Add 'searching known users' to the user picker
2017-01-24 10:51:23 +00:00
Luke Barnard a06ecb87bc Hide RoomStatusBar when it displays nothing (#615)
Use CSS class `mx_RoomView_statusArea_expanded` to indicate an expanded status bar. Without this, the status bar may be hidden from view. A 10s debounce will prevent it from bouncing frequently.
2017-01-23 16:01:39 +01:00
David Baker 3cfa539230 Merge pull request #637 from matrix-org/luke/fix-typing-avatars-displays-me
Fix typing avatars displaying "me"
2017-01-23 12:43:34 +00:00
David Baker 3df686c272 Merge pull request #638 from matrix-org/rav/unbreak_verification
Fix device verification from e2e info
2017-01-23 12:33:25 +00:00
Richard van der Hoff dc08d9dfdf Fix device verification from e2e info
Don't attempt to reuse the same AsyncWrapper for different dialogs - which ends
up pushing the props for the new dialog into the old dialog.

Fixes https://github.com/vector-im/riot-web/issues/3020
2017-01-23 12:18:41 +00:00
David Baker 506d37bbad Merge remote-tracking branch 'origin/develop' into dbkr/add_searching_known_users 2017-01-23 11:34:44 +00:00
David Baker f64a4e0ecb Merge pull request #623 from matrix-org/dbkr/user_search_word_boundary
Make user search do a bit better on word boundary
2017-01-23 11:31:26 +00:00
Luke Barnard d97fc0a99a Fix typing avatars displaying "me" 2017-01-23 10:25:33 +00:00
Matthew Hodgson 7bc3fc8696 make UnknownDeviceDialog work again, other than the mess of vector-im/vector-web#3020 2017-01-22 01:28:43 +01:00
Matthew Hodgson d9c0513ee2 make it work 2017-01-21 22:49:29 +01:00
Matthew Hodgson 39c122fe4f fix local storage idiocy 2017-01-21 22:27:55 +01:00
Matthew Hodgson 532f4e59c9 literally blindly add verification buttons 2017-01-21 19:06:15 +01:00
Matthew Hodgson 071e364be2 improve the verify warning if blacklisting is unabled 2017-01-21 17:56:48 +00:00
Matthew Hodgson c618880af9 oops 2017-01-21 17:43:46 +00:00
Matthew Hodgson 3071fc0ddc UI for blacklisting unverified devices per-room & globally
(written blind; untested as yet)
2017-01-21 17:39:39 +00:00
Matthew Hodgson 2e15e8f9b4 very barebones support for warning users when rooms contain unknown devices 2017-01-21 05:13:36 +00:00
Matthew Hodgson 937f13d578 fix a bunch of dark-theme buttons 2017-01-20 21:00:22 +00:00
Luke Barnard 0c5762b91d Implement "someone is typing" avatars (#631)
When users are typing, their avatars can be seen instead of "..." in the RoomView StatusBar
2017-01-20 17:51:35 +01:00
David Baker 18d4d3392a Fix a bunch of linting errors
eslint --fix and a few manual ones
2017-01-20 14:22:27 +00:00
Richard van der Hoff a16aeeef2a Temporarily add more logging, to try to catch failures on travis 2017-01-20 13:06:06 +00:00
Richard van der Hoff 2d060c8d2e Fix error display in account deactivate dialog 2017-01-20 11:04:47 +00:00
Matthew Hodgson b76b0f755d fix context menu bg 2017-01-20 02:47:47 +00:00
David Baker bd0706f103 Merge pull request #626 from matrix-org/dbkr/sanitize_chatinvitedialog
Sanitize ChatInviteDialog
2017-01-19 18:23:36 +00:00
David Baker afa384c4f3 Use null instead of false 2017-01-19 18:13:27 +00:00
Richard van der Hoff 2637ae3af3 Merge pull request #630 from matrix-org/rav/fix_themes
(hopefully) fix theming on Chrome
2017-01-19 17:34:36 +00:00
David Baker a2ff1cd8e6 Factor out adding the input field to the list 2017-01-19 17:03:16 +00:00
David Baker ee1f6c772e Remove duplicate case handled above
And fix typo where it was handled
2017-01-19 16:50:09 +00:00
David Baker 2a08abaa95 Keep old behaviour of submitting on enter
if input is empty
2017-01-19 16:35:40 +00:00
David Baker d8bcc1f067 Merge remote-tracking branch 'origin/develop' into dbkr/sanitize_chatinvitedialog 2017-01-19 16:26:59 +00:00
Richard van der Hoff bb7d589287 Merge pull request #617 from matrix-org/rav/megolm_backup
Megolm session import and export
2017-01-19 16:14:18 +00:00
Richard van der Hoff ba2460aef4 Merge pull request #618 from matrix-org/rav/async_dialog
Allow Modal to be used with async-loaded components
2017-01-19 16:08:30 +00:00
Richard van der Hoff a88f9fdd73 (hopefully) fix theming on Chrome
Jump through some hoops to make Chrome behave sensibly on non-default themes.
2017-01-19 15:36:57 +00:00
Kegsay 89fa47dc26 Merge pull request #622 from kyrias/commonmark-fix-escaping
Fix escaping markdown by rendering plaintext
2017-01-19 13:39:07 +00:00
David Baker 9e0c7a11d0 Merge pull request #628 from matrix-org/luke/feature-team-reg-auto-join-rooms
Implement auto-join rooms on registration
2017-01-19 11:44:37 +00:00
Johannes Löthberg 9c1c657a1e Markdown: delete remaining pre-split relics
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-19 11:55:36 +01:00
David Baker b58a67f6b1 Add more punctuation. Also s/let/const/ 2017-01-19 10:51:43 +00:00
Richard van der Hoff 8b60cb9df0 Megolm export: Clear bit 63 of the salt 2017-01-19 10:43:41 +00:00
David Baker 242f5e0301 PR feedback
* Doc & properly indent escapeRegExp
 * Add close bracket to the list of punctuation chars we search after
2017-01-19 10:24:21 +00:00
lukebarnard e9eb38fd74 Update propTypes and do null checks 2017-01-19 11:05:08 +01:00
lukebarnard e06dd6e34a Implement auto-join rooms on registration
Also: This fixes registration with a team: only the email localpart was being used to register.

When a registration is successful, the user will be joined to rooms specified in the config.json teamsConfig:

"teamsConfig" : {
  "supportEmail": "support@riot.im",
  "teams": [
    {
      "name" : "matrix",
      "emailSuffix" : "matrix.org",
      "rooms" : [
        {
          "id" : "#irc_matrix:matrix.org",
          "autoJoin" : true
        }
      ]
    }
  ]
}

autoJoin can of course be set to false if the room should only be displayed on the (forthcoming) welcome page for each team, and not auto-joined.
2017-01-19 10:56:04 +01:00
Matthew Hodgson 4e5689082d correctly load synced themes without NPE 2017-01-18 20:06:54 +00:00
Matthew Hodgson 4df968ecdf fix css snafu 2017-01-18 20:06:44 +00:00
David Baker 7b7728c93a Make behaviour of ChatInviteDialog more consistent
* Pressing enter now always adds whatever was in the input box
   to the invite list, if it's a valid address (previously it
   added it to the list of it was a search result but submitted
   the form straight away if there were no results).
 * Remove isValidAddress as it was only used in the context of
   testing whether its return value was true or null (where null
   meant "unsure") so just use getAddressType instead.
2017-01-18 18:32:38 +00:00
Johannes Löthberg 30bd01cdf2 Markdown: Split up render function into toHTML/toPlaintext
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-18 19:29:11 +01:00
David Baker f105ec2794 Attempt to sanitize ChatInviteDialog a bit
* Use binds rather than onFoo functions which aren't actually
   handler functions themselves but return them
 * Rename onKeyUp to moveSelectionDown etc,, reserving onKeyUp
   for "a key has been released" rather than, "the up arrow key
   has been pressed"
2017-01-18 17:51:39 +00:00
Matthew Hodgson fc63067237 improve commentary 2017-01-18 16:36:27 +00:00
David Baker de621902fc Better feedback in invite dialog
Show feedback if you enter a valid but unknown email address
or mxid

Fixes https://github.com/vector-im/riot-web/issues/2933
2017-01-18 15:21:50 +00:00
Matthew Hodgson 3d30553b7f review fixes, plus unbreak to work with new webpack layout 2017-01-18 14:06:47 +00:00
Johannes Löthberg 6d2e521421 Markdown: Add comment about out function override
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-18 14:25:11 +01:00
Matthew Hodgson a0bbe3a306 Merge branch 'develop' into matthew/postcss 2017-01-18 12:52:59 +00:00
Luke Barnard 5ef5204c8c Implement simple team-based registration (#620)
* Implement simple team-based registration

Config required goes in the `teams` top-level property in config.json. This consists of an array of team objects:
```json
{
  "name": "University of Bath",
  "emailSuffix": "bath.ac.uk"
}
```
These can be selected on registration and require a user to have a certain email address in order to register as part of a team. This is for vector-im/riot-web#2940. The next step would be sending users with emails matching the emailSuffix of a team to the correct welcome page as in vector-im/riot-web#2430.
2017-01-18 12:48:28 +01:00
Richard van der Hoff 31df78f946 Use text-encoding-utf-8 as a TextEncoder polyfill
Somebody else seems to have done a good job of polyfilling TextEncoder, so
let's use that.
2017-01-18 11:39:44 +00:00
lukebarnard 5dd1512ff2 Move aggregation code to dedicated function 2017-01-18 10:59:19 +01:00
lukebarnard 484549e50b Refactor a few things and document everything 2017-01-18 10:26:25 +01:00
Johannes Löthberg 2e3bdcf5c6 Markdown: Don't XML escape the output when not HTML
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 22:20:05 +01:00
Johannes Löthberg 49d60ff879 Markdown: softbreak is not HTML
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 21:04:12 +01:00
Johannes Löthberg c819b433a2 Make old message composer use new markdown
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 20:37:27 +01:00
Johannes Löthberg 35d70f0b35 markdown: Only add \n\n on multiple paragraphs
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2017-01-17 20:32:06 +01:00
Matthew Hodgson 8288eb730c a rather hacky implementation of theme switching 2017-01-17 19:13:23 +00:00
Matthew Hodgson c2cdb626bd let the tinter handle 'white' highlights of SVGs too 2017-01-17 19:13:04 +00:00
David Baker a87e7d6617 Make user search do a bit better on word boundary 2017-01-17 18:17:51 +00:00
lukebarnard 3ba9f50873 Move functions around, remove redundancies, add docs 2017-01-17 19:07:45 +01:00
lukebarnard 9574a0b663 Remove pointless length guard 2017-01-17 18:56:57 +01:00