@@ -25,7 +25,6 @@ import { IContextMenuService } from 'vs/platform/contextview/browser/contextView
2525import { SettingsGroupTitleWidget , EditPreferenceWidget , SettingsHeaderWidget , DefaultSettingsHeaderWidget , FloatingClickWidget } from 'vs/workbench/parts/preferences/browser/preferencesWidgets' ;
2626import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry' ;
2727import { RangeHighlightDecorations } from 'vs/workbench/browser/parts/editor/rangeDecorations' ;
28- import { IMarkerService , IMarkerData , MarkerSeverity } from 'vs/platform/markers/common/markers' ;
2928import { ICursorPositionChangedEvent } from 'vs/editor/common/controller/cursorEvents' ;
3029import { ModelDecorationOptions } from 'vs/editor/common/model/textModel' ;
3130import { IWorkspaceContextService , WorkbenchState } from 'vs/platform/workspace/common/workspace' ;
@@ -188,7 +187,6 @@ export class UserSettingsRenderer extends Disposable implements IPreferencesRend
188187
189188export class WorkspaceSettingsRenderer extends UserSettingsRenderer implements IPreferencesRenderer < ISetting > {
190189
191- private unsupportedSettingsRenderer : UnsupportedSettingsRenderer ;
192190 private workspaceConfigurationRenderer : WorkspaceConfigurationRenderer ;
193191
194192 constructor ( editor : ICodeEditor , preferencesModel : SettingsEditorModel ,
@@ -198,7 +196,6 @@ export class WorkspaceSettingsRenderer extends UserSettingsRenderer implements I
198196 @IInstantiationService instantiationService : IInstantiationService
199197 ) {
200198 super ( editor , preferencesModel , preferencesService , configurationService , instantiationService ) ;
201- this . unsupportedSettingsRenderer = this . _register ( instantiationService . createInstance ( UnsupportedSettingsRenderer , editor , preferencesModel ) ) ;
202199 this . workspaceConfigurationRenderer = this . _register ( instantiationService . createInstance ( WorkspaceConfigurationRenderer , editor , preferencesModel ) ) ;
203200 }
204201
@@ -213,33 +210,25 @@ export class WorkspaceSettingsRenderer extends UserSettingsRenderer implements I
213210
214211 public render ( ) : void {
215212 super . render ( ) ;
216- this . unsupportedSettingsRenderer . render ( ) ;
217213 this . workspaceConfigurationRenderer . render ( this . getAssociatedPreferencesModel ( ) ) ;
218214 }
219215}
220216
221217export class FolderSettingsRenderer extends UserSettingsRenderer implements IPreferencesRenderer < ISetting > {
222218
223- private unsupportedSettingsRenderer : UnsupportedSettingsRenderer ;
224-
225219 constructor ( editor : ICodeEditor , preferencesModel : SettingsEditorModel ,
226220 @IPreferencesService preferencesService : IPreferencesService ,
227221 @ITelemetryService telemetryService : ITelemetryService ,
228222 @IConfigurationService configurationService : IConfigurationService ,
229223 @IInstantiationService instantiationService : IInstantiationService
230224 ) {
231225 super ( editor , preferencesModel , preferencesService , configurationService , instantiationService ) ;
232- this . unsupportedSettingsRenderer = this . _register ( instantiationService . createInstance ( UnsupportedSettingsRenderer , editor , preferencesModel ) ) ;
233226 }
234227
235228 protected createHeader ( ) : void {
236229 this . _register ( new SettingsHeaderWidget ( this . editor , '' ) ) . setMessage ( nls . localize ( 'emptyFolderSettingsHeader' , "Place your folder settings here to overwrite those from the Workspace Settings." ) ) ;
237230 }
238231
239- public render ( ) : void {
240- super . render ( ) ;
241- this . unsupportedSettingsRenderer . render ( ) ;
242- }
243232}
244233
245234export class DefaultSettingsRenderer extends Disposable implements IPreferencesRenderer < ISetting > {
@@ -1312,63 +1301,6 @@ class SettingHighlighter extends Disposable {
13121301 }
13131302}
13141303
1315- class UnsupportedSettingsRenderer extends Disposable {
1316-
1317- private renderingDelayer : Delayer < void > = new Delayer < void > ( 200 ) ;
1318-
1319- constructor (
1320- private editor : ICodeEditor ,
1321- private settingsEditorModel : SettingsEditorModel ,
1322- @IMarkerService private markerService : IMarkerService
1323- ) {
1324- super ( ) ;
1325- this . _register ( this . editor . getModel ( ) . onDidChangeContent ( ( ) => this . renderingDelayer . trigger ( ( ) => this . render ( ) ) ) ) ;
1326- }
1327-
1328- public render ( ) : void {
1329- const configurationRegistry = Registry . as < IConfigurationRegistry > ( ConfigurationExtensions . Configuration ) . getConfigurationProperties ( ) ;
1330- const markerData : IMarkerData [ ] = [ ] ;
1331- for ( const settingsGroup of this . settingsEditorModel . settingsGroups ) {
1332- for ( const section of settingsGroup . sections ) {
1333- for ( const setting of section . settings ) {
1334- if ( this . settingsEditorModel . configurationTarget === ConfigurationTarget . WORKSPACE || this . settingsEditorModel . configurationTarget === ConfigurationTarget . WORKSPACE_FOLDER ) {
1335- // Show warnings for executable settings
1336- if ( configurationRegistry [ setting . key ] && configurationRegistry [ setting . key ] . isExecutable ) {
1337- markerData . push ( {
1338- severity : MarkerSeverity . Warning ,
1339- startLineNumber : setting . keyRange . startLineNumber ,
1340- startColumn : setting . keyRange . startColumn ,
1341- endLineNumber : setting . keyRange . endLineNumber ,
1342- endColumn : setting . keyRange . endColumn ,
1343- message : this . getMarkerMessage ( setting . key )
1344- } ) ;
1345- }
1346- }
1347- }
1348- }
1349- }
1350- if ( markerData . length ) {
1351- this . markerService . changeOne ( 'preferencesEditor' , this . settingsEditorModel . uri , markerData ) ;
1352- } else {
1353- this . markerService . remove ( 'preferencesEditor' , [ this . settingsEditorModel . uri ] ) ;
1354- }
1355- }
1356-
1357- private getMarkerMessage ( settingKey : string ) : string {
1358- switch ( settingKey ) {
1359- case 'php.validate.executablePath' :
1360- return nls . localize ( 'unsupportedPHPExecutablePathSetting' , "This setting must be a User Setting. To configure PHP for the workspace, open a PHP file and click on 'PHP Path' in the status bar." ) ;
1361- default :
1362- return nls . localize ( 'unsupportedWorkspaceSetting' , "This setting must be a User Setting." ) ;
1363- }
1364- }
1365-
1366- public dispose ( ) : void {
1367- this . markerService . remove ( 'preferencesEditor' , [ this . settingsEditorModel . uri ] ) ;
1368- super . dispose ( ) ;
1369- }
1370- }
1371-
13721304class WorkspaceConfigurationRenderer extends Disposable {
13731305
13741306 private decorationIds : string [ ] = [ ] ;
0 commit comments