History

Release history

What changed in every version of SwiftX — new features, improvements, and fixes.

See also the full release archive on GitHub.

3.0.1

26 October 2026 GitHub release
  • More default system operations — the Add to orbit sidebar's Controls section now also offers Lock, Sleep, Mute/Unmute, Screenshot (to the clipboard), Empty Recycle Bin, and Task Manager, alongside the existing Home, Settings, and Close items.
  • Map keyboard action — a new orbit item kind that replays a recorded key combination against whatever window had focus before the orbit was summoned. Unlike the other Controls items, more than one can exist on the orbit, each with its own combination and label. Add one from the sidebar's "Map keyboard action…" row; edit the binding later from its card's Edit button.
  • Midnight theme — invisible orbit discs and shadow — the Orbit Layout preview's discs, pill, and back button relied entirely on their drop shadow to read against the canvas, but Midnight's system shadow is dark-on-dark there. They now cast a plain white composition shadow under Midnight so every shape is visible.
  • Hot corner preview's back button — the icon now matches the chevron-left already used in every other "go back" affordance in the app (group back, tool back), instead of a different arrow glyph.
  • Dropping something on the "Add to Orbit" sidebar — a drop now opens the Add to Orbit dialog pre-filled from what was dropped (name, target path, inferred item type) rather than placing it on the orbit immediately with no chance to review or rename it first.
  • Bumped project, assembly, file, and package identity versions to 3.0.1.0.

3.0.0

24 October 2026 GitHub release
  • Mouse trigger — summon the orbit with a mouse button instead of the keyboard. Any button (Left, Right, Middle, X1, X2) on a long press, double-click, or single press. Middle + long press is the default. Configure it in Settings → General → Invoke; it runs alongside the keyboard shortcut and hot corner. New config keys: MouseTriggerEnabled, MouseTriggerButton, MouseTriggerAction.
  • 10 new languages — Czech, Danish, Greek, Indonesian, Norwegian, Romanian, Swedish, Thai, Ukrainian, and Vietnamese, bringing the total to 29 languages plus System. Any key a new table doesn't cover falls back to English (US).
  • Store update checker — SwiftX polls the Microsoft Store in the background and surfaces a notice in Settings → About when an update is available, with a one-click install button. Nothing is downloaded automatically; the check is silent until there is something to show.
  • Tool window icons — the Data Formatter, Secure values, Base64, and Certificate windows now show the SwiftX mark in the taskbar and Alt+Tab, making them distinguishable from a plain window at a glance.
  • Hand cursor in Orbit settings — interactive controls in the sidebar (size, shape, radius, hover style) now show the pointer cursor on hover, making them feel clickable rather than flat.
  • Window cloaking on activation — the orbit window is cloaked (invisible to the compositor) between activation and the first rendered frame, eliminating the brief blank or white flash on first summon or after a theme change. The same guard covers the ShellWindow on first open.
  • Language catalog refactor — LanguageCatalog now carries the culture tag, flow direction, and font-size compensation for every language in one place, replacing scattered per-language constants. Language switching and per-language font compensation cover all 29 entries.
  • Several localization strings across existing languages were tightened; a handful of keys that previously fell back to English now have proper translations.
  • Bumped project, assembly, file, and package identity versions to 3.0.0.0.
  • OrbitProfile now initialises computed geometry lazily, so a deserialized profile never triggers a metric calculation before its items are fully loaded. Previously, opening a configuration written by a build with different metric defaults could yield stale slot positions until the first explicit refresh.
  • OrbitItemGeometry position calculations are now recomputed whenever the item list changes length, not only when the radius setting changes. Items added or removed while the orbit is open land in the correct positions without requiring a re-summon.
  • SystemOrbitItems synthesizes the Add-new slot on the quadrant canvas correctly when the corner holds fewer than four items; previously a synthesized slot could appear one position too far clockwise in certain edge cases involving a single user item.

2.0.4

