Merge from vscode ada4bddb8edc69eea6ebaaa0e88c5f903cbd43d8 (#5529)

This commit is contained in:
Anthony Dresser
2019-05-19 18:52:19 -07:00
committed by GitHub
parent 586fe10525
commit 5d44b6a6a7
325 changed files with 4497 additions and 3328 deletions

View File

@@ -253,9 +253,9 @@ export class ExtensionEditor extends BaseEditor {
const extensionActions = append(details, $('.actions'));
this.extensionActionBar = new ActionBar(extensionActions, {
animated: false,
actionItemProvider: (action: Action) => {
actionViewItemProvider: (action: Action) => {
if (action instanceof ExtensionEditorDropDownAction) {
return action.createActionItem();
return action.createActionViewItem();
}
return undefined;
}
@@ -565,7 +565,7 @@ export class ExtensionEditor extends BaseEditor {
this.contentDisposables.push(webviewElement.onDidFocus(() => this.fireOnDidFocus()));
const removeLayoutParticipant = arrays.insert(this.layoutParticipants, webviewElement);
this.contentDisposables.push(toDisposable(removeLayoutParticipant));
webviewElement.contents = body;
webviewElement.html = body;
this.contentDisposables.push(webviewElement.onDidClickLink(link => {
if (!link) {

View File

@@ -10,7 +10,7 @@ import { Delayer } from 'vs/base/common/async';
import * as DOM from 'vs/base/browser/dom';
import { Event } from 'vs/base/common/event';
import * as json from 'vs/base/common/json';
import { ActionItem, Separator, IActionItemOptions } from 'vs/base/browser/ui/actionbar/actionbar';
import { ActionViewItem, Separator, IActionViewItemOptions } from 'vs/base/browser/ui/actionbar/actionbar';
import { IContextMenuService } from 'vs/platform/contextview/browser/contextView';
import { IDisposable, dispose, Disposable } from 'vs/base/common/lifecycle';
// {{SQL CARBON EDIT}}
@@ -650,15 +650,15 @@ export class UpdateAction extends ExtensionAction {
}
}
interface IExtensionActionItemOptions extends IActionItemOptions {
interface IExtensionActionViewItemOptions extends IActionViewItemOptions {
tabOnlyOnFocus?: boolean;
}
export class ExtensionActionItem extends ActionItem {
export class ExtensionActionViewItem extends ActionViewItem {
protected options: IExtensionActionItemOptions;
protected options: IExtensionActionViewItemOptions;
constructor(context: any, action: IAction, options: IExtensionActionItemOptions = {}) {
constructor(context: any, action: IAction, options: IExtensionActionViewItemOptions = {}) {
super(context, action, options);
}
@@ -701,15 +701,15 @@ export abstract class ExtensionDropDownAction extends ExtensionAction {
super(id, label, cssClass, enabled);
}
private _actionItem: DropDownMenuActionItem;
createActionItem(): DropDownMenuActionItem {
this._actionItem = this.instantiationService.createInstance(DropDownMenuActionItem, this, this.tabOnlyOnFocus);
return this._actionItem;
private _actionViewItem: DropDownMenuActionViewItem;
createActionViewItem(): DropDownMenuActionViewItem {
this._actionViewItem = this.instantiationService.createInstance(DropDownMenuActionViewItem, this, this.tabOnlyOnFocus);
return this._actionViewItem;
}
public run({ actionGroups, disposeActionsOnHide }: { actionGroups: IAction[][], disposeActionsOnHide: boolean }): Promise<any> {
if (this._actionItem) {
this._actionItem.showMenu(actionGroups, disposeActionsOnHide);
if (this._actionViewItem) {
this._actionViewItem.showMenu(actionGroups, disposeActionsOnHide);
}
return Promise.resolve();
}
@@ -720,7 +720,7 @@ export abstract class ExtensionDropDownAction extends ExtensionAction {
}
}
export class DropDownMenuActionItem extends ExtensionActionItem {
export class DropDownMenuActionViewItem extends ExtensionActionViewItem {
private disposables: IDisposable[] = [];

View File

@@ -13,7 +13,7 @@ import { IPagedRenderer } from 'vs/base/browser/ui/list/listPaging';
import { Event } from 'vs/base/common/event';
import { domEvent } from 'vs/base/browser/event';
import { IExtension, ExtensionContainers, ExtensionState, IExtensionsWorkbenchService } from 'vs/workbench/contrib/extensions/common/extensions';
import { InstallAction, UpdateAction, ManageExtensionAction, ReloadAction, MaliciousStatusLabelAction, ExtensionActionItem, StatusLabelAction, RemoteInstallAction, SystemDisabledWarningAction, DisabledLabelAction, LocalInstallAction } from 'vs/workbench/contrib/extensions/electron-browser/extensionsActions';
import { InstallAction, UpdateAction, ManageExtensionAction, ReloadAction, MaliciousStatusLabelAction, ExtensionActionViewItem, StatusLabelAction, RemoteInstallAction, SystemDisabledWarningAction, DisabledLabelAction, LocalInstallAction } from 'vs/workbench/contrib/extensions/electron-browser/extensionsActions';
import { areSameExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil';
import { Label, RatingsWidget, InstallCountWidget, RecommendationWidget, RemoteBadgeWidget, TooltipWidget } from 'vs/workbench/contrib/extensions/electron-browser/extensionsWidgets';
import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions';
@@ -81,11 +81,11 @@ export class Renderer implements IPagedRenderer<IExtension, ITemplateData> {
const author = append(footer, $('.author.ellipsis'));
const actionbar = new ActionBar(footer, {
animated: false,
actionItemProvider: (action: Action) => {
actionViewItemProvider: (action: Action) => {
if (action.id === ManageExtensionAction.ID) {
return (<ManageExtensionAction>action).createActionItem();
return (<ManageExtensionAction>action).createActionViewItem();
}
return new ExtensionActionItem(null, action, actionOptions);
return new ExtensionActionViewItem(null, action, actionOptions);
}
});
actionbar.onDidRun(({ error }) => error && this.notificationService.error(error));
@@ -192,13 +192,13 @@ export class Renderer implements IPagedRenderer<IExtension, ITemplateData> {
this.extensionViewState.onFocus(e => {
if (areSameExtensions(extension.identifier, e.identifier)) {
data.actionbar.items.forEach(item => (<ExtensionActionItem>item).setFocus(true));
data.actionbar.viewItems.forEach(item => (<ExtensionActionViewItem>item).setFocus(true));
}
}, this, data.extensionDisposables);
this.extensionViewState.onBlur(e => {
if (areSameExtensions(extension.identifier, e.identifier)) {
data.actionbar.items.forEach(item => (<ExtensionActionItem>item).setFocus(false));
data.actionbar.viewItems.forEach(item => (<ExtensionActionViewItem>item).setFocus(false));
}
}, this, data.extensionDisposables);
}

View File

@@ -54,7 +54,7 @@ import { IEnvironmentService } from 'vs/platform/environment/common/environment'
import { ExtensionType } from 'vs/platform/extensions/common/extensions';
import { Registry } from 'vs/platform/registry/common/platform';
import { ViewContainerViewlet } from 'vs/workbench/browser/parts/views/viewsViewlet';
import { RemoteAuthorityContext } from 'vs/workbench/common/contextkeys';
import { RemoteAuthorityContext } from 'vs/workbench/browser/contextkeys';
import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import { ILabelService } from 'vs/platform/label/common/label';