[PR #24316] fix: preserve scroll position in Textarea resize to prevent page jump on focus #66453

Open
opened 2026-05-06 12:49:26 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/open-webui/pull/24316
Author: @Ansh1372
Created: 5/2/2026
Status: 🔄 Open

Base: devHead: fix/textarea-scroll-jump


📝 Commits (10+)

📊 Changes

1 file changed (+6 additions, -0 deletions)

View changed files

📝 src/lib/components/common/Textarea.svelte (+6 -0)

📄 Description

Pull Request Checklist

Before submitting, make sure you've checked the following:

  • Target branch: Verify that the pull request targets the dev branch.
  • Description: Provide a concise description of the changes made in this pull request down below.
  • Changelog: Changelog entry added below.
  • Documentation: No documentation changes needed for this bug fix.
  • Dependencies: No new dependencies.
  • Testing: Manually tested by pasting a large system prompt in Workspace → Models and clicking the textarea.
  • Code review: Self-reviewed the code change.

Changelog Entry

Description

Fixes #23999 - When clicking on a large system prompt textarea in Workspace → Models, the page scrolls abruptly back to the top, making it nearly impossible to edit long prompts. This has been reported since v0.8.2.

Fixed

  • Preserve scroll position in Textarea component during resize() to prevent page jumping to top when clicking on large textarea fields (e.g. system prompt in model editor)

Additional Information

  • Root cause: resize() in Textarea.svelte resets style.height = '' momentarily, causing a layout reflow that triggers the browser to scroll to top on focus.
  • Fix: Save window.scrollY before and restore it after the height recalculation.

Screenshots or Videos

image image image

Contributor License Agreement

Note

Deleting the CLA section will lead to immediate closure of your PR and it will not be merged in.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/open-webui/pull/24316 **Author:** [@Ansh1372](https://github.com/Ansh1372) **Created:** 5/2/2026 **Status:** 🔄 Open **Base:** `dev` ← **Head:** `fix/textarea-scroll-jump` --- ### 📝 Commits (10+) - [`fe6783c`](https://github.com/open-webui/open-webui/commit/fe6783c16699911c7be17392596d579333fb110c) Merge pull request #19030 from open-webui/dev - [`fc05e0a`](https://github.com/open-webui/open-webui/commit/fc05e0a6c5d39da60b603b4d520f800d6e36f748) Merge pull request #19405 from open-webui/dev - [`e3faec6`](https://github.com/open-webui/open-webui/commit/e3faec62c58e3a83d89aa3df539feacefa125e0c) Merge pull request #19416 from open-webui/dev - [`9899293`](https://github.com/open-webui/open-webui/commit/9899293f050ad50ae12024cbebee7e018acd851e) Merge pull request #19448 from open-webui/dev - [`140605e`](https://github.com/open-webui/open-webui/commit/140605e660b8186a7d5c79fb3be6ffb147a2f498) Merge pull request #19462 from open-webui/dev - [`6f1486f`](https://github.com/open-webui/open-webui/commit/6f1486ffd0cb288d0e21f41845361924e0d742b3) Merge pull request #19466 from open-webui/dev - [`d95f533`](https://github.com/open-webui/open-webui/commit/d95f533214e3fe5beb5e41ec1f349940bc4c7043) Merge pull request #19729 from open-webui/dev - [`a727153`](https://github.com/open-webui/open-webui/commit/a7271532f8a38da46785afcaa7e65f9a45e7d753) 0.6.43 (#20093) - [`6adde20`](https://github.com/open-webui/open-webui/commit/6adde203cd292a9e3af9c64a2ae36b603fed096a) Merge pull request #20394 from open-webui/dev - [`f9b0534`](https://github.com/open-webui/open-webui/commit/f9b0534e0c442631d1cb7205169588b9b6204179) Merge pull request #20522 from open-webui/dev ### 📊 Changes **1 file changed** (+6 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `src/lib/components/common/Textarea.svelte` (+6 -0) </details> ### 📄 Description <!-- ⚠️ CRITICAL CHECKS FOR CONTRIBUTORS (READ, DON'T DELETE) ⚠️ 1. Target the `dev` branch. PRs targeting `main` will be automatically closed. 2. Do NOT delete the CLA section at the bottom. It is required for the bot to accept your PR. --> # Pull Request Checklist **Before submitting, make sure you've checked the following:** - [x] **Target branch:** Verify that the pull request targets the `dev` branch. - [x] **Description:** Provide a concise description of the changes made in this pull request down below. - [x] **Changelog:** Changelog entry added below. - [ ] **Documentation:** No documentation changes needed for this bug fix. - [ ] **Dependencies:** No new dependencies. - [x] **Testing:** Manually tested by pasting a large system prompt in Workspace → Models and clicking the textarea. - [x] **Code review:** Self-reviewed the code change. # Changelog Entry ### Description Fixes #23999 - When clicking on a large system prompt textarea in Workspace → Models, the page scrolls abruptly back to the top, making it nearly impossible to edit long prompts. This has been reported since v0.8.2. ### Fixed - Preserve scroll position in `Textarea` component during `resize()` to prevent page jumping to top when clicking on large textarea fields (e.g. system prompt in model editor) ### Additional Information - Root cause: `resize()` in `Textarea.svelte` resets `style.height = ''` momentarily, causing a layout reflow that triggers the browser to scroll to top on focus. - Fix: Save `window.scrollY` before and restore it after the height recalculation. ### Screenshots or Videos - <img width="1920" height="1020" alt="image" src="https://github.com/user-attachments/assets/906c7357-5de1-4554-9cb4-fed30530aa22" /> <img width="1920" height="1020" alt="image" src="https://github.com/user-attachments/assets/987a848b-9ff8-4d34-b2c7-cc640296f4da" /> <img width="1920" height="1020" alt="image" src="https://github.com/user-attachments/assets/0814f1cb-b4fd-499a-bf4d-07ba9a2eabbe" /> ### Contributor License Agreement <!-- 🚨 DO NOT DELETE THE TEXT BELOW 🚨 --> - [x] By submitting this pull request, I confirm that I have read and fully agree to the [Contributor License Agreement (CLA)](https://github.com/open-webui/open-webui/blob/main/CONTRIBUTOR_LICENSE_AGREEMENT), and I am providing my contributions under its terms. > [!NOTE] > Deleting the CLA section will lead to immediate closure of your PR and it will not be merged in. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-05-06 12:49:26 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#66453