Skip to main content

Changelog

Every improvement, automatically tracked from our commit history.

Subscribe via Atom feed
← Prev Page 8 of 22 Next →
February 21, 2026
minor Desktop Shell

Fix Cmd+K in text blocks + global quick actions (v1.48.0)

Desktop 1.47.3 → 1.48.0 | 4e7154f9
Details

Fixes global keyboard shortcuts (Cmd+K, Cmd+/, Cmd+\, etc.) not firing when

focus is inside TextBox or RichTextEditor controls. The root cause was that

MainWindow.OnKeyDown() used bubble-phase routing, so text controls consumed

KeyDown events before they reached the window. Switched to tunnel-phase

routing via AddHandler(KeyDownEvent, handler, RoutingStrategies.Tunnel),

matching the pattern already used by NavigationSidebar.

Split MainWindow.axaml.cs (593 lines) into three partial classes for

modularity: MainWindow.axaml.cs (lifecycle + pointer handlers),

MainWindow.Keyboard.cs (all global shortcut handling),

MainWindow.Speech.cs (speech-to-text helpers).

Added QuickActionService that aggregates IQuickActionProvider capabilities

from plugins and surfaces them as command palette entries. Wired quick action

overlay in MainWindow.axaml with modal backdrop, title bar, and dynamic

ContentPresenter. Added overlay state properties to MainWindowViewModel.

Registered IQuickActionProvider auto-discovery in PluginRegistry.ActivatePlugin

and QuickActionService as a command provider in SetMainViewModel.

minor SDK

Add IQuickActionProvider SDK capability interface (v1.48.0)

SDK 1.47.1 → 1.48.0 | 32dd6994
Details

Introduces IQuickActionProvider and QuickActionDescriptor to PrivStack.Sdk.

This capability allows plugins to register global quick actions that appear

in the command palette and can be invoked from any plugin tab. Actions can

either execute immediately or show a modal overlay with custom UI content

provided by the plugin. Follows the same descriptor+execution pattern as

IIntentProvider. SDK version bumped to 1.48.0.

February 20, 2026
minor Desktop Shell

Unified universal search bar replacing command palette overlay

Desktop 1.46.3 → 1.47.0 | 58e66672
Details

Replace the standalone CommandPalette overlay with an integrated

UniversalSearchDropdown that anchors below each plugin's toolbar search

pill. Cmd+K now focuses the toolbar search bar instead of opening a

separate modal. New UniversalSearchService bridges toolbar events to

CommandPaletteViewModel. Added context-aware ranking that boosts results

from the active plugin. Increased max search results from 12 to 15.

Deleted CommandPalette.axaml/.cs (UI ported to UniversalSearchDropdown).

Desktop version bumped to 1.47.0.

minor UI Components

Add universal search bar API to PluginToolbar

SDK 1.46.1 → 1.47.0 | 6c6cf791
Details

PluginToolbar now exposes SearchGotFocus, SearchLostFocus, SearchKeyDown

events and ActiveSearchPill/FocusSearchBox() for shell-level search

integration. Adds a platform-aware keyboard shortcut badge (⌘K / Ctrl+K)

to the search pill that hides on focus. Default watermark changed to

"Search..." for consistency across plugins. SDK version bumped to 1.47.0.

minor Desktop Shell

Add shell-level OAuth services for Google and Microsoft connections

Desktop 1.45.15 → 1.46.0 | 5237488a
Details

Create OAuthProviderConfig with combined scopes (Gmail + Calendar + identity

for Google, Outlook IMAP/SMTP + identity for Microsoft). Create

OAuthBrowserFlowService consolidating the PKCE loopback flow from the Email

plugin into a reusable shell service. Expand ConnectionService with multi-account

support: ConnectOAuthAsync orchestrates the full flow, ImportConnectionAsync

enables migration from plugin-level tokens, GetAccessTokenByIdAsync auto-refreshes

expired tokens with per-connection SemaphoreSlim concurrency control,

GetConnectionsWithScopesAsync filters by required scopes. Register

OAuthBrowserFlowService in DI. Desktop version bumped to 1.46.0.

← Prev Page 8 of 22 Next →

Get notified about new releases