fix: more review feedback

pull/3083/head
William Grant 1 year ago
parent 5cd7262fa2
commit 8915971c48

@ -72,25 +72,17 @@ export const AboutView = () => {
<CopyToClipboardButton <CopyToClipboardButton
className="version" className="version"
text={versionInfo} text={versionInfo}
copyContent={versionInfo}
buttonType={SessionButtonType.Simple} buttonType={SessionButtonType.Simple}
/> />
<CopyToClipboardButton <CopyToClipboardButton
className="commitHash" className="commitHash"
text={commitInfo} text={commitInfo}
copyContent={commitInfo}
buttonType={SessionButtonType.Simple}
/>
<CopyToClipboardButton
className="os"
text={osInfo}
copyContent={osInfo}
buttonType={SessionButtonType.Simple} buttonType={SessionButtonType.Simple}
/> />
<CopyToClipboardButton className="os" text={osInfo} buttonType={SessionButtonType.Simple} />
<CopyToClipboardButton <CopyToClipboardButton
className="environment" className="environment"
text={states.join(' - ')} text={states.join(' - ')}
copyContent={states.join(' - ')}
buttonType={SessionButtonType.Simple} buttonType={SessionButtonType.Simple}
/> />
<a href="https://getsession.org">https://getsession.org</a> <a href="https://getsession.org">https://getsession.org</a>

@ -58,7 +58,7 @@ export function SessionQRCode(props: SessionQRCodeProps) {
const qrCanvasSize = 1000; const qrCanvasSize = 1000;
const canvasLogoSize = logoSize ? (qrCanvasSize * 0.25 * logoSize) / logoSize : 250; const canvasLogoSize = logoSize ? (qrCanvasSize * 0.25 * logoSize) / logoSize : 250;
const saveQRCode = async () => { const saveQRCode = () => {
const fileName = `${id}-${new Date().toISOString()}.jpg`; const fileName = `${id}-${new Date().toISOString()}.jpg`;
try { try {
if (saveWithTheme) { if (saveWithTheme) {

@ -8,7 +8,7 @@ import { SessionIconButton } from '../icon';
import { SessionIconButtonProps } from '../icon/SessionIconButton'; import { SessionIconButtonProps } from '../icon/SessionIconButton';
type CopyProps = { type CopyProps = {
copyContent: string; copyContent?: string;
onCopyComplete?: (copiedValue: string | undefined) => void; onCopyComplete?: (copiedValue: string | undefined) => void;
hotkey?: boolean; hotkey?: boolean;
}; };
@ -22,12 +22,25 @@ export const CopyToClipboardButton = (props: CopyToClipboardButtonProps) => {
const [{ value }, copyToClipboard] = useCopyToClipboard(); const [{ value }, copyToClipboard] = useCopyToClipboard();
const onClick = () => { const onClick = () => {
try {
if (!copyContent && !text) {
throw Error('Nothing to copy!');
}
if (copyContent) {
copyToClipboard(copyContent); copyToClipboard(copyContent);
} else if (text) {
copyToClipboard(text);
}
ToastUtils.pushCopiedToClipBoard(); ToastUtils.pushCopiedToClipBoard();
setCopied(true); setCopied(true);
if (onCopyComplete) { if (onCopyComplete) {
onCopyComplete(value); onCopyComplete(value);
} }
} catch (err) {
window.log.error('CopyToClipboard:', err);
}
}; };
useHotkey('c', onClick, !hotkey); useHotkey('c', onClick, !hotkey);
@ -51,7 +64,7 @@ export const CopyToClipboardButton = (props: CopyToClipboardButtonProps) => {
type CopyToClipboardIconProps = Omit<SessionIconButtonProps, 'children' | 'onClick' | 'iconType'> & type CopyToClipboardIconProps = Omit<SessionIconButtonProps, 'children' | 'onClick' | 'iconType'> &
CopyProps; CopyProps;
export const CopyToClipboardIcon = (props: CopyToClipboardIconProps) => { export const CopyToClipboardIcon = (props: CopyToClipboardIconProps & { copyContent: string }) => {
const { copyContent, onCopyComplete, hotkey = false } = props; const { copyContent, onCopyComplete, hotkey = false } = props;
const [{ value }, copyToClipboard] = useCopyToClipboard(); const [{ value }, copyToClipboard] = useCopyToClipboard();

@ -79,7 +79,7 @@ const MemberRow = (
<MemberListItem <MemberListItem
key={key} key={key}
pubkey={memberPubkey} pubkey={memberPubkey}
isSelected={selectedMemberIds.some(m => m === memberPubkey)} isSelected={selectedMemberIds.includes(memberPubkey)}
onSelect={addToSelected} onSelect={addToSelected}
onUnselect={removeFromSelected} onUnselect={removeFromSelected}
/> />

Loading…
Cancel
Save