Align Settings tab density and header spacing with the UX 3.5 mobile shell through 1024px. Add UI contracts for sticky behavior, horizontal scrolling, compact breakpoints, and hash tab scrolling.
Refs #396
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Add persistent Server Attestation badge title and tier labels with branding-aware rendering, localized fallbacks, and protected configuration endpoints. Include validation, public display sanitization, UI controls, and regression tests.\n\nRefs #394\n\nThanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Allow the split console to read and write the P2P, relay, NAT, and initiator policy through the Go server's shared database API. Apply validated changes atomically at runtime, keep native systemd and compose paths unchanged, and cover the flow with regression tests and Docker image checks.
Refs #432
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Add an explicit RFC1918 and IPv6 ULA allowlist for on-premises OIDC providers while retaining SSRF protections for loopback, link-local, metadata, multicast, and unspecified destinations. Apply destination validation to discovery, token, UserInfo, redirects, and actual network dials.\n\nRefs #435\n\nThanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Avoid resetting the canvas during visual viewport scroll events and only resize when the rendered viewport dimensions actually change. This prevents transient black bars while interacting with the remote desktop on tablets.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Accept valid zero-length BytesCodec frames in the Node and Go raw relay paths while continuing to reject empty protobuf control frames. This keeps native and mixed relay transports compatible with RustDesk peers and empty raw payloads.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Add automatic mobile codec, FPS, touch, lifecycle, and relay diagnostics while preserving the HTTP H.264 fallback. Avoid opening file-transfer relays during the initial session and document the HTTPS/HTTP behavior.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Operators can switch a BetterDesk Desktop client between normal and incoming-only. The command is stored per device and delivered only inside the signed telemetry envelope.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Persist panel-managed NTP settings in the Go server database and apply them without requiring systemd or host Docker access in split image deployments. Keep native restart behavior and make failed restart transactions dismissible in the UI.
Refs #431
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Use a supported folder icon and a CSS-only disclosure chevron so the profile header never renders icon names as text.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Use the self-hosted Material Symbols font for the profile disclosure chevron.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Add allowlisted configuration management, permission diagnostics, safe service control, and repair workflows across native and Docker installers. Integrate panel capability checks with broker-backed writes and rollback, and document/test the lifecycle contract.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Ensure custom split deployments without an explicit DB_URL use the same absolute volume-backed SQLite path as credential bootstrap. Preserve DB_PATH and PostgreSQL DATABASE_URL overrides, and cover the entrypoint contract with a regression test.
Refs #385
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Coordinate restart-required settings changes through authenticated, reversible transactions and synchronize legacy user last-login timestamps. Include the completed locale updates and restart-flow UI/service changes.
Refs #426
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
Retain legacy font URLs for cached pages and older client views while the
console uses self-hosted Material Symbols. This prevents 404s during rollout.
Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)