Patch #33910

Rendering bug in Chrome Windows and Linux when pressing PageUp in Textarea

Added by Felix Schäfer 10 months ago. Updated 10 months ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:UI
Target version:-

Description

A rendering bug in Chrome on Windows and Linux leads to the content of the window shifting to the left when pressing PageUp in a Textarea, for example on the issue edit page. In some cases this can lead to UI elements, for example the "Edit" button, to not be visible anymore.

This is the page for the bug in Chrome https://bugs.chromium.org/p/chromium/issues/detail?id=890248, it seems to exist since 2018 and has not been resolved since. We have observed this happening on Redmine too, not by much with the default theme but a lot with the Planio theme. We have a gif demonstrating this, unfortunately it is too large to upload here.

History

#1 Updated by Felix Schäfer 10 months ago

We have fixed this in the Planio theme with the following js snippet:

    // fixes https://bugs.chromium.org/p/chromium/issues/detail?id=890248
    // applied to chrome on windows and linux
    var isChrome = !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);
    if ((navigator.appVersion.indexOf("Win") != -1 || 
      navigator.appVersion.indexOf("Linux") != -1) && 
      isChrome
    ) {
      $('textarea').on('keydown', function(event) {
        if (event.key === 'PageUp' || event.key === 'PageDown') {
          const cursorPosition = event.key === 'PageUp' ? 0 : event.target.textLength;

          event.preventDefault();
          event.target.setSelectionRange(cursorPosition, cursorPosition);
        }
      });
    }

Also available in: Atom PDF