Commit graph

2961 commits

Author SHA1 Message Date
Matthew Hodgson
5900c879ce Merge pull request #851 from t3chguy/warn_on_unload
Warn on unload
2017-05-07 18:17:18 +01:00
Michael Telatynski
2b2b43a7f3 Content in Composer is not lost on unload so it should be fine
to scare the user thinking they have lost all of their content
even though when they come back they can cry with joy :D

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-07 18:16:10 +01:00
Michael Telatynski
b944fff5c5 unscrew merge 2017-05-05 20:57:18 +01:00
Michael Telatynski
110ca22c4c Merge branch 'develop' into webrtc_settings 2017-05-05 20:56:20 +01:00
David Baker
1a0ea29995 Remove redundant role elements 2017-05-05 17:51:14 +01:00
Luke Barnard
6f4eb9d8b1 Show password nag bar when user is PWLU 2017-05-05 16:31:33 +01:00
David Baker
4fc4ae1e99 Size is a string, import react
React gets put in by the JSX transpile
2017-05-05 14:56:26 +01:00
David Baker
4a5821e199 Separate classes for the different buttons
Also rename RoleButton to ActionButton because it's not being
given a Role any more.
2017-05-05 14:25:18 +01:00
David Baker
e00605571b Fix the spinner to actually appear
We started with clientSyncState being null, which it remained
until the SYNCING event was emitted. We need to set
clientSyncState's initial value correctly.
2017-05-05 10:48:54 +01:00
David Baker
f86ca5bc97 Hide empty tips if collapsed 2017-05-04 18:08:04 +01:00
Luke Barnard
8e3851b380 Merge pull request #860 from t3chguy/patch-4
Guests can't send RR so no point trying
2017-05-04 17:53:59 +01:00
Michael Telatynski
f76b9b4489 remove link to issue
not very useful
2017-05-04 17:25:23 +01:00
Luke Barnard
7918ff2fc2 Merge pull request #857 from t3chguy/t3chguy/settings_versions_improvements
T3chguy/settings versions improvements
2017-05-04 16:56:45 +01:00
Michael Telatynski
da4c2f8b31 Guests can't send RR
so they shouldn't try
lets not hit the HS quite as much
2017-05-04 16:42:41 +01:00
Michael Telatynski
3c6e301f7f Improve regex to ignore trailing -dirty and for rc tags
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-04 16:22:39 +01:00
Michael Telatynski
2edfc3e598 remove commented out code as per review
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-04 15:51:31 +01:00
Michael Telatynski
cb478f1194 no idea why those got in there...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-04 15:50:52 +01:00
David Baker
72df43d22b Year 2017-05-04 15:46:24 +01:00
David Baker
306ea58578 Merge remote-tracking branch 'origin/develop' into dbkr/left_panel_for_newbies_2 2017-05-04 15:45:05 +01:00
David Baker
6a1d0fbab5 Make bottom left menu buttons use RoleButton too 2017-05-04 15:38:09 +01:00
David Baker
0998adb366 What year is it? Who's the president? 2017-05-04 15:02:21 +01:00
Luke Barnard
d5b49a11d7 Merge pull request #829 from matrix-org/luke/fix-people-section-disappearing
Remove DM-guessing code
2017-05-04 14:15:28 +01:00
David Baker
e1c99430cb Merge remote-tracking branch 'origin/develop' into dbkr/left_panel_for_newbies_2 2017-05-04 14:04:22 +01:00
David Baker
ce119a6364 Add buttons to room sub list headers 2017-05-04 13:55:52 +01:00
Luke Barnard
694fc26a55 Merge pull request #855 from matrix-org/luke/fix-jump-to-rm-in-mels
Fix jumping to an unread event when in MELS
2017-05-04 13:03:30 +01:00
Luke Barnard
6d9a1f047d Typo 2017-05-04 13:03:04 +01:00
Luke Barnard
bfa3123f9b Combine data-scroll-token and -contained-scroll-tokens
- Instead of using one attribute, use one that might just contain one token
 - Use the first token when tracking a child
 - Mandate that no commas can be in individual tokens
2017-05-04 10:00:13 +01:00
Michael Telatynski
9d92f93fcb consolidate call onPageUnload handler into RoomView
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-03 16:39:19 +01:00
Michael Telatynski
356d29939c also warn when quitting mid-call
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-03 16:25:27 +01:00
Michael Telatynski
b6fd771b9a move implementation to MessageComposer to it applies to any future composers
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-03 16:21:35 +01:00
Michael Telatynski
18ba5d3e49 fix typo
made in #849
2017-05-03 12:39:24 +01:00
Michael Telatynski
74b2c86f93 tidy up UserSettings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-02 21:17:12 +01:00
Michael Telatynski
76e98d4267 improve version hyperlinking
removed redundant v prefix (key already says version)
links to most applicable version/tag
tag-commit -> commit
commit1-commit2-commit3 -> commit1
(v)x.y.z -> tag<x.y.z>
commit -> commit

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-02 21:12:58 +01:00
Luke Barnard
af137f8867 Validate phone number on login
To prevent confusion when accidently inputting mxid or email. Fixes https://github.com/vector-im/riot-web/issues/3637
2017-05-02 18:30:46 +01:00
Luke Barnard
4febc63aee Add comment to _scrollToToken 2017-05-02 17:41:09 +01:00
Luke Barnard
fe83a99ab7 Update ScrollPanel docs 2017-05-02 17:36:59 +01:00
Luke Barnard
3f25928380 Fix jumping to an unread event when in MELS
This adds the `data-contained-scroll-tokens` API to elements in `ScrollPanel` which allows arbitrary containers of elements with scroll tokens to declare their contained scroll tokens. When jumping to a scroll token inside a container, the `ScrollPanel` will act as if it is scrolling to the container itself, not the child.

MELS has been modified such that it exposes the scroll tokens of all events that exist within it.This means "Jump to unread message" will work if the unread event is within a MELS (which is any member event, because even individual member events surrounded by other events are put inside a MELS).
2017-05-02 16:34:39 +01:00
Luke Barnard
4f71f4c331 Store mx_pass at the same point as access_token
So that we don't overwrite the existing one every time we try to register.
2017-05-02 10:07:06 +01:00
Luke Barnard
a887af9f92 copyright 2017-05-02 09:56:14 +01:00
Michael Telatynski
daae3bd1ec warn on unload when uploading file(s)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-29 06:27:06 +01:00
Michael Telatynski
6685cbcb25 make MessageComposerInput (new and old) warn on unload
new needs binding due to class this ref being softer
couldn't do this nicely in MessageComposer/Input as
isTyping wasn't propagated.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-29 06:26:59 +01:00
Michael Telatynski
c6262d62a6 webrtc config electron
init on LoggedInView mounting
configurable via UserSettings
new class: CallMediaHandler

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-28 18:21:22 +01:00
Luke Barnard
5a5768a4ec Try to fix tests 2017-04-28 13:38:35 +01:00
Luke Barnard
d12b1903f2 Fix defer promise logic 2017-04-28 13:29:30 +01:00
Luke Barnard
6dff4a4415 Return early after cancelled mxid dialog 2017-04-28 13:28:34 +01:00
Luke Barnard
8774100508 Initial implementation: SetDisplayName -> SetMxIdDialog
- Replaces SetDisplayNameDialog with SetMxIdDialog. This new dialog will use InteractiveAuth to authenticate a user with their chosen mxid.

De-scoped:
 - style tweaks for the InteractiveAuth in the dialog (capcha) and error message.
 - checking for mxid availability
2017-04-28 13:22:55 +01:00
David Baker
083d5bf463 Other empty sections no longer need to be greyed 2017-04-28 11:20:29 +01:00
David Baker
f5f35e3294 Make the left panel more friendly to new users
https://github.com/vector-im/riot-web/issues/3609
2017-04-28 11:10:21 +01:00
David Baker
b91f53652d Merge pull request #848 from matrix-org/luke/room-directory-improve
Improve RoomDirectory Look & Feel
2017-04-27 18:28:28 +01:00
Luke Barnard
88abe54ffe Give the SRH its prop back 2017-04-27 17:58:02 +01:00
Luke Barnard
791f7f7f6b Merge branch 'luke/room-directory-remove-rhs' into luke/room-directory-improve 2017-04-27 17:57:19 +01:00
Luke Barnard
0b06e979cb Add optional tintable SVG icon for SimpleRoomHeader 2017-04-27 17:57:13 +01:00
Luke Barnard
9d57e8b959 Merge pull request #845 from matrix-org/luke/rm-fix
Only show jumpToReadMarker bar when RM !== RR
2017-04-27 17:01:39 +01:00
Luke Barnard
6313193aa8 Null check readMarkerEventId, update comment 2017-04-27 16:52:40 +01:00
Luke Barnard
50831796bb Remove RHS when viewing RoomDirectory 2017-04-27 16:49:23 +01:00
Richard van der Hoff
786fa6b6e7 Merge pull request #846 from matrix-org/luke/fix-rm-stuck-in-mels
Allow MELS to have its own RM
2017-04-27 15:22:24 +01:00
Luke Barnard
2012513c0e Allow MELS to have its own RM
This inserts a RM if any of the events in a MELS if the RM is tracking an event within it.

Fixes https://github.com/vector-im/riot-web/issues/3749
2017-04-27 14:16:50 +01:00
Luke Barnard
8f7359fce1 Only show jumpToReadMarker bar when RM !== RR
If RM !== RR, use the pos. of the RM to determine whether it is visible, as before.
2017-04-27 14:03:54 +01:00
Matthew Hodgson
fc774e8508 Merge pull request #808 from matrix-org/rob/shiny-avatars
(Room)?Avatar: Request 96x96 avatars on high DPI screens
2017-04-27 12:02:52 +01:00
Robert Swain
39de37b547 *Avatar: Calculate thumbnail dimensions based on devicePixelRatio
Multiply the dimension by the device pixel ratio and then round it to
get the width/height of the thumbnail to use in the request.
2017-04-27 12:38:03 +02:00
Luke Barnard
63224ff164 Add mx_EventTile_emote class 2017-04-26 18:00:25 +01:00
David Baker
1913a32fbd Merge pull request #841 from matrix-org/luke/fix-double-dialogs
Fix dialog reappearing after hitting Enter
2017-04-26 17:47:53 +01:00
Luke Barnard
5f0ecc588f Fix dialog reappearing after hitting Enter
Fixes https://github.com/vector-im/riot-web/issues/3714

