Commit graph

340 commits

Author SHA1 Message Date
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
Richard Lewis
98ac3dd19b Explicitly set initialisation state. 2017-11-10 09:44:58 +00:00
Richard Lewis
da8b1ff1cd Ensure that loading state is reset when showing app panel. 2017-11-09 14:28:24 +00:00
Richard Lewis
f796bc79c3 Fix addition of scalar token to widget URL.
Add error logging.
2017-11-09 14:07:29 +00:00
Richard Lewis
8016fb82d7 Fix broken commit. 2017-11-08 20:38:54 +00:00
Richard Lewis
56581ef408 Fix various loadingElement related issues. 2017-11-08 20:38:31 +00:00
Richard Lewis
b2b07d9370 Formatting 2017-11-08 20:17:28 +00:00
Richard Lewis
be0a76dbd6 Update variable name and JSdoc for improved clarity. 2017-11-08 17:44:54 +00:00
Richard Lewis
96de72ab44 Switch to using existing dep "qs" and record in package.json 2017-11-07 12:45:12 +00:00
Richard Lewis
d3784b4925 Fix URL parameter encoding. 2017-11-07 12:33:38 +00:00
Richard Lewis
eb8c15075a Fix url params parsing. 2017-11-07 11:58:38 +00:00
Richard Lewis
0e854ee356 Fix loading and initialisation spinners. 2017-11-02 18:33:11 +00:00
Richard Lewis
a52bb9d603 Pass URL to check. 2017-11-02 17:27:59 +00:00
Richard Lewis
17c0405862 Restructure to pass props from componentWillRecieveProps. 2017-10-31 16:31:46 +00:00
Richard Lewis
758df29b23 Fix onLoad on wrong element. 2017-10-31 10:43:17 +00:00
Richard Lewis
35b33263ea Use querystring lib 2017-10-31 10:37:40 +00:00
Richard Lewis
1cb878bb57 Formatting 2017-10-31 10:04:37 +00:00
Richard Lewis
648b295971 Removed comment 2017-10-31 10:04:02 +00:00
Richard Lewis
3756ce606d Check URL prop updates and ensure that widgets are refreshed. 2017-10-27 17:49:14 +01:00
Richard Lewis
7662b5ac8f Unfinished, non-working changes to try and handle URL changes gracefully 2017-10-27 13:47:51 +01:00
Richard Lewis
2e3bdfd55d Fix string indentation. 2017-10-25 10:45:17 +01:00
Richard Lewis
11d4a63a32 Update text and split across multiple lines. 2017-10-23 23:59:36 +01:00
Richard Lewis
8b7f737c97 Remove logging.
Return early.
2017-10-23 23:47:37 +01:00
Richard Lewis
54bd916862 Split string across multiple lines. 2017-10-23 20:08:52 +01:00
Richard Lewis
3c4c986aca Update button text 2017-10-23 18:42:43 +01:00
Richard Lewis
ee60155846 Add delete widget confirmation dialog. 2017-10-23 17:05:44 +01:00
Stefan Parviainen
a96169e80e Fix merge conflict 2017-10-02 17:57:22 +02:00
Luke Barnard
6b9a2909df Add rule to enforce spacing in curly brackets in JSX children
This required an updated in version of eslint-plugin-react to 7.4.0.
2017-09-28 11:21:06 +01:00
Stefan Parviainen
35cb52febc Fix merge conflict 2017-09-27 08:41:37 +02:00
Robert Swain
24de01e21d AppTile: Test if widgetUrl startsWith instead of has a substring
The event origin should be at the beginning of the URL.
2017-09-25 17:14:25 +02:00
Robert Swain
6e49926228 AppTile: Do not test for electron platform
The method platform method is instead stubbed on all other platforms.
2017-09-25 17:13:18 +02:00
Stefan Parviainen
d4929b558e Add dummy translation function to mark translatable strings
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>
2017-09-22 21:43:27 +02:00
Robert Swain
53574541c3 AppTile: Add Jitsi electron screensharing support 2017-09-04 09:31:25 +02:00
Richard Lewis
2ff1888054 Make staging widgets work with live and vice versa. 2017-08-30 10:36:22 +01:00
Richard Lewis
502a0480a0 Merge pull request #1327 from matrix-org/matthew/multiple-widgets
Matthew/multiple widgets
2017-08-22 10:53:51 +01:00
Richard Lewis
a69cc9169f lint fix. 2017-08-22 10:04:57 +01:00
Richard Lewis
6c8391e3ea Remove beta tag. 2017-08-21 11:39:06 +01:00
Robert Swain
2eac869e27 Merge branch 'develop' into rob/apps-not-e2ee 2017-08-21 10:30:38 +02:00
Matthew Hodgson
d7f5295949 untested WIP for supporting multiple widgets properly 2017-08-18 18:40:00 +01:00
Richard Lewis
1862057695 Only render appTile body (including warnings) if drawer shown. 2017-08-18 18:33:56 +01:00
Robert Swain
2e00968bcd AppPermission: Note that apps are not E2E encrypted in E2E rooms 2017-08-18 17:44:33 +02:00
Luke Barnard
5e0a7212d9 Don't apply case logic to app names
As they should have the Correct Case in integrations land now
2017-08-18 14:57:28 +01:00
Luke Barnard
1a1a80b633 Merge branch 'develop' into luke/feature-app-tile-ux 2017-08-18 12:12:00 +01:00
Richard Lewis
4b5cdac032 Don't show widget security warning to the person who added it to the room. 2017-08-18 11:41:27 +01:00
Luke Barnard
57505c3a61 Add behaviour to toggle app draw on app tile header click 2017-08-18 10:56:35 +01:00
Michael Telatynski
b19c1010aa
Merge branches 'develop' and 't3chguy/i18n_analytics' of github.com:matrix-org/matrix-react-sdk into t3chguy/i18n_analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/Analytics.js
2017-08-10 13:54:55 +01:00
Richard Lewis
7599bde1f6 Fix logging line length. 2017-08-02 17:05:46 +01:00
Richard Lewis
2ab6bc84a7 Improve clarity 2017-08-01 17:49:41 +01:00
Richard Lewis
f0224460d2 Fix comparison and handle case where app has permission to load but content is mixed protocol. 2017-08-01 17:48:02 +01:00
Richard Lewis
d29610bdd2 Fix boolean comparison. 2017-08-01 17:45:06 +01:00
Richard Lewis
bc4d979d1e Display warning if widget is mixed content 2017-08-01 17:29:29 +01:00
Richard Lewis
546173d246 Fix scalar token 2017-08-01 15:53:42 +01:00
Richard Lewis
596efb6062 Fix missing comma 2017-08-01 11:42:50 +01:00
Richard Lewis
15f39040a0 Simplify canUserModifyWidgets API 2017-08-01 11:39:17 +01:00
Richard Lewis
a310ff3bab Add ToDo item. 2017-07-28 18:21:23 +01:00
Richard Lewis
6aa1d923ce Add comment 2017-07-28 16:48:13 +01:00
Richard Lewis
9935dd0051 Add comment to explain "fullWidth" component porperty. 2017-07-28 16:46:21 +01:00
Richard Lewis
aff1cd9469 Add allow-presentation permission to iframe sandbox permissions 2017-07-28 11:14:04 +01:00
Richard Lewis
d69c9a36b3 Factor out check permissions code. 2017-07-27 23:38:26 +01:00
Richard Lewis
5e23d676b4 Remove comments. 2017-07-27 23:05:43 +01:00
Richard Lewis
51d160e7d6 Hide edit button when user does not have permission to edit. 2017-07-27 20:18:31 +01:00
Richard Lewis
ab7fcbb5e7 Add function to determine if a user can modify widgets and style UI components as a result. 2017-07-27 18:10:28 +01:00
Michael Telatynski
bf98c0da7c
un-i18n Modal Analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-07-27 17:19:18 +01:00
Richard Lewis
8e4f1f0989 Add message spinner. 2017-07-27 16:41:52 +01:00
Richard Lewis
9f52c13bea Grant permission to load app widget. 2017-07-26 16:47:58 +01:00
Richard Lewis
76f4f88fcd App tile permissions -- broken 2017-07-26 11:28:43 +01:00
Richard Lewis
b589fcc3b0 Merge pull request #1240 from matrix-org/rxl881/deleteWidgets
Hide widget panel while it is being deleted.
2017-07-21 11:14:42 +01:00
Richard Lewis
6aa0f68ee9 Show beta testing icon and help message for widgets tile. 2017-07-14 23:31:57 +01:00
Kegsay
5274cf59a0 Hook up the edit widget button (#1218)
* Hook up the edit widget button

* Review comments
2017-07-14 11:17:59 +01:00
Richard Lewis
9a1e7ad170 Hide widget panel while it is being deleted. 2017-07-13 00:27:03 +01:00
David Baker
a48c7d2364 Only allow http and https widget URLs 2017-07-12 14:16:47 +01:00
David Baker
918f5abe81 Lint correctly 2017-07-12 10:34:50 +01:00
David Baker
53316a76f4 Sandbox app iframes 2017-07-12 10:22:14 +01:00
Kegsay
cf158530f5 Implement new widget API (#1201)
* Implement new widget API

This allows clients to see who provisioned which widgets.

* Update to make state_key the wid

* Update to latest API

* Only show widgets which have required fields

* Don't constantly show apps dialog

* Fix example to include data key
2017-07-11 12:15:27 +01:00
Kegan Dougal
42ba3ff410 Linting 2017-07-06 10:44:32 +01:00
Kegsay
e0e321783b Append the scalar_token to the widget URL if the widget URL is a scalar URL (#1182) 2017-07-06 09:28:48 +01:00
Richard Lewis
ea83d7eee2 Add missing import and fix apps reference. 2017-06-28 15:53:18 +01:00
Richard Lewis
93bdfc99df i18n "Cancel" alt text. 2017-06-28 12:25:36 +01:00
Richard Lewis
ddea1f35d2 Fix header. 2017-06-28 12:23:33 +01:00
Richard Lewis
ad2517bd8b Uppercase the first letter of the app tile name. 2017-06-28 10:27:06 +01:00
Richard Lewis
e343e99355 Cleaned up unused files and removed commented code 2017-06-27 11:28:38 +01:00
Robert Swain
91eabbba60 MessageComposer: Trigger Jitsi app from call buttons 2017-06-13 15:35:13 +02:00
Robert Swain
b63edcb390 AppTile: Support deletion of apps from room state 2017-06-13 15:33:17 +02:00
Robert Swain
bcb2f8408b AppTile: Fix typo in property name 2017-06-13 15:32:40 +02:00
Richard Lewis
e8353edb06 Disable test postmessag 2017-06-06 15:57:40 +01:00
Richard Lewis
dc4f321707 Pass room and user id to apps draw 2017-06-05 18:21:31 +01:00
Richard Lewis
c6991fd33c Periodically pass messages to embedded iframe 2017-06-04 23:00:52 +01:00
Richard Lewis
dac154f828 Add full width widgets 2017-05-31 10:08:39 +01:00
Richard Lewis
ec03cf4de3 disable iframe sandboxing. Remove BBC news iframe 2017-05-30 10:46:51 +01:00
Richard Lewis
b111579aed App tile events 2017-05-22 18:00:17 +01:00
Richard Lewis
e8837d28ef App tile and app dialog styling 2017-05-22 12:34:27 +01:00