Don't needlessly persist user widgets

Fixes https://github.com/vector-im/element-web/issues/15842

We don't have a concept of a stickerpicker staying on screen, so don't make it a thing yet.
This commit is contained in:
Travis Ralston 2020-11-26 15:09:08 -07:00
parent 6066645207
commit 80f1df6d95

View file

@ -375,17 +375,20 @@ export default class AppTile extends React.Component {
</div> </div>
); );
// all widgets can theoretically be allowed to remain on screen, so we wrap if (!this.props.userWidget) {
// them all in a PersistedElement from the get-go. If we wait, the iframe will // All room widgets can theoretically be allowed to remain on screen, so we
// be re-mounted later, which means the widget has to start over, which is bad. // wrap them all in a PersistedElement from the get-go. If we wait, the iframe
// will be re-mounted later, which means the widget has to start over, which is
// bad.
// Also wrap the PersistedElement in a div to fix the height, otherwise // Also wrap the PersistedElement in a div to fix the height, otherwise
// AppTile's border is in the wrong place // AppTile's border is in the wrong place
appTileBody = <div className="mx_AppTile_persistedWrapper"> appTileBody = <div className="mx_AppTile_persistedWrapper">
<PersistedElement persistKey={this._persistKey}> <PersistedElement persistKey={this._persistKey}>
{appTileBody} {appTileBody}
</PersistedElement> </PersistedElement>
</div>; </div>;
}
} }
} }