Commit Graph

658 Commits

Author SHA1 Message Date
Christopher Britton 1965409da4 WIP notification preferences menu 2026-08-24 16:02:19 -04:00
Christopher Britton bab4ea2746 Add icon for "toggle auth notification" menu item 2026-08-24 16:02:19 -04:00
Christopher Britton 22fb1d4c52 Collapse the two ShowToast overloads into one params version 2026-08-24 16:00:58 -04:00
Christopher Britton d457946663 Add toggle to disable auth OS notifications under advanced settings 2026-08-24 16:00:58 -04:00
Christopher Britton e2d60d2b8a Preserve sort order and default ext-auth providers across upgrades (#1059)
* Preserve sort order and default ext-auth providers across upgrades

* Update release notes
2026-08-19 16:10:17 -04:00
Christopher Britton 13f8dabbc6 Allow switching back to default when an alternate ZET is gone (#1047)
* Allow switching back to default when an alternate ZET  is gone
2026-07-27 15:58:28 -04:00
Christopher Britton 2d96b0f2d6 Show the UI when an identity is added by URL or needs MFA (#1042)
* Show UI on add-by-URL without tracking pending-identity state or auto-starting MFA setup
2026-07-21 15:30:18 -04:00
Christopher Britton da94d5352b MFA setup fixes (#1041)
* Add OS toast to differentiate between "totp required" and "mfa setup required"

* Add open-lock icon for identities needing MFA setup

* Refresh IsMFAEnabled on connect, drop redundant hideMfa, fix setup wording

* Fix silent MFA setup failure, surface error and reset toggle on unsuccessful enrollment_challenge

* Get rid of redundant log line - the mfa error comes over IPC already

* Update mfa setup needed icon

* Open mfa setup directly from main UI when a user clicks enable MFA icon on TOTP req, update release notes

* Cleanup
2026-07-20 09:49:01 -04:00
Christopher Britton e8751745b7 Fix identity details resizing and MFA recovery codes disappearing (#1034)
* Initial pass on stopping identity events from resizing id details view

* Size detail and MFA overlays from layout, not computed heights

* Re-add animation when deleting/adding an identity only

* Fix MFA recovery code screen intermittently closing instantly when setting up MFA

* Bind identity details height to main view height, move main UI closer to task bar when docked

* Update release notes

* remove unused main heigh var
2026-07-07 12:09:44 -04:00
Christopher Britton 03bd8e3941 Fix UI crash when a user clicks "application logs" with no UI log folder present (#1030) 2026-07-02 09:44:07 -04:00
Christopher Britton 789df90ffb Skip empty enrollment dialog for a single enroll-to signer (#1026)
* Skip empty enrollment dialog for a single enroll-to signer

* Make enroll to dialogue window visibility more readable
2026-06-29 11:54:00 -04:00
Christopher Britton 650b18250b Fix "Any time" maintenance window ignoring the chosen day (#1019)
* Honor weekly/monthly cadence when maintenance window is "any time"

* Add maintenance window tests to ensure "any time" honors weekly/monthly cadence

* Fix main menu automatic update label to accurately reflect maintenance window times

* Update release notes/comments
2026-06-24 15:57:34 -04:00
Christopher Britton 919e162433 Enable MFA setup from the main screen when MFA needs to be enabled - handle enrollment_required MFA event 2026-06-23 14:20:21 -04:00
dovholuknf ed499dfdf3 make beta release with sdk 1.17 and attempt to fix get started flickering 2026-05-29 14:45:14 -04:00
dovholuknf 446521e213 comment related cleanup 2026-05-26 09:21:14 -04:00
dovholuknf b55c03bbd1 add MaintenanceWindowControl with tray UI fixes (menu visibility, debugger unblock) 2026-05-22 17:18:26 -04:00
dovholuknf 4b8c5f827b add Daily/Weekly/Monthly maintenance window cadence with SCCM-style monthly modes 2026-05-22 17:17:07 -04:00
dovholuknf 0aed804b74 changes to remove dead code and tighten release notes 2026-05-20 13:17:56 -04:00
dovholuknf 4be3e885fa refactory tray out of massive file into smaller one with just new code 2026-05-20 08:26:06 -04:00
dovholuknf 74611eeeeb tweak menu enable/disable when collecting feedback 2026-05-19 14:21:46 -04:00
dovholuknf 79c46fa5bd tweak wording 2026-05-19 13:57:56 -04:00
dovholuknf 0813e6d6be initial commit of changes to add get started to first time use along with notification icon updates 2026-05-19 13:41:27 -04:00
Christopher Britton c10a94578b Enroll to cert / token (#1001)
* add enroll-to fields to AddIdentity payload

* add AddIdentityViewModel for external JWT signer discovery draft

* wire signer discovery into add-by-URL preflight, simplify JWT signer fetching significantly

* add signer discovery and picker to add-by-URL draft

* clean up enroll identifier payload lambdas to be more readable

* extract dialog fade-in/fade-out animation helpers

* discover external JWT signers and add a dedicated enroll-mode dialog when applicable

* Trigger external auth for enroll to token/cert on 'join network'

* clear the identities list when the tunneler shuts off

* remove identity clear from LoadStatusFromService in favor of the one in ServiceClient_OnClientDisconnected

* initial multi-tun support commit. used for development

* fix reconnect loop

* Update release notes

---------

Co-authored-by: dovholuknf <46322585+dovholuknf@users.noreply.github.com>
2026-05-07 11:50:33 -04:00
Clint Dovholuk 2f7e53f02c Allow registry overrides.conflict.free (#992)
* feat: bump dependencies (NuGet 8 -> 10, NLog 5 -> 6)

* feat: shared IPC data structures for policy state

* feat: registry policy reader with WMI watcher

* feat: monitor service policy enforcement, maintenance window, deferred install

* feat: UI policy state propagation, locks, deferred-install + sentinel UX fix

* feat: ADMX/ADML templates, admin guide, helper script, test runbook

* chore: build tooling, MSI SHA256, version bump, release notes

* more reworking around the adml/admx/md

* build and upload ADMX/ADML admin templates zip

* updates from looking at / testing GPO UI

* missed the prepare-for-tests ps1

* add boms to all ps1's just in case

* update test-run for more vebosity to allow humans to understand

* more updates to release notes

* Fix alignment on "from" label for maintenance window

* Remove arrow pointing to task bar

* Remove unused selection changed stub

* Ensure logical hour value is passed to maintenance window start/end

* Fix invalid URL error not showing - ensure maintenance start/end time errors return correctly

Change variable names

* reworking new-upcoming-releasenotes

* publish admin templates zip + sha256 sidecar to GitHub release, update release note

* add tatooing words

* reword clamping words

---------

Co-authored-by: Christopher Britton <christopher.l.britton@outlook.com>
2026-05-06 09:14:57 -04:00
Christopher Britton 4caadeb836 Fix external auth toast notifications and single-provider auto-launch (#999)
* Add external auth event if there's only 1 external provider and no default

* Clear AuthInProgress on error paths only in PerformExternalAuthEvent

* Allow re-clicking external auth button when auth is already in progress

* Rework ext auth event handling and add success/failure toast notifications

* Update release notes

* Fix ext auth toast not firing when ZET restarts

check incoming event needs external auth instead of stale local state

* Update and clean manual-testing.md

* Remove dead code

* update manual testing, remove redundant auth in progress reset, invert toast notification to avoid negation
2026-05-05 16:37:21 -04:00
Christopher Britton 48d354494f Improve feedback collection (#998)
* Add ByteFormat utility for human-readable byte sizes

* Show log level and feedback bundle size on feedback collection

* Fix gap between text and feedback spinner

* Add CaptureFeedbackProgress IPC event surface

* Emit progress events during feedback bundle creation

* Replace fixed feedback timeout with progress-event watch

* Log feedback collection lifecycle in CollectFeedbackLogs

* Simplify stream feedback progress via service heartbeat with stall detection

* Remove duplicate file size logic, fix log levels for debugging/errors

* Fix feedback in progress flag readability

* Fix feedback progress events

* Update release notes
2026-05-05 16:12:23 -04:00
Christopher Britton 1ddb281c14 Add update progress UI and failure handling (#991)
* Add update progress UI rough draft

* Fix sentinel restart detection and add progress preferences

* Add update failure handling and sentinel error recovery

* Clean up

* Update release notes

* resize progress popup to be more reasonable for smaller screens
2026-04-22 15:39:37 -04:00
Christopher Britton f65c380bd5 Replace WpfMouseWheelLib with one-row-per-notch wheel scrolling (#990)
* replace WpfMouseWheelLib with WheelScroll attached behavior

* Update release notes
2026-04-22 15:31:41 -04:00
Christopher Britton b86056d573 Fixes a layout regression on the Automatic Upgrades screen that appeared after 2.9.7.0 (#965)
* Fix layout and spacing on Automatic Upgrades screen
* Update release notes
* Extract SectionDivider style to App.xaml for reuse across MainMenu dividers
2026-04-07 11:00:00 -04:00
Christopher Britton b26da20fb4 Fix forget identity modal to fill entire UI area consistently (#959)
* Fix forget identity modal to fill entire UI area consistently

* Update release notes
2026-04-02 09:27:29 -04:00
Christopher Britton 28877a23e0 Add OS notifications for identities requiring authentication (#949)
* Add OS notifications for identities requiring authorization

  Shows toast notifications when identities need ext-auth or MFA. Single
  events include an action button (Authenticate for ext-auth). Multiple
  events arriving within a 5-second window are batched into a single
  summary notification to avoid spam.

* Fix notification throttle not re-firing when required

* Clean up notification throttle

* Move summary format to notification throttle constructor to clean up message queue signature

* update release notes

* Suppress auth notifications when app is visible, exclude disabled identities from notification count, update release notes
2026-04-01 13:52:34 -04:00
Christopher Britton 57adcdcd9e Sort identities by service count with auth-needing identities grouped by urgency (#950) 2026-04-01 11:39:14 -04:00
Christopher Britton f8ae3b6a17 Prevent advanced settings from being disabled during local debugging without the ziti service (#953) 2026-04-01 11:38:54 -04:00
Clint Dovholuk 289daf439e Beta release 2.10.0.0 (#951)
* Add UpdateInterfaceConfig IPC command with nested L3/L2 payload

UpdateInterfaceConfig replaces UpdateTunIpv4 - this prevents having to call a new separate interface UpdateL2Options for updating l3/l2 config options simultaneously

* Add L2Enabled toggle and PcapInterface dropdown to tunnel config edit modal

* Fix L2Enabled and PcapInterface not populating in tunnel config edit modal

* Add Use Pcap checkbox to control Pcap Interface selection in tunnel config

* chore: prepare beta 2.10.0.0 with ZET v1.14.0

* dos2unix build.ps1

* remove beta updates, add experimental stream for now

* remove experimental for now

---------

Co-authored-by: Christopher Britton <christopher.l.britton@outlook.com>
2026-03-31 16:52:45 -04:00
Christopher Britton 3850efd67b Normalize line endings to LF across the project 2026-03-20 09:10:29 -04:00
Christopher Britton 0c8a6dec7d Fix identity details service list scaling on sort/filter and start IdentityDetailsViewModel
* Move grid height calculation to Identity setter so it runs once per identity selection instead of on every sort/filter

* Extract service list sorting, filtering, and pagination into IdentityDetailsViewModel, replacing page-based pagination with virtual scroll
2026-03-19 16:00:36 -04:00
Christopher Britton 2e63b77e3d Hide identity column headers if disconnected or there are no identities
toggle column header visibility based on connection state and id count from viewmodel
2026-03-18 13:02:00 -04:00
Christopher Britton 331bfb07dc clear identities before updating identity view to properly display identities on disconnect/reconnect 2026-03-18 12:37:15 -04:00
Christopher Britton e86af675ad Add support for main identity list sorting (#916)
* Add logic to sort identities in the main identity list

* Add column headers to sortable identity fields

* Modify Identity Item renderer to use a grid to line up with main list column headers

* Add sort option and direction to settings

* Update sort logic to allow for ascending/descending sort

- Remove sort option from view state and just read directly from settings

- Add header separator to column headers

- Add Unicode arrows to indicate current sort direction

- Move repeated column header fields to style

* Refactor sort UI to use arrows indicating sort direction

Use shared size group between main window and identity item for name/status/services columns, use grid rows and column defs to possibly clean up header margins

* Update sort indicator from main window constructor so indicator is always present

Shift name column header to left

* Move main view model to new file, move sort logic to vm, bind sort ui to vm

tweak column header style
2026-03-18 11:49:43 -04:00
dovholuknf 61e9e623aa cover detail view when bind only too 2025-12-31 13:19:14 -05:00
dovholuknf 085ef5c278 when bind only, don't show addresses at this time 2025-12-31 13:13:00 -05:00
dovholuknf 1632e84083 add dial/bind to detail view. make details ever so slightly wider. add permissions to service detail. refactor styling to try to be more DRY 2025-12-31 12:42:27 -05:00
dovholuknf bcf2acea0d add permissions to model items to support views 2025-12-31 12:41:18 -05:00
dovholuknf 7dc96205ce update app.xaml and minor main menu changes 2025-12-31 12:39:24 -05:00
dovholuknf 28edbf9559 restyle scrollbar and move/refactor styles to try to tame the app.xml 2025-12-31 11:59:17 -05:00
dovholuknf bd48d4be0e hide the stats from the tunneler 2025-12-11 08:27:03 -05:00
dovholuknf dbd6be68d2 update setup script and remove more unneeded code 2025-10-01 12:48:26 -04:00
dovholuknf c0d9211c0b status updates from tunneler would reset mfa status 2025-10-01 09:50:00 -04:00
dovholuknf c7029423c1 closes #875 update to allow identity removal if identity is disabled or mfa enabled 2025-09-30 16:12:04 -04:00
dovholuknf f53ab5599a add url to the message 2025-09-26 13:32:15 -04:00