Merge pull request #5194 from matrix-org/dbkr/dont_unpin_persistent_widgets

Don't show 'unpin' for persistent widgets
pull/21833/head
David Baker 2020-09-11 09:53:09 +01:00 committed by GitHub
commit 07693b71b1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 8 deletions

View File

@ -26,8 +26,8 @@ export default class WidgetContextMenu extends React.Component {
// Callback for when the revoke button is clicked. Required. // Callback for when the revoke button is clicked. Required.
onRevokeClicked: PropTypes.func.isRequired, onRevokeClicked: PropTypes.func.isRequired,
// Callback for when the unpin button is clicked. Required. // Callback for when the unpin button is clicked. If absent, unpin will be hidden.
onUnpinClicked: PropTypes.func.isRequired, onUnpinClicked: PropTypes.func,
// Callback for when the snapshot button is clicked. Button not shown // Callback for when the snapshot button is clicked. Button not shown
// without a callback. // without a callback.
@ -86,11 +86,13 @@ export default class WidgetContextMenu extends React.Component {
); );
} }
options.push( if (this.props.onUnpinClicked) {
<MenuItem className="mx_WidgetContextMenu_option" onClick={this.onUnpinClicked} key="unpin"> options.push(
{_t("Unpin")} <MenuItem className="mx_WidgetContextMenu_option" onClick={this.onUnpinClicked} key="unpin">
</MenuItem>, {_t("Unpin")}
); </MenuItem>,
);
}
if (this.props.onReloadClicked) { if (this.props.onReloadClicked) {
options.push( options.push(

View File

@ -841,7 +841,9 @@ export default class AppTile extends React.Component {
contextMenu = ( contextMenu = (
<ContextMenu {...aboveLeftOf(elementRect, null)} onFinished={this._closeContextMenu}> <ContextMenu {...aboveLeftOf(elementRect, null)} onFinished={this._closeContextMenu}>
<WidgetContextMenu <WidgetContextMenu
onUnpinClicked={this._onUnpinClicked} onUnpinClicked={
ActiveWidgetStore.getWidgetPersistence(this.props.app.id) ? null : this._onUnpinClicked
}
onRevokeClicked={this._onRevokeClicked} onRevokeClicked={this._onRevokeClicked}
onEditClicked={showEditButton ? this._onEditClick : undefined} onEditClicked={showEditButton ? this._onEditClick : undefined}
onDeleteClicked={showDeleteButton ? this._onDeleteClick : undefined} onDeleteClicked={showDeleteButton ? this._onDeleteClick : undefined}