https://github.com/vector-im/riot-web/issues/3714#issuecomment-297460620 :
> It's as if there are two dialogs and as one closes, the other one appears. For some reason matrix-org/matrix-react-sdk#822 is causing this.
> I've realised it's because the `priorActiveElement` is probably the button that opened the dialog. If this is focused and the enter key is released, this triggers a keyPress which fires once the dialog has closed and the button has been focused 😬 the BaseDialog only calls stopPropagation _onKeyDown.

The soln. was to submit the dialog as finished `onKeyUp`. This means the `priorActiveElement` is focussed after any key events that should be associated with the dialog.
2017-04-26 17:37:52 +01:00
David Baker
4910a225d1 Fix spinner that shows until the first sync
Listen for the sync event and update when it changes
2017-04-26 17:26:53 +01:00
Luke Barnard
9ac06d4c79 Merge pull request #839 from matrix-org/dbkr/spinner_until_sync
Show spinner until first sync has completed
2017-04-26 14:34:08 +01:00
David Baker
df283dae47 Show spinner until first sync has completed
Shows the 'forward paginating' spinner until the first sync has
completed.

Fixes https://github.com/vector-im/riot-web/issues/3318
2017-04-26 14:05:09 +01:00
David Baker
04f44e9201 Style fixes for LoggedInView
PRing this becaise I was going to change LoggedInView, so did
some code style updates, but then decided the do the change
elsewhere.
2017-04-26 13:48:03 +01:00
Luke Barnard
5cbf77b53e Merge pull request #834 from matrix-org/dbkr/fix_registration_custom_server
Fix specifying custom server for registration
2017-04-26 10:41:29 +01:00
Luke Barnard
4207bf31f2 Merge pull request #833 from matrix-org/luke/improve-country-dd
Improve country dropdown UX and expose +prefix
2017-04-26 10:25:10 +01:00
David Baker
78b452818c Merge pull request #836 from t3chguy/fix_UserSettingsStore
Fix user settings store
2017-04-26 10:11:32 +01:00
Michael Telatynski
6cbd04045d change the now working defaults
to what they effectively were when defaultValue was broken
(hopefully tests now pass)

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-25 22:17:25 +01:00
David Baker
fa9c2d1373 Fix specifying custom server for registration
Broken by 9cd7914ea5
(ServerConfig interface changed but Registration not updated)
2017-04-25 19:21:09 +01:00
David Baker
c1336f09fe Merge remote-tracking branch 'origin/develop' into luke/improve-country-dd 2017-04-25 18:06:04 +01:00
Luke Barnard
96e7479d8b Show "jump to message" when message is not paginated 2017-04-25 17:19:36 +01:00
Luke Barnard
71a119376c Guard against no children 2017-04-25 17:05:54 +01:00
Luke Barnard
1e9a2e80e9 Remove empty line 2017-04-25 11:57:03 +01:00
Luke Barnard
0d4ab07250 Fix not autoSelecting first item in dropdown
Fixes https://github.com/vector-im/riot-web/issues/3686
2017-04-25 11:53:14 +01:00
Luke Barnard
aac0238882 Remove redundant API for getting country prefix 2017-04-25 11:25:14 +01:00
Luke Barnard
336462366e Improve country dropdown UX and expose +prefix
A prefix is now exposed through a change to the API for onOptionChange. This now returns the entire country object which includes iso2, prefix etc.

This also shows the prefix in the Registration and Login screens as a prefix to the phone number field.
2017-04-25 11:21:47 +01:00
Luke Barnard
5c83d4d2ed Merge pull request #832 from t3chguy/ude_break_out_room
show the room name in the UDE Dialog
2017-04-25 10:04:23 +01:00
Michael Telatynski
e64b647799 show the room name in the UDE Dialog
especially useful when it appears after you switch rooms

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-25 09:26:21 +01:00
Matthew Hodgson
29e48d1801 Merge pull request #826 from matrix-org/matthew/mels-profile-changes
summarise profile changes in MELS
2017-04-25 00:18:19 +01:00
Matthew Hodgson
63dac026a8 remove spammy log 2017-04-25 00:17:46 +01:00
Michael Telatynski
3997974f0f remove debug console log (ignore its content pls)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:16:15 +01:00
Michael Telatynski
9ae9aeea07 lets improve forwarding :D
ditch double quotes
stop caring about rhs state
always call hide_right_panel, nop if already hidden
use new restore_right_panel to bring it back if it was visible pre-us

actually tell things that we sent a message or failed in doing so
now the UDE works :D

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:14:45 +01:00
Michael Telatynski
bfba25f3da we don't care about rhs state anymore as we can just restore it sanely
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:10:14 +01:00
Michael Telatynski
4cf9e0c1ae Create a way to restore last state of the rhs panel.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 22:00:59 +01:00
Michael Telatynski
ee560a969a upon forwarding message to current room, explicitly remove clear from aux
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 20:17:29 +01:00
Michael Telatynski
fbca0e0d0d correct cancel appearing when it shouldn't
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-24 20:03:07 +01:00
turt2live
e6fd380947 Change redact -> remove for clarity
Addresses vector-im/riot-web#2814

Non-technical users may not understand what 'redact' means and can more easily understand what 'Remove' does. See discussion on vector-im/riot-web#2814 for more information.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-24 12:49:09 -06:00
Michael Telatynski
4285c395f5 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into forward_message
Conflicts:
	src/components/structures/RoomView.js
2017-04-24 18:36:33 +01:00
Luke Barnard
74e92d6c23 Remove DM-guessing code 2017-04-24 15:44:45 +01:00
Matthew Hodgson
1347d9fa65 fix scroll behaviour on macs with no gemini 2017-04-24 12:53:53 +01:00
Matthew Hodgson
6f461f0ebb add in scrollto button 2017-04-24 01:09:57 +01:00
Richard van der Hoff
96e733b487 Merge pull request #825 from matrix-org/matthew/missing-keyboard-modifiers
limit our keyboard shortcut modifiers correctly
2017-04-23 12:02:29 +01:00
Matthew Hodgson
24f2aed45f summarise profile changes in MELS
fixes https://github.com/vector-im/riot-web/issues/3463
2017-04-23 04:05:50 +01:00
Matthew Hodgson
a2be764681 display err.message to user if available in error msgs 2017-04-23 01:48:27 +01:00
Matthew Hodgson
db996f678c show better errors when slash commands fail 2017-04-23 01:32:51 +01:00
Matthew Hodgson
7854cac61d hook up keyb shortcuts for roomdir 2017-04-23 01:00:44 +01:00
Matthew Hodgson
fa033e6116 limit our keyboard shortcut modifiers correctly
fixes https://github.com/vector-im/riot-web/issues/3614
2017-04-23 00:49:14 +01:00
Matthew Hodgson
34c1a8f3cf make autofocus explicit on errordialog as it autoFocus attr seems unreliable 2017-04-22 17:28:48 +01:00
Matthew Hodgson
0e5006b041 typo 2017-04-22 17:28:28 +01:00
Matthew Hodgson
e18e965eb8 missing key attr 2017-04-22 16:26:39 +01:00
Matthew Hodgson
0ac836919d Merge pull request #822 from t3chguy/BaseDialog_restore_focus
Remember element that was in focus before rendering dialog
2017-04-22 16:05:34 +01:00
Michael Telatynski
33e841a786 move user settings outward and use built in read receipts disabling
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-22 15:40:29 +01:00
Michael Telatynski
6a657a6555 Remember element that was in focus before rendering dialog
restore focus to that element when we unmount

also remove some whitespace because ESLint is a big bad bully...

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-22 05:44:27 +01:00
Matthew Hodgson
aa0658d9ce Merge pull request #802 from t3chguy/t3chguy/file_download_improvements
File Download Consistency
2017-04-22 02:59:25 +01:00
Matthew Hodgson
6c177bc617 Merge pull request #806 from t3chguy/t3chguy/show_access_token
Show Access Token under Advanced in Settings
2017-04-22 02:51:54 +01:00
Matthew Hodgson
ad76dd0dd1 Merge pull request #810 from t3chguy/t3chguy/settings_versions_improvements
Link tags/commit hashes in the UserSettings version section
2017-04-22 02:38:30 +01:00
Matthew Hodgson
febd9c637e Merge pull request #813 from t3chguy/RoomSettings_close_focus_composer
On return to RoomView from auxPanel, send focus back to Composer
2017-04-22 02:08:48 +01:00
Matthew Hodgson
ba0bb677c8 Merge pull request #817 from turt2live/travis/rw-3626
Change presence status labels to 'for' instead of 'ago'
2017-04-22 01:45:21 +01:00
Matthew Hodgson
304136766d Merge pull request #816 from t3chguy/ability_to_disable_scalar
Disable Scalar Integrations if urls passed to it are falsey
2017-04-22 01:39:20 +01:00
Matthew Hodgson
872d0e0f50 Merge branch 'develop' into travis/hide-read-receipts 2017-04-22 01:36:38 +01:00
Matthew Hodgson
b36eb90a10 Merge pull request #819 from turt2live/travis/no-typing-notifs
Add option to not send typing notifications
2017-04-22 01:35:07 +01:00
Matthew Hodgson
1faecfd0f7 fix sticky headers on resize 2017-04-22 01:29:48 +01:00
Matthew Hodgson
ec6a1c4c75 recalculate roomlist when your invites change 2017-04-22 01:16:25 +01:00
turt2live
64e416e117 Add option to not send typing notifications
Addresses vector-im/riot-web#3220

