Commit graph

5620 commits

Author SHA1 Message Date
Bruno Windels
920e0d397c Merge branch 'develop' into bwindels/fixstalerr 2018-09-19 12:15:41 +02:00
Matthew Hodgson
d39889e2cf
Merge pull request #2167 from matrix-org/t3chguy/m.room.aliases
Add m.room.aliases to the timeline
2018-09-18 11:14:44 +01:00
Matthew Hodgson
ece041d059 fix NPE on name (related to LL?) 2018-09-18 00:16:25 +01:00
Bruno Windels
8c4f4765df remove initial parameter and show available members on invite instead 2018-09-17 20:03:01 +02:00
Bruno Windels
0727e0f8d3 mounted can be set straight in componentWillMount 2018-09-17 20:02:15 +02:00
Bruno Windels
e8b4770940 fix lint 2018-09-17 20:01:55 +02:00
Bruno Windels
841aa4b800 check LL with client as this takes server support into account 2018-09-17 19:28:06 +02:00
Bruno Windels
0ce7bb8995 pass membersLoaded state to TimelinePanel to force it to re-render
... once the members are loaded.
2018-09-17 19:27:25 +02:00
Matthew Hodgson
0e1a814d23 remove RoomAliasesEvent in favour of simpler textual event 2018-09-17 18:27:17 +01:00
Bruno Windels
473f2dd72b pass room to _loadMembersIfJoined, it's called when newState not applied
_loadMembersIfJoined is called from
_onRoomLoaded < _onRoomViewStoreUpdate, before incoming state
from the store is applied to this.state, so looking up the room
with this.state.roomId doesn't always work, which would cause
the members not to be loaded. Pass in the room instead.
2018-09-17 19:24:34 +02:00
Bruno Windels
e0a789f77e remove untrue comment, as we only load the members when joining 2018-09-17 19:21:22 +02:00
Bruno Windels
e1b9aa9626 better naming and document method 2018-09-17 19:20:26 +02:00
Matthew Hodgson
dc7212ec2b switch back to simple TextForEvent
I haven't found anyone who can justify to me why we need
more complicated plurals for i18n (even in Polish) for
%(senderName)s added %(addedAddresses)s and removed %(removedAddresses)s as addresses for this room.
2018-09-17 18:20:12 +01:00
Bruno Windels
d276b17c2a remove dead code 2018-09-17 19:19:07 +02:00
Bruno Windels
c3914d3493 show empty list as initial state instead of spinner
the spinner should only be shown when joined
2018-09-17 19:18:55 +02:00
Bruno Windels
2ed414494f use Room.myMembership event instead of RoomMember.membership for me
This is more reliable with LL enabled as the syncing user is
only known when it was active in the current timeline
or when the members have been loaded
2018-09-17 19:14:52 +02:00
Matthew Hodgson
3b868064c7 merge in develop 2018-09-16 19:06:52 +01:00
Bruno Windels
86cbe34181 rerender after members are loaded so pills and RR get rerendered 2018-09-14 18:35:16 +02:00
Bruno Windels
27c496aecb remove unneeded async keywords 2018-09-14 13:55:47 +02:00
Bruno Windels
f194f323f4 postpone loading the members until the user joined the room
when peeking, the members weren't being loaded at all because
the room wasn't available yet,
and the need for loading the members was never re-evaluated after that.

