2
2
// Licensed under the MIT license.
3
3
4
4
import * as React from "react" ;
5
- import { WEBVIEW_MESSAGES } from "../../constants" ;
5
+ import { WEBVIEW_MESSAGES , VIEW_STATE } from "../../constants" ;
6
6
import "../../styles/InputSlider.css" ;
7
7
import { sendMessage } from "../../utils/MessageUtils" ;
8
8
import { ISliderProps } from "../../viewUtils" ;
9
+ import { ViewStateContext } from "../../context" ;
9
10
10
11
class InputSlider extends React . Component < ISliderProps , any , any > {
11
12
constructor ( props : ISliderProps ) {
@@ -24,20 +25,10 @@ class InputSlider extends React.Component<ISliderProps, any, any> {
24
25
case "reset-state" :
25
26
this . setState ( { value : 0 } ) ;
26
27
break ;
27
- case "set-state" :
28
- console . log (
29
- "Setting the state: " + JSON . stringify ( message . state )
30
- ) ;
31
- break ;
32
- default :
33
- console . log ( "Invalid message received from the extension." ) ;
34
- this . setState ( { value : 0 } ) ;
35
- break ;
36
28
}
37
29
} ;
38
30
39
31
componentDidMount ( ) {
40
- console . log ( "Mounted" ) ;
41
32
window . addEventListener ( "message" , this . handleMessage ) ;
42
33
}
43
34
@@ -46,6 +37,7 @@ class InputSlider extends React.Component<ISliderProps, any, any> {
46
37
window . removeEventListener ( "message" , this . handleMessage ) ;
47
38
}
48
39
render ( ) {
40
+ const isInputDisabled = this . context === VIEW_STATE . PAUSE ;
49
41
return (
50
42
< div className = "inputSlider" >
51
43
< span > { this . props . axisLabel } </ span >
@@ -78,6 +70,7 @@ class InputSlider extends React.Component<ISliderProps, any, any> {
78
70
value = { this . state . value }
79
71
aria-label = { `${ this . props . type } sensor slider` }
80
72
defaultValue = { this . props . minValue . toLocaleString ( ) }
73
+ disabled = { isInputDisabled }
81
74
/>
82
75
< span className = "downLabelArea" >
83
76
< span className = "minLabel" > { this . props . minLabel } </ span >
@@ -131,5 +124,6 @@ class InputSlider extends React.Component<ISliderProps, any, any> {
131
124
return valueInt ;
132
125
} ;
133
126
}
127
+ InputSlider . contextType = ViewStateContext ;
134
128
135
129
export default InputSlider ;
0 commit comments