David Baker
8f10ee01c6
Implement always-on-screen capability for widgets
...
As per https://github.com/matrix-org/matrix-doc/issues/1354
This is whitelisted to only jitsi widgets for now as per comment,
mostly because any widget that we may make always-on-screen we need
to preemptively put in a PersistedElement container, which is
unnecessary for any other widget.
Apologies that this does a bunch of refactoring which could have
been split out separately: I only discovered what needed to be
refactored in the process of doing this.
Fixes https://github.com/vector-im/riot-web/issues/6984
2018-07-11 18:07:32 +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
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
a88297d7a6
More code reuse
2018-06-26 16:27:17 +01:00
David Baker
6cf11a15e6
Move WidgetUtils to utils dir
2018-06-26 11:59:16 +01:00
David Baker
94125fb566
Fix widgets re-appearing after being deleted
...
Widgets would sometimes briefly re-appear after having been deleted.
This was because of the following race:
* User presses delete, send POST req, we set `deleting`. Widget hides.
* POST request completes, we unset `deleting` so widget unhides.
* State event comes down sync so widget hides again.
This fixes this by introducing `waitForRoomWidget` and using it to
wait until the state event comes down the sync until clearing the
`deleting` flag.
Since we now have `waitForRoomWidget`, this also uses it when adding
a widget so the 'widget saved' appears at the same time the widget
does.
2018-06-13 15:50:19 +01:00
Travis Ralston
254e8c358a
Remove unused imports
...
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-28 11:38:09 -06:00
Travis Ralston
98613748b6
Move Scalar Widget URL check to WidgetUtils
...
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-27 11:12:55 -06:00
Richard Lewis
b2c26e6984
Merge pull request #1920 from matrix-org/rxl881/refreshWidget
...
Add a "reload widget" button.
2018-05-24 18:11:22 +01:00
Richard Lewis
9753ee8d82
Better check of jitsi widget message origin.
2018-05-24 16:14:18 +01:00
Richard Lewis
a13d58f6c2
More thorough check of IM URL validity.
2018-05-24 14:58:59 +01:00
Richard Lewis
6df3371c6c
Add a "reload widget" button.
2018-05-22 19:14:54 +01:00
Luke Barnard
49a3770e92
Merge branch 'release-v0.12.4' into develop
2018-05-14 14:31:18 +01:00
Luke Barnard
cf8077e605
Set loading: false when iFrame finishes loading
2018-05-14 11:42:38 +01:00
Luke Barnard
6345e474f5
Remove unused conditional
2018-05-14 11:38:17 +01:00
Travis Ralston
9e11720191
Add setting to enable widget screenshots (if widgets declare support)
...
Fixes the remainder of https://github.com/vector-im/riot-web/issues/6708
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-12 14:30:59 -06:00
Luke Barnard
9c5c5e282b
Send visibility only when changed, and messaging is available
2018-05-11 18:20:23 +01:00
Luke Barnard
a419056040
Delinting
2018-05-11 18:20:14 +01:00
Luke Barnard
06919e22d6
When stickerpicker made visible, send visibility over postMessage
2018-05-11 18:20:00 +01:00
Luke Barnard
bd0301c666
Add API to send visibiliy actions to widgets
2018-05-11 18:17:55 +01:00
Luke Barnard
06898394eb
Send visibility only when changed, and messaging is available
2018-05-11 18:06:58 +01:00
Luke Barnard
1f2f3474ed
Delinting
2018-05-11 17:28:12 +01:00
Luke Barnard
8b049b2182
When stickerpicker made visible, send visibility over postMessage
2018-05-11 16:51:03 +01:00
Luke Barnard
4b6378a80d
Add API to send visibiliy actions to widgets
2018-05-11 16:22:54 +01:00
Luke Barnard
770e2d400e
Improve appearance of short-lived app loading spinner
...
by hiding it for 500ms - thereby only showing it if the loading is
taking a long time.
2018-05-09 17:28:41 +01:00
Luke Barnard
97b9316ec7
Fix issue incorrect positioning with widget loading indicator
...
by making sure to apply the correct CSS class to the parent
2018-05-09 17:28:18 +01:00
Luke Barnard
0c1846630c
Improve appearance of short-lived app loading spinner
...
by hiding it for 500ms - thereby only showing it if the loading is
taking a long time.
2018-05-09 16:54:01 +01:00
Luke Barnard
bcf003757c
Merge pull request #1884 from matrix-org/luke/fix-glitchy-widget-spinner
...
Fix issue incorrect positioning with widget loading indicator
2018-05-09 16:52:11 +01:00
Luke Barnard
59cbaf67bb
Fix issue incorrect positioning with widget loading indicator
...
by making sure to apply the correct CSS class to the parent
2018-05-09 15:48:53 +01:00
Richard Lewis
8e1ba6d139
Always allow users to edit their user widgets.
2018-05-08 22:44:49 +01:00
Richard Lewis
b2d6dd8f6e
Optionally hide widget popout button.
2018-04-25 16:28:27 +01:00
Richard Lewis
0f0e89d394
Add a button to 'pop out' widgets in to their own tab.
2018-04-25 12:49:30 +01:00
Richard Lewis
a41384a994
Fix function binding.
2018-04-04 23:45:47 +01:00
Richard Lewis
aefccb134c
Ensure deleting is set to false.
2018-03-29 16:56:25 +01:00
Richard Lewis
4ac9653ab9
Refactor widget postMessage API.
2018-03-28 12:22:06 +01:00
Richard Lewis
4d8f5072f7
Allow react performance profiling on widget iframes.
2018-03-16 10:20:14 +00:00
Richard Lewis
66ea78de65
Clean up whitelisted permission addition / logging.
2018-03-13 11:59:15 +00:00
Richard Lewis
8b311c706c
Null guard widget listener
2018-03-13 11:58:47 +00:00
Richard Lewis
f820374f9f
Logging.
2018-03-13 11:01:51 +00:00
Richard Lewis
de33294000
Center loading spinner.
2018-03-13 10:07:49 +00:00
Richard Lewis
b2d23b6999
Switch to 'm.sticker' message events. Allow whitelisting of wisget capabilities.
2018-03-12 13:56:02 +00:00
Richard Lewis
fdec4b36c9
Hide padding if last control.
2018-03-08 17:25:28 +00:00
Richard Lewis
3ab8b1f866
Hide sticker picker delete button and show minimise button.
2018-03-08 17:20:42 +00:00
Richard Lewis
2b0790b32b
Fix PropTypes.
2018-02-25 22:36:59 +00:00
Richard Lewis
b2bf4d4709
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot
2018-02-23 15:37:33 +00:00
Richard Lewis
d755b8284c
Remove logging and cleanup.
2018-02-23 15:22:56 +00:00
Richard Lewis
13bebd69c9
Made comment "react-style".
2018-02-21 23:35:57 +00:00
Richard Lewis
ecde099146
Fix typo.
2018-02-21 23:24:53 +00:00
Richard Lewis
7e8660cd37
Add comment for "is" attribute.
2018-02-21 23:23:44 +00:00
Richard Lewis
ffb524b6a5
Allow widget iframes to request camera and microphone permissions.
2018-02-21 23:10:08 +00:00
Richard Lewis
9e3c1fbc7a
Pass room name.
2018-02-09 11:44:27 +00:00
Richard Lewis
5e30468a00
Linting
2018-02-07 14:48:43 +00:00
Richard Lewis
7b75dbbd15
Use default AppTile menu bar.
2018-02-07 14:44:01 +00:00
Richard Lewis
23bef68a8f
Fix duplicate message listeners
2018-01-18 13:16:06 +00:00
Richard Lewis
1293c53c4b
Cleanup
2018-01-18 12:02:45 +00:00
Richard Lewis
3331c8af27
Use dispatcher ref for unregister call.
2018-01-17 15:40:04 +00:00
Richard Lewis
5e6da4d758
* Fix key error
...
* Remove redundant logging
* Catch error
2018-01-15 14:22:41 +00:00
Richard Lewis
1ab71f6f50
Load stickers in AppTile
2018-01-11 13:20:58 +00:00
Richard Lewis
4f3670941d
Bind functions
2018-01-11 12:33:02 +00:00
Richard Lewis
d0c16fa7a1
Convert to ES6 class.
2018-01-11 11:49:46 +00:00
Richard Lewis
0577316c86
Fix duplicate event registration.
2018-01-08 13:40:33 +00:00
Richard Lewis
dc1423052f
De-register listener.
2018-01-08 11:32:23 +00:00
Richard Lewis
54d128658e
Comment logging.
2018-01-04 23:00:10 +00:00
Richard Lewis
d20aebfbd7
Correctly handle sticker message events.
2018-01-04 18:58:55 +00:00
Richard Lewis
eb4053bc99
Handle sticker message payloads
2018-01-04 18:41:47 +00:00
Richard Lewis
a408b98504
Set widget ID on WidgetMessaging instance.
2017-12-29 14:34:52 +00:00
Richard Lewis
7660176079
Fix comment linting errors.
...
Stop listening and cleanup endpoints correctly.
2017-12-28 22:27:12 +00:00
Aidan Gauland
35780f5ae0
Remove use of deprecated React.PropTypes
...
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Richard Lewis
baf472b4a3
Only show snapshot button when apps are maximised.
2017-12-19 17:16:38 +00:00
Richard Lewis
08bcfc5c4e
Make sure that capabilities array is initialised.
2017-12-19 17:15:06 +00:00
Richard Lewis
83f9a4162b
Request capabilities (e.g. ability to take snapshots) from widgets.
2017-12-16 09:16:24 +00:00
Richard Lewis
e63f5696a6
Screenshot handlers
2017-12-15 21:36:02 +00:00
Richard Lewis
f2ad7be3f3
Add event handlers and comments.
2017-12-15 16:56:02 +00:00
Richard Lewis
f410112983
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into rxl881/snapshot
2017-12-15 10:18:56 +00:00
Richard Lewis
c739269777
Update widget title on edit.
2017-12-13 10:14:26 +00:00
Richard Lewis
c93266b6af
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/titleBar
2017-12-11 13:08:49 +00:00
Richard Lewis
24db57bfb6
Fix api prefix.
2017-12-08 18:47:00 +00:00
Matthew Hodgson
f2d68e4601
Merge pull request #1649 from matrix-org/rxl881/titleBar
...
Add maximize / minimize apps drawer icons.
2017-12-08 19:18:45 +01:00
Richard Lewis
20917e1a07
Set page title from widget data, if available.
2017-12-08 15:12:48 +00:00
Richard Lewis
ed675fe791
Allow bypass of widget loading screen on hide / show.
2017-12-06 22:54:32 +00:00
Richard Lewis
e20db416f2
Add field to bypass riot widget loading screen.
2017-12-06 16:44:41 +00:00
Richard Lewis
3206527d73
Remove logging.
2017-12-05 21:59:44 +00:00
Richard Lewis
7f86ed35a3
Only show custom title if different from app name.
2017-12-05 21:49:11 +00:00
Richard Lewis
1415a83a61
Merge branch 'rxl881/titleBar' of https://github.com/matrix-org/matrix-react-sdk into rxl881/customTitle
2017-12-05 21:42:47 +00:00
Richard Lewis
d5d5397959
Set custom widget title.
2017-12-05 21:41:44 +00:00
Richard Lewis
9fd8deb16d
Add maximize / minimize apps drawer icons.
2017-12-05 18:18:51 +00:00
Richard Lewis
49a2985515
Register message endpoints.
...
Store endpoint origins only.
2017-12-05 00:08:17 +00:00
Richard Lewis
c9b8aab0e0
Workings for future posterity - Can't access iframe content from parent. iframe needs to initiate. Postmessage data up the stack.
2017-12-03 19:44:59 +00:00
Richard Lewis
3a89b90e57
Add stub handler for image snapshot
2017-12-03 11:25:15 +00:00
Richard Lewis
5ff5ca4705
Remove logging and broken title fetching functions.
2017-11-30 14:50:30 +00:00
Richard Lewis
2cfbbb000e
Refactor messaging listerners.
2017-11-30 10:20:29 +00:00
Richard Lewis
4f5f44ff38
Add widget postmessage API stub.
2017-11-29 22:16:22 +00:00
Luke Barnard
dad797d4a2
Run linting --fix
2017-11-16 13:19:36 +00:00
Richard Lewis
750e64deee
Pass required props to TintableSvg.
2017-11-15 15:17:21 +00:00
Richard Lewis
59d405d4fa
Use TintableSvgButtons for widget menubar icons.
2017-11-15 13:24:38 +00:00
Richard Lewis
58966c5c3d
Make edit icon green by default
2017-11-14 19:53:59 +00:00
Richard Lewis
e87940f63c
Make app tile title stronger
2017-11-14 19:53:32 +00:00
Richard Lewis
ba8a9f2a43
Comment length
2017-11-10 11:50:14 +00:00
Richard Lewis
d2070a08d8
Replace 'qs' dep. with 'querystring'
2017-11-10 11:42:56 +00:00
Richard Lewis
bd6b5c4498
Improve function name.
2017-11-10 10:17:55 +00:00