David Baker
50107ebe47
Re-fix OpenID requests from widgets
...
https://github.com/matrix-org/matrix-react-sdk/pull/4591 reverted
https://github.com/matrix-org/matrix-react-sdk/pull/4459 . We need
to pass both URLs as we need both the wURL (for the widget's 'identity'
ie. OpenID) and the URL that's actually in the iframe (for the
messaging).
2020-05-13 16:10:40 +01:00
David Baker
92824411e8
Fix persistent widgets on desktop / http
...
WidgetMessaging needs the URL of the widget that gets rendered into
the iframe because that's where the postmessages will be coming from.
Fixes https://github.com/vector-im/riot-web/issues/13369
2020-05-13 12:33:10 +01:00
Travis Ralston
50783c2432
Appease the linter
2020-04-23 23:25:53 -06:00
Travis Ralston
28865e27bc
Don't overwrite the 'domain' data key for all widgets
...
Some widgets, which aren't Jitsi widgets, might need this to be something else.
2020-04-23 15:24:27 -06:00
Travis Ralston
efaf4fbbda
Decode dollar signs in safe widget URLs before rendering/templating
...
Fixes https://github.com/vector-im/riot-web/issues/13344
2020-04-23 15:24:27 -06:00
Travis Ralston
d66d497638
Merge pull request #4460 from matrix-org/travis/integ-logging
...
Update logging for unmanaged widgets, and add TODO comments for other areas
2020-04-23 08:17:54 -06: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
d851f2e45f
Fix OpenID requests from widgets
...
Fixes https://github.com/vector-im/riot-web/issues/13131
Widgets can request an OpenID token to authenticate the user when the widget is missing authentication information. A common case for this is the Dimension sticker picker: sometimes the Riot is running in doesn't have the configuration to match the Dimension instance, so Riot rightly refuses to send an auth token to the widget. When this happens, it requests a token through postMessage().
There's a toggle on the permission dialog to remember the setting, which is the widget's security key. As an added measure, the security key generation ensures the widget URL matches as the 'remember this choice' toggle will silently work in the background, and it could be dangerous if the widget's URL changed and Riot secretly allows the widget to identify the user. This check was failing because the WidgetMessaging class was being set up with the rendered URL, which will not match the widget's URL at all. To fix this, we simply use the widget's URL to set up the messaging, which by proxy uses the right URL in calculating the security key.
2020-04-22 00:27:20 -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
Travis Ralston
db3c7a8f1c
Obliterate widgets when they are minimized
...
Fixes https://github.com/vector-im/riot-web/issues/12810
We do this to all widgets as we can't guarantee what sorts of other widgets might need similar treatment.
2020-04-09 14:31:46 -06:00
Travis Ralston
b5aaae1c27
Fix encoding of widget arguments
...
Fixes https://github.com/vector-im/riot-web/issues/12985
This is done by using a more modern API and de-encoding dollar signs.
2020-04-08 12:58:52 -06:00
Travis Ralston
5c2841323e
Appease the linter by turning it off
2020-04-01 14:45:54 -06:00
Travis Ralston
47e5cfecf2
Silence usages of componentWillReceiveProps
...
For https://github.com/vector-im/riot-web/issues/12877
2020-04-01 14:35:39 -06:00
Travis Ralston
ba0a9c8439
Use console.log in place of console.warn for less warnings
...
These aren't react warnings, but they are distracting in the logs.
2020-04-01 13:59:48 -06:00
Travis Ralston
0fcbe40bec
Merge pull request #4314 from matrix-org/travis/react-warnings/2-code-quality
...
Fix a number of minor code quality issues
2020-04-01 11:13:46 -06:00
Travis Ralston
59a99bbad8
Merge pull request #4313 from matrix-org/travis/react-warnings/1-componentDidMount
...
Use componentDidMount in place of componentWillMount where possible
2020-04-01 11:13:04 -06:00
David Baker
8aa24f8987
Fix jitsi popout URL
...
Needs the template variables filled in
2020-04-01 14:42:17 +01:00
David Baker
ce68b960f4
Use our own jitsi widget for the popout URL
...
rather than the URL supplied by the widget
2020-04-01 13:58:44 +01:00
David Baker
9b4ce02eaf
lint
2020-04-01 11:28:02 +01:00
David Baker
a2f92e93a7
Use URL without wurl params for popout
...
The popout can't be assumed to have the widget API available, so
just leave these params out.
2020-04-01 11:18:45 +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
Travis Ralston
3f99332f4b
Use componentDidMount in place of componentWillMount where possible
...
This fixes a common React warning we see. Most of these components should be using constructors instead, however componentDidMount is just as good (and doesn't require converting most of these).
Conversion to classes will be done in a later stage of React warning fixes.
For https://github.com/vector-im/riot-web/issues/12877
2020-03-31 14:14:17 -06:00
Travis Ralston
c86d75693b
Fix a number of minor code quality issues
...
Most of these are complaints from my IDE. Discovered by going through nearly every file looking for React warnings.
2020-03-31 14:05:56 -06: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
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
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
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
Travis Ralston
042bd35d79
Fix MatrixClientPeg imports
2019-12-22 21:15:54 -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
d22985f12e
Migrate string refs over to createRef
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-08 12:16:17 +00:00
Michael Telatynski
901e402a5c
apply renames suggested in PR review
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-02 23:23:11 +00:00
Michael Telatynski
757f811126
s/ContextualMenu/ContextMenu/
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-02 23:21:59 +00:00
Michael Telatynski
3847996b5b
transition Tooltips over to deprecated code
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 20:26:09 +00:00
Michael Telatynski
6c5b777a77
Consolidate all except tooltips
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 18:16:59 +00:00
Travis Ralston
7b013ecc69
Fix persisted widgets getting stuck at loading screens
...
The widget itself is rendered underneath the loading screen, so we just have to disable the loading state.
This commit also removes the "is" attribute because React 16 includes unknown attributes: https://reactjs.org/blog/2017/09/08/dom-attributes-in-react-16.html
Fixes https://github.com/vector-im/riot-web/issues/11536
2019-11-27 12:54:31 -07:00
Matthew Hodgson
9f455fae4b
Merge branch 'develop' into matthew/fix_logging
2019-11-26 10:19:48 +00:00
Matthew Hodgson
9fd45d1f14
console.log doesn't take %s substitutions
2019-11-26 01:14:03 +00:00
Travis Ralston
86783e4439
Merge pull request #3645 from matrix-org/travis/widget-menu
...
Move many widget options to a context menu
2019-11-21 08:10:28 -07:00
Travis Ralston
5d612bb370
Merge pull request #3644 from matrix-org/travis/widget-encryption
...
Re-add encryption warning to widget permission prompt
2019-11-21 08:04:56 -07: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
Travis Ralston
fd12eb28e7
Move many widget options to a context menu
...
Part of https://github.com/vector-im/riot-web/issues/11262
2019-11-20 19:17:42 -07:00
Travis Ralston
62a2c7a51a
Re-add encryption warning to widget permission prompt
2019-11-20 16:26:06 -07: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
Michael Telatynski
d4d51dc61f
Rip out the remainder of Bluebird
2019-11-18 10:03:05 +00:00
Travis Ralston
6b726a8e13
Implement the bulk of the new widget permission prompt design
...
Part 1 of https://github.com/vector-im/riot-web/issues/11262
This is all the visual changes - the actual wiring of the UI to the right places is for another PR (though this PR still works independently).
The help icon is known to be weird here - it's a bug in the svg we have. The tooltip also goes right instead of up because making the tooltip go up is not easy work for this PR - maybe a future one if we *really* want it to go up.
2019-11-15 14:26:16 -07:00
Michael Telatynski
168b1b68bb
Revert "s/.done(/.then(/ since modern es6 track unhandled promise exceptions"
...
This reverts commit 09a8fec2
2019-11-12 11:56:21 +00:00
Michael Telatynski
09a8fec261
s/.done(/.then(/ since modern es6 track unhandled promise exceptions
2019-11-12 11:51:23 +00:00
Travis Ralston
e46976be72
Match widgets up with their integration manager
2019-10-29 11:49:15 -06:00
Michael Telatynski
a782baf510
React error/warning cleanup
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-08 12:10:37 +01:00