From 28ef13fdddee208bdf45300ccc0108d61619ff71 Mon Sep 17 00:00:00 2001 From: Oscar Lorentzon Date: Wed, 2 Mar 2016 14:36:37 +0100 Subject: [PATCH] Check state in slider component before changing. --- src/component/imageplane/SliderComponent.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/component/imageplane/SliderComponent.ts b/src/component/imageplane/SliderComponent.ts index 0007ade3..40350fd5 100644 --- a/src/component/imageplane/SliderComponent.ts +++ b/src/component/imageplane/SliderComponent.ts @@ -4,7 +4,7 @@ import * as THREE from "three"; import * as rx from "rx"; import {Node} from "../../Graph"; -import {ICurrentState, IFrame} from "../../State"; +import {ICurrentState, IFrame, State} from "../../State"; import {Container, Navigator} from "../../Viewer"; import {IGLRenderHash, GLRenderStage} from "../../Render"; import {Component, ComponentService, ImagePlaneScene, ImagePlaneFactory} from "../../Component"; @@ -194,7 +194,9 @@ export class SliderComponent extends Component { } protected _activate(): void { - this._navigator.stateService.wait(); + if (this._navigator.stateService.state === State.Traversing) { + this._navigator.stateService.wait(); + } this._stateSubscription = this._navigator.stateService.currentState$ .map( @@ -243,7 +245,9 @@ export class SliderComponent extends Component { } protected _deactivate(): void { - this._navigator.stateService.traverse(); + if (this._navigator.stateService.state === State.Waiting) { + this._navigator.stateService.traverse(); + } this._stateSubscription.dispose(); this._mouseMoveSubscription.dispose();