Quando pressiono Ctrl+Z, ele só funciona na aba (arquivo) aberta no momento.
Se eu alterar o arquivo a.java
e depois alternar para o arquivo b.java
em outra aba e fizer outra alteração e clicar, Ctrl+Z
somente as alterações nele b.java
serão desfeitas, mas não as nele, a.java
a menos que eu volte para aquela aba.
Existe uma maneira de alterar a ação de desfazer para que funcione globalmente em todo o projeto e não fique limitado à aba aberta no momento?
Então, quando pressiono Ctrl+Z, b.java
ele reverte, depois pressiono Ctrl+Z novamente e ele alterna para a.java
e reverte.
Isso é intencional e não pode ser alterado, até onde eu saiba.
As vantagens são que cada arquivo tem seu próprio buffer de desfazer e as alterações podem ser desfeitas independentemente umas das outras. Além disso, permite melhor controle sobre o que exatamente é desfeito - se houvesse apenas um buffer de desfazer global, a próxima ação desfeita poderia ser qualquer coisa. O usuário não necessariamente se lembrará do que foi essa ação, potencialmente desfazendo algo que não deveria ser desfeito sem chance de descobrir onde e qual ação foi. Poderia ser em qualquer lugar quando há apenas um buffer de desfazer global.