This only loads the members once the user has joined the room,
which also helps to avoid load all the members before an invite
is accepted.
2018-09-13 18:43:24 +02:00
David Baker
518be24a5b
Merge pull request #2164 from matrix-org/dbkr/dont_exit_fullscreen_when_not
Don't try to exit fullscreen if not fullscreen
2018-09-11 13:03:09 +01:00
David Baker
d3038ea765 Don't try to exit fullscreen if not fullscreen
This was causing annoying exceptions on latest Chrome. Use
document.fullScreenElement to detect if we're fullscreen and don't
try to exit if we aren't.
2018-09-11 11:31:24 +01:00
Bruno Windels
ecaabd6b75
Merge pull request #2161 from matrix-org/bwindels/dontupdatememberlistwhileloading
avoid updating the memberlist while the spinner is shown
2018-09-11 10:57:29 +02:00
David Baker
666c9a68e3
Merge pull request #2163 from matrix-org/bwindels/logllfailroomidcorrectly
fix logging room id when LL members fail
2018-09-11 09:54:29 +01:00
Bruno Windels
deaad4bcb1 even better as the method called is on room 2018-09-10 18:11:08 +02:00
Bruno Windels
694ee5a2c8 fix logging room id when LL members fail 2018-09-10 18:09:11 +02:00
Bruno Windels
2aaf3e6b89 dont assign member in getInitialState 2018-09-10 17:39:03 +02:00
Bruno Windels
92f7e29132 missed one {} -> [], fix e2e tests 2018-09-10 17:32:40 +02:00
Bruno Windels
5044d4f2d6 dont keep the spinner in the memberlist when fetching /members fails 2018-09-10 14:56:10 +02:00
Bruno Windels
0cd222ef0b make users available in member by requesting them from client right before
before this was already foreseen, but memberDict wasn't being refreshed
as it's only used in roomMembers(), I got rid of memberDict as well
2018-09-07 23:44:20 +02:00
Bruno Windels
7fe822ca17 Merge branch 'develop' into bwindels/dontupdatememberlistwhileloading 2018-09-07 23:43:25 +02:00
Bruno Windels
467cdd2f1f Merge branch 'develop' into bwindels/optimizememberlist 2018-09-07 18:32:13 +02:00
David Baker
877e949d1c
Merge pull request #2156 from matrix-org/bwindels/dontrefreshmembersforotherrooms
avoid memberlist refresh for events related to rooms other but the current
2018-09-07 13:57:29 +01:00
Bruno Windels
101dad83aa same for right panel 2018-09-07 14:16:26 +02:00
Bruno Windels
9cc9fbf924 avoid memberlist refresh for events related to rooms other but the current 2018-09-07 14:05:26 +02:00
David Baker
fa669bf096 Error on splash screen if sync is failing
Display an error on the splash screen with the spinner if the sync
request is not working, rather than just sitting there with a spinner
as if nothing is wrong.

Fixes https://github.com/vector-im/riot-web/issues/7148
2018-09-07 12:18:25 +01:00
Bruno Windels
fec7d2ee5f avoid updating the memberlist while the spinner is shown
the memberlist gets updated constantly while the LL members
are being added to the room state. this slows things down unneed, and is one of the
main cause of dropping frames when member arrive.
2018-09-07 12:00:19 +02:00
David Baker
c8ab8bf5f8
Merge pull request #2150 from matrix-org/dbkr/disable_ilag_if_unsupported
Do full registration if HS doesn't support ILAG
2018-09-06 16:23:32 +01:00
Bruno Windels
26df485607 Merge branch 'develop' into revert-2149-revert-2145-bwindels/fixllroompermission 2018-09-06 15:35:41 +02:00
David Baker
4c8d2de563
Revert "Revert "Don't rely on room members to query power levels"" 2018-09-06 11:48:23 +01:00
David Baker
9e64a22884 s/DidMount/WillMount/ in MessageComposerInput
This fixes the tests that broke with https://github.com/matrix-org/matrix-js-sdk/pull/717

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

Using WillMount is more symmertrical anyway since the resulting teardown code must be in
WillUnmount (since there is no DidUnmount).
2018-09-06 11:44:13 +01:00
David Baker
27fa21e403 Replace view_set_mxid with require_registration
To put all the other flows through the to-ilag-or-not-to-ilag flow
2018-09-05 18:08:49 +01:00
David Baker
34d27954cf
Revert "Don't rely on room members to query power levels" 2018-09-05 18:03:48 +01:00
David Baker
a042f4d0af Do full registration if HS doesn't support ILAG
ILAG only works on HSes that allow registering without an email
address, so whenever we redirect to the ILAG flow, check what
registration flows the server supports, and if it doesn't offer one
that's ILAG-compatible, prompt the user to go through the full
registration process instead.

