Commit Graph
112 Commits
Author SHA1 Message Date
Alexandr Stelnykovych 1465fe49af feat(UI/notifications): add "in-app-only" action visibility
Actions with visibility "in-app-only" are shown in the UI but skipped
when displaying system-level notifications (Tauri/OS). Updates Go,
TypeScript/Angular and Rust projects accordingly.
2026-03-10 00:12:02 +02:00
Alexandr Stelnykovych 939010a6ef feat(interop/ivpn): show compatibility notification with persistent suppress option
When Portmaster connects to the IVPN Client, display an info notification
informing the user that IVPN connections are allowed and that DNS will be
handled by Portmaster's local resolver when configured.

The notification includes a "Do not notify me anymore" action that
permanently suppresses future notifications by writing a marker record to
the core database. The check runs before showing the notification on each
subsequent connection.

The "Reset Notification States" API endpoint (and matching UI menu item)
now also clears the IVPN suppression record alongside the broadcast states,
so all suppressed notifications can be restored at once.

- service/interop/ivpn: add notification.go with initAndShowNotification,
  isNotificationSuppressed, and suppressNotification
- service/interop/ivpn/ivpn.go: show notification on connect if not suppressed
- service/broadcasts/api.go: extend reset-state handler to also delete the
  IVPN suppression record; update endpoint name and description
- desktop: rename "Reset Broadcast State" menu item and toast messages to
  "Reset Notifications State"
2026-03-09 22:16:04 +02:00
Alexandr Stelnykovych e395dafa14 feat(UI/notifications): add ActionVisibility for conditional action display
Add a `Visibility` field to the `Action` struct allowing actions to be
hidden in the compact notification view and only shown when the user
expands the full notification (value: "detailed").

- base/notifications: add `ActionVisibility` type and `ActionVisibilityDetailed`
  constant to `Action` struct
- notifications.types.ts: expose `Visibility` field on the frontend `BaseAction`
  interface
- notification-list.component.html: filter out `detailed` actions in the
  compact list view
- generic-setting.ts: set default `Visibility: ''` on the inline UI action
2026-03-09 18:12:42 +02:00
Alexandr Stelnykovych 2d7d0323b0 feat(VisualStudio Code): add launch configurations 2025-12-17 14:08:24 +02:00
Alexandr Stelnykovych b5cb006937 Bump version 2.1.7 2025-12-09 23:35:06 +02:00
Alexandr Stelnykovych d635db77c2 Improve pause info display and error handling 2025-11-26 13:01:24 +02:00
Alexandr Stelnykovych 4913147dd5 (UI) minor update of update pause notification messages 2025-11-21 14:07:57 +02:00
Alexandr Stelnykovych 139610b99d feat(UI): enhance pause info display in system tray menu and reorganize menu item positions
https://github.com/safing/portmaster/issues/2050
2025-11-10 15:14:20 +02:00
Alexandr Stelnykovych 4d58f68fde feat(UI): enhance SPN pause menu to allow time modification while paused 2025-11-07 16:53:01 +02:00
Alexandr Stelnykovych b9cce33113 UI: Removed sources for "runtime:subsystems/" status API calls
It looks like they are not used anymore and replaced by "runtime:system/status"
2025-11-07 16:50:18 +02:00
Alexandr Stelnykovych fecb42a691 UI: update SPN pause menu items and add spnEnabled state management
https://github.com/safing/portmaster/issues/2050
2025-11-06 18:42:24 +02:00
Alexandr Stelnykovych 7709a6600c feat: pause and resume functionality improvements + UI
https://github.com/safing/portmaster/issues/2050
2025-11-05 18:36:52 +02:00
Alexandr Stelnykovych c063bda700 feat(WIP): add pause and resume functionality for Portmaster/SPN
https://github.com/safing/portmaster/issues/2050
2025-10-24 18:15:27 +03:00
Alexandr Stelnykovych 8190e66524 Merge pull request #2040 from safing/feature/2039-UI-auto-reload-connections
Feature: UI auto reload connections
2025-10-18 00:04:44 +03:00
Alexandr Stelnykovych 1ebac535af minor refactoring 2025-10-18 00:01:01 +03:00
Alexandr Stelnykovych 998865efe2 Merge pull request #2042 from safing/fix/2041-UI-crash-loading-grouped-connections
fix: UI bug: when loading grouped connections from 'future'
2025-10-17 23:51:19 +03:00
Alexandr Stelnykovych 303b26f679 npm audit fix 2025-10-17 22:36:21 +03:00
Alexandr Stelnykovych a8e84d6d28 refactor(UI): remove unnecessary reload intervals from settings 2025-10-17 22:01:24 +03:00
Alexandr Stelnykovych 2dc2193587 feat: add manual trigger for lastReloadTicker updates
Add Subject-based manual trigger to immediately update "Last reload X ago" display when search completes, instead of waiting up to 2 seconds for next interval tick.
2025-10-15 17:43:02 +03:00
Alexandr Stelnykovych ae2e1e5659 fix: UI bug: when loading grouped connections from 'future'
STR:

1. Network Activity View
2. Set "Search History" From/To dates in the future
3. Set "Group By" Domain
Observed Result:
- Infinite “Loading connections…” status.
- The UI remains unresponsive to any changes in connection filters or reload actions.

