Commit graph

41 commits

Author SHA1 Message Date
Johannes Millan
9f2d2b9a6e fix(focus-mode): prevent tray indicator jumping during focus sessions
The tray icon was jumping between showing task time and focus session time
when focus mode was active with a task being tracked. This occurred because
the tray display logic didn't know which focus mode was active.

Changes:
- Send focus mode type (Countdown/Pomodoro/Flowtime) from frontend to Electron
- Update IPC handler to receive and pass focus mode type to tray message creation
- Implement three-mode priority logic in createIndicatorMessage():
  1. Countdown/Pomodoro modes: Show focus session countdown timer
  2. Flowtime mode: Show task estimate or title (no timer)
  3. No focus mode: Show normal task time (existing behavior)
- Update TypeScript type definitions for updateCurrentTask()
- Update unit tests to mock the new mode() signal

This ensures the tray displays the correct timer without jumping based on
the active focus mode, matching the behavior of the overlay indicator.

Fixes jumping tray indicator during focus mode + tracking
2026-01-20 17:07:23 +01:00
Johannes Millan
df386a7a7e fix(electron): only pass tray GUID on Windows to prevent validation error
Electron validates the GUID argument even when undefined is passed,
causing "Invalid GUID format" error on Linux/macOS. Only pass the
GUID argument on Windows where it's needed.
2026-01-13 18:26:45 +01:00
Johannes Millan
9140f51a8d feat(electron): add static GUID to tray icon for Windows
Add a static GUID to the Electron Tray constructor on Windows to persist
tray icon position and visibility preferences across app updates. This
prevents the tray icon from being hidden in the overflow menu after
Microsoft Store updates change the executable path.

Closes #5973
2026-01-13 18:26:45 +01:00
Johannes Millan
f9c4629c49 Fix: Resolve build errors for Electron
- Add missing import for  in .
- Update regex in  to be compatible with older TS targets (before ES2018) by replacing  flag with .
2025-11-28 20:04:26 +01:00
Johannes Millan
e212f9a9ba fix: refactor tray handling to use shared state for task and countdown visibility 2025-11-28 18:53:00 +01:00
Johannes Millan
1c7eaad5bb feat(overlayIndicator): implement basic overlay 2025-06-27 14:22:27 +02:00
panoramix360
15815b3abf feat: integrate 'isTrayShowCurrentCountdown' setting into tray message logic 2025-06-08 10:32:56 +02:00
panoramix360
7f9fa07559 feat: enhance updateCurrentTask to include Pomodoro state and session time 2025-04-15 16:33:21 +02:00
panoramix360
924844cae9 feat: update indicator to use time estimate for countdown message 2025-04-15 16:33:21 +02:00
panoramix360
33d7a3f758 feat: add countdown message to the indicator 2025-04-15 16:33:21 +02:00
Johannes Millan
c6abc8f965 feat(electronSecurity): wrap all send handlers 2023-12-16 14:19:13 +01:00
Mohammad Zolfaghari
4263852051 use IS_WINDOWS const, DRY 2022-08-27 20:45:33 +02:00
Mohammad Zolfaghari
6213ca09cb Use dark colors based on os and os version
related discussion:
https://github.com/johannesjo/super-productivity/issues/1014#issuecomment-1226844339
2022-08-27 20:45:33 +02:00
Johannes Millan
db1ade9023 fix: remove tray icon tooltip #2032 2022-04-28 21:26:22 +02:00
Johannes Millan
7ee50dc485 refactor: moved shared stuff to its own folder 2022-03-12 11:59:52 +01:00
Johannes Millan
2284892272 refactor(elctron): add typing wherever possible and simplify 2022-01-30 20:12:41 +01:00
Johannes Millan
696451057b refactor(electron): add missing return types 2021-07-22 16:07:24 +02:00
Johannes Millan
55551ae5f4 fix: indicator throwing error when task is not found 2021-06-04 14:47:39 +02:00
Johannes Millan
bb5122a1a2 fix: indicator throwing error when task is not found 2021-06-04 14:40:05 +02:00
Johannes Millan
e24cb84b5d feat: use tooltip for non mac systems #1223 2021-05-21 12:46:49 +02:00
Johannes Millan
43022f8e83 refactor: format everything with prettier 2021-05-06 22:37:37 +02:00
mkpaz
3e7023342a fix: add cmdline switch to force tray icons for dark mode #741 2021-01-04 20:14:33 +04:00
Johannes Millan
eb149769b0 feat: add commandline-switch to allow for disabling to create the tray #675 2020-11-20 20:31:38 +01:00
Johannes Millan
36fcea6963 fix: update icon less often #675 2020-11-20 20:22:53 +01:00
Johannes Millan
78d2770634 fix(tray): remove time string from mac os menu bar #494 2020-11-07 16:53:00 +01:00
Johannes Millan
87341144d1 feat(tray): also update for pomodoro #241 2020-11-07 16:46:09 +01:00
Johannes Millan
952477a75d feat(tray): update icons and handle running without estimate 2020-11-06 18:22:36 +01:00
Bernhard Fürst
c63e3e9d33 feat(tray): add settings for hiding current task at Mac menu bar icon
Used BabelEdit to edit language files. This automatically consolidated/fixed
all language files to contain the same keys.
2020-10-29 08:05:21 +01:00
Johannes Millan
c9a4e8270b feat(tray): make most basic version work 2020-10-27 23:48:20 +01:00
Johannes Millan
aafc941572 fix: tray icon for mac build 2020-10-17 13:10:06 +02:00
Johannes Millan
07d8ca22aa refactor: rename tray icons 2020-10-15 21:07:28 +02:00
Marco Gualberto
6e86cbf0cd feat: change tray icon theme #554 2020-10-10 19:43:29 +02:00
Johannes Millan
d24b6f231d feat: enable strict mode for electron as well 2020-07-05 12:48:24 +02:00
Johannes Millan
deef2911b9 feat: remove moment completely from electron layer 2020-06-20 23:37:01 +02:00
Giacomo Rossetto
b8c695e20a
Use template images for tray icon on MacOS
https://www.electronjs.org/docs/api/native-image#template-image
2020-04-05 20:54:38 +02:00
Johannes Millan
c941564fb9 feat: add new ts lint config and fix error 2019-08-23 21:13:42 +02:00
Johannes Millan
e435b0bdb8 refactor: ipc events to enum 2019-07-20 16:21:30 +02:00
Johannes Millan
6b80062613 feat(i18n): add translation for timestamps and dates #33 2019-07-17 16:38:03 +02:00
Johannes Millan
038ef518d2 feat: use moment-mini to reduce bundle size 2019-01-26 19:27:12 +01:00
Johannes Millan
1c9e28dbd3 refactor: share ipc events between electron and angular app 2019-01-19 12:33:52 +01:00
Johannes Millan
6796ca0fa8 feat(electron): add basic setup and convert all files to typescript 2019-01-18 16:35:24 +01:00
Renamed from electron/indicator.js (Browse further)