Compare commits

..

20 Commits

Author SHA1 Message Date
R Midhun Suresh
067e8e27c1 Set boolean to false when exit is cancelled 2026-02-05 13:32:51 +05:30
R Midhun Suresh
2766333e8a Fix issues with quit logic 2026-02-05 13:13:11 +05:30
ElementRobot
7a00e61675 Merge pull request #2839 from element-hq/actions/localazy-download
Localazy Download
2026-02-04 11:30:25 +01:00
t3chguy
d4ad12300e [create-pull-request] automated change 2026-02-04 06:20:16 +00:00
David Baker
a16ddf7f0d Merge pull request #2836 from element-hq/renovate/electron
Update electron
2026-02-03 17:04:57 +00:00
David Baker
f9a1855bbd Merge pull request #2833 from element-hq/renovate/rust-bullseye
Update rust:bullseye Docker digest to 3ebcc2d
2026-02-03 17:02:44 +00:00
David Baker
0bd5657bab Merge pull request #2831 from element-hq/renovate/actions-setup-python-digest
Update actions/setup-python digest to a309ff8
2026-02-03 16:28:49 +00:00
David Baker
4828e73fe6 Merge pull request #2837 from element-hq/renovate/playwright
Update playwright to v1.58.1
2026-02-03 16:15:01 +00:00
David Baker
97b1df6d4e Merge pull request #2835 from element-hq/renovate/matrix-org
Update dependency matrix-web-i18n to v3.6.0
2026-02-03 16:13:40 +00:00
David Baker
b15ec07272 Merge pull request #2834 from element-hq/renovate/npm-minor-patch
Update npm non-major dependencies
2026-02-03 16:13:12 +00:00
David Baker
f2de2c4503 Merge pull request #2832 from element-hq/renovate/docker
Update docker/login-action digest to 3227f53
2026-02-03 16:11:33 +00:00
David Baker
16e1b10278 Merge pull request #2830 from element-hq/renovate/actions-cache-digest
Update actions/cache digest to cdf6c1f
2026-02-03 15:55:10 +00:00
renovate[bot]
dfd8647ad1 Update playwright to v1.58.1 2026-02-03 15:17:49 +00:00
renovate[bot]
a175dc7ec4 Update electron 2026-02-03 15:17:37 +00:00
renovate[bot]
150f4f7a7d Update dependency matrix-web-i18n to v3.6.0 2026-02-03 15:17:20 +00:00
renovate[bot]
e1da99ee8b Update npm non-major dependencies 2026-02-03 15:17:07 +00:00
renovate[bot]
406a1c9883 Update rust:bullseye Docker digest to 3ebcc2d 2026-02-03 15:16:45 +00:00
renovate[bot]
717b7ca725 Update docker/login-action digest to 3227f53 2026-02-03 15:16:39 +00:00
renovate[bot]
e01f598138 Update actions/setup-python digest to a309ff8 2026-02-03 15:16:32 +00:00
renovate[bot]
8915b008f7 Update actions/cache digest to cdf6c1f 2026-02-03 15:16:25 +00:00
10 changed files with 478 additions and 469 deletions

View File

@@ -116,7 +116,7 @@ jobs:
- name: Cache .hak
id: cache
uses: actions/cache@8b402f58fbc84540c8b491a91e594a4576fec3d7 # v5
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
with:
key: ${{ runner.os }}-${{ github.ref_name }}-${{ inputs.sqlcipher }}-${{ inputs.arch }}-${{ hashFiles('hakHash', 'electronVersion', 'dockerbuild/*') }}
path: |

View File

@@ -90,7 +90,7 @@ jobs:
- name: Cache .hak
id: cache
uses: actions/cache@8b402f58fbc84540c8b491a91e594a4576fec3d7 # v5
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
with:
key: ${{ runner.os }}-${{ hashFiles('hakHash', 'electronVersion') }}
path: |
@@ -105,7 +105,7 @@ jobs:
rustup target add x86_64-apple-darwin
# M1 macos-14 comes without Python preinstalled
- uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
with:
python-version: "3.13"

View File

@@ -119,7 +119,7 @@ jobs:
- name: Cache .hak
id: cache
uses: actions/cache@8b402f58fbc84540c8b491a91e594a4576fec3d7 # v5
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
with:
key: ${{ runner.os }}-${{ inputs.arch }}-${{ hashFiles('hakHash', 'electronVersion') }}
path: |

View File

@@ -42,7 +42,7 @@ jobs:
run: docker run -v $PWD:/project element-desktop-dockerbuild yarn install
- name: Log in to the Container registry
uses: docker/login-action@0567fa5ae8c9a197cb207537dc5cbb43ca3d803f
uses: docker/login-action@3227f5311cb93ffd14d13e65d8cc400d30f4dd8a
if: github.event_name != 'pull_request'
with:
registry: ${{ env.REGISTRY }}

View File

@@ -1,6 +1,6 @@
# Docker image to facilitate building Element Desktop's native bits using a glibc version (2.31)
# with broader compatibility, down to Debian bullseye & Ubuntu focal.
FROM rust:bullseye@sha256:c6d501c039204c21e9fa374f234bd41bdc8b36cfd455a407ef145d9bef19f2b7
FROM rust:bullseye@sha256:3ebcc2d6d71fb93a2967e35723902c51dd87dbb36f66f795a58d7921553fbcd4
ENV DEBIAN_FRONTEND=noninteractive

