From 56284d69c3ec08a9db674c71474f2f9256770729 Mon Sep 17 00:00:00 2001 From: brook hong Date: Thu, 1 Feb 2024 13:34:19 +0800 Subject: [PATCH] upgrade lib pixi --- package.json | 26 +++++++++++++------------- src/nvim/lib/pixi.ts | 17 +++++++++-------- src/nvim/screen.ts | 16 +++++++--------- 3 files changed, 29 insertions(+), 30 deletions(-) diff --git a/package.json b/package.json index 014cd00df..8b7056115 100644 --- a/package.json +++ b/package.json @@ -56,19 +56,19 @@ }, "dependencies": { "@msgpack/msgpack": "^2.7.0", - "@pixi/app": "^6.2.1", - "@pixi/constants": "^6.2.1", - "@pixi/core": "^6.2.1", - "@pixi/display": "^6.2.1", - "@pixi/graphics": "^6.2.1", - "@pixi/math": "^6.2.1", - "@pixi/runner": "^6.2.1", - "@pixi/settings": "^6.2.1", - "@pixi/sprite": "^6.2.1", - "@pixi/ticker": "^6.2.1", - "@pixi/unsafe-eval": "^6.2.1", - "@pixi/utils": "^6.2.1", - "@pixi/extensions": "^6.2.1", + "@pixi/app": "^7.4.0", + "@pixi/constants": "^7.4.0", + "@pixi/core": "^7.4.0", + "@pixi/display": "^7.4.0", + "@pixi/graphics": "^7.4.0", + "@pixi/math": "^7.4.0", + "@pixi/runner": "^7.4.0", + "@pixi/settings": "^7.4.0", + "@pixi/sprite": "^7.4.0", + "@pixi/ticker": "^7.4.0", + "@pixi/unsafe-eval": "^7.4.0", + "@pixi/utils": "^7.4.0", + "@pixi/extensions": "^7.4.0", "ace-builds": "^1.4.12", "dompurify": "^2.3.1", "js-base64": "^3.7.2", diff --git a/src/nvim/lib/pixi.ts b/src/nvim/lib/pixi.ts index b980f63ee..e27a26ccc 100644 --- a/src/nvim/lib/pixi.ts +++ b/src/nvim/lib/pixi.ts @@ -1,13 +1,14 @@ // Customized minimal build for pixi.js // https://github.com/pixijs/pixi.js/blob/dev/bundles/pixi.js/src/index.ts -import { TickerPlugin } from '@pixi/ticker'; -import * as utils from '@pixi/utils'; -import { install } from '@pixi/unsafe-eval'; -import { ShaderSystem, Renderer, Texture, BatchRenderer } from '@pixi/core'; +import '@pixi/unsafe-eval' import { Application } from '@pixi/app'; +import { BatchRenderer, Renderer, Texture } from '@pixi/core'; +import { TickerPlugin } from '@pixi/ticker'; +export { Application, BatchRenderer, Renderer, Texture, TickerPlugin }; -export * from '@pixi/sprite'; -export * from '@pixi/display'; -export * from '@pixi/graphics'; -export { install, ShaderSystem, Application, TickerPlugin, utils, Renderer, Texture, BatchRenderer }; +export { Container } from '@pixi/display'; +export { Graphics } from '@pixi/graphics'; +export { Sprite } from '@pixi/sprite'; +export { extensions } from '@pixi/extensions'; +export { clearTextureCache, TextureCache } from '@pixi/utils'; diff --git a/src/nvim/screen.ts b/src/nvim/screen.ts index 99646c03e..0269b3b95 100644 --- a/src/nvim/screen.ts +++ b/src/nvim/screen.ts @@ -47,9 +47,7 @@ type Char = { const DEFAULT_FONT_FAMILY = 'monospace'; -PIXI.Renderer.registerPlugin('batch', PIXI.BatchRenderer); -PIXI.Application.registerPlugin(PIXI.TickerPlugin); -PIXI.install({ ShaderSystem: PIXI.ShaderSystem }); +PIXI.extensions.add(PIXI.BatchRenderer, PIXI.TickerPlugin); const screen = ({ settings, @@ -188,7 +186,7 @@ const screen = ({ ...windowPixelSize(), }); - screenEl.appendChild(pixi.view); + screenEl.appendChild((pixi.view as unknown) as Node); screenContainer.appendChild(screenEl); @@ -249,7 +247,7 @@ const screen = ({ charCanvas.height = charHeight; } - PIXI.utils.clearTextureCache(); + PIXI.clearTextureCache(); } screenEl.removeChild(char); }; @@ -308,7 +306,7 @@ const screen = ({ const getCharTexture = (char: string, hlId: number) => { const key = `${char}:${hlId}`; - if (!PIXI.utils.TextureCache[key]) { + if (!PIXI.TextureCache[key]) { const props = highlightTable[hlId].calculated; // @ts-expect-error getCharBitmap returns ImageBitmap that can be used as texture PIXI.Texture.addToCache(PIXI.Texture.from(getCharBitmap(char, props)), key); @@ -319,7 +317,7 @@ const screen = ({ const getBgTexture = (bgColor: string, j: number) => { const isLastCol = j === cols - 1; const key = `bg:${bgColor}:${isLastCol}`; - if (!PIXI.utils.TextureCache[key]) { + if (!PIXI.TextureCache[key]) { charCtx.fillStyle = bgColor; if (isLastCol) { charCtx.fillRect(0, 0, charWidth * 2, charHeight); @@ -466,7 +464,7 @@ const screen = ({ screenEl.style.background = highlightTable[0].calculated.bgColor; } - PIXI.utils.clearTextureCache(); + PIXI.clearTextureCache(); for (let i = 0; i <= rows; i += 1) { for (let j = 0; j <= cols; j += 1) { initChar(i, j); @@ -895,7 +893,7 @@ const screen = ({ if (requireRedraw) { measureCharSize(); - PIXI.utils.clearTextureCache(); + PIXI.clearTextureCache(); if (!isInitial) { resize(true); }