Adjust KDE Plasma scale without restarting (X)

My main machine is currently a 15.6" laptop. As such, for things to not be too tiny, I have set the global scale to be a bit higher.

There are a few situations where it shouldn’t be, though, for example when i plug in an external monitor. While using GNOME Desktop, the could easily adjust scaling, either through the Tweaks app or Accessibility. In KDE Plasma under X server, however, it requires a restart, which i did not want to do, so here’s a probably not so good workaround!

Let’s start with a few disclaimers:

Xrandr is used to set the size, orientation and/or reflection of the outputs for a screen. It can also set the screen size.

Looks like xrandr can be used to adjust the scale. i had to install it on Fedora, but most other distributions should have it installed by default.

xrandr --output HDMI-A-0 --scale 1.3x1.3

You can find a list of displays by simply running xrandr, or this mess: xrandr | grep connected | grep -Eo '^[^ ]+' 😂

Looking at the man page, values greater than one lead to a compressed screen, and values less than 1 zoom in. With my default global scaling settings set in the settings, 1.3x1.3 was fine on a 24 inch monitor.

Finally, restart the plasma shell.

plasmashell --replace &

Things will go blank for a few seconds, and then the screen and programs should be scaled correctly. This doesn’t require a logout, restart, or close apps! When i disconnected the monitor, my laptop was still the correct scale.

Thanks to these posts on various forums, which i pieced this thread from:

Please let me know if there’s a better way to do this, of course! Thanks for reading, and I’ll see you in a few days with a March status update. 💜

If you enjoyed reading this post, please consider supporting me 💜