Fix fractional scale updates in some cases #2447
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Describe your PR, what does it fix/add?
The fractional scale of windows was not updated on "keyboard" moves (
movecurrentworkspacetomonitor
andmovetoworkspace
if the target workspace is on a different monitor), while it worked as expected when dragging a window with the mouse. Similar to #1794. Although that issue was already fixed, I am observing the same behavior on currentmain
.Is there anything you want to mention? (unchecked code, possible bugs, found problems, breaking compatibility, etc.)
This is my first time doing anything with Hyprland (or even Wayland for that matter), so not sure if I did it right.
In
CWindow::moveToWorkspace()
, the scale used appears to be the one from the previous monitor (where the window used to be), but I'm not sure if there are any unintended side-effects from settingm_iMonitorID
. If that is bad, the scaling behavior was also fixed by only creatingPMONITOR
fromPWORKSPACE->m_iMonitorID
.Is it ready for merging, or does it need work?
Apart from the above disclaimer, I think it's ready (for what it's worth). I tested it with two monitors of different scale (2.0 and 1.6), and alacritty as client.