O Chrome esmaga espaços ao colar

O Chrome esmaga espaços ao colar

Este redditorencontrei um comportamento interessante do Chrome UX ao colar. O Chrome compacta espaços quando colado na barra de endereço ou em arquivos window.prompt. Mas não aperta ao colar nos campos de entrada ou no console.

Aqui está um trecho executável com exemplos de entradas e saídas.

No 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

No 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`);

Esse comportamento está documentado em algum lugar do Chrome? Não consigo encontrar isso através de uma pesquisa superficial. Isso deveria ser considerado um bug do Chrome? Por um lado, poderia ser bom segurar certos usuários, mas por outro lado, o Chrome não respeita as instruções explícitas dos usuários.

Existe uma maneira de evitar esse comportamento ou contornar?


Mais descobertas no Chrome 65 no Linux:

Usando o buffer de cópia de seleção X (selecionar, clicar com o botão do meio), os espaços são preservados ao colar em uma window.promptentrada. Mas os espaços sãonãopreservado ao colar na barra de endereço.

Usando ctrl+c, ctrl+v, os espaços não são preservados nem window.promptna barra de endereço.


Os comentaristas relatam que esse comportamento não está presente no OSX.

informação relacionada