Skip to content

Conversation

@jcupitt
Copy link
Member

@jcupitt jcupitt commented Jul 31, 2025

Another attempt at highdpi support. This one seems to work!

The remaining issue I've noticed is the focus rectangle. It does not scale with display density, so you can get eg.:

image

@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

Ah, enclosing our highdpi drawing in save/restore fixes the focus rect

jcupitt and others added 2 commits July 31, 2025 13:02
Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>
@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

I'm seeing:

(vipsdisp:1886400): Gtk-WARNING **: 12:50:45.055: Trying to snapshot GtkGizmo 0x555555b20cb0 without a current allocation

Dragging a window between desktops with different density, but that's probably a gtk issue.

@kleisauke
Copy link
Member

Works great on Fedora 42 as well! Tested both with and without those gtk_snapshot_set_snap() patches.

@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

That's great! I'll make another test release to make win builds easier.

clip clients, client should use regular coordinate space
@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

I added some win binaries to that test release https://github.com/jcupitt/vipsdisp/releases/tag/v4.1.0-high-dpi2

@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

Friends with 4k win displays are saying it's working fine!

The binary I made is with your gtk patch

@kleisauke
Copy link
Member

I can confirm it works fine on Windows with various desktop scaling settings!

@jcupitt
Copy link
Member Author

jcupitt commented Jul 31, 2025

that was very painful!

thank you for all the code / review / testing!

@jcupitt jcupitt merged commit a203e7d into master Jul 31, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants