@@ -22,6 +22,22 @@ export interface SearchCommitsContinuation {
22
22
endChromiumVersion : string ;
23
23
}
24
24
25
+ async function showQuickPick (
26
+ quickPick : vscode . QuickPick < vscode . QuickPickItem > ,
27
+ ) {
28
+ return new Promise < string | undefined > ( ( resolve ) => {
29
+ quickPick . onDidAccept ( ( ) => {
30
+ resolve ( quickPick . selectedItems [ 0 ] . label ) ;
31
+ quickPick . dispose ( ) ;
32
+ } ) ;
33
+ quickPick . onDidHide ( ( ) => {
34
+ resolve ( undefined ) ;
35
+ quickPick . dispose ( ) ;
36
+ } ) ;
37
+ quickPick . show ( ) ;
38
+ } ) ;
39
+ }
40
+
25
41
export async function searchCLs (
26
42
chromiumRoot : vscode . Uri ,
27
43
_electronRoot : vscode . Uri ,
@@ -62,8 +78,8 @@ export async function searchCLs(
62
78
}
63
79
}
64
80
65
- let startChromiumVersion : string ;
66
- let endChromiumVersion : string ;
81
+ let startChromiumVersion : string | undefined ;
82
+ let endChromiumVersion : string | undefined ;
67
83
68
84
if ( ! continuation ) {
69
85
stream . progress ( "Fetching Chromium versions..." ) ;
@@ -84,26 +100,14 @@ export async function searchCLs(
84
100
quickPick . step = 1 ;
85
101
quickPick . totalSteps = 2 ;
86
102
87
- const startVersion = await new Promise < string | undefined > ( ( resolve ) => {
88
- quickPick . onDidAccept ( ( ) => {
89
- resolve ( quickPick . selectedItems [ 0 ] . label ) ;
90
- quickPick . dispose ( ) ;
91
- } ) ;
92
- quickPick . onDidHide ( ( ) => {
93
- resolve ( undefined ) ;
94
- quickPick . dispose ( ) ;
95
- } ) ;
96
- quickPick . show ( ) ;
97
- } ) ;
103
+ startChromiumVersion = await showQuickPick ( quickPick ) ;
98
104
99
- if ( ! startVersion ) {
105
+ if ( ! startChromiumVersion ) {
100
106
return { } ;
101
107
}
102
108
103
- startChromiumVersion = startVersion ;
104
-
105
109
const remainingVersions = versions . filter (
106
- ( version ) => compareChromiumVersions ( version , startChromiumVersion ) > 0 ,
110
+ ( version ) => compareChromiumVersions ( version , startChromiumVersion ! ) > 0 ,
107
111
) ;
108
112
109
113
quickPick = vscode . window . createQuickPick ( ) ;
@@ -115,23 +119,11 @@ export async function searchCLs(
115
119
quickPick . step = 2 ;
116
120
quickPick . totalSteps = 2 ;
117
121
118
- const endVersion = await new Promise < string | undefined > ( ( resolve ) => {
119
- quickPick . onDidAccept ( ( ) => {
120
- resolve ( quickPick . selectedItems [ 0 ] . label ) ;
121
- quickPick . dispose ( ) ;
122
- } ) ;
123
- quickPick . onDidHide ( ( ) => {
124
- resolve ( undefined ) ;
125
- quickPick . dispose ( ) ;
126
- } ) ;
127
- quickPick . show ( ) ;
128
- } ) ;
122
+ endChromiumVersion = await showQuickPick ( quickPick ) ;
129
123
130
- if ( ! endVersion ) {
124
+ if ( ! endChromiumVersion ) {
131
125
return { } ;
132
126
}
133
-
134
- endChromiumVersion = endVersion ;
135
127
} else {
136
128
( { startChromiumVersion, endChromiumVersion } = continuation ) ;
137
129
}
0 commit comments