David Baker
c5cd6aecd6
Revert "Call MatrixClient.clearStores on logout"
...
This reverts commit c3d37c1ff9
.
This commit was introducing a bug where no rooms would be shown if
you want straight to /#/login and logged in (because this causes
a guest session to be created but the indexeddb store not to be
cleared, so the new login picks up the stale indexedb sync data.
2017-06-05 15:54:44 +01:00
David Baker
85aa3f6f13
Merge pull request #1032 from matrix-org/luke/fix-welcome-user-background
...
Only view welcome user if we are not looking at a room
2017-06-05 14:38:55 +01:00
David Baker
d8e3423060
Merge pull request #1031 from matrix-org/luke/fix-deferred-start-chat-settings
...
Keep deferred actions for view_user_settings and view_create_chat
2017-06-05 14:10:29 +01:00
Luke Barnard
c82e79ab5f
Only view welcome user if we are not looking at a room
2017-06-05 14:07:24 +01:00
Luke Barnard
3195b9f964
Keep deferred actions for view_user_settings and view_create_chat
...
This will bring up the correct UI as intended instead of defaulting to the home page with welcome user in the room list.
Fixes https://github.com/vector-im/riot-web/issues/4162
2017-06-05 13:41:52 +01:00
Luke Barnard
beafb68538
Don't do a deferred start chat if user is welcome user
...
There's no point in deferring creating a new DM with the welcome user because the setMxId dialog will do so anyway.
2017-06-05 13:14:55 +01:00
Luke Barnard
239874ccce
Introduce state peekLoading
to avoid collision with roomLoading
...
The room loading spinner will now be displayed if the alias is being resolved (roomLoading) or if the peek is being loaded for the room `peekLoading`.
2017-06-05 09:52:39 +01:00
Michael Telatynski
98e99d542b
i18n things
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-03 15:49:28 +01:00
Michael Telatynski
0f4dc5c072
first iter of manual update control
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-03 15:49:28 +01:00
Michael Telatynski
464863acd6
remove unused imports
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 21:35:55 +01:00
David Baker
2cc9f9c403
Fix accepting a 3pid invite
...
Fixes https://github.com/vector-im/riot-web/issues/4123
2017-06-02 16:25:14 +01:00
David Baker
ec0ad93ad7
Merge pull request #1007 from matrix-org/dbkr/propagate_room_join_errors
...
Propagate room join errors to the UI
2017-06-02 16:09:34 +01:00
Kegan Dougal
bfb313ce9d
riot-bot only if english please
2017-06-02 14:13:45 +01:00
Matthew Hodgson
375b435dfe
hide analytics settings if no piwik url
2017-06-02 13:34:01 +01:00
Matthew Hodgson
adfeff34ae
Merge pull request #1004 from matrix-org/t3chguy/hide_redactions
...
allow hiding redactions, restoring old behaviour
2017-06-02 12:27:52 +01:00
Luke Barnard
953a573f81
Merge pull request #1006 from matrix-org/luke/new-guest-access-user-action-chat
...
Implement /user/@userid:domain?action=chat
2017-06-02 12:03:11 +01:00
David Baker
03f4f269ce
Propagate room join errors to the UI
...
Dispatch so we can set the state in RoomViewStore. Show the error
when the room join fails (unsure if it's better to do this from
the component or the store). Remove unused joinError from roomview.
2017-06-02 11:53:10 +01:00
Luke Barnard
e88b52fa8f
Add comment
2017-06-02 11:42:47 +01:00
Luke Barnard
6a9781f023
Remove redundant state
2017-06-02 11:41:09 +01:00
Luke Barnard
defecb1b14
Implement /user/@userid:domain?action=chat
...
This is a URL that can be used to start a chat with a user.
- If the user is a guest, setMxId dialog will appear before anything and a defered action will cause `ChatCreateOrReuseDialog` to appear once they've logged in.
- If the user is registered, they will not see the setMxId dialog.
fixes https://github.com/vector-im/riot-web/issues/4034
2017-06-02 11:36:18 +01:00
Kegan Dougal
a8ca7c899f
Review comments
2017-06-02 11:16:08 +01:00
Kegan Dougal
f54c182eb1
Add remaining strings for vector-im/riot-web#4151
2017-06-02 10:47:08 +01:00
Richard van der Hoff
a3a262b150
Merge remote-tracking branch 'origin/develop' into rav/handle_received_room_key_requests
2017-06-02 10:31:14 +01:00
Michael Telatynski
5e2e550bf9
don't lose date seperator when the first event of the new day is redacted
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 04:39:44 +01:00
Michael Telatynski
d2d0ba952a
allow hiding redactions. no point onAccountData as it'd cause a full
...
refresh, this may need to be handled differently in the future.
Currently handling same as the new timestamp stuff
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 04:23:07 +01:00
Michael Telatynski
b1973d7998
undefined =/= ''
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 00:42:19 +01:00
Michael Telatynski
f4db83a031
try empty string as falsey key
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 00:31:43 +01:00
Michael Telatynski
6b4daf02a9
i18 missed things
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 00:27:20 +01:00
Michael Telatynski
0bafd6458a
Revert voodoo
2017-06-02 00:26:31 +01:00
Michael Telatynski
46a9326607
special case default - CallMediaHandler can figure it out
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-02 00:20:34 +01:00
Michael Telatynski
3eb519b227
this is just endless
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:54:17 +01:00
Michael Telatynski
beedeec163
copy the arrays so we're not making a mess
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:50:14 +01:00
Michael Telatynski
0f2c89d525
lets actually make things work, eh?
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:39:54 +01:00
Michael Telatynski
4e36c10c38
only unshift default if there is no deviceId===default
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:33:36 +01:00
Michael Telatynski
dd4480f8c3
change device data structure to array of objects
...
so that we can set falsey values, for unsetting device
most dolphinately needs testing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:26:43 +01:00
Michael Telatynski
aa90d6b097
fix **AMAZING** C&P derp
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 23:00:25 +01:00
Michael Telatynski
dbba1dedb6
i18nize all the things and change show logic
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-06-01 22:58:17 +01:00
Michael Telatynski
04b86e5d1d
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into webrtc_settings
...
and i18nize webrtc stufffs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
# Conflicts:
# src/components/structures/UserSettings.js
2017-06-01 22:56:31 +01:00
Matthew Hodgson
ee965a89a7
Merge pull request #986 from uhoreg/compact
...
enable useCompactLayout user setting an add a class when it's enabled
2017-06-01 21:32:54 +01:00
Matthew Hodgson
6c56fa3381
Merge pull request #990 from matrix-org/kegan/translation-marmoset
...
Translation fixes for everything but src/components
2017-06-01 21:22:00 +01:00
Richard van der Hoff
7d55f3e75d
handle room key request cancellations
2017-06-01 18:40:04 +01:00
Richard van der Hoff
d5bc24d9f7
Initial implementation of KeyRequestHandler, KeyShareDialog etc
2017-06-01 18:40:04 +01:00
Matthew Hodgson
33214b8752
Merge pull request #991 from turt2live/travis/date-sep-12hr
...
Support 12hr time on DateSeparator
2017-06-01 18:26:13 +01:00
Luke Barnard
16c4c14a16
Fix to show the correct room
2017-06-01 18:01:30 +01:00
Richard van der Hoff
53ebc8d7bd
Merge pull request #983 from matrix-org/rav/clear_storage_on_logout
...
Call MatrixClient.clearStores on logout
2017-06-01 17:34:21 +01:00
turt2live
ab1e277f5f
Support 12hr time on DateSeparator
...
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-06-01 09:53:24 -06:00
Kegan Dougal
ced68f2719
Find a way to translate the name of RTE in user settings
...
I never said it was a *nice* way...
2017-06-01 15:53:08 +01:00
Matthew Hodgson
00750b4686
quick and dirty RoomAvatarEvent
2017-06-01 13:31:24 +01:00
Hubert Chathi
92d1a9a6ff
enable useCompactLayout user setting an add a class when it's enabled
...
Signed-off-by: Hubert Chathi <hubert@uhoreg.ca>
2017-05-31 22:00:30 -04:00
Matthew Hodgson
b4284cf000
fix up Can't connect to HS i18n with _tJsx
2017-06-01 01:17:39 +01:00
Richard van der Hoff
cbbed3f544
Fixes to i18n code
2017-05-31 18:31:10 +01:00
Richard van der Hoff
c3d37c1ff9
Call MatrixClient.clearStores on logout
...
... to make sure that we don't have any sensitive data sitting around in the
stores.
2017-05-31 18:28:21 +01:00
Luke Barnard
7abaadddde
Merge pull request #977 from matrix-org/luke/session-store-null-on-logout
...
Remove cachedPassword from localStorage on_logged_out
2017-05-31 16:00:24 +01:00
Luke Barnard
d0e270bd1c
Only re-render LoggedInView if MatrixClientPeg.get() is truthy
2017-05-31 15:15:27 +01:00
Richard van der Hoff
2d73f094ff
Delint MatrixChat, again ( #979 )
...
grrr.
2017-05-31 15:09:09 +01:00
Kegan Dougal
fc93517094
WIP join/part hiding
...
- Doesn't work with MELS
- Doesn't work with read markers
- Doesn't work with jumping to events
Shelving this for now as I fix some of this mess.
2017-05-31 13:36:19 +01:00
Michael Telatynski
dcd99ac3de
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/electron_settings
...
# Conflicts:
# src/components/structures/UserSettings.js
# src/i18n/strings/en_EN.json
First time using JetBrains Merge Tool, MAY HAVE GONE HORRIBLY WRONG
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 23:54:57 +01:00
Michael Telatynski
0d930c0553
change wording and i18n it
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 23:46:51 +01:00
Matthew Hodgson
e30e45a82c
Merge branch 'develop' into new-guest-access
2017-05-30 21:05:07 +01:00
Matthew Hodgson
93a35dc07a
Merge branch 'develop' into t3chguy/piwik
2017-05-30 15:58:55 +01:00
Marcel
70e7d81093
More i18n strings ( #963 )
...
* Add i18n for E2E import and Export Dialogs
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add various previous missing i18n strings
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Translate CreateRoomButton
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add ChatInviteDialog and fix missing to.
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add ConfitmRedactDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add DeactivateAccountDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add DeviceVerifyDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add SessionRestoreErrorDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add SetDisplayNameDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add UnknownDeviceDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add AddressTile translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add DeviceVerifyButtons translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add Dropdown translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add UserSelector translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add CaptchaForm translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add CasLogin translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add CustomServerDialog translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add InteractiveAuthEntryComponents translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add LoginFooter translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add RegistrationForm translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add ServerConfig translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add MAudioBody translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add MImageBody translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add MVideoBody translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add TextualBody translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add UnknownBody translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add UrlPreviewSettings translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add AuxPanel translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* Add PresenceLabel translations
Signed-off-by: MTRNord <mtrnord1@gmail.com>
* fix syntax error
* weird space :P
* missing ','
* fix missing value
* fix json fail
* remove acidential added file
* fix another json fail
2017-05-30 15:09:57 +01:00
Luke Barnard
2baef643e3
Add /start to show the setMxId above HomePage
2017-05-30 14:27:02 +01:00
Michael Telatynski
ee6789ed15
change aux order so room settings is top most, forwarding could go weird
...
if you clicked roomsettings whilst forwarding
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 11:22:27 +01:00
Michael Telatynski
baba2e12e2
fix weird indentation
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 11:21:33 +01:00
Michael Telatynski
ff9141e424
add a hideCancel flag as some things have own cancel etc on RoomHeader
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-30 11:20:41 +01:00
Luke Barnard
9536e1ef36
Merge pull request #954 from matrix-org/matthew/ilag-login
...
add login link to SetMxIdDialog
2017-05-30 09:48:33 +01:00
Matthew Hodgson
ad1b14967b
hide rightpanel on welcome page
2017-05-30 03:59:06 +01:00
Michael Telatynski
7e02977c27
i18n
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 22:32:45 +01:00
Michael Telatynski
a2229ced11
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/electron_settings
2017-05-29 21:56:45 +01:00
Michael Telatynski
9b8dcaf274
make analytics setting use new thing
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 15:11:37 +01:00
Michael Telatynski
97d0c41d30
fix ugly special casing in generic settings renderer
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 15:08:11 +01:00
Michael Telatynski
f5d336103e
add opt out / un opt out toggle
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 14:36:50 +01:00
Michael Telatynski
7e8123e5fe
move all init/enable/disable logic to Analytics/MatrixChat
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-29 14:26:29 +01:00
Matthew Hodgson
df599890c5
add login link to SetMxIdDialog
2017-05-29 01:32:31 +01:00
Matthew Hodgson
5c885922d9
Merge branch 'develop' into new-guest-access
2017-05-28 22:58:18 +01:00
Michael Telatynski
0a1b361141
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/piwik
2017-05-28 13:21:33 +01:00
Matthew Hodgson
accc17a39a
Merge pull request #812 from t3chguy/forward_message
...
Message Forwarding
2017-05-28 02:37:31 +01:00
Matthew Hodgson
10a9313bba
Merge pull request #944 from matrix-org/t3chguy/fix-focus-steal
...
don't focus_composer on window focus
2017-05-27 23:30:00 +01:00
Michael Telatynski
45cd80dedb
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/piwik
2017-05-27 20:59:35 +01:00
Michael Telatynski
98c2f9201b
initial piwik stuff
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-27 20:47:09 +01:00
Marcel
8935e9706e
Change variable name as mentioned by t3chguy
2017-05-27 21:21:23 +02:00
Marcel
a30110b5d3
Fix vector-im/riot-web#4042
2017-05-27 21:11:00 +02:00
Michael Telatynski
4cd7964b58
remove window onFocus handling entirely
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-27 18:43:59 +01:00
Matthew Hodgson
3703306a9e
oops
2017-05-27 18:35:18 +01:00
Matthew Hodgson
3302fc690f
fix all missing translations picked up by check-i18n.pl
2017-05-27 18:20:44 +01:00
Matthew Hodgson
1eb7993aa7
Merge pull request #946 from matrix-org/t3chguy/fix_imports
...
import _t, drop two unused imports
2017-05-27 18:08:00 +01:00
Michael Telatynski
8524f5868c
import _t, drop two unused imports
...
without this FilePanel would ever-load
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-27 17:59:11 +01:00
Michael Telatynski
8e1db84bee
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix-focus-steal
2017-05-27 14:29:06 +01:00
Michael Telatynski
2bcb381aa7
maybe window focus should be ignored so focus is left as what it was
...
but with this at least clicking on a text input will not make you
be thrown into composer instead
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-27 14:19:34 +01:00
Matthew Hodgson
03194e66b3
actually wire up alwaysShowTimestamps
2017-05-27 00:14:16 +01:00
Luke Barnard
fd27d6dab1
Merge pull request #936 from matrix-org/luke/new-guest-access-need-to-set-mx-id-beore-user-settings
...
Block user settings with view_set_mxid
2017-05-26 18:48:55 +01:00
David Baker
97aeb57a8b
Merge remote-tracking branch 'origin/develop' into dbkr/translations
2017-05-26 18:15:32 +01:00
Luke Barnard
276d3cad9c
Merge pull request #906 from matrix-org/luke/revert-login-username-prefix-suffix
...
Remove suffix and prefix from login input username
2017-05-26 18:07:10 +01:00
David Baker
62ffe929e4
Translate Add Threepid labels
2017-05-26 18:03:24 +01:00
David Baker
23fbce66a2
Translate 'email' threepid label
2017-05-26 17:56:51 +01:00
David Baker
c22978d033
Merge remote-tracking branch 'origin/develop' into dbkr/translations
2017-05-26 17:30:02 +01:00
Matthew Hodgson
3d688a6ada
Merge pull request #933 from matrix-org/luke/new-guest-access-set-display-name-to-useridlocalpart
...
Set the displayname to the mxid once PWLU
2017-05-26 17:17:23 +01:00
Matthew Hodgson
1c7785535f
Merge pull request #929 from matrix-org/luke/new-guest-access-fix-view-next-room
...
Fix view_next_room, view_previous_room and view_indexed_room
2017-05-26 17:09:35 +01:00
Matthew Hodgson
fbc3f83625
Merge pull request #928 from matrix-org/luke/new-guest-access-inidicate-joining-early
...
Use RVS to indicate "joining" when setting a mxid
2017-05-26 17:08:34 +01:00
Matthew Hodgson
fde553a809
Merge pull request #903 from Kieran-Gould/kierangould/12hourtimestamp
...
Kierangould/12hourtimestamp
2017-05-26 16:52:09 +01:00
Luke Barnard
9f902c1190
Merge pull request #932 from matrix-org/luke/new-guest-access-no-notif-bar-if-is-guest
...
Don't show notif nag bar if guest
2017-05-26 16:42:12 +01:00
David Baker
e3e848d09e
Fix missing full stop on translation key
2017-05-26 13:19:46 +01:00
Luke Barnard
5e136863b0
Block user settings with view_set_mxid
2017-05-26 13:18:44 +01:00
Luke Barnard
ad3373789f
Warn about LifecycleStore not explicitly being used
2017-05-26 11:50:32 +01:00
Luke Barnard
c0f43a14fd
Improve comment
2017-05-26 11:47:55 +01:00
Luke Barnard
2dcc03960a
Set the displayname to the mxid once PWLU
2017-05-26 11:46:33 +01:00
Luke Barnard
b5b157a0fb
Don't show notif nag bar if guest
2017-05-26 10:34:36 +01:00
David Baker
2d6bf5fa91
Remove messages with HTML formatting
...
The translations strings are not HTML and it gets escaped.
2017-05-25 20:04:28 +01:00
David Baker
ab92cc2254
Question marks do not internationalise
2017-05-25 19:55:54 +01:00
David Baker
e7fbf889fa
Make current language more accurate
...
Make it reflect reality if it's been taken from the browser langs
by just getting what was saet in counterpart rather than the saved
setting.
Also fix style.
2017-05-25 19:53:27 +01:00
David Baker
443ab1add7
Put back default strings on dialogs
...
But make them work by calling _t in render rather than
getDefaultProps().
Also sort out some 'Warning!' strings
2017-05-25 18:20:48 +01:00
David Baker
9112fc231a
More translation string fixups
2017-05-25 17:35:18 +01:00
Luke Barnard
0849b0e205
Fix view_next_room, view_previous_room and view_indexed_room
...
These must now make a dispatch to RoomViewStore instead of calling `viewRoom` directly on MatrixChat. This will call both `viewRoom` of MatrixChat _and_ the logic in RVS so there is some redundancy here. It'd be best to move as much as possible of viewRoom out to the RVS itself.
But for now, this fixes a bug that occures when leaving (the viewed room would not change).
2017-05-25 17:10:49 +01:00
Luke Barnard
91edc06441
Use RVS to indicate "joining" when setting a mxid
...
This prevents RoomView from doing any peeking whilst the join/registration is in progress, causing weirdness with TimelinePanel getPendingEventList (which throws an error if called when peeking).
2017-05-25 17:04:42 +01:00
David Baker
3a379d09de
Update translations
...
Actually translate the language dropdown label & add the string.
Remove some unused ones.
2017-05-25 16:52:15 +01:00
Luke Barnard
51c8ee6db2
Allow teamServerConfig to be missing
2017-05-25 14:38:12 +01:00
David Baker
5c359e63ab
Bulk change counterpart imports
...
to use languageHandler wrapper func
2017-05-25 11:39:08 +01:00
Luke Barnard
c894c83fbe
Remove GuestWarningBar
2017-05-25 11:02:48 +01:00
Luke Barnard
f3fc459875
Merge pull request #922 from matrix-org/luke/new-guest-access-default-welcome
...
Implement default welcome page and allow custom URL /w config
2017-05-25 10:08:34 +01:00
Luke Barnard
8fc44a9b66
Add comment to explain sync_state dispatch
2017-05-25 09:31:14 +01:00
Michael Telatynski
8158ec6d54
touchups
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-25 01:25:17 +01:00
Michael Telatynski
09d0ab7df5
attempt to make media selector work everywhere (TM)
...
loadDevices not only in electron
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-25 01:01:40 +01:00
Michael Telatynski
a4b2bacc7e
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into webrtc_settings
2017-05-25 00:26:38 +01:00
Luke Barnard
fffe425730
Add non-null RoomView key
2017-05-24 18:04:04 +01:00
Luke Barnard
5f36f797da
Implement default welcome page and allow custom URL /w config
...
This changes the default behaviour of displaying the room directory to instead displaying the default homepage. If specified, the config "welcomePageUrl" can be used to override the default '/home.html'.
2017-05-24 17:55:36 +01:00
Luke Barnard
298c5e4df3
Implement a store for RoomView
...
This allows for a truely flux-y way of storing the currently viewed room, making some callbacks (like onRoomIdResolved) redundant and making sure that the currently viewed room (ID) is only stored in one place as opposed to the previous many places.
This was required for the `join_room` action which can be dispatched to join the currently viewed room.
Another change was to introduce `LifeCycleStore` which is a start at encorporating state related to the lifecycle of the app into a flux store. Currently it only contains an action which will be dispatched when the sync state has become PREPARED. This was necessary to do a deferred dispatch of `join_room` following the registration of a PWLU (PassWord-Less User).
The following actions are introduced:
- RoomViewStore:
- `view_room`: dispatch to change the currently viewed room ID
- `join_room`: dispatch to join the currently viewed room
- LifecycleStore:
- `do_after_sync_prepared`: dispatch to store an action which will be dispatched when `sync_state` is dispatched with `state = 'PREPARED'`
- MatrixChat:
- `sync_state`: dispatched when the sync state changes. Ideally there'd be a SyncStateStore that emitted an `update` upon receiving this, but for now the `LifecycleStore` will listen for `sync_state` directly.
2017-05-24 16:56:13 +01:00
Michael Telatynski
b9ac1222ed
remove listener on unmount
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-24 15:55:37 +01:00
Michael Telatynski
1186207658
Initial Electron Settings - for Auto Launch
...
(opens path for Proxy Settings)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-24 15:51:11 +01:00
David Baker
b677a2002f
Minimal UI fixes
...
Add a label. Make css selector match style. Also fix import.
2017-05-24 14:36:14 +01:00
David Baker
aef068b00e
Indenting
2017-05-24 14:28:30 +01:00
David Baker
f412552c2c
Fix imports/exports
2017-05-23 18:32:45 +01:00
David Baker
d419c42a4f
Squash merge https://github.com/matrix-org/matrix-react-sdk/pull/801
2017-05-23 15:16:31 +01:00
David Baker
46bb29a3af
Merge pull request #910 from matrix-org/t3chguy/version_anchor_newtab
...
Make the linked versions open a new tab, turt2live complained :P
2017-05-23 13:51:40 +01:00
Michael Telatynski
a10c2faac1
lets not open an attack vector :)
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-23 13:12:21 +01:00
Luke Barnard
b0a824c941
Remove double declaration of TextInputDialog
2017-05-22 16:28:23 +01:00
Luke Barnard
05aaa599cc
Merge branch 'develop' into new-guest-access
...
Conflicts:
src/components/structures/MatrixChat.js
2017-05-22 16:19:10 +01:00
Richard van der Hoff
fc08dc33c6
Group e2e keys into blocks of 4 characters
...
Hopefully this will make them a bit easier to compare.
2017-05-22 12:01:09 +01:00
Kieran Gould
47e5e8d678
Moved isTwelveHour alllll the way up to TimelinePanel.
2017-05-19 23:04:37 +01:00
Maxwell Kepler
008cc95e9c
Add 12 hour support
2017-05-19 22:29:49 +01:00
Michael Telatynski
cc3673d2d2
Make the linked versions open a new tab, turt2live complained :P
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 17:39:21 +01:00
Richard van der Hoff
e3dbf057fb
Fix 'missing page_type' error
...
LoggedInView will complain if it is instantiated without a page_type, so let's
keep showing the syncing spinner until we have one.
2017-05-19 14:09:20 +01:00
Richard van der Hoff
c61294f71c
Delintify some of MatrixChat ( #907 )
...
... it annoyed me too much.
2017-05-19 13:53:11 +01:00
Luke Barnard
2bec44a517
Remove suffix and prefix from login input username
...
This is an attempt reduce confusion when entering a custom home server: https://github.com/vector-im/riot-web/issues/3736
2017-05-19 10:03:51 +01:00
Michael Telatynski
cc7edbf86d
allow for sending arbitrary events, also override highlight with
...
event currently being forwarded while forwardingEvent is set
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 01:29:11 +01:00
Michael Telatynski
a2ab36f598
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into forward_message
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 00:33:36 +01:00
Michael Telatynski
0e7e4d8595
replace weird sidebar snapping with better ui_opacity
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-19 00:20:32 +01:00
Luke Barnard
e38437e6ce
Invite the welcome user after registration if configured
...
This will shift focus to the welcome user DM.
We probably don't want to do this for teams, but I shall leave that for another PR that fixes teams WRT to new-guest-access.
2017-05-18 11:14:56 +01:00
Richard Lewis
7e1de2ac35
Show/hide apps panel and misc formatting and lint fixes
2017-05-17 21:15:57 +01:00
Luke Barnard
e1089574ae
Write some tests for the RTS UI
...
Add tests that make assertions about the UI during registration when registration is done with a user recognised as a team member (by the mock rtsClient).
2017-05-17 09:46:17 +01:00
David Baker
75eea89c08
Revert "Merge pull request #765 from t3chguy/t3chguy/escape-closes-user-settings"
...
This reverts commit a29d8c2af2
, reversing
changes made to 1d836c7d02
.
2017-05-16 16:12:57 +01:00
David Baker
ebfafb3639
Revert "Merge pull request #807 from matrix-org/matthew/quick-search"
...
This reverts commit 0ad1d8caf3
, reversing
changes made to 1189368aab
.
2017-05-16 16:11:01 +01:00
Luke Barnard
c6350379dc
Merge pull request #881 from matrix-org/luke/user-settings-remove-current-password
...
Remove "Current Password" input if mx_pass exists
2017-05-16 12:29:23 +01:00
Luke Barnard
eb36e979c2
Reference store token, call .remove on it on unmount
2017-05-16 11:52:51 +01:00
Luke Barnard
d7eec27c4b
Merge pull request #889 from matrix-org/luke/new-guest-access-need-to-set-mx-id
...
Replace NeedToRegisterDialog /w SetMxIdDialog
2017-05-15 18:36:20 +01:00
Luke Barnard
f199f3599e
Replace NeedToRegisterDialog /w SetMxIdDialog
...
This uses MatrixChat's `view_set_mxid`
2017-05-15 17:31:26 +01:00
Luke Barnard
269fd51130
Remove SessionStore listener on unmount
2017-05-15 17:17:32 +01:00
Luke Barnard
eb0041d21a
Remove redundant state
2017-05-15 17:03:54 +01:00
Luke Barnard
f73cf772fb
Move sessionStore ref from MatrixChat to LoggedInView
...
MatrixChat didn't actually use the sessionStore, so this is one less prop to pass.
2017-05-15 14:56:05 +01:00
Luke Barnard
da3cb0ee48
SessionStore extends flux.Store
2017-05-15 14:52:19 +01:00
Michael Telatynski
8715b5233c
link to #/register
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-15 10:31:17 +01:00
Michael Telatynski
83cb1e6e29
tell guests they can't use filepanel until they register
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-15 10:15:35 +01:00
Matthew Hodgson
317e24852d
explicitly label email & phone add sections; fixes https://github.com/vector-im/riot-web/issues/3531
2017-05-15 03:03:17 +01:00
Matthew Hodgson
7d8c104cb8
Merge pull request #884 from matrix-org/t3chguy/tiny_usersettings_fixes
...
I broke UserSettings for webpack-dev-server
2017-05-15 01:57:45 +01:00
Matthew Hodgson
7f78e737eb
Merge pull request #880 from matrix-org/t3chguy/fixRoomHeaderPreviewing
...
various fixes to RoomHeader
2017-05-15 01:52:42 +01:00
Matthew Hodgson
38cb123506
Merge pull request #883 from matrix-org/t3chguy/file_panel_fixes
...
show error if we can't set a filter because no room
2017-05-15 00:19:45 +01:00
Michael Telatynski
6ec799a028
I broke UserSettings for webpack-dev-server
...
where version file doesn't exist, version starts as null
then gets set to undefined by the promise
this wasn't handled and now undefined is understood to be unknown
rather than null
also picked up on a small casing error
threePids vs threepids, most things using the latter apart from the init
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 15:04:20 +01:00
Michael Telatynski
29568feb95
show error if we can't set a filter
...
this way it still works for a room we've been in before
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-12 22:38:57 +01:00
Luke Barnard
683f1b8a1a
Invite the welcome user after registration if configured
...
This will shift focus to the welcome user DM.
We probably don't want to do this for teams, but I shall leave that for another PR that fixes teams WRT to new-guest-access.
2017-05-12 17:39:38 +01:00
Luke Barnard
536724e7c5
ES6 SessionStore
2017-05-12 15:58:44 +01:00
Luke Barnard
5c8187dc8f
Explicitly pass thru userHasGeneratedPassword
2017-05-12 15:47:37 +01:00
Luke Barnard
1176573f39
Implement SessionStore
...
This wraps session-related state into a basic flux store. The localStorage item 'mx_pass' is the only thing managed by this store for now but it could easily be extended to track other items (like the teamToken which is passed around through props a lot)
2017-05-12 12:02:45 +01:00
Luke Barnard
8725ef3863
Remove "Current Password" input if mx_pass exists
...
If the user is PWLU, do not show "Current Password" field in ChangePassword and when setting a new password, use the cached password.
2017-05-11 17:47:45 +01:00
Michael Telatynski
5e4467adce
hide settings/search appropriately
...
pass inRoom prop to RoomHeader (defaults to false)
remove default onSettingsClick, handle if it is passed EVERYWHERE
if onSettingsClick is passes, show that button
show search button only if we are in the room, seems to fail otherwise
this seems to handle all cases I could throw at it. Give it your best
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-11 17:35:06 +01:00
Luke Barnard
cfa108a28c
No need to dispatch, just call setMxId
2017-05-11 17:07:03 +01:00
Luke Barnard
6326a95b39
Prevent ROUs from creating new chats/new rooms
...
Spawn a SetMxIdDialog instead and do nothing.
2017-05-11 17:04:11 +01:00
Luke Barnard
2437eb7910
Merge pull request #874 from matrix-org/luke/fix-rm-not-updating
...
Fix RM not updating if RR event unpaginated
2017-05-11 15:54:49 +01:00
Luke Barnard
5151264f60
Merge branch 'develop' into new-guest-access
...
Conflicts:
src/component-index.js
2017-05-11 13:22:30 +01:00
Luke Barnard
852e1eb720
Rename some variables
...
`ReadUpTo` -> `RR`
`ReadReceipt` -> `RR`
`ReadMarker` -> `RM`
2017-05-11 09:31:59 +01:00
Luke Barnard
3815ad6cd0
Sent -> Event
2017-05-11 09:20:34 +01:00
Luke Barnard
856ef58d46
fix commen
2017-05-10 14:55:58 +01:00
Luke Barnard
fe8ea4ffe7
Rename vars, linting
2017-05-10 14:51:47 +01:00
Luke Barnard
30e183a7f1
Only send RR if we should
2017-05-10 14:48:01 +01:00
Luke Barnard
7f766d89c3
Rename variables, more comments
2017-05-10 14:42:06 +01:00
Luke Barnard
ad2ed12980
Redesign mxID chooser, add availability checking
...
Requires https://github.com/matrix-org/matrix-js-sdk/pull/432 for availability checking.
Changes:
- Redesign the dialog to look more like https://github.com/vector-im/riot-web/issues/3604#issuecomment-299226875
- Attempt to fix wrong password being stored by generating one per SetMxIdDialog (there's no issue tracking this for now, I shall open one if it persists)
- Backwards compatible with servers that don't support register/availability - a spinner will appear the first time a username is checked because server support can only be determined after a request.
- Rate-limited by a 2s debounce
- General style improvements
2017-05-10 14:22:17 +01:00
Luke Barnard
ca79d9bb6e
Separate predicates for RM/RR
...
Instead of modifying the condition for updating the RR, separate the RM and RR conditions and use an OR to decide when to set both.
Make some logs only log when DEBUG.
2017-05-09 17:36:19 +01:00
Luke Barnard
ac25fd6d87
Remove log
2017-05-09 10:16:37 +01:00
Luke Barnard
488fa3745b
Fix RM not updating if RR event unpaginated
...
If the RR event has been unpaginated, the logic in `sendReadReceipt` will now fallback on the event ID of the RM which in theory is always =< RR event ID stream-wise.
2017-05-09 10:03:40 +01:00
Luke Barnard
fe121126f5
Merge branch 'develop' into rte-fixes
...
Conflicts:
src/UserSettingsStore.js
src/autocomplete/EmojiProvider.js
src/components/views/rooms/MessageComposerInput.js
2017-05-08 17:08:59 +01:00
David Baker
85ed39b9d8
Put room name in 'leave room' confirmation dialog
...
https://github.com/vector-im/riot-web/issues/3850
2017-05-08 16:49:40 +01:00
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
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
Luke Barnard
6f4eb9d8b1
Show password nag bar when user is PWLU
2017-05-05 16:31:33 +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
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
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
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
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
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
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
791f7f7f6b
Merge branch 'luke/room-directory-remove-rhs' into luke/room-directory-improve
2017-04-27 17:57:19 +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
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
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
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
Luke Barnard
96e7479d8b
Show "jump to message" when message is not paginated
2017-04-25 17:19:36 +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
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
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
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
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
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
e18e965eb8
missing key attr
2017-04-22 16:26:39 +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
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
872d0e0f50
Merge branch 'develop' into travis/hide-read-receipts
2017-04-22 01:36:38 +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
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
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
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
Luke Barnard
67089cb527
If new RR-RM API not implemented, fallback to RR-only API
2017-04-20 14:34:59 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
Luke Barnard
c650cfffac
logged_in -> loggedIn
...
Also added `loggingIn` to `initialState` and removed some commented code.
2017-03-27 17:14:39 +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
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
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
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
Michael Telatynski
69c3bd7f80
Escape closes UserSettings
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-03-20 12:13:21 +00:00
David Baker
92d5f55a46
Merge remote-tracking branch 'origin/develop' into dbkr/threepid_display
2017-03-17 13:55:07 +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
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
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
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
d8a30aa848
Double UNPAGINATION_PADDING again
2017-03-13 13:48:15 +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
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
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