Back to blog
MyDeskViewer

Development changes

A public overview of recent development work, fixes and improvements. Internal implementation details are intentionally generalized.

Updated September 8, 2026 20:53 UTC

September 5, 2026

  • Platforms: Android
  • Added MyDeskViewer two-factor authentication (MFA/2FA) support to the Android client.
  • Google and email/password sign-in now stop at the MFA challenge when two-factor authentication is enabled for the account.
  • Android sign-in accepts both six-digit authenticator codes and one-time recovery codes before creating the local API session.
  • Added Android account controls to check MFA status and enable or disable two-factor authentication.
  • MFA setup can open an installed authenticator through the otpauth URI and also provides the manual setup key as a fallback.
  • Recovery codes can be copied or shared/saved from the Android setup flow.
  • The Android client can show the post-login MFA setup suggestion and dismiss it through the same account API used by the desktop client.
  • Platforms: Linux
  • Added full MyDeskViewer two-factor authentication (MFA/2FA) support to the Avalonia Linux client.
  • Google and email/password sign-in now detect MFA challenges before any local authenticated session is saved.
  • Linux sign-in accepts six-digit authenticator codes and one-time recovery codes, and stores the API session only after successful MFA verification.
  • Added Linux 2FA account settings with status checking, enable, disable, TOTP setup, and recovery-code handling.
  • MFA setup can open the otpauth URI through the Linux desktop and also provides a copyable manual setup key as a fallback.
  • Added post-login MFA setup suggestion support using the same account API as the Android client.
  • MFA secrets, authenticator codes, and recovery codes are not written to Linux application logs.
  • Reworked the Linux startup/account screen to better match the Windows MyDeskViewer layout on smaller displays.
  • Reduced the unused top spacing and made the main card more compact so the complete startup UI remains visible inside the fixed-size window.
  • Widened the primary Login with account action and explicitly centered button labels and status/account text.
  • Improved Machine ID and Copy alignment and centered the Copy button content.
  • Moved Settings outside the vertical startup card into an independent bottom-right action so it no longer pushes the main content downward.

September 3, 2026

  • Platforms: Windows
  • Added an Explorer selection fallback for file Copy operations that temporarily expose only the internal component clipboard marker instead of Module 2 format.
  • Physical files and folders selected in the active Explorer window are now resolved through Module 3 when standard clipboard formats are unavailable.
  • Resolved Explorer file paths are cached by native clipboard sequence so later local-to-remote Paste and remote-to-local file requests can use the same payload even after RemoteWindow becomes foreground.
  • Improved clipboard and file-transfer reliability.
  • Remote-to-local FILE Copy now keeps metadata only until the user actually pastes on the host computer.
  • Ctrl+V with a pending remote FILE copy captures the current Explorer destination and starts the existing file transfer directly into that folder.
  • Direct Explorer paste no longer requires a temporary clipboard-cache copy before the destination file appears.
  • A narrowly scoped host paste hook intercepts only Ctrl+V while the newest clipboard candidate is a remote FILE; all unrelated keyboard input passes through untouched.
  • Improved the fallback path for file Paste outside Explorer.
  • Added live cross-machine IMAGE clipboard payload transfer for Windows.
  • Clipboard images are normalized to PNG for transport while Copy detection still accepts supported native image formats, PNG, and desktop framework bitmap sources.
  • Local-to-remote IMAGE Paste now transfers the PNG payload, applies it to the active remote user's Windows clipboard, waits for acknowledgement, and then sends the remote Ctrl+V.
  • Remote-to-local IMAGE Copy now prefetches the image payload into the local Windows clipboard so normal host Paste works without a separate file-style staging step.
  • Platforms: Windows, Server/Linux
  • Improved image clipboard compatibility with Windows applications.
  • Improved internal clipboard diagnostics and compatibility.
  • IMAGE Paste no longer leaves delayed-rendered desktop framework clipboard objects owned by MyDeskViewer after the transfer completes.
  • Added account-wide clipboard preferences with synchronization enabled by default.
  • Added Settings controls for Enable clipboard synchronization and Always show desktop notification on Copy.
  • Clipboard synchronization can now be disabled without affecting normal native Ctrl+C/Ctrl+V inside the remote computer.
  • Desktop balloons are now optional and limited to Copy events; RemoteWindow keeps user-facing Copy/Paste status overlays.
  • Replaced clipboard revision/type debug text in user-facing notifications with concise text/file/image Copy and Paste messages.
  • Added compact Select all, Copy, and Paste buttons at the start of the RemoteWindow toolbar before Files.
  • Shortened toolbar labels to Cover, Reboot, Console, and Block input.
  • Moved the connection Quality control to the far right after Tools.
  • Platforms: Android
  • Added explicit Android edge-to-edge safe-area handling for the system status and navigation bars.
  • The top system status area now uses the MyDeskViewer green background with light system icons.
  • The bottom Android navigation area now uses the dark session background and the app content is inset above it so controls no longer sit under the system navigation bar.
  • Updated the WindowInsets listener signature to match nullable AndroidX interface annotations without warning suppression.
  • Remote ON/OFF is now available without signing in to a MyDeskViewer account.
  • Account sign-in remains optional for remote phone access and is still used for saved computers and account-backed features.
  • Replaced the per-installation eViewUpdate.type marker and legacy text update-type files with a machine-wide ProgramData update-settings.json file.
  • Update preference and installed update type are now stored together under [internal path] module so MyDeskViewer and MyDeskViewerSvc use the same values before and after user logon.
  • Existing eViewUpdate.type, update-type.txt, and installed-update-type.txt values are migrated automatically and removed after the JSON settings file is saved successfully.
  • The update apply script now writes the machine-wide JSON only after a successful file apply and no longer recreates eViewUpdate.type in the application directory.
  • Removed MySqlConnector completely from the shared evilsoft library and therefore from the MyDeskViewer/MyDeskViewerSvc Windows runtime dependency graph.
  • MySqlConnector.dll will disappear from future published update manifests; the existing updater cleanup removes stale local copies.
  • Excluded the unused legacy PsExec-like one-shot service launcher from MyDeskViewerSvc, including its temporary CreateService/StartService/DeleteService flow and --psexec-system-run command mode.
  • MyDeskViewerSvc now reuses the existing eViewCore ProcessInstanceGuard implementation for sender process/session detection and cleanup instead of compiling a second local implementation.
  • Current pre-login and logged-in sender startup continues through InteractiveSystemProcess, so Windows service startup behavior is unchanged.
  • Improved the Windows application/tray version label to show a friendly update channel and runtime instead of the raw Beta/net8 text.
  • Version labels now use Stable channel or Beta channel together with .NET 8.0 or .NET 9.0, for example: 2026.9.3.2207 • Beta channel • .NET 8.0.

