Test case and screenshot attached.
Screenshot shows test case running on Windows at 200% scaling.
Problems:
-
Incorrect scaled ribbon button texts.
Hiding and showing the ribbon command make the texts rescale correctly. -
Incorrect scaled TcxRichEdit.
Apparently caused by the skin- or look and feel controller being located on a datamodule instantiated by the main form. -
Incorrect scaled TcxStyle font.
Apparently only occurs if the style font is changed a runtime.
Test case demonstrates the problem with a TcxTreeList control but it also occurs with a TcxGrid. -
Incorrect TcxSplitter mouse-over cursor zone size.
Probably caused by the hack I apply to avoid skinning the splitter. Nevertheless the problem only occurs with HighDPI scaling.
Hello Anders,
Thank you for sharing your sample project. I compiled it with the latest version of our controls (v21.2.4). It seems that items 3 and 4 are fixed in this build. Please test the following executable file and let me know if items 3 and 4 can still be reproduced on your machine with it: ExeFile.
I am not sure that I correctly understand the TcxSplitter-related behavior you described. If you can reproduce it with my executable file, please describe the expected behavior in detail.
I can confirm that #3 (TcxStyle) can no longer be reproduced with your executable. The remaining issues still exist.
The problem with the splitter is that the mouse cursor doesn't change to crVSplit or crHSplit over the grab-bar itself. Outside the grab bar there is no problem. The functionality of the splitter works as it should though. It is only the cursor feedback that is incorrect.

I'm unsure if this problem is related to HighDPI scaling as the problem can be reproduced with some of the skins without scaling.
Hello,
Thank you for sharing your image. I reproduced this behavior. As you mentioned, it doesn't apply to HighDPI.
However, this is the hot zone of the splitter, and the mouse cursor uses the default cursor when hovering over this zone.
Regards,
Constantin
Yes, you are right. My bad. I don't know why I didn't notice that before.
I've looked at the source and it seems the hot zone cursor is hardcoded to crDefault (I'd like it to be crHandPoint). I'll create a separate feature request for that.
You can use the solution demonstrated in the attached demo project to implement this behavior.
Regards,
Constantin
Thanks, but that would cause the cursor to briefly flicker as there's no way to avoid that the default cursor handling sets the cursor to crDefault before my own code can execute.
Hello,
This is the closest solution we found for now. I cannot guarantee that we will be able to make it behave better in the near future.
Regards,
Constantin
Problem #1 has still not been resolved; Ribbon buttons does not scale correctly.
Isn't it about time this got fixed?
Hello Anders,
I created a separate ticket on your behalf: T1263794: Ribbon button captions are incorrectly scaled. Let's discuss this issue there.