From db4b2b6b0768cc6e465d4f98a44563774725fd79 Mon Sep 17 00:00:00 2001 From: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com> Date: Tue, 2 Jun 2026 16:34:39 +0200 Subject: [PATCH] fix(ui): restore isSubscribed getter on mailbox update updateMailboxMutation replaced the mailbox object with the server response, losing the Object.defineProperty getter for isSubscribed (originally added in addMailboxToState). Without the getter, isSubscribed became undefined after any patch, causing NcActionCheckbox to re-emit update:checked and trigger an unintended subscription change. Assisted-by: Claude:claude-sonnet-4-6 Signed-off-by: Christoph Wurst <1374172+ChristophWurst@users.noreply.github.com> --- src/store/mainStore/actions.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/store/mainStore/actions.js b/src/store/mainStore/actions.js index 5901231bf9..a7c6638b6b 100644 --- a/src/store/mainStore/actions.js +++ b/src/store/mainStore/actions.js @@ -1956,6 +1956,11 @@ export default function mainStoreActions() { updateMailboxMutation({ mailbox }) { const account = this.accountsUnmapped[mailbox.accountId] transformMailboxName(account, mailbox) + Object.defineProperty(mailbox, 'isSubscribed', { + get() { + return this.attributes?.includes('\\subscribed') ?? false + }, + }) Vue.set(this.mailboxes, mailbox.databaseId, mailbox) }, removeMailboxMutation({ id }) {