Commit graph

3768 commits

Author SHA1 Message Date
David Baker
9e64a22884 s/DidMount/WillMount/ in MessageComposerInput
This fixes the tests that broke with https://github.com/matrix-org/matrix-js-sdk/pull/717

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

Using WillMount is more symmertrical anyway since the resulting teardown code must be in
WillUnmount (since there is no DidUnmount).
2018-09-06 11:44:13 +01:00
David Baker
27fa21e403 Replace view_set_mxid with require_registration
To put all the other flows through the to-ilag-or-not-to-ilag flow
2018-09-05 18:08:49 +01:00
David Baker
34d27954cf
Revert "Don't rely on room members to query power levels" 2018-09-05 18:03:48 +01:00
Bruno Windels
8500a7131f avoid unneeded lookups in memberDict
have members be an array of RoomMember instead of userId, so
we can avoid multiple lookups when sorting, rendering, ...
2018-09-05 15:25:08 +02:00
Bruno Windels
50de22fb51
Merge pull request #2145 from matrix-org/bwindels/fixllroompermission
Don't rely on room members to query power levels
2018-09-05 13:07:55 +02:00
David Baker
4517eaba6f
Merge pull request #2148 from matrix-org/dbkr/dont_say_email_optional_if_it_isnt
Correctly mark email as optional
2018-09-05 11:31:19 +01:00
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
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
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
8fd7c4a66b Merge remote-tracking branch 'origin/develop' into matthew/e2e_backups 2018-08-24 14:07:16 +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
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
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
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
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
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
David Baker
f7f62ba09d Lint 2018-08-13 14:04:08 +01:00
David Baker
05bf200a72 Don't crash if scrollbars updated before init
The initialisation here is done on a timer to allow the DOM
elements to be in place before it's run, so it's possible for an
update to happen ebfore the initialisation. Stop & bail out if
there is no this.stickies.
2018-08-13 13:49:22 +01:00
David Baker
6593ee09d1 Warning bar for MAU limit hit
Somewhat untested, sorry
2018-08-07 17:04:37 +01:00
David Baker
f44cc8e66e
Merge pull request #2112 from matrix-org/dbkr/recognise_server_notices_room
Recognise server notices room(s)
2018-08-07 09:52:25 +01:00
David Baker
b5ce1ac5e1 Recognise server notices room(s)
and put them in their own section at the bottom
2018-08-06 18:00:40 +01:00
David Baker
b2302af708 Update room tags behaviour to match spec more
Fix Riot's behaviour with room tags after my cleanup in
https://github.com/matrix-org/matrix-doc/pull/1457 . Although, reading
it again, it's not clear how you're supposed to tell the difference
between a reverse-dns tag name and a legacy freeform text tag
(contains a '.'?) - I've left it detecting these as freeform text
for now.
2018-08-06 16:58:54 +01:00
David Baker
cd18744101 unused import 2018-08-03 16:10:50 +01:00
David Baker
9a2155f1ad Oops, add file to right branch 2018-08-03 16:03:27 +01:00
Bruno Windels
f1643f77ac fix lint 2018-08-02 19:57:20 +02:00
Bruno Windels
e1843601be support directional content in pill member fake 2018-08-02 17:09:18 +02:00
Bruno Windels
802efc7694 given the != join check, isInvite will never be true
Also, put comments in right order
2018-08-02 11:47:24 +02:00
Bruno Windels
908de56c6d replace getMember(myId).membership with getMyMembership
This works with rooms which haven't had their members
loaded yet.
2018-08-02 11:42:05 +02:00
David Baker
7875d37c8e Destroy non-persistent widgets when switching room 2018-08-01 15:01:11 +01:00
David Baker
148308235d
Merge pull request #2092 from matrix-org/dbkr/reposition_jitsi
Fix persistent element location not updating
2018-07-27 14:51:29 +01:00
David Baker
1fe0f04986 Fix persistend element location not updating
As hopefully all explained in comment
2018-07-27 14:33:05 +01:00
David Baker
b6ebb0cc37
Merge pull request #2089 from matrix-org/t3chguy/slate_cont2
Slate Fixes 42?
2018-07-27 14:00:53 +01:00
Michael Telatynski
0174f67fe7
fix Devtools input autofocus && state traversal when len === 1 && key=""
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-26 18:20:09 +01:00
Michael Telatynski
f264075369
null-guard history properly
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-26 17:11:32 +01:00
Michael Telatynski
265e4267b8
remove faulty onBlur/onFocus code which caused selection to rollback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-26 15:00:43 +01:00
Bruno Windels
d87d34030a fix dm detection and conf call code with lazy loading 2018-07-25 16:10:49 +02:00
Bruno Windels
f79e2eae40 might not have loaded members here yet 2018-07-25 16:10:49 +02:00
Bruno Windels
866b4bb067 use isKicked method in preview bar 2018-07-25 16:10:49 +02:00
Bruno Windels
8c9ceca14f take into account lazy loading when enlarging avatar 2018-07-25 16:10:49 +02:00
David Baker
cf6ce0c1e2
Merge pull request #2082 from matrix-org/t3chguy/slate_cont2
Moar Slate Fixes
2018-07-24 17:34:20 +01:00
David Baker
c19a5bd2a8
Merge pull request #2084 from matrix-org/dbkr/store_destroy_persistent_widget
Make ActiveWidgetStore clear persistent widgets
2018-07-24 17:12:49 +01:00
David Baker
7044410a13 Move destroyPersistentWidget to store 2018-07-24 16:50:34 +01:00
David Baker
ec4c7ffb71 Make ActiveWidgetStore clear persistent widgets
ActiveWidgetStore is now reponsible for removing the current
persistent widget from the store if it's been removed from whatever
room it was in. As per comment, this leaves us with the store updating
itself in this case but in all other cases, views call setters on the
store to update its state. We should make it so the store keeps itself
up to date and views aren't responsible for keeping the store up to date.

