Skip to content

Releases: nekename/OpenDeck

OpenDeck v2.11.1

09 Apr 10:11
eb2ed43

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • fix: replace usage of Tauri currentMonitor method with window.screen API to avoid GNOME X11 crash (#301)
  • fix: debounce profile saves for data URL image updates to prevent excessive disk writes (#302)
  • perf: return early from setTitle handler if text was unchanged
  • fix: debounce profile saves on the action instance level to prevent delaying a single change to one instance due to another constantly updating instance
  • fix: advertise ESD v7.1 to satisfy compatibility checks for message identifiers support
  • fix: preserve quoting and escaping for Run Command action values on Windows

OpenDeck v2.11.0

03 Apr 19:52
500fdb6

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

I'd like to give an honourable mention to @zersiax, who contributed much of the work to make OpenDeck more accessible to keyboard and screen reader users, and to @FazalAAli, who contributed some of the new features present in this release.

  • feat: add controls for customising image scale (#268)
  • feat: add keyboard focusability and accessible labels to items in the device view (#257)
  • feat: trigger virtual button press when double-clicking key (#267)
  • feat: support putting devices to sleep after a configurable period of inactivity (#264)
  • fix: prevent further processing of input events that wake device from sleep to prevent unwanted triggers
  • feat: support navigating the device view using the arrow keys for accessibility (#276)
  • chore: sync formatting changes introduced by a Deno formatter update
  • fix: ensure the focused slot is always visibly outlined, in part by enabling selection of empty slots
  • feat: support keyboard shortcuts for delete, copy, and paste actions on the focused slot
  • fix: don't hide focus outlines on interactive elements when using keyboard navigation
  • feat: make the action list keyboard accessible (#285)
  • feat: make the slot context menu keyboard accessible
  • feat: enhance accessibility by adding labels and titles to form elements in the instance editor
  • feat: support copying and pasting actions from the action list using keyboard shortcuts to create new instances
  • feat: make the parent action view keyboard accessible (#290)
  • feat: add accessible labels to elements in the settings view, profile manager, and instance editor (#291)
  • feat: add dialog semantics and accessible labels to popups and the plugin manager (#294)

OpenDeck v2.10.1

21 Mar 10:05
3132578

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • fix: accept event argument directly in property inspector message handlers instead of destructuring
  • refactor: update set_state command to replace the modified state instead of the entire instance
  • fix: return the entire slot from create_instance so that updating the frontend profile in ParentActionView sets complete and up to date values
  • fix: prevent WKWebView on macOS from suspending web-based plugins (#270)
  • fix: only parse headline of buildInfo string to prevent detecting the running OS incorrectly

OpenDeck v2.9.1

14 Feb 15:06
5290d22

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • chore: sync lockfile changes made by deno install after earlier commit regarding displaying GFM alerts
  • fix: skip manual render of black background colours and use CSS instead for background colour display in the UI to prevent flickering
  • fix: index more safely into an action's states in the instance editor as Toggle Action instances have more states than the base action does

OpenDeck v2.9.0

08 Feb 17:32
0b700f6

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • fix: always underline available plugin version element to highlight that it is clickable
  • feat: display Input Simulation errors in the action's property inspector
  • feat: support changing the rendered text's stroke size and colour (#216)
  • fix: rename Input Simulation to Simulate Input for consistency with other actions
  • feat: implement rotating rendered images
  • feat: cancel key up events if their corresponding key down events targeted a different action instance
  • fix: centre device grid horizontally when the window is enlarged
  • docs: decrease references to Wine as few working plugins actually require it
  • feat: add support for installing Node.js to the installation script
  • feat: support encoders in the Switch Profile action
  • feat: automatically wrap Run Command commands with distrobox-host-exec when running in a Distrobox
  • feat: implement Open URL built-in action
  • fix: ensure all_from_plugin locates instances within Multi Actions and Toggle Actions
  • feat: support setting the background colour of an action instance's state (#233)
  • feat: unify instance editor preview render and normal render to display text in the preview (#237)
  • fix: use opaque black as default state background colour for consistency
  • fix: ensure invisible colour pickers function correctly on macOS
  • fix: ensure background colour picker opens already set to the current value
  • chore: update dependencies
  • feat: show datalist hints for device ID in Switch Profile property inspector
  • fix: ensure propertyInspectorDidAppear event is always dispatched when PI frame loads
  • docs: remove note on Flatpak caveat for background setting as single instance is now supported
  • docs: add tip to README for using OpenDeck with Tacto when without hardware
  • fix: only ever initialise hidapi once for Elgato device support to prevent crashes on macOS
  • feat: support opening developer tools for web-based plugins on a per-plugin basis by checking for a debug marker file
  • refactor: replace once_cell crate with stabilised std::sync equivalents
  • fix: ensure links in plugin README files open in the default browser
  • fix: ensure GFM alerts are rendered correctly when displaying plugin README files

As you can see, this is a feature-packed release that has taken significant amounts of my free time to put together. If you would like to support my development of this open-source software, please consider sponsoring me on GitHub ❤️

OpenDeck v2.8.2

18 Jan 17:31
96e498c

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • fix: ensure prefix is also canonicalised before matching in webserver request handler

OpenDeck v2.8.1

17 Jan 21:35
1b8e3bc

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • feat: load font list from system installed fonts
  • fix: ensure requested paths are within the OpenDeck config directory when containing dot segments
  • fix: add bounds checks for state index (#219)
  • fix: render text at correct Y position when text alignment is set to top (#221)
  • fix: add readiness check before calling connection code injected into web-based plugins
  • fix: ensure data URL state images contain / and , before attempting to read their contents
  • fix: correctly resolve relative-path symlinks to plugin directories
  • chore: update Tacto section of the plugin manager to use new domain name

OpenDeck v2.8.0

04 Jan 10:33
719c9d9

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • chore: run rustfmt on code fixed automatically by clippy
  • docs: create OpenDeck development guide for agents (and humans)
  • feat: allow profiles to be renamed from the profile manager
  • docs: note poor upstream Flatpak support in the tooltips for the background and autolaunch settings
  • feat: display available plugin updates in the plugin manager
  • feat: implement the didReceiveDeepLink event (#196)
  • docs: direct users to reach out on OpenDeck support channels before attempting to contact plugin developers
  • fix: apply dark mode background colour to entire document body
  • docs: clarify non-Flatpak Node.js install requirement
  • docs: link to the FAQ in the troubleshooting section of the README
  • feat: support overriding the detected package family in the installation script
  • feat: update starter pack plugin to use code paths mapped by target triple
  • feat: support installing Tacto Connect from the plugin store
  • feat: reload property inspectors from the relevant plugin when reloading a plugin
  • fix: spawn new thread for CLI handlers to ensure their completion
  • feat: migrate starter pack to v2 of the openaction crate
  • fix: clear plugin update notification when the installed version changes
  • fix: ignore build numbers during comparison of plugin versions
  • fix: prioritise plugins with settings interfaces in installed plugins list
  • docs: mention the opendeck-bin AUR package in the installation section of the README
  • docs: remove link to Elgato Marketplace plugin installation instructions from the plugin manager
  • perf: don't load the Elgato App Store archive automatically
  • feat: implement support for the Stream Deck Neo's Touch Points (#208)

Over the course of this release, a similar amount of effort has also gone into the improving the libraries and documentation used for creating plugins. If you would like to support my development of this open-source software, please consider sponsoring me on GitHub ❤️

OpenDeck v2.7.1

03 Dec 21:52
b2d1ab3

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • Prevent setting the current state of an action out of the bounds of its possible states
  • Support dragging and dropping images onto the image input in the instance editor (#180)
  • Show the correct cursors when dragging and dropping actions and images
  • Sort folders and profiles in the profile manager for consistent display
  • Update elgato-streamdeck to support the Discord edition of the Stream Deck Mini
  • Update dependencies
  • Prevent copying or overwriting images when moving or copying an instance if an instance is already present at the destination
  • Add udev rules for the Discord edition of the Stream Deck Mini (#181)
  • Add Visual Studio Code debug configurations (#186)
  • Add Visual Studio Code workspace configuration
  • Update enigo to latest upstream to receive unreleased fixes
  • Collapse nested if-let statements as it was stabilised in Rust 1.88.0

To turn your smartphone or tablet into an extra Stream Deck Mini for free, check out Tacto at https://tacto.rivul.us/, which is now in beta.

OpenDeck v2.7.0

08 Nov 23:46
ac3e6e9

Choose a tag to compare

See the assets to download this version. See the README for installation instructions.

  • Use alternative ports if default ports are already in use
  • Hide and show the Dock icon on macOS
  • Revise sysinfo usage to optimise process monitoring
  • Support encoders in Input Simulation
  • Update elgato-streamdeck to support Stream Deck Modules
  • Remove support for pre-v2.1.0 profile formats
  • Skip refreshing processes if no installed plugins use application monitoring
  • Make input fields in starter pack property inspectors consistently sized
  • Only show scrollbars if necessary in ParentActionView and Popup components
  • Ensure context menus close when clicking on another key or into a property inspector
  • Use tailwindcss colours for icons instead of Adwaita hex codes