From 28ff21ccc9df019b9af21e7579f8f9e4456425d4 Mon Sep 17 00:00:00 2001 From: bb2 <23148629+bb2@users.noreply.github.com> Date: Sat, 23 May 2026 23:10:05 +0800 Subject: [PATCH 1/2] UI: Decode URL in text field for better readability This PR is a follow-up to #2138. It extends the URL decoding logic to include the delete collection dialogs and homepage collection titles, ensuring a consistent user experience. --- radicale/web/internal_data/js/scenes/CollectionsScene.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/radicale/web/internal_data/js/scenes/CollectionsScene.js b/radicale/web/internal_data/js/scenes/CollectionsScene.js index 8fbdecfd..eee39a47 100644 --- a/radicale/web/internal_data/js/scenes/CollectionsScene.js +++ b/radicale/web/internal_data/js/scenes/CollectionsScene.js @@ -124,7 +124,7 @@ export class CollectionsScene { _ondelete(collection) { try { let delete_collection_scene = new DeleteConfirmationScene( - this._user, this._password, "Delete Collection", collection, collection.displayname || collection.href, + this._user, this._password, "Delete Collection", collection, collection.displayname || decodeURIComponent(collection.href), delete_collection, true ); push_scene(delete_collection_scene); @@ -253,7 +253,7 @@ export class CollectionsScene { edit_btn.classList.add("hidden"); } } - title_form.textContent = collection.displayname || collection.href; + title_form.textContent = collection.displayname || decodeURIComponent(collection.href); if (title_form.textContent.length > 30) { title_form.classList.add("smalltext"); } From 69d46d1673cc7c115659bb9a47e2ffad38e6620b Mon Sep 17 00:00:00 2001 From: bb2 <23148629+bb2@users.noreply.github.com> Date: Sat, 23 May 2026 23:11:28 +0800 Subject: [PATCH 2/2] UI: Decode URL in text field for better readability This PR is a follow-up to #2138. It extends the URL decoding logic to include the edit collection dialogs, ensuring a consistent user experience. --- .../web/internal_data/js/scenes/CreateEditCollectionScene.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/radicale/web/internal_data/js/scenes/CreateEditCollectionScene.js b/radicale/web/internal_data/js/scenes/CreateEditCollectionScene.js index 2ec9e7be..a07ab0b3 100644 --- a/radicale/web/internal_data/js/scenes/CreateEditCollectionScene.js +++ b/radicale/web/internal_data/js/scenes/CreateEditCollectionScene.js @@ -196,7 +196,7 @@ export class CreateEditCollectionScene { this._remove_invalid_types(); this._html_scene.classList.remove("hidden"); if (this._edit && this._title_form) { - this._title_form.textContent = this._collection.displayname || this._collection.href; + this._title_form.textContent = this._collection.displayname || decodeURIComponent(this._collection.href); } this._fill_form(); this._submit_btn.onclick = () => this._onsubmit(); @@ -230,4 +230,4 @@ export class CreateEditCollectionScene { return extract_title(this._collection); } -} \ No newline at end of file +}