Hyprland: Uncommon resolution - bottom row of pixels not used for windows
Hyprland Version
v0.30.0
Bug or Regression?
Bug
Description
On my laptops internal screen Hyprland doesn’t use the bottom row of pixels to display windows. Instead only the wallpaper is shown there. If your wallpaper is black this doesn’t really hurt (except that you loose a row of pixels), but if there is something colorful on your wallpaper (like our beloved hypr-chan) it gets annoying really fast, especially for fullscreen applications (e.g. when watching a movie, playing a game, etc.)
I am using Hyprland on a Framework Laptop 13 whose internal display has a quite uncommon resolution:
> hyprctl monitors
Monitor eDP-1 (ID 0):
2256x1504@59.99900 at 0x0
description: BOE 0x095F (eDP-1)
make: BOE
model: 0x095F
serial:
active workspace: 2 (2)
special workspace: 0 ()
reserved: 0 30 0 0
scale: 1.50
transform: 0
focused: yes
dpmsStatus: 1
vrr: 0
How to reproduce
Use Hyprland on a similar display. Fractional scale doesn’t matter (I have tried 1 and 1.5), neither does the type of application. Nothing gets displayed on the bottom row except the desktop wallpaper and the mouse (if I move it to the bottom). This bug isn’t new (it exists since at least v0.27.2) and I was able to reproduce it on both Arch and NixOS.
Crash reports, logs, images, videos
I attached some pictures that I took with my smartphone (taking screenshots was not possible since grim doesn’t capture those pixels either). As an example I just used alacritty
I took this last image just that you see that this line of pixels is from the hypr-chan background.
About this issue
- Original URL
- State: closed
- Created 9 months ago
- Reactions: 7
- Comments: 27 (17 by maintainers)
Commits related to this issue
- box: use std::round instead of std::floor in ::round() fixes #3761, possibly also #3511 — committed to hyprwm/Hyprland by vaxerski 8 months ago
- box: use std::round instead of std::floor in ::round() fixes #3761, possibly also #3511 — committed to thejch/Hyprland by vaxerski 8 months ago
- renderer: deny invalid scales and suggest a replacement ref #4225 #3511 — committed to hyprwm/Hyprland by vaxerski 6 months ago
Just tested it and it actually fixed it for me! I can finally watch anime without distracting pixels at the bottom on my laptop screen, thank you @eriedaberrie @vaxerski
I also had this problem. 1.5 didn’t work for me (
2560x1440@165.00301 at 0x0laptop screen) and those annoying pixels almost always were there on the right side of the screen. 1.5111 works for me and makes no gaps. If someone will stumble upon this - try to play with scaling for a bit.Integer scaling and 1.5x scale seem to don’t have any gaps 1.25x and 1.75x still have gaps between windows and on the top and sides 1.33x still has gaps between windows but gaps around the screen can be removed by… adding more threes to the scale - 1.3333x only has gaps between windows but not on the edges.
Maybe unrelated but when going through the code I remember seeing that if you type in 1.33 for scale, it sometimes uses that value but other times 1.(3) is used for some reason. Tho I can’t recall where that was.
Overall I’d say it’s improved but not resolved.
problem still occurs
using 2560x1440 monitor, with x1.33 scaling
x1.0 scaling works without problem
thank you, but unfortunately it didn’t help, no difference.