Merge branch 'main' into benibenj/noTabBar

This commit is contained in:
BeniBenj
2023-10-09 12:21:01 +02:00
71 changed files with 2182 additions and 2386 deletions

View File

@@ -7,10 +7,11 @@ import { Registry } from 'vs/platform/registry/common/platform';
import { localize } from 'vs/nls';
import { IConfigurationRegistry, Extensions as ConfigurationExtensions, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import { isMacintosh, isWindows, isLinux, isWeb, isNative } from 'vs/base/common/platform';
import { ConfigurationMigrationWorkbenchContribution, DynamicWorkbenchConfigurationWorkbenchContribution, workbenchConfigurationNodeBase } from 'vs/workbench/common/configuration';
import { ConfigurationMigrationWorkbenchContribution, DynamicWorkbenchConfigurationWorkbenchContribution, IConfigurationMigrationRegistry, workbenchConfigurationNodeBase, Extensions, ConfigurationKeyValuePairs } from 'vs/workbench/common/configuration';
import { isStandalone } from 'vs/base/browser/browser';
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from 'vs/workbench/common/contributions';
import { LifecyclePhase } from 'vs/workbench/services/lifecycle/common/lifecycle';
import { ActivityBarPosition, LayoutSettings } from 'vs/workbench/services/layout/browser/layoutService';
const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Configuration);
@@ -463,10 +464,16 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
'default': true,
'description': localize('statusBarVisibility', "Controls the visibility of the status bar at the bottom of the workbench.")
},
'workbench.activityBar.visible': {
'type': 'boolean',
'default': true,
'description': localize('activityBarVisibility', "Controls the visibility of the activity bar in the workbench.")
[LayoutSettings.ACTIVITY_BAR_LOCATION]: {
'type': 'string',
'enum': ['side', 'top', 'hidden'],
'default': 'side',
'markdownDescription': localize({ comment: ['This is the description for a setting'], key: 'activityBarLocation' }, "Controls the location of the activity bar. It can either show to the `side` or `top` (requires `{0}`) of the primary side bar or `hidden`.", '#window.commandCenter#'),
'enumDescriptions': [
localize('workbench.activityBar.location.side', "Show the activity bar to the side of the primary side bar."),
localize('workbench.activityBar.location.top', "Show the activity bar on top of the primary side bar."),
localize('workbench.activityBar.location.hide', "Hide the activity bar.")
]
},
'workbench.activityBar.iconClickBehavior': {
'type': 'string',
@@ -748,3 +755,14 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
}
});
})();
Registry.as<IConfigurationMigrationRegistry>(Extensions.ConfigurationMigration)
.registerConfigurationMigrations([{
key: LayoutSettings.ACTIVITY_BAR_LOCATION, migrateFn: (value: any) => {
const result: ConfigurationKeyValuePairs = [['workbench.activityBar.visible', { value: undefined }]];
if (value === false) {
result.push([LayoutSettings.ACTIVITY_BAR_LOCATION, { value: ActivityBarPosition.HIDDEN }]);
}
return result;
}
}]);