This doesn't change all the entry points into ILAG, I'll do that
in a separate commit.
2018-09-05 17:07:39 +01:00
Bruno Windels
8500a7131f avoid unneeded lookups in memberDict
have members be an array of RoomMember instead of userId, so
we can avoid multiple lookups when sorting, rendering, ...
2018-09-05 15:25:08 +02:00
Bruno Windels
50de22fb51
Merge pull request #2145 from matrix-org/bwindels/fixllroompermission
Don't rely on room members to query power levels
2018-09-05 13:07:55 +02:00
David Baker
4517eaba6f
Merge pull request #2148 from matrix-org/dbkr/dont_say_email_optional_if_it_isnt
Correctly mark email as optional
2018-09-05 11:31:19 +01:00
David Baker
e5b761b754
Merge pull request #2059 from matrix-org/t3chguy/join_community_fire_ilag_flow
guests trying to join communities should fire the ILAG flow.
2018-09-05 08:15:24 +01:00
David Baker
775d995052 Lint 2018-09-04 18:51:24 +01:00
David Baker
a07799879c Fix tests 2018-09-04 18:50:18 +01:00
David Baker
dc14a42148 Correctly mark email as optional
Look at the flows to see if there is one we can complete without
an email address. Mark the email address as optional iff there is.
2018-09-04 18:26:09 +01:00
Bruno Windels
bc97a3efb5
Merge pull request #2143 from matrix-org/bwindels/fixreconnectspinner
Fix: show spinner again while recovering from connection error
2018-09-04 16:40:30 +02:00
Bruno Windels
be66f98381 use room method for checking power levels
as it is always are of the syncing user's membership
in case of lazy loading members
2018-09-04 15:35:44 +02:00
Bruno Windels
5c395e4db7 wait for room creation, to go to home page in case of failure 2018-09-04 14:26:36 +02:00
Bruno Windels
1eabb6012a
Merge pull request #2139 from matrix-org/bwindels/memberlist-spinner
Show spinner in member list while loading members
2018-09-03 15:05:27 +02:00
Bruno Windels
cae419e304 avoid rerendering when LL is disabled 2018-09-03 11:13:56 +02:00
Bruno Windels
debcc20604 also show spinner on new CATCHUP state 2018-08-30 15:39:48 +02:00
David Baker
75a2668e42
Merge pull request #2141 from matrix-org/bwindels/fixdmavatar
Fix DM avatar
2018-08-30 11:45:54 +01:00
Bruno Windels
d7868dbe33 delegate avatar selection to room for rooms with two members (but not in m.direct) 2018-08-30 10:54:01 +02:00
David Baker
2c1ba6f104
Merge pull request #2124 from matrix-org/dbkr/tombstone
Support m.room.tombstone events
2018-08-29 18:38:48 +01:00
David Baker
6cbe4144d4 unused import 2018-08-29 18:28:16 +01:00
David Baker
c40ac49b2a Merge remote-tracking branch 'origin/develop' into dbkr/roomcreate 2018-08-29 18:18:08 +01:00
David Baker
bd0a9cf3a0 Merge remote-tracking branch 'origin/develop' into dbkr/room_upgrade 2018-08-29 15:51:07 +01:00
Bruno Windels
f9c40390e9 set state after setting _showPresence to avoid all members to appear offline on matrix.org 2018-08-29 11:09:55 +02:00
Bruno Windels
e9e5abfcc5 show a spinner in the memberlist while loading the members 2018-08-29 10:30:25 +02:00
Bruno Windels
cc0375fa66
Merge pull request #2137 from matrix-org/bwindels/fixllroomavatar
Fix: dont show 1:1 avatar for rooms +2 members but only <=2 members loaded
2018-08-28 15:35:19 +02:00
Bruno Windels
06160f5fae fix lint 2018-08-27 18:52:33 +02:00
Bruno Windels
6a077655e9 bring back old behaviour to also show member avatars if not marked as 1:1 room 2018-08-27 18:48:21 +02:00
Bruno Windels
36665d3c69 Fix: dont show 1:1 avatar for room with only 2 members loaded 2018-08-27 17:40:31 +02:00
David Baker
c03abddd1c s/terms and conditions/legal/ 2018-08-24 11:38:38 +01:00
David Baker
18ed6eb63c Rener terms & conditions in settings
If configured in config file
2018-08-24 11:35:21 +01:00
David Baker
98dabe1a46
Merge pull request #2132 from matrix-org/bwindels/fixllcomposeravatar
Fix LL crash trying to render own avatar in composer when member isn't available yet
2018-08-23 12:41:18 +01:00
David Baker
06ffc70aa4
Merge pull request #2127 from matrix-org/dbkr/hide_replaced_rooms
Hide replaced rooms
2018-08-23 09:33:40 +01:00
David Baker
269670ed20
Merge pull request #2128 from matrix-org/dbkr/move_tiffany_check
Fix CPU spin on joining large room
2018-08-23 09:33:17 +01:00
David Baker
b34aad50bc
Merge pull request #2131 from matrix-org/dbkr/change_mau_server_notice_format
Change format of server usage limit message
2018-08-23 09:32:56 +01:00
Bruno Windels
37e60e4fc4 wait for members loading to finish to show the avatar in the composer 2018-08-23 00:02:20 +02:00
David Baker
3b0b836637 Change format of server usage limit message
As per https://github.com/matrix-org/matrix-doc/issues/1452 /
https://github.com/matrix-org/synapse/pull/3680/
2018-08-22 17:54:02 +01:00
David Baker
a5f98b6a29 Make the is-alone check use efficient methods 2018-08-22 17:05:36 +01:00
David Baker
f679acea08
Revert "Revert "Fix showing peek preview while LL members are loading"" 2018-08-22 16:35:58 +01:00
David Baker
bf7633250a
Revert "Fix showing peek preview while LL members are loading" 2018-08-22 16:16:17 +01:00
David Baker
852d6a3be5 Fix CPU spin on joining large room
checkIfAlone() filters the whole member list, which is fine until
we do it once for every membership event, then we have an n^2
problem. Move it into the rate limited function.

