@@ -8,7 +8,7 @@ import { domEvent, stop } from 'vs/base/browser/event';
88import * as aria from 'vs/base/browser/ui/aria/aria' ;
99import { DomScrollableElement } from 'vs/base/browser/ui/scrollbar/scrollableElement' ;
1010import { Event } from 'vs/base/common/event' ;
11- import { IDisposable , Disposable , DisposableStore , MutableDisposable } from 'vs/base/common/lifecycle' ;
11+ import { IDisposable , Disposable , DisposableStore } from 'vs/base/common/lifecycle' ;
1212import 'vs/css!./parameterHints' ;
1313import { ContentWidgetPositionPreference , ICodeEditor , IContentWidget , IContentWidgetPosition } from 'vs/editor/browser/editorBrowser' ;
1414import { ConfigurationChangedEvent , EditorOption } from 'vs/editor/common/config/editorOptions' ;
@@ -31,7 +31,7 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
3131
3232 private readonly markdownRenderer : MarkdownRenderer ;
3333 private readonly renderDisposeables = this . _register ( new DisposableStore ( ) ) ;
34- private readonly model = this . _register ( new MutableDisposable < ParameterHintsModel > ( ) ) ;
34+ private readonly model : ParameterHintsModel ;
3535 private readonly keyVisible : IContextKey < boolean > ;
3636 private readonly keyMultipleSignatures : IContextKey < boolean > ;
3737
@@ -57,11 +57,11 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
5757 ) {
5858 super ( ) ;
5959 this . markdownRenderer = this . _register ( new MarkdownRenderer ( editor , modeService , openerService ) ) ;
60- this . model . value = new ParameterHintsModel ( editor ) ;
60+ this . model = this . _register ( new ParameterHintsModel ( editor ) ) ;
6161 this . keyVisible = Context . Visible . bindTo ( contextKeyService ) ;
6262 this . keyMultipleSignatures = Context . MultipleSignatures . bindTo ( contextKeyService ) ;
6363
64- this . _register ( this . model . value . onChangedHints ( newParameterHints => {
64+ this . _register ( this . model . onChangedHints ( newParameterHints => {
6565 if ( newParameterHints ) {
6666 this . show ( ) ;
6767 this . render ( newParameterHints ) ;
@@ -134,7 +134,7 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
134134 }
135135
136136 private show ( ) : void {
137- if ( ! this . model || this . visible ) {
137+ if ( this . visible ) {
138138 return ;
139139 }
140140
@@ -153,7 +153,7 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
153153 }
154154
155155 private hide ( ) : void {
156- if ( ! this . model || ! this . visible ) {
156+ if ( ! this . visible ) {
157157 return ;
158158 }
159159
@@ -189,7 +189,6 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
189189 this . domNodes . docs . innerHTML = '' ;
190190
191191 const signature = hints . signatures [ hints . activeSignature ] ;
192-
193192 if ( ! signature ) {
194193 return ;
195194 }
@@ -204,7 +203,6 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
204203 if ( ! hasParameters ) {
205204 const label = dom . append ( code , $ ( 'span' ) ) ;
206205 label . textContent = signature . label ;
207-
208206 } else {
209207 this . renderParameters ( code , signature , hints . activeParameter ) ;
210208 }
@@ -242,7 +240,6 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
242240 dom . toggleClass ( this . domNodes . docs , 'empty' , ! hasDocs ) ;
243241
244242 let currentOverload = String ( hints . activeSignature + 1 ) ;
245-
246243 if ( hints . signatures . length < 10 ) {
247244 currentOverload += `/${ hints . signatures . length } ` ;
248245 }
@@ -281,7 +278,6 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
281278 }
282279
283280 private renderParameters ( parent : HTMLElement , signature : modes . SignatureInformation , currentParameter : number ) : void {
284-
285281 const [ start , end ] = this . getParameterLabelOffsets ( signature , currentParameter ) ;
286282
287283 const beforeSpan = document . createElement ( 'span' ) ;
@@ -321,23 +317,17 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
321317 }
322318
323319 next ( ) : void {
324- if ( this . model . value ) {
325- this . editor . focus ( ) ;
326- this . model . value . next ( ) ;
327- }
320+ this . editor . focus ( ) ;
321+ this . model . next ( ) ;
328322 }
329323
330324 previous ( ) : void {
331- if ( this . model . value ) {
332- this . editor . focus ( ) ;
333- this . model . value . previous ( ) ;
334- }
325+ this . editor . focus ( ) ;
326+ this . model . previous ( ) ;
335327 }
336328
337329 cancel ( ) : void {
338- if ( this . model . value ) {
339- this . model . value . cancel ( ) ;
340- }
330+ this . model . cancel ( ) ;
341331 }
342332
343333 getDomNode ( ) : HTMLElement {
@@ -352,9 +342,7 @@ export class ParameterHintsWidget extends Disposable implements IContentWidget,
352342 }
353343
354344 trigger ( context : TriggerContext ) : void {
355- if ( this . model . value ) {
356- this . model . value . trigger ( context , 0 ) ;
357- }
345+ this . model . trigger ( context , 0 ) ;
358346 }
359347
360348 private updateMaxHeight ( ) : void {
0 commit comments