September 2, 2026

  • Platforms: Windows
  • Added a persistent Windows machine ID cache so the service keeps the same identity before login and after reboot.
  • Unified machine ID resolution between the Windows UI, background sender, and Windows service startup.
  • Replaced the Windows clipboard legacy helper brokers with native Windows clipboard handling.
  • Removed global Ctrl+C/Ctrl+V low-level keyboard hooks from the Windows client clipboard path.
  • Clipboard synchronization now reacts to actual Windows clipboard changes while a remote session is active.
  • Remote clipboard changes are prefetched into the local Windows clipboard so normal Paste works in other applications.
  • Replaced legacy-helper-based Explorer paste-target detection with in-process Windows and Module 3 handling.
  • Rebuilt Windows clipboard synchronization around two independent internal module buffers for text and files, with the last copied type becoming the active paste source.
  • Local Windows clipboard changes are now captured through Module 2 event without monitoring global keyboard input.
  • Remote Copy now fetches the full remote clipboard payload immediately and mirrors it into the local Windows clipboard.
  • Remote Paste now uses the active internal module text/file buffer and falls back to the remote Windows clipboard when the internal module buffer is empty.
  • Remote file paste now stages files and applies Module 2 format through the native active-user clipboard before sending the remote Paste shortcut.
  • Improved clipboard access for background and service sessions.
  • Remote clipboard changes made through Explorer or context menus are detected from the active user clipboard instead of key events.
  • Windows tray balloons are limited to short Copied feedback; clipboard and file-transfer status remains inside the RemoteWindow overlay.
  • Improved internal clipboard diagnostics and compatibility.
  • MyDeskViewer now observes local Windows Copy events continuously and classifies only text or file clipboard data.
  • Active remote sessions now exchange clipboard Copy metadata only; this phase does not transfer clipboard payloads or execute Paste actions.
  • RemoteWindow Copy now forwards the real remote Copy shortcut and waits for the remote internal module clipboard event instead of requesting a clipboard payload snapshot.
  • RemoteWindow Paste is temporarily diagnostic-only and reports the newest known clipboard candidate without modifying either computer.
  • Improved the Windows release signing and publishing workflow.
  • Improved file and image Copy detection through an internal compatibility module.
  • Kept text and image clipboard classification unchanged while giving file payloads priority over image and text representations.
  • The uploader now starts automatically after resolving the marker while preserving the existing Normal-to-Beta synchronization behavior.
  • Enabled phase-two live Windows clipboard Paste for text and files while keeping image payload transfer deferred.
  • Remote Copy now prefetches text and file payloads into the local Windows clipboard so normal local Paste works outside RemoteWindow.
  • RemoteWindow Paste now sends local text/files to the target and waits for clipboard-apply acknowledgement before issuing the remote Ctrl+V shortcut.
  • Copy and Paste inside the same remote session now use the remote Windows clipboard directly without retransferring the payload.
  • Added a private MyDeskViewer clipboard marker so programmatically mirrored clipboard writes are ignored by Module 2 event and do not become false local Copy revisions or feedback loops.
  • Improved an internal module while keeping the public behavior unchanged.
  • Image Copy remains fully classified and revisioned in local and remote metadata; cross-machine image payload transport is intentionally deferred to the next phase.
  • File Copy classification can now resolve filesystem paths through Module 3 before falling back to raw Module 2 format.
  • Extended event-scoped clipboard retries for unresolved Explorer internal component copies to observe delayed file-format materialization up to roughly 1.8 seconds after the clipboard event.

September 1, 2026

  • Platforms: Windows, Android
  • Added a default connection quality setting with Auto and fixed P1-P10 profiles.
  • Automatic stream quality now keeps one profile of safety headroom below the confirmed stable ceiling.

August 25, 2026

  • Platforms: Windows, Server/Linux
  • Added per-machine unattended access with an optional local approval prompt.
  • Incoming access prompts now show the authenticated remote user's name.