Fix applies to both the RTE and plain editor.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-21 14:50:26 -06:00
turt2live
e4c4adc517 Add option to hide other people's read receipts.
Addresses vector-im/riot-web#2526

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-21 14:28:28 -06:00
turt2live
2d39b59556 Change presence status labels to be more clear.
As per vector-im/riot-web#3626 the current labels are unclear. Changing the verbage should make it more clear.

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-21 13:41:37 -06:00
Michael Telatynski
8e9f52e217 Disable Scalar Integrations if urls passed to it are falsey
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 19:46:19 +01:00
Michael Telatynski
589d41e3b9 DRY the code a little bit in anticipation of #813
which sends a `focus_composer` onCancelClick()

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 18:51:49 +01:00
Michael Telatynski
fdc26a490a On return to RoomView from auxPanel, send focus back to Composer
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 18:45:28 +01:00
Luke Barnard
ae8d04b35d Merge pull request #805 from matrix-org/luke/feature-read-marker
Sync RM across instances of Riot
2017-04-21 16:52:46 +01:00
Luke Barnard
29c2bd3d18 reset last_rr_sent on error
Indicate that setting the RR was a failure and that hitting the API should be retried (in the case where the errcode !== "M_UNRECOGNISED")
2017-04-21 16:46:36 +01:00
Luke Barnard
19d6d1ef4b Merge pull request #811 from matrix-org/luke/login-ui
First iteration on improving login UI
2017-04-21 16:25:16 +01:00
Luke Barnard
9c4c706120 Remove :server.name for custom servers
Custom servers may not be configured such that their domain name === domain part.
2017-04-21 16:09:11 +01:00
Michael Telatynski
64112da25c only re-show right panel if it was visible before we were mounted
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 14:13:01 +01:00
Michael Telatynski
b6ca16fc2f add RoomView state for message being forwarded
add RoomView action handler for message forward
clear forwardingMessage onCancelClick RoomView
change var into const in render RoomView
load ForwardMessage from rooms.ForwardMessage
if there is a messageForwarding object in state show panel in aux

Create ForwardMessage class

Modify RoomHeader so that it shows the cancel button more greedily

reskindex

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 13:50:22 +01:00
Matthew Hodgson
b0288ebd89 fix stupid typos in RoomList's shouldComponentUpdate 2017-04-21 12:40:13 +01:00
Luke Barnard
2b9cb999ba autoFocus PasswordLogin 2017-04-21 11:50:19 +01:00
Luke Barnard
9cd7914ea5 Finishing off the first iteration on login UI
This makes the following changes:
 - Improve CountryDropdown by allowing all countries to be displayed at once and using PNGs for performance (trading of quality - the pngs are scaled down from 32px to 25px)
 - "I want to sign in with" dropdown to select login method
 - MXID login field that suffixes HS domain (whether custom or matrix.org) and prefixes "@"
 - Email field which is secretly the same as the username field but with a different placeholder
 - No more login flickering when changing ServerConfig (!) fixes https://github.com/vector-im/riot-web/issues/1517

