From 6ed232b3d9b93b861de2e36d70b128c3550bbea7 Mon Sep 17 00:00:00 2001 From: dsehnal <david.sehnal@gmail.com> Date: Sun, 23 Jan 2022 19:25:09 +0100 Subject: [PATCH] fix using default values for webgl1/wboit features in the default viewer app --- src/apps/viewer/app.ts | 9 ++++++++- src/apps/viewer/index.html | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/apps/viewer/app.ts b/src/apps/viewer/app.ts index 4e675858d..b399d04bc 100644 --- a/src/apps/viewer/app.ts +++ b/src/apps/viewer/app.ts @@ -101,7 +101,14 @@ export class Viewer { } static async create(elementOrId: string | HTMLElement, options: Partial<ViewerOptions> = {}) { - const o = { ...DefaultViewerOptions, ...options }; + const definedOptions = {} as any; + // filter for defined properies only so the default values + // are property applied + for (const p of Object.keys(options) as (keyof ViewerOptions)[]) { + if (options[p] !== void 0) definedOptions[p] = options[p]; + } + + const o: ViewerOptions = { ...DefaultViewerOptions, ...definedOptions }; const defaultSpec = DefaultPluginUISpec(); const spec: PluginUISpec = { diff --git a/src/apps/viewer/index.html b/src/apps/viewer/index.html index d5e4b11e4..9299dcca6 100644 --- a/src/apps/viewer/index.html +++ b/src/apps/viewer/index.html @@ -57,7 +57,7 @@ var pickScale = getParam('pick-scale', '[^&]+').trim(); var pickPadding = getParam('pick-padding', '[^&]+').trim(); var disableWboit = getParam('disable-wboit', '[^&]+').trim() === '1'; - var preferWebgl1 = getParam('prefer-webgl1', '[^&]+').trim() === '1'; + var preferWebgl1 = getParam('prefer-webgl1', '[^&]+').trim() === '1' || void 0; molstar.Viewer.create('app', { layoutShowControls: !hideControls, @@ -71,7 +71,7 @@ pixelScale: parseFloat(pixelScale) || 1, pickScale: parseFloat(pickScale) || 0.25, pickPadding: isNaN(parseFloat(pickPadding)) ? 1 : parseFloat(pickPadding), - enableWboit: !disableWboit, + enableWboit: disableWboit ? true : void 0, // use default value if disable-wboit is not set preferWebgl1: preferWebgl1, }).then(viewer => { var snapshotId = getParam('snapshot-id', '[^&]+').trim(); -- GitLab