Windows and macOS are listed as supported targets in the README, but SSH/RDP/VNC workflows have not been validated on either platform. No repeatable validation checklist or scripts exist yet.
Scope (per docs/PROGRESS.md Milestone 7):
Validate SSH/RDP/VNC workflows on Windows, Linux, and macOS
Fix platform-specific runtime/process/auth issues
Add a repeatable protocol validation checklist/scripts
Windows and macOS are listed as supported targets in the README, but SSH/RDP/VNC workflows have not been validated on either platform. No repeatable validation checklist or scripts exist yet.
Scope (per docs/PROGRESS.md Milestone 7):
- Validate SSH/RDP/VNC workflows on Windows, Linux, and macOS
- Fix platform-specific runtime/process/auth issues
- Add a repeatable protocol validation checklist/scripts
Build succeeds via Homebrew Qt6/OpenSSL path in docs/BUILDING.md, no changes needed there.
Found and fixed: Edit/New Profile dialog form fields rendered at sizeHint width (small, with empty space beside them) on macOS's native style, because QFormLayout had no explicit field growth policy and macOS's default differs from Linux's Fusion/Breeze. Fixed in commit 4b4b7d6. Confirmed fixed on macOS.
Still to validate on macOS: SSH session (KodoTerm terminal rendering/input), RDP session (display, keyboard, clipboard, cursor -- all recently reworked for Linux, unverified on macOS). Windows not yet attempted.
macOS validation, first pass:
- Build succeeds via Homebrew Qt6/OpenSSL path in docs/BUILDING.md, no changes needed there.
- Found and fixed: Edit/New Profile dialog form fields rendered at sizeHint width (small, with empty space beside them) on macOS's native style, because `QFormLayout` had no explicit field growth policy and macOS's default differs from Linux's Fusion/Breeze. Fixed in commit 4b4b7d6. Confirmed fixed on macOS.
Still to validate on macOS: SSH session (KodoTerm terminal rendering/input), RDP session (display, keyboard, clipboard, cursor -- all recently reworked for Linux, unverified on macOS). Windows not yet attempted.
macOS validation: RDP cursor/pointer shape sync confirmed working too.
Summary -- macOS build, profile dialog, SSH terminal, RDP display/keyboard/clipboard/cursor all validated working (one bug found and fixed: profile dialog field sizing, commit 4b4b7d6). Windows still unvalidated.
macOS validation: RDP cursor/pointer shape sync confirmed working too.
Summary -- macOS build, profile dialog, SSH terminal, RDP display/keyboard/clipboard/cursor all validated working (one bug found and fixed: profile dialog field sizing, commit 4b4b7d6). Windows still unvalidated.
Windows validation, first pass (build environment on a fresh Windows 11 machine, driven remotely over SSH):
Confirmed the docs/BUILDING.md toolchain steps work (Git/CMake/Ninja/VS Build Tools via winget, vcpkg for Qt6/OpenSSL/zlib). One doc-worthy gotcha found along the way: the VS Build Tools VCTools workload's actual compiler is a "recommended" not "required" component, so a bare --add Microsoft.VisualStudio.Workload.VCTools silently installs without the compiler unless --includeRecommended (or an explicit --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64) is also passed.
Found and fixed three real app-side bugs, all in commits 30f0134 and f3ea7f1:
App failed to launch at all ("Could not find the Qt platform plugin") -- Qt loads platform/SQL-driver plugins dynamically, invisible to vcpkg's import-table-based DLL auto-deployment, so they never got copied next to the exe.
Once the platform plugin was fixed, SQLite init still failed ("can not load requested driver QSQLITE") -- vcpkg's qtbase links the QSQLITE plugin against a separate shared sqlite3.dll rather than bundling it.
A console/command-prompt window appeared behind the GUI on every launch -- plain add_executable() defaults to the console subsystem on Windows; needs the WIN32 keyword.
All three fixed via CMakeLists.txt (POST_BUILD plugin/DLL deployment + WIN32 executable flag), verified from a clean checkout + clean build: app now launches straight to a normal GUI window, no console, no errors.
Still to validate on Windows: SSH session, RDP session (display/keyboard/clipboard/cursor), profile dialog layout.
Windows validation, first pass (build environment on a fresh Windows 11 machine, driven remotely over SSH):
- Confirmed the docs/BUILDING.md toolchain steps work (Git/CMake/Ninja/VS Build Tools via winget, vcpkg for Qt6/OpenSSL/zlib). One doc-worthy gotcha found along the way: the VS Build Tools VCTools workload's actual compiler is a "recommended" not "required" component, so a bare `--add Microsoft.VisualStudio.Workload.VCTools` silently installs without the compiler unless `--includeRecommended` (or an explicit `--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64`) is also passed.
- Found and fixed three real app-side bugs, all in commits 30f0134 and f3ea7f1:
1. App failed to launch at all ("Could not find the Qt platform plugin") -- Qt loads platform/SQL-driver plugins dynamically, invisible to vcpkg's import-table-based DLL auto-deployment, so they never got copied next to the exe.
2. Once the platform plugin was fixed, SQLite init still failed ("can not load requested driver QSQLITE") -- vcpkg's qtbase links the QSQLITE plugin against a separate shared sqlite3.dll rather than bundling it.
3. A console/command-prompt window appeared behind the GUI on every launch -- plain `add_executable()` defaults to the console subsystem on Windows; needs the `WIN32` keyword.
- All three fixed via CMakeLists.txt (POST_BUILD plugin/DLL deployment + `WIN32` executable flag), verified from a clean checkout + clean build: app now launches straight to a normal GUI window, no console, no errors.
Still to validate on Windows: SSH session, RDP session (display/keyboard/clipboard/cursor), profile dialog layout.
Windows validation, continued and complete for now:
RDP clipboard sync (host <-> remote): working.
RDP cursor/pointer shape sync: working.
Profile dialog layout: correct.
Combined with the earlier updates on this issue: Windows build environment, app launch, RDP connect (crash + host resolution, both fixed), Tab-key forwarding, and the exe icon are all validated and working on Windows 11 now. Bugs found along the way are tracked/closed individually: #8-#14.
Remaining for full Milestone 7 completion: SSH terminal on Windows still needs a dedicated pass (only briefly confirmed working so far), and macOS/Windows have not been cross-checked against each other for anything beyond what's listed here.
Windows validation, continued and complete for now:
- RDP clipboard sync (host <-> remote): working.
- RDP cursor/pointer shape sync: working.
- Profile dialog layout: correct.
Combined with the earlier updates on this issue: Windows build environment, app launch, RDP connect (crash + host resolution, both fixed), Tab-key forwarding, and the exe icon are all validated and working on Windows 11 now. Bugs found along the way are tracked/closed individually: #8-#14.
Remaining for full Milestone 7 completion: SSH terminal on Windows still needs a dedicated pass (only briefly confirmed working so far), and macOS/Windows have not been cross-checked against each other for anything beyond what's listed here.
macOS re-verification after the recent round of fixes: confirmed everything working, including the changes that landed since the first macOS pass -- the single merged Profiles/Session window (a89748b), Tab-key forwarding to remote sessions (fce69b8), and the RDP key-repeat fix (8f83b0c).
At this point Linux, macOS, and Windows have all been validated against the current feature set (SSH, RDP display/keyboard/clipboard/cursor, Tab forwarding, key repeat, profile dialog, single-window UI). Windows required real fixes along the way (tracked individually: #8-#15); macOS and Linux needed no platform-specific changes beyond the one profile-dialog layout fix (#2 comment, commit 4b4b7d6).
macOS re-verification after the recent round of fixes: confirmed everything working, including the changes that landed since the first macOS pass -- the single merged Profiles/Session window (a89748b), Tab-key forwarding to remote sessions (fce69b8), and the RDP key-repeat fix (8f83b0c).
At this point Linux, macOS, and Windows have all been validated against the current feature set (SSH, RDP display/keyboard/clipboard/cursor, Tab forwarding, key repeat, profile dialog, single-window UI). Windows required real fixes along the way (tracked individually: #8-#15); macOS and Linux needed no platform-specific changes beyond the one profile-dialog layout fix (#2 comment, commit 4b4b7d6).
Fully validated per the comment history above -- Linux, macOS, and Windows have all been confirmed working for SSH, RDP (display/keyboard/clipboard/cursor), Tab forwarding, key repeat, and profile dialog layout. Platform-specific bugs found along the way are tracked/closed individually (#8-#15). Closing as complete.
Fully validated per the comment history above -- Linux, macOS, and Windows have all been confirmed working for SSH, RDP (display/keyboard/clipboard/cursor), Tab forwarding, key repeat, and profile dialog layout. Platform-specific bugs found along the way are tracked/closed individually (#8-#15). Closing as complete.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Windows and macOS are listed as supported targets in the README, but SSH/RDP/VNC workflows have not been validated on either platform. No repeatable validation checklist or scripts exist yet.
Scope (per docs/PROGRESS.md Milestone 7):
macOS validation, first pass:
QFormLayouthad no explicit field growth policy and macOS's default differs from Linux's Fusion/Breeze. Fixed in commit4b4b7d6. Confirmed fixed on macOS.Still to validate on macOS: SSH session (KodoTerm terminal rendering/input), RDP session (display, keyboard, clipboard, cursor -- all recently reworked for Linux, unverified on macOS). Windows not yet attempted.
macOS validation, continued:
Still unconfirmed on macOS: RDP cursor/pointer shape sync. Windows not yet attempted.
macOS validation: RDP cursor/pointer shape sync confirmed working too.
Summary -- macOS build, profile dialog, SSH terminal, RDP display/keyboard/clipboard/cursor all validated working (one bug found and fixed: profile dialog field sizing, commit
4b4b7d6). Windows still unvalidated.Windows validation, first pass (build environment on a fresh Windows 11 machine, driven remotely over SSH):
--add Microsoft.VisualStudio.Workload.VCToolssilently installs without the compiler unless--includeRecommended(or an explicit--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64) is also passed.30f0134andf3ea7f1:add_executable()defaults to the console subsystem on Windows; needs theWIN32keyword.WIN32executable flag), verified from a clean checkout + clean build: app now launches straight to a normal GUI window, no console, no errors.Still to validate on Windows: SSH session, RDP session (display/keyboard/clipboard/cursor), profile dialog layout.
Windows validation, continued and complete for now:
Combined with the earlier updates on this issue: Windows build environment, app launch, RDP connect (crash + host resolution, both fixed), Tab-key forwarding, and the exe icon are all validated and working on Windows 11 now. Bugs found along the way are tracked/closed individually: #8-#14.
Remaining for full Milestone 7 completion: SSH terminal on Windows still needs a dedicated pass (only briefly confirmed working so far), and macOS/Windows have not been cross-checked against each other for anything beyond what's listed here.
macOS re-verification after the recent round of fixes: confirmed everything working, including the changes that landed since the first macOS pass -- the single merged Profiles/Session window (
a89748b), Tab-key forwarding to remote sessions (fce69b8), and the RDP key-repeat fix (8f83b0c).At this point Linux, macOS, and Windows have all been validated against the current feature set (SSH, RDP display/keyboard/clipboard/cursor, Tab forwarding, key repeat, profile dialog, single-window UI). Windows required real fixes along the way (tracked individually: #8-#15); macOS and Linux needed no platform-specific changes beyond the one profile-dialog layout fix (#2 comment, commit
4b4b7d6).Fully validated per the comment history above -- Linux, macOS, and Windows have all been confirmed working for SSH, RDP (display/keyboard/clipboard/cursor), Tab forwarding, key repeat, and profile dialog layout. Platform-specific bugs found along the way are tracked/closed individually (#8-#15). Closing as complete.