Travis Ralston
987ad0b0db
Check if users exist before inviting them and communicate errors
...
Fixes https://github.com/vector-im/riot-web/issues/3283
Fixes https://github.com/vector-im/riot-web/issues/3968
Fixes https://github.com/vector-im/riot-web/issues/4308
Fixes https://github.com/vector-im/riot-web/issues/1597
Fixes https://github.com/vector-im/riot-web/issues/6790
This does 3 things:
* Makes the `MultiInviter` check for a user profile before attempting an invite. This is to prove the user exists.
* Use the `MultiInviter` everywhere to avoid duplicating the logic. Although a couple places only invite one user, it is still worthwhile.
* Communicate errors from the `MultiInviter` to the user in all cases. This is done through dialogs, where some existed previously but were not invoked.
Specifically to the 403 error not working: What was happening was the `MultiInviter` loop was setting the `fatal` flag, but that didn't resolve the promise it stored. This caused a promise to always be open, therefore never hitting a dialog.
2018-11-29 15:05:53 -07:00
Aaron Raimist
49ce4ef117
eslint --fix src/
...
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 22:50:38 -05:00
Aaron Raimist
752d816780
Fix some more lint errors
...
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-11 22:06:01 -05:00
David Baker
18661e042d
Fall back to another store if indexeddb start fails
...
If we can't start indexeddb, fall back to a different store.
Previously we just ignored the exception and ploughed on anyway, on
the assumption that startup() was just for the indexeddb store to
load data anyway, and if that failed it would just do an initial
/sync instead (and also we'd keep trying to save the sync back which
would fail...). Then, in the previous release we started pulling
the settings out of the store on startup, making the assumpton that
the store actually worked, so the read obviously failed and the app
failed to start up.
This makes Riot work in Tor browser / firefox in daft mode again.
2018-10-04 13:40:56 +01:00
David Baker
1ec0f04baf
Remove old migration code
...
...as instructed!
2018-10-03 18:33:34 +01: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
3b29b7aab6
fix getDMRoomsForUserId not calling _getUserToRooms first (thanks e2e tests)
2018-09-04 17:36:50 +02:00
Bruno Windels
44a53cfc0d
use lodash for unique function instead of rolling our own
2018-09-04 16:03:15 +02:00
Bruno Windels
e171296d51
patch self-chats lazily in favor of awaiting sync state
2018-09-04 16:00:40 +02:00
Bruno Windels
6c7cb380e0
add warning in console when patching rooms, so it appears in rage shakes
2018-09-04 13:12:26 +02:00
Bruno Windels
441036ff93
remove duplicates from room lists
2018-09-04 13:12:26 +02:00
Bruno Windels
245dfbf957
only put NON-guessed rooms in self-chats
2018-09-04 13:12:26 +02:00
Bruno Windels
c12abab52d
wait until rooms are available
...
as accountData get processed before rooms, during initial sync
or loading sync from cache, accountData gets emitted
before any room is available, hence our patching wasn't doing
anything. Just as well, because it would have failed (see next commits)
2018-09-04 13:12:26 +02:00
Bruno Windels
fb0a0d5d9e
allow self-chats
2018-08-30 12:36:53 +02:00
Bruno Windels
d8f15e1159
make sure we still have the room
2018-08-30 12:06:34 +02:00
Bruno Windels
85b6f157c1
only patch m.direct data on server once per session to avoid request storm
2018-08-30 12:01:13 +02:00
Bruno Windels
379ddfff29
dont reassign userToRooms as we're just patching it up, also better check if we really have self DMs
2018-08-30 11:50:57 +02:00
Bruno Windels
caff60d56d
fix var decl
2018-08-30 11:37:13 +02:00
Bruno Windels
5afb3bfb29
patch up DMs marked to self (can happy if any client has a bug here)
2018-08-30 10:53:25 +02: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
Bruno Windels
c8b6ccba25
fallback to room summary for dm detection
2018-08-14 11:43:03 +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
Bruno Windels
d87d34030a
fix dm detection and conf call code with lazy loading
2018-07-25 16:10:49 +02:00
Bruno Windels
e237a02fa5
use more consistent naming
2018-07-25 16:10:49 +02:00
Bruno Windels
54904c9282
use member helper method instead of digging inside member
2018-07-25 16:10:49 +02:00
David Baker
7aab6fa6f1
Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo
2018-07-18 09:35:57 +01:00
David Baker
983dc3ad2e
lint
2018-07-16 16:19:18 +01:00
David Baker
0f32c3a018
PR feedback
2018-07-16 13:18:10 +01:00
David Baker
e56feea9ec
Put always-on-screen widgets in top left
...
always-on-screen widgets now appear in the top-left where the
call preview normally is if you're not in the room that they're in.
Fixes https://github.com/vector-im/riot-web/issues/7007
Based off https://github.com/matrix-org/matrix-react-sdk/pull/2053
2018-07-12 18:43:49 +01:00
David Baker
c26b300f30
more comments
2018-07-05 19:58:10 +01:00
David Baker
eb552e5cef
Just pass the roomId into WidgetEchoStore
2018-07-05 18:43:20 +01:00
David Baker
c665ab8a22
Add error dialog if widget remove fails
...
Also up the timeout because matrix.org is that slow
2018-07-03 11:55:41 +01:00
David Baker
8b64ddcbe8
Do some level of local echo for widgets
...
* Show a spinner while we wait for widgets to be deleted
* Hide widgets while they're pending deletion
* Don't put another jitsi widget into the room if there's already
one pending
2018-07-03 11:16:44 +01:00
David Baker
c780cd05a8
Change argument order of setRoomWidget
...
So when deleting a widget we can just omit the ones we don't need
2018-06-26 16:33:28 +01:00
David Baker
cb89406d3e
Indent
2018-06-26 15:42:29 +01:00
David Baker
4a39297e65
PR feedback
2018-06-26 15:41:43 +01:00
David Baker
0a6450507e
Bits of PR feedback
2018-06-26 15:21:22 +01:00
David Baker
ca8a4a0c3f
Remove unused function
2018-06-26 12:08:33 +01:00
David Baker
6cf11a15e6
Move WidgetUtils to utils dir
2018-06-26 11:59:16 +01:00
David Baker
0f2c47937c
Merge the two different widget utils files
2018-06-26 11:52:21 +01:00
Travis Ralston
210fcf0d52
Correctly identify sticker picker widgets
...
Widgets added to account data have the `type` of "m.widget", meaning we have to look at the `content.type` which will tell us what it is.
This also fixes a bug where all user widgets become sticker picker widgets under the right conditions.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-13 17:15:35 -06:00
Luke Barnard
6ec9e5f670
Merge pull request #1866 from matrix-org/luke/luke/group-store-refactor
...
Refactor GroupStores into one global GroupStore
2018-05-01 12:33:06 +01:00
Luke Barnard
023daef4b7
Refactor GroupStores into one global GroupStore
...
Take a step closer to a flux-like architecture for group data, for
the purposes of providing features that require it.
Now the app has a single GroupStore that can be poked to fetch
updates for a particular group.
2018-05-01 11:24:17 +01:00
Matthew Hodgson
bffd5bb891
fix constness
2018-04-29 03:09:17 +01:00
Matthew Hodgson
9701fd32b7
switch back to blob urls for rendering e2e attachments
...
Based on @walle303's work at https://github.com/matrix-org/matrix-react-sdk/pull/1820
Deliberately reverts 8f778f54fd
Mitigates XSS by whitelisting the mime-types of the attachments so that malicious ones
should not be recognised and executed by the browser.
2018-04-29 03:07:31 +01:00
Matthew Hodgson
70f3804227
move room directory logic over from riot-web
2018-04-11 23:58:46 +01:00
Richard Lewis
11915b0cdf
Fix user widget event type.
...
Add comments for clarity.
2018-04-02 10:02:41 +01:00
Richard Lewis
93804e80b8
Return promise
2018-03-29 20:37:24 +01:00
Richard Lewis
b1e7dcf216
Cleanup / simplify code.
2018-03-29 17:52:34 +01:00