View File

@@ -3,7 +3,7 @@
"productName": "Element",
"main": "lib/electron-main.js",
"exports": "./lib/electron-main.js",
"version": "1.12.10-rc.0",
"version": "1.12.9",
"description": "Element: the future of secure communication",
"author": {
"name": "Element",
@@ -76,7 +76,7 @@
"@babel/preset-env": "^7.18.10",
"@babel/preset-typescript": "^7.18.6",
"@electron/asar": "4.0.1",
"@playwright/test": "1.57.0",
"@playwright/test": "1.58.1",
"@stylistic/eslint-plugin": "^5.0.0",
"@types/auto-launch": "^5.0.1",
"@types/counterpart": "^0.18.1",
@@ -88,7 +88,7 @@
"app-builder-lib": "26.6.0",
"chokidar": "^5.0.0",
"detect-libc": "^2.0.0",
"electron": "40.0.0",
"electron": "40.1.0",
"electron-builder": "26.6.0",
"electron-builder-squirrel-windows": "26.6.0",
"electron-devtools-installer": "^4.0.0",
@@ -103,7 +103,7 @@
"husky": "^9.1.6",
"knip": "^5.0.0",
"lint-staged": "^16.0.0",
"matrix-web-i18n": "3.5.2",
"matrix-web-i18n": "3.6.0",
"mkdirp": "^3.0.0",
"pacote": "^21.0.0",
"patch-package": "^8.0.1",

View File

@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/playwright:v1.57.0-jammy@sha256:6aca677c27a967caf7673d108ac67ffaf8fed134f27e17b27a05464ca0ace831
FROM mcr.microsoft.com/playwright:v1.58.1-jammy@sha256:1b52a0833ae13c3bb16f728eec5f9216db29f3cd5eec21a9cbd33e7623723c0e
WORKDIR /work/element-desktop

View File

@@ -507,15 +507,44 @@ app.on("ready", async () => {
const exitShortcutPressed =
input.type === "keyDown" && exitShortcuts.some((shortcutFn) => shortcutFn(input, process.platform));
// We only care about the exit shortcuts here
if (!exitShortcutPressed || !global.mainWindow) return;
// Early return if:
// 1. Keys that were pressed are not shortcuts for exiting the app
// 2. Electron mainWindow is null for some reason
// 3. The application is already in the process of quitting
if (!exitShortcutPressed || !global.mainWindow || global.appQuitting) return;
// Prevent the default behaviour
event.preventDefault();
// Let's ask the user if they really want to exit the app
// Check if the user expects us to minimize to tray instead of quitting the app
const shouldMinimize = store.get("minimizeToTray") && (tray.hasTray() || process.platform === "darwin");
if (shouldMinimize) {
// On Mac, closing the window just hides it
// (this is generally how single-window Mac apps
// behave, eg. Mail.app)
if (global.mainWindow?.isFullScreen()) {
global.mainWindow.once("leave-full-screen", () => global.mainWindow?.hide());
global.mainWindow.setFullScreen(false);
} else {
global.mainWindow?.hide();
}
return;
}
// Quit the app; rest of the quit logic is on the close event handler below.
app.quit();
});
global.mainWindow.on("closed", () => {
global.mainWindow = null;
});
global.mainWindow.on("close", async (e) => {
// Check if the user expects us to ask for confirmation before quitting the app
const shouldWarnBeforeExit = store.get("warnBeforeExit", true);
if (shouldWarnBeforeExit) {
if (shouldWarnBeforeExit && global.mainWindow) {
const shouldCancelCloseRequest =
dialog.showMessageBoxSync(global.mainWindow, {
type: "question",
@@ -529,33 +558,11 @@ app.on("ready", async () => {
defaultId: 1,
cancelId: 0,
}) === 0;
if (shouldCancelCloseRequest) return;
}
// Exit the app
app.exit();
});
global.mainWindow.on("closed", () => {
global.mainWindow = null;
});
global.mainWindow.on("close", async (e) => {
// If we are not quitting and have a tray icon then minimize to tray
if (!global.appQuitting && (tray.hasTray() || process.platform === "darwin")) {
// On Mac, closing the window just hides it
// (this is generally how single-window Mac apps
// behave, eg. Mail.app)
e.preventDefault();
if (global.mainWindow?.isFullScreen()) {
global.mainWindow.once("leave-full-screen", () => global.mainWindow?.hide());
global.mainWindow.setFullScreen(false);
} else {
global.mainWindow?.hide();
if (shouldCancelCloseRequest) {
e.preventDefault();
global.appQuitting = false;
return false;
}
return false;
}
});

View File

@@ -35,7 +35,7 @@
"eol": {
"no_more_updates": "Používáte nepodporovanou verzi systému macOS. Prosím upgradujte %(brand)s pro získání aktualizací.",
"title": "Systém není podporován",
"warning": "Používáte nepodporovanou verzi systému macOS. Proveďte prosím upgrade %(brand)s , aby byl stále funkční."
"warning": "Používáte nepodporovanou verzi systému macOS. Proveďte prosím upgrade %(brand)s, aby byl stále funkční."
},
"file_menu": {
"label": "Soubor"

856
yarn.lock
View File

File diff suppressed because it is too large Load Diff