Back to Freedom.Tech Back
All Bitwarden Clients Desktop releasesAll versions
Release Thu, Jun 25, 2026 6 min read

Bitwarden Clients Desktop 2026.6.0

Hide Send from navigation for users subject to policy removing send; Bug fix for keyboard shortcuts; Various under-the-hood improvements and minor bug fixes; PM-31854

Overview

  • Hide Send from navigation for users subject to policy removing send
  • Bug fix for keyboard shortcuts
  • Various under-the-hood improvements and minor bug fixes

What's Changed

Community Highlight

  • [PM-31854] fix: simplify switching unlock methods by @iHildy in #18826
  • [PM-38330] Fix per-request memory leak in bw serve (authStatusFor$) by @ggiesen in #20912

:shipit: Feature Development

  • [Shared Unlock] [PM-35083] Shared Unlock for Web, Browser, Desktop by @quexten in #19698
  • [CL-1077] Update Menu Item styles by @lxiong-livefront in #19763
  • [Shared Unlock] [PM-34508] Default enable native messaging permission on browser by @quexten in #19907
  • [CL-999] Update tabs by @lxiong-livefront in #20010
  • [CL-963] Update breadcrumb styles by @lxiong-livefront in #20085
  • Add new SendApiServer that uses the SDK by @adudek-bw in #20170
  • [PM-23585] Migrate desktop settings dialog to CL by @Hinton in #20230
  • [PM-35224] Add route provider parameters support to featureFlaggedRoute by @Banrion in #20235
  • BEEEP/Auth/PM-35338 - Auto Submit on OTP Paste by @JaredSnider-Bitwarden in #20250
  • Desktop UI Cleanup milestone 3 & 4 by @Hinton in #20266
  • [PM-34157] Wire up SDK to NewPolicyService by @eliykat in #20377
  • [PM-31059] Implement SDK managed PIN unlock by @quexten in #20395
  • [CL-1042] Design system refresh: Milestone 3 by @vleague2 in #20425
  • [PM-35228] Add Premium Status Changed Push Notification by @sbrown-livefront in #20498
  • [Shared Unlock] [PM-35083] Add shared unlock typescript drivers and services by @quexten in #20589
  • [PM-36857] Add copy actions for bank account cipher type by @nick-livefront in #20605
  • [PM-27679] Remove flagged logic from clients/server and clients feature flag by @jengstrom-bw in #20609
  • [PM-34113] Add Passport to the desktop by @nick-livefront in #20617
  • [PM-34156] Add accepted-state organization sync by @eliykat in #20627
  • [PM-28192] Migrate Cipher Attachment Operations to use SDK instead of APIs by @gbubemismith in #20628
  • [PM-37295] Ignore upgrade key rotation logout based on feature flag by @Thomas-Avery in #20637
  • [PM-32016] - hide at-risk callout behind feature flag by @jaasen-livefront in #20639
  • [PM-31054] Add V2UpgradeToken handling to sync by @Thomas-Avery in #20641
  • SSH Agent v2: Sign Request by @neuronull in #20657
  • Remove feature flag check from password generation by @adudek-bw in #20671
  • [PM-2588] resolved sends root url conditionally by @bmbitwarden in #20684
  • [Shared Unlock] [PM-35083] Implement biometrics over sdk IPC by @quexten in #20689
  • [PM-37251] Add getStatus API method for public invite link status endpoint by @r-tome in #20695
  • [PM-35656] Update Copy functionality for new item types by @nick-livefront in #20708
  • [PM-36967] Update rotate_user_keys to use UpgradeTokenAction by @Thomas-Avery in #20711
  • [PM-37229] Add bwi-passport icon for passport cipher type by @nick-livefront in #20712
  • [PM-36229] Route bulk-collections, move, and assigned-cipher ops to SDK by @gbubemismith in #20718
  • [CL-1204] bulk actions bar by @BryanCunningham in #20735
  • [PM-36563] Send access event logs by @harr1424 in #20740
  • [PM-37797] Add API method to check if email is valid for a given organization invite link by @r-tome in #20749
  • SSH Agent v2: testing coverage for unsupported key types by @neuronull in #20789
  • [CL-1214] remove tabs min height by @BryanCunningham in #20796
  • [PM-30848] Key connector for user key rotation by @mzieniukbw in #20805
  • Add feature flag for SSH ecdsa by @neuronull in #20813
  • [PM-33753] Remove unlock-via-sdk-flag by @quexten in #20832
  • [PM-37875] Split out crypto verification UI by @quexten in #20856
  • [CL-1172] Improved non-color a11y for selected vs unselected nav items by @vleague2 in #20865
  • [CL-1201] update row selected state and hover state by @BryanCunningham in #20869
  • update contrast variant text color by @BryanCunningham in #20878
  • SSH Agent v2: agent forwarding by @neuronull in #20879
  • chore(platform): add FedRampGovRegion to client feature flag enum by @addisonbeck in #20880
  • [CL-1213] allow tab label to be anchor for spotlight by @BryanCunningham in #20882
  • [PM-37175] Preserve individual vault export folders when importing to My Items by @mcamirault in #20883
  • [PM-37800] Add VaultBatchBarService to libs/vault by @nick-livefront in #20885
  • [PM-38165] Limit Send Email character length by @harr1424 in #20895
  • PM-32577 implemeneted send policy check of nav for desktop and browser by @bmbitwarden in #20934
  • [PM-31625] Removes feature flag pm-30521-autofill-button-view-login-screen by @jengstrom-bw in #20968
  • SSH Agent support of ECDSA key type by @neuronull in #21028
  • [PM-18400] Update multi-select component to add title attribute for better accessibility by @JaredScar in #21031
  • Gate import of SSH key ECDSA type on FF by @neuronull in #21059
  • [PM-38163] Add getPoliciesByInviteLinkCode to PolicyApiService by @r-tome in #21075
  • [PM-38012] Initialize feature flag overrides state to empty object by @quexten in #21166

