Commit graph

37 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
6017da13c7 refactor: integrate pfapi into oplog 3 2026-01-07 14:10:05 +01:00
Johannes Millan
db990b7018 refactor: integrate pfapi into oplog 2 2026-01-07 13:37:05 +01:00
Johannes Millan
501b8b5a32 Merge branch 'master' into feat/operation-logs
* master:
  fix(build): remove deprecated win32metadata from electron-builder config
  fix(focus-mode): address critical focus mode and Android notification issues
  test(task-repeat): fix flaky tests and add Mon/Wed/Fri coverage (#5594)
  fix(electron): delay window focus after notification to prevent accidental input
  feat(task): add Go to Task button for all newly created tasks
  fix(sync): show context-aware permission error for Flatpak/Snap
  fix(android): skip reminder dialog on Android to fix snooze button
  fix(focus-mode): respect isFocusModeEnabled setting in App Features
  fix(android): sync notification timer when time spent is manually changed
  feat(sync): add WebDAV Test Connection button and improve UX
  fix(build): ensure consistent Windows EXE metadata for installer and portable
  Update es.json
  Update es.json
  Update es.json
  feat(i18n): update Turkish language
  16.7.3
  fix: es.json

# Conflicts:
#	src/app/features/android/store/android.effects.ts
#	src/app/features/config/form-cfgs/sync-form.const.ts
#	src/app/features/focus-mode/store/focus-mode.effects.ts
#	src/app/features/tasks/store/task-ui.effects.ts
#	src/app/imex/sync/sync-wrapper.service.ts
#	src/app/pages/config-page/config-page.component.ts
#	src/app/pfapi/api/sync/providers/webdav/webdav.ts
#	src/app/t.const.ts
2025-12-22 20:44:21 +01:00
Johannes Millan
18a0e78f12 fix(sync): show context-aware permission error for Flatpak/Snap
Add isFlatpak() detection to Electron API and show environment-specific
error messages when file permission errors occur during sync:
- Flatpak users see Flatseal and ~/.var/app/ guidance
- Snap users see 'snap connect' and ~/snap/... guidance
- Other users see generic permission error

Addresses #4078
2025-12-22 15:11:50 +01:00
Johannes Millan
1e826698aa fix: linting and compilation errors after file system IPC changes 2025-12-12 20:46:05 +01:00
johannesjo
eefbc7135a fix(electron): sync title bar button colors with app theme
Update window control buttons (minimize, maximize, close) to match
the app's dark/light theme setting instead of always using white.

Fixes #5676
2025-12-07 09:52:20 +01:00
Johannes Millan
9574dd4f19 feat(share): outline multi platform share functionality 2025-10-22 15:35:24 +02:00
theUGG0
0a64079de7 feat: implement progressBarMode none for electron 2025-08-15 00:54:15 +03:00
Johannes Millan
62c2649320 fix: file saving not working on Ubuntu snap #4901 2025-08-04 21:27:25 +02:00
Johannes Millan
2fcd310ea1 Merge branch 'feat/overlay-indicator'
* feat/overlay-indicator:
  feat(overlayIndicator): implement basic overlay

# Conflicts:
#	electron/shared-with-frontend/ipc-events.const.ts
2025-06-27 22:37:14 +02:00
Johannes Millan
d4d81bf511 feat(plugin-api): create foundational plugin API package
- Add @super-productivity/plugin-api package with TypeScript definitions
- Define core plugin interfaces, types, and manifest structure
- Add plugin hooks system for event-driven architecture
- Create plugin API type definitions and constants
- Add documentation and development guidelines
2025-06-27 18:13:19 +02:00
Johannes Millan
1c7eaad5bb feat(overlayIndicator): implement basic overlay 2025-06-27 14:22:27 +02:00
Johannes Millan
a935da9346 Merge branch 'master' into release/sync-lib-test
* master:
  feat: don't show go to project snack if task is in current list
  feat: remove task drawer since it is not working at the moment anyway
  Update README.md
  feat: enhance updateCurrentTask to include Pomodoro state and session time
  feat: update indicator to use time estimate for countdown message
  feat: add countdown message to the indicator
  Fix #4184: Added fractional time parsing when creating a new task
  Add functionality if a Issue on Gitlab is closed the Issue on Super is also closed after syncron.
  fix: minor fixes to italian translation
  feat: updated italian translations

# Conflicts:
#	src/app/features/tasks/store/task-electron.effects.ts
2025-04-15 17:12:09 +02:00
panoramix360
7f9fa07559 feat: enhance updateCurrentTask to include Pomodoro state and session time 2025-04-15 16:33:21 +02:00
Johannes Millan
d7def289f5 feat(pfapi): make removing files work for local file sync 2025-04-12 13:56:47 +02:00
Johannes Millan
efd36cb4e3 feat(pfapi): prepare validation and data repair 2025-04-12 13:56:47 +02:00
Johannes Millan
b767549840 feat(pfapi): make updating local data work 2025-04-12 13:56:47 +02:00
Johannes Millan
e3eb0742ec feat: improve emoji support and add info #3558 2025-01-03 17:44:21 +01:00
Johannes Millan
67b54307c6 feat(issueProvider): remove jira pat and wonkyCookie modes #2528 2024-12-21 11:09:40 +01:00
Johannes Millan
866df0c493 feat: add folder picker when there is no valid selected #3473 2024-09-16 20:56:10 +02:00
Johannes Millan
552b25074d feat: check if directory exists #3473 2024-09-16 20:42:49 +02:00
Johannes Millan
2e30b8bc74 fix: don't show domina mode on snap and for firefox #2977 2024-01-12 12:47:49 +01:00
Johannes Millan
cf1c38bf3b refactor: use same backup path everywhere #2910 2023-12-29 14:10:22 +01:00
Johannes Millan
c6d76c6a17 feat: allow for usage of system dark mode 2023-12-20 13:07:50 +01:00
Johannes Millan
a32281e07f feat(electronSecurity): make mac os dark moode stuff work 2023-12-17 13:48:09 +01:00
Johannes Millan
f946607194 feat(electronSecurity): make open path and open external work 2023-12-17 13:41:05 +01:00
Johannes Millan
058f85bae5 feat(electronSecurity): wrap all invoke handlers 2023-12-16 14:37:42 +01:00
Johannes Millan
c6abc8f965 feat(electronSecurity): wrap all send handlers 2023-12-16 14:19:13 +01:00
Johannes Millan
0760e8eb95 feat(electronSecurity): wrap exec before close stuff 2023-12-16 12:31:07 +01:00
Johannes Millan
a1c0d7d220 feat(electronSecurity): throw error for ipcEvents$ cleanup since not possible 2023-12-16 12:21:35 +01:00
Johannes Millan
849c232d42 feat(electronSecurity): make app.getPath work 2023-12-15 17:23:17 +01:00
Johannes Millan
49839bf660 feat(electronSecurity): replace other electron stuff 2023-12-15 16:38:00 +01:00
Johannes Millan
4a3d333030 feat(electronSecurity): replace electron service completely 2023-12-15 16:38:00 +01:00
Johannes Millan
4fc7fd2bde feat(electronSecurity): replace electron service remote 2023-12-15 16:38:00 +01:00
Johannes Millan
4b5ad80d26 feat(electronSecurity): replace IPC event stuff 2023-12-15 16:38:00 +01:00
Johannes Millan
4005c74aee feat(electronSecurity): replace shell stuff 2023-12-15 16:38:00 +01:00