The store now emits events so it can notify PersistentApp when it changes.

Fixes https://github.com/vector-im/riot-web/issues/7076
2018-07-24 16:21:43 +01:00
Michael Telatynski
fe3850d61f
Merge pull request #2078 from psaavedra/fix_render_in_CreateRoomDialog
CreateRoomDialog is rendered before getting the config default_federate
2018-07-24 16:03:26 +01:00
Michael Telatynski
020e714b85
fix focus and too many <p>s after a Event>Quote in RT mode
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-24 15:54:24 +01:00
Michael Telatynski
afa19cd60d
make clicking autocomplete suggestions work again
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-24 13:48:05 +01:00
Michael Telatynski
7c3873b449
fix @room pill href=undefined and @room parsing breaking subsequent pills
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-24 12:18:10 +01:00
David Baker
b8ca65627b
Merge pull request #2076 from matrix-org/t3chguy/slate_cont2
Slate Fixes
2018-07-23 17:25:51 +01:00
David Baker
6804647dda Destroy widget when its permission is revoked 2018-07-23 17:11:53 +01:00
Pablo Saavedra
77ab7d2589 CreateRoomDialog is rendered before get default_federate value
In React the order of the execution of mount and render functions
is: `componentWillMount --> render --> componentDidMount`

The `CreateRoomDialog` `render()` function is executed before than
the `componentDidMount()` function so the

  `this.defaultNoFederate = config.default_federate === false;`

; instruction which is executed in the `componentDidMount` function
(in `CreateRoomDialog`) is evaluated always after than the rendering
of the page.

Therefore, the obvious issue is that the values obtained from the
`SdkConfig.get()` function (`config.default_federate`) are obtained
later than their usage on `render()`.

This patch makes this change to fix the described issue:

* componentWillMount instead of componentDidMount

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
2018-07-23 17:51:51 +02:00
David Baker
4f8ece53b2 Fix CSS naming 2018-07-23 15:58:07 +01:00
David Baker
5adcd673ab Fix persisent apps being the wrong size 2018-07-23 15:08:17 +01:00
David Baker
00f78822c5 Fix widgets resetting when going to the top-left
Remove the hash from the parentUrl because this change when we
change rooms.
2018-07-23 13:50:16 +01:00
Michael Telatynski
93abb4b74b
workaround to prevent Slate getting too empty when undoing RT pastes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-20 15:06:27 +01:00
Bruno Windels
6f278ceab0
Merge pull request #2071 from matrix-org/dbkr/persistedelement_border
Fix border around persisted widgets
2018-07-20 12:23:02 +01:00
David Baker
f9af96d422
Merge pull request #2070 from matrix-org/t3chguy/slate_cont2
Even More Slate Fixes :D
2018-07-19 13:49:42 +01:00
Michael Telatynski
855f8871b8
replace heuristic for the time being as it failed with inlines like pills. Fixes vector-im/riot-web#7059
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 16:50:07 +01:00
David Baker
f868cd6699 Fix border around persisted widgets
The PersistedElement had zero height so the border ended up in the
wrong place. Add a wrapper to fix the height back.

Fixes https://github.com/vector-im/riot-web/issues/7030
Fixes https://github.com/vector-im/riot-web/issues/7029
2018-07-18 11:52:57 +01:00
Michael Telatynski
88dddb628d
in MD mode forgo any Magic Rich Pasting conversion as its confusing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:50:13 +01:00
Michael Telatynski
6bb88c0548
attempt to fix clash of Cmd-M on Mac. Should fix vector-im/riot-web#7047
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:28:48 +01:00
Michael Telatynski
3e956514b3
also prevent merge/skip on rich text pastes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 11:00:45 +01:00
Michael Telatynski
1a9de3fabe
fix undo on pasting plaintext content
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:58:27 +01:00
Michael Telatynski
f5856270cc
undo removal of stripping <p>s as it breaks HTML /mes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:48:54 +01:00
David Baker
68c46a694e lint 2018-07-18 10:18:55 +01:00
Michael Telatynski
19e5dc5799
do less rewriting for composer quote to prevent breaking pills
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:10:42 +01:00
Michael Telatynski
8bb08b1b75
fix focus on new editorState as it didn't have focus so broke when alt tab
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-18 10:10:11 +01:00
David Baker
7aab6fa6f1 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-18 09:35:57 +01:00
Matthew Hodgson
02c3bc9476
Merge pull request #2069 from matrix-org/t3chguy/slate_cont2
Moar Slate Fixes
2018-07-17 17:15:01 +01:00
Michael Telatynski
720a728278
workaround for placeholder being shown when empty text but block. Fixes vector-im/riot-web#7042
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 16:13:33 +01:00
Michael Telatynski
1b467f6ca8
fix pasting of plaintext content (prevent loads of <p>s) Fixes vector-im/riot-web#7043
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 16:02:37 +01:00
Michael Telatynski
414908611d
prevent exception if there is no text node at anchor
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:48:15 +01:00
Michael Telatynski
688776bc10
allow enter to remove current block if its empty useful for lists
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:29:40 +01:00
Michael Telatynski
8d4cead105
special-case 'inline-code' button because mark is called 'code'
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-07-17 13:24:28 +01:00