diff --git a/main/package.json b/main/package.json index dae842ad..b365341e 100644 --- a/main/package.json +++ b/main/package.json @@ -16,10 +16,10 @@ "test": "yarn run build-code && yarn node --experimental-vm-modules $(yarn bin jest)" }, "dependencies": { - "@nodegui/nodegui": "0.57.3", - "nodegui-plugin-font-icon": "0.2.4", - "nodegui-plugin-rich-text-delegate": "0.2.1", - "nodegui-plugin-style-tweaker": "0.2.1" + "@nodegui/nodegui": "0.58.0-rc2", + "nodegui-plugin-font-icon": "0.3.1", + "nodegui-plugin-rich-text-delegate": "0.3.0", + "nodegui-plugin-style-tweaker": "0.3.1" }, "devDependencies": { "@extraterm/extraterm-extension-api": "0.15.0", diff --git a/main/src/Window.ts b/main/src/Window.ts index 87a8bef2..212fbafa 100644 --- a/main/src/Window.ts +++ b/main/src/Window.ts @@ -84,6 +84,7 @@ export class Window implements Disposable { #tabBar: QTabBar = null; #contentStack: QStackedWidget = null; #lastConfigDpi = -1; + #lastConfigDpr = -1; #hamburgerMenuButton: QToolButton = null; #hamburgerMenu: QMenu = null; @@ -588,7 +589,10 @@ export class Window implements Disposable { ]; this.#lastConfigDpi = this.getDpi(); - const terminalFontSizePx = Math.round(this.#pointsToPx(config.terminalFontSize, this.#lastConfigDpi)); + this.#lastConfigDpr = this.getDpr(); + + const scaledFontSize = config.terminalFontSize * this.#lastConfigDpr; + const terminalFontSizePx = Math.round(this.#pointsToPx(scaledFontSize, this.#lastConfigDpi)); const terminalVisualConfig: TerminalVisualConfig = { cursorStyle: config.cursorStyle, @@ -602,6 +606,7 @@ export class Window implements Disposable { transparentBackground, useLigatures: config.terminalDisplayLigatures, ligatureMarker, + windowDpr: this.getDpr(), screenHeightHintPx: 1024, // FIXME screenWidthHintPx: 1024, // FIXME }; @@ -618,6 +623,12 @@ export class Window implements Disposable { return screen.logicalDotsPerInch(); } + getDpr(): number { + const window = this.#windowWidget; + const screen = window.isVisible() ? window.windowHandle().screen() : QApplication.primaryScreen(); + return screen.devicePixelRatio(); + } + async #handleConfigChangeEvent(event: ConfigChangeEvent): Promise { if (event.key !== GENERAL_CONFIG) { return; @@ -715,7 +726,7 @@ export class Window implements Disposable { }); this.#windowOpenState = WindowOpenState.Open; - if (this.getDpi() !== this.#lastConfigDpi) { + if (this.getDpi() !== this.#lastConfigDpi || this.getDpr() !== this.#lastConfigDpr) { this.#updateTerminalVisualConfig(); } this.#moveOnScreen(); diff --git a/main/src/terminal/Terminal.ts b/main/src/terminal/Terminal.ts index 3117a15d..237aca06 100644 --- a/main/src/terminal/Terminal.ts +++ b/main/src/terminal/Terminal.ts @@ -564,10 +564,11 @@ export class Terminal implements Tab, Disposable { const maxViewportWidth = maxViewportSize.width() + currentMargins.left + currentMargins.right; const maxContentWidth = maxViewportWidth - spacing - spacing - 2 * this.#uiStyle.getFrameMarginLeftRightPx(); - const columns = Math.floor(maxContentWidth / metrics.widthPx); - const rows = Math.floor(maxContentHeight / metrics.heightPx); + const dpr = this.#topContents.devicePixelRatio(); + const columns = Math.floor(maxContentWidth / (metrics.widthPx / dpr)); + const rows = Math.floor(maxContentHeight / (metrics.heightPx / dpr)); - const vGap = maxContentHeight % metrics.heightPx; + const vGap = maxContentHeight % (metrics.heightPx / dpr); const topGap = Math.floor(vGap / 2); const bottomGap = vGap - topGap; diff --git a/main/src/terminal/TerminalBlock.ts b/main/src/terminal/TerminalBlock.ts index 4be76f26..36c03600 100644 --- a/main/src/terminal/TerminalBlock.ts +++ b/main/src/terminal/TerminalBlock.ts @@ -291,22 +291,25 @@ export class TerminalBlock implements Block { materializedRows = dims.materializedRows; this.#columns = dims.cols; } - const newHeightPx = (materializedRows + this.#scrollback.length) * metrics.heightPx; + const dpr = this.#terminalVisualConfig.windowDpr; + const newHeightPx = (materializedRows + this.#scrollback.length) * metrics.heightPx / dpr; if (newHeightPx === this.#heightPx) { return; } - this.#widget.setMinimumSize(10 * metrics.widthPx, newHeightPx); + this.#widget.setMinimumSize(10 * metrics.widthPx / dpr, newHeightPx); this.#widget.setMaximumSize(16777215, newHeightPx); this.#heightPx = newHeightPx; } getCellWidthPx(): number { - return this.#fontMetrics.widthPx; + const dpr = this.#widget.devicePixelRatio(); + return this.#fontMetrics.widthPx / dpr; } getCellHeightPx(): number { - return this.#fontMetrics.heightPx; + const dpr = this.#widget.devicePixelRatio(); + return this.#fontMetrics.heightPx / dpr; } setEmulator(emulator: Term.Emulator): void { @@ -340,20 +343,28 @@ export class TerminalBlock implements Block { this.#widget.update(); } + #toRealPixels(logicalPx: number): number { + return this.#widget.devicePixelRatio() * logicalPx; + } + + #toLogicalPixels(logicalPx: number): number { + return logicalPx / this.#widget.devicePixelRatio(); + } + #handlePaintEvent(event: QPaintEvent): void { const paintRect = event.rect(); const metrics = this.#fontMetrics; const heightPx = metrics.heightPx; - const topRenderRow = Math.floor(paintRect.top() / heightPx); - const heightRows = Math.ceil(paintRect.height() / heightPx) + 1; + const topRenderRow = Math.floor(this.#toRealPixels(paintRect.top()) / heightPx); + const heightRows = Math.ceil(this.#toRealPixels(paintRect.height()) / heightPx) + 1; const painter = new QPainter(this.#widget); const cursorStyle = this.#terminalVisualConfig.cursorStyle; const bgRGBA = this.#terminalVisualConfig.palette[PALETTE_BG_INDEX]; - painter.fillRect(paintRect.left(), paintRect.top(), paintRect.width(), paintRect.height(), RGBAToQColor(bgRGBA)); + painter.fillRectF(paintRect.left(), paintRect.top(), paintRect.width(), paintRect.height(), RGBAToQColor(bgRGBA)); // Render any lines from the scrollback const scrollbackLength = this.#scrollback.length; @@ -388,8 +399,9 @@ export class TerminalBlock implements Block { #renderSelection(painter: QPainter, topRenderRow: number, heightRows: number): void { const metrics = this.#fontMetrics; - const heightPx = metrics.heightPx; - const widthPx = metrics.widthPx; + const dpr = this.#widget.devicePixelRatio(); + const heightPx = metrics.heightPx / dpr; + const widthPx = metrics.widthPx / dpr; let selectionStart = this.#selectionStart; let selectionEnd = this.#selectionEnd; @@ -416,7 +428,7 @@ export class TerminalBlock implements Block { if (i === selectionStart.y) { if (selectionStart.y === selectionEnd.y) { // Small selection contained within one row. - painter.fillRect(selectionStart.x*widthPx, selectionStart.y*heightPx, + painter.fillRectF(selectionStart.x*widthPx, selectionStart.y*heightPx, (selectionEnd.x - selectionStart.x) * widthPx, heightPx, selectionQColor); } else { // Top row of the selection. @@ -424,7 +436,7 @@ export class TerminalBlock implements Block { if (i < this.#scrollback.length) { rowLength = this.#scrollback[i].width; } - painter.fillRect(selectionStart.x*widthPx, selectionStart.y*heightPx, + painter.fillRectF(selectionStart.x*widthPx, selectionStart.y*heightPx, (rowLength - selectionStart.x) * widthPx, heightPx, selectionQColor); } } else { @@ -434,10 +446,10 @@ export class TerminalBlock implements Block { if (i < this.#scrollback.length) { rowLength = this.#scrollback[i].width; } - painter.fillRect(0, i*heightPx, rowLength*widthPx, heightPx, selectionQColor); + painter.fillRectF(0, i*heightPx, rowLength*widthPx, heightPx, selectionQColor); } else { // The last row of a multi-row selection. - painter.fillRect(0, i*heightPx, selectionEnd.x*widthPx, heightPx, selectionQColor); + painter.fillRectF(0, i*heightPx, selectionEnd.x*widthPx, heightPx, selectionQColor); } } } @@ -488,7 +500,9 @@ export class TerminalBlock implements Block { hoverLinkID = line.getLinkIDByURL(this.#hoveredURL, this.#hoveredGroup); } - let px = 0; + const dpr = this.#toRealPixels(1); + + let xPx = 0; for (const column of normalizedCellIterator(line, normalizedCell)) { const codePoint = normalizedCell.codePoint; if (codePoint !== 0) { @@ -521,10 +535,12 @@ export class TerminalBlock implements Block { } else { glyph = this.#fontAtlas.loadCodePoint(codePoint, style, fontIndex, fgRGBA, bgRGBA); } - painter.drawImage(px, y, qimage, glyph.xPixels + normalizedCell.segment * glyph.widthPx, glyph.yPixels, - glyph.widthPx, heightPx); + qimage.setDevicePixelRatio(dpr); + const sourceX = glyph.xPixels + normalizedCell.segment * glyph.widthPx; + const sourceY = glyph.yPixels; + painter.drawImageF(xPx / dpr, y / dpr, qimage, sourceX, sourceY, glyph.widthPx, heightPx); } - px += widthPx; + xPx += widthPx; } } @@ -553,8 +569,8 @@ export class TerminalBlock implements Block { const dim = this.#emulator.getDimensions(); const metrics= this.#fontMetrics; - const cellHeightPx = metrics.heightPx; - const cellWidthPx = metrics.widthPx; + const cellHeightPx = this.#toLogicalPixels(metrics.heightPx); + const cellWidthPx = this.#toLogicalPixels(metrics.widthPx); const xPx = dim.cursorX * cellWidthPx; const yPx = (dim.cursorY + this.#scrollback.length) * cellHeightPx; @@ -568,8 +584,8 @@ export class TerminalBlock implements Block { } const metrics= this.#fontMetrics; - const cellHeightPx = metrics.heightPx; - const cellWidthPx = metrics.widthPx; + const cellHeightPx = this.#toLogicalPixels(metrics.heightPx); + const cellWidthPx = this.#toLogicalPixels(metrics.widthPx); const cursorColor = RGBAToQColor(this.#terminalVisualConfig.palette[PALETTE_CURSOR_INDEX]); const pen = new QPen(); @@ -585,25 +601,25 @@ export class TerminalBlock implements Block { if (line.getStyle(i) & STYLE_MASK_CURSOR) { switch (cursorStyle) { case CursorStyle.BLOCK_OUTLINE: - painter.drawRect(i * cellWidthPx + outlinePenWidthPx, y + outlinePenWidthPx, + painter.drawRectF(i * cellWidthPx + outlinePenWidthPx, y + outlinePenWidthPx, cellWidthPx - 2 * outlinePenWidthPx, cellHeightPx - 2 * outlinePenWidthPx); break; case CursorStyle.UNDERLINE: - painter.fillRect(i * cellWidthPx, y + cellHeightPx-3, cellWidthPx, 3, cursorColor); + painter.fillRectF(i * cellWidthPx, y + cellHeightPx-3, cellWidthPx, 3, cursorColor); break; case CursorStyle.UNDERLINE_OUTLINE: - painter.drawRect(i * cellWidthPx + outlinePenWidthPx, y + cellHeightPx - 2*outlinePenWidthPx, + painter.drawRectF(i * cellWidthPx + outlinePenWidthPx, y + cellHeightPx - 2*outlinePenWidthPx, cellWidthPx-outlinePenWidthPx, 2); break; case CursorStyle.BEAM: - painter.fillRect(i * cellWidthPx, y, 2, cellHeightPx, cursorColor); + painter.fillRectF(i * cellWidthPx, y, 2, cellHeightPx, cursorColor); break; case CursorStyle.BEAM_OUTLINE: - painter.drawRect(i * cellWidthPx + outlinePenWidthPx, + painter.drawRectF(i * cellWidthPx + outlinePenWidthPx, y + outlinePenWidthPx, 2, cellHeightPx - outlinePenWidthPx); break; @@ -692,19 +708,22 @@ export class TerminalBlock implements Block { } #pixelToRowColumnEdge(x: number, y: number): TerminalCoord { - const gridY = Math.floor(y / this.#fontMetrics.heightPx); - const gridX = Math.round(x / this.#fontMetrics.widthPx); + const dpr = this.#widget.devicePixelRatio(); + const gridY = Math.floor(y / (this.#fontMetrics.heightPx / dpr)); + const gridX = Math.round(x / (this.#fontMetrics.widthPx / dpr)); return { x: gridX, y: gridY }; } pixelPointToCell(x: number, y: number): TerminalCoord { - const gridY = Math.floor(y / this.#fontMetrics.heightPx); - const gridX = Math.floor(x / this.#fontMetrics.widthPx); + const dpr = this.#widget.devicePixelRatio(); + const gridY = Math.floor(y / (this.#fontMetrics.heightPx / dpr)); + const gridX = Math.floor(x / (this.#fontMetrics.widthPx / dpr)); return { x: gridX, y: gridY }; } rowToPixel(rowNumber: number): number { - return this.#fontMetrics.heightPx * rowNumber; + const dpr = this.#widget.devicePixelRatio(); + return this.#fontMetrics.heightPx * rowNumber * dpr; } #handleMouseButtonRelease(event: QMouseEvent): void { diff --git a/main/src/terminal/TerminalVisualConfig.ts b/main/src/terminal/TerminalVisualConfig.ts index db1cb5bc..8433e982 100644 --- a/main/src/terminal/TerminalVisualConfig.ts +++ b/main/src/terminal/TerminalVisualConfig.ts @@ -21,6 +21,7 @@ export interface TerminalVisualConfig { transparentBackground: boolean; useLigatures: boolean; ligatureMarker: LigatureMarker; + windowDpr: number; screenWidthHintPx: number; screenHeightHintPx: number; diff --git a/package.json b/package.json index 338f770c..f3769948 100644 --- a/package.json +++ b/package.json @@ -28,9 +28,9 @@ "esversion": 6 }, "resolutions": { - "@types/node": "16.4.0", + "@types/node": "18.11.18", "typescript": "4.7.4", - "@nodegui/nodegui": "0.57.3", + "@nodegui/nodegui": "0.58.0-rc2", "7zip-bin": "5.1.1" }, "private": true, @@ -69,9 +69,9 @@ ] }, "dependencies": { - "@nodegui/nodegui": "0.57.3", - "node-gyp": "^8.3.0", - "qode": "^0.1.0" + "@nodegui/nodegui": "0.58.0-rc2", + "@nodegui/qode": "18.12.1-rc1", + "node-gyp": "^8.3.0" }, "devDependencies": { "@yarnpkg/parsers": "2.5.0-rc.7", diff --git a/packages/extraterm-char-render-canvas/package.json b/packages/extraterm-char-render-canvas/package.json index b4f11860..632db7a3 100644 --- a/packages/extraterm-char-render-canvas/package.json +++ b/packages/extraterm-char-render-canvas/package.json @@ -21,7 +21,7 @@ "run": "false" }, "dependencies": { - "@nodegui/nodegui": "0.57.3", + "@nodegui/nodegui": "0.58.0-rc2", "extraterm-char-cell-line": "1.0.0", "extraterm-color-utilities": "1.0.0", "extraterm-data-structures": "1.0.0", diff --git a/packages/extraterm-char-render-canvas/src/font_atlas/FontAtlasBase.ts b/packages/extraterm-char-render-canvas/src/font_atlas/FontAtlasBase.ts index 7b743711..eeae1a2b 100644 --- a/packages/extraterm-char-render-canvas/src/font_atlas/FontAtlasBase.ts +++ b/packages/extraterm-char-render-canvas/src/font_atlas/FontAtlasBase.ts @@ -1,7 +1,7 @@ /** * Copyright 2021 Simon Edwards */ -import { QColor, QFont, QFontMetrics, QFontWeight, QImage, QImageFormat, QPainter, QPainterPath, QPen } from "@nodegui/nodegui"; +import { QApplication, QColor, QFont, QFontMetrics, QFontWeight, QImage, QImageFormat, QPainter, QPainterPath, QPen } from "@nodegui/nodegui"; import { StyleCode, STYLE_MASK_BOLD, STYLE_MASK_ITALIC, STYLE_MASK_STRIKETHROUGH, STYLE_MASK_UNDERLINE, STYLE_MASK_OVERLINE, STYLE_MASK_HYPERLINK, STYLE_MASK_HYPERLINK_HIGHLIGHT, UNDERLINE_STYLE_NORMAL, @@ -102,7 +102,6 @@ export abstract class FontAtlasBase { this._pageImageHeight = this._atlasHeightInCells * (this._metrics.heightPx + this._safetyPadding * 2); this._pageImage = new QImage(this._pageImageWidth, this._pageImageHeight, QImageFormat.RGB32); - this._initializeSlots(); this._painter = new QPainter(); //{alpha: this._transparentBackground}); @@ -195,6 +194,7 @@ export abstract class FontAtlasBase { fgRGBA: number, bgRGBA: number, xPx: number, yPx: number, widthPx: number, widthInCells: number): CG { const painter = this._painter; + this._pageImage.setDevicePixelRatio(1); painter.begin(this._pageImage); painter.save(); diff --git a/packages/extraterm-extension-api/package.json b/packages/extraterm-extension-api/package.json index 7eba90df..59e22d36 100644 --- a/packages/extraterm-extension-api/package.json +++ b/packages/extraterm-extension-api/package.json @@ -34,6 +34,6 @@ "typescript": "4.7.4" }, "peerDependencies": { - "@nodegui/nodegui": "0.57.3" + "@nodegui/nodegui": "0.58.0-rc2" } } diff --git a/packages/extraterm-timeoutqt/package.json b/packages/extraterm-timeoutqt/package.json index e2825e16..9550ecf8 100644 --- a/packages/extraterm-timeoutqt/package.json +++ b/packages/extraterm-timeoutqt/package.json @@ -12,7 +12,7 @@ "url": "git://github.com/sedwards2009/extraterm.git" }, "dependencies": { - "@nodegui/nodegui": "0.57.3" + "@nodegui/nodegui": "0.58.0-rc2" }, "devDependencies": { "eslint": "8.13.0", diff --git a/packages/qt-construct/package.json b/packages/qt-construct/package.json index 9d63d070..7939332c 100644 --- a/packages/qt-construct/package.json +++ b/packages/qt-construct/package.json @@ -19,10 +19,10 @@ "lint-strict": "eslint --max-warnings 1 \"src/**/*.ts\"" }, "peerDependencies": { - "@nodegui/nodegui": "0.57.3" + "@nodegui/nodegui": "0.58.0-rc2" }, "devDependencies": { - "@nodegui/nodegui": "0.57.3", + "@nodegui/nodegui": "0.58.0-rc2", "eslint": "8.13.0", "eslint-config-extraterm": "1.0.0", "eslint-plugin-unicorn": "42.0.0", diff --git a/yarn.lock b/yarn.lock index 31615143..2bbd7b06 100644 --- a/yarn.lock +++ b/yarn.lock @@ -450,7 +450,7 @@ __metadata: typedoc: ^0.22.3 typescript: 4.7.4 peerDependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 languageName: unknown linkType: soft @@ -785,12 +785,12 @@ __metadata: languageName: node linkType: hard -"@nodegui/nodegui@npm:0.57.3": - version: 0.57.3 - resolution: "@nodegui/nodegui@npm:0.57.3" +"@nodegui/nodegui@npm:0.58.0-rc2": + version: 0.58.0-rc2 + resolution: "@nodegui/nodegui@npm:0.58.0-rc2" dependencies: "@nodegui/artifact-installer": ^1.1.0 - "@nodegui/qode": ^16.4.3 + "@nodegui/qode": ^18.12.1-rc1 cmake-js: ^6.2.1 cross-env: ^7.0.3 cuid: ^2.1.8 @@ -802,20 +802,20 @@ __metadata: tar: ^6.0.1 bin: qode: scripts/qode.js - checksum: 7d2ae225b2340ad694615f91450fbfd894a2bad86706a8faa445c09691f04cde88978fb4dc2eee84dfaa7a1b3a9756558d5ed7530d79befba1629dcab7af3938 + checksum: 0a30700e0339c7311a2a46de119fecdb4aa5af55a7a11f7d1bdaf8f32faedeae6e9b8e8186bf9bd6352d8e42c2664d7dba117eec3d7155b39cb5080a1d6574d9 languageName: node linkType: hard -"@nodegui/qode@npm:^16.4.3": - version: 16.4.3 - resolution: "@nodegui/qode@npm:16.4.3" +"@nodegui/qode@npm:18.12.1-rc1, @nodegui/qode@npm:^18.12.1-rc1": + version: 18.12.1-rc1 + resolution: "@nodegui/qode@npm:18.12.1-rc1" dependencies: env-paths: ^2.2.1 make-dir: ^3.1.0 node-fetch: ^2.6.1 progress: ^2.0.3 tar: ^6.1.6 - checksum: c3890727939e138dd86028c156bd495506a2599861ef542ace0c50556c9f5e58eedebed4f4750fd0e7e9f2c28336b17f6ca580fb4af56e8268f0baf91f232b8f + checksum: 9376766d8b3e0e3f60a4c05ffd1f3126c4c44eb7dd33d3d789e310fc389497906c5568a57c22e121e1f804515424e4b4fe585736bfc05c1b8170e63bd3733093 languageName: node linkType: hard @@ -1098,10 +1098,10 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:16.4.0": - version: 16.4.0 - resolution: "@types/node@npm:16.4.0" - checksum: 9107dbdd9b7ad9deacc1bcabdf7205ea512bbf5ffe982f2b8a0d8ad776296d610e7c52363f2d62ba5a87f7547619df4bd66319ac487641d519ae52d3867743b6 +"@types/node@npm:18.11.18": + version: 18.11.18 + resolution: "@types/node@npm:18.11.18" + checksum: 03f17f9480f8d775c8a72da5ea7e9383db5f6d85aa5fefde90dd953a1449bd5e4ffde376f139da4f3744b4c83942166d2a7603969a6f8ea826edfb16e6e3b49d languageName: node linkType: hard @@ -4095,7 +4095,7 @@ __metadata: version: 0.0.0-use.local resolution: "extraterm-char-render-canvas@workspace:packages/extraterm-char-render-canvas" dependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 "@types/node": ^16.4.0 eslint: 8.13.0 eslint-config-extraterm: 1.0.0 @@ -4254,7 +4254,7 @@ __metadata: version: 0.0.0-use.local resolution: "extraterm-timeoutqt@workspace:packages/extraterm-timeoutqt" dependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 eslint: 8.13.0 eslint-config-extraterm: 1.0.0 eslint-plugin-unicorn: 42.0.0 @@ -4305,7 +4305,8 @@ __metadata: version: 0.0.0-use.local resolution: "extraterm@workspace:." dependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 + "@nodegui/qode": 18.12.1-rc1 "@yarnpkg/parsers": 2.5.0-rc.7 commander: ^9.4.0 extraterm-uuid: 1.0.0 @@ -4315,7 +4316,6 @@ __metadata: jest: 27.5.1 modclean: 3.0.0-beta.1 node-gyp: ^8.3.0 - qode: ^0.1.0 readdirp: 3.6.0 shelljs: ^0.8.5 shx: ^0.3.4 @@ -6808,7 +6808,7 @@ __metadata: resolution: "main@workspace:main" dependencies: "@extraterm/extraterm-extension-api": 0.15.0 - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 "@types/dompurify": ^2.0.1 "@types/he": ^1.1.1 "@types/lodash-es": 4.17.6 @@ -6851,9 +6851,9 @@ __metadata: lodash-es: 4.17.21 lru-cache: ^4.1.3 mime-types: ^2.1.21 - nodegui-plugin-font-icon: 0.2.4 - nodegui-plugin-rich-text-delegate: 0.2.1 - nodegui-plugin-style-tweaker: 0.2.1 + nodegui-plugin-font-icon: 0.3.1 + nodegui-plugin-rich-text-delegate: 0.3.0 + nodegui-plugin-style-tweaker: 0.3.1 open: ^8.2.1 opentype.js: ^1.3.1 performance-now: 2.1.0 @@ -7528,39 +7528,39 @@ __metadata: languageName: node linkType: hard -"nodegui-plugin-font-icon@npm:0.2.4": - version: 0.2.4 - resolution: "nodegui-plugin-font-icon@npm:0.2.4" +"nodegui-plugin-font-icon@npm:0.3.1": + version: 0.3.1 + resolution: "nodegui-plugin-font-icon@npm:0.3.1" dependencies: "@nodegui/artifact-installer": ^1.1.0 - "@nodegui/nodegui": ^0.53.0 + "@nodegui/nodegui": ^0.58.0-rc1 node-addon-api: ^3.0.0 tar: ^6.0.1 - checksum: 6c905ec1e2e228c03adaa82e70cb16f120f9432fb9a0f1329585dc27b04fe5dc22f94c8fe25a312ef94cf50815d94f8b7f3d3c922cc6280313d6951988ca30d6 + checksum: 2ee53d06cbe303d9c64a267e585f25f385692e0b061b2d14387a99bdc090d5c1ecab5edaf6eefbbc06e9a3937ad4c8d72ac9b3f7d6bd6e6b57ad0da46fbae10e languageName: node linkType: hard -"nodegui-plugin-rich-text-delegate@npm:0.2.1": - version: 0.2.1 - resolution: "nodegui-plugin-rich-text-delegate@npm:0.2.1" +"nodegui-plugin-rich-text-delegate@npm:0.3.0": + version: 0.3.0 + resolution: "nodegui-plugin-rich-text-delegate@npm:0.3.0" dependencies: "@nodegui/artifact-installer": ^1.1.0 - "@nodegui/nodegui": ^0.54.0 + "@nodegui/nodegui": ^0.58.0-rc1 node-addon-api: ^3.0.0 tar: ^6.0.1 - checksum: add8849d4dec61aeaad3f17960323cd2b7d4ee32669c6e9543a9f73ffa246dad6afce67c887bb0a6ff6f02630a377ab962189e9090072ce920d0a314d5fca588 + checksum: c02a1cc306da2c94c8517870901ed1f571bf47a45449954ecac8d31cd6f430ba909fdccac2dad45372a13ac2a7f9501783b90d6fb3b1f51f78a3257c710d7ddc languageName: node linkType: hard -"nodegui-plugin-style-tweaker@npm:0.2.1": - version: 0.2.1 - resolution: "nodegui-plugin-style-tweaker@npm:0.2.1" +"nodegui-plugin-style-tweaker@npm:0.3.1": + version: 0.3.1 + resolution: "nodegui-plugin-style-tweaker@npm:0.3.1" dependencies: "@nodegui/artifact-installer": ^1.1.0 - "@nodegui/nodegui": ^0.57.0 + "@nodegui/nodegui": ^0.58.0-rc1 node-addon-api: ^3.0.0 tar: ^6.0.1 - checksum: 21cea5195b5b3f26a6be62b5e2eb7cb39bb9bc9879ce6bb86662bda843cdb803e4091f12cac33e05f8f8e8692f8c492d97ec9c44359908b1edf5c5c699e40879 + checksum: 9d9f72e4c1756d639e7453c08f6599bbaa0021457b5b8f188b6f01fbc3209d7594f20ea56dc7d1847d8960de29e1fcdcbaf7454c8f6f89688b512fc0a27deec2 languageName: node linkType: hard @@ -8511,13 +8511,6 @@ __metadata: languageName: node linkType: hard -"qode@npm:^0.1.0": - version: 0.1.0 - resolution: "qode@npm:0.1.0" - checksum: b0e98b82f2e1e599187110ab8bcc0e22a3e15f8b09101721ad706252e035d320aeeb1e5b2cf3115f3049d28c89f909b5b54e930822f56a4bf7a6c98bec422c3c - languageName: node - linkType: hard - "qs@npm:6.3.3": version: 6.3.3 resolution: "qs@npm:6.3.3" @@ -8529,14 +8522,14 @@ __metadata: version: 0.0.0-use.local resolution: "qt-construct@workspace:packages/qt-construct" dependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 eslint: 8.13.0 eslint-config-extraterm: 1.0.0 eslint-plugin-unicorn: 42.0.0 shelljs: 0.8.5 typescript: 4.7.4 peerDependencies: - "@nodegui/nodegui": 0.57.3 + "@nodegui/nodegui": 0.58.0-rc2 languageName: unknown linkType: soft