Loren Eteval
e8d5b342fd
Add settings search
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-10-06 18:49:44 +08:00
Loren Eteval
364ba76809
Improve connection diagnostics
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-10-06 18:49:44 +08:00
Loren Eteval
e7eb04d77b
Extend compiled lifetime coverage
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-10-06 14:35:37 +08:00
Loren Eteval
47ffb8024d
Fix Qt callback lifetimes
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-10-06 12:12:47 +08:00
Loren Eteval
251ec3cec6
Add sing-tun settings UI
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-10-06 00:37:54 +08:00
Loren Eteval
e3fc1469bf
Retain failed download runtime cleanup for retry
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 21:05:54 +08:00
Loren Eteval
41da0417fe
Preserve runtime ownership through cancellation and cleanup
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 20:48:53 +08:00
Loren Eteval
3c6732c592
Preserve controller ownership through partial cleanup
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 20:48:28 +08:00
Loren Eteval
aa6bd6dcde
Validate external core shutdown timeouts
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 20:48:10 +08:00
Loren Eteval
2be63cae26
Make tests independent of Git history and update suite documentation
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 19:05:51 +08:00
Loren Eteval
cc7e7f56d5
Fix platform-dependent regression test fixtures
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 15:40:02 +08:00
Loren Eteval
d669c3aac6
Fix cross-platform test assumptions
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 15:11:10 +08:00
Loren Eteval
7c04feafe3
Document Qt lifetime boundaries
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 12:07:51 +08:00
Loren Eteval
67c76a48b9
Extend compiled lifetime probes
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 11:12:26 +08:00
Loren Eteval
74006b6bf8
Disable optional log pause controls
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 09:49:13 +08:00
Loren Eteval
5c6e27225b
Move server tests to Home menu
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-19 09:49:13 +08:00
Loren Eteval
493efc00fd
Document search and log interaction contracts
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 23:15:22 +08:00
Loren Eteval
d189046ebe
Gate publication on source regression tests
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 22:03:10 +08:00
Loren Eteval
69cd257090
Add subscription update cancellation
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 22:03:10 +08:00
Loren Eteval
87c06d8d1f
Dispose output resources when runtime preparation fails
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 22:03:07 +08:00
Loren Eteval
e4f7c9f7dd
Preserve stored data when repository restoration fails
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 22:03:05 +08:00
Loren Eteval
acc559cb45
Fix Qt dialog ownership and worker shutdown lifetimes
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-18 20:53:19 +08:00
Loren Eteval
d842207066
Add routing rule reordering and previews
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-17 23:55:21 +08:00
Loren Eteval
756ca40273
Release Xray asset download resources
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-09 15:58:47 +08:00
Loren Eteval
24d3d29af9
Batch profile imports and deletions
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-09 01:00:02 +08:00
Loren Eteval
b455c4cf54
Refine rounded item-view styling
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-08 23:42:03 +08:00
Loren Eteval
69d17d0b8f
Fix rounded popup corners
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-08 22:33:22 +08:00
Loren Eteval
3132ecd498
Improve profile actions and empty-state guidance
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-08 15:59:34 +08:00
Loren Eteval
525b357c55
Guard synchronous subscription shutdown
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-08 15:52:25 +08:00
Loren Eteval
7601d5ae96
Document runtime ownership contracts
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-09-08 10:53:30 +08:00
Loren Eteval
5bbd00eda7
Scale QR export without a progress dialog
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-31 13:31:15 +08:00
Loren Eteval
fd619845a5
Test subscription update scalability
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-31 10:07:47 +08:00
Loren Eteval
d9793286d1
refactor: make connection startup asynchronous
...
Replace GUI connection startup waits with a cancellable, staged Qt transaction. Observe core endpoints, DNS resolution, TUN device readiness, and runtime survival without nested event-loop waits while preserving the synchronous plugin compatibility path.
Commit runtimes only after every required stage succeeds, reject stale generations, and cover readiness, cancellation, rollback, platform ordering, and controller integration.
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-30 17:09:05 +08:00
Loren Eteval
3844a8b9aa
refactor: extract profile testing service
...
Move latency and download-speed scheduling out of ServerTableView into an identity-safe service. Add bounded Ping execution, a dedicated adaptive Qt TCPing thread, concurrent non-blocking core startup, and subscription-scoped cancellation with stale-result rejection. Cover scheduler behavior, cancellation races, repository reconciliation, and Qt resource cleanup.
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-30 12:46:43 +08:00
Loren Eteval
0f8a792a6f
feat: add smooth theme transitions
...
Apply resolved themes immediately beneath a 500 ms snapshot cross-fade shared by visible top-level windows. Keep interruption, resize, shutdown, and reduced-animation paths deterministic, with real Qt lifecycle coverage.
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-29 21:05:58 +08:00
Loren Eteval
e0ea8f4614
fix: preserve Qt interaction semantics
...
Scope all server-table shortcuts, including nested menu actions, to the focused table. Preserve profile identity, selection, current index, active state, and focus across sorting and repository moves, and make the complete custom switch track clickable.
Add real QTest coverage for keyboard and mouse dispatch, proxy mapping, shared Home and Settings state, menu lifetimes, and transient editor keyboard behavior. Document the logic, Qt integration, and small-workflow test layers.
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-29 19:59:43 +08:00
Loren Eteval
a178172a91
fix: verify Xray asset downloads before replacement
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-28 09:21:52 +08:00
Loren Eteval
fbd28c48d4
Implement generation-based log storage
2026-08-27 14:58:38 +08:00
Loren Eteval
81e05829d9
Expand test coverage and fix lifecycle contracts
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-23 08:55:24 +08:00
Loren Eteval
8c01932843
Refine application dialog presentation lifecycle
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-23 07:27:38 +08:00
Loren Eteval
0886118130
Refine top-level window geometry lifecycle
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-22 23:31:33 +08:00
Loren Eteval
c47397a0ce
Test backend editor compatibility
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-21 12:21:30 +08:00
Loren Eteval
e860c4d7a3
Update protocol editor tests and guidance
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-20 21:48:46 +08:00
Loren Eteval
2d9a03668c
Update test suite guidance
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-20 19:34:45 +08:00
Loren Eteval
936a5b3664
Add proxy endpoint information
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-19 11:02:53 +08:00
Loren Eteval
8510a0cb9b
Fix native TUN ownership semantics
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-17 18:19:55 +08:00
Loren Eteval
7479469ceb
Expand application test coverage
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-17 15:42:59 +08:00
Loren Eteval
ca3de8586e
Add project tests
...
Signed-off-by: Loren Eteval <loren.eteval@proton.me >
2026-08-17 15:42:59 +08:00