From 8fc4c70a4dcdff4610635927b6c0ba18e9e7c855 Mon Sep 17 00:00:00 2001 From: alemor Date: Mon, 9 Mar 2026 11:55:27 +0100 Subject: [PATCH] fix: [Autocomplete] #3369 --- src/Autocomplete/assets/dist/controller.js | 3 +++ src/Autocomplete/assets/src/controller.ts | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/Autocomplete/assets/dist/controller.js b/src/Autocomplete/assets/dist/controller.js index 8971a5686b2..e134643d74b 100644 --- a/src/Autocomplete/assets/dist/controller.js +++ b/src/Autocomplete/assets/dist/controller.js @@ -261,9 +261,12 @@ function _createAutocompleteWithRemoteData(autocompleteEndpointUrl, minCharacter }, load: function(query, callback) { const url = this.getUrl(query); + const dropdown = this.dropdown_content; + const scroll = dropdown ? dropdown.scrollTop : 0; fetch(url).then((response) => response.json()).then((json) => { this.setNextUrl(query, json.next_page); callback(json.results.options || json.results, json.results.optgroups || []); + if (dropdown) dropdown.scrollTop = scroll; }).catch(() => callback([], [])); }, shouldLoad: (query) => { diff --git a/src/Autocomplete/assets/src/controller.ts b/src/Autocomplete/assets/src/controller.ts index 646e084bb1e..0171c82c56e 100644 --- a/src/Autocomplete/assets/src/controller.ts +++ b/src/Autocomplete/assets/src/controller.ts @@ -272,12 +272,17 @@ export default class extends Controller { // the 'this.XXX' calls inside this method fail load: function (query: string, callback: TomLoadCallback) { const url = this.getUrl(query); + const dropdown = this.dropdown_content; + const scroll = dropdown ? dropdown.scrollTop : 0; fetch(url) .then((response) => response.json()) // important: next_url must be set before invoking callback() .then((json) => { this.setNextUrl(query, json.next_page); callback(json.results.options || json.results, json.results.optgroups || []); + if (dropdown) { + dropdown.scrollTop = scroll; + } }) .catch(() => callback([], [])); },