From ef5f76139a799f7fc436e037e490ec7c6bf0b701 Mon Sep 17 00:00:00 2001 From: Konstantin Levin Date: Tue, 9 May 2023 10:18:55 +0200 Subject: [PATCH] #2585 Change behaviour of "Show hydrogen labels" setting so the "on" value works the same way as "terminal and hetero" --- .../src/application/render/restruct/reatom.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/ketcher-core/src/application/render/restruct/reatom.ts b/packages/ketcher-core/src/application/render/restruct/reatom.ts index 85df01a552..6eb7db5bff 100644 --- a/packages/ketcher-core/src/application/render/restruct/reatom.ts +++ b/packages/ketcher-core/src/application/render/restruct/reatom.ts @@ -51,7 +51,8 @@ export enum ShowHydrogenLabels { Hetero = 'Hetero', Terminal = 'Terminal', TerminalAndHetero = 'Terminal and Hetero', - On = 'on' + On = 'on', + All = 'all' } class ReAtom extends ReObject { @@ -513,7 +514,7 @@ function isLabelVisible(restruct, options, atom) { const shouldBeVisible = neighborsLength || options.carbonExplicitly || - options.showHydrogenLabels === ShowHydrogenLabels.On || + options.showHydrogenLabels === ShowHydrogenLabels.All || atom.a.alias || atom.a.isotope !== 0 || atom.a.radical !== 0 || @@ -549,12 +550,14 @@ function isLabelVisible(restruct, options, atom) { function displayHydrogen(hydrogenLabels: ShowHydrogenLabels, atom: ReAtom) { return ( - hydrogenLabels === ShowHydrogenLabels.On || + hydrogenLabels === ShowHydrogenLabels.All || (hydrogenLabels === ShowHydrogenLabels.Terminal && atom.a.neighbors.length < 2) || (hydrogenLabels === ShowHydrogenLabels.Hetero && atom.label?.text.toLowerCase() !== 'c') || - (hydrogenLabels === ShowHydrogenLabels.TerminalAndHetero && + ([ShowHydrogenLabels.TerminalAndHetero, ShowHydrogenLabels.On].includes( + hydrogenLabels + ) && (atom.a.neighbors.length < 2 || atom.label?.text.toLowerCase() !== 'c')) ) }