mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-15 18:46:36 -05:00
* Fix initial build breaks from 1.67 merge (#2514) * Update yarn lock files * Update build scripts * Fix tsconfig * Build breaks * WIP * Update yarn lock files * Misc breaks * Updates to package.json * Breaks * Update yarn * Fix breaks * Breaks * Build breaks * Breaks * Breaks * Breaks * Breaks * Breaks * Missing file * Breaks * Breaks * Breaks * Breaks * Breaks * Fix several runtime breaks (#2515) * Missing files * Runtime breaks * Fix proxy ordering issue * Remove commented code * Fix breaks with opening query editor * Fix post merge break * Updates related to setup build and other breaks (#2516) * Fix bundle build issues * Update distro * Fix distro merge and update build JS files * Disable pipeline steps * Remove stats call * Update license name * Make new RPM dependencies a warning * Fix extension manager version checks * Update JS file * Fix a few runtime breaks * Fixes * Fix runtime issues * Fix build breaks * Update notebook tests (part 1) * Fix broken tests * Linting errors * Fix hygiene * Disable lint rules * Bump distro * Turn off smoke tests * Disable integration tests * Remove failing "activate" test * Remove failed test assertion * Disable other broken test * Disable query history tests * Disable extension unit tests * Disable failing tasks
77 lines
2.1 KiB
TypeScript
77 lines
2.1 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import { FastDomNode } from 'vs/base/browser/fastDomNode';
|
|
import { RenderingContext, RestrictedRenderingContext } from 'vs/editor/browser/view/renderingContext';
|
|
import { ViewContext } from 'vs/editor/common/viewModel/viewContext';
|
|
import { ViewEventHandler } from 'vs/editor/common/viewEventHandler';
|
|
|
|
export abstract class ViewPart extends ViewEventHandler {
|
|
|
|
_context: ViewContext;
|
|
|
|
constructor(context: ViewContext) {
|
|
super();
|
|
this._context = context;
|
|
this._context.addEventHandler(this);
|
|
}
|
|
|
|
public override dispose(): void {
|
|
this._context.removeEventHandler(this);
|
|
super.dispose();
|
|
}
|
|
|
|
public abstract prepareRender(ctx: RenderingContext): void;
|
|
public abstract render(ctx: RestrictedRenderingContext): void;
|
|
}
|
|
|
|
export const enum PartFingerprint {
|
|
None,
|
|
ContentWidgets,
|
|
OverflowingContentWidgets,
|
|
OverflowGuard,
|
|
OverlayWidgets,
|
|
ScrollableElement,
|
|
TextArea,
|
|
ViewLines,
|
|
Minimap
|
|
}
|
|
|
|
export class PartFingerprints {
|
|
|
|
public static write(target: Element | FastDomNode<HTMLElement>, partId: PartFingerprint) {
|
|
target.setAttribute('data-mprt', String(partId));
|
|
}
|
|
|
|
public static read(target: Element): PartFingerprint {
|
|
const r = target.getAttribute('data-mprt');
|
|
if (r === null) {
|
|
return PartFingerprint.None;
|
|
}
|
|
return parseInt(r, 10);
|
|
}
|
|
|
|
public static collect(child: Element | null, stopAt: Element): Uint8Array {
|
|
const result: PartFingerprint[] = [];
|
|
let resultLen = 0;
|
|
|
|
while (child && child !== document.body) {
|
|
if (child === stopAt) {
|
|
break;
|
|
}
|
|
if (child.nodeType === child.ELEMENT_NODE) {
|
|
result[resultLen++] = this.read(child);
|
|
}
|
|
child = child.parentElement;
|
|
}
|
|
|
|
const r = new Uint8Array(resultLen);
|
|
for (let i = 0; i < resultLen; i++) {
|
|
r[i] = result[resultLen - i - 1];
|
|
}
|
|
return r;
|
|
}
|
|
}
|