Skip to content

v0.7.3-alpha — launch crash fixed, clipboard + keyboard shortcuts, shared folder

Choose a tag to compare

@cremenescu cremenescu released this 28 Jul 07:25
· 72 commits to main since this release

This release replaces v0.7.0, v0.7.1 and v0.7.2, which were withdrawn because they
could crash on launch. That crash is fixed and the cause is understood — details below.

Automatic updates are enabled again with this build.

Fixed

Crash on launch when several saved RDP sessions reconnected at once. This is what
made the 0.7.x builds unusable. It was blamed on the new redirection code and reverted,
but the reverted build crashed identically — the real cause was FreeRDP's multi-threaded
codec decoder racing on its shared thread pool while more than one session decoded at the
same time. Each session now decodes on its own thread.

Restored sessions stayed at 640x480. A session reopened on launch connects before its
window has a real size, and the resize request was sent before the display channel existed,
so it was lost. The size is now re-applied as soon as that channel comes up.

Connections to hosts by IP failed on the certificate. Self-signed certificate, a name
that never matches (the certificate names the host, you connect to an address), and a
rebuilt machine presenting a new certificate — that combination aborted the connection
before the accept handlers ever ran.

Keyboard shortcuts did nothing (#7). Ctrl+C, Ctrl+Z and friends were sent as Unicode
text, and Windows ignores modifier keys on Unicode input, so the letter was typed instead
of the shortcut firing. Shortcuts now go out as scancodes; plain typing still uses Unicode,
so keyboard layouts that differ between your Mac and the server keep working.

The connection editor could reopen empty and refuse to close after quitting with it open.

New

Clipboard redirection (#7) — text and images, both directions. Copy on the Mac and
paste in the session, or the other way round.

Shared folder over RDP. Pick a folder in the connection's settings and it appears in
the session as a drive under \\tsclient, readable and writable from both sides. It is off
until you pick one, and nothing else on your Mac is ever exposed. Set it on a folder in the
tree and every connection under it inherits the same one.

Tab right-click: "Edit connection..." opens that tab's settings directly, and
"Go to in sidebar" selects and scrolls to it in the tree.

Password field: show/hide toggle and a paste button. Pasted passwords have trailing
newlines stripped — password managers add them, and they silently break authentication.

Inherit checkboxes on username, domain and password, so one credential set on a folder
can serve every connection under it. Checking the box ignores the connection's own value
instead of erasing it.

Not included

Audio redirection is still off. The macOS backend initializes an audio input unit, which
needs the microphone entitlement and otherwise aborts the app on the first sound.

Copying files through the clipboard is not implemented — the clipboard carries text and
images only. Use the shared folder above to move files.