Travis Ralston
099661c2aa
Only fire setting changes for changed settings
...
Previously we were firing updates for everything, which is bad. This has an effect of causing the room list to update itself every time the user goes to toggle some account settings.
2020-06-22 10:18:38 -06:00
Jorik Schellekens
05d0309081
Lint a few semicolons
2020-06-18 14:32:43 +01:00
Travis Ralston
e4a51a7c01
Add presence icons; Convert to generic icon component
...
For https://github.com/vector-im/riot-web/issues/14039
2020-06-16 14:44:37 -06:00
Travis Ralston
eefc40e0f8
Use IDestroyable instead of IDisposable
...
For consistency within our project
2020-06-09 08:08:47 -06:00
Travis Ralston
d9bd3cfc38
Merge pull request #4732 from matrix-org/travis/badge-ts
...
Convert FormattingUtils to TypeScript and add badge utility function
2020-06-09 08:01:19 -06:00
Travis Ralston
8faa0936c9
98 -> 99+
2020-06-09 08:01:03 -06:00
Travis Ralston
1f82396ec5
Remove unused type
2020-06-08 21:40:25 -06:00
Travis Ralston
3fcd5505b3
Support prioritized room list filters
...
This is to fix an issue where when using both the community filter panel and the search box it's an AND rather than further refining the results.
This makes the search box further refine the community filter panel results.
2020-06-08 21:38:56 -06:00
Travis Ralston
21c8611300
Convert FormattingUtils to TypeScript and add badge utility function
...
The new function is to be used in the new room list.
2020-06-08 12:14:32 -06:00
Travis Ralston
e4aeabe5a6
Merge pull request #4444 from pv/jitsi-popout-immediate-join
...
Ensure active Jitsi conference is closed on widget pop-out
2020-06-07 20:22:39 -06:00
Travis Ralston
bc2fbefb5c
Remove iteratorToArray
2020-06-03 11:29:06 -06:00
Travis Ralston
73a8e77d32
Add initial filtering support to new room list
...
For https://github.com/vector-im/riot-web/issues/13635
This is an incomplete implementation and is mostly dumped in this state for review purposes. The remainder of the features/bugs are expected to be in more bite-sized chunks.
This exposes the RoomListStore on the window for easy access to things like the new filter functions (used in debugging).
This also adds initial handling of "new rooms" to the client, though the support is poor.
Known bugs:
* [ ] Regenerates the entire room list when a new room is seen.
* [ ] Doesn't handle 2+ filters at the same time very well (see gif. will need a priority/ordering of some sort).
* [ ] Doesn't handle room order changes within a tag yet, despite the docs implying it does.
2020-06-01 16:49:22 -06:00
Michael Telatynski
efd0da44a1
Give contextual feedback for manual update check instead of banner
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 18:24:45 +01:00
Travis Ralston
a9c54153ee
Update badge counts in new room list as needed
2020-05-26 14:16:33 -06:00
Michael Telatynski
fe03d02cf6
Fix reacting to redactions
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-23 08:43:15 +01:00
Jorik Schellekens
6d9d4ee547
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-05-20 13:46:17 +01:00
Travis Ralston
9aff2e836e
Merge pull request #4593 from matrix-org/travis/dispatcher-types
...
Convert the dispatcher to TypeScript
2020-05-18 23:22:32 -06:00
Travis Ralston
798e7a1f86
Merge branch 'develop' into travis/dispatcher-types
2020-05-15 09:56:02 -06:00
Michael Telatynski
eb6796bd0e
Migrate PasswordScorer to TypeScript
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 19:53:09 +01:00
Michael Telatynski
e241da3af0
Fix diff wrong route offsets because of skipping a node insert
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 15:35:38 +01:00
Travis Ralston
90a898d03f
Move dispatcher into a subdirectory
...
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00
Jorik Schellekens
fc6e5227ac
FIx roomsublist heights.
...
- also fiddles the font size numbers
2020-05-13 22:24:22 +01:00
Jorik Schellekens
33a5b5142d
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-05-07 18:01:20 +01:00
Michael Telatynski
9c916cc544
Merge branches 'develop' and 't3chguy/app_load4' of github.com:matrix-org/matrix-react-sdk into t3chguy/app_load4
...
Conflicts:
src/components/structures/MatrixChat.tsx
2020-04-30 17:41:14 +01:00
David Baker
719faed2ff
Separate toasts for existing & new device verification
...
Separate device verification toasts into ones for devices that were
there when the app loaded and a separate toast for each device that
has appeared since.
Reverts part of https://github.com/matrix-org/matrix-react-sdk/pull/4506
(clicking a device from your own UserInfo now triggers the legacy
verification flow again).
Fixes https://github.com/vector-im/riot-web/issues/13422
Fixes https://github.com/vector-im/riot-web/issues/13418
2020-04-28 18:35:16 +01:00
Jorik Schellekens
1b83faaa8d
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-04-28 15:38:46 +01:00
Jorik Schellekens
1289367a6b
Fix indentation
2020-04-28 14:31:49 +01:00
Jorik Schellekens
fe326b9f08
Enfore function name capitalisation
2020-04-28 14:31:49 +01:00
Jorik Schellekens
0fe0d728f1
lint
2020-04-27 11:51:55 +01:00
Jorik Schellekens
3f56ed393d
Use a function to convert to rem.
2020-04-27 11:51:54 +01:00
Travis Ralston
35dd892dce
Merge pull request #4458 from matrix-org/travis/fix-sticker-picker-add
...
Use WidgetType more often to avoid breaking new sticker pickers
2020-04-23 08:18:12 -06:00
Jorik Schellekens
5caec2a289
lint
2020-04-23 10:45:47 +01:00
Jorik Schellekens
05d11fea69
Use a function to convert to rem.
2020-04-23 10:45:46 +01:00
Pauli Virtanen
352ea29d17
Implement widget ReceiveTerminate capability
...
Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-22 19:37:52 +03:00
Michael Telatynski
01abb61e9a
C
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 13:08:33 +01:00
Michael Telatynski
d915e613dc
Convert promise utility module to tyepscript
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 12:27:39 +01:00
Travis Ralston
3a360b91b9
Update logging for unmanaged widgets, and add TODO comments for other areas
...
Just a minor thing that is bothersome. Renaming classes and functions is a bit more of an impact than is worth right now, so have settled for littering TODO comments all over the place.
2020-04-22 00:34:08 -06:00
Travis Ralston
f54e99c708
Use WidgetType more often to avoid breaking new sticker pickers
...
Turns out that setUserWidget() wasn't updated to take a real WidgetType, but the code in ScalarMessaging thought it did. This leads to integration managers trying to add sticker widgets with an object `type` rather than a string `type`, which doesn't work.
This updates other code paths which call into the various widget classes to use WidgetType more often. The actual code path for fixing widgets is resolved in WidgetUtils for the setUserWidget function body.
2020-04-21 16:01:10 -06:00
Travis Ralston
d8a5ba9b14
Merge branch 'develop' into travis/moar-jitsi
2020-04-20 09:21:48 -06:00
Michael Telatynski
a37ecbbb34
update console.error
2020-04-15 19:24:33 +01:00
Michael Telatynski
89bc3bdd5b
consolidate and extract copyPlaintext, copyNode and selectText
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-15 00:16:11 +01:00
Travis Ralston
4fe16b1b84
Merge branch 'develop' into travis/moar-jitsi
2020-04-14 12:57:28 -06:00
Travis Ralston
b4b0c4c6df
Add comments to highlight where we'll need m.widget support
...
For https://github.com/vector-im/riot-web/issues/13111
2020-04-09 15:14:07 -06:00
Travis Ralston
dc92f557fd
Support m.jitsi-typed widgets as Jitsi widgets
...
Fixes https://github.com/vector-im/riot-web/issues/9268
2020-04-09 15:11:57 -06:00
Michael Telatynski
24a5d8355f
Merge pull request #4288 from matrix-org/t3chguy/react_stickers
...
Deem m.sticker events as actionable for reacting
2020-04-07 17:10:42 +01:00
David Baker
a76b089cf3
Merge pull request #4319 from matrix-org/dbkr/jitsi_fix_popout
...
Fix popout support for jitsi widgets
2020-04-01 11:57:25 +01:00
David Baker
072d9f12c7
Remove unintentional changes
2020-04-01 11:41:32 +01:00
David Baker
274eb75c38
Remove get-config API
...
which is no longer necessary now the jitsi wrapper has its own
external-api script
2020-04-01 10:40:03 +01:00
David Baker
538147f7fa
Better support for widgets overriding their URLs
...
Move the URL processing into AppTile so that the widget can have a
URL used for embedding in the page and a separate one for popping
out into a browser.
2020-04-01 10:00:33 +01:00
J. Ryan Stinnett
a3555cacea
Merge remote-tracking branch 'origin/develop' into jryans/id-change-red
2020-03-30 14:52:22 +01:00
Zoe
098df07c67
review feedback
2020-03-30 10:18:47 +01:00
J. Ryan Stinnett
37619dd127
Show red shield for users that become unverified
...
For any users that we previously verified but that are not unverified, we will
now mark them and rooms they are in with a red shield.
Fixes https://github.com/vector-im/riot-web/issues/12808
2020-03-28 00:21:18 +00:00
Zoe
1f0d7923d7
with output type
2020-03-27 13:51:30 +00:00
Zoe
5b7e7f49d1
lint
2020-03-27 13:50:03 +00:00
Zoe
5d7adef0a2
Factor out shield display rules into one file
2020-03-27 13:45:35 +00:00
Michael Telatynski
b489a7c0d5
Allow reacting to stickers
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-27 00:50:41 +00:00
Bruno Windels
0fb96fda6e
Merge pull request #4272 from matrix-org/bwindels/safaripersisted
...
Fall back to non-standard persisted api for Safari
2020-03-25 17:56:47 +00:00
Bruno Windels
0097134ade
Update src/utils/StorageManager.js
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2020-03-25 17:56:35 +00:00
Bruno Windels
f6e9c32c48
fall back to non-standard persisted api for Safari
2020-03-25 12:04:09 +01:00
Travis Ralston
bdcb65de77
Support and send the config over to capable widgets
...
For https://github.com/vector-im/riot-web/pull/12845
2020-03-24 09:55:54 -06:00
Travis Ralston
f7bf0d013c
Support sending and receiving v1 Jitsi widgets
...
Fixes https://github.com/vector-im/riot-web/issues/12816
Fixes https://github.com/vector-im/riot-web/issues/12814
2020-03-23 10:18:30 -06:00
Travis Ralston
b8ef736038
Merge pull request #4251 from matrix-org/travis/jitsi-name
...
Improve naming of Jitsi conferences
2020-03-23 09:55:02 -06:00
Michael Telatynski
8822bb06f1
Update WidgetUtils.js
2020-03-22 02:14:50 +00:00
Travis Ralston
c17c47d88b
Remove null check that was fixed in another PR
...
See https://github.com/matrix-org/matrix-react-sdk/pull/4255
2020-03-21 11:35:07 -06:00
Michael Telatynski
506927ad8a
change to defaults
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-21 10:49:55 +00:00
Michael Telatynski
ca02ff493c
Fix local jitsi build url fail and missing argument
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-21 10:42:07 +00:00
Travis Ralston
94d23c815a
Improve naming of Jitsi conferences
...
Fixes https://github.com/vector-im/riot-web/issues/12812
2020-03-20 14:19:47 -06:00
Travis Ralston
92251316a3
Switch to named object
2020-03-19 11:51:01 -06:00
Travis Ralston
8519a83b61
Appease the linter
2020-03-18 15:58:57 -06:00
Travis Ralston
9da57817d1
Use a local wrapper for Jitsi calls
...
Requires https://github.com/vector-im/riot-web/pull/12780
2020-03-18 15:50:12 -06:00
Travis Ralston
7dd7417f12
Enable support for TypeScript in components
...
Includes: compilation, translations, IDE support (use .tsx not .ts), typings, and other build tools.
TypeScript component have to import PropTypes and React with `import * as React from 'react';`
2020-03-11 18:03:43 -06:00
Travis Ralston
e4d323d2f2
Disable edits on redacted events
...
Fixes https://github.com/vector-im/riot-web/issues/12633
2020-03-06 14:23:20 -07:00
Travis Ralston
9836a7a655
Merge pull request #4176 from matrix-org/travis/linkify-rooms
...
Fix room alias references in topics
2020-03-04 15:35:34 -07:00
Travis Ralston
4a976acb84
Add a null check to getUniqueRoomsWithIndividuals
...
Fixes https://github.com/vector-im/riot-web/issues/12611
2020-03-04 14:18:56 -07:00
Travis Ralston
d820356990
Convert alias links in room header topics to local permalinks
...
Fixes https://github.com/vector-im/riot-web/issues/12605
2020-03-04 13:56:58 -07:00
Michael Telatynski
d783ce86c8
Use noreferrer in addition to noopener for edge case browsers
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-23 22:14:29 +00:00
Matthew Hodgson
7696f704b2
Fix two big DOM leaks which were locking Chrome solid.
...
pillifyLinks leaked Pill components, which if they contained a BaseAvatar
would leak a whole DOM tree retained by the BaseAvatar's onClientSync
event listener. This tracks the Pill containers so they can be unmounted
via unmountPills.
BasicMessageComposer set an event listener on selectionchange in onFocus
which leaked if onBlur wasn't called. This removes it in unmount.
We've also seen Velociraptor retaining full DOM trees from RRs, which
this doesn't address as the leak is probably within Velocity, and the plan
is to replace it with CSS animations.
Should fix https://github.com/vector-im/riot-web/issues/12417
2020-02-22 23:51:30 +00:00
Michael Telatynski
ffde11ca91
Use Persistent Storage where possible
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-20 00:38:08 +00:00
Travis Ralston
330b489fd5
Switch back to legacy decorators
...
Empirically the build is fine with these, but it is unfortunate that we have to reply on deprecated semantics. TypeScript should help fix this.
2020-01-28 16:44:30 +00:00
Travis Ralston
d0c28adfb1
Appease the linter
2020-01-28 12:53:37 +00:00
Travis Ralston
21405b8f25
Fix skinning and babel tagets
2020-01-28 12:47:38 +00:00
Damir Jelić
e2dd2bd950
Merge branch 'poljar/seshat-ui-pr' into develop
2020-01-27 17:18:17 +01:00
Damir Jelić
2d8477aaa6
FormattingUtils: Add a formatCountLong method.
2020-01-24 16:13:55 +01:00
Bruno Windels
66768416a6
dont assume the room exist ... not sure why though
2020-01-24 14:20:48 +01:00
Bruno Windels
2483337e89
don't use removed .event property anymore on verification request
2020-01-24 11:59:01 +01:00
Bruno Windels
95a0ebaf06
Merge pull request #3796 from matrix-org/bwindels/verification-right-panel
...
Initial support for verification in right panel
2020-01-20 17:18:32 +00:00
Michael Telatynski
c97de43f69
Remove unused fetch polyfills, querystring, require-json. Move glob to dev-dep
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-18 02:01:45 +00:00
Bruno Windels
5556cb5749
Merge branch 'develop' into bwindels/verification-right-panel
2020-01-17 16:02:51 +01:00
Damir Jelić
2fe3603737
utils: Add an utility function to format bytes.
2020-01-17 14:22:22 +01:00
Travis Ralston
372861c9df
Merge branch 'develop' into travis/ftue/user-lists/5.3-go-button
2020-01-16 13:36:59 -07:00
Travis Ralston
d1fcef1211
Merge branch 'develop' into bwindels/verification-right-panel
2020-01-16 13:23:32 -07:00
Travis Ralston
d763d7e633
Merge branch 'develop' into travis/ftue/user-lists/5.2-i18n
2020-01-15 10:49:38 -07:00
Travis Ralston
443744733d
Move DM creation logic into DMInviteDialog
...
Fixes https://github.com/vector-im/riot-web/issues/11645
The copy hasn't been reviewed by anyone and could probably use some work.
2020-01-14 23:32:00 -07:00
Travis Ralston
b69b284efa
Humanize the recent DM rooms ourselves for translations
2020-01-13 21:20:01 -07:00
Travis Ralston
a8c8406ac4
Merge remote-tracking branch 'origin/t3chguy/jest' into travis/sourcemaps
2020-01-09 16:06:46 -07:00
Travis Ralston
135c84251c
Fix more imports post-merge
2020-01-09 14:19:19 -07:00
Travis Ralston
fde32f13a5
[CONFLICT CHUNKS] Merge branch 'develop' into travis/sourcemaps-develop
2020-01-09 14:15:09 -07:00
Michael Telatynski
c551f2983a
Add TextualBody-test.js
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-06 13:28:29 +00:00
Bruno Windels
3b9c5c0a27
remove unused code
2020-01-03 13:50:13 +01:00
Bruno Windels
d8a38e6b74
WIP
2020-01-03 13:42:17 +01:00
Travis Ralston
4de0f7257a
Initial implementation of FTUE user lists design
...
This covers the "recents" section and rough design exclusively. It is known that the Field does nothing and that there's a bunch of missing functionality - this is to be iterated upon in future PRs. Labs flag is to aide development and should be removed in a very near future PR.
Also, this is focusing on DMs and not user lists in general because I misinterpreted the scope. I'll fix this in a future PR and instead make this the best DM invite dialog it can be.
Closes https://github.com/vector-im/riot-web/issues/11197
2020-01-02 17:40:18 -07:00
Travis Ralston
f1ac3d2f64
Convert imports to ES6 from CommonJS
...
This is needed because `require()` means something different in webpack - it ends up importing the module as something we didn't expect (and is occasionally async)
2019-12-22 21:16:06 -07:00
Travis Ralston
042bd35d79
Fix MatrixClientPeg imports
2019-12-22 21:15:54 -07:00
Travis Ralston
806d728d59
Import from the js-sdk's src/ directory
...
Because ES6 and such.
2019-12-22 21:14:33 -07:00
Travis Ralston
be4eeb5e07
Fix js-sdk imports for new module
2019-12-22 21:10:26 -07:00
Travis Ralston
d56f0f2a25
Convert many imports to handle ES6 exports
...
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Michael Telatynski
24d0d0d596
Merge pull request #3743 from matrix-org/t3chguy/react16_contexts
...
Migrate away from React Legacy contexts API
2019-12-19 20:32:11 +00:00
Michael Telatynski
3678e64f5d
Internationalise M_TOO_LARGE error from Synapse
2019-12-19 13:25:43 +00:00
Michael Telatynski
937b32663c
Migrate away from Legacy React Contexts
2019-12-17 17:26:12 +00:00
Michael Telatynski
ab3fb6581b
Down to 7 test failures
2019-12-17 11:24:37 +00:00
Travis Ralston
9865ce899b
Add a bunch of docs
...
We're making an assumption here that the decorator is actually all over the app when it's not.
2019-12-16 16:34:46 -07:00
Travis Ralston
0a9985fb48
Rename decorator for clarity
2019-12-16 16:10:11 -07:00
Travis Ralston
20a615396b
Implementation of new potential skinning mechanism
...
With a switch to Only One Webpack™ we need a way to help developers generate the component index without a concurrent watch task. The best way to do this is to have developers import their components, but how do they do that when we support skins? The answer in this commit is to change skinning.
Skinning now expects to receive your list of overrides instead of the react-sdk+branded components. For Riot this means we send over *only* the Vector components and not Vector+react-sdk.
Components can then be annotated with the `replaceComponent` decorator to have them be skinnable. The decorator must take a string with the dot path of the component because we can't reliably calculate it ourselves, sadly.
The decorator does a call to `getComponent` which is where the important part of the branded components not including the react-sdk is important: if the branded app includes the react-sdk then the decorator gets executed before the skin has finished loading, leading to all kinds of fun errors. This is also why the skinner lazily loads the react-sdk components to avoid importing them too early, breaking the app.
The decorator will end up receiving null for a component because of the getComponent loop mentioned: the require() call is still in progress when the decorator is called, therefore we can't error out. All usages of getComponent() within the app are safe to not need such an error (the return won't be null, and developers shouldn't use getComponent() after this commit anyways).
The AuthPage, being a prominent component, has been converted to demonstrate this working. Changes to riot-web are required to have this work.
The reskindex script has also been altered to reflect these skinning changes - it no longer should set the react-sdk as a parent. The eventual end goal is to get rid of `getComponent()` entirely as it'll be easily replaced by imports.
2019-12-12 19:48:45 -07:00
Michael Telatynski
142a71cc67
Merge pull request #3694 from matrix-org/t3chguy/fix_SpecPermalinkConstructor
...
Fix ?via= args in SpecPermalinkConstructor.js
2019-12-08 10:04:41 +00:00
Michael Telatynski
857f086501
Fix ?via= args in SpecPermalinkConstructor.js
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-03 00:05:19 +00:00
Travis Ralston
4d5f133b17
Merge pull request #3684 from matrix-org/travis/auto-invite-upgrades
...
Add an option to invite users to upgraded private rooms
2019-12-02 17:03:25 -07:00
Travis Ralston
f020929345
Add an option to invite users to upgraded private rooms
...
The option doesn't show up on public room upgrades.
2019-11-27 20:29:11 -07:00
Travis Ralston
673e6c3162
Don't assume that diffs will have an appropriate child node
...
Fixes https://github.com/vector-im/riot-web/issues/11497
This is a regression from react-sdk v1.5.0 where the diff feature was added in the first place. It only affects lists.
2019-11-27 12:26:43 -07:00
Bruno Windels
4a684d01a4
Merge pull request #3661 from matrix-org/bwindels/verif-toasts
...
Show incoming verification requests in in-app notifications
2019-11-22 16:39:18 +00:00
Bruno Windels
c705752317
add toast for verification requests
...
this uses a verification requests as emitted by the js-sdk with
the `crypto.verification.request` rather than a verifier as emitted
by `crypto.verification.start` as this works for both to_device and
timeline events with the changes made in the js-sdk pr.
2019-11-22 16:08:27 +01:00
Michael Telatynski
d3f872bf7a
Merge branches 'develop' and 't3chguy/remove_bluebird' of github.com:matrix-org/matrix-react-sdk into t3chguy/remove_bluebird
2019-11-21 11:15:32 +00:00
Michael Telatynski
6121420113
Merge branch 'develop' into t3chguy/remove_bluebird
2019-11-20 15:21:23 +00:00
Travis Ralston
b185eed462
Wire up the widget permission prompt to the cross-platform setting
...
This doesn't have any backwards compatibility with anyone who has already clicked "Allow". We kinda want everyone to read the new prompt, so what better way to do it than effectively revoke all widget permissions?
Part of https://github.com/vector-im/riot-web/issues/11262
2019-11-18 17:56:33 -07:00
Travis Ralston
f5ec9eb8f4
Ensure widgets always have a sender associated with them
...
Fixes https://github.com/vector-im/riot-web/issues/11419
2019-11-18 13:16:36 -07:00
J. Ryan Stinnett
d5d2f7f936
Merge pull request #3588 from matrix-org/jryans/identity-disco-opt
...
Relax identity server discovery error handling
2019-11-18 17:09:08 +00:00
Michael Telatynski
d4d51dc61f
Rip out the remainder of Bluebird
2019-11-18 10:03:05 +00:00
Michael Telatynski
54dcaf1302
Replace bluebird specific promise things. Fix uses of sync promise code.
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 13:52:17 +00:00
Michael Telatynski
5c24547ef5
re-add and actually use promise timeout util
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 09:37:26 +00:00
Michael Telatynski
bc90789c71
Remove unused promise utils method
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 00:39:48 +00:00
Michael Telatynski
79ebb9091c
Merge branch 'develop' into t3chguy/remove_bluebird_1
2019-11-12 18:16:34 +00:00
Travis Ralston
6d0b388fa2
Merge branch 'develop' into travis/mjolnir
2019-11-12 10:00:01 -07:00
Michael Telatynski
c3df2f941d
attach promise utils atop bluebird
2019-11-12 12:30:05 +00:00
Michael Telatynski
2ea239d192
Replace rest of defer usages using small shim. Add homebrew promise utils
...
(cherry picked from commit 6850c14739
)
2019-11-12 12:07:56 +00:00
Michael Telatynski
7a512f7299
Revert "Replace rest of defer usages using small shim. Add homebrew promise utils"
...
This reverts commit 6850c147
2019-11-12 11:56:43 +00:00
Michael Telatynski
6850c14739
Replace rest of defer usages using small shim. Add homebrew promise utils
2019-11-12 11:45:28 +00:00
Bruno Windels
0d2f9c4215
add verification request tile + styling
2019-11-07 19:54:56 +01:00
Bruno Windels
9c4470e599
helper class to track the state of the verification
...
as we will have 2 tiles, and both need to track
the status of the verification request, I've put
the logic for tracking the state in this helper class
to use from both tiles.
2019-11-07 19:54:56 +01:00
J. Ryan Stinnett
03c93b5f38
Merge pull request #3595 from N-Pex/linkify-fix
...
Fix linkify imports
2019-11-07 12:28:57 +02:00
David Baker
0464b094a6
Fix softcrash if editing silly events
...
If you sent an event with a body of the empty json object, riot
would then softcrash when you pressed the up arrow because it
would try to treat a json object as a string and run split on it.
2019-11-06 11:44:32 +00:00
N-Pex
d403ed7513
Fix linkify imports
...
VECTOR_URL_PATTERN was 'undefined' inside Permalinks.tryTransformPermalinkToLocalHref()
2019-11-06 10:41:14 +01:00
J. Ryan Stinnett
446e21c2e1
Relax identity server discovery error handling
...
If discovery results in a warning for the identity server (as in can't be found
or is malformed), this allows you to continue signing in and shows the warning
above the form.
Fixes https://github.com/vector-im/riot-web/issues/11102
2019-11-01 12:27:56 +00:00
Travis Ralston
3e4a721111
Appease the linter
2019-10-31 16:27:45 -06:00
Travis Ralston
b93508728a
Add personal list management to Mjolnir section
2019-10-31 14:24:51 -06:00
Travis Ralston
e6e12df82d
Add structural base for handling Mjolnir lists
2019-10-31 13:20:18 -06:00
J. Ryan Stinnett
0fc5108817
Add a prompt when interacting with an identity server without terms
...
This adds a prompt whenever we are about to perform some action on a default identity
server (from homeserver .well-known or Riot app config) without terms. This
allows the user to abort or trust the server (storing it in account data).
Fixes https://github.com/vector-im/riot-web/issues/10557
2019-10-31 13:13:13 +00:00
Michael Telatynski
93429d7c2e
Break withLegacyMatrixClient into a util module
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 19:13:37 +01:00
David Baker
d82a05fbae
Fix integration manager not updating when set
...
setUserWidget was modifying the content of the old event itself,
so when `waitForUserWidget()` checked the content to see if it was
there yet, it was, but because the echo hadn't come back, the
IntegrationManager hadn't rebuilt its list.
In other news, its terrifying that we can just accidentally modify
the content of an event in the store. I'm going to make a js-sdk
PR that freezes the content and see what breaks...
Fixes https://github.com/vector-im/riot-web/issues/10977
2019-10-02 15:26:54 +01:00
Travis Ralston
6b09c3e9e6
Appease the linter
2019-09-30 21:03:16 -06:00
Travis Ralston
fc66e69c02
Rename RoomPermalinkCreator -> Permalinks due to scope
...
The file handles more than just a RoomPermalinkCreator, so we should name it accordingly.
2019-09-30 20:39:58 -06:00
Travis Ralston
ce0a534db1
Fix pills for CIDER too
2019-09-30 20:37:24 -06:00
Travis Ralston
2824f468d9
Update pill processing to handle better permalinks
2019-09-30 20:27:51 -06:00
Travis Ralston
2cb0b4903a
Converge on permalink processing for HtmlUtils and linkify-matrix
2019-09-30 20:17:54 -06:00
Travis Ralston
ff4eee5239
Minor cleanup of getPermalinkConstructor
2019-09-30 16:09:19 -06:00
Travis Ralston
8acaa3ce95
Update generated Riot permalinks
...
Also adds some safety around the Riot URL to ensure it mostly looks like a URL
2019-09-30 16:05:28 -06:00
Travis Ralston
199dfa7bf9
Always check if the permalink is a spec permalink
...
See code for rationale
2019-09-30 16:04:49 -06:00
Travis Ralston
3e5a39d646
Add utility function for permalink parsing
2019-09-30 16:04:22 -06:00
Travis Ralston
9bb1ebb89d
Support riot-level permalink parsing
2019-09-30 16:03:52 -06:00
Travis Ralston
baf78da791
Support spec-level permalink parsing
2019-09-30 16:03:24 -06:00
Travis Ralston
f183e96d66
Introduce a RiotPermalinkConstructor and fix the setting name
...
Originally we were planning on using the current location as the permalink prefix, but that doesn't work if the user is a desktop user.
2019-09-30 13:04:20 -06:00
Travis Ralston
f879185aef
Move permalink host check into permalink constructors
...
Without the requirement for a room to work
2019-09-30 12:53:45 -06:00
Travis Ralston
926e1146f9
Move spec permalinks into their own class
...
This allows for Riot permalinks to be introduced without if-else ladders everywhere.
2019-09-30 12:51:17 -06:00
Travis Ralston
f9d5e89017
Move early parts of matrix.to bits into its own class
2019-09-30 12:37:13 -06:00
Travis Ralston
64aa6695f5
Move matrix-to.js to utils/permalinks/RoomPermalinkCreator
...
Just a little bit of refactoring to make the feature of custom prefixes a bit easier.
2019-09-30 12:16:46 -06:00
Bruno Windels
166364ba03
Fix: make sure scalarUrls is never undefined
2019-09-16 10:12:15 +02:00
J. Ryan Stinnett
166fb696c2
Allow connecting to an IS from address picker
...
This allows those who previously disconnected from an IS to either choose the
default IS or a custom one from Settings via the address picker dialog.
Part of https://github.com/vector-im/riot-web/issues/10619
2019-08-29 15:28:34 +01:00
Travis Ralston
19b7d18e7a
No-op removals of widgets that don't exist
...
An example of this is setting your very first widget: there's nothing to remove, so you end up with "cannot call .getContent() of undefined" instead.
2019-08-21 18:43:29 -06:00
Travis Ralston
2dc28a608f
Move URL abbreviation to its own util file
2019-08-21 08:46:10 -06:00
Travis Ralston
b77be2d380
Just use MSC1957
2019-08-14 09:33:02 -06:00
Travis Ralston
8b1c90a01e
Convert to using im.vector.integration_manager for IM widget
...
This avoids us having to throw the entirety of MSC1957 into the queue, particularly when we're only using a third of the MSC.
2019-08-14 08:57:38 -06:00
Travis Ralston
03d735f4ed
Support changing your integration manager in the UI
...
Part of https://github.com/vector-im/riot-web/issues/10161
2019-08-12 15:40:50 -06:00
Travis Ralston
74ce5c3541
Read integration managers from account data
...
For https://github.com/vector-im/riot-web/issues/4913 / https://github.com/vector-im/riot-web/issues/10161
Relies on the structure defined by [MSC1957](https://github.com/matrix-org/matrix-doc/pull/1957 )
This is just the bit of code to parse the user's widgets (while watching for changes) and allow for it to be the default manager.
2019-08-09 17:35:59 -06:00
Travis Ralston
018b4f5d41
Use the default integration manager for config options
2019-08-09 17:08:26 -06:00
David Baker
366f7e277a
Make registration work without an IS.
2019-08-07 11:15:56 +01:00
Bruno Windels
95f9e48f91
workaround diff-dom returning redundant diff actions
2019-07-31 12:25:04 +02:00
Michael Telatynski
657a11de83
Fix /rainbowme and /rainbow breaking apart utf-16 emoji
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-25 19:25:28 +01:00
Bruno Windels
3753e5261d
Implement diffing html messages in the edit history
2019-07-24 11:28:56 +02:00
Travis Ralston
285b126530
Appease the linter
2019-07-11 15:14:05 -06:00
Travis Ralston
7a3aa9be2e
Remove unused identityEnabled property from ValidatedServerConfig
...
See https://github.com/vector-im/riot-web/issues/10229
2019-07-11 15:11:09 -06:00
J. Ryan Stinnett
527e1e94a4
Update config.json docs location
...
Part of https://github.com/vector-im/riot-web/pull/10195
2019-06-28 13:44:18 +01:00
Bruno Windels
a1548285b5
fix copyright header and whitespace
2019-06-26 16:13:15 +02:00
Bruno Windels
19b4699bc2
WIP for showing pills in edit history
2019-06-26 11:59:56 +02:00
Bruno Windels
e54881aa24
WIP
2019-06-26 11:59:56 +02:00
Bruno Windels
0b17812b9c
allow editing emotes
2019-06-14 11:01:34 +02:00
Bruno Windels
89cc45892c
fix grammar fail
2019-06-13 13:28:21 +02:00
Bruno Windels
678fd37549
helper class to preserve editor state between remounting the editor
2019-06-12 18:29:21 +02:00
Bruno Windels
d13b3aa16c
don't block unsent events from being edited
2019-06-12 11:20:21 +02:00
Bruno Windels
f78aeae83a
also consider pending events when looking for next/prev event to edit
2019-06-12 11:19:17 +02:00
Travis Ralston
aacb942d57
Don't handle identity server failure as fatal, and use the right message
...
Fixes https://github.com/vector-im/riot-web/issues/10002
2019-06-10 19:28:32 -06:00
Travis Ralston
758b3394a4
Don't handle identity server liveliness errors as fatal
...
An invalid IS causes an invalid HS, so we switch the order of the checks. Additionally, we adjust the HS result so that it appears like a liveliness error for the IS, allowing the app to continue normally.
2019-06-07 13:14:43 -06:00
Travis Ralston
d59ad605a6
Allow the login form to be submitted, and clarify other things
2019-06-06 12:18:41 -06:00
Travis Ralston
c15ee1a829
Appease the linter
2019-06-05 12:15:37 -06:00
Travis Ralston
ace1bde238
Implement design and copy for errors
2019-06-05 11:32:02 -06:00
Travis Ralston
10f4d6b419
Appease the linter
2019-06-04 23:52:40 -06:00
Travis Ralston
e2fdeec71a
Fail more softly on homeserver liveliness errors
...
This performs liveliness checks on the auth pages to try and show a friendlier error. Earlier checks in the app startup are expected to not block the app from loading on such failures.
See https://github.com/vector-im/riot-web/issues/9828
2019-06-04 23:42:38 -06:00
Matthew Hodgson
16ca31bf90
lint
2019-06-02 04:47:23 +01:00
Matthew Hodgson
caa950f625
add SBIX fallback twemoji font
2019-06-02 04:24:36 +01:00
Bruno Windels
3793361240
always log on return false
2019-05-29 13:24:46 +02:00
Bruno Windels
26a5bb0dcb
exclude chrome in ua from safari version check for colr support
2019-05-29 13:05:59 +02:00
Bruno Windels
3014180762
fix lint & make regex more robust
2019-05-29 12:17:15 +02:00
Bruno Windels
18697d8ee7
Update src/utils/FontManager.js
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-29 10:10:18 +00:00
Bruno Windels
50f477dcd0
Update src/utils/FontManager.js
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-29 10:09:10 +00:00
Bruno Windels
66738e2284
Update src/utils/FontManager.js
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-29 10:08:59 +00:00
Bruno Windels
5c8e280a45
make sure the check doesn't blow up
2019-05-29 12:03:38 +02:00
Bruno Windels
ba54b16275
sniff safari 12, macos 10.14 to support COLR, as safari doesn't wait for the font to load to emit load
2019-05-29 11:59:50 +02:00
Bruno Windels
cf704fd2f1
fix COLR font check being racy
...
also make sure it doesn't run more than once.
keeping the FF sniffing because missing "extract canvas data" permissions
would still break the check.
2019-05-29 10:11:14 +02:00
Bruno Windels
afd656ae2c
Merge pull request #3025 from matrix-org/bwindels/edit-keyboard-nav
...
Message editing: arrow key (up/down) navigation between editable events
2019-05-27 15:12:40 +00:00
Bruno Windels
dee24ac27a
extract constant
2019-05-27 16:45:26 +02:00
Bruno Windels
651cb8b9a7
lint
2019-05-27 16:43:12 +02:00
Bruno Windels
918de849c7
make sure in the future arrow up/down only goes through own events
2019-05-27 16:41:03 +02:00
Bruno Windels
e193522db1
PR feedback: put findPrev/NextEditableEvent in one function with flag
2019-05-27 16:22:55 +02:00
Travis Ralston
093de71ff8
Minus one log
2019-05-24 10:53:24 -06:00
Travis Ralston
ef9ef0e654
Add some logging for COLR checks
2019-05-24 10:36:07 -06:00
Bruno Windels
8926fcb3a6
helper functions to find next & previous editable events in timeline
2019-05-24 14:41:24 +02:00
Travis Ralston
14dc4b47fa
Merge branch 'develop' into travis/feature/wellknown2
2019-05-22 23:05:54 -06:00
J. Ryan Stinnett
c9300650ed
Add browser comment to extra fonts
2019-05-22 16:37:52 +01:00
J. Ryan Stinnett
11828c40e5
Add more weight of emoji font
...
For at least Chrome on Windows 10, we need to explicitly add additional weights
for emoji to appear when bold.
2019-05-22 16:22:18 +01:00
Bruno Windels
7a20dbe657
make sure we don't load the twemoji font multiple times on firefox
2019-05-22 13:07:54 +02:00
Bruno Windels
ee86471691
remove SBIX font and fallback to native emoji
2019-05-22 13:06:04 +02:00
Bruno Windels
10b5a9376e
fix lint
2019-05-22 11:17:38 +02:00
Bruno Windels
85b448deb6
enable cache busting for twemoji font
2019-05-22 11:13:44 +02:00
Bruno Windels
9f4eb7782c
exclude FF from COLR font check
2019-05-22 11:08:11 +02:00
Matthew Hodgson
30912dec17
fix lint
2019-05-22 02:41:07 +01:00
Matthew Hodgson
4ae652e5c3
load twemoji dynamically as colr or sbix; fix monospace
2019-05-22 02:31:24 +01:00
Travis Ralston
907c7ed119
Merge pull request #2994 from matrix-org/travis/screenreader/topleftmenu
...
Update TopLeftMenu for accessibility: Keyboard shortcut, reduced screen reader noise
2019-05-21 09:52:26 -06:00
Travis Ralston
bf28993509
appease the js-doc linter
...
hopefully
2019-05-21 09:33:52 -06:00
Travis Ralston
52b0f285c6
Add some clarifying comments
2019-05-20 21:07:12 -06:00
Travis Ralston
3476be3327
Merge branch 'develop' into travis/feature/wellknown2
2019-05-20 19:50:02 -06:00
J. Ryan Stinnett
0e5f0f24cc
Extract MELS-style comma separated list to shared utility
...
This allows other UI components to use the same formatting for a long list.
2019-05-20 15:21:18 +01:00
Travis Ralston
332f716ce4
The linter will be the death of me
2019-05-17 15:36:28 -06:00
Travis Ralston
2a187810fd
Restructure TopLeftMenu for accessibility and autofocus it
...
We use a trick with refs to automatically focus the element, also making use of mx_HiddenFocusable to hide the unnecessary outline.
The menu itself has been restructured to hide some elements from screen readers (reduce noise) and to have a single unordered list. Screen readers mention when the user "enters" a list, and each item was previously saying "enter list <action>" when it should have just been "<action>".
By focusing automatically, the keyboard can be used to go up/down the menu as may be expected by keyboard users.
2019-05-17 15:32:03 -06:00
Bruno Windels
f285040e0b
check msgtype of original event
2019-05-17 13:26:06 +01:00
Bruno Windels
c0cfa8ad00
only allow editing of text messages
2019-05-17 10:26:19 +01:00
Travis Ralston
0c7aa39273
Merge branch 'develop' into travis/feature/wellknown2
2019-05-16 12:59:50 -06:00
Bruno Windels
b081a3156f
dont show edit button for messages that are not your own
2019-05-15 15:53:49 +01:00
David Baker
fc636c6cb9
lint
2019-05-15 14:00:37 +01:00
David Baker
da1bff1c5d
Fix Single Sign-on
...
https://github.com/matrix-org/matrix-react-sdk/pull/2826 checked
that we had data in the crypto store if the had credentials in
localStorage. However, SSO stores creds in localStorage and then
redirects the browser to remove the loginToken parameter from the
URL without starting crypto, so after the redirect, we see creds
in localStorage but no crypto data, and error.
Fix by marking when we've successfully initialised crypto and only
erroring if that flag is set.
Fixes https://github.com/vector-im/riot-web/issues/9695
2019-05-15 13:47:48 +01:00
Travis Ralston
bb16357636
Flag all generated configs as non-default by default
...
The app is expected to flag a particular config themselves as default. This is primarily intended so that other parts of the app can determine what to do based on whether or not the config is a default config.
See https://github.com/vector-im/riot-web/issues/9290
2019-05-14 13:06:56 -06:00
Travis Ralston
83737654ff
Merge branch 'develop' into travis/feature/wellknown2
2019-05-13 09:20:10 -06:00
Michael Telatynski
8bd45ce893
add /rainbow and /rainbowme Slash Commands
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-12 16:36:43 +01:00
Travis Ralston
6b45e60314
Update ServerTypeSelector for registration to use a server config
2019-05-03 11:32:59 -06:00
Travis Ralston
636cb8a5cc
Have ServerConfig and co. do validation of the config in-house
...
This also causes the components to produce a ValidatedServerConfig for use by other components.
2019-05-03 11:32:59 -06:00
J. Ryan Stinnett
44e9ca6c52
Extract isContentActionable
to a separate helper
...
This moves the check about whether an event is actionable (for the purpose of
replies, edits, reactions, etc.) to shared utils module.
2019-05-02 12:05:17 +01:00
Hubert Chathi
443a15eeb9
actually clear bit 63 instead of bit 55
2019-04-25 11:04:48 -04:00
J. Ryan Stinnett
4f41161a47
Check password complexity during registration
...
This adds a password complexity rule during registration to require strong
passwords. This is based on the `zxcvbn` module that we already use for key
backup passphrases.
In addition, this also tweaks validation more generally to allow rules to be
async functions.
2019-04-25 14:29:10 +01:00
Bruno Windels
eeaa7143ac
move name coloring out of sender profile
...
so we can reuse it in room preview bar
2019-04-17 10:21:30 +02:00
Travis Ralston
d755263e33
Handle M_UNSUPPORTED_ROOM_VERSION in invites and room creation
...
Fixes https://github.com/vector-im/riot-web/issues/8925
2019-04-09 19:03:38 -06:00
J. Ryan Stinnett
16573a6381
Track store failures after startup
...
This watches the `IndexedDBStore` in case it degrades. If it does, we track this
in analytics so we can observe how often it happens in the field.
Should help track errors like https://github.com/vector-im/riot-web/issues/7769
2019-04-04 11:59:53 +01:00
J. Ryan Stinnett
57d72b4deb
Merge pull request #2841 from jryans/storage-eviction-modal
...
Notify user when crypto data is missing
2019-04-01 17:31:39 +01:00
J. Ryan Stinnett
328f0cd6bf
Notify user when crypto data is missing
...
If we have account data in local storage but nothing in the crypto store, it
generally means the browser has evicted IndexedDB out from under us. This adds a
modal to explain the situation and offer to completely clear storage to get
things back to normal.
Fixes https://github.com/vector-im/riot-web/issues/9109
2019-03-29 16:06:08 +00:00
Bruno Windels
a326c83016
Merge pull request #2842 from matrix-org/bwindels/bacat-scrolling-merged-develop
...
BACAT Scrolling
2019-03-29 14:02:15 +00:00