aboutsummaryrefslogtreecommitdiffstats
path: root/desktop
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-14 12:30:34 +0200
committerDanilo M. <danix@danix.xyz>2026-09-14 12:30:34 +0200
commit350b6358e29699721c636c18f8928acb68a05ade (patch)
tree7cb98e4ae79eb094041bde85e54b2d3836262c9e /desktop
parentd513418a2e8854bfe8702577cda6db2cbf0ce292 (diff)
downloadquickshell-350b6358e29699721c636c18f8928acb68a05ade.tar.gz
quickshell-350b6358e29699721c636c18f8928acb68a05ade.zip
fix(desktop): start the mail Accounts singleton at shell launch
The singleton was referenced only inside lazy Components, so its qtmaildir.conf watcher and unread-count refresh did not start until the drawer first opened, contradicting alwaysActive and the old MailPanel, which shell.qml instantiated directly. Naming Accounts at the Module top level creates it at shell load; the page keeps its own refresh on open.
Diffstat (limited to 'desktop')
-rw-r--r--desktop/modules/mail/MailModule.qml7
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop/modules/mail/MailModule.qml b/desktop/modules/mail/MailModule.qml
index 99ddaff..5f501ba 100644
--- a/desktop/modules/mail/MailModule.qml
+++ b/desktop/modules/mail/MailModule.qml
@@ -22,6 +22,13 @@ Module {
label: "Mail"
alwaysActive: true
+ // Accounts is a singleton; nothing names it at shell start otherwise, so
+ // this reference instantiates it here. That is what makes alwaysActive
+ // true mean something: the config FileView starts and the unread count is
+ // fetched while the drawer is closed, as the old MailPanel did, rather
+ // than first when the drawer opens.
+ Component.onCompleted: Accounts.refresh()
+
tileContent: Component { MailTile {} }
page: Component {