diff --git a/src/components/Node.tsx b/src/components/Node.tsx index 7f4624e..f83b8cf 100644 --- a/src/components/Node.tsx +++ b/src/components/Node.tsx @@ -46,6 +46,7 @@ export function Node({ onClick={event => { if ( (os === OperatingSystems.macOS && event.metaKey) || + (os === OperatingSystems.Linux && event.ctrlKey) || (os === OperatingSystems.Windows && event.ctrlKey) ) { // The default behavior, open in new tab diff --git a/src/utils/general.ts b/src/utils/general.ts index d411268..d07b343 100644 --- a/src/utils/general.ts +++ b/src/utils/general.ts @@ -16,6 +16,7 @@ export function pick(source: T, keys: string[]): Partial { export enum OperatingSystems { Windows = 'Windows', macOS = 'Macintosh', + Linux = 'Linux', others = 'unknown', } @@ -25,6 +26,7 @@ function detectOS(): OperatingSystems { } = window if (userAgent.indexOf(OperatingSystems.Windows) !== -1) return OperatingSystems.Windows else if (userAgent.indexOf(OperatingSystems.macOS) !== -1) return OperatingSystems.macOS + else if (userAgent.indexOf(OperatingSystems.Linux) !== -1) return OperatingSystems.Linux return OperatingSystems.others }