Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/microsoft/vscode.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSandeep Somavarapu <sasomava@microsoft.com>2022-09-13 21:35:14 +0300
committerSandeep Somavarapu <sasomava@microsoft.com>2022-09-13 21:35:14 +0300
commitbb54b84573a141744e3ab51db06f59b4757fc137 (patch)
tree3fe9212324c746d3d9f2bec19d50784eb1bf9032 /src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts
parentd0d5cbd82f4944741a40ff2784dc86f296825a23 (diff)
parent28e52a46fe8df0c924c881e438e124c05f171b9c (diff)
Merge branch 'main' into sandy081/profilesStorageServicesandy081/profilesStorageService
Diffstat (limited to 'src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts')
-rw-r--r--src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts42
1 files changed, 30 insertions, 12 deletions
diff --git a/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts b/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts
index 6e15de5fffd..0352dcda3f8 100644
--- a/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts
+++ b/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts
@@ -14,11 +14,11 @@ import { IExtensionIgnoredRecommendationsService, IExtensionRecommendationsServi
import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions, IWorkbenchContribution } from 'vs/workbench/common/contributions';
import { IOutputChannelRegistry, Extensions as OutputExtensions } from 'vs/workbench/services/output/common/output';
import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors';
-import { VIEWLET_ID, IExtensionsWorkbenchService, IExtensionsViewPaneContainer, TOGGLE_IGNORE_EXTENSION_ACTION_ID, INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID, DefaultViewsContext, ExtensionsSortByContext, WORKSPACE_RECOMMENDATIONS_VIEW_ID, IWorkspaceRecommendedExtensionsView, AutoUpdateConfigurationKey, HasOutdatedExtensionsContext, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, ExtensionEditorTab, THEME_ACTIONS_GROUP, INSTALL_ACTIONS_GROUP } from 'vs/workbench/contrib/extensions/common/extensions';
+import { VIEWLET_ID, IExtensionsWorkbenchService, IExtensionsViewPaneContainer, TOGGLE_IGNORE_EXTENSION_ACTION_ID, INSTALL_EXTENSION_FROM_VSIX_COMMAND_ID, WORKSPACE_RECOMMENDATIONS_VIEW_ID, IWorkspaceRecommendedExtensionsView, AutoUpdateConfigurationKey, HasOutdatedExtensionsContext, SELECT_INSTALL_VSIX_EXTENSION_COMMAND_ID, LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID, ExtensionEditorTab, THEME_ACTIONS_GROUP, INSTALL_ACTIONS_GROUP } from 'vs/workbench/contrib/extensions/common/extensions';
import { ReinstallAction, InstallSpecificVersionOfExtensionAction, ConfigureWorkspaceRecommendedExtensionsAction, ConfigureWorkspaceFolderRecommendedExtensionsAction, PromptExtensionInstallFailureAction, SearchExtensionsAction, SwitchToPreReleaseVersionAction, SwitchToReleasedVersionAction, SetColorThemeAction, SetFileIconThemeAction, SetProductIconThemeAction, ClearLanguageAction } from 'vs/workbench/contrib/extensions/browser/extensionsActions';
import { ExtensionsInput } from 'vs/workbench/contrib/extensions/common/extensionsInput';
import { ExtensionEditor } from 'vs/workbench/contrib/extensions/browser/extensionEditor';
-import { StatusUpdater, MaliciousExtensionChecker, ExtensionsViewletViewsContribution, ExtensionsViewPaneContainer } from 'vs/workbench/contrib/extensions/browser/extensionsViewlet';
+import { StatusUpdater, MaliciousExtensionChecker, ExtensionsViewletViewsContribution, ExtensionsViewPaneContainer, BuiltInExtensionsContext, SearchMarketplaceExtensionsContext, RecommendedExtensionsContext, DefaultViewsContext, ExtensionsSortByContext, SearchHasTextContext } from 'vs/workbench/contrib/extensions/browser/extensionsViewlet';
import { IConfigurationRegistry, Extensions as ConfigurationExtensions, ConfigurationScope } from 'vs/platform/configuration/common/configurationRegistry';
import * as jsonContributionRegistry from 'vs/platform/jsonschemas/common/jsonContributionRegistry';
import { ExtensionsConfigurationSchema, ExtensionsConfigurationSchemaId } from 'vs/workbench/contrib/extensions/common/extensionsFileTemplate';
@@ -941,7 +941,7 @@ class ExtensionsContributions extends Disposable implements IWorkbenchContributi
menuTitles: {
[extensionsFilterSubMenu.id]: localize('recently published filter', "Recently Published")
},
- run: () => runAction(this.instantiationService.createInstance(SearchExtensionsAction, '@sort:publishedDate '))
+ run: () => runAction(this.instantiationService.createInstance(SearchExtensionsAction, '@recentlyPublished '))
});
const extensionsCategoryFilterSubMenu = new MenuId('extensionsCategoryFilterSubMenu');
@@ -985,6 +985,23 @@ class ExtensionsContributions extends Disposable implements IWorkbenchContributi
});
this.registerExtensionAction({
+ id: 'workbench.extensions.action.recentlyUpdatedExtensions',
+ title: { value: localize('recentlyUpdatedExtensions', "Show Recently Updated Extensions"), original: 'Show Recently Updated Extensions' },
+ category: ExtensionsLocalizedLabel,
+ menu: [{
+ id: MenuId.CommandPalette,
+ }, {
+ id: extensionsFilterSubMenu,
+ group: '3_installed',
+ order: 7,
+ }],
+ menuTitles: {
+ [extensionsFilterSubMenu.id]: localize('recently updated filter', "Recently Updated")
+ },
+ run: () => runAction(this.instantiationService.createInstance(SearchExtensionsAction, '@recentlyUpdated'))
+ });
+
+ this.registerExtensionAction({
id: LIST_WORKSPACE_UNSUPPORTED_EXTENSIONS_COMMAND_ID,
title: { value: localize('showWorkspaceUnsupportedExtensions', "Show Extensions Unsupported By Workspace"), original: 'Show Extensions Unsupported By Workspace' },
category: ExtensionsLocalizedLabel,
@@ -1080,24 +1097,25 @@ class ExtensionsContributions extends Disposable implements IWorkbenchContributi
MenuRegistry.appendMenuItem(extensionsFilterSubMenu, <ISubmenuItem>{
submenu: extensionsSortSubMenu,
title: localize('sorty by', "Sort By"),
- when: CONTEXT_HAS_GALLERY,
+ when: ContextKeyExpr.and(ContextKeyExpr.or(CONTEXT_HAS_GALLERY, DefaultViewsContext)),
group: '4_sort',
order: 1,
});
[
- { id: 'installs', title: localize('sort by installs', "Install Count") },
- { id: 'rating', title: localize('sort by rating', "Rating") },
- { id: 'name', title: localize('sort by name', "Name") },
- { id: 'publishedDate', title: localize('sort by date', "Published Date") },
- ].map(({ id, title }, index) => {
+ { id: 'installs', title: localize('sort by installs', "Install Count"), precondition: BuiltInExtensionsContext.negate() },
+ { id: 'rating', title: localize('sort by rating', "Rating"), precondition: BuiltInExtensionsContext.negate() },
+ { id: 'name', title: localize('sort by name', "Name"), precondition: BuiltInExtensionsContext.negate() },
+ { id: 'publishedDate', title: localize('sort by published date', "Published Date"), precondition: BuiltInExtensionsContext.negate() },
+ { id: 'updateDate', title: localize('sort by update date', "Updated Date"), precondition: ContextKeyExpr.and(SearchMarketplaceExtensionsContext.negate(), RecommendedExtensionsContext.negate(), BuiltInExtensionsContext.negate()) },
+ ].map(({ id, title, precondition }, index) => {
this.registerExtensionAction({
id: `extensions.sort.${id}`,
title,
- precondition: DefaultViewsContext.toNegated(),
+ precondition: precondition,
menu: [{
id: extensionsSortSubMenu,
- when: CONTEXT_HAS_GALLERY,
+ when: ContextKeyExpr.or(CONTEXT_HAS_GALLERY, DefaultViewsContext),
order: index,
}],
toggled: ExtensionsSortByContext.isEqualTo(id),
@@ -1117,7 +1135,7 @@ class ExtensionsContributions extends Disposable implements IWorkbenchContributi
category: ExtensionsLocalizedLabel,
icon: clearSearchResultsIcon,
f1: true,
- precondition: DefaultViewsContext.toNegated(),
+ precondition: SearchHasTextContext,
menu: {
id: MenuId.ViewContainerTitle,
when: ContextKeyExpr.equals('viewContainer', VIEWLET_ID),