@@ -9,28 +9,24 @@ import { debounce, showMessage } from './utils'
9
9
const changedMsg = 'UI Style changed.'
10
10
const rollbackMsg = 'UI Style rollback.'
11
11
12
+ const configChangedMsg = 'Configuration changed, apply now?'
13
+ const newVersionMsg = 'Seems like first time use or new version is installed, initialize and reload config now?'
14
+ const extensionUpdatedMsg = 'Seems like extensions are updated, reload config now?'
12
15
const { activate, deactivate } = defineExtension ( ( ) => {
13
- const { hasBakFile, reload, rollback } = createFileManagers ( )
16
+ const { hasBakFile, hasBakExtFiles, reload, rollback } = createFileManagers ( )
17
+
18
+ const requestReload = ( msg : string ) => showMessage ( msg , 'Yes' , 'No' )
19
+ . then < any > ( item => item === 'Yes' && reload ( changedMsg ) )
14
20
15
21
if ( ! hasBakFile ( ) ) {
16
- showMessage (
17
- 'Seems like first time use or new version is installed, initialize and reload config now?' ,
18
- 'Yes' ,
19
- 'No' ,
20
- )
21
- . then < any > ( item => item === 'Yes' && reload ( changedMsg ) )
22
+ requestReload ( newVersionMsg )
23
+ } else if ( ! hasBakExtFiles ( ) ) {
24
+ requestReload ( extensionUpdatedMsg )
22
25
}
23
26
24
27
useCommand ( Meta . commands . reload , ( ) => reload ( changedMsg ) )
25
28
useCommand ( Meta . commands . rollback , ( ) => rollback ( rollbackMsg ) )
26
29
27
- const notifyChanged = ( ) => showMessage (
28
- 'Configuration changed, apply now?' ,
29
- 'Yes' ,
30
- 'No' ,
31
- )
32
- . then < any > ( item => item === 'Yes' && reload ( changedMsg ) )
33
-
34
30
useDisposable (
35
31
workspace . onDidChangeConfiguration (
36
32
debounce (
@@ -39,14 +35,14 @@ const { activate, deactivate } = defineExtension(() => {
39
35
return
40
36
}
41
37
if ( e . affectsConfiguration ( Meta . name ) ) {
42
- notifyChanged ( )
38
+ requestReload ( configChangedMsg )
43
39
} else if ( e . affectsConfiguration ( ffKey ) && ! config [ 'font.monospace' ] ) {
44
40
const {
45
41
globalValue,
46
42
workspaceValue,
47
43
} = workspace . getConfiguration ( ) . inspect < string > ( ffKey ) !
48
44
if ( globalValue === workspaceValue ) {
49
- notifyChanged ( )
45
+ requestReload ( configChangedMsg )
50
46
}
51
47
}
52
48
} ,
0 commit comments