v3.0
Desktop+ 3.0 is the next major version, bringing the year-long developments of the NewUI branch to the stable releases.
It comes with an all-new interface, new and enhanced features and vast improvements on ease of use.
New:
UI
- Added new user interface
- Added "Show Advanced Settings" setting
Advanced and rarely used settings are now hidden by default - Added German translation
- Added Japanese community translation by まるまさ (Marumasa) / @malken21
- Added Persistent UI settings
UI windows can remember their size and position across sessions (by default only enabled for keyboard) - Added drag-able rectangle widget cropping adjustment option
- Added option to select individual elements to reset to the Restore Default Settings prompts
Keyboard
- Added fully custom VR keyboard
Included keyboard layouts: QWERTY (USA), QWERTZ (Germany), AZERTY (France), AZERTY (Belgium), QWERTY (United Kingdom), QWERTY (Spain), QWERTY (Latin America). - Added keyboard auto-visibility
This behavior is experimental for desktop and window overlays as there's no reliable way to detect all input fields.
The current implementation works well enough for applications using native controls or sending the correct assistive events.
Laser Pointer
- Added custom laser pointer implementation
- Desktop Duplication overlay laser pointer input is now masked to the desktop layout (unused space is pass-through)
- Added pen input simulation
- Added mouse input smoothing setting, based on Radial Follow Smoothing OpenTabletDriver Plugin
- Added setting to use smooth scrolling
- Added global keyboard shortcut support to gaze-based HMD laser pointer input
- Added overlay drag settings (Force Upright/Fixed Distance/Snap Position/Auto Docking)
Window Overlays
- Added window overlay auto-restoration
Window overlay captures are now automatically restored when a previously captured window appears again.
The window matching algorithm now also uses window class name for comparisons to reduce the chance of false positives. - Added "On Capture Lost" setting (Nothing/Hide Overlay/Remove Overlay)
- Added "Enabling Strict Window Matching" overlay property
- Added ability to pull a window out of a desktop overlay by holding a window by its title bar and scrolling down
- Added fallback behavior for when focusing a window fails, setting the window as topmost temporarily instead
- Secondary windows, such as context menus, are now included in window captures if possible (requires Windows 11 24H2)
Actions
- Revamped actions (composed of commands, better targeting, new functions)
- Added overlay tags (replacing overlay group IDs for more flexibility)
- Added application profiles
- Added "Toggle Dashboard (Debug Command)" default action
- Extended action bindings entry limits (20 for global shortcuts, unlimited for hotkeys)
Overlays
-
Added overlay origin setting "Turn with HMD" for HMD Floor Position origin
-
Added support for browser overlays
Browser overlays require an optional application component to be installed separately. Available and compatible components are listed at the bottom of the release notes. -
Added SteamVR Theater Screen support
Floating UI
- Redesigned Floating UI
- Added button to reset Performance Monitor cumulative values to Floating UI
- Added option of removing the overlay instead of hiding it by long-holding the Floating UI Hide Overlay button
- Floating UI now displays the overlay name when the output is invalid (i.e. window capture lost)
Desktop Mode
- Added ability to use shift+mouse wheel during desktop mode drag movement to adjust the overlay size
- Added support for full keyboard control in desktop mode
- Added per-monitor DPI-awareness in desktop mode (previously only had fixed DPI on launch)
- Added hidden setting to override desktop mode UI scaling (check config_default.ini for details)
Misc
- Added diagnostic logging (basic system info, detected desktop layout, capture capabilities and init info)
- Added command-line argument allowing external applications to execute an action ("--DoAction [UID]")
Use the new "Copy UID to Clipboard" button to obtain the UID for this. - Command-line arguments are now also accepted in GNU-style double-dashed format
- Added Desktop+ 2.x configuration & profile migration
Changed:
- Overlay #0 is not longer the special dashboard overlay
All overlays can now have the same settings, with the first dashboard-origin overlay being treated as the primary dashboard overlay, if any. - Overlays no longer store separate positions per origin setting and instead convert them to the new origin when switching
- There no longer is any distinction between single and multi-overlay profiles. You can freely choose which overlays to save in a profile and which to add from one.
- HMD-Pointer override now works with all input devices. It has been renamed to "Allow Pointer Override"
- Revamped internal overlay handling
For end-users, this eliminates all flicker after reordering or deleting overlays. For third-party tools accessing Desktop+ overlays, this means the overlay keys no longer change when the overlay order changes.
The overlay keys do match the order in the overlay bar when a profile gets loaded (or on startup). - Cropping can now be toggled off without changing cropping values
- Cropping width/height now jump back to their previous value during manual adjustments of the cropping X/Y values when possible
- Laser Pointer Override no longer triggers while left mouse button is down, or is caught by sticky desktop corners
- Updated User Guide to cover the new interface
Optional Components:
- Compatible Desktop+ Browser Versions: v4.0
For more details, including screenshots, video clips, and additional commentary, see the Steam announcement.
If you're interested in supporting Desktop+'s development financially, head over to my Ko-fi page. Any kind of help is appreciated!