ItsBexy / CrossUp

9 stars 2 forks source link

Fix UI getting cut off when Global Font Scale is set to > 12.0pt #8

Closed ryankhart closed 2 years ago

ryankhart commented 2 years ago

And restore restricted window functionality

I play on either a 1440p or 4K display, each of which as a much higher pixel density than a usual 1080p monitor, so I need to have larger fonts and UI scaling on literally every game I play. Unfortunately, for Dalamud, it's not a UI scale but a font scale, so it doesn't proportionally increase the size of the UI along with the font size, so text and UI often get cut off for statically sized ImGui windows.

By the way, congratulations on getting this plugin figured out and developed! I'm loving it so far! It automates a lot of tedium I used to do manually with the hotbars that ended up discouraging me from tinkering with my HUD layout and trying out new jobs.

ryankhart commented 2 years ago

Moved this into a draft because my changes introduced a new bug that won't allow repositioning of the cross hotbar in HUDlayout. It resets every time.

ItsBexy commented 2 years ago

The next major update will introduce some changes to the configuration window, and it's definitely on my radar that I need to better account for various style settings in Dalamud.

I think I can guess the cause of the bug that was introduced. There's a parameter for the main bar-arrangement function that, if set to true, tells it to correct certain misalignments that can occur after HUD actions. Sometimes that parameter should be set to true, and sometimes it should be set to false, depending on the context in which the function is called. Depending on how it's set, there can be weird behaviours, like the cross hotbar being stuck, or sliding right off the screen as it continually "self-corrects". Having that parameter at all is a bit of a messy fix, and I'm looking into ways to circumvent those hud layout bugs entirely.

ryankhart commented 2 years ago

Awesome! I got your new testing update and tested it out. So far, in my brief testing, it solves all the issues that I had intended to fix in this PR. I think my issue is that I'm not quite fully acquainted with your codebase yet. I'm going to close this PR now, and if there's anything new that crops up, I'll just start over with a fresh git pull from your repo.