Attempts to rework object placements to snap them to device pixel space to improve sharpness at fractional scaling.
New component
SnapLayout now acting as an almost-drop-in replacement for Qt's ColumnLayout and RowLayout It positions children properly in device pixel space.
New helpers
ZUtils has three new helpers:
snap(v, item)
snapCeil(v, item)
snapFloor(v, item)
Snaps v to item's device pixel space.
Related issue
No response
Type
New feature
Tested
Build succeeds
Existing tests pass
Manually verified
Breaking changes?
No response
Checklist
CI passes (format, lint, typecheck)
Clean commits
No new warnings
Docs updated if needed
### What & why
Attempts to rework object placements to snap them to device pixel space to improve sharpness at fractional scaling.
### New component
`SnapLayout` now acting as an almost-drop-in replacement for Qt's `ColumnLayout` and `RowLayout` It positions children properly in device pixel space.
### New helpers
`ZUtils` has three new helpers:
- `snap(v, item)`
- `snapCeil(v, item)`
- `snapFloor(v, item)`
Snaps `v` to `item`'s device pixel space.
### Related issue
_No response_
### Type
New feature
### Tested
- [x] Build succeeds
- [ ] Existing tests pass
- [x] Manually verified
### Breaking changes?
_No response_
### Checklist
- [ ] CI passes (format, lint, typecheck)
- [x] Clean commits
- [ ] No new warnings
- [x] Docs updated if needed
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
What & why
Attempts to rework object placements to snap them to device pixel space to improve sharpness at fractional scaling.
New component
SnapLayoutnow acting as an almost-drop-in replacement for Qt'sColumnLayoutandRowLayoutIt positions children properly in device pixel space.New helpers
ZUtilshas three new helpers:snap(v, item)snapCeil(v, item)snapFloor(v, item)Snaps
vtoitem's device pixel space.Related issue
No response
Type
New feature
Tested
Breaking changes?
No response
Checklist
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.