[Glitch+Emoji reactions] Use modern React context for for identity for emoji reaction code

This commit is contained in:
Jeremy Kescher 2024-05-21 00:46:17 +02:00 committed by Essem
parent 613d811b93
commit ed68485e5c
No known key found for this signature in database
GPG key ID: 7D497397CC3A2A8C
2 changed files with 7 additions and 4 deletions

View file

@ -12,6 +12,7 @@ import { HotKeys } from 'react-hotkeys';
import PictureInPicturePlaceholder from 'flavours/glitch/components/picture_in_picture_placeholder';
import PollContainer from 'flavours/glitch/containers/poll_container';
import NotificationOverlayContainer from 'flavours/glitch/features/notifications/containers/overlay_container';
import { identityContextPropShape, withIdentity } from 'flavours/glitch/identity_context';
import { autoUnfoldCW } from 'flavours/glitch/utils/content_warning';
import { withOptionalRouter, WithOptionalRouterPropTypes } from 'flavours/glitch/utils/react_router';
@ -77,6 +78,7 @@ class Status extends ImmutablePureComponent {
static contextType = SensitiveMediaContext;
static propTypes = {
identity: identityContextPropShape,
containerId: PropTypes.string,
id: PropTypes.string,
status: ImmutablePropTypes.map,
@ -541,6 +543,7 @@ class Status extends ImmutablePureComponent {
onOpenMedia,
notification,
history,
identity,
...other
} = this.props;
const { isCollapsed } = this.state;
@ -849,7 +852,7 @@ class Status extends ImmutablePureComponent {
numVisible={visibleReactions}
addReaction={this.props.onReactionAdd}
removeReaction={this.props.onReactionRemove}
canReact={this.context.identity.signedIn}
canReact={this.props.identity.signedIn}
/>
{(!isCollapsed || !(muted || !settings.getIn(['collapsed', 'show_action_bar']))) && (
@ -874,4 +877,4 @@ class Status extends ImmutablePureComponent {
}
export default withOptionalRouter(injectIntl(Status));
export default withOptionalRouter(injectIntl((withIdentity(Status))));

View file

@ -282,8 +282,8 @@ class Status extends ImmutablePureComponent {
};
handleReactionAdd = (statusId, name, url) => {
const { dispatch } = this.props;
const { signedIn } = this.context.identity;
const { dispatch, identity } = this.props;
const { signedIn } = identity;
if (signedIn) {
dispatch(addReaction(statusId, name, url));