Commit Graph
116 Commits
Author SHA1 Message Date
Eduard Gert 2e9ae5e8e1 allow to edit profiles 2026-06-18 14:39:27 +02:00
Eduard Gert 0b5fa75549 lint and add frontend-ui workflow 2026-06-18 13:56:42 +02:00
Eduard Gert 9cbaf62eda make management switch accessible 2026-06-18 13:56:42 +02:00
Eduard Gert cc842f17d5 add eslint 2026-06-18 13:56:41 +02:00
Eduard Gert 3175b880e4 add better keyboard nav and fix sonar lint 2026-06-18 13:56:41 +02:00
Eduard Gert 79e7dce47e make settings accessible
 Conflicts:
	client/ui/frontend/src/modules/profiles/ProfilesTab.tsx
2026-06-18 13:56:41 +02:00
Eduard Gert 77fe022351 make main screen accessible 2026-06-18 13:56:41 +02:00
Eduard Gert 9cdc6e3013 add a11y keys 2026-06-18 13:56:41 +02:00
Zoltan Papp a6d1194b5d Merge branch 'main' into ui-refactor
Resolve conflicts and complete the profile display-name -> ID migration
across the daemon, CLI, UI services, tray, and React frontend.

- Regenerate client/proto daemon.pb.go from the merged proto so it carries
  both branches' RPCs (ui-refactor: SubscribeStatus/RegisterUILog/ExtendAuthSession,
  main: RenameProfile + id fields); keep the v6.33.1 generator header
- server.go: combine ui-refactor's profile-list-changed events with main's
  id-bearing responses; publish profile-list-changed on rename
- Drop the deleted Fyne client_ui.go/profile.go and port main's profile-ID
  changes into the refactored services/tray
- UI services, tray and React: send the profile ID as the daemon handle and
  keep the display name for rendering only (activeProfileId vs activeProfile)
- Relax the profile-name input to match the daemon's sanitizeDisplayName
  (spaces, emoji, any valid UTF-8); cap at 128
- Expose RenameProfile via a Profiles.Rename services wrapper (+ regenerated
  bindings) for the frontend to wire up
- cmd/login.go: use the profile ID for GetProfileState
2026-06-18 11:40:51 +02:00
Eduard Gert 262372ce6c fix copy icon alignment 2026-06-17 17:29:35 +02:00
Eduard Gert f5e5a12a90 add virtual scroll and fix empty results overlay 2026-06-17 17:26:38 +02:00
Eduard Gert 6e696719c8 update tray images 2026-06-17 13:46:31 +02:00
Eduard Gert 44709983f7 fix focus on windows windows 2026-06-16 15:03:51 +02:00
Eduard Gert 192c3109c0 add more ui logs and fix sonarqube lint 2026-06-16 13:45:54 +02:00
Eduard Gert 4ae37919c0 keep general settings tab visible when update settings are locked 2026-06-16 12:24:06 +02:00
Eduard Gert 64c9551a4d remove "Loading..." from profile dropdown and show skeleton 2026-06-16 12:09:49 +02:00
Eduard Gert c7a338c006 update config on config changed event 2026-06-15 16:13:03 +02:00
Eduard Gert 780296a7db force disable spellcheck for inputs 2026-06-15 14:53:37 +02:00
Eduard Gert 91cbae8910 fix session expired dialog 2026-06-15 14:15:39 +02:00
Eduard Gert 83c9e5b0d1 fix allowserverssh mdm 2026-06-15 13:54:07 +02:00
Eduard Gert 90be56788a fix mdm allowserverssh 2026-06-15 13:20:16 +02:00
Eduard Gert 2089b79630 show profiles also when mdm update setting is active 2026-06-15 12:20:28 +02:00
Eduard Gert 79e0a05f52 fix psk behaviour and allow to clear psk 2026-06-15 10:43:48 +02:00
Eduard Gert c2b43b9cf0 localize installer unknown-error fallback and abort debug bundle on unmount 2026-06-12 18:06:58 +02:00
Eduard Gert 6cc6d68b37 add mdm 2026-06-12 18:00:28 +02:00
Zoltan Papp 47ecc41bf4 Merge main into ui-refactor; port MDM support to the Wails UI
Integrates main's MDM configuration-profile feature and adapts it to the
Wails UI (this branch had already replaced the Fyne UI).

