From 5f38d20061cd22b10cf66dcabee8db5b237450c1 Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Tue, 12 Jan 2016 14:54:18 +0100 Subject: [PATCH] [css] Evaluate the 2 browser rule for CSS auto-complete. Fixes #1233 --- src/vs/languages/css/common/services/intelliSense.ts | 6 +++--- src/vs/languages/css/common/services/languageFacts.ts | 4 +++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/vs/languages/css/common/services/intelliSense.ts b/src/vs/languages/css/common/services/intelliSense.ts index 802d8bd1906..3bebbf47b27 100644 --- a/src/vs/languages/css/common/services/intelliSense.ts +++ b/src/vs/languages/css/common/services/intelliSense.ts @@ -114,7 +114,7 @@ export class CSSIntellisense { for (var key in properties) { if (properties.hasOwnProperty(key)) { var entry = properties[key]; - if (entry.browsers.count > 1) { // only show if supported by more than one browser + if (entry.browsers.onCodeComplete) { result.push({ label: entry.name, documentationLabel: languageFacts.getEntryDescription(entry), @@ -433,7 +433,7 @@ export class CSSIntellisense { public getCompletionsForSelector(ruleSet: nodes.RuleSet, result:Modes.ISuggestion[]): Modes.ISuggestion[] { languageFacts.getPseudoClasses().forEach((entry) => { - if (entry.browsers.count > 1) { // only show if supported by all browsers + if (entry.browsers.onCodeComplete) { result.push({ label: entry.name, codeSnippet: entry.name, @@ -443,7 +443,7 @@ export class CSSIntellisense { } }); languageFacts.getPseudoElements().forEach((entry) => { - if (entry.browsers.count > 1) { // only show if supported by all browsers + if (entry.browsers.onCodeComplete) { result.push({ label: entry.name, codeSnippet: entry.name, diff --git a/src/vs/languages/css/common/services/languageFacts.ts b/src/vs/languages/css/common/services/languageFacts.ts index 8d12dfaf6a8..b69daae3e1c 100644 --- a/src/vs/languages/css/common/services/languageFacts.ts +++ b/src/vs/languages/css/common/services/languageFacts.ts @@ -434,6 +434,7 @@ export interface Browsers { S?:string; count:number; all:boolean; + onCodeComplete:boolean } export interface Value { @@ -451,7 +452,7 @@ export interface IEntry { } function evalBrowserEntry(browsers: string) { - var browserEntry : Browsers = { all: false, count: 0}; + var browserEntry : Browsers = { all: false, count: 0, onCodeComplete: false}; var count = 0; if (browsers) { browsers.split(',').forEach( @@ -475,6 +476,7 @@ function evalBrowserEntry(browsers: string) { count = Number.MAX_VALUE; } browserEntry.count = count; + browserEntry.onCodeComplete = count > 0; // to be refined return browserEntry; }; -- GitLab