@@ -63,16 +63,6 @@ const signatureHelpToolTipBaseTheme = EditorView.baseTheme({
63
63
} ,
64
64
} ) ;
65
65
66
- const closeSignatureHelp : Command = ( view : EditorView ) => {
67
- view . dispatch ( {
68
- effects : setSignatureHelpEffect . of ( {
69
- pos : - 1 ,
70
- result : null ,
71
- } ) ,
72
- } ) ;
73
- return true ;
74
- } ;
75
-
76
66
const triggerSignatureHelpRequest = async ( view : EditorView ) : Promise < void > => {
77
67
const uri = view . state . facet ( uriFacet ) ! ;
78
68
const client = view . state . facet ( clientFacet ) ! ;
@@ -102,12 +92,6 @@ const openSignatureHelp: Command = (view: EditorView) => {
102
92
return true ;
103
93
} ;
104
94
105
- const signatureHelpKeymap : readonly KeyBinding [ ] = [
106
- // This matches VS Code.
107
- { key : "Mod-Shift-Space" , run : openSignatureHelp } ,
108
- { key : "Escape" , run : closeSignatureHelp } ,
109
- ] ;
110
-
111
95
export const signatureHelp = (
112
96
intl : IntlShape ,
113
97
automatic : boolean ,
@@ -129,6 +113,25 @@ export const signatureHelp = (
129
113
provide : ( f ) => showTooltip . from ( f , ( val ) => val . tooltip ) ,
130
114
} ) ;
131
115
116
+ const closeSignatureHelp : Command = ( view : EditorView ) => {
117
+ if ( view . state . field ( signatureHelpTooltipField ) . tooltip ) {
118
+ view . dispatch ( {
119
+ effects : setSignatureHelpEffect . of ( {
120
+ pos : - 1 ,
121
+ result : null ,
122
+ } ) ,
123
+ } ) ;
124
+ return true ;
125
+ }
126
+ return false ;
127
+ } ;
128
+
129
+ const signatureHelpKeymap : readonly KeyBinding [ ] = [
130
+ // This matches VS Code.
131
+ { key : "Mod-Shift-Space" , run : openSignatureHelp } ,
132
+ { key : "Escape" , run : closeSignatureHelp } ,
133
+ ] ;
134
+
132
135
class SignatureHelpView
133
136
extends BaseLanguageServerView
134
137
implements PluginValue
0 commit comments