Conflict resolution:
- go.mod/go.sum: take main's deps; howett.net/plist pinned to v1.0.2-... (tidy)
- client/proto/daemon.pb.go: regenerated from the merged daemon.proto
- client/internal/peer/status.go: union of ipToKey (main) + sessionExpiresAt (HEAD)
- client/server/server.go: main's intent/liveness model (connectionGoroutineRunning,
  clientRunning no longer cleared by the goroutine) + empty-PSK guard
- client/ui/client_ui.go, client/ui/profile.go: removed (dead Fyne UI)

MDM port (backend + tray):
- services/settings.go: expose MDMManagedFields plus a managedFields map keyed
  by Config field names so the settings form can gate a control without
  translating mdm.Key* names
- tray: gate Profiles / Exit Node menus on DisableProfiles / DisableNetworks via
  GetFeatures, refreshed on the config_changed system event (replaces the legacy
  2s poll); localized MDM policy-applied toast in all shipped locales
- client/proto/metadata.go: shared constants for the config_changed /
  policy_applied event markers

PreSharedKey: GetConfig now returns preSharedKeySet (bool) instead of the masked
value; the settings form provides its own placeholder and sends a new key only
when the user types one.
2026-06-12 15:27:23 +02:00
Eduard Gert 860be01ebe update debug bundle setting page 2026-06-12 12:09:10 +02:00
Eduard Gert 96f0c7a165 Revert "keep right panel always mounted"
This reverts commit 9328558dbb.
2026-06-11 17:59:25 +02:00
Eduard Gert 3f66fafb8e treat old wiretrustee domain as cloud 2026-06-11 17:46:54 +02:00
Eduard Gert a8462e3f9b make trace disabled default and add link to report bugs and issues 2026-06-11 16:21:20 +02:00
Eduard Gert 9328558dbb keep right panel always mounted 2026-06-11 15:04:17 +02:00
Eduard Gert 13b4bf93b9 fix settings provider order 2026-06-11 14:34:20 +02:00
Eduard Gert 4b705d472c fix copy to clipboard for resources 2026-06-10 16:53:15 +02:00
Eduard Gert 7eaea03bc9 hide password toggle for saved psk 2026-06-10 16:46:50 +02:00
Eduard Gert d70b3a3fa4 update debug bundle text 2026-06-09 18:23:07 +02:00
Eduard Gert dac2ca4088 fix dropdown animation 2026-06-09 18:08:47 +02:00
Eduard Gert 9049974f26 lint 2026-06-09 16:33:30 +02:00
Eduard Gert f8e3ac6d92 refactor, lint, cleanup 2026-06-09 16:31:52 +02:00
Eduard Gert 6b2ae1c34c update session expiration dialog texts, add monitor aware position 2026-06-08 18:09:22 +02:00
Eduard Gert b067544c8a update padding and text 2026-06-08 16:02:42 +02:00
Eduard Gert 10d84b758f add ipv6 2026-06-08 15:22:35 +02:00
Eduard Gert 0e4d0128b6 add custom error dialog 2026-06-08 12:44:33 +02:00
Eduard Gert 9ecc083139 update missing translations 2026-06-05 14:57:32 +02:00
Eduard Gert efd874efac add cloud / selfhosted segment in profile creation 2026-06-05 14:38:00 +02:00
Eduard Gert 5877880789 replace native confirm dialog with modals in settings 2026-06-05 13:16:39 +02:00
Eduard Gert 4427aaa31f update advanced port margin, update settings bottom bar height 2026-06-05 12:29:18 +02:00
Eduard Gert 296d3f124b truncate dns in main screen 2026-06-05 09:55:50 +02:00
Eduard Gert adf1fe1858 add ready prop to autosize hook 2026-06-05 09:48:17 +02:00
Zoltán Papp ca6f6d88cb Merge branch 'main' into ui-refactor 2026-06-04 17:06:11 +02:00
Zoltán Papp cba4a8a63b [client/ui] Fix login wedging until restart after a failed SSO attempt
startLogin held both guards (the module-level loginInFlight and the
caller's React-level loginGuard) across the post-failure errorDialog
await. The native Windows MessageBox disables its parent for its whole
lifetime while the main window's WindowClosing hook hides instead of
closing, so the dialog promise can outlive the click — and even a clean
dismissal kept the guards held until the promise settled. Until then
every later Connect click and tray trigger-login was silently dropped at
the guard check, so the only way back was a client restart.

Release both guards the instant the flow itself settles, before the
dialog: startLogin now takes an onSettled callback fired in its finally
(driveLogin releases loginGuard through it), and the errorDialog await
moved out of the try/finally so no guard is ever gated on the dialog.
2026-06-04 13:42:29 +02:00