From 0fdb0fa2d401400ce6718dc5395ad1effe45b03e Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Wed, 12 Nov 2014 14:24:51 -0800 Subject: [PATCH] Quickinfo and completion entry should display const enum enumName if enum is constant Handles #1084 --- src/services/services.ts | 5 +++++ .../constEnumQuickInfoAndCompletionList.ts | 15 +++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 tests/cases/fourslash/constEnumQuickInfoAndCompletionList.ts diff --git a/src/services/services.ts b/src/services/services.ts index 4cf65d820c7..8d48f0bfe1d 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -3099,6 +3099,11 @@ module ts { } if (symbolFlags & SymbolFlags.Enum) { addNewLineIfDisplayPartsExist(); + if (forEach(symbol.declarations, declaration => + declaration.kind === SyntaxKind.EnumDeclaration && isConstEnumDeclaration(declaration))) { + displayParts.push(keywordPart(SyntaxKind.ConstKeyword)); + displayParts.push(spacePart()); + } displayParts.push(keywordPart(SyntaxKind.EnumKeyword)); displayParts.push(spacePart()); addFullSymbolName(symbol); diff --git a/tests/cases/fourslash/constEnumQuickInfoAndCompletionList.ts b/tests/cases/fourslash/constEnumQuickInfoAndCompletionList.ts new file mode 100644 index 00000000000..aa90fd2e187 --- /dev/null +++ b/tests/cases/fourslash/constEnumQuickInfoAndCompletionList.ts @@ -0,0 +1,15 @@ +/// + +////const enum /*1*/e { +//// a, +//// b, +//// c +////} +/////*2*/e.a; + +goTo.marker('1'); +verify.quickInfoIs("const enum e"); + +goTo.marker('2'); +verify.completionListContains("e", "const enum e"); +verify.quickInfoIs("const enum e"); \ No newline at end of file