O que faz o HiDPI funcionar?

3

Estou testando o Ubuntu Bionic, o GNOME, o elementary OS, o KDE, o Xfce 4.13 (a versão GTK3, todos os aplicativos foram portados para o GTK3).

Todas as distros suportam o hidpi em estruturas: quando eu inicio o Google Chrome / Firefox / etc. (GTK 3), VirtualBox (Qt 5) ou Spotify (Electron) algum componente no DE detecta que minha tela é 4K e faz a coisa certa para que o aplicativo seja dimensionado em 2x.

Com exceção do Xfce. No Xfce, aplicativos de terceiros não funcionam bem, especialmente aplicativos Qt e Electron que nunca são lançados na escala correta.

O Xfce 4.13 possui uma opção de "dimensionamento" que você pode usar para especificar que você deseja que tudo seja dimensionado para x2. No entanto, mesmo se eu fizer isso, os aplicativos Qt e Electron não selecionam a configuração. Eu também tentei usar gsettings para definir a configuração "GNOME" além do Xfce, sem sucesso. Os aplicativos Qt e Electron ainda parecem ruins, enquanto no GNOME eles parecem ótimos.

A minha pergunta é: como é que o Ubuntu, elementar e até certo ponto o KDE faz aplicações usando diferentes frameworks, todos escalam corretamente?

É claro que sei como iniciar manualmente os aplicativos do Qt no escalonamento correto, mas estou imaginando o que torna esse processo muito mais fácil em distribuições diferentes do Xfce.

Existe um pacote que eu possa instalar a partir de outra distro que faça o Xfce se comportar "corretamente", de modo que, se eu lançar um aplicativo GTK3, Qt ou Electron, eles sejam dimensionados corretamente? É o lançador do que passa algumas variáveis, ou é um componente de nível inferior?

    
por nkkollaw 28.08.2018 / 23:06

1 resposta

1

Infelizmente, não existe uma opção global para definir. Essas distribuições estão definindo várias variáveis para você.

Muitos aplicativos estão levando em conta a configuração Xft.dpi de ~/.Xresources (essa é a única opção que eu configurei, mas mal uso os aplicativos GUI)

Como as aplicações do Qt 5.6, Qt 5 podem ser instruídas para honrar o DPI da tela exportando

export QT_AUTO_SCREEN_SCALE_FACTOR=1

Se isso não funcionar, tente

export QT_AUTO_SCREEN_SCALE_FACTOR=0
export QT_SCALE_FACTOR=2

O GDK 3 (GTK + 3) pode ser dimensionado com

export GDK_SCALE=2

aplicações eletrônicas são difíceis de manipular no linux [1] [2] . Eles respeitam a opção text-scaling-factor do GNOME, por exemplo, [3] .
Aqui você não tem escolha a não ser usar --force-device-scale-factor=1.5 como argumento.

Bem documentada página wiki do Arch Linux HiDPI para ler mais

    
por 31.08.2018 / 10:18