As a user I can arrange the storages in Drive's folder tree e07f73dd1
The Drive folder tree groups folders into a named section per storage, which can be reordered and hidden - from the tree, or from the new "Folders and accounts" page in Drive settings
The three sharing folders are renamed for the direction they point - "Shared with others", "Shared with me" and "Shared with all users" - and have icons of their own
Operators can name the shared-with-all folder (io.ox/files//tree/publicFilesName) and remove the Drive storage from the folder tree entirely (io.ox/files//tree/hideDriveSection)
As a user I can connect and use an OpenCloud storage account 7bb1c7dda
OX Drive can now integrate OpenCloud accounts
End-users get access to the account's Personal, Spaces and Trash folders
Public sharing links for OpenCloud files and folders can be listed and created, with an access level, a password and an expiry date, and copied to the clipboard together
Drive's storage widget now reports the storage the user is actually looking at - per space for OpenCloud - and stays out of the way where a storage publishes no quota
As a user I can give a Drive folder a color 036f83eaa
Drive folders can be given a color of their own, from the folder view's context menu - a personal mark that is not shared with anyone the folder is shared with
As a user I can move files to recently used folders 6d591d14a
Drive now offers the folders you moved items to recently right on the Move button, so moving to the same folder again no longer needs the folder picker
Folders that no longer exist drop out of that list on their own
As a user I can move mails to recently used folders 6a74e785d
Mail's Move button now offers the folders you moved messages to recently, so moving to the same folder again no longer needs the folder picker
Moving a message to one of those folders can now be undone, like every other move
As a user I can pick the "Curses" theme 4674091d4
New "Curses" theme for a nostalgic text UI vibe: monospace, square-cornered and dark, with a cyan accent
Themes can now restyle fonts, corner radii, shadows and popup borders, and several colors that previously ignored the theme now follow it
As a user I can search a whole storage account in Drive cd939208d
Drive search can now cover a whole storage account, with one entry per connected account
Drive search distinguishes "Current folder only" from "Current folder and subfolders"
Drive search starts in the account you are looking at instead of always in the primary one
The active search filter now names the folder or account being searched
As a user I can search in My attachments 817ecc416
Search now works in "My attachments", including its optional Inbox and Sent folders
Drive search recognizes more file types, among them iPhone photos (HEIC/HEIF), WebP, AVIF, FLAC, Matroska video, CSV, and Apple Pages, Numbers and Keynote documents
Archives are now found by file extension (.zip, .rar, .7z, .tar and more); matching them by MIME type missed most of them
As a user I can switch the Drive layout from the toolbar row 2790137df
The Drive toolbar has buttons to switch directly between the list, icons and tiles layout, and to show or hide the file details
The file details panel opens as wide as a sidepanel and can be resized by dragging its left edge
Improvements to the Nextcloud integration 00bce353d
Nextcloud storage accounts show their folders with translated names and their own icons, and how full each one is
Files and folders in a Nextcloud account can be shared by public link, opened directly in Nextcloud, and recovered from the account's trash
Option to clear provisioned personal data in the First Start Wizard (AS-273)
Added a setting that makes the First Start Wizard ignore provisioned placeholder names, so that users are asked for their real name on first login
Fixed the Escape key no longer working, and the theme changing back, after the First Start Wizard had been opened once
Fixed custom sender names being lost when the First Start Wizard was completed
Plugin for OX Drag and Drop helper now also supports downloading emails via token urls (PBSR-1838)
Separate automatic replies for internal and external senders (AS-73)
Tailwind CSS v4 build setup (AS-244)
View emails from an electronic files application (PBSR-1878)
Breaking change: Move the core utility layer to Tailwind v4 (AS-244)
Tailwind CSS v4 emits a utility layer beside the existing Bootstrap and core.scss cascade.
Plugins may use the safe-listed utility classes without adding Tailwind to their own build. See src/themes/tailwind.css for details.
Breaking, please migrate
replace flex-grow with flex-1
replace border-none with border-0
replace rounded with rounded-md
replace rounded-lg with rounded-xl
replace rounded-t with rounded-t-md rounded-b-none
replace rounded-tl with rounded-tl-md rounded-tr-none rounded-b-none
replace rounded-tr with rounded-tr-md rounded-tl-none rounded-b-none
replace flex-row-reverse with flex flex-row-reverse!
replace overflow-x-hidden with overflow-x-hidden!
rotate-90 keeps its name: nothing to change unless the element also carries a transform or a transform animation, in which case use [transform:rotate(90deg)] for the old semantics
Deprecated: old custom-named classes superseded by a Tailwind spelling. Still shipped, removed with 8.56.
replace ellipsis with truncate
replace width-100 with w-full
replace zero-min-width with min-w-0
replace t-0 with top-0! (the important variant outranks component rules like .detail-row's .bi top offset)
replace border with border border-default (core-ui's copy is now color-only; Tailwind owns width and style)
replace border-top with border-t border-default
replace border-right with border-r border-default
replace border-bottom with border-b border-default
replace border-left with border-l border-default
replace rounded-b-12 with rounded-b-xl (identical: 12px on the bottom corners only, top corners untouched)
replace h-fit-content with your own height: fit-content rule - h-fit matches but is itself deprecated (see the next entry)
replace form-spacer with your own margin-top: 32px rule - mt-8 matches at the default 16px root but is itself deprecated, and resolves to 26px in 13px-root contexts such as mail detail
Deprecated: names core-ui still emits but no longer guarantees - retired core.scss utilities plus a few one-offs withdrawn from the committed tier. Removed with 8.56. They keep their Tailwind names, so there is nothing to rename - take Tailwind into your own build, or write plain CSS for a one-off.
Among them are rotate-90, resize, resize-x/-y/-none, h-fit, min-h-10, text-wrap, the physical offsets left-0/right-0 and the important variants top-0!, overflow-x-hidden! and flex-row-reverse!.
See the DEPRECATED block in src/themes/tailwind.css for the full list
Call the shared-with-everyone folder "Common files" a70025cef
Drive's folder for what everyone shares is now called "Common files"
Close Quick Settings when a command opens something else 781461264
Quick Settings now closes when you choose a command that opens something else, such as All settings, Print or Automatic replies
It stays open while you adjust layout, list options or themes, so you can see each change take effect and keep adjusting
Compose Drive's folder menu in one place 4998656e6
The folder tree's menu in Drive is grouped and ordered like the file list's own menu, with the folder color beside "Add to favorites"
Cut the readiness probe's initial delay to 1 second 796abd74a
core-ui pods become ready roughly 25 seconds sooner, so a rolling update completes faster
Draw Drive's folder icons as one tinted outline at two strengths 40dcb1cc1
Drive folder icons are drawn in one consistent style: an outline whose body is filled faintly for an ordinary folder and almost fully for one you have given a color, so a color stands out while every folder still looks like the same icon
A selected folder's icon is now clearly visible in the Drive file list, where it could previously fade into the selected row
Give each storage its own account-form extension point df099396a
Load "rampup" plugins with the user's capabilities 2556a0edd
Plugins in the "rampup" namespace are now loaded based on the capabilities of the user, so a capability that is overridden for a context or user is taken into account
Added a "pre-rampup" plugin namespace for plugins that have to run before the user's configuration is known, for example a custom authentication step
Mark menu entries that open a dialog with an ellipsis 37fde1808
Menu entries that open a dialog are now marked with an ellipsis, so it is clear which ones ask before they act
Offer Drive's actions in one order, in the toolbar and on right-click 76d69176b
Drive's toolbar and right-click menu now offer the same actions in the same order and the same groups, instead of two arrangements that disagreed
"Send by email" is a toolbar button in Drive rather than an entry in the "More actions" menu
Downloading a folder is called "Download", not "Download entire folder" - the toolbar had always called it that
Offer folder actions in one order in every app ff1bb9a16
Folder actions now appear in the same order in Mail, Calendar, Contacts, Tasks and Drive. Each app built its menu from one shared list, so the same commands had drifted into a different order in every app, and what an app offered could not be read anywhere in one place
A calendar's menu now starts with "Show this calendar only" and "Refresh this calendar", the two things it is usually opened for; Import and Export have moved down out of the way, being the rarest entries in it
Delete is now the last entry in every folder menu, and in the mail list's context menu, where it previously sat directly above Archive and a mis-click destroyed a message instead of filing it
Toolbars are unchanged, deliberately: a toolbar is where muscle memory lives and nothing found here justified moving a button
"Show in Drive" no longer renders with a double space
Offer New folder where a folder is right-clicked, and drop "Add new" d822c39ba
Right-clicking a folder in Drive offers "New folder", which creates it inside the folder you clicked
The entry is called "New folder" everywhere, instead of "Add new folder" in some menus and "New folder" in others
Offer no unscanned download if anti-virus scans are enforced and show the message for encrypted files (ASB-251)
Pre-compress the UI assets with brotli at build time edf92506a
Rework the signature settings around a single account scope f9ca352fe
Say which commands ask you something before they act a306f9148
Menu and toolbar entries that need an answer from you now end in an ellipsis, and entries that act immediately do not - so it is clear before you click which is which. A confirmation does not count as an answer: Delete and Empty stay bare, because they ask whether you meant it rather than what you meant
Sharing a file or folder is called "Share" everywhere, instead of "Share / Permissions" in some places and "Share" in others, and the theme link is "More themes" rather than "View more"
Shape the email attachments section like the other storages 365fa13aa
Email attachments now look like every other storage in Drive's folder tree: a section with its folders under it
That section is called "Email attachments", and the folder holding all of them "All attachments"
Section headings in the folder tree are easier to read
"Your credentials will be sent over a secure connection only" d97c3732c
Removed the "Your credentials will be sent over a secure connection only" note from the dialogs that add an email or storage account; it only ever appeared when the connection was already secure
The note that external email accounts are read-only now appears wherever it applies, not only on sites served over https
Arrow keys focus the wrong template after a reorder (ASB-155)
Cannot remove mail attachments via keyboard (support#1589)
Clash of ids between GUEST_CREATED_BY (UserField) and YOMI_FIRST_NAME (Contact) both using id 616 (ASB-19)
Clear a baton's stopped propagation between action invocations 6c84baa1c
Clicking "toggle toolbar" in mail compose clears URL parameters (ASB-187)
Do not drop the focus when a dialog's opener is gone 67b417e2b
Closing a dialog no longer leaves the keyboard focus nowhere when whatever opened it has since been removed; it returns to the part of the app the dialog was opened from
Enable core-ui's liveness and readiness probes (ASB-211)
core-ui containers now carry liveness and readiness probes by default, hitting /live and /ready on the monitoring port
Explain the root of a mail account instead of calling it empty af69b34a4
Selecting a shared or secondary email account itself in the folder tree no longer reports "0 messages" and an empty folder; the list explains that the emails are in the account's folders
Keep default signatures when the snippet request returns nothing d293005ec
Keep the invitation notifications when a delegate's events cannot be read c99a6a911
Let Argo CD callers make core-ui's migrations Job a Sync hook (ASB-256)
New migration.annotations value adds annotations to the migrations Job, e.g. to run it as an Argo CD Sync hook
New migration.ttlSecondsAfterFinished value configures the Job TTL; null omits it
Logout on mobile leaves a broken dropdown menu open when using a custom logout page (ASB-116)
Look up the first-signature default under the stored key 4445af0ff
Mail compose does not open outside the mail app for deputy users (ASB-132)
Mail template preview grows unbounded instead of clipping bf6b2b287
Automatic reply window sometimes opens multiple times (ASB-206)
Missing and hard-to-see focus indicators, mostly in dark mode 6eaf6265f
Fixed several focus glitches: button labels that were nearly invisible on hover in dark mode, focus rings showing up after a mouse click, and weekday buttons in the calendar side panel with no visible keyboard focus
The keyboard focus indicator now follows the theme's accent color instead of the browser's default blue
Name the item "id" when opening a federated share 64483d1d9
Editing a document in a federated share now opens the document, rather than an error
New Archive folder only appears in the tree after a page reload 897d10081
Fixed the Archive folder not showing up in the folder tree after archiving a message for the first time
Offer delete and move on mail folders by the announced rename right (ASB-195)
Pre-compress the files copied into public/ as well c282941e8
Public link options stay disabled during link creation 734bf7484
Fixed the sharing options for a public link staying greyed out when the dialog was opened while the link was still being created
Render drop-up menus with correct height (ASB-188)
Render the default-signature badge label as text 6b2d2204a
SaveAsEML/filePattern is not used when emails are saved in zip (ASB-183)
Emails saved as a ZIP archive now name each entry after the configured file name pattern (saveAsEML/filePattern), as single email downloads already did
That pattern's date placeholder now renders as an ISO date (2026-09-08) and its time placeholder uses the 24-hour clock
Show a folder in the breadcrumb under the name it is presented with a52c678d7
Drive's breadcrumb now shows a folder under the same name as the folder tree
Show the search bar's cancel button only when there is a search 65da09504
The X in the search bar is shown only while there is a search to cancel, instead of appearing over an empty field once the search options have been opened
Stop the quota widget claiming a storage account's Trash f29f55d5d
Fixed the storage quota of your own account being shown, incorrectly, when the Trash folder of an external storage account was selected
Template previews overflow the Signature Designer picker (ASB-155)
Theme selection, hover and focus states are not clearly visible (ASB-156)
Unified folder check throws before mail settings are ready 2045d591f
Upsell plans evaluation order is not deterministic (ASB-229)
Upsell plans are now evaluated in a defined order, so a user whose capabilities match several overlapping plan conditions always gets the same plan
Upsell triggers with function-only conditions never fire (ASB-228)
The "Upgrade" button now also appears for upsell trigger conditions that consist of functions only, for example "upsell(calendar) && upsell(carddav)"
Use the right role for Drive's storage entries in Quick Settings 47caae3d8
"Add storage account" and "Manage Shares" in Drive's Quick Settings are no longer announced as tree items; they carry the button role like every other action in the panel, which also fixes the axe violation in the Drive a11y tests
Wrong role on enterprise picker quicklaunch button (ASB-153)
Removed invalid menuitem role from the enterprise picker quicklaunch button so it matches the stock launchers inside toolbar containers