Pre-release notes
https://getkirby.com/releases/5
Changelog since 5.0.0-rc.3
✨ Enhancements
The following enhancements have been made to fix file upload regressions:
- New async
TextareaInput.restoreSelection()
method - New
panel.upload.announce()
method, which sends the success notification andmodel.update
event after uploads have successfully completed. - The upload module now sends a
file.upload.error
event for every file that could not be uploaded. - Various TextareaInput methods have been turned into async methods
for more stable async/await control throughout all TextareaInput
methods.insert
insertFile
insertUpload
prepend
toggle
wrap
🐛 Fixed regressions from previous pre-releases
panel.content.save()
now callspanel.content.cancelSaving()
to make sure that any old scheduled save requests are properly
cancelled. This could have lead to potential race conditions before.- The
FilesField
no longer sends unnecessaryfile.upload
andmodel.update
emitters after upload. Those lead to duplicate section reload requests so far. After uploads, thepanel.upload.done()
already takes care of reloading the current view and all its sections. - The
TextareaInput.insertUpload()
method now usesawait panel.content.update()
to push text value changes directly to the changes API and to reload the view correctly. This fixes #7249 - The upload module sends the
file.upload
event directly when a file has been uploaded and passes the file object correctly. Before this change, the file.upload event was only called in the FilesField and FilesSection components when all uploads finished. - Both the
upload.done()
andupload.cancel()
handlers now properly emit thecomplete
event if there are any completed uploads. - Make
HasMethods::hasMethod()
public again #7266 - Select & radio field previews: Show option text instead of value #7273
- Adjust the background color of the mobile back button in the file browser in dark mode. #7280
☠️ Deprecated
TextareaInput.restoreSelectionCallback()
UseTextareaInput.restoreSelection()
.
♻️ Refactored
- Move trait template annotations to class doc #7272
TextareaInput.selectionRange
andTextareaInput.restoreSelection()
are used to replace the oldrestoreSelectionCallback
method in dialog events for better async control.- Removed unnecessary complete handler in
FilesSection
. The upload module already takes care of the notifications and events.