message: Destroy widget when its permission is revoked
diff: @@ -161,13 +161,17 @@ export default class AppTile extends React.Component {
  // if it's not remaining on screen, get rid of the PersistedElement container
  if (!ActiveWidgetStore.getWidgetPersistence(this.props.id)) {
  // FIXME: ActiveWidgetStore should probably worry about this?
  + this._destroyPersistentWidget();
  + }
  + }
  +
  + _destroyPersistentWidget() {
  const PersistedElement = sdk.getComponent("elements.PersistedElement");
  PersistedElement.destroyElement(this._persistKey);
  ActiveWidgetStore.delWidgetMessaging(this.props.id);
  ActiveWidgetStore.delWidgetCapabilities(this.props.id);
  ActiveWidgetStore.delRoomId(this.props.id);
  }
  - }
  /**
  * Adds a scalar token to the widget URL, if required
  @@ -439,6 +443,10 @@ export default class AppTile extends React.Component {
  console.warn('Revoking permission to load widget - ', this.state.widgetUrl);
  localStorage.removeItem(this.state.widgetPermissionId);
  this.setState({hasPermissionToLoad: false});
  +
  + // Force the widget to be non-persistent
  + ActiveWidgetStore.setWidgetPersistence(this.props.id, false);
  + this._destroyPersistentWidget();
  }
  formatAppTileName() {
  