@@ -55,7 +55,6 @@ import {
55
55
} from "../utils/ConfigUtils" ;
56
56
import { NodeModel } from "../model/NodeModel" ;
57
57
import { ISearchSet } from "../model/Model" ;
58
- import { statusBarService } from "../service/StatusBarService" ;
59
58
import { previewService } from "../service/PreviewService" ;
60
59
import { executeService } from "../service/ExecuteService" ;
61
60
import { getNodeIdFromFile } from "../utils/SystemUtils" ;
@@ -80,6 +79,7 @@ import { submissionService } from "../service/SubmissionService";
80
79
import { bricksDataService } from "../service/BricksDataService" ;
81
80
import { groupDao } from "../dao/groupDao" ;
82
81
import { fileMeta , ProblemMeta } from "../utils/problemUtils" ;
82
+ import { BABA , BabaStr } from "../BABA" ;
83
83
84
84
// 视图控制器
85
85
class TreeViewController implements Disposable {
@@ -111,7 +111,8 @@ class TreeViewController implements Disposable {
111
111
* @returns A promise that resolves to a string.
112
112
*/
113
113
public async submitSolution ( uri ?: vscode . Uri ) : Promise < void > {
114
- if ( ! statusBarService . getUser ( ) ) {
114
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
115
+ if ( ! sbp . getUser ( ) ) {
115
116
promptForSignIn ( ) ;
116
117
return ;
117
118
}
@@ -144,7 +145,8 @@ class TreeViewController implements Disposable {
144
145
*/
145
146
public async testSolution ( uri ?: vscode . Uri ) : Promise < void > {
146
147
try {
147
- if ( statusBarService . getStatus ( ) === UserStatus . SignedOut ) {
148
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
149
+ if ( sbp . getStatus ( ) === UserStatus . SignedOut ) {
148
150
return ;
149
151
}
150
152
@@ -254,7 +256,8 @@ class TreeViewController implements Disposable {
254
256
*/
255
257
public async testCaseDef ( uri ?: vscode . Uri , allCase ?: boolean ) : Promise < void > {
256
258
try {
257
- if ( statusBarService . getStatus ( ) === UserStatus . SignedOut ) {
259
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
260
+ if ( sbp . getStatus ( ) === UserStatus . SignedOut ) {
258
261
return ;
259
262
}
260
263
@@ -289,7 +292,8 @@ class TreeViewController implements Disposable {
289
292
*/
290
293
public async reTestSolution ( uri ?: vscode . Uri ) : Promise < void > {
291
294
try {
292
- if ( statusBarService . getStatus ( ) === UserStatus . SignedOut ) {
295
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
296
+ if ( sbp . getStatus ( ) === UserStatus . SignedOut ) {
293
297
return ;
294
298
}
295
299
@@ -337,7 +341,8 @@ class TreeViewController implements Disposable {
337
341
*/
338
342
public async tesCaseArea ( uri ?: vscode . Uri , testcase ?: string ) : Promise < void > {
339
343
try {
340
- if ( statusBarService . getStatus ( ) === UserStatus . SignedOut ) {
344
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
345
+ if ( sbp . getStatus ( ) === UserStatus . SignedOut ) {
341
346
return ;
342
347
}
343
348
@@ -505,7 +510,8 @@ class TreeViewController implements Disposable {
505
510
*/
506
511
public async getAllProblems ( ) : Promise < IProblem [ ] > {
507
512
try {
508
- if ( statusBarService . getStatus ( ) === UserStatus . SignedOut ) {
513
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
514
+ if ( sbp . getStatus ( ) === UserStatus . SignedOut ) {
509
515
return [ ] ;
510
516
}
511
517
@@ -603,7 +609,7 @@ class TreeViewController implements Disposable {
603
609
return ;
604
610
}
605
611
606
- if ( ! statusBarService . getUser ( ) && choice . value != "testapi" ) {
612
+ if ( ! BABA . getProxy ( BabaStr . StatusBarProxy ) . getUser ( ) && choice . value != "testapi" ) {
607
613
promptForSignIn ( ) ;
608
614
return ;
609
615
}
@@ -701,7 +707,8 @@ class TreeViewController implements Disposable {
701
707
}
702
708
703
709
public async searchProblemByID ( ) : Promise < void > {
704
- if ( ! statusBarService . getUser ( ) ) {
710
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
711
+ if ( ! sbp . getUser ( ) ) {
705
712
promptForSignIn ( ) ;
706
713
return ;
707
714
}
@@ -769,7 +776,8 @@ class TreeViewController implements Disposable {
769
776
const problems : IProblem [ ] = await this . getAllProblems ( ) ;
770
777
let randomProblem : IProblem ;
771
778
772
- const user_score = statusBarService . getUserContestScore ( ) ;
779
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
780
+ const user_score = sbp . getUserContestScore ( ) ;
773
781
if ( user_score > 0 ) {
774
782
let min_score : number = getPickOneByRankRangeMin ( ) ;
775
783
let max_score : number = getPickOneByRankRangeMax ( ) ;
@@ -851,10 +859,19 @@ class TreeViewController implements Disposable {
851
859
) ;
852
860
if ( show_code == 100 ) {
853
861
const promises : any [ ] = [
854
- vscode . window . showTextDocument ( vscode . Uri . file ( finalPath ) , {
855
- preview : false ,
856
- viewColumn : vscode . ViewColumn . One ,
857
- } ) ,
862
+ vscode . window
863
+ . showTextDocument ( vscode . Uri . file ( finalPath ) , {
864
+ preview : false ,
865
+ viewColumn : vscode . ViewColumn . One ,
866
+ } )
867
+ . then (
868
+ ( editor ) => {
869
+ eventService . emit ( "showProblemFinishOpen" , node , editor ) ;
870
+ } ,
871
+ ( error ) => {
872
+ eventService . emit ( "showProblemFinishError" , node , error ) ;
873
+ }
874
+ ) ,
858
875
promptHintMessage (
859
876
"hint.commentDescription" ,
860
877
'You can config how to show the problem description through "leetcode-problem-rating.showDescription".' ,
@@ -956,13 +973,14 @@ class TreeViewController implements Disposable {
956
973
}
957
974
958
975
public async searchUserContest ( ) : Promise < void > {
959
- if ( ! statusBarService . getUser ( ) ) {
976
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
977
+ if ( ! sbp . getUser ( ) ) {
960
978
promptForSignIn ( ) ;
961
979
return ;
962
980
}
963
981
try {
964
982
const needTranslation : boolean = isUseEndpointTranslation ( ) ;
965
- const solution : string = await executeService . getUserContest ( needTranslation , statusBarService . getUser ( ) || "" ) ;
983
+ const solution : string = await executeService . getUserContest ( needTranslation , sbp . getUser ( ) || "" ) ;
966
984
const query_result = JSON . parse ( solution ) ;
967
985
const tt : userContestRanKingBase = Object . assign ( { } , userContestRankingObj , query_result . userContestRanking ) ;
968
986
eventService . emit ( "searchUserContest" , tt ) ;
@@ -972,7 +990,8 @@ class TreeViewController implements Disposable {
972
990
}
973
991
}
974
992
public async searchToday ( ) : Promise < void > {
975
- if ( ! statusBarService . getUser ( ) ) {
993
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
994
+ if ( ! sbp . getUser ( ) ) {
976
995
promptForSignIn ( ) ;
977
996
return ;
978
997
}
@@ -1137,7 +1156,8 @@ class TreeViewController implements Disposable {
1137
1156
}
1138
1157
1139
1158
public async refreshCheck ( ) : Promise < void > {
1140
- if ( ! statusBarService . getUser ( ) ) {
1159
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
1160
+ if ( ! sbp . getUser ( ) ) {
1141
1161
return ;
1142
1162
}
1143
1163
const day_start = systemUtils . getDayStart ( ) ; //获取当天零点的时间
@@ -1156,7 +1176,8 @@ class TreeViewController implements Disposable {
1156
1176
this . waitTodayQuestion = true ;
1157
1177
await this . searchToday ( ) ;
1158
1178
}
1159
- let user_score = statusBarService . getUserContestScore ( ) ;
1179
+
1180
+ let user_score = sbp . getUserContestScore ( ) ;
1160
1181
if ( ! user_score && ! this . waitUserContest ) {
1161
1182
this . waitUserContest = true ;
1162
1183
await this . searchUserContest ( ) ;
@@ -1168,7 +1189,10 @@ class TreeViewController implements Disposable {
1168
1189
const temp_waitTodayQuestion : boolean = this . waitTodayQuestion ;
1169
1190
const temp_waitUserContest : boolean = this . waitUserContest ;
1170
1191
this . clearCache ( ) ;
1171
- let user_score = statusBarService . getUserContestScore ( ) ;
1192
+
1193
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
1194
+
1195
+ let user_score = sbp . getUserContestScore ( ) ;
1172
1196
for ( const problem of await this . getAllProblems ( ) ) {
1173
1197
this . explorerNodeMap . set ( problem . id , new NodeModel ( problem , true , user_score ) ) ;
1174
1198
this . fidToQid . set ( problem . id , problem . qid . toString ( ) ) ;
@@ -1188,7 +1212,8 @@ class TreeViewController implements Disposable {
1188
1212
}
1189
1213
1190
1214
public getRootNodes ( ) : NodeModel [ ] {
1191
- let user_score = statusBarService . getUserContestScore ( ) ;
1215
+ let sbp = BABA . getProxy ( BabaStr . StatusBarProxy ) ;
1216
+ let user_score = sbp . getUserContestScore ( ) ;
1192
1217
const baseNode : NodeModel [ ] = [
1193
1218
new NodeModel (
1194
1219
Object . assign ( { } , defaultProblem , {
0 commit comments