feat: Add unread message badge to system tray icon - #1605
Conversation
fe957d7 to
06f6a62
Compare
|
Hello there, We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process. Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6 Thank you for contributing to Nextcloud and we hope to hear from you soon! (If you believe you should not receive this message, you can add yourself to the blocklist.) |
06f6a62 to
590ed01
Compare
590ed01 to
693f19b
Compare
|
Successfully rebased on v2.2.0 |
|
Could someone please review this merge request? I’ve tested it successfully and it works perfectly. This is a must-have feature for my colleagues and me. We frequently overlook notifications because we don't want to keep the window open all the time—plus, the current setup doesn't work well when using multiple workspaces. |
Shows numbered badge (1, 2, 15, 99+) on tray icon when there are unread conversations, respecting notification settings. Features: - Canvas-based badge rendering using offscreen BrowserWindow - Respects notification settings per conversation - Event-driven updates via store.subscribe() (no polling!) (Pertially?) resolves nextcloud#391 Signed-off-by: Marc Kupietz <kupietz@ids-mannheim.de>
693f19b to
793a6c3
Compare
|
Call me impatient, but I have now force-pushed the rebased and reworked integration that uses the public It is rebased onto current main, and the |
|
@ShGKme are there any blockers to merge this? |
|
Hey @kupietz , can you add the right AI trailer to the commit? You can find the info on that in the AGENTS.md of this repo. |
…ated event Instead of reaching into Talk's internal Vuex store (window.OCA.Talk.instance.$store) and subscribing to mutations, subscribe to the public `talk:unread:updated` event Talk emits. This decouples the desktop badge from Talk's state management implementation and survives the planned state-manager migration, as requested in the PR review. - Badge now shows the total unread message count (event payload `messages`). - Subscribe before Talk is mounted so the initial (immediate) event is caught. - Removes the store access, the 500ms polling loop and the `any` casts. Assisted-by: Claude Code:claude-opus-4-8 Signed-off-by: Marc Kupietz <kupietz@ids-mannheim.de>
793a6c3 to
19924a5
Compare
|
CI might fail on forks, so don't worry. Assisted-by trailer looks correct |
Shows numbered badge (1, 2, 15, 99+) on tray icon when there are unread conversations, respecting notification settings.
Features:
☑️ Resolves
AI (if applicable)
🖼️ Screenshots