33 * Licensed under the MIT License. See License.txt in the project root for license information.
44 *--------------------------------------------------------------------------------------------*/
55
6- import { window , workspace , Uri , Disposable , Event , EventEmitter , Decoration , DecorationProvider , ThemeColor } from 'vscode' ;
6+ import { window , workspace , Uri , Disposable , Event , EventEmitter , FileDecoration , FileDecorationProvider , ThemeColor } from 'vscode' ;
77import * as path from 'path' ;
88import { Repository , GitResourceGroup } from './repository' ;
99import { Model } from './model' ;
1010import { debounce } from './decorators' ;
1111import { filterEvent , dispose , anyEvent , fireEvent , PromiseSource } from './util' ;
1212import { GitErrorCodes , Status } from './api/git' ;
1313
14- class GitIgnoreDecorationProvider implements DecorationProvider {
14+ class GitIgnoreDecorationProvider implements FileDecorationProvider {
1515
16- private static Decoration : Decoration = { priority : 3 , color : new ThemeColor ( 'gitDecoration.ignoredResourceForeground' ) } ;
16+ private static Decoration : FileDecoration = { color : new ThemeColor ( 'gitDecoration.ignoredResourceForeground' ) } ;
1717
18- readonly onDidChangeDecorations : Event < Uri [ ] > ;
19- private queue = new Map < string , { repository : Repository ; queue : Map < string , PromiseSource < Decoration | undefined > > ; } > ( ) ;
18+ readonly onDidChange : Event < Uri [ ] > ;
19+ private queue = new Map < string , { repository : Repository ; queue : Map < string , PromiseSource < FileDecoration | undefined > > ; } > ( ) ;
2020 private disposables : Disposable [ ] = [ ] ;
2121
2222 constructor ( private model : Model ) {
23- this . onDidChangeDecorations = fireEvent ( anyEvent < any > (
23+ this . onDidChange = fireEvent ( anyEvent < any > (
2424 filterEvent ( workspace . onDidSaveTextDocument , e => / \. g i t i g n o r e $ | \. g i t \/ i n f o \/ e x c l u d e $ / . test ( e . uri . path ) ) ,
2525 model . onDidOpenRepository ,
2626 model . onDidCloseRepository
@@ -29,7 +29,7 @@ class GitIgnoreDecorationProvider implements DecorationProvider {
2929 this . disposables . push ( window . registerDecorationProvider ( this ) ) ;
3030 }
3131
32- async provideDecoration ( uri : Uri ) : Promise < Decoration | undefined > {
32+ async provideFileDecoration ( uri : Uri ) : Promise < FileDecoration | undefined > {
3333 const repository = this . model . getRepository ( uri ) ;
3434
3535 if ( ! repository ) {
@@ -39,7 +39,7 @@ class GitIgnoreDecorationProvider implements DecorationProvider {
3939 let queueItem = this . queue . get ( repository . root ) ;
4040
4141 if ( ! queueItem ) {
42- queueItem = { repository, queue : new Map < string , PromiseSource < Decoration | undefined > > ( ) } ;
42+ queueItem = { repository, queue : new Map < string , PromiseSource < FileDecoration | undefined > > ( ) } ;
4343 this . queue . set ( repository . root , queueItem ) ;
4444 }
4545
@@ -84,19 +84,19 @@ class GitIgnoreDecorationProvider implements DecorationProvider {
8484 }
8585}
8686
87- class GitDecorationProvider implements DecorationProvider {
87+ class GitDecorationProvider implements FileDecorationProvider {
8888
89- private static SubmoduleDecorationData : Decoration = {
90- title : 'Submodule' ,
91- letter : 'S' ,
89+ private static SubmoduleDecorationData : FileDecoration = {
90+ tooltip : 'Submodule' ,
91+ badge : 'S' ,
9292 color : new ThemeColor ( 'gitDecoration.submoduleResourceForeground' )
9393 } ;
9494
9595 private readonly _onDidChangeDecorations = new EventEmitter < Uri [ ] > ( ) ;
96- readonly onDidChangeDecorations : Event < Uri [ ] > = this . _onDidChangeDecorations . event ;
96+ readonly onDidChange : Event < Uri [ ] > = this . _onDidChangeDecorations . event ;
9797
9898 private disposables : Disposable [ ] = [ ] ;
99- private decorations = new Map < string , Decoration > ( ) ;
99+ private decorations = new Map < string , FileDecoration > ( ) ;
100100
101101 constructor ( private repository : Repository ) {
102102 this . disposables . push (
@@ -106,7 +106,7 @@ class GitDecorationProvider implements DecorationProvider {
106106 }
107107
108108 private onDidRunGitStatus ( ) : void {
109- let newDecorations = new Map < string , Decoration > ( ) ;
109+ let newDecorations = new Map < string , FileDecoration > ( ) ;
110110
111111 this . collectSubmoduleDecorationData ( newDecorations ) ;
112112 this . collectDecorationData ( this . repository . indexGroup , newDecorations ) ;
@@ -119,7 +119,7 @@ class GitDecorationProvider implements DecorationProvider {
119119 this . _onDidChangeDecorations . fire ( [ ...uris . values ( ) ] . map ( value => Uri . parse ( value , true ) ) ) ;
120120 }
121121
122- private collectDecorationData ( group : GitResourceGroup , bucket : Map < string , Decoration > ) : void {
122+ private collectDecorationData ( group : GitResourceGroup , bucket : Map < string , FileDecoration > ) : void {
123123 for ( const r of group . resourceStates ) {
124124 const decoration = r . resourceDecoration ;
125125
@@ -134,13 +134,13 @@ class GitDecorationProvider implements DecorationProvider {
134134 }
135135 }
136136
137- private collectSubmoduleDecorationData ( bucket : Map < string , Decoration > ) : void {
137+ private collectSubmoduleDecorationData ( bucket : Map < string , FileDecoration > ) : void {
138138 for ( const submodule of this . repository . submodules ) {
139139 bucket . set ( Uri . file ( path . join ( this . repository . root , submodule . path ) ) . toString ( ) , GitDecorationProvider . SubmoduleDecorationData ) ;
140140 }
141141 }
142142
143- provideDecoration ( uri : Uri ) : Decoration | undefined {
143+ provideFileDecoration ( uri : Uri ) : FileDecoration | undefined {
144144 return this . decorations . get ( uri . toString ( ) ) ;
145145 }
146146
0 commit comments