diff --git a/js/components/nglView/constants/index.js b/js/components/nglView/constants/index.js index dd9afd910..3bdd93564 100644 --- a/js/components/nglView/constants/index.js +++ b/js/components/nglView/constants/index.js @@ -79,3 +79,12 @@ export const MOL_REPRESENTATION = { }; export const MOL_REPRESENTATION_BUFFER = 'buffer'; + +export const NGL_VIEW_DEFAULT_VALUES = { + [NGL_PARAMS.backgroundColor]: BACKGROUND_COLOR.black, + [NGL_PARAMS.clipNear]: 42, + [NGL_PARAMS.clipFar]: 100, + [NGL_PARAMS.clipDist]: 10, + [NGL_PARAMS.fogNear]: 50, + [NGL_PARAMS.fogFar]: 62 +}; diff --git a/js/reducers/ngl/nglReducers.js b/js/reducers/ngl/nglReducers.js index dd528df9d..b161112d2 100644 --- a/js/reducers/ngl/nglReducers.js +++ b/js/reducers/ngl/nglReducers.js @@ -1,4 +1,4 @@ -import { BACKGROUND_COLOR, NGL_PARAMS } from '../../components/nglView/constants'; +import { BACKGROUND_COLOR, NGL_PARAMS, NGL_VIEW_DEFAULT_VALUES } from '../../components/nglView/constants'; import { CONSTANTS } from './constants'; import { VIEWS } from '../../constants/constants'; @@ -23,12 +23,13 @@ export const INITIAL_STATE = { [NGL_PARAMS.ambientColor]: 0xdddddd, [NGL_PARAMS.ambientIntensity]: 0.2, [NGL_PARAMS.hoverTimeout]: 0, */ - [NGL_PARAMS.backgroundColor]: BACKGROUND_COLOR.black, - [NGL_PARAMS.clipNear]: 42, - [NGL_PARAMS.clipFar]: 100, - [NGL_PARAMS.clipDist]: 10, - [NGL_PARAMS.fogNear]: 50, - [NGL_PARAMS.fogFar]: 62 + ...NGL_VIEW_DEFAULT_VALUES + // [NGL_PARAMS.backgroundColor]: BACKGROUND_COLOR.black, + // [NGL_PARAMS.clipNear]: 42, + // [NGL_PARAMS.clipFar]: 100, + // [NGL_PARAMS.clipDist]: 10, + // [NGL_PARAMS.fogNear]: 50, + // [NGL_PARAMS.fogFar]: 62 }, // Helper variables for marking that protein and molecule groups are successful loaded diff --git a/js/reducers/tracking/dispatchActions.js b/js/reducers/tracking/dispatchActions.js index adf7c0aac..b6695cbbc 100644 --- a/js/reducers/tracking/dispatchActions.js +++ b/js/reducers/tracking/dispatchActions.js @@ -67,7 +67,7 @@ import { updateComponentRepresentationVisibilityAll, changeComponentRepresentation } from '../../../js/reducers/ngl/actions'; -import { NGL_PARAMS } from '../../components/nglView/constants'; +import { NGL_PARAMS, NGL_VIEW_DEFAULT_VALUES } from '../../components/nglView/constants'; import * as listType from '../../constants/listTypes'; import { assignRepresentationToComp } from '../../components/nglView/generatingObjects'; import { @@ -731,39 +731,51 @@ export const restoreNglViewSettings = stages => (dispatch, getState) => { const orderedActionList = currentActionList.reverse((a, b) => a.timestamp - b.timestamp); let backgroundAction = orderedActionList.find(action => action.type === actionType.BACKGROUND_COLOR_CHANGED); - if (backgroundAction && backgroundAction.newSetting) { + if (backgroundAction && backgroundAction.newSetting !== undefined) { let value = backgroundAction.newSetting; dispatch(setNglBckGrndColor(value, majorView, summaryView)); + } else { + dispatch(setNglBckGrndColor(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.backgroundColor], majorView, summaryView)); } let clipNearAction = orderedActionList.find(action => action.type === actionType.CLIP_NEAR); - if (clipNearAction && clipNearAction.newSetting) { + if (clipNearAction && clipNearAction.newSetting !== undefined) { let value = clipNearAction.newSetting; dispatch(setNglClipNear(value, viewParams[NGL_PARAMS.clipNear], majorView)); + } else { + dispatch(setNglClipNear(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.clipNear], viewParams[NGL_PARAMS.clipNear], majorView)); } let clipFarAction = orderedActionList.find(action => action.type === actionType.CLIP_FAR); - if (clipFarAction && clipFarAction.newSetting) { + if (clipFarAction && clipFarAction.newSetting !== undefined) { let value = clipFarAction.newSetting; dispatch(setNglClipFar(value, viewParams[NGL_PARAMS.clipFar], majorView)); + } else { + dispatch(setNglClipFar(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.clipFar], viewParams[NGL_PARAMS.clipFar], majorView)); } let clipDistAction = orderedActionList.find(action => action.type === actionType.CLIP_DIST); - if (clipDistAction && clipDistAction.newSetting) { + if (clipDistAction && clipDistAction.newSetting !== undefined) { let value = clipDistAction.newSetting; dispatch(setNglClipDist(value, viewParams[NGL_PARAMS.clipDist], majorView)); + } else { + dispatch(setNglClipDist(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.clipDist], viewParams[NGL_PARAMS.clipDist], majorView)); } let fogNearAction = orderedActionList.find(action => action.type === actionType.FOG_NEAR); - if (fogNearAction && fogNearAction.newSetting) { + if (fogNearAction && fogNearAction.newSetting !== undefined) { let value = fogNearAction.newSetting; dispatch(setNglFogNear(value, viewParams[NGL_PARAMS.fogNear], majorView)); + } else { + dispatch(setNglFogNear(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.fogNear], viewParams[NGL_PARAMS.fogNear], majorView)); } let fogFarAction = orderedActionList.find(action => action.type === actionType.FOG_FAR); - if (fogFarAction && fogFarAction.newSetting) { + if (fogFarAction && fogFarAction.newSetting !== undefined) { let value = fogFarAction.newSetting; dispatch(setNglFogFar(value, viewParams[NGL_PARAMS.fogFar], majorView)); + } else { + dispatch(setNglFogFar(NGL_VIEW_DEFAULT_VALUES[NGL_PARAMS.fogFar], viewParams[NGL_PARAMS.fogFar], majorView)); } }; diff --git a/package.json b/package.json index b0edfcbb9..9cc6ecf42 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fragalysis-frontend", - "version": "0.9.48", + "version": "0.9.50", "description": "Frontend for fragalysis", "main": "webpack.config.js", "scripts": {