From 5145f7158f3a02a78d3afb14aee881e97118b9e3 Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Sat, 28 Feb 2026 11:24:27 +0800 Subject: [PATCH] :art: Improve input compatibility on some Linux desktop systems https://github.com/siyuan-note/siyuan/issues/17113 Signed-off-by: Daniel <845765@qq.com> --- app/electron/main.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/app/electron/main.js b/app/electron/main.js index b77c226e6..0b6fa1f89 100644 --- a/app/electron/main.js +++ b/app/electron/main.js @@ -62,6 +62,23 @@ if (!app.requestSingleInstanceLock()) { return; } +if (process.platform === 'linux') { + const desktop = (process.env.XDG_CURRENT_DESKTOP || '').toUpperCase(); + const isChineseOS = [ + 'DDE', // 统信 + 'DEEPIN', // 统信 + 'UKUI', // 银河麒麟 + 'KYLIN', // 麒麟备用标识 + 'NEWSTART' // 中兴新支点 + ].some(key => desktop.includes(key)); + const isKylinFile = fs.existsSync('/etc/kylin-release'); + const isUosFile = fs.existsSync('/etc/uos-version'); + const isDeepinFile = fs.existsSync('/etc/deepin-release'); + if (isChineseOS || isKylinFile || isUosFile || isDeepinFile) { + app.commandLine.appendSwitch('ozone-platform', 'x11'); + } +} + try { firstOpen = !fs.existsSync(path.join(confDir, "workspace.json")); if (!fs.existsSync(confDir)) {