Chrome сжимает пробелы при вставке

Chrome сжимает пробелы при вставке

Этот реддиторНашел интересное поведение Chrome UX при вставке. Chrome сжимает пробелы при вставке в адресную строку или в window.prompt. Но не сжимает при вставке в поля ввода или в консоль.

Вот готовый к запуску фрагмент с примерами входных и выходных данных.

В Chrome:

                 input | typed    | copy/pasted
 "h e l l o w o r l d" | 9 spaces | 9 spaces
 "hello         world" | 9 spaces | 1 spaces

В Firefox:

                 input | typed    | copy/pasted
 "h e l l o w o r l d" | 9 spaces | 9 spaces
 "hello         world" | 9 spaces | 9 spaces

var str = window.prompt('Enter a few spaces.');
var spaces = (str.match(/ /g) || []).length;
console.log(`You entered ${spaces} spaces`);

Задокументировано ли это поведение где-либо в Chrome? Я не могу найти это через беглый поиск. Следует ли считать это ошибкой Chrome? С одной стороны, было бы неплохо придержать некоторых пользователей, но с другой стороны, Chrome не уважает явные инструкции пользователей.

Есть ли способ предотвратить такое поведение или обойти его?


Дополнительные результаты по Chrome 65 на Linux:

Используя буфер копирования выделения X (выделение, щелчок средней кнопкой мыши), пробелы сохраняются при вставке в поле window.promptввода. Но пробелынетсохраняется при вставке в адресную строку.

При использовании ctrl+c, ctrl+v пробелы не сохраняются ни в window.promptадресной строке, ни в тексте.


Комментаторы сообщают, что в OSX такое поведение отсутствует.

Связанный контент