Commit Graph

183 Commits

Author SHA1 Message Date
Eduard Gert
62afff6d52 fix active profile name 2026-06-18 18:17:49 +02:00
Eduard Gert
731e87be72 switch lang tag on language switch, lint 2026-06-18 16:16:45 +02:00
Eduard Gert
461ec1c8f5 fix visible focus ring 2026-06-18 15:25:30 +02:00
Eduard Gert
de12fe7851 fix slide animation 2026-06-18 14:46:32 +02:00
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
622e5e140f add overlay if daemon not compatible 2026-06-17 14:06:38 +02:00
Eduard Gert
6e696719c8 update tray images 2026-06-17 13:46:31 +02:00
Zoltán Papp
fedef7588f ui: detect outdated daemon via WailsUIReady probe
Add a no-op WailsUIReady RPC the UI probes once at startup. A reachable
daemon that returns Unimplemented predates this UI and is too old to
drive it; the probe distinguishes that from an unreachable daemon. On an
outdated daemon the UI fires a localized OS notification, since the main
window may not open to show an in-app error.

Proto regenerated with protoc 33.1 to keep the v6.33.1 header.
2026-06-17 13:00:13 +02:00
Eduard Gert
db2ea7554f remove mdm test scripts and other markdown files 2026-06-17 11:43:07 +02:00
Eduard Gert
855ef2465f refresh restrictions also on status changes 2026-06-17 10:25:20 +02:00
Eduard Gert
44709983f7 fix focus on windows windows 2026-06-16 15:03:51 +02:00
Eduard Gert
e4918e0277 update main toggle switch 2026-06-16 14:03:13 +02:00
Eduard Gert
192c3109c0 add more ui logs and fix sonarqube lint 2026-06-16 13:45:54 +02:00
Eduard Gert
b16bdf5e8f refetch restrictions on window visibility change 2026-06-16 13:30:17 +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
28d85ecae3 adjust offset on macos 2026-06-15 16:27:44 +02:00
Eduard Gert
c37f24d1b0 adjust vertical offset on macos 2026-06-15 16:13:03 +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
Zoltan Papp
9e5bcb26eb fix(ui): include error name and message in forwarded logs
WebKit (macOS WKWebView) omits the "Name: message" header from
Error.stack, so forwarding only the stack hid the real cause of
failures. Prepend the error name, message and optional cause before
the stack so daemon RPC errors surface in gui-client.log.
2026-06-15 11:57:34 +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
8f2429c637 move debounced save out of SettingsContext setState updater 2026-06-12 18:06:38 +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
29a165a586 bind saves to loaded profile to prevent cross-profile clobber 2026-06-12 12:19:30 +02:00
Eduard Gert
860be01ebe update debug bundle setting page 2026-06-12 12:09:10 +02:00
Zoltán Papp
ff6aef5e2a feat(ui): GUI debug logging follows daemon log level + debug bundle
When the daemon is set to debug/trace, the GUI now automatically writes a
rotated gui-client.log in the user's config dir and the daemon's debug bundle
collects it. The UI learns the level both at startup (daemon already in debug)
and live, by piggybacking the existing SubscribeEvents stream: the daemon
publishes a marked log-level-changed SystemEvent (and a per-subscription
snapshot), which DaemonFeed routes to guilog.DebugLog instead of an OS toast.
The UI registers its log path via a new RegisterUILog RPC so the root daemon,
which can't resolve the user's config dir, knows where to find the file.

Manual --log-file (any value) disables the daemon-driven file logging.

Fix: client/ui SetLogLevel looked up proto.LogLevel_value with the lowercase
logrus name, which never matched the uppercase enum keys and silently fell back
to INFO — so trace/debug requests from the bundle flow had no effect.
2026-06-11 18:34:48 +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
cdcdd6a44f remove close animation from dialogs 2026-06-10 17:36:29 +02:00
Eduard Gert
7648aa7015 remove close animation from language picker 2026-06-10 16:58:52 +02:00