Bug fixes

  • [PM-35120] - Update user delete flows with org ownership by @jaasen-livefront in #20462
  • [PM-32445] Extension Scrollbar Fix by @rr-bw in #20478
  • [PM-36880] Filter Linked field type for Bank Account cipher type by @nick-livefront in #20564
  • [PM-36947] Restrict bank account PIN field to numeric characters only by @nick-livefront in #20598
  • PM-37554 resolved double cancel issue by @bmbitwarden in #20683
  • [CL-1046] Add no-bit-dialog-wrapper lint rule by @willmartian in #20698
  • Fix errors from UUID and yargs packages in the native messaging test runner by @differsthecat in #20706
  • [CL-1203] Place tab overflow More button next to last visible tab by @willmartian in #20709
  • [PM-36642] Fixing LastPass direct import for non-SSO accounts by @itsadrago in #20716
  • Disable Native popover use from Angular 21 by @nick-livefront in #20730
  • [PM-8123] Clearing import target selector as necessary by @itsadrago in #20739
  • [PM-37782] User with view permission cannot favorite or add an item to a folder by @jengstrom-bw in #20764
  • [PM-37798] Fix bank account section label to show "Bank account details" by @nick-livefront in #20779
  • [PM-37776] - fix empty vault on pin and touch id unlock by @jaasen-livefront in #20793
  • [PM-37825] Fix partial date validation blocking save and improve error count accuracy by @nick-livefront in #20799
  • [PM-24173] Fix credential generator constraint bypass by @harr1424 in #20810
  • [PM-37970] Fix vault list icons for Login and Identity with new item types flag by @nick-livefront in #20818
  • [PM-37479] Assign to collection dialog displays dummy string 0"> by @jengstrom-bw in #20819
  • PM-37696 resolved broswer popup when trying to close tab by @bmbitwarden in #20861
  • [PM-23564] Item view shows removed attachment/does not show added attachment temporarily by @jengstrom-bw in #20884
  • SSH Agent fix calling unregistered IPC handlers upon account switch by @neuronull in #20914
  • [PM-37948] Add back missing desktop shortcuts by @BryanCunningham in #20942
  • Fix: SSH Agent v1 no agent forwarding warning by @neuronull in #20944
  • [PM-38400] Fix avoid ambiguous character bug by @adudek-bw in #20953
  • PM-38423 - Fix unsavedSendEditsGuard blocking logout by @JaredSnider-Bitwarden in #20967
  • [PM-38405] Fix SDK ref leaking out of scope and add eslint rule by @quexten in #20999
  • [PM-35573] - Refocus login input on Desktop restore by @jaasen-livefront in #21012
  • [PM-38421] Remove duplicate copy actions by @nick-livefront in #21023
  • [PM-38544] Fix flatpak auto-start by @quexten in #21039
  • [PM-38547] Fix missing Flatpak desktop icon by @quexten in #21040
  • [PM-38026] Fix desktop client saturates gpu usage at 99% after start when using fallapart effect in KDE/KWIN by @quexten in #21043
  • [PM-38529] Fix virtual scroll after Angular 21 update by @vleague2 in #21055
  • [PM-37913] - fix cloning archived cipher by @jaasen-livefront in #21058
  • [PM-38357] Surface more descriptive error messages from server on Send edit failure by @mcamirault in #21067
  • [PM-38571] Fix shareReplay memory leaks by @nick-livefront in #21087
  • [CL-1217] Fix menu item role after menu item style changes by @vleague2 in #21091
  • [PM-38759] Fix desktop not launching by @quexten in #21140
  • [PM-38621] Fix desktop settings dialog saving stale form values by @nick-livefront in #21148
  • [CL-1208] Remove extra header space in desktop by @vleague2 in #21157
  • [PM-37913] - set archivedDate when cloning ciphers by @jaasen-livefront in #21160
  • [PM-38831] fix: defective SyncPolicy push notification parsing by @eliykat in #21189
  • [CL-1222] m3 fast follows by @BryanCunningham in #21202
  • fix(nx): clear build dependsOn workspace default by @addisonbeck in #21203
  • [PM-38867] Fix: add error toast if no owner for a new item by @eliykat in #21222