Fixes https://github.com/vector-im/riot-web/issues/7163
2018-08-22 14:34:02 +01:00
Bruno Windels
a54629276f use getJoinedMemberCount() instead of getJoinedMembers().length as the latter doesnt take LL into account 2018-08-22 14:08:18 +02:00
Bruno Windels
860c6355f0 do self membership checks with getMyMembership elsewhere as well 2018-08-22 14:06:28 +02:00
David Baker
b7570002e0 Hide replaced rooms
By using new getVisibleRooms() in js-sdk
2018-08-22 12:01:29 +01:00
Bruno Windels
c38b286e8e falsy check is obsolete now 2018-08-22 12:28:00 +02:00
Bruno Windels
01a0260ac8 use getMyMembership instead of member 2018-08-22 10:33:13 +02:00
David Baker
8d6d1be992 Typo 2018-08-21 16:40:04 +01:00
David Baker
7f8cd203a8 Support m.room.tombstone events
For https://github.com/vector-im/riot-web/issues/7164
2018-08-21 15:56:56 +01:00
David Baker
ab10b5493b Support room creation events
For https://github.com/vector-im/riot-web/issues/7164
2018-08-20 16:20:59 +01:00
David Baker
9f19896df0 Support for room upgrades
* Show when a room upgrade is needed
 * Dialog box to perform the upgrade
2018-08-17 14:54:43 +01:00
David Baker
94c7ae2bf5
Merge pull request #2098 from matrix-org/dbkr/destroy_widget
Destroy non-persistent widgets when switching room
2018-08-17 09:53:41 +01:00
David Baker
e3643bd74c Lint 2018-08-17 09:42:23 +01:00
Bruno Windels
cead4096d8
Merge pull request #2118 from matrix-org/bwindels/feature_lazyloading
Lazy loading of room members
2018-08-16 18:14:55 +02:00
David Baker
8567ce585b Factor out duplication of resource limit i18n 2018-08-16 13:31:17 +01:00
David Baker
7d690d98e3 Rename variable as it's now not just MAU 2018-08-16 10:35:27 +01:00
David Baker
9bde468e30 Shift to M_RESOURCE_LIMIT_EXCEEDED errors
With support for admin_contact and limit_type fields

For https://github.com/vector-im/riot-web/issues/7091
2018-08-15 17:03:54 +01:00
David Baker
c736ae7efb Copyright 2018-08-14 16:53:34 +01:00
David Baker
f20920718a Show room version number in room settings
Also change wording of the Room ID bit to match

Requires https://github.com/matrix-org/matrix-js-sdk/pull/689
For https://github.com/vector-im/riot-web/issues/7164
2018-08-14 14:28:30 +01:00
Bruno Windels
a86ca952b3 forgot to remove this 2018-08-14 09:38:43 +02:00
Bruno Windels
7dc92fe917 Avoid clearing e2e encryption keys, also avoid warning 2018-08-13 17:24:27 +02:00