https://bugs.kde.org/show_bug.cgi?id=465733

Nate Graham <n...@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|HiDPI broken with Slack     |Certain XWayland-using
                   |(electron) app with Plasma  |Electron apps are drawn too
                   |5.27                        |small when using HiDPI
                   |                            |client scaling

--- Comment #11 from Nate Graham <n...@kde.org> ---
Investigated this today. 63de3d6f1716a6924fa5924b5a57af4abaa4460f does indeed
seem suspicious.

Unfortunately I can't try Slack because it doesn't seem to show its main UI
after launch, just the tray icon. Console log says, "Error sending from
webFrameMain:  Error: Render frame was disposed before WebFrameMain could be
accessed"

I did manage to I did try with Discord (an Electron app running in XWayland
mode), 2 screens (one at 200% and one at 100%), and the "Legacy Applications
(X11): Apply scaling themselves" setting. I launched it using GUI methods. No
matter which screen Discord was launched on, it got the right scale factor for
me.

I also tested with VSCode, and got a different result: When launched on the
200% scale screen, it was drawn at 100% scale. When launched on the 100% scale
screen, it was all blurry, like it was actually being drawn at 50% and
upscaled.

When I set the GDK_SCALE=1 environment variable and re-launched VS Code in the
terminal window that I set the envar in, it was drawn correctly. Interestingly,
when I tried the same trick with Discord, running it from that same terminal
window, it was only drawn correctly while GDK_SCALE=1 was set. When I unset it,
or ran `flatpak run com.discordapp.Discord` from a terminal window where I
hadn't set it, I got the same initial result as VS Code: being drawn too small.

So it seems like these apps do in fact need GTK_SCALE=1 to be set or else they
don't get launched with the right scale factor. The mystery is why that envar
manages to gets set for Discord when launched from a GUI method like Kickoff or
KRunner, but it doesn't happen for VS Code.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to