12.1.6 - 2026-10-22
Improvements
- Localization ships a built-in Portuguese translation. The new
RadzenStrings.pt.resxsatellite covers every resource key and uses the neutralptculture, so it applies topt,pt-BRandpt-PTapps without any setup. The wording follows common Brazilian usage in business software. Portuguese is also available in the localization demos (#2774).
Fixes
- AIPrompt no longer loses typed characters in interactive server mode. The textarea was a manually controlled input, so every keystroke re-rendered it with a value that was already stale by the time it reached the browser. It now uses two-way binding, and Enter without Shift is blocked on the client by a static keydown listener instead of a per-render handler, so the newline is prevented from the very first render. Shift+Enter still inserts a newline (#2772). Thanks to @felippenvieira!
- Menu no longer swallows Tab and Shift+Tab on the menubar, so keyboard focus leaves the menu in one keystroke (WCAG 2.1.2). The render-time
preventDefaultflag was applied from the previous render, which blocked the first Tab after the menubar took focus and every Tab after a handled key. A static document listener now prevents the default per key in the browser for arrows, Home, End, Enter, Space, Escape and typeahead characters only (#2773). - DataGrid in
FilterMode.SimpleWithMenuno longer shows the filter value through the operator button on a narrow column. The compact layout cleared the button withtext-indent, which only offsets the first character, so a scrolled value was painted under the translucent button. The input now uses inline padding, which works in every theme and in RTL (#2771). - DropDown popups no longer overflow the viewport after a visual viewport resize. The resize handler sized the items list to the whole space between the trigger and the viewport edge, ignoring the filter input, the multiselect header and the header and footer templates, so a popup flipped above the trigger went past the top of the screen and never shrank back once grown. The handler now accounts for the popup chrome and restores the original size when it fits again.
- Upload with
Auto="false"no longer shows a broken image for non-image files. An object URL was created for every selected file and rendered as animg, so a PDF or text file displayed the browser's broken-image glyph. The preview is now rendered only forimage/*files, and other files show a document icon in the same slot so rows stay aligned.