This implements most of the design in https://github.com/vector-im/riot-web/issues/3524 but neglects the phone number login:
![login_with_msisdn](https://cloud.githubusercontent.com/assets/1922197/24864469/30a921fc-1dfc-11e7-95d1-76f619da1402.png)

This will be updated in another PR to implement desired things:
 - Country code visible once a country has been selected (propbably but as a prefix to the phone number input box.
 - Use square flags
 - Move CountryDropdown above phone input and make it show the full country name when not expanded
 - Auto-select country based on IP
2017-04-21 11:37:08 +01:00
Michael Telatynski
bbd1f34336 Prepend REACT_SDK_VERSION with a v to match riot-web version output
Add simple helper to construct version/commit hash urls
var -> let/const and prepend olmVersionString with v for same reason

for both matrix-react-sdk and riot-web, if unknown/local don't do anything
else try to create a link to the commit hash/tag name

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 03:04:34 +01:00
Michael Telatynski
be9b858193 focus on composer after jumping to bottom
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-21 01:06:00 +01:00
Robert Swain
3d507e9840 (Room)?Avatar: Request 96x96 avatars on high DPI screens 2017-04-21 00:05:52 +02:00
Matthew Hodgson
35a16edccc oops, actually refresh roomlist when its state changes! 2017-04-20 15:47:59 +01:00
Matthew Hodgson
0d8d3c6710 HOW DID THIS EVER WORK? 2017-04-20 15:15:20 +01:00
Luke Barnard
67089cb527 If new RR-RM API not implemented, fallback to RR-only API 2017-04-20 14:34:59 +01:00
Matthew Hodgson
238f59dc87 return the event from RoomTile's onClick to distinguish clicks from keypresses 2017-04-20 14:16:45 +01:00
Matthew Hodgson
e69ea68133 unbreak stack overflow which fires on tests due to mocked timers 2017-04-20 13:53:36 +01:00
Matthew Hodgson
5a3b4b6a60 various bug fixes:
don't redraw RoomList when the selectedRoom changes
keep passing selectedRoom through to RoomTiles so they have correct initial state
handle onAccountData at the RoomList, not RoomTile level
Fix some typos
2017-04-20 01:12:57 +01:00
Matthew Hodgson
90f526bdeb autofocus doesn't seem to work on this button 2017-04-20 00:42:13 +01:00
Matthew Hodgson
9f99224a1f fix bugs from PR review 2017-04-19 17:59:06 +01:00
Luke Barnard
a4ba5f041c Remove log, reinstate comment 2017-04-19 10:46:08 +01:00
Luke Barnard
edeaef8c2f Initialise last_rm_sent_event_id 2017-04-19 10:28:38 +01:00
Luke Barnard
81bf2be13b Make note of inconsistant roomReadMarkerTsMap
This will become redundant when there is server support for directionality of the RM
2017-04-19 10:27:43 +01:00
Luke Barnard
a787ee8480 Remove spammy log 2017-04-19 10:20:53 +01:00
Luke Barnard
00cf5b5918 Revert change 2017-04-19 10:20:24 +01:00
Luke Barnard
e32f153573 Remove Room.accountData listener on unmount 2017-04-19 10:18:25 +01:00
Luke Barnard
28818b857a Remove log 2017-04-19 10:17:44 +01:00
Luke Barnard
81bdfe2126 Update to match renamed API 2017-04-19 10:14:57 +01:00
Luke Barnard
566a315242 Initial commit on riot-web#3524 (login UI update) 2017-04-19 10:08:04 +01:00
Matthew Hodgson
fb6252a16b fix invite highlights take 3 2017-04-19 00:16:17 +01:00
Matthew Hodgson
4a9c168682 fix invite highlights 2017-04-19 00:13:01 +01:00
Matthew Hodgson
abf2300c0d highlight invites correctly 2017-04-19 00:09:03 +01:00
Matthew Hodgson
093b9a0b52 kick the roomtile on RoomState.members 2017-04-18 23:29:28 +01:00
Matthew Hodgson
8389a67c75 we don't need RoomTile specific focus in the end 2017-04-18 22:54:30 +01:00
Matthew Hodgson
015a4480e2 oops, wire up Room.receipt again, and refresh roomtiles on Room.timeline 2017-04-18 22:36:54 +01:00
Michael Telatynski
61071b89df Show Access Token under Advanced in Settings
behind a Spoiler, onClick = spoil+select

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-18 19:55:08 +01:00
Matthew Hodgson
c1c3956df4 fix bugs, and handle shortcircuit react when updating roomtile 2017-04-18 19:28:24 +01:00
Matthew Hodgson
062963b32f move focus-via-up/down cursors to LeftPanel 2017-04-18 17:49:28 +01:00
Matthew Hodgson
4fb9635175 nudge focus shortcut code further to working 2017-04-18 17:12:42 +01:00
Luke Barnard
c431c9ab22 Clarify comment 2017-04-18 15:18:21 +01:00
Luke Barnard
d38520dfb4 Undo change in ghost RM logic
Put a XXX to indicate that the ghost tile should be replaced with something mor e stable. As it stands, the ghost will appear, potentially at a different position to the RMs actual position
2017-04-18 15:17:42 +01:00
Luke Barnard
d33afa99ab marker -> event_id 2017-04-18 15:13:05 +01:00
Luke Barnard
4b5364e9ae Merge branch 'develop' into luke/feature-read-marker 2017-04-18 14:45:18 +01:00
Luke Barnard
28ed69b617 m.read_marker -> m.fully_read 2017-04-18 14:44:43 +01:00
Matthew Hodgson
9591ad31e6 fix bugs, experiment with focus pulling, make it vaguely work 2017-04-18 02:43:29 +01:00
Matthew Hodgson
da569c2c8d add constantTimeDispatcher and use it for strategic refreshes.
constantTimeDispatcher lets you poke a specific react component to do something
without having to do any O(N) operations.  This is useful if you have thousands
of RoomTiles in a RoomSubList and want to just tell one of them to update,
without either having to do a full comparison of this.props.list or have each
and every RoomTile subscribe to a generic event from flux or node's eventemitter

*UNTESTED*
2017-04-17 21:06:37 +01:00
Michael Telatynski
6f0c3b1c03 Pass file name (as name) to the ImageView modal
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-17 14:50:34 +01:00
Michael Telatynski
a0c498e8ba Make Download behaviour consistent with that of E2E (iframed) download butttons (ACTUALLY DOWNLOAD)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-17 14:37:24 +01:00
Matthew Hodgson
691639d1e0 track RoomTile focus in RoomList, and stop the RoomList from updating during mouseOver 2017-04-15 13:25:32 +01:00
Matthew Hodgson
1189368aab add a class to remove evil blue outlines 2017-04-15 00:30:48 +01:00
Luke Barnard
7ae13f5889 Merge pull request #762 from lieuwex/hide-link-preview-quote
Don't show link preview when link is inside of a quote
2017-04-12 15:31:43 +01:00
Luke Barnard
a29d8c2af2 Merge pull request #765 from t3chguy/t3chguy/escape-closes-user-settings
Escape closes UserSettings
2017-04-12 15:18:19 +01:00
Luke Barnard
9c9dc84f45 Remove redundant setting of readMarkerEventId 2017-04-12 15:12:37 +01:00
Luke Barnard
249e42747b Fix bug where roomId was expected to be a property on timelineSet 2017-04-12 15:09:56 +01:00
Luke Barnard
1c25ed89b0 Initial implementation of using new RM API
As detailed here https://docs.google.com/document/d/1UWqdS-e1sdwkLDUY0wA4gZyIkRp-ekjsLZ8k6g_Zvso/edit, the RM state is no longer kept locally, but rather server-side. The client now uses it's locally-calculated RM to update the server and receives server updates via the per-room account data.

The sending of the RR has been bundled in to reduce traffic when sending both. In effect, whenever a RR is sent the RM is sent with it but using the new API.

This uses a js-sdk change which has set to be finalised and so might change.
2017-04-12 15:05:39 +01:00
Luke Barnard
424aae6b91 Prevent the ghost and real RM tile from both appearing 2017-04-12 15:04:38 +01:00
David Baker
726cb43fee Merge pull request #794 from matrix-org/luke/feature-textual-pls
Implement user power-level changes in timeline
2017-04-12 09:52:53 +01:00
David Baker
d4dc16545a Fix people section vanishing on 'clear cache'
Stop the client first

Fixes https://github.com/vector-im/riot-web/issues/3610
2017-04-11 18:16:29 +01:00
David Baker
811cd79206 Make the clear cache button work on desktop
Fixes https://github.com/vector-im/riot-web/issues/3597
2017-04-10 17:39:27 +01:00
Luke Barnard
8b4836b60e Refactor roles into Roles.js
So that the mapping between a numerical power level and a "role" are done in one place. PowerSelector.js has been modified to use the same mapping.
2017-04-10 10:09:26 +01:00
Matthew Hodgson
6dbb4e9002 fix the warning shown to users about needing to export e2e keys
apparently when we added the buttons to export e2e keys to the Logout button, we didn't change the text warning the user that e2e export was coming soon.  likewise when changing password and forgetting password (where we didn't even have a button to export keys)
2017-04-07 23:34:11 +01:00
Richard van der Hoff
6352784a2c Merge pull request #795 from matrix-org/luke/fix-pagination3
Fix infinite pagination/glitches with pagination
2017-04-07 13:24:22 +01:00
Luke Barnard
4342a2ad47 Merge pull request #793 from matrix-org/luke/fix-guest-team-token-home-page
Fix issue where teamTokenMap was ignored for guests
2017-04-07 11:53:00 +01:00
Luke Barnard
d218f90cde Fix infinite pagination/glitches with pagination
I think this was being caused by a bug introduced in 47f29b that meant that `backwards` was actually being used as `forwards`.
2017-04-07 11:34:31 +01:00
Luke Barnard
a815788af8 Fix issue where teamTokenMap was ignored for guests
This was an issue because guests do not log in with a teamToken, it is implicitly set by MatrixChat when it mounts. The fix is to view_home_page when a login occurs and MatrixChat has this._teamToken set.
2017-04-06 17:10:32 +01:00
Luke Barnard
6010350ce5 Implement power-level changes in timeline
Fixes https://github.com/vector-im/riot-web/issues/266
2017-04-06 17:02:35 +01:00
Luke Barnard
6c09a08a7d Click emote sender -> insert display name into composer
Also, fix the imports TextualBody.
2017-04-06 14:08:59 +01:00
Luke Barnard
880a48494b Merge pull request #785 from matrix-org/luke/fix-scroll-past-big-event
Fix scroll token selection logic
2017-04-06 12:36:30 +01:00
Luke Barnard
5f8a7b46a8 Remove redundant setState call, always focus composer after sync 2017-04-06 11:44:25 +01:00
Luke Barnard
95b40a976c Replace sdkReady with firstSyncPromise, add mx_last_room_id
- Create a promise that will serve as a lock to be blocked on by things that need to wait for the first sync before accessing state.
- Use this promise to block `view_room` calls until a sync has occured instead of just dropping them silently if the sync hasn't happened yet.
- Store the current room ID in a localStorage item `mx_last_room_id` when `view_room` fires. This persists the last viewed room ID so that it can be restored on refresh, browser quit. This replaces the previous logic which set the room following a sync based on the most recent unread room.
2017-04-06 11:38:06 +01:00
Luke Barnard
b0a04e6f00 Clarify comment 2017-04-05 17:52:05 +01:00
Luke Barnard
423babdb17 Remove fairly redundant condition
Making sure that a node is intersected by the bottom of the wrapper is a bit overkill, given that we iterate from the bottom. This also prevents the scenario of having no nodes that are not precisely intersected, but possibly straddling the bottom of the wrapper.
2017-04-05 17:51:07 +01:00
Luke Barnard
47f29b9454 Simplify simulated unfill 2017-04-05 17:48:24 +01:00
Luke Barnard
106ce90916 Change "Unread messages." to "Jump to first unread message."
Also get rid of the "up" arrow so as not to indiciate direction. This is important because in future the RM will not be based on what has been paginated into the client (but instead RM will be handled server-side) and thus we cannot assert any kind of direction on it relative to the events in the viewport.
2017-04-04 16:31:28 +01:00
Luke Barnard
5737994957 Clarify and simplfiy unpagination logic 2017-04-04 13:28:26 +01:00
Luke Barnard
94fe9999db Reimplement _saveScrollState
The actual fix to https://github.com/vector-im/riot-web/issues/3175 is this change to `_saveScrollState`, which is to pick the trackedScrollToken based on which node is intersected by the bottom of the scroll panel. This is opposed to the previous logic that picked based on which node was the first from the bottom to be above the bottom of the viewport.

In the case where the viewport bottom does not intersect any events, the topmost event is used.
2017-04-04 11:55:53 +01:00
Luke Barnard
8e5a83a056 Reduce number of unpaginated events by 1
When unpaginating in the backwards direction
2017-03-30 18:02:33 +01:00
Luke Barnard
fff83ba234 Fix the onFinished for timeline pos dialog
This was causing a blank RoomView because it was trying to work with `room_id = undefined`.
2017-03-30 17:18:22 +01:00
David Baker
11a1c8099c Merge pull request #776 from matrix-org/luke/fix-directory-search-enter
Only join a room when enter is hit if the join button is shown
2017-03-30 09:59:42 +01:00
David Baker
dff79984a6 Merge remote-tracking branch 'origin/develop' into dbkr/remove_session_load_error 2017-03-29 18:24:06 +01:00
David Baker
22b0f69ac9 Merge pull request #782 from matrix-org/dbkr/matrixchat_tidy
Use Login & Register via component interface
2017-03-29 18:23:36 +01:00
Luke Barnard
5a411ba005 Merge pull request #781 from matrix-org/luke/fix-flaky-tests-maybe
Attempt to fix the flakyness seen with tests
2017-03-29 17:32:56 +02:00
David Baker
a6612bb8ad Remove non-functional session load error
MatrixChat was trying to display an error if the session failed to
restore, but it was never actually being shown because it was just
set as a member variable and therefore never actually caused
a re-render for the error to be displayed. Almost all errors are
caught by _restoreFromLocalStorage which displays the fancy dialog
if your session can't be restored, so I'm not convinced this ever
even tried to do anything anyway. Remove it.
2017-03-29 16:23:18 +01:00
David Baker
cee2628b41 Use Login & Register via component interface
Login & Register were being imprted directly for some reason,
rather than going via the normal component interface.

Should be functionally identical.
2017-03-29 15:24:47 +01:00
David Baker
e139f5212a Remove React warning
Fire onOptionChange in componentWillMount, otherwise end up trying
to update state effectively in a render method, which is bad.
2017-03-29 15:05:49 +01:00
Luke Barnard
2146e89c09 Attempt to fix the flakyness seen with tests
Specifically:
```

JS 2.1.1 (Linux 0.0.0) joining a room over federation should not get stuck at a spinner FAILED
	Did not find exactly one match (found: 0) for componentType:function (props, context, updater) {
```

actually meant that the room directory wasn't displayed - probably because the dispatch `view_room_directory` ended up on another tick of the event loop, meaning that the directory wasn't displayedi. The fix attempted in ths commit is to use `this._setPage` instead to view the directory. This uses `setState` to set the screen to the directory, so I'm not entirely convinced this will solve the problem (as `setState` may also end up doing things on another tick.

and

```
JS 2.1.1 (Linux 0.0.0) loading: MatrixClient rehydrated from stored credentials: shows a room view if we followed a room link FAILED
	MatrixChat still not ready after 5 tries
	awaitRoomView@/home/travis/build/vector-im/riot-web/test/all-tests.js:201363:90
```

was happening probably because in the handler for the `sync` event in `MatrixChat` (around line 840), there was one case in which the `ready` state may not be true (causing all 5 attempts to fail), and this case relied on `starting_room_alias_payload`. This `starting_room_alias_payload` is now redundant because of `initialScreenAfterLogin`, which was added recently.
2017-03-29 15:02:28 +01:00
David Baker
90242c2c85 Only send local echo RR if we're at the end 2017-03-29 14:12:50 +01:00
David Baker
3373f00d90 Only clear the local notification count if needed
Only zero the local notification count when we actually send a
read receipt, otherwise we cause a re-render of the RoomList every
time the user moves the cursor in the window, basically.
2017-03-29 14:08:31 +01:00
Luke Barnard
98a0b804c7 Only join a room when enter is hit when the join button is shown 2017-03-28 13:02:13 +01:00
David Baker
91d10646b5 Merge pull request #775 from matrix-org/luke/fix-RoomList-notif-flashing
Improve zeroing of RoomList notification badges
2017-03-28 11:33:38 +01:00
Luke Barnard
4a0988f83e Do not send the room with action
By not sending the room with the action, we prevent its state from being updated by registered views listening for on_room_read
2017-03-28 11:26:40 +01:00
Luke Barnard
f4dc7ae8b1 Improve zeroing of RoomList notification badges
Use an action and force an update when zeroing the number of notifications in a room. This is better than waiting for a `render` to happen at some point. This will hopefully fix https://github.com/vector-im/riot-web/issues/3257
2017-03-28 10:38:57 +01:00
David Baker
e1b7347810 Merge pull request #774 from matrix-org/luke/fix-voip-bar-hidden
Fix VOIP bar hidden on first render of RoomStatusBar
2017-03-28 10:03:21 +01:00
Luke Barnard
ffd8ef84d6 Fix VOIP bar hidden on first render of RoomStatusBar
componentDidUpdate is not called for the initial render of a React component (https://facebook.github.io/react/docs/react-component.html#componentdidupdate)

componentWillMount is used so that the initial state and props of RoomStatusBar can also trigger props.isVisible.

This fixes https://github.com/vector-im/riot-web/issues/3181
2017-03-28 09:30:41 +01:00
David Baker
a38a954fb5 Merge pull request #772 from matrix-org/dbkr/disinvite_is_not_kick
Correct confirm prompt for disinvite
2017-03-27 17:42:39 +01:00
Luke Barnard
aa486b605d Merge pull request #773 from matrix-org/luke/fix-login-flash-new-state
Add state loggingIn to MatrixChat to fix flashing login
2017-03-27 18:24:49 +02:00
David Baker
c743663f7d Merge pull request #771 from matrix-org/dbkr/invite_always_show_valid_mxid
Fix bug where you can't invite a valid address
2017-03-27 17:20:51 +01:00
Luke Barnard
c650cfffac logged_in -> loggedIn
Also added `loggingIn` to `initialState` and removed some commented code.
2017-03-27 17:14:39 +01:00
David Baker
db3339de33 I still can't type 2017-03-27 17:03:59 +01:00
David Baker
9125c1b2cc I can't type 2017-03-27 17:00:05 +01:00
David Baker
a3efa45795 Correct confirm prompt for disinvite
It should be 'disinvite' not 'kick', and probably doesn't really
need a reason.
2017-03-27 16:53:00 +01:00
David Baker
a230354dbe Fix bug where you can't invite a valid address
Always show the entered text as an option if it's a valid address,
otherwise there's no way to invite an address that is valid and
also returns other mxids in the search results.

Fixes https://github.com/vector-im/riot-web/issues/3496
2017-03-27 16:40:01 +01:00
Luke Barnard
30c5af35e5 Add state loggingIn to MatrixChat to fix flashing login
To prevent the login screen from flashing when refreshing the app, use some state to indicate that a login is in progress, and OR that with the existing `loading` boolean to show the `<Spinner>` instead of the default `<Login>`.

This might be too invasive, and a default spinner may be better.
2017-03-27 16:39:04 +01:00
Luke Barnard
7eb3a776dc Merge pull request #761 from matrix-org/luke/fix-people-section2
Fix people section DropTarget and refactor Rooms
2017-03-27 15:52:28 +02:00
Luke Barnard
a4b4c3feb8 Read Receipt offset
Read receipts were always one read receipt to the left further than they should have been. This fixes that and simplifies the logic.
2017-03-27 14:34:05 +01:00
Luke Barnard
dca02d916a Merge branch 'develop' into luke/fix-people-section2 2017-03-27 09:45:14 +01:00
David Baker
a8d85ca2ad Merge pull request #756 from matrix-org/dbkr/add_msisdn
Support adding phone numbers in UserSettings
2017-03-24 10:54:22 +00:00
David Baker
5e3b991ec2 PR feedback fixes 2017-03-24 10:45:38 +00:00
David Baker
d5272149f6 Another unmounted guard 2017-03-22 16:42:44 +00:00
David Baker
b58d8bffe1 More PR feedback
Unmounted guards, extra semicolon, return early to lose indent
level, add keys.
2017-03-22 16:41:08 +00:00
Kegsay
3d71cb8325 Merge pull request #768 from matrix-org/kegan/memleaks-are-bad-mkay
Add canResetTimeline callback and thread it through to TimelinePanel
2017-03-22 16:39:07 +00:00
David Baker
6b78440466 Unmounted guard 2017-03-22 16:36:42 +00:00
David Baker
e39979a61f Convert to old style react class 2017-03-22 16:15:45 +00:00
David Baker
cca607d469 Make phone number form a bit more semantic 2017-03-22 15:39:09 +00:00
David Baker
4cd24d15d4 Factor out AddPhoneNumber to a separate component 2017-03-22 15:18:27 +00:00
Kegan Dougal
4cebded04f Add canResetTimeline callback and thread it through to TimelinePanel 2017-03-22 15:06:52 +00:00
David Baker
6a37fc4325 Comment typos 2017-03-22 12:00:16 +00:00
David Baker
6a56828974 Just return the promise if it's a bg request
This makes the code a bit neater.
2017-03-22 11:25:33 +00:00
David Baker
5ae7d5e4b2 More comments 2017-03-22 11:13:00 +00:00
David Baker
e5a5ca9efc Don't set busy state at all for background request 2017-03-22 10:53:15 +00:00
David Baker
ec63e18b42 Show spinner whilst processing recaptcha response
The fact that we showed no feedback whilst submitting the captcha
response was causing confusion on slower connections where this
took a nontrivial amount of time.

Takes a new flag from the js-sdk that indicates whether the
request being made is a background request, presenting a spinner
appropriately.

Requires https://github.com/matrix-org/matrix-js-sdk/pull/396
2017-03-21 18:40:41 +00:00
David Baker
d5f7b3983b Merge remote-tracking branch 'origin/develop' into dbkr/add_msisdn 2017-03-21 13:44:55 +00:00
David Baker
4a29d674f8 Merge pull request #750 from matrix-org/dbkr/msisdn_signin_2
Login / registration with phone number, mark 2
2017-03-21 13:43:11 +00:00
David Baker
9ccda7ed81 Merge remote-tracking branch 'origin/develop' into dbkr/threepid_display 2017-03-21 11:11:45 +00:00
Michael Telatynski
69c3bd7f80 Escape closes UserSettings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-03-20 12:13:21 +00:00
Matthew Hodgson
f65cc940c3 Merge pull request #764 from lieuwex/fix-extraneous-space-emote
Fix extraneous leading space in sent emotes
2017-03-19 21:34:13 +00:00
Matthew Hodgson
bf8973ad33 avoid leading space in HTML /me too 2017-03-19 21:33:18 +00:00
Lieuwe Rooijakkers
c697b48f99 fix leading extraneous space in emotes 2017-03-19 21:52:24 +01:00
Aviral Dasgupta
7891f9b246
UnknownBody: add explanatory title 2017-03-19 15:21:12 +05:30
Matthew Hodgson
df63c779dd clarify that redact === delete 2017-03-19 02:34:25 +00:00
Keyvan Fatehi
25a4f4e3b6 Add ConfirmRedactDialog component
Signed-off-by: Keyvan Fatehi <keyvanfatehi@gmail.com>
2017-03-18 18:58:28 -07:00
Lieuwe Rooijakkers
b3fc1844e8 don't show link preview when link is inside of a quote
Signed-off-by: Lieuwe Rooijakkers <lieuwerooijakkers@gmail.com>
2017-03-18 11:50:49 +01:00
David Baker
92d5f55a46 Merge remote-tracking branch 'origin/develop' into dbkr/threepid_display 2017-03-17 13:55:07 +00:00
Luke Barnard
7ecabe49d2 Fix people section DropTarget and refactor Rooms
- Set the verb for the people section to "tag as direct chat". This requires some CSS modifications to Riot because it's a long bit of text relative to, say, "demote".
 - Because it's quite useful to be able to set the DM status of a room with just a boolean, add a convenience function for guessing a DM member and setting the DM flag on that room with the resulting member.
2017-03-17 11:59:22 +00:00
David Baker
f8a1634720 Merge pull request #759 from matrix-org/luke/display-redactions-better
Display timestamps and profiles for redacted events
2017-03-16 17:14:10 +00:00
Luke Barnard
d4ed9e816b Display timestamps and profiles for redacted events
This is part of fixing https://github.com/vector-im/riot-web/issues/3390
2017-03-16 17:00:10 +00:00
David Baker
b06111202d Display threepids slightly prettier
ie. Put a + on the front of msisdns.
2017-03-16 15:16:24 +00:00
David Baker
af8c3edba6 Support adding phone numbers in UserSettings 2017-03-16 14:56:26 +00:00
Luke Barnard
e04a368f7e Merge pull request #755 from matrix-org/luke/export-e2e-on-logout
Add "Export E2E keys" option to logout dialog

Tests were failing due to flaky test, fixed in 544a65
2017-03-16 14:53:06 +00:00
Kegan Dougal
544a6593e1 Unregister the UploadBar event listener on unmount 2017-03-16 14:19:17 +00:00
Luke Barnard
b21f016d37 Add "Export E2E keys" option to logout dialog
Fixes https://github.com/vector-im/riot-web/issues/3184
2017-03-16 14:18:18 +00:00
David Baker
67757a16f3 Don't remove the line that gets the error message 2017-03-16 12:54:18 +00:00
Luke Barnard
ed22a74eaf Fix People section a bit
This does two things:
 - Sets `editable` to true for the "People" `RoomSubList` so that people can be dragged to favourites. This has the downside that you can drag a "People" to "Rooms", but it won't set the direct chat flag. This is because im.vector.fake.direct != m.direct, sadly.
 - Sets `alwaysShowHeader` to `true` so that the `IncomingCallDialog` can be showneven when there are no people in `sortedList`. Fixes https://github.com/vector-im/riot-web/issues/2956.
2017-03-16 11:31:47 +00:00
David Baker
d292a627d8 Handle no-auth-flow error from js-sdk 2017-03-15 16:44:56 +00:00
David Baker
648ad8d66c Merge pull request #753 from matrix-org/luke/fix-register-not-routing
Do routing to /register _onLoadCompleted
2017-03-15 13:18:34 +00:00
Luke Barnard
5330e47b3f Add null check 2017-03-15 13:05:03 +00:00
Luke Barnard
238e48e4af Do routing to /register _onLoadCompleted
_onLoadCompleted happens straight away because Lifecycle finishes loading the session instantly when registration parameters (client_secret etc.) are set.
2017-03-15 12:02:08 +00:00
Richard van der Hoff
3325dd6ede Merge pull request #747 from matrix-org/luke/increase-scrollback-window
Double UNPAGINATION_PADDING again
2017-03-15 11:46:34 +00:00
Luke Barnard
47958180a6 Add null check to start_login 2017-03-14 15:13:36 +00:00
Luke Barnard
5e93dde0dd Merge pull request #746 from matrix-org/luke/merge-RoomTile-context-menus
Merge the two RoomTile context menus into one
2017-03-14 14:19:36 +00:00
David Baker
0e95926925 Merge pull request #748 from matrix-org/luke/logout-after-deactivate
Fix import for Lifecycle
2017-03-14 14:13:08 +00:00
Luke Barnard
17c9fcbb85 Merge branch 'develop' into luke/UDE-file-upload 2017-03-14 13:59:04 +00:00
David Baker
30b442515e Merge pull request #743 from matrix-org/luke/fix-screen-after-login
Decide on which screen to show after login in one place
2017-03-14 13:44:08 +00:00
David Baker
878413f6a4 Support msisdn signin
Changes from https://github.com/matrix-org/matrix-react-sdk/pull/742
2017-03-14 11:50:13 +00:00
Luke Barnard
ba0715ba7c Fix import for Lifecycle
This fixes https://github.com/vector-im/riot-web/issues/2991 although we might need to give more feedback than just showing the login screen. Maybe a dialog that says "your account has been deactivated".
2017-03-13 14:10:14 +00:00
Luke Barnard
d8a30aa848 Double UNPAGINATION_PADDING again 2017-03-13 13:48:15 +00:00
Matthew Hodgson
925bbb79ad fix kick dialog CSS 2017-03-13 00:47:33 +00:00
Matthew Hodgson
8a0b08e7f6 fix CSS for ChatCreateOrReuseDialog.js 2017-03-13 00:03:33 +00:00
Matthew Hodgson
bf64f387ce name class to match file 2017-03-12 23:50:12 +00:00
Matthew Hodgson
3a849bce60 name class to match file 2017-03-12 23:48:57 +00:00
Matthew Hodgson
3aaf37df1a beautify a tonne more errors 2017-03-12 22:59:41 +00:00
Matthew Hodgson
71e0780eee beautify search fail error 2017-03-12 22:24:16 +00:00
Matthew Hodgson
e5a5b5cd08 oops 2017-03-12 20:13:39 +00:00
Matthew Hodgson
b7d5d2fd56 beautify UserSettings error msg
fix up default dialog cancel button
2017-03-12 20:03:14 +00:00
Richard van der Hoff
2786fb0f46 Revert "Support registration & login with phone number (#742)"
This reverts commit 0269562383.

This breaks against the current synapse release. We need to think more
carefully about backwards compatibility.
2017-03-09 18:32:44 +00:00
Matthew Hodgson
7fb9ce2b78 Merge pull request #744 from matrix-org/luke/add-onclick-permalinks
Add onClick to permalinks to route within Riot
2017-03-09 18:29:42 +00:00
Matthew Hodgson
6c7b191577 Merge pull request #605 from SijmenSchoon/feature/pastefiles
Add support for pasting files into the text box
2017-03-09 17:55:58 +00:00
Luke Barnard
1f788feacd Merge the two RoomTile context menus into one
This will require riot-web changes https://github.com/vector-im/riot-web/pull/3395
2017-03-09 17:03:57 +00:00
David Baker
0269562383 Support registration & login with phone number (#742)
* WIP msisdn sign in

* A mostly working country picker

* Fix bug where you'dbe logged out after registering

Stop the guest sync, otherwise it gets 401ed for using a guest
access token for a non-guest, causing us to beliebe we've been
logged out.

* Use InteractiveAuth component for registration

* Fix tests

* Remove old signup code

* Signup -> Login

Now that Signup contains no code whatsoever related to signing up,
rename it to Login. Get rid of the Signup class.

* Stray newline

* Fix more merge failing

* Get phone country & number to the right place

* More-or-less working msisdn auth component

* Send the bind_msisdn param on registration

* Refinements to country dropdown

Rendering the whole lot when the component was rendered just makes
the page load really slow, so just show 2 at a time and rely on
type-to-search.

Make type-to-search always display an exact iso2 match first

* Propagate initial inputs to the phone input

* Support msisdn login

* semicolon

* Fix PropTypes

* Oops, use the 1qst element of the array

Not the array of object keys which has no particular order

* Make dropdown/countrydropdown controlled

* Unused line

* Add note on DOM layout

* onOptionChange is required

* More docs

* Add missing propTypes

* Don't resume promise on error

* Use React.Children to manipulate children

* Make catch less weird

* Fix null dereference

Assuming [0] of an empty list == undefined doesn't work if you're
then taking a property of it.
2017-03-09 10:59:22 +00:00
Luke Barnard
4f7914813d Make UDD appear when UDE on uploading a file
This has highlighted the fact that an unsent image looks very much like a sent image (https://github.com/vector-im/riot-web/issues/3391). Also, the "Resend" status bar doesn't appear when an image is unsent.
2017-03-09 10:44:09 +00:00
Luke Barnard
c98a2144e9 Merge branch 'develop' into luke/add-onclick-permalinks 2017-03-09 09:59:09 +00:00
Luke Barnard
173daddb04 Comment typo 2017-03-09 09:56:52 +00:00
David Baker
676c5c21c1 Merge pull request #739 from matrix-org/luke/visible-redactions
Show message redactions as black event tiles
2017-03-09 09:41:31 +00:00
Luke Barnard
2513bfa612 Add onClick to permalinks to route within Riot 2017-03-08 16:55:44 +00:00
Luke Barnard
c4001b5c5d Use else instead of two returns 2017-03-08 15:11:38 +00:00
Luke Barnard
eca82bdb42 Make sure the screen is set, otherwise ignore screenAfterLogin 2017-03-08 10:45:07 +00:00
Luke Barnard
06a05c351d Decide on which screen to show after login in one place
This follows from a small amount of refactoring done when RTS was introduced. Instead of setting the screen after sync, do it only after login.

This requires as-yet-to-be-PRd riot-web changes.

This includes:
 - initialScreenAfterLogin, which can be used to set the screen after login, and represents the screen that would be viewed if the window.location at the time of initialising Riot were routed.
 - guestCreds are now part of state, because otherwise they don't cause the login/registration views to update when set.
 - instead of worrying about races and using this._setPage, use a dispatch.
2017-03-08 10:25:54 +00:00
Luke Barnard
b7f1b1a424 Merge pull request #736 from matrix-org/luke/chat-create-or-reuse-dialog
Allow user to choose from existing DMs on new chat
2017-03-07 16:22:52 +00:00
David Baker
65ce8c2113 Merge pull request #741 from matrix-org/dbkr/fix_teamserver_2
Fix the team server registration
2017-03-06 17:57:42 +00:00
Luke Barnard
391886cac4 Remove dis as a dep in RoomTile 2017-03-06 17:45:25 +00:00
Luke Barnard
bf348a0f78 Instead of listening for view_room, use a callback
But make sure that nothing other than the callback is done when RoomTile is clicked.
2017-03-06 17:44:29 +00:00
David Baker
341f978743 Fix the team server registration
Pass extra info from the UI auth process as a second parameter to
onAuthFinished. Allows the email sid & client secret to be used
outside of the UI auth process.
2017-03-06 17:31:21 +00:00
Luke Barnard
04510da057 Clarify "No devices" message 2017-03-06 16:01:22 +00:00
Luke Barnard
20fa36325f Remember to unregister on unmoun 2017-03-06 15:01:46 +00:00
Luke Barnard
4548d1b824 Use dispatch instead of passing onClick, adjust dialog wording. 2017-03-06 14:51:01 +00:00
Luke Barnard
a122b5d88e Style 2017-03-06 14:22:12 +00:00
Luke Barnard
c0fc3ba3fe Make redactions appear when the event has been redacted (on Room.redaction) 2017-03-06 14:20:24 +00:00
David Baker
49c66d8645 Merge pull request #735 from matrix-org/luke/matrix-to-timestamp-permalink
Change timestamp permalinks to matrix.to
2017-03-06 11:07:50 +00:00
David Baker
30eddf9fda Merge pull request #734 from matrix-org/luke/fix-resend
Fix resend bar and "send anyway" in UDD
2017-03-06 11:06:52 +00:00
Luke Barnard
edccfeb20b No text required, do not continuate after redacted even
It's curious, however, that a continuation occured after a redacted event, given that the event shouldn't have a sender
2017-03-06 10:26:26 +00:00
Luke Barnard
abd71cd2ac No need for "redactor" as we dont currently show it 2017-03-03 17:57:13 +00:00
Luke Barnard
9bae936816 Add the redacter display name to the redaction text 2017-03-03 17:35:42 +00:00
Luke Barnard
5ef61b7c35 Only show a redaction tile for messages 2017-03-03 16:45:29 +00:00
Luke Barnard
6c32e3720b Remove seemingly unused "bounce" 2017-03-03 15:51:14 +00:00
Luke Barnard
2bd9885288 Start to show redacted events 2017-03-03 15:42:24 +00:00
David Baker
62d9439530 Remove old import & pass through result
in InteractiveAuthDialog
2017-03-03 14:31:52 +00:00
Luke Barnard
ca5c2fb82e Allow user to choose from existing DMs on new chat
When creating a new chat with one person, show a dialog that asks the user whether they'd like to use an existing chat or actually create a new room.

Fixes https://github.com/vector-im/riot-web/issues/2760
2017-03-03 13:48:37 +00:00
David Baker
1bdf213d67 Merge pull request #729 from matrix-org/dbkr/register_ui_auth
Port registration over to use InteractiveAuth
2017-03-03 13:37:41 +00:00
David Baker
977b8a7379 Make UIAuth Dialog show an error
when auth fails
2017-03-03 12:08:26 +00:00
Luke Barnard
ab9aaa9174 Merge pull request #732 from matrix-org/luke/fuse-test
Test to see how fuse feels
2017-03-03 10:46:41 +00:00
Luke Barnard
923ea9c6aa Change timestamp permalinks to matrix.to 2017-03-03 10:42:44 +00:00
David Baker
8522231d4f Revery unintentional change
to when teamToken was returned
2017-03-03 10:28:10 +00:00
Luke Barnard
b822bc66ee Remove redundant null check 2017-03-03 10:22:02 +00:00
Luke Barnard
7be55ce65c Merge pull request #733 from matrix-org/luke/display-name-blur-to-submit
Submit a new display name on blur of input field
2017-03-03 10:03:21 +00:00
Luke Barnard
4fff383de5 Fix resend bar and "send anyway" in UDD 2017-03-03 10:02:08 +00:00
Luke Barnard
1d5e47cd70 On cancel, blur. Only onValueChanged when the value has changed... 2017-03-02 18:07:24 +00:00
Luke Barnard
7a092e4ac7 Submit a new display name on blur of input field 2017-03-02 17:29:06 +00:00
David Baker
9c6782af6f Oops, lost trackPromise 2017-03-02 15:08:15 +00:00
David Baker
91ef26a7f8 makeRegistrationUrl is required 2017-03-02 15:04:10 +00:00
David Baker
51b2001f70 Remove todo which is now done! 2017-03-02 15:03:24 +00:00
David Baker
0914226327 Actuall pass our proxy makeRegistrationUrl 2017-03-02 14:47:47 +00:00
David Baker
3028b335a4 Oops, re-add referrer param
as Registration was still using it
2017-03-02 14:46:18 +00:00
David Baker
dd762cc835 Add makeRegistrationUrl to proptypes 2017-03-02 14:40:55 +00:00
David Baker
a5cf3a964b doc 2017-03-02 14:39:25 +00:00
David Baker
518a749d90 Add proptypes / isRequired 2017-03-02 14:36:54 +00:00
David Baker
770c1ce11f Remove redundant prop 2017-03-02 14:35:08 +00:00
Luke Barnard
e75c21e9f9 Merge pull request #683 from matrix-org/luke/mels-xor
MELS: either expanded or summary, not both
2017-03-02 14:08:06 +00:00
David Baker
8be66d0f04 Merge pull request #730 from Half-Shot/hs/video-gif-autoplay
Autoplay videos and GIFs if enabled by the user.
2017-03-02 13:41:30 +00:00
Will Hunt
4b5e8d66b8 Fixed styling + removed log line 2017-03-02 13:39:56 +00:00
David Baker
0035a91596 Merge pull request #731 from matrix-org/luke/warn-users-e2e-first-time
Warn users about using e2e for the first time
2017-03-02 13:28:15 +00:00
David Baker
95cff17698 Merge pull request #721 from matrix-org/luke/fix-refactor-UnknownDeviceDialog
Show UDDialog on UDE during VoIP calls
2017-03-02 13:13:45 +00:00
David Baker
9c5fb00da4 Fix syntax 2017-03-01 18:33:45 +00:00
David Baker
ef5d2bca91 Get errorText from error in stageUpdated 2017-03-01 16:59:25 +00:00
David Baker
c9ef879afa PR feedback: Move the email token request here 2017-03-01 16:04:15 +00:00
Luke Barnard
b7bd93c613 var -> const 2017-03-01 15:55:15 +00:00
Luke Barnard
187c91b76a Adjust warning message 2017-03-01 15:42:05 +00:00
Luke Barnard
6d296a0e7a Warn users about using e2e for the first time 2017-03-01 15:41:13 +00:00
Luke Barnard
39427839b9 Use ES6 export style 2017-03-01 14:33:25 +00:00
David Baker
dd33624454 Merge remote-tracking branch 'origin/develop' into dbkr/register_ui_auth
(This ended up mostly being merged by hand as git made a complete
mess of the merge)
2017-03-01 10:45:17 +00:00
Luke Barnard
f85c452e35 Merge pull request #726 from matrix-org/luke/rts-set-team-token-on-login
Notify MatrixChat of teamToken after login
2017-02-28 15:57:22 +00:00
Luke Barnard
0ef8e2a8f4 Various fixes 2017-02-28 15:18:00 +00:00
Luke Barnard
48a3d0d595 Refactor to not set team token in bad ways
Use the on_logged_in dispatch instead. Call setPage in one place, _onLoggedIn, when deciding which page to view on login. Change some require to import, var to const. Remove onTeamMemberRegistered and just use a nullable argument to onRegistered
2017-02-28 15:05:49 +00:00
Will Hunt
1995c16013 Add a user option to enable autoplaying gifs and videos. 2017-02-27 22:17:43 +00:00
Will Hunt
4509901592 image (gifs) and video messages will autoplay if enabled. 2017-02-27 22:16:56 +00:00
David Baker
c22db1db5f Fix race when signup is completed elsewhere
as commented
2017-02-27 18:22:26 +00:00
David Baker
e5853a6571 Put back server picker for registration
* Also fix bug where you couldn't picxk a different server if
   you were already registered as a guest (because it still sent
   the access token which the new server rejected)
 * Propagate errors from UI auth back to registration so it goes
   back to the registration screen
2017-02-27 17:24:28 +00:00
Luke Barnard
7221900497 Refactor remove resend_all_events and cancel_all_events dispatches 2017-02-27 13:39:12 +00:00
Luke Barnard
5be2c62011 Fix a couple of issues with RRs
- Shift to the left _before_ adding an avatar so that there are always `MAX_READ_AVATARS` visible, instead of there being `MAX_READ_AVATARS + 1` avatars displayed following the first "collapse".
- Use `right` instead of `left` so that double-digit remainders don't get overlapped.
2017-02-27 11:16:13 +00:00
David Baker
454aa0757a Poll for authentication completion
on registration (both for email validation and completion of the
whole auth session).
2017-02-24 17:24:10 +00:00
David Baker
76b381b849 Spurious newline 2017-02-24 12:01:06 +00:00
David Baker
51467506f8 Port registration over to use InteractiveAuth
These changes are moved over from the dbkr/msisdn_signin branch
2017-02-24 11:41:23 +00:00
Luke Barnard
e1a40a8ef0 Notify MatrixChat of teamToken after login 2017-02-23 16:30:26 +00:00
Luke Barnard
439bde309e General ChatInviteDialog optimisations
- Use avatar initial instead of "R" or "?"
- Use Fuse.js to do case-insensitive fuzzy search. This allows for better sorting of results as well as search based on weighted keys (so userId has a high weight when the input starts with "@").
- Added debounce of 200ms to prevent analysis on every key stroke. Fuse seems to degrade performance vs. simple, non-fuzzy, unsorted matching, but the debounce should prevent too much computation.
- Move the selection to the top when the query is changed. There's no point in staying mid-way through the items at that point.
2017-02-23 12:12:25 +00:00
David Baker
fd3c1ab9e1 Merge pull request #718 from matrix-org/luke/ignore-no-tile-events
Do not push a dummy element with a scroll token for invisible events
2017-02-23 10:17:16 +00:00
David Baker
8737112a8c Merge pull request #715 from matrix-org/luke/mels-scrolling-fix
MELS: check scroll on load + use mels-1,-2,... key
2017-02-23 10:12:26 +00:00
David Baker
0a76e0f621 Merge pull request #723 from matrix-org/luke/fix-e2e-input-placeholder
Fix message composer placeholders
2017-02-23 10:09:07 +00:00
Luke Barnard
8bd42693f7 Fix message composer placeholders 2017-02-23 09:05:26 +00:00
Luke Barnard
b41787c335 Initial work on improving invite dialog 2017-02-23 09:03:20 +00:00
Luke Barnard
b68b0e25c8 Merge Matthew's wording patch 2017-02-22 16:59:45 +00:00
Luke Barnard
f92708fbe6 In practice the MELS-1,2,3 solves nothing, revert it 2017-02-22 16:54:32 +00:00
Luke Barnard
436e6b36f1 Move UDE handling to a its own file, adjust wording 2017-02-22 16:42:14 +00:00
David Baker
2b91b0d9c4 Merge pull request #720 from matrix-org/luke/clarify-e2e-input-box
Clarify non-e2e vs. e2e /w composers placeholder
2017-02-22 16:20:26 +00:00
Luke Barnard
816e0be3a0 Retry->Send anyway 2017-02-22 16:17:49 +00:00
Luke Barnard
799e5ee0e9 Less jargon 2017-02-22 14:40:07 +00:00
Luke Barnard
f230b0a3c0 Fix status bar expanded on tab-complete
This had regressed when `_getSize` was introduced. It didn't consider tab completing.
2017-02-22 14:03:30 +00:00
Luke Barnard
c13ff254b1 Add "Retry" button to UDE 2017-02-22 10:21:43 +00:00
Luke Barnard
878e31eba2 Show UDDialog on m.call.invite failure
Requires https://github.com/matrix-org/matrix-js-sdk/pull/378

Also, refactored UDDialog creation into its own dispatch event, because there will be other parts of the code that will want to spawn one.
2017-02-21 17:22:22 +00:00
Luke Barnard
fd146a732b Clarify non-e2e vs. e2e /w composers placeholder
For E2E rooms, display "Send an encrypted message…" otherwise display "Send a plaintext message…" as the placeholder for the input box in [old] message composer.
2017-02-21 15:33:44 +00:00
Luke Barnard
581c8c138e Do not push a dummy element with a scroll token for invisible events
If an event does not `wantTile`, do not add a dummy element with a scroll token, as this can be unperformant with 1000s of events.
2017-02-21 15:01:18 +00:00
Luke Barnard
995e59b973 Merge pull request #716 from matrix-org/luke/feature-default-hs
Allow setting the default HS from the query parameter
2017-02-21 14:43:36 +00:00
Matthew Hodgson
629f8caad7 oops, remove unneeded import 2017-02-21 09:50:10 +00:00
Matthew Hodgson
aabf9255d2 anchor the authcache on LoggedInView to prevent it persisting over logouts 2017-02-21 01:03:22 +00:00
Matthew Hodgson
6af0b9618a first cut of improving UX for deleting devices.
This adds a 5 minute auth cache to speed up the process of deleting
old devices.  It has the following nastinesses (mainly due to being
written on a flight whilst juggling kids):
 * the auth cache is done as context attached to MatrixChat.
   one could argue that it should be per-client instead, but we don't
   yet have multiple clients.
 * the auth cache is only maintained currently in DevicesPanelEntry
   (i.e. set & invalidated).  One could argue that it might be better
   maintained in InteractiveAuth.js or a dedicated cache object
   abstraction, but given the only use I can think of is when managing
   devices, perhaps this is good enough for now.
2017-02-21 00:19:49 +00:00
Luke Barnard
9eef3c53a3 Allow setting the default HS from the query parameter
Fixes https://github.com/vector-im/riot-web/issues/3207
2017-02-20 16:53:26 +00:00
Luke Barnard
6fead66f89 MELS: check scroll on load + use mels-1,-2,... key
To fix https://github.com/vector-im/riot-web/issues/2916, force the checking of scroll position by calling _onWidgetLoad (might need renaming...) when a MELS is expanded/contracted.

Also use an keying scheme for MELS that doesn't depend on the events contained, but rather a simple incrementing index based on the order of the MELS as it appears amongst all MELS.
2017-02-20 10:59:11 +00:00
Matthew Hodgson
8990e770b7 fix colouring in voip dark theme 2017-02-20 01:43:55 +02:00
Matthew Hodgson
5ac76acc05 limit avatar uploads to images 2017-02-19 02:07:08 +02:00
David Baker
db4b9691cc Support reasons for kick / ban
Don't ban me for fun, girl
Let me be the one, girl
Ban me for a reason
Let the reason be love.
2017-02-17 17:27:46 +00:00
David Baker
10534e7df4 Merge pull request #709 from matrix-org/dbkr/show_when_banned
Show when you've been kicked or banned
2017-02-17 16:48:59 +00:00
David Baker
b18473ccb2 Handle there being no member event when banned
Here, and also in MemberEventListSummary where this also broke.
2017-02-17 16:35:18 +00:00
David Baker
1f5fdf7945 Get a member object, not the user object 2017-02-17 16:14:51 +00:00
David Baker
a3aea6ba2d Swap rejoin / forget 2017-02-17 16:11:20 +00:00
David Baker
9f9de46b10 Add onForgetClick proptype 2017-02-17 16:09:25 +00:00
Kegsay
5abcb91e0d Merge pull request #708 from matrix-org/kegan/clear-cache
Add a 'Clear Cache' button
2017-02-17 15:51:08 +00:00
David Baker
de4773ba93 Show when you've been kicked or banned
Update the room state when you've been kicked or banned, and show
a message in the preview bar, including the reason.
2017-02-17 15:50:30 +00:00
Kegan Dougal
8d6c3cd3f4 Review comments 2017-02-17 15:37:49 +00:00
Kegan Dougal
0a31efa0b7 Add a 'Clear Cache' button
This deletes the IndexedDB database and reloads the page.

This solely exists as a get-out clause for users in case the indexedDB instance
gets corrupted. Hopefully we won't ever need to point users to it.
2017-02-17 15:16:28 +00:00
David Baker
a3746ea1b6 Merge remote-tracking branch 'origin/develop' into dbkr/update_on_room_name 2017-02-17 14:41:54 +00:00
Richard van der Hoff
97722af3d6 Merge pull request #698 from matrix-org/dbkr/add_unban_button
Add a button to un-ban users in RoomSettings
2017-02-17 12:46:00 +00:00
David Baker
b2344ceb74 Update the room view on room name change 2017-02-17 11:44:56 +00:00
David Baker
4753552ddc Merge pull request #706 from matrix-org/luke/fix-team-token-referral-link
Make UserSettings use the right teamToken
2017-02-16 18:12:46 +00:00
Luke Barnard
406c34b715 Make UserSettings use the right teamToken
This threads the correct teamToken through to UserSettings for generating the referral section.
2017-02-16 18:00:52 +00:00
Luke Barnard
9d2bb70823 If the home page is somehow accessed, goto directory
For example, if someone ends up on /home somehow, just redirect to the directory instead of displaying a very awkward "File not found" plain text in the home page iFrame.
2017-02-16 17:03:22 +00:00
Luke Barnard
6945e7c154 Merge pull request #699 from matrix-org/luke/fix-avatar-initials
Display avatar initials in typing notifications
2017-02-16 14:06:05 +00:00
Luke Barnard
74487c655d If a referrer hasn't been specified, use empty string
This is interpretted by the RTS as a non-referred team member who still needs the team token to access their welcome page etc.
2017-02-16 09:22:44 +00:00
Richard van der Hoff
bdb8f9d052 Don't force-logout the user if reading localstorage fails
Give them a modal dialog to give them a chance to abort.
2017-02-15 19:33:39 +00:00
David Baker
8698d40d3c Fix docs & add MatrixClient check
Addresses PR feedback without breaking RoomSettings
2017-02-15 19:01:00 +00:00
David Baker
a5a056292d Revert c082827fc7
Revert the WithMatrixClient change: RoomView calls methods on
the RoomSettings component and this breaks when RoomSettings is
wrapped in a WithMatrixClient.
2017-02-15 18:58:59 +00:00
David Baker
c082827fc7 Fix docs & use WithMatrixClient 2017-02-15 17:58:50 +00:00
Luke Barnard
8067bb627f Display avatar initials in typing notifications
It seems they don't overlap hawkwawdly anymore, so this displays them always.

Fixes https://github.com/vector-im/riot-web/issues/3084
2017-02-15 16:29:08 +00:00
Richard van der Hoff
42bb26925d Merge branch 'develop' into dbkr/add_unban_button 2017-02-15 13:19:22 +00:00
Richard van der Hoff
a5325ee14a Merge pull request #697 from matrix-org/dbkr/missed_accessiblebuttons
Convert some missed buttons to AccessibleButton
2017-02-15 13:10:14 +00:00
David Baker
431e7a875d Copyright 2017-02-14 18:10:40 +00:00
David Baker
1e1ae5c950 Merge pull request #696 from matrix-org/dbkr/ban_becomes_unban
Make ban either ban or unban
2017-02-14 18:00:15 +00:00
David Baker
87516fb950 Add a button to un-ban users in RoomSettings
https://github.com/vector-im/riot-web/issues/3091
2017-02-14 17:54:57 +00:00
David Baker
e1cb34e255 Merge remote-tracking branch 'origin/develop' into dbkr/missed_accessiblebuttons 2017-02-14 17:45:30 +00:00
David Baker
973b92b8f6 Merge pull request #694 from matrix-org/dbkr/confirm_ban
Add confirmation dialog to kick/ban buttons
2017-02-14 17:31:51 +00:00
David Baker
6fc70415cb s/onBan/onBanOrUnban/ 2017-02-14 17:29:40 +00:00
Luke Barnard
3d4a831624 Merge pull request #695 from matrix-org/luke/fix-scalar-popup
Fix typo with Scalar popup
2017-02-14 17:13:55 +00:00
David Baker
f38b2dee78 Convert some missed buttons to AccessibleButton
In RoomSettings
2017-02-14 17:06:16 +00:00
David Baker
6663f5bff0 Remove commented stuff
That I've now broken such that it wouldnt work if it were
uncommented
2017-02-14 16:12:04 +00:00
David Baker
ec0ce76d87 Clarify docs 2017-02-14 16:09:02 +00:00
David Baker
a1c990a2ea Make ban either ban or unban
depending on whether the user is banned already

Mostly gives some feedback that the ban has actually taken effect.
2017-02-14 16:03:30 +00:00
Luke Barnard
0303a42fc7 Fix typo with Scalar popup 2017-02-14 15:35:14 +00:00
David Baker
5e232d8500 Argh, ES6 import syntax 2017-02-14 14:33:21 +00:00
David Baker
ff61b76bf7 Fix imports 2017-02-14 13:58:29 +00:00
David Baker
689972f023 Copyright 2017-02-14 13:57:22 +00:00
David Baker
8001c0b16b Add confirmation dialog to kick/ban buttons
Add a specific dialog used for confirming member actions.

Also remove onFinished from MemberInfo which did absolutely
nothing.
2017-02-14 13:40:19 +00:00
Luke Barnard
1b8e93d4f2 Treat the literal team token string "undefined" as undefined
Some users appear to have gotten team tokens into their local storage. This fix will treat the literal string "undefined" as undefined.
2017-02-14 12:56:29 +00:00
David Baker
17b08aedfc Merge pull request #691 from matrix-org/dbkr/interactive_auth_nondialog
Split out InterActiveAuthDialog
2017-02-14 10:55:12 +00:00
David Baker
43a740df15 Add busy param to docs 2017-02-14 10:34:43 +00:00
David Baker
ba3e62e395 Remove old docs 2017-02-14 10:31:56 +00:00
David Baker
18cba1fe45 Merge pull request #689 from matrix-org/luke/rts-set-team-token-view-home
View /home on registered /w team
2017-02-14 10:21:23 +00:00
David Baker
36d126f3a9 PR feedback 2017-02-13 19:09:43 +00:00
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
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
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
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
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
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
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
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
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
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
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
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
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
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