diff --git a/package-lock.json b/package-lock.json index 830c2412e..5dbaf95bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "cookie-parser": "^1.4.7", "croppie": "^2.5.0", "dragula": "3.7.2", - "drawio": "github:cryptpad/drawio-npm#npm-29.6.7+1", + "drawio": "github:cryptpad/drawio-npm#npm-29.6.7+3", "express": "~4.22.1", "file-saver": "1.3.1", "fs-extra": "^7.0.0", @@ -1900,8 +1900,8 @@ } }, "node_modules/drawio": { - "version": "29.6.7+1", - "resolved": "git+ssh://git@github.com/cryptpad/drawio-npm.git#9da41bba34dd5226a3b7147c8974433523970db3" + "version": "29.6.7+3", + "resolved": "git+ssh://git@github.com/cryptpad/drawio-npm.git#c3493636b4f3a65d9f068245a968887fd1332326" }, "node_modules/dunder-proto": { "version": "1.0.1", diff --git a/package.json b/package.json index 225c12eda..1061d6d47 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "cookie-parser": "^1.4.7", "croppie": "^2.5.0", "dragula": "3.7.2", - "drawio": "github:cryptpad/drawio-npm#npm-29.6.7+1", + "drawio": "github:cryptpad/drawio-npm#npm-29.6.7+3", "express": "~4.22.1", "file-saver": "1.3.1", "fs-extra": "^7.0.0", diff --git a/www/diagram/inner.js b/www/diagram/inner.js index df456c45c..8c3c23f5c 100644 --- a/www/diagram/inner.js +++ b/www/diagram/inner.js @@ -196,6 +196,10 @@ define([ parameters.set('chrome', '1'); parameters.set('grid', '1'); } + checkDefaultTheme(function(theme) { + var defaultTheme = theme; + parameters.set('ui', defaultTheme); + }); drawioFrame.src = ApiConfig.httpSafeOrigin + '/components/drawio/src/main/webapp/index.html?' + parameters; }); @@ -203,18 +207,8 @@ define([ // starting the CryptPad framework framework.start(); - var loadDiagram = function () { - checkDefaultTheme(function(theme) { - var defaultTheme = theme; - parameters.set('ui', defaultTheme); - drawioFrame.src = ApiConfig.httpSafeOrigin + '/components/drawio/src/main/webapp/index.html?' + parameters; - }); - }; - window.addEventListener("message", (event) => { - if (event.data?.q === 'EV_METADATA_UPDATE') { - loadDiagram(); - } else if (event.source === drawioFrame.contentWindow) { + if (event.source === drawioFrame.contentWindow) { var data = JSON.parse(event.data); var eventType = data.event; var handler = drawioHandlers[eventType];