Merge branch 'fix-status-focus' into 'develop'

Status: prevent selecting text from navigating to the status

Closes #901

See merge request soapbox-pub/soapbox!1919
This commit is contained in:
Alex Gleason 2022-11-19 10:29:36 +00:00
commit a0597a6445
1 changed files with 6 additions and 1 deletions

View File

@ -110,6 +110,11 @@ const Status: React.FC<IStatus> = (props) => {
const handleClick = (e?: React.MouseEvent): void => { const handleClick = (e?: React.MouseEvent): void => {
e?.stopPropagation(); e?.stopPropagation();
// If the user is selecting text, don't focus the status.
if (getSelection()?.toString().length) {
return;
}
if (!e || !(e.ctrlKey || e.metaKey)) { if (!e || !(e.ctrlKey || e.metaKey)) {
if (onClick) { if (onClick) {
onClick(); onClick();
@ -321,7 +326,7 @@ const Status: React.FC<IStatus> = (props) => {
data-featured={featured ? 'true' : null} data-featured={featured ? 'true' : null}
aria-label={textForScreenReader(intl, actualStatus, rebloggedByText)} aria-label={textForScreenReader(intl, actualStatus, rebloggedByText)}
ref={node} ref={node}
onClick={handleClick} onMouseUp={handleClick}
role='link' role='link'
> >
{featured && ( {featured && (