20 October 2026 GitHub release
  • Drop onto groups in the Quadrant preview — dropping an item on a group in the Quadrant canvas now adds it to that group, matching the ring's existing behavior. Groups that are full or already hold the item refuse the drop; QuickAccess and the Tools group do not accept drops.
  • Hot-corner-only groups in Add to orbit — a group that exists only on the corner's own canvas is now listed under Groups in Add to orbit and offered in an item's Add to group menu. Its row notes in a tooltip that it lives on the corner only; Remove takes it off the corner.
  • Dragging a group onto the Quadrant from the sidebar — the Quadrant now receives the original group rather than a frozen copy. Items added to it from the sidebar, or dropped onto it in the Quadrant preview, reflect on both the corner and the orbit. Groups dropped on the ring are still copied as before.
  • Bumped project, assembly, file, and package identity versions to 2.0.4.0.
  • Stale Quadrant groups from earlier versions — groups copied onto the Quadrant by an older build are now linked back to their source on startup and on import, so they show items added since. A copy that matches no group, holds nothing, or matches two groups is left untouched.
  • Dock not updating after a Quadrant group drop — adding an item to a group on the Quadrant preview now updates an open dock immediately. Previously only the save was performed, so the dock kept showing the group as it was.
  • Quadrant changes not reaching an open dock — placing, moving, or removing an item in the Quadrant preview now reaches an open dock at once, instead of waiting until the next summon.

2.0.3

7 October 2026 GitHub release
  • Group editing in Add to orbit — groups can be opened directly from the orbit sidebar. Items inside a group can be reordered with drag-and-drop or Move up / Move down, and each item can be removed individually without leaving the list in a stale state.
  • Icon colour for groups and orbit items — a dedicated swatch picker, custom colour selection via a flyout colour picker, a reset-to-default action, and the group context-menu Edit icon command are all available on items and groups.
  • GitHub logo and link treatment — a dark/light-safe GitHub logo that remains legible across themes without the previous glyph mismatch.
  • Onboarding polish — the first-run guide now points to Google as an initial web link example, and the Add to orbit action label is updated from "Add something else…" to "Add to Orbit…".
  • Tools in user groups — any built-in tool can now be added to a group of your own from a Tools row's right-click Add to group menu, or by dragging it onto a group in the sidebar or on the ring. The copy persists across launches; the Tools group keeps its own copy too.
  • New group… in Add to orbit now opens the add-to-orbit window on the group tile and shows a clear status message when the orbit is already full, instead of silently failing.
  • Quadrant group preview — clicking a group (Tools, QuickAccess, or one of your own) on the Quadrant canvas now opens it onto its children, as on the ring. QuickAccess is gathered from the orbit and has no add slots or reorder capability on the Quadrant.
  • Icon picker layout — the picker is now as wide as its icon grid, and the Default colour, Use a picture, Select app/DLL, and Reset buttons no longer stretch beyond it. It opens to a fixed height with no internal scrollbar; the full colour picker opens in a flyout of its own from the palette tile.
  • Quadrant right-click on group — now offers Edit icon…, matching the ring's behavior. QuickAccess keeps its icon as part of the corner's arrangement.
  • Orbits with a default GitHub link still carrying the old Data tool glyph are migrated to the new GitHub branding on next launch. Renaming a group no longer clears the icon previously assigned to it.
  • Group membership updates are applied immediately after adding from Add to orbit, and the orbit preview reflects the group contents as soon as they are added.
  • The Add to orbit workflow now behaves consistently when groups are full. Drag reordering and direct remove actions in the list editing UX no longer interfere with each other.
  • Colour and branding updates (icon changes, GitHub logo) are now applied consistently across the orbit, the preview pane, the sidebar, and the Elements cards rather than being left partially applied.
  • Dragging a bubble on the Orbit screen's preview and dropping it exactly on its origin no longer leaves name pills hidden until the next redraw.

2.0.2

5 October 2026 GitHub release

Packaging and versioning milestone. No user-facing changes beyond the version number; the feature work from this period was pulled forward into 2.0.3.

  • Bumped project, assembly, file, and package identity versions to 2.0.2.0.
  • Built and validated x64 and ARM64 MSIX packaging flows for the release.

2.0.1

1 October 2026 GitHub release
  • Animation timing and icon loading — orbit animation timing was refined and icon-loading logic was tightened to smooth motion and improve reliability during item rendering and updates.
  • About box fallback version — the shell window's fallback version string now stays aligned with the current release metadata when the assembly value is unavailable at runtime.
  • Bumped app manifest and project file version to 2.0.1.0.
  • Performance and resilience test coverage — new tests cover orbit animation timing, icon decode paths, network hangs (favicon fetches), configuration-shape validation, native capability checks, and allocator budget tracking.