https://github.com/safing/portmaster/issues/2041
2025-10-15 17:17:47 +03:00
Alexandr Stelnykovych 54fe389c9d UI: skip auto-reload for historical data queries
https://github.com/safing/portmaster/issues/2039
2025-10-15 16:13:55 +03:00
Alexandr Stelnykovych 153768fb21 UI: Automatic reloading of the connections list
https://github.com/safing/portmaster/issues/2039
2025-10-15 15:23:11 +03:00
Alexandr Stelnykovych a66544959c Bump version 2.0.25 2025-09-05 11:17:28 +03:00
Alexandr Stelnykovych 74f549e562 Revert "ui(angular): dependency security cleanup"
This reverts commit 2893d68383.
2025-09-04 15:33:49 +03:00
Alexandr Stelnykovych 2893d68383 ui(angular): dependency security cleanup
Mitigate critical transitive vulnerabilities.
No functional app changes; runtime behavior unchanged.
2025-09-04 13:01:46 +03:00
Alexandr Stelnykovych a652c8bce3 Bump version 2.0.24 2025-08-05 16:45:14 +03:00
Alexandr Stelnykovych bf8da732b9 Bump version 2.0.23 2025-07-14 11:25:04 +03:00
Alexandr Stelnykovych 7946568b63 Bump version 2.0.22 2025-06-27 13:05:59 +03:00
Alexandr Stelnykovych d5c1a5c3f6 fix(UI): remove search highlight markup from merge profile names
https://github.com/safing/portmaster/issues/1490
2025-06-27 12:45:58 +03:00
Alexandr Stelnykovych 0c2dfbc489 Bump version 2.0.21 2025-06-20 16:35:25 +03:00
Alexandr Stelnykovych f7dd9825be (UI): Add endpoint check to TauriHttpInterceptor for non-API requests 2025-06-19 17:26:52 +03:00
Alexandr Stelnykovych 1292fd7dae Bump version 2.0.20 2025-06-09 10:26:27 +03:00
Alexandr Stelnykovych 93f87f4dc4 refactor(UI; tauri-websocket): Simplify Tauri WebSocket connection by removing NgZone dependency and adding inactivity timeout handling 2025-06-09 10:17:45 +03:00
Alexandr Stelnykovych 795d99cc12 (UI; tauri-http): Improve body handling in send_tauri_http_request for various types 2025-06-06 18:46:05 +03:00
Alexandr Stelnykovych bd12a784c2 (UI; tauri-websocket): Enhance error handling and connection management in WebSocket implementation 2025-06-06 18:45:13 +03:00
Alexandr Stelnykovych 5c46ef0d85 (UI; tauri-websocket): Enhance WebSocket connection handling 2025-06-05 14:55:51 +03:00
Alexandr Stelnykovych 2c1de8c51e Bump version 2.0.19 2025-06-03 15:59:14 +03:00
Alexandr Stelnykovych cb39e11b32 fix(UI; tauri-websocket): Enhance WebSocket connection handling with observers and improved error management 2025-06-03 14:24:29 +03:00
Alexandr Stelnykovych 774a83dc33 Bump version 2.0.17 2025-05-28 13:20:05 +03:00
Alexandr Stelnykovych ec2d4ca9eb Merge branch 'master' into merge/master-into-v2-with-history (v1 into v2)
# Conflicts:
#	Earthfile
#	base/config/main.go
#	base/database/dbmodule/db.go
#	base/database/main.go
#	go.mod
#	go.sum
#	service/core/base/global.go
2025-05-28 11:52:15 +03:00
Alexandr Stelnykovych d3f6cb1504 Bump version 2.0.16 2025-05-22 15:49:58 +03:00
Alexandr Stelnykovych 58ca3150e7 Log a warning in the UI when falling back to default connection parameters 2025-05-20 12:56:24 +03:00
Alexandr Stelnykovych 8035c3d5ac Bump version 2.0.14 2025-05-16 20:13:19 +03:00
Alexandr Stelnykovych 5bc1e779b2 fix: force UI to use IPv4 (127.0.0.1) for API endpoints
Previously, the API endpoint was defined using `localhost`, which could resolve to the IPv6 address `::1`.
This caused issues because the Portmaster core service is listening on `127.0.0.1:817` and only fast-tracking connections to that specific IPv4 address.
2025-05-16 10:56:30 +03:00
Alexandr Stelnykovych c6f47967b1 Bump UI version 2025-05-06 11:34:10 +03:00
Alexandr Stelnykovych ab3981ba60 [desktop] UI fix: integrate NgZone into Tauri WebSocket connection for better change detection 2025-05-05 18:11:36 +03:00
Alexandr Stelnykovych eaa70b7a73 Bump UI version 2025-04-30 14:13:11 +03:00
Alexandr Stelnykovych 27cdfd696d [desktop] fix: Bug in the asyncInvoke() function — sometimes it never receives a response.
This fixes the ticket s26: "[bug] UI: Sometimes the UI remains stuck in the "Connecting to System Service" state indefinitely. "
2025-04-28 16:57:32 +03:00
Alexandr Stelnykovych 54f07e15d9 Bump UI version 2025-04-28 11:36:29 +03:00
Alexandr Stelnykovych d3e489f10a Merge branch 'v2.0' into feature/ui-security 2025-04-28 11:08:25 +03:00