From a2b24317943f62c96659dbe1404e44ac7f32fe60 Mon Sep 17 00:00:00 2001 From: Harjot Singh Date: Fri, 23 Oct 2020 19:44:34 +0100 Subject: [PATCH] fix(frontend/presenter): constrain zoom hotkeys to option range --- app/frontend/src/Presenter/index.js | 6 ++++-- app/frontend/src/lib/keyMap.js | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/frontend/src/Presenter/index.js b/app/frontend/src/Presenter/index.js index 6ffb587b..ae388281 100644 --- a/app/frontend/src/Presenter/index.js +++ b/app/frontend/src/Presenter/index.js @@ -30,6 +30,7 @@ import { import { GLOBAL_SHORTCUTS } from '../lib/keyMap' import { SettingsContext } from '../lib/contexts' import { useCurrentLines } from '../lib/hooks' +import { OPTIONS } from '../lib/options' import ThemeLoader from '../shared/ThemeLoader' import Loader from '../shared/Loader' @@ -110,9 +111,10 @@ const Presenter = () => { search: queryString.stringify( { [ STATES.controllerOnly ]: true } ), } ) + const { controllerZoom } = OPTIONS const setZoom = controllerZoom => controller.setSettings( { layout: { controllerZoom } } ) - const zoomInController = () => setZoom( zoom + 0.1 ) - const zoomOutController = () => setZoom( zoom - 0.1 ) + const zoomInController = () => setZoom( Math.min( controllerZoom.max, zoom + 0.1 ) ) + const zoomOutController = () => setZoom( Math.max( controllerZoom.min, zoom - 0.1 ) ) const zoomResetController = () => setZoom( 1 ) /** diff --git a/app/frontend/src/lib/keyMap.js b/app/frontend/src/lib/keyMap.js index ecdbe175..fdda85b8 100644 --- a/app/frontend/src/lib/keyMap.js +++ b/app/frontend/src/lib/keyMap.js @@ -44,7 +44,7 @@ export const GLOBAL_SHORTCUTS = decorateGroup( { }, zoomInController: { name: 'Zoom Controller In', - sequences: [ 'ctrl++' ], + sequences: [ 'ctrl++', 'ctrl+shift+=' ], required: true, }, zoomOutController: {