提交 c80de308 编写于 作者: A Alex Dima

var -> let

上级 d5b3efd8
......@@ -57,8 +57,8 @@ export class ElementSizeObserver extends Disposable implements IElementSizeObser
}
private measureReferenceDomElement(callChangeCallback: boolean, dimension?: IDimension): void {
var observedWidth = 0;
var observedHeight = 0;
let observedWidth = 0;
let observedHeight = 0;
if (dimension) {
observedWidth = dimension.width;
observedHeight = dimension.height;
......
......@@ -287,7 +287,7 @@ export class MouseHandler extends ViewEventHandler implements IDisposable {
shouldHandle = false;
}
var focus = () => {
let focus = () => {
// In IE11, if the focus is in the browser's address bar and
// then you click in the editor, calling preventDefault()
// will not move focus properly (focus remains the address bar)
......
......@@ -18,8 +18,8 @@ interface IThrottledGestureEvent {
translationY: number;
}
var gestureChangeEventMerger = (lastEvent: IThrottledGestureEvent, currentEvent: MSGestureEvent): IThrottledGestureEvent => {
var r = {
function gestureChangeEventMerger(lastEvent: IThrottledGestureEvent, currentEvent: MSGestureEvent): IThrottledGestureEvent {
let r = {
translationY: currentEvent.translationY,
translationX: currentEvent.translationX
};
......@@ -49,13 +49,13 @@ class MsPointerHandler extends MouseHandler implements IDisposable {
this._installGestureHandlerTimeout = window.setTimeout(() => {
this._installGestureHandlerTimeout = -1;
if ((<any>window).MSGesture) {
var touchGesture = new MSGesture();
var penGesture = new MSGesture();
let touchGesture = new MSGesture();
let penGesture = new MSGesture();
touchGesture.target = this.viewHelper.linesContentDomNode;
penGesture.target = this.viewHelper.linesContentDomNode;
this.viewHelper.linesContentDomNode.addEventListener('MSPointerDown', (e: MSPointerEvent) => {
// Circumvent IE11 breaking change in e.pointerType & TypeScript's stale definitions
var pointerType = <any>e.pointerType;
let pointerType = <any>e.pointerType;
if (pointerType === ((<any>e).MSPOINTER_TYPE_MOUSE || 'mouse')) {
this._lastPointerType = 'mouse';
return;
......@@ -131,12 +131,12 @@ class StandardPointerHandler extends MouseHandler implements IDisposable {
// TODO@Alex: replace the usage of MSGesture here with something that works across all browsers
if ((<any>window).MSGesture) {
var touchGesture = new MSGesture();
var penGesture = new MSGesture();
let touchGesture = new MSGesture();
let penGesture = new MSGesture();
touchGesture.target = this.viewHelper.linesContentDomNode;
penGesture.target = this.viewHelper.linesContentDomNode;
this.viewHelper.linesContentDomNode.addEventListener('pointerdown', (e: MSPointerEvent) => {
var pointerType = <any>e.pointerType;
let pointerType = <any>e.pointerType;
if (pointerType === 'mouse') {
this._lastPointerType = 'mouse';
return;
......
......@@ -142,7 +142,7 @@ export interface IViewController {
/**
* @internal
*/
export var ClassNames = {
export const ClassNames = {
TEXTAREA_COVER: 'textAreaCover',
TEXTAREA: 'inputarea',
LINES_CONTENT: 'lines-content',
......
......@@ -80,7 +80,7 @@ class DecorationSubTypeOptionsProvider implements IModelDecorationOptionsProvide
this._parentTypeKey = parentTypeKey;
this.refCount = 0;
var themedOpts = getThemedRenderOptions(options);
let themedOpts = getThemedRenderOptions(options);
this._beforeContentClassName = DecorationRenderHelper.createCSSRules(
styleSheet,
......@@ -146,7 +146,7 @@ class DecorationTypeOptionsProvider implements IModelDecorationOptionsProvider {
constructor(styleSheet: HTMLStyleElement, key: string, options: IDecorationRenderOptions) {
this.refCount = 0;
var themedOpts = getThemedRenderOptions(options);
let themedOpts = getThemedRenderOptions(options);
this.className = DecorationRenderHelper.createCSSRules(
styleSheet,
......@@ -446,14 +446,14 @@ interface IResolvedDecorationRenderOptions {
}
function getThemedRenderOptions<T>(opts: { light?: T, dark?: T }): { light?: T, dark?: T } {
// TODO@alex,joh - not really how/what deep clone is being used
// for here but it will break the URI
// for here but it will break the URI TODO@martin
// var light = <T> objects.deepClone(opts);
var light = <T>parse(stringify(opts));
// let light = <T> objects.deepClone(opts);
let light = <T>parse(stringify(opts));
objects.mixin(light, opts.light);
// var dark = <T> objects.deepClone(opts);
var dark = <T>parse(stringify(opts));
// let dark = <T> objects.deepClone(opts);
let dark = <T>parse(stringify(opts));
objects.mixin(dark, opts.dark);
return {
......
......@@ -115,14 +115,14 @@ export class SimpleEditorService implements IEditorService {
}
private doOpenEditor(editor: editorCommon.ICommonCodeEditor, data: IResourceInput): IEditor {
var model = this.findModel(editor, data);
let model = this.findModel(editor, data);
if (!model) {
if (data.resource) {
if (this.openEditorDelegate) {
this.openEditorDelegate(data.resource.toString());
return null;
} else {
var schema = data.resource.scheme;
let schema = data.resource.scheme;
if (schema === Schemas.http || schema === Schemas.https) {
// This is a fully qualified http or https URL
window.open(data.resource.toString());
......@@ -133,14 +133,13 @@ export class SimpleEditorService implements IEditorService {
return null;
}
var selection = <editorCommon.IRange>data.options.selection;
let selection = <editorCommon.IRange>data.options.selection;
if (selection) {
if (typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {
editor.setSelection(selection);
editor.revealRangeInCenter(selection);
} else {
var pos = {
let pos = {
lineNumber: selection.startLineNumber,
column: selection.startColumn
};
......@@ -153,7 +152,7 @@ export class SimpleEditorService implements IEditorService {
}
private findModel(editor: editorCommon.ICommonCodeEditor, data: IResourceInput): editorCommon.IModel {
var model = editor.getModel();
let model = editor.getModel();
if (model.uri.toString() !== data.resource.toString()) {
return null;
}
......@@ -162,7 +161,7 @@ export class SimpleEditorService implements IEditorService {
}
public resolveEditorModel(typedData: IResourceInput, refresh?: boolean): TPromise<ITextEditorModel> {
var model: editorCommon.IModel;
let model: editorCommon.IModel;
model = this.editor.withTypedEditor(
(editor) => this.findModel(editor, typedData),
......@@ -224,7 +223,7 @@ export class SimpleMessageService implements IMessageService {
}
public confirm(confirmation: IConfirmation): boolean {
var messageText = confirmation.message;
let messageText = confirmation.message;
if (confirmation.detail) {
messageText = messageText + '\n\n' + confirmation.detail;
}
......@@ -277,7 +276,7 @@ export class StandaloneKeybindingService extends KeybindingService {
if (commandId === null) {
commandId = 'DYNAMIC_' + (++StandaloneKeybindingService.LAST_GENERATED_ID);
}
var parsedContext = IOSupport.readKeybindingWhen(when);
let parsedContext = IOSupport.readKeybindingWhen(when);
this._dynamicKeybindings.push({
keybinding: keybinding,
command: commandId,
......
......@@ -135,7 +135,7 @@ export class StandaloneEditor extends CodeEditor implements IStandaloneCodeEdito
return null;
}
if (Array.isArray(descriptor.keybindings)) {
var handler: ICommandHandler = (accessor) => {
let handler: ICommandHandler = (accessor) => {
return this.trigger('keyboard', descriptor.id, null);
};
descriptor.keybindings.forEach((kb) => {
......@@ -221,7 +221,7 @@ export class StandaloneDiffEditor extends DiffEditorWidget implements IStandalon
return null;
}
if (Array.isArray(descriptor.keybindings)) {
var handler: ICommandHandler = (ctx) => {
let handler: ICommandHandler = (ctx) => {
return this.trigger('keyboard', descriptor.id, null);
};
descriptor.keybindings.forEach((kb) => {
......
......@@ -69,7 +69,7 @@ export class ViewController implements IViewController {
}
private _validateViewColumn(viewPosition: Position): Position {
var minColumn = this.viewModel.getLineMinColumn(viewPosition.lineNumber);
let minColumn = this.viewModel.getLineMinColumn(viewPosition.lineNumber);
if (viewPosition.column < minColumn) {
return new Position(viewPosition.lineNumber, minColumn);
}
......
......@@ -98,7 +98,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
this._renderAnimationFrame = null;
this.outgoingEventBus = new EventEmitter();
var viewController = new ViewController(model, triggerCursorHandler, this.outgoingEventBus, commandService);
let viewController = new ViewController(model, triggerCursorHandler, this.outgoingEventBus, commandService);
this.listenersToRemove = [];
this.listenersToDispose = [];
......@@ -159,7 +159,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
}
private _flushAnyAccumulatedEvents(): void {
var toEmit = this.accumulatedModelEvents;
let toEmit = this.accumulatedModelEvents;
this.accumulatedModelEvents = [];
if (toEmit.length > 0) {
this.eventDispatcher.emitMany(toEmit);
......@@ -217,24 +217,24 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
this.viewParts.push(this.viewZones);
// Decorations overview ruler
var decorationsOverviewRuler = new DecorationsOverviewRuler(
let decorationsOverviewRuler = new DecorationsOverviewRuler(
this._context, this.layoutProvider.getScrollHeight(),
(lineNumber: number) => this.layoutProvider.getVerticalOffsetForLineNumber(lineNumber)
);
this.viewParts.push(decorationsOverviewRuler);
var scrollDecoration = new ScrollDecorationViewPart(this._context);
let scrollDecoration = new ScrollDecorationViewPart(this._context);
this.viewParts.push(scrollDecoration);
var contentViewOverlays = new ContentViewOverlays(this._context, this.layoutProvider);
let contentViewOverlays = new ContentViewOverlays(this._context, this.layoutProvider);
this.viewParts.push(contentViewOverlays);
contentViewOverlays.addDynamicOverlay(new CurrentLineHighlightOverlay(this._context, this.layoutProvider));
contentViewOverlays.addDynamicOverlay(new SelectionsOverlay(this._context));
contentViewOverlays.addDynamicOverlay(new DecorationsOverlay(this._context));
contentViewOverlays.addDynamicOverlay(new IndentGuidesOverlay(this._context));
var marginViewOverlays = new MarginViewOverlays(this._context, this.layoutProvider);
let marginViewOverlays = new MarginViewOverlays(this._context, this.layoutProvider);
this.viewParts.push(marginViewOverlays);
marginViewOverlays.addDynamicOverlay(new GlyphMarginOverlay(this._context));
marginViewOverlays.addDynamicOverlay(new LinesDecorationsOverlay(this._context));
......@@ -252,7 +252,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
this.overlayWidgets = new ViewOverlayWidgets(this._context);
this.viewParts.push(this.overlayWidgets);
var rulers = new Rulers(this._context, this.layoutProvider);
let rulers = new Rulers(this._context, this.layoutProvider);
this.viewParts.push(rulers);
// -------------- Wire dom nodes up
......@@ -261,7 +261,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
this.linesContentContainer.style.position = 'absolute';
if (decorationsOverviewRuler) {
var overviewRulerData = this.layoutProvider.getOverviewRulerInsertData();
let overviewRulerData = this.layoutProvider.getOverviewRulerInsertData();
overviewRulerData.parent.insertBefore(decorationsOverviewRuler.getDomNode(), overviewRulerData.insertBefore);
}
......@@ -377,7 +377,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
throw new Error('ViewImpl.pointerHandler.visibleRangeForPosition2: View is disposed');
}
this._flushAccumulatedAndRenderNow();
var visibleRanges = this.viewLines.visibleRangesForRange2(new Range(lineNumber, column, lineNumber, column), 0);
let visibleRanges = this.viewLines.visibleRangesForRange2(new Range(lineNumber, column, lineNumber, column), 0);
if (!visibleRanges) {
return null;
}
......@@ -403,8 +403,8 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
throw new Error('ViewImpl.keyboardHandler.visibleRangeForPositionRelativeToEditor: View is disposed');
}
this._flushAccumulatedAndRenderNow();
var linesViewPortData = this.layoutProvider.getLinesViewportData();
var visibleRanges = this.viewLines.visibleRangesForRange2(new Range(lineNumber, column, lineNumber, column), linesViewPortData.visibleRangesDeltaTop);
let linesViewPortData = this.layoutProvider.getLinesViewportData();
let visibleRanges = this.viewLines.visibleRangesForRange2(new Range(lineNumber, column, lineNumber, column), linesViewPortData.visibleRangesDeltaTop);
if (!visibleRanges) {
return null;
}
......@@ -437,7 +437,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
/* tslint:disable:no-unused-variable */
// Access overflowGuardContainer.clientWidth to prevent relayouting bug in Chrome
// See Bug 19676: Editor misses a layout event
var clientWidth = this.overflowGuardContainer.clientWidth + 'px';
let clientWidth = this.overflowGuardContainer.clientWidth + 'px';
/* tslint:enable:no-unused-variable */
}
StyleMutator.setWidth(this.domNode, layoutInfo.width);
......@@ -516,7 +516,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
this.viewLines.dispose();
// Destroy IViewPart second
for (var i = 0, len = this.viewParts.length; i < len; i++) {
for (let i = 0, len = this.viewParts.length; i < len; i++) {
this.viewParts[i].dispose();
}
this.viewParts = [];
......@@ -567,11 +567,11 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
if (this._isDisposed) {
throw new Error('ViewImpl.codeEditorHelper.getVerticalOffsetForPosition: View is disposed');
}
var modelPosition = this._context.model.validateModelPosition({
let modelPosition = this._context.model.validateModelPosition({
lineNumber: modelLineNumber,
column: modelColumn
});
var viewPosition = this._context.model.convertModelPositionToViewPosition(modelPosition.lineNumber, modelPosition.column);
let viewPosition = this._context.model.convertModelPositionToViewPosition(modelPosition.lineNumber, modelPosition.column);
return this.layoutProvider.getVerticalOffsetForLineNumber(viewPosition.lineNumber);
},
delegateVerticalScrollbarMouseDown: (browserEvent: MouseEvent) => {
......@@ -584,13 +584,13 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
if (this._isDisposed) {
throw new Error('ViewImpl.codeEditorHelper.getOffsetForColumn: View is disposed');
}
var modelPosition = this._context.model.validateModelPosition({
let modelPosition = this._context.model.validateModelPosition({
lineNumber: modelLineNumber,
column: modelColumn
});
var viewPosition = this._context.model.convertModelPositionToViewPosition(modelPosition.lineNumber, modelPosition.column);
let viewPosition = this._context.model.convertModelPositionToViewPosition(modelPosition.lineNumber, modelPosition.column);
this._flushAccumulatedAndRenderNow();
var visibleRanges = this.viewLines.visibleRangesForRange2(new Range(viewPosition.lineNumber, viewPosition.column, viewPosition.lineNumber, viewPosition.column), 0);
let visibleRanges = this.viewLines.visibleRangesForRange2(new Range(viewPosition.lineNumber, viewPosition.column, viewPosition.lineNumber, viewPosition.column), 0);
if (!visibleRanges) {
return -1;
}
......@@ -605,9 +605,9 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
if (this._isDisposed) {
throw new Error('ViewImpl.getCenteredRangeInViewport: View is disposed');
}
var viewLineNumber = this.layoutProvider.getCenteredViewLineNumberInViewport();
var viewModel = this._context.model;
var currentCenteredViewRange = new Range(viewLineNumber, 1, viewLineNumber, viewModel.getLineMaxColumn(viewLineNumber));
let viewLineNumber = this.layoutProvider.getCenteredViewLineNumberInViewport();
let viewModel = this._context.model;
let currentCenteredViewRange = new Range(viewLineNumber, 1, viewLineNumber, viewModel.getLineMaxColumn(viewLineNumber));
return viewModel.convertViewRangeToModelRange(currentCenteredViewRange);
}
......@@ -676,11 +676,11 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
if (this._isDisposed) {
throw new Error('ViewImpl.change: View is disposed');
}
var zonesHaveChanged = false;
let zonesHaveChanged = false;
this._renderOnce(() => {
// Handle events to avoid "adjusting" newly inserted view zones
this._flushAnyAccumulatedEvents();
var changeAccessor: editorBrowser.IViewZoneChangeAccessor = {
let changeAccessor: editorBrowser.IViewZoneChangeAccessor = {
addZone: (zone: editorBrowser.IViewZone): number => {
zonesHaveChanged = true;
return this.viewZones.addZone(zone);
......@@ -699,7 +699,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
}
};
var r: any = safeInvoke1Arg(callback, changeAccessor);
let r: any = safeInvoke1Arg(callback, changeAccessor);
// Invalidate changeAccessor
changeAccessor.addZone = null;
......@@ -836,11 +836,11 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
private createRenderingContext(linesViewportData: ViewLinesViewportData): IRenderingContext {
var vInfo = this.layoutProvider.getCurrentViewport();
let vInfo = this.layoutProvider.getCurrentViewport();
var deltaTop = linesViewportData.visibleRangesDeltaTop;
let deltaTop = linesViewportData.visibleRangesDeltaTop;
var r: IRenderingContext = {
let r: IRenderingContext = {
linesViewportData: linesViewportData,
scrollWidth: this.layoutProvider.getScrollWidth(),
scrollHeight: this.layoutProvider.getScrollHeight(),
......@@ -858,8 +858,8 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
},
getViewportVerticalOffsetForLineNumber: (lineNumber: number) => {
var verticalOffset = this.layoutProvider.getVerticalOffsetForLineNumber(lineNumber);
var scrolledTop = this.layoutProvider.getScrolledTopFromAbsoluteTop(verticalOffset);
let verticalOffset = this.layoutProvider.getVerticalOffsetForLineNumber(lineNumber);
let scrolledTop = this.layoutProvider.getScrolledTopFromAbsoluteTop(verticalOffset);
return scrolledTop;
},
......@@ -870,7 +870,7 @@ export class View extends ViewEventHandler implements editorBrowser.IView, IDisp
},
visibleRangeForPosition: (position: editorCommon.IPosition) => {
var visibleRanges = this.viewLines.visibleRangesForRange2(new Range(position.lineNumber, position.column, position.lineNumber, position.column), deltaTop);
let visibleRanges = this.viewLines.visibleRangesForRange2(new Range(position.lineNumber, position.column, position.lineNumber, position.column), deltaTop);
if (!visibleRanges) {
return null;
}
......
......@@ -394,7 +394,7 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
private _render(inContext: IRendererContext<T>, startLineNumber: number, stopLineNumber: number, deltaTop: number[]): IRendererContext<T> {
var ctx: IRendererContext<T> = {
let ctx: IRendererContext<T> = {
domNode: inContext.domNode,
rendLineNumberStart: inContext.rendLineNumberStart,
lines: inContext.lines.slice(0),
......@@ -406,9 +406,9 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
scrollDomNodeIsAbove: inContext.scrollDomNodeIsAbove
};
var canRemoveScrollDomNode = true;
let canRemoveScrollDomNode = true;
if (ctx.scrollDomNode) {
var time = this._getScrollDomNodeTime(ctx.scrollDomNode);
let time = this._getScrollDomNodeTime(ctx.scrollDomNode);
if ((new Date()).getTime() - time < 1000) {
canRemoveScrollDomNode = false;
}
......@@ -419,7 +419,7 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
ctx.rendLineNumberStart = startLineNumber;
ctx.linesLength = stopLineNumber - startLineNumber + 1;
ctx.lines = [];
for (var x = startLineNumber; x <= stopLineNumber; x++) {
for (let x = startLineNumber; x <= stopLineNumber; x++) {
ctx.lines[x - startLineNumber] = this._createLine();
}
this._finishRendering(ctx, true, deltaTop);
......@@ -436,14 +436,10 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
startLineNumber
);
var fromLineNumber: number,
toLineNumber: number,
removeCnt: number;
if (ctx.rendLineNumberStart > startLineNumber) {
// Insert lines before
fromLineNumber = startLineNumber;
toLineNumber = Math.min(stopLineNumber, ctx.rendLineNumberStart - 1);
let fromLineNumber = startLineNumber;
let toLineNumber = Math.min(stopLineNumber, ctx.rendLineNumberStart - 1);
if (fromLineNumber <= toLineNumber) {
this._insertLinesBefore(ctx, fromLineNumber, toLineNumber, deltaTop, startLineNumber);
ctx.linesLength += toLineNumber - fromLineNumber + 1;
......@@ -458,7 +454,7 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
} else if (ctx.rendLineNumberStart < startLineNumber) {
// Remove lines before
removeCnt = Math.min(ctx.linesLength, startLineNumber - ctx.rendLineNumberStart);
let removeCnt = Math.min(ctx.linesLength, startLineNumber - ctx.rendLineNumberStart);
if (removeCnt > 0) {
this._removeLinesBefore(ctx, removeCnt);
ctx.linesLength -= removeCnt;
......@@ -469,8 +465,8 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
if (ctx.rendLineNumberStart + ctx.linesLength - 1 < stopLineNumber) {
// Insert lines after
fromLineNumber = ctx.rendLineNumberStart + ctx.linesLength;
toLineNumber = stopLineNumber;
let fromLineNumber = ctx.rendLineNumberStart + ctx.linesLength;
let toLineNumber = stopLineNumber;
if (fromLineNumber <= toLineNumber) {
this._insertLinesAfter(ctx, fromLineNumber, toLineNumber, deltaTop, startLineNumber);
......@@ -487,9 +483,9 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
} else if (ctx.rendLineNumberStart + ctx.linesLength - 1 > stopLineNumber) {
// Remove lines after
fromLineNumber = Math.max(0, stopLineNumber - ctx.rendLineNumberStart + 1);
toLineNumber = ctx.linesLength - 1;
removeCnt = toLineNumber - fromLineNumber + 1;
let fromLineNumber = Math.max(0, stopLineNumber - ctx.rendLineNumberStart + 1);
let toLineNumber = ctx.linesLength - 1;
let removeCnt = toLineNumber - fromLineNumber + 1;
if (removeCnt > 0) {
this._removeLinesAfter(ctx, removeCnt);
......@@ -503,12 +499,9 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _renderUntouchedLines(ctx: IRendererContext<T>, startIndex: number, endIndex: number, deltaTop: number[], deltaLN: number): void {
var i: number,
lineNumber: number;
for (i = startIndex; i <= endIndex; i++) {
lineNumber = ctx.rendLineNumberStart + i;
var lineDomNode = ctx.lines[i].getDomNode();
for (let i = startIndex; i <= endIndex; i++) {
let lineNumber = ctx.rendLineNumberStart + i;
let lineDomNode = ctx.lines[i].getDomNode();
if (lineDomNode) {
ctx.lines[i].layoutLine(lineNumber, deltaTop[lineNumber - deltaLN]);
}
......@@ -516,19 +509,16 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _insertLinesBefore(ctx: IRendererContext<T>, fromLineNumber: number, toLineNumber: number, deltaTop: number[], deltaLN: number): void {
var newLines: T[] = [],
line: T,
lineNumber: number;
for (lineNumber = fromLineNumber; lineNumber <= toLineNumber; lineNumber++) {
line = this._createLine();
newLines.push(line);
let newLines: T[] = [];
let newLinesLen = 0;
for (let lineNumber = fromLineNumber; lineNumber <= toLineNumber; lineNumber++) {
newLines[newLinesLen++] = this._createLine();
}
ctx.lines = newLines.concat(ctx.lines);
}
private _getScrollDomNodeTime(domNode: HTMLElement): number {
var lastScrollTime = domNode.getAttribute('last-scroll-time');
let lastScrollTime = domNode.getAttribute('last-scroll-time');
if (lastScrollTime) {
return parseInt(lastScrollTime, 10);
}
......@@ -536,14 +526,14 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _removeIfNotScrollDomNode(ctx: IRendererContext<T>, domNode: HTMLElement, isAbove: boolean) {
var time = this._getScrollDomNodeTime(domNode);
let time = this._getScrollDomNodeTime(domNode);
if (!time) {
ctx.domNode.removeChild(domNode);
return;
}
if (ctx.scrollDomNode) {
var otherTime = this._getScrollDomNodeTime(ctx.scrollDomNode);
let otherTime = this._getScrollDomNodeTime(ctx.scrollDomNode);
if (otherTime > time) {
// The other is the real scroll dom node
ctx.domNode.removeChild(domNode);
......@@ -562,10 +552,8 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _removeLinesBefore(ctx: IRendererContext<T>, removeCount: number): void {
var i: number;
for (i = 0; i < removeCount; i++) {
var lineDomNode = ctx.lines[i].getDomNode();
for (let i = 0; i < removeCount; i++) {
let lineDomNode = ctx.lines[i].getDomNode();
if (lineDomNode) {
this._removeIfNotScrollDomNode(ctx, lineDomNode, true);
}
......@@ -574,23 +562,19 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _insertLinesAfter(ctx: IRendererContext<T>, fromLineNumber: number, toLineNumber: number, deltaTop: number[], deltaLN: number): void {
var newLines: T[] = [],
line: T,
lineNumber: number;
for (lineNumber = fromLineNumber; lineNumber <= toLineNumber; lineNumber++) {
line = this._createLine();
newLines.push(line);
let newLines: T[] = [];
let newLinesLen = 0;
for (let lineNumber = fromLineNumber; lineNumber <= toLineNumber; lineNumber++) {
newLines[newLinesLen++] = this._createLine();
}
ctx.lines = ctx.lines.concat(newLines);
}
private _removeLinesAfter(ctx: IRendererContext<T>, removeCount: number): void {
var i: number,
removeIndex = ctx.linesLength - removeCount;
let removeIndex = ctx.linesLength - removeCount;
for (i = 0; i < removeCount; i++) {
var lineDomNode = ctx.lines[removeIndex + i].getDomNode();
for (let i = 0; i < removeCount; i++) {
let lineDomNode = ctx.lines[removeIndex + i].getDomNode();
if (lineDomNode) {
this._removeIfNotScrollDomNode(ctx, lineDomNode, false);
}
......@@ -608,14 +592,14 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _finishRenderingNewLines(ctx: IRendererContext<T>, domNodeIsEmpty: boolean, newLinesHTML: string[], wasNew: boolean[]): void {
var lastChild = <HTMLElement>ctx.domNode.lastChild;
let lastChild = <HTMLElement>ctx.domNode.lastChild;
if (domNodeIsEmpty || !lastChild) {
ctx.domNode.innerHTML = this._extraDomNodeHTML() + newLinesHTML.join('');
} else {
lastChild.insertAdjacentHTML('afterend', newLinesHTML.join(''));
}
var currChild = <HTMLElement>ctx.domNode.lastChild;
let currChild = <HTMLElement>ctx.domNode.lastChild;
for (let i = ctx.linesLength - 1; i >= 0; i--) {
let line = ctx.lines[i];
if (wasNew[i]) {
......@@ -626,17 +610,15 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
}
private _finishRenderingInvalidLines(ctx: IRendererContext<T>, invalidLinesHTML: string[], wasInvalid: boolean[]): void {
var hugeDomNode = document.createElement('div');
let hugeDomNode = document.createElement('div');
hugeDomNode.innerHTML = invalidLinesHTML.join('');
var lineDomNode: HTMLElement,
source: HTMLElement;
for (let i = 0; i < ctx.linesLength; i++) {
let line = ctx.lines[i];
if (wasInvalid[i]) {
source = <HTMLElement>hugeDomNode.firstChild;
lineDomNode = line.getDomNode();
let source = <HTMLElement>hugeDomNode.firstChild;
let lineDomNode = line.getDomNode();
lineDomNode.parentNode.replaceChild(source, lineDomNode);
line.setDomNode(source);
}
......@@ -647,23 +629,19 @@ class ViewLayerRenderer<T extends IVisibleLineData> {
let inlineDecorations = ViewLayerRenderer._resolveInlineDecorations(ctx);
var i: number,
len: number,
line: IVisibleLineData,
lineNumber: number,
hadNewLine = false,
wasNew: boolean[] = [],
newLinesHTML: string[] = [],
hadInvalidLine = false,
wasInvalid: boolean[] = [],
invalidLinesHTML: string[] = [];
for (i = 0, len = ctx.linesLength; i < len; i++) {
line = ctx.lines[i];
lineNumber = i + ctx.rendLineNumberStart;
let hadNewLine = false;
let wasNew: boolean[] = [];
let newLinesHTML: string[] = [];
let hadInvalidLine = false;
let wasInvalid: boolean[] = [];
let invalidLinesHTML: string[] = [];
for (let i = 0, len = ctx.linesLength; i < len; i++) {
let line = ctx.lines[i];
let lineNumber = i + ctx.rendLineNumberStart;
if (line.shouldUpdateHTML(ctx.rendLineNumberStart, lineNumber, inlineDecorations[i])) {
var lineDomNode = line.getDomNode();
let lineDomNode = line.getDomNode();
if (!lineDomNode) {
// Line is new
line.getLineOuterHTML(newLinesHTML, lineNumber, deltaTop[i]);
......
......@@ -75,8 +75,7 @@ export class ViewOverlays extends ViewLayer<ViewOverlayLine> {
// ----- end event handlers
_createLine(): ViewOverlayLine {
var r = new ViewOverlayLine(this._context, this._dynamicOverlays);
return r;
return new ViewOverlayLine(this._context, this._dynamicOverlays);
}
......@@ -285,18 +284,18 @@ export class MarginViewOverlays extends ViewOverlays {
_viewOverlaysRender(ctx: IRestrictedRenderingContext): void {
super._viewOverlaysRender(ctx);
if (this._canUseTranslate3d) {
var transform = 'translate3d(0px, ' + ctx.linesViewportData.visibleRangesDeltaTop + 'px, 0px)';
let transform = 'translate3d(0px, ' + ctx.linesViewportData.visibleRangesDeltaTop + 'px, 0px)';
this.domNode.setTransform(transform);
this.domNode.setTop(0);
} else {
this.domNode.setTransform('');
this.domNode.setTop(ctx.linesViewportData.visibleRangesDeltaTop);
}
var height = Math.min(this._layoutProvider.getTotalHeight(), 1000000);
let height = Math.min(this._layoutProvider.getTotalHeight(), 1000000);
this.domNode.setHeight(height);
this.domNode.setWidth(this._contentLeft);
var glyphMargin = this._getGlyphMarginDomNode();
let glyphMargin = this._getGlyphMarginDomNode();
if (glyphMargin) {
StyleMutator.setHeight(glyphMargin, this._scrollHeight);
StyleMutator.setLeft(glyphMargin, this._glyphMarginLeft);
......
......@@ -202,7 +202,7 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
}
private _computeScrollWidth(maxLineWidth: number, viewportWidth: number): number {
var isViewportWrapping = this.configuration.editor.wrappingInfo.isViewportWrapping;
let isViewportWrapping = this.configuration.editor.wrappingInfo.isViewportWrapping;
if (!isViewportWrapping) {
return Math.max(maxLineWidth + LayoutProvider.LINES_HORIZONTAL_EXTRA_PX, viewportWidth);
}
......@@ -210,7 +210,7 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
}
public onMaxLineWidthChanged(maxLineWidth: number): void {
var newScrollWidth = this._computeScrollWidth(maxLineWidth, this.getCurrentViewport().width);
let newScrollWidth = this._computeScrollWidth(maxLineWidth, this.getCurrentViewport().width);
this.scrollManager.setScrollWidth(newScrollWidth);
// The height might depend on the fact that there is a horizontal scrollbar or not
......@@ -220,9 +220,9 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
// ---- view state
public saveState(): editorCommon.IViewState {
var scrollTop = this.scrollManager.getScrollTop();
var firstLineNumberInViewport = this.linesLayout.getLineNumberAtOrAfterVerticalOffset(scrollTop);
var whitespaceAboveFirstLine = this.linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(firstLineNumberInViewport);
let scrollTop = this.scrollManager.getScrollTop();
let firstLineNumberInViewport = this.linesLayout.getLineNumberAtOrAfterVerticalOffset(scrollTop);
let whitespaceAboveFirstLine = this.linesLayout.getWhitespaceAccumulatedHeightBeforeLineNumber(firstLineNumberInViewport);
return {
scrollTop: scrollTop,
scrollTopWithoutViewZones: scrollTop - whitespaceAboveFirstLine,
......@@ -231,7 +231,7 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
}
public restoreState(state: editorCommon.IViewState): void {
var restoreScrollTop = state.scrollTop;
let restoreScrollTop = state.scrollTop;
if (typeof state.scrollTopWithoutViewZones === 'number' && !this.linesLayout.hasWhitespace()) {
restoreScrollTop = state.scrollTopWithoutViewZones;
}
......@@ -265,7 +265,7 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
return this.linesLayout.getLineNumberAtOrAfterVerticalOffset(verticalOffset);
}
public getTotalHeight(): number {
var reserveHorizontalScrollbarHeight = 0;
let reserveHorizontalScrollbarHeight = 0;
if (this.scrollManager.getScrollWidth() > this.scrollManager.getWidth()) {
reserveHorizontalScrollbarHeight = this.configuration.editor.viewInfo.scrollbar.horizontalScrollbarSize;
}
......@@ -287,7 +287,7 @@ export class LayoutProvider extends ViewEventHandler implements IDisposable, ILa
// ---- IScrollingProvider
public getOverviewRulerInsertData(): { parent: HTMLElement; insertBefore: HTMLElement; } {
var layoutInfo = this.scrollManager.getOverviewRulerLayoutInfo();
let layoutInfo = this.scrollManager.getOverviewRulerLayoutInfo();
return {
parent: layoutInfo.parent,
insertBefore: layoutInfo.insertBefore
......
......@@ -33,9 +33,9 @@ export class ScrollManager implements IDisposable {
this.privateViewEventBus = privateViewEventBus;
this.linesContent = linesContent;
var configScrollbarOpts = this.configuration.editor.viewInfo.scrollbar;
let configScrollbarOpts = this.configuration.editor.viewInfo.scrollbar;
var scrollbarOptions: ScrollableElementCreationOptions = {
let scrollbarOptions: ScrollableElementCreationOptions = {
canUseTranslate3d: this.configuration.editor.viewInfo.canUseTranslate3d,
listenOnDomNode: viewDomNode,
vertical: configScrollbarOpts.vertical,
......@@ -78,11 +78,11 @@ export class ScrollManager implements IDisposable {
// the browser will try desperately to reveal that dom node, unexpectedly
// changing the .scrollTop of this.linesContent
var onBrowserDesperateReveal = (domNode: HTMLElement, lookAtScrollTop: boolean, lookAtScrollLeft: boolean) => {
let onBrowserDesperateReveal = (domNode: HTMLElement, lookAtScrollTop: boolean, lookAtScrollLeft: boolean) => {
let newScrollPosition: INewScrollPosition = {};
if (lookAtScrollTop) {
var deltaTop = domNode.scrollTop;
let deltaTop = domNode.scrollTop;
if (deltaTop) {
newScrollPosition.scrollTop = this.getScrollTop() + deltaTop;
domNode.scrollTop = 0;
......@@ -90,7 +90,7 @@ export class ScrollManager implements IDisposable {
}
if (lookAtScrollLeft) {
var deltaLeft = domNode.scrollLeft;
let deltaLeft = domNode.scrollLeft;
if (deltaLeft) {
newScrollPosition.scrollLeft = this.getScrollLeft() + deltaLeft;
domNode.scrollLeft = 0;
......
......@@ -63,7 +63,7 @@ export class CurrentLineHighlightOverlay extends DynamicViewOverlay {
return true;
}
public onCursorPositionChanged(e: editorCommon.IViewCursorPositionChangedEvent): boolean {
var hasChanged = false;
let hasChanged = false;
if (this._primaryCursorIsInEditableRange !== e.isInEditableRange) {
this._primaryCursorIsInEditableRange = e.isInEditableRange;
hasChanged = true;
......@@ -75,7 +75,7 @@ export class CurrentLineHighlightOverlay extends DynamicViewOverlay {
return hasChanged;
}
public onCursorSelectionChanged(e: editorCommon.IViewCursorSelectionChangedEvent): boolean {
var isEmpty = e.selection.isEmpty();
let isEmpty = e.selection.isEmpty();
if (this._selectionIsEmpty !== isEmpty) {
this._selectionIsEmpty = isEmpty;
return true;
......
......@@ -108,7 +108,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
// ---- begin view event handlers
public onConfigurationChanged(e: editorCommon.IConfigurationChangedEvent): boolean {
var shouldRender = super.onConfigurationChanged(e);
let shouldRender = super.onConfigurationChanged(e);
if (e.wrappingInfo) {
this._maxLineWidth = 0;
}
......@@ -133,13 +133,13 @@ export class ViewLines extends ViewLayer<ViewLine> {
}
public onLayoutChanged(layoutInfo: editorCommon.EditorLayoutInfo): boolean {
var shouldRender = super.onLayoutChanged(layoutInfo);
let shouldRender = super.onLayoutChanged(layoutInfo);
this._maxLineWidth = 0;
return shouldRender;
}
public onModelFlushed(): boolean {
var shouldRender = super.onModelFlushed();
let shouldRender = super.onModelFlushed();
this._maxLineWidth = 0;
return shouldRender;
}
......@@ -157,7 +157,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
}
public onCursorRevealRange(e: editorCommon.IViewRevealRangeEvent): boolean {
var newScrollTop = this._computeScrollTopToRevealRange(this._layoutProvider.getCurrentViewport(), e.range, e.verticalType);
let newScrollTop = this._computeScrollTopToRevealRange(this._layoutProvider.getCurrentViewport(), e.range, e.verticalType);
if (e.revealHorizontal) {
this._lastCursorRevealRangeHorizontallyEvent = e;
......@@ -403,9 +403,9 @@ export class ViewLines extends ViewLayer<ViewLine> {
this.onDidRender();
// compute new scroll position
var newScrollLeft = this._computeScrollLeftToRevealRange(revealHorizontalRange);
let newScrollLeft = this._computeScrollLeftToRevealRange(revealHorizontalRange);
var isViewportWrapping = this._isViewportWrapping;
let isViewportWrapping = this._isViewportWrapping;
if (!isViewportWrapping) {
// ensure `scrollWidth` is large enough
this._ensureMaxLineWidth(newScrollLeft.maxHorizontalOffset);
......@@ -444,11 +444,11 @@ export class ViewLines extends ViewLayer<ViewLine> {
}
private _computeScrollTopToRevealRange(viewport: editorCommon.Viewport, range: Range, verticalType: editorCommon.VerticalRevealType): number {
var viewportStartY = viewport.top,
viewportHeight = viewport.height,
viewportEndY = viewportStartY + viewportHeight,
boxStartY: number,
boxEndY: number;
let viewportStartY = viewport.top;
let viewportHeight = viewport.height;
let viewportEndY = viewportStartY + viewportHeight;
let boxStartY: number;
let boxEndY: number;
// Have a box that includes one extra line height (for the horizontal scrollbar)
boxStartY = this._layoutProvider.getVerticalOffsetForLineNumber(range.startLineNumber);
......@@ -458,7 +458,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
boxEndY += this._lineHeight;
}
var newScrollTop: number;
let newScrollTop: number;
if (verticalType === editorCommon.VerticalRevealType.Center || verticalType === editorCommon.VerticalRevealType.CenterIfOutsideViewport) {
if (verticalType === editorCommon.VerticalRevealType.CenterIfOutsideViewport && viewportStartY <= boxStartY && boxEndY <= viewportEndY) {
......@@ -466,7 +466,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
newScrollTop = viewportStartY;
} else {
// Box is outside the viewport... center it
var boxMiddleY = (boxStartY + boxEndY) / 2;
let boxMiddleY = (boxStartY + boxEndY) / 2;
newScrollTop = Math.max(0, boxMiddleY - viewportHeight / 2);
}
} else {
......@@ -478,7 +478,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
private _computeScrollLeftToRevealRange(range: Range): { scrollLeft: number; maxHorizontalOffset: number; } {
var maxHorizontalOffset = 0;
let maxHorizontalOffset = 0;
if (range.startLineNumber !== range.endLineNumber) {
// Two or more lines? => scroll to base (That's how you see most of the two lines)
......@@ -488,13 +488,13 @@ export class ViewLines extends ViewLayer<ViewLine> {
};
}
var viewport = this._layoutProvider.getCurrentViewport(),
viewportStartX = viewport.left,
viewportEndX = viewportStartX + viewport.width;
let viewport = this._layoutProvider.getCurrentViewport();
let viewportStartX = viewport.left;
let viewportEndX = viewportStartX + viewport.width;
var visibleRanges = this.visibleRangesForRange2(range, 0),
boxStartX = Number.MAX_VALUE,
boxEndX = 0;
let visibleRanges = this.visibleRangesForRange2(range, 0);
let boxStartX = Number.MAX_VALUE;
let boxEndX = 0;
if (!visibleRanges) {
// Unknown
......@@ -504,11 +504,8 @@ export class ViewLines extends ViewLayer<ViewLine> {
};
}
var i: number,
visibleRange: VisibleRange;
for (i = 0; i < visibleRanges.length; i++) {
visibleRange = visibleRanges[i];
for (let i = 0; i < visibleRanges.length; i++) {
let visibleRange = visibleRanges[i];
if (visibleRange.left < boxStartX) {
boxStartX = visibleRange.left;
}
......@@ -522,7 +519,7 @@ export class ViewLines extends ViewLayer<ViewLine> {
boxStartX = Math.max(0, boxStartX - ViewLines.HORIZONTAL_EXTRA_PX);
boxEndX += this._revealHorizontalRightPadding;
var newScrollLeft = this._computeMinimumScrolling(viewportStartX, viewportEndX, boxStartX, boxEndX);
let newScrollLeft = this._computeMinimumScrolling(viewportStartX, viewportEndX, boxStartX, boxEndX);
return {
scrollLeft: newScrollLeft,
maxHorizontalOffset: maxHorizontalOffset
......
......@@ -69,7 +69,7 @@ export class ViewOverlayWidgets extends ViewPart {
};
// This is sync because a widget wants to be in the dom
var domNode = widget.getDomNode();
let domNode = widget.getDomNode();
domNode.style.position = 'absolute';
domNode.setAttribute('widgetId', widget.getId());
this.domNode.appendChild(domNode);
......@@ -78,7 +78,7 @@ export class ViewOverlayWidgets extends ViewPart {
}
public setWidgetPosition(widget: IOverlayWidget, preference: OverlayWidgetPositionPreference): boolean {
var widgetData = this._widgets[widget.getId()];
let widgetData = this._widgets[widget.getId()];
if (widgetData.preference === preference) {
return false;
}
......@@ -90,10 +90,10 @@ export class ViewOverlayWidgets extends ViewPart {
}
public removeWidget(widget: IOverlayWidget): void {
var widgetId = widget.getId();
let widgetId = widget.getId();
if (this._widgets.hasOwnProperty(widgetId)) {
var widgetData = this._widgets[widgetId];
var domNode = widgetData.widget.getDomNode();
let widgetData = this._widgets[widgetId];
let domNode = widgetData.widget.getDomNode();
delete this._widgets[widgetId];
domNode.parentNode.removeChild(domNode);
......@@ -102,12 +102,12 @@ export class ViewOverlayWidgets extends ViewPart {
}
private _renderWidget(widgetData: IWidgetData): void {
var _RESTORE_STYLE_TOP = 'data-editor-restoreStyleTop',
domNode = widgetData.widget.getDomNode();
let _RESTORE_STYLE_TOP = 'data-editor-restoreStyleTop';
let domNode = widgetData.widget.getDomNode();
if (widgetData.preference === null) {
if (domNode.hasAttribute(_RESTORE_STYLE_TOP)) {
var previousTop = domNode.getAttribute(_RESTORE_STYLE_TOP);
let previousTop = domNode.getAttribute(_RESTORE_STYLE_TOP);
domNode.removeAttribute(_RESTORE_STYLE_TOP);
domNode.style.top = previousTop;
}
......@@ -124,7 +124,7 @@ export class ViewOverlayWidgets extends ViewPart {
if (!domNode.hasAttribute(_RESTORE_STYLE_TOP)) {
domNode.setAttribute(_RESTORE_STYLE_TOP, domNode.style.top);
}
var widgetHeight = domNode.clientHeight;
let widgetHeight = domNode.clientHeight;
StyleMutator.setTop(domNode, (this._editorHeight - widgetHeight - 2 * this._horizontalScrollbarHeight));
StyleMutator.setRight(domNode, (2 * this._verticalScrollbarWidth));
} else if (widgetData.preference === OverlayWidgetPositionPreference.TOP_CENTER) {
......
......@@ -72,10 +72,10 @@ export class DecorationsOverviewRuler extends ViewPart {
}
public onConfigurationChanged(e: editorCommon.IConfigurationChangedEvent): boolean {
var prevLanesCount = this._overviewRuler.getLanesCount();
var newLanesCount = this._context.configuration.editor.viewInfo.overviewRulerLanes;
let prevLanesCount = this._overviewRuler.getLanesCount();
let newLanesCount = this._context.configuration.editor.viewInfo.overviewRulerLanes;
var shouldRender = false;
let shouldRender = false;
if (e.lineHeight) {
this._overviewRuler.setLineHeight(this._context.configuration.editor.lineHeight, false);
......@@ -202,17 +202,17 @@ export class DecorationsOverviewRuler extends ViewPart {
}
}
var allZones: editorCommon.OverviewRulerZone[] = [];
let allZones: editorCommon.OverviewRulerZone[] = [];
allZones = allZones.concat(this._zonesFromCursors);
allZones = allZones.concat(this._zonesFromDecorations);
this._overviewRuler.setZones(allZones, false);
}
var hasRendered = this._overviewRuler.render(false);
let hasRendered = this._overviewRuler.render(false);
if (hasRendered && OverviewRulerImpl.hasCanvas && this._overviewRuler.getLanesCount() > 0 && (this._zonesFromDecorations.length > 0 || this._zonesFromCursors.length > 0)) {
var ctx2 = this._overviewRuler.getDomNode().getContext('2d');
let ctx2 = this._overviewRuler.getDomNode().getContext('2d');
ctx2.beginPath();
ctx2.lineWidth = 1;
ctx2.strokeStyle = 'rgba(197,197,197,0.8)';
......
......@@ -33,7 +33,7 @@ export class ScrollDecorationViewPart extends ViewPart {
}
private _updateShouldShow(): boolean {
var newShouldShow = (this._useShadows && this._scrollTop > 0);
let newShouldShow = (this._useShadows && this._scrollTop > 0);
if (this._shouldShow !== newShouldShow) {
this._shouldShow = newShouldShow;
return true;
......
......@@ -151,12 +151,8 @@ export class SelectionsOverlay extends DynamicViewOverlay {
private _visibleRangesHaveGaps(linesVisibleRanges: LineVisibleRangesWithStyle[]): boolean {
var i: number,
len: number,
lineVisibleRanges: LineVisibleRangesWithStyle;
for (i = 0, len = linesVisibleRanges.length; i < len; i++) {
lineVisibleRanges = linesVisibleRanges[i];
for (let i = 0, len = linesVisibleRanges.length; i < len; i++) {
let lineVisibleRanges = linesVisibleRanges[i];
if (lineVisibleRanges.ranges.length > 1) {
// There are two ranges on the same line
......@@ -168,32 +164,20 @@ export class SelectionsOverlay extends DynamicViewOverlay {
}
private _enrichVisibleRangesWithStyle(linesVisibleRanges: LineVisibleRangesWithStyle[], previousFrame: LineVisibleRangesWithStyle[]): void {
var curLineRange: HorizontalRangeWithStyle,
curLeft: number,
curRight: number,
prevLeft: number,
prevRight: number,
nextLeft: number,
nextRight: number,
startStyle: IVisibleRangeEndPointStyle,
endStyle: IVisibleRangeEndPointStyle,
i: number,
len: number;
var previousFrameTop: HorizontalRangeWithStyle = null,
previousFrameBottom: HorizontalRangeWithStyle = null;
let previousFrameTop: HorizontalRangeWithStyle = null;
let previousFrameBottom: HorizontalRangeWithStyle = null;
if (previousFrame && previousFrame.length > 0 && linesVisibleRanges.length > 0) {
var topLineNumber = linesVisibleRanges[0].lineNumber;
for (var i = 0; !previousFrameTop && i < previousFrame.length; i++) {
let topLineNumber = linesVisibleRanges[0].lineNumber;
for (let i = 0; !previousFrameTop && i < previousFrame.length; i++) {
if (previousFrame[i].lineNumber === topLineNumber) {
previousFrameTop = previousFrame[i].ranges[0];
}
}
var bottomLineNumber = linesVisibleRanges[linesVisibleRanges.length - 1].lineNumber;
for (var i = previousFrame.length - 1; !previousFrameBottom && i >= 0; i--) {
let bottomLineNumber = linesVisibleRanges[linesVisibleRanges.length - 1].lineNumber;
for (let i = previousFrame.length - 1; !previousFrameBottom && i >= 0; i--) {
if (previousFrame[i].lineNumber === bottomLineNumber) {
previousFrameBottom = previousFrame[i].ranges[0];
}
......@@ -207,26 +191,26 @@ export class SelectionsOverlay extends DynamicViewOverlay {
}
}
for (i = 0, len = linesVisibleRanges.length; i < len; i++) {
for (let i = 0, len = linesVisibleRanges.length; i < len; i++) {
// We know for a fact that there is precisely one range on each line
curLineRange = linesVisibleRanges[i].ranges[0];
curLeft = curLineRange.left;
curRight = curLineRange.left + curLineRange.width;
let curLineRange = linesVisibleRanges[i].ranges[0];
let curLeft = curLineRange.left;
let curRight = curLineRange.left + curLineRange.width;
startStyle = {
let startStyle = {
top: CornerStyle.EXTERN,
bottom: CornerStyle.EXTERN
};
endStyle = {
let endStyle = {
top: CornerStyle.EXTERN,
bottom: CornerStyle.EXTERN
};
if (i > 0) {
// Look above
prevLeft = linesVisibleRanges[i - 1].ranges[0].left;
prevRight = linesVisibleRanges[i - 1].ranges[0].left + linesVisibleRanges[i - 1].ranges[0].width;
let prevLeft = linesVisibleRanges[i - 1].ranges[0].left;
let prevRight = linesVisibleRanges[i - 1].ranges[0].left + linesVisibleRanges[i - 1].ranges[0].width;
if (curLeft === prevLeft) {
startStyle.top = CornerStyle.FLAT;
......@@ -247,8 +231,8 @@ export class SelectionsOverlay extends DynamicViewOverlay {
if (i + 1 < len) {
// Look below
nextLeft = linesVisibleRanges[i + 1].ranges[0].left;
nextRight = linesVisibleRanges[i + 1].ranges[0].left + linesVisibleRanges[i + 1].ranges[0].width;
let nextLeft = linesVisibleRanges[i + 1].ranges[0].left;
let nextRight = linesVisibleRanges[i + 1].ranges[0].left + linesVisibleRanges[i + 1].ranges[0].width;
if (curLeft === nextLeft) {
startStyle.bottom = CornerStyle.FLAT;
......
......@@ -123,7 +123,7 @@ export class ViewCursor {
}
public prepareRender(ctx: IRenderingContext): void {
var visibleRange = ctx.visibleRangeForPosition(this._position);
let visibleRange = ctx.visibleRangeForPosition(this._position);
if (visibleRange) {
this._positionTop = visibleRange.top;
this._positionLeft = visibleRange.left;
......
......@@ -78,8 +78,8 @@ export class ViewCursors extends ViewPart {
public onModelFlushed(): boolean {
this._primaryCursor.onModelFlushed();
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
var domNode = this._secondaryCursors[i].getDomNode();
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
let domNode = this._secondaryCursors[i].getDomNode();
domNode.parentNode.removeChild(domNode);
}
this._secondaryCursors = [];
......@@ -99,7 +99,7 @@ export class ViewCursors extends ViewPart {
return true;
}
public onModelTokensChanged(e: editorCommon.IViewTokensChangedEvent): boolean {
var shouldRender = (position: editorCommon.IPosition) => {
let shouldRender = (position: editorCommon.IPosition) => {
for (let i = 0, len = e.ranges.length; i < len; i++) {
if (e.ranges[i].fromLineNumber <= position.lineNumber && position.lineNumber <= e.ranges[i].toLineNumber) {
return true;
......@@ -110,7 +110,7 @@ export class ViewCursors extends ViewPart {
if (shouldRender(this._primaryCursor.getPosition())) {
return true;
}
for (var i = 0; i < this._secondaryCursors.length; i++) {
for (let i = 0; i < this._secondaryCursors.length; i++) {
if (shouldRender(this._secondaryCursors[i].getPosition())) {
return true;
}
......@@ -123,22 +123,22 @@ export class ViewCursors extends ViewPart {
if (this._secondaryCursors.length < e.secondaryPositions.length) {
// Create new cursors
var addCnt = e.secondaryPositions.length - this._secondaryCursors.length;
for (var i = 0; i < addCnt; i++) {
var newCursor = new ViewCursor(this._context, true);
let addCnt = e.secondaryPositions.length - this._secondaryCursors.length;
for (let i = 0; i < addCnt; i++) {
let newCursor = new ViewCursor(this._context, true);
this._primaryCursor.getDomNode().parentNode.insertBefore(newCursor.getDomNode(), this._primaryCursor.getDomNode().nextSibling);
this._secondaryCursors.push(newCursor);
}
} else if (this._secondaryCursors.length > e.secondaryPositions.length) {
// Remove some cursors
var removeCnt = this._secondaryCursors.length - e.secondaryPositions.length;
for (var i = 0; i < removeCnt; i++) {
let removeCnt = this._secondaryCursors.length - e.secondaryPositions.length;
for (let i = 0; i < removeCnt; i++) {
this._secondaryCursors[0].getDomNode().parentNode.removeChild(this._secondaryCursors[0].getDomNode());
this._secondaryCursors.splice(0, 1);
}
}
for (var i = 0; i < e.secondaryPositions.length; i++) {
for (let i = 0; i < e.secondaryPositions.length; i++) {
this._secondaryCursors[i].onCursorPositionChanged(e.secondaryPositions[i], e.isInEditableRange);
}
......@@ -164,7 +164,7 @@ export class ViewCursors extends ViewPart {
if (e.viewInfo.cursorStyle || e.viewInfo.cursorBlinking) {
this._updateDomClassName();
}
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
this._secondaryCursors[i].onConfigurationChanged(e);
}
return true;
......@@ -288,7 +288,7 @@ export class ViewCursors extends ViewPart {
private _show(): void {
this._primaryCursor.show();
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
this._secondaryCursors[i].show();
}
this._isVisible = true;
......@@ -296,7 +296,7 @@ export class ViewCursors extends ViewPart {
private _hide(): void {
this._primaryCursor.hide();
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
this._secondaryCursors[i].hide();
}
this._isVisible = false;
......@@ -310,7 +310,7 @@ export class ViewCursors extends ViewPart {
}
this._primaryCursor.prepareRender(ctx);
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
this._secondaryCursors[i].prepareRender(ctx);
}
}
......@@ -318,7 +318,7 @@ export class ViewCursors extends ViewPart {
public render(ctx: IRestrictedRenderingContext): void {
this._renderData = [];
this._renderData.push(this._primaryCursor.render(ctx));
for (var i = 0, len = this._secondaryCursors.length; i < len; i++) {
for (let i = 0, len = this._secondaryCursors.length; i < len; i++) {
this._renderData.push(this._secondaryCursors[i].render(ctx));
}
......
......@@ -200,7 +200,7 @@ export class ViewZones extends ViewPart {
public removeZone(id: number): boolean {
if (this._zones.hasOwnProperty(id.toString())) {
var zone = this._zones[id.toString()];
let zone = this._zones[id.toString()];
delete this._zones[id.toString()];
this._whitespaceManager.removeWhitespace(zone.whitespaceId);
......@@ -234,7 +234,7 @@ export class ViewZones extends ViewPart {
public shouldSuppressMouseDownOnViewZone(id: number): boolean {
if (this._zones.hasOwnProperty(id.toString())) {
var zone = this._zones[id.toString()];
let zone = this._zones[id.toString()];
return zone.delegate.suppressMouseDown;
}
return false;
......
......@@ -130,10 +130,10 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
if (!model) {
return '';
}
var content = model.getLineContent(lineNumber);
var tokens = model.getLineTokens(lineNumber, false);
var inflatedTokens = tokens.inflate();
var tabSize = model.getOptions().tabSize;
let content = model.getLineContent(lineNumber);
let tokens = model.getLineTokens(lineNumber, false);
let inflatedTokens = tokens.inflate();
let tabSize = model.getOptions().tabSize;
return Colorizer.colorizeLine(content, inflatedTokens, tabSize);
}
public getView(): editorBrowser.IView {
......@@ -247,14 +247,13 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
};
}
public restoreViewState(state: editorCommon.IEditorViewState): void {
public restoreViewState(s: editorCommon.ICodeEditorViewState): void {
if (!this.cursor || !this.hasView) {
return;
}
var s = <any>state;
if (s && s.cursorState && s.viewState) {
var codeEditorState = <editorCommon.ICodeEditorViewState>s;
var cursorState = <any>codeEditorState.cursorState;
let codeEditorState = <editorCommon.ICodeEditorViewState>s;
let cursorState = <any>codeEditorState.cursorState;
if (Array.isArray(cursorState)) {
this.cursor.restoreState(<editorCommon.ICursorState[]>cursorState);
} else {
......@@ -296,7 +295,7 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public addContentWidget(widget: editorBrowser.IContentWidget): void {
var widgetData: editorBrowser.IContentWidgetData = {
let widgetData: editorBrowser.IContentWidgetData = {
widget: widget,
position: widget.getPosition()
};
......@@ -313,9 +312,9 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public layoutContentWidget(widget: editorBrowser.IContentWidget): void {
var widgetId = widget.getId();
let widgetId = widget.getId();
if (this.contentWidgets.hasOwnProperty(widgetId)) {
var widgetData = this.contentWidgets[widgetId];
let widgetData = this.contentWidgets[widgetId];
widgetData.position = widget.getPosition();
if (this.hasView) {
this._view.layoutContentWidget(widgetData);
......@@ -324,9 +323,9 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public removeContentWidget(widget: editorBrowser.IContentWidget): void {
var widgetId = widget.getId();
let widgetId = widget.getId();
if (this.contentWidgets.hasOwnProperty(widgetId)) {
var widgetData = this.contentWidgets[widgetId];
let widgetData = this.contentWidgets[widgetId];
delete this.contentWidgets[widgetId];
if (this.hasView) {
this._view.removeContentWidget(widgetData);
......@@ -335,7 +334,7 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public addOverlayWidget(widget: editorBrowser.IOverlayWidget): void {
var widgetData: editorBrowser.IOverlayWidgetData = {
let widgetData: editorBrowser.IOverlayWidgetData = {
widget: widget,
position: widget.getPosition()
};
......@@ -352,9 +351,9 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public layoutOverlayWidget(widget: editorBrowser.IOverlayWidget): void {
var widgetId = widget.getId();
let widgetId = widget.getId();
if (this.overlayWidgets.hasOwnProperty(widgetId)) {
var widgetData = this.overlayWidgets[widgetId];
let widgetData = this.overlayWidgets[widgetId];
widgetData.position = widget.getPosition();
if (this.hasView) {
this._view.layoutOverlayWidget(widgetData);
......@@ -363,9 +362,9 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
public removeOverlayWidget(widget: editorBrowser.IOverlayWidget): void {
var widgetId = widget.getId();
let widgetId = widget.getId();
if (this.overlayWidgets.hasOwnProperty(widgetId)) {
var widgetData = this.overlayWidgets[widgetId];
let widgetData = this.overlayWidgets[widgetId];
delete this.overlayWidgets[widgetId];
if (this.hasView) {
this._view.removeOverlayWidget(widgetData);
......@@ -378,7 +377,7 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
// console.warn('Cannot change view zones on editor that is not attached to a model, since there is no view.');
return;
}
var hasChanges = this._view.change(callback);
let hasChanges = this._view.change(callback);
if (hasChanges) {
this.emit(editorCommon.EventType.ViewZonesChanged);
}
......@@ -410,12 +409,12 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
return null;
}
var position = this.model.validatePosition(rawPosition);
var helper = this._view.getCodeEditorHelper();
var layoutInfo = this._configuration.editor.layoutInfo;
let position = this.model.validatePosition(rawPosition);
let helper = this._view.getCodeEditorHelper();
let layoutInfo = this._configuration.editor.layoutInfo;
var top = helper.getVerticalOffsetForPosition(position.lineNumber, position.column) - helper.getScrollTop();
var left = helper.getOffsetForColumn(position.lineNumber, position.column) + layoutInfo.glyphMarginWidth + layoutInfo.lineNumbersWidth + layoutInfo.decorationsWidth - helper.getScrollLeft();
let top = helper.getVerticalOffsetForPosition(position.lineNumber, position.column) - helper.getScrollTop();
let left = helper.getOffsetForColumn(position.lineNumber, position.column) + layoutInfo.glyphMarginWidth + layoutInfo.lineNumbersWidth + layoutInfo.decorationsWidth - helper.getScrollLeft();
return {
top: top,
......@@ -506,7 +505,7 @@ export abstract class CodeEditorWidget extends CommonCodeEditor implements edito
}
protected _detachModel(): editorCommon.IModel {
var removeDomNode: HTMLElement = null;
let removeDomNode: HTMLElement = null;
if (this._view) {
this._view.dispose();
......@@ -634,9 +633,9 @@ export class CommandRunner implements editorCommon.ICommand {
});
// Merge operations that touch each other
var resultOps: editorCommon.ISingleEditOperation[] = [];
var previousOp = this._ops[0];
for (var i = 1; i < this._ops.length; i++) {
let resultOps: editorCommon.ISingleEditOperation[] = [];
let previousOp = this._ops[0];
for (let i = 1; i < this._ops.length; i++) {
if (previousOp.range.endLineNumber === this._ops[i].range.startLineNumber && previousOp.range.endColumn === this._ops[i].range.startColumn) {
// These operations are one after another and can be merged
previousOp.range = Range.plusRange(previousOp.range, this._ops[i].range);
......@@ -648,14 +647,14 @@ export class CommandRunner implements editorCommon.ICommand {
}
resultOps.push(previousOp);
for (var i = 0; i < resultOps.length; i++) {
for (let i = 0; i < resultOps.length; i++) {
builder.addEditOperation(Range.lift(resultOps[i].range), resultOps[i].text);
}
}
public computeCursorState(model: editorCommon.ITokenizedModel, helper: editorCommon.ICursorStateComputerData): Selection {
var inverseEditOperations = helper.getInverseEditOperations();
var srcRange = inverseEditOperations[inverseEditOperations.length - 1].range;
let inverseEditOperations = helper.getInverseEditOperations();
let srcRange = inverseEditOperations[inverseEditOperations.length - 1].range;
return new Selection(
srcRange.endLineNumber,
srcRange.endColumn,
......
......@@ -35,8 +35,8 @@ export class ReplaceCommand implements editorCommon.ICommand {
}
public computeCursorState(model: editorCommon.ITokenizedModel, helper: editorCommon.ICursorStateComputerData): Selection {
var inverseEditOperations = helper.getInverseEditOperations();
var srcRange = inverseEditOperations[0].range;
let inverseEditOperations = helper.getInverseEditOperations();
let srcRange = inverseEditOperations[0].range;
return new Selection(
srcRange.endLineNumber,
srcRange.endColumn,
......@@ -53,8 +53,8 @@ export class ReplaceCommandWithoutChangingPosition extends ReplaceCommand {
}
public computeCursorState(model: editorCommon.ITokenizedModel, helper: editorCommon.ICursorStateComputerData): Selection {
var inverseEditOperations = helper.getInverseEditOperations();
var srcRange = inverseEditOperations[0].range;
let inverseEditOperations = helper.getInverseEditOperations();
let srcRange = inverseEditOperations[0].range;
return new Selection(
srcRange.startLineNumber,
srcRange.startColumn,
......@@ -76,8 +76,8 @@ export class ReplaceCommandWithOffsetCursorState extends ReplaceCommand {
}
public computeCursorState(model: editorCommon.ITokenizedModel, helper: editorCommon.ICursorStateComputerData): Selection {
var inverseEditOperations = helper.getInverseEditOperations();
var srcRange = inverseEditOperations[0].range;
let inverseEditOperations = helper.getInverseEditOperations();
let srcRange = inverseEditOperations[0].range;
return new Selection(
srcRange.endLineNumber + this._lineNumberDeltaOffset,
srcRange.endColumn + this._columnDeltaOffset,
......
......@@ -22,9 +22,9 @@ export class ShiftCommand implements ICommand {
public static unshiftIndentCount(line: string, column: number, tabSize: number): number {
// Determine the visible column where the content starts
var contentStartVisibleColumn = CursorMoveHelper.visibleColumnFromColumn2(line, column, tabSize);
let contentStartVisibleColumn = CursorMoveHelper.visibleColumnFromColumn2(line, column, tabSize);
var desiredTabStop = CursorMoveHelper.prevTabColumn(contentStartVisibleColumn, tabSize);
let desiredTabStop = CursorMoveHelper.prevTabColumn(contentStartVisibleColumn, tabSize);
// The `desiredTabStop` is a multiple of `tabSize` => determine the number of indents
return desiredTabStop / tabSize;
......@@ -32,9 +32,9 @@ export class ShiftCommand implements ICommand {
public static shiftIndentCount(line: string, column: number, tabSize: number): number {
// Determine the visible column where the content starts
var contentStartVisibleColumn = CursorMoveHelper.visibleColumnFromColumn2(line, column, tabSize);
let contentStartVisibleColumn = CursorMoveHelper.visibleColumnFromColumn2(line, column, tabSize);
var desiredTabStop = CursorMoveHelper.nextTabColumn(contentStartVisibleColumn, tabSize);
let desiredTabStop = CursorMoveHelper.nextTabColumn(contentStartVisibleColumn, tabSize);
// The `desiredTabStop` is a multiple of `tabSize` => determine the number of indents
return desiredTabStop / tabSize;
......@@ -154,7 +154,7 @@ export class ShiftCommand implements ICommand {
public computeCursorState(model: ITokenizedModel, helper: ICursorStateComputerData): Selection {
if (this._useLastEditRangeForCursorEndPosition) {
var lastOp = helper.getInverseEditOperations()[0];
let lastOp = helper.getInverseEditOperations()[0];
return new Selection(lastOp.range.endLineNumber, lastOp.range.endColumn, lastOp.range.endLineNumber, lastOp.range.endColumn);
}
return helper.getTrackedSelection(this._selectionId);
......
......@@ -36,9 +36,9 @@ export class SurroundSelectionCommand implements ICommand {
}
public computeCursorState(model: ITokenizedModel, helper: ICursorStateComputerData): Selection {
var inverseEditOperations = helper.getInverseEditOperations();
var firstOperationRange = inverseEditOperations[0].range;
var secondOperationRange = inverseEditOperations[1].range;
let inverseEditOperations = helper.getInverseEditOperations();
let firstOperationRange = inverseEditOperations[0].range;
let secondOperationRange = inverseEditOperations[1].range;
return new Selection(
firstOperationRange.endLineNumber,
......
......@@ -20,9 +20,9 @@ export class TrimTrailingWhitespaceCommand implements editorCommon.ICommand {
}
public getEditOperations(model: editorCommon.ITokenizedModel, builder: editorCommon.IEditOperationBuilder): void {
var ops = trimTrailingWhitespace(model, []);
for (var i = 0, len = ops.length; i < len; i++) {
var op = ops[i];
let ops = trimTrailingWhitespace(model, []);
for (let i = 0, len = ops.length; i < len; i++) {
let op = ops[i];
builder.addEditOperation(op.range, op.text);
}
......@@ -48,29 +48,22 @@ export function trimTrailingWhitespace(model: editorCommon.ITextModel, cursors:
});
// Reduce multiple cursors on the same line and only keep the last one on the line
for (var i = cursors.length - 2; i >= 0; i--) {
for (let i = cursors.length - 2; i >= 0; i--) {
if (cursors[i].lineNumber === cursors[i + 1].lineNumber) {
// Remove cursor at `i`
cursors.splice(i, 1);
}
}
var r: editorCommon.IIdentifiedSingleEditOperation[] = [],
cursorIndex = 0,
cursorLen = cursors.length,
lineNumber: number,
lineCount: number,
lineContent: string,
minEditColumn: number,
maxLineColumn: number,
fromColumn: number,
// toColumn:number,
lastNonWhitespaceIndex: number;
for (lineNumber = 1, lineCount = model.getLineCount(); lineNumber <= lineCount; lineNumber++) {
lineContent = model.getLineContent(lineNumber);
maxLineColumn = lineContent.length + 1;
minEditColumn = 0;
let r: editorCommon.IIdentifiedSingleEditOperation[] = [];
let rLen = 0;
let cursorIndex = 0;
let cursorLen = cursors.length;
for (let lineNumber = 1, lineCount = model.getLineCount(); lineNumber <= lineCount; lineNumber++) {
let lineContent = model.getLineContent(lineNumber);
let maxLineColumn = lineContent.length + 1;
let minEditColumn = 0;
if (cursorIndex < cursorLen && cursors[cursorIndex].lineNumber === lineNumber) {
minEditColumn = cursors[cursorIndex].column;
......@@ -85,9 +78,9 @@ export function trimTrailingWhitespace(model: editorCommon.ITextModel, cursors:
continue;
}
lastNonWhitespaceIndex = strings.lastNonWhitespaceIndex(lineContent);
let lastNonWhitespaceIndex = strings.lastNonWhitespaceIndex(lineContent);
fromColumn = 0;
let fromColumn = 0;
if (lastNonWhitespaceIndex === -1) {
// Entire line is whitespace
fromColumn = 1;
......@@ -100,11 +93,11 @@ export function trimTrailingWhitespace(model: editorCommon.ITextModel, cursors:
}
fromColumn = Math.max(minEditColumn, fromColumn);
r.push(EditOperation.delete(new Range(
r[rLen++] = EditOperation.delete(new Range(
lineNumber, fromColumn,
lineNumber, maxLineColumn
)));
));
}
return r;
}
\ No newline at end of file
}
......@@ -33,7 +33,7 @@ import { CommandsRegistry } from 'vs/platform/commands/common/commands';
import EditorContextKeys = editorCommon.EditorContextKeys;
var EDITOR_ID = 0;
let EDITOR_ID = 0;
export abstract class CommonCodeEditor extends EventEmitter implements editorCommon.ICommonCodeEditor {
......
......@@ -338,7 +338,7 @@ class InternalEditorOptionsHelper {
private static _sanitizeScrollbarOpts(raw: editorCommon.IEditorScrollbarOptions, mouseWheelScrollSensitivity: number): editorCommon.InternalEditorScrollbarOptions {
var visibilityFromString = (visibility: string) => {
let visibilityFromString = (visibility: string) => {
switch (visibility) {
case 'hidden':
return ScrollbarVisibility.Hidden;
......
......@@ -101,10 +101,10 @@ export class ScopedLineTokens {
}
}
const enum IgnoreBracketsInTokens {
value = StandardTokenType.Comment | StandardTokenType.String | StandardTokenType.RegEx
}
export function ignoreBracketsInToken(standardTokenType: StandardTokenType): boolean {
return (
standardTokenType === StandardTokenType.Comment
|| standardTokenType === StandardTokenType.String
|| standardTokenType === StandardTokenType.RegEx
);
return (standardTokenType & IgnoreBracketsInTokens.value) !== 0;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册