diff --git a/src/vs/editor/common/modes.ts b/src/vs/editor/common/modes.ts
index 46c9257aac495..3e60ba56be9dc 100644
--- a/src/vs/editor/common/modes.ts
+++ b/src/vs/editor/common/modes.ts
@@ -196,6 +196,8 @@ export type SuggestionType = 'method'
| 'interface'
| 'module'
| 'property'
+ | 'event'
+ | 'operator'
| 'unit'
| 'value'
| 'constant'
diff --git a/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode.svg b/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode.svg
new file mode 100644
index 0000000000000..0e202ec10be86
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode_inverse.svg b/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode_inverse.svg
new file mode 100644
index 0000000000000..a508edcd3d6b7
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Event_16x_vscode_inverse.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode.svg b/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode.svg
new file mode 100644
index 0000000000000..ba2f2d091cfba
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode_inverse.svg b/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode_inverse.svg
new file mode 100644
index 0000000000000..21e1e814b2e76
--- /dev/null
+++ b/src/vs/editor/contrib/suggest/browser/media/Operator_16x_vscode_inverse.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/vs/editor/contrib/suggest/browser/media/suggest.css b/src/vs/editor/contrib/suggest/browser/media/suggest.css
index 0baf297625751..4ee0c397f260b 100644
--- a/src/vs/editor/contrib/suggest/browser/media/suggest.css
+++ b/src/vs/editor/contrib/suggest/browser/media/suggest.css
@@ -128,6 +128,8 @@
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.function,
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.constructor { background-image: url('Method_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.field { background-image: url('Field_16x.svg'); }
+.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.event { background-image: url('Event_16x_vscode.svg'); }
+.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.operator { background-image: url('Operator_16x_vscode.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.variable { background-image: url('LocalVariable_16x_vscode.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.class { background-image: url('Class_16x.svg'); }
.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.interface { background-image: url('Interface_16x.svg'); }
@@ -252,6 +254,12 @@
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.field,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.field { background-image: url('Field_inverse_16x.svg'); }
+.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.event,
+.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.event { background-image: url('Event_16x_vscode_inverse.svg'); }
+
+.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.operator,
+.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.operator { background-image: url('Operator_16x_vscode_inverse.svg'); }
+
.monaco-editor.vs-dark .suggest-widget .monaco-list .monaco-list-row .icon.variable,
.monaco-editor.hc-black .suggest-widget .monaco-list .monaco-list-row .icon.variable { background-image: url('LocalVariable_16x_vscode_inverse.svg'); }
diff --git a/src/vs/vscode.d.ts b/src/vs/vscode.d.ts
index 70b052ae62233..d91d268c471e6 100644
--- a/src/vs/vscode.d.ts
+++ b/src/vs/vscode.d.ts
@@ -2425,20 +2425,22 @@ declare module 'vscode' {
Variable = 5,
Class = 6,
Interface = 7,
- Struct = 21,
Module = 8,
Property = 9,
Unit = 10,
Value = 11,
- Constant = 20,
Enum = 12,
- EnumMember = 19,
Keyword = 13,
Snippet = 14,
Color = 15,
Reference = 17,
File = 16,
- Folder = 18
+ Folder = 18,
+ EnumMember = 19,
+ Constant = 20,
+ Struct = 21,
+ Event = 22,
+ Operator = 23
}
/**
diff --git a/src/vs/workbench/api/node/extHostTypeConverters.ts b/src/vs/workbench/api/node/extHostTypeConverters.ts
index 8f1fcaa927c41..020adac6268d3 100644
--- a/src/vs/workbench/api/node/extHostTypeConverters.ts
+++ b/src/vs/workbench/api/node/extHostTypeConverters.ts
@@ -287,6 +287,8 @@ export const CompletionItemKind = {
case types.CompletionItemKind.File: return 'file';
case types.CompletionItemKind.Reference: return 'reference';
case types.CompletionItemKind.Folder: return 'folder';
+ case types.CompletionItemKind.Event: return 'event';
+ case types.CompletionItemKind.Operator: return 'operator';
}
return 'property';
},
diff --git a/src/vs/workbench/api/node/extHostTypes.ts b/src/vs/workbench/api/node/extHostTypes.ts
index 9fd91ded0c26f..f485b57002954 100644
--- a/src/vs/workbench/api/node/extHostTypes.ts
+++ b/src/vs/workbench/api/node/extHostTypes.ts
@@ -872,7 +872,9 @@ export enum CompletionItemKind {
Folder = 18,
EnumMember = 19,
Constant = 20,
- Struct = 21
+ Struct = 21,
+ Event = 22,
+ Operator = 23
}
export class CompletionItem {