DPI scaling problems with latest 14.36

Tagged: ,

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #68254
    tomkrysl
    Participant

    I am reviewing an app using AC for DPI awareness in Win10.
    And I have serious DPI scaling problems with XE and XE5, both 32 and 64, Win10.
    With older 13.16 almost everything is ok (only some checkboxes not scaled perfectly and some other minor repainting problems).
    With 14.36 all the forms and controls are much much larger than configured DPI, loading of forms and frames with controls takes very long, height of combo boxes is very badly scaled (seems that stays on 96 DPI).
    Does not depend on SkinManager.Active status, it is always bad.

    Cannot post example as it is commercial app, but there are serious bugs in the new AC, must be visible in any app.

    Using 13.16 until fixed.

    Regards
    TK

    #68256
    Support
    Keymaster

    Hello
    The v14 has huge changes in support of scaling in applications.
    The TsSkinManager component has the Options.ScaleMode property where several modes of scaling exists.
    Please, read this article: http://www.alphaskins.com/showdoc.php?l=en&n=21

    Also, special compiler directive has been added for skipping this new features for a backward compatibility (‘ACDPIAWARE’). A key should be commented for returning old behavior.

    #68257
    tomkrysl
    Participant

    Hello
    ok, thank you for info, I didn’t know about such huge changes.
    I just replaced the AC source and compiled my project again.
    No warning etc. has been issued.
    The only warning I’ve got was when I now recompiled the design packages in Delphi and reopened my form (stored skin obsolete).

    However, there are still problems with v14.36.
    I still use Delphi XE (but same is XE5). I dont (and wont) have newer Delphi.

    a)it is very slow.
    When I keep the defaults (Options.ScaleMode=smAuto,Options.PixelsPerInch=96) my app starts 10s instead of 5s with v13.16, is way too slow!
    When I set smOldMode it is even slower, 11s.
    When I keep smOldMode and comment out ACDPIAWARE the app starts 6.5s.
    These were tested at 96DPI (100% scaling in Win10), no size problems.

    b)size problems.
    I try to set 125% scaling in Win10.
    When I keep the defaults (smAuto,96 PPI) my app starts 17s(!!!) instead of 8s with v13.16, is waaay too slow and moreover it has incorrect size, is very big (I suspect it has 150% size instead of 125%).
    When I keep smOldMode and comment out ACDPIAWARE the app starts 9s and has correct size.

    c)painting problems.
    The 13.16 had some minor painting problems. Sometimes checkbox was not painted on pagecontrol page and extra panel on it (had to switch page to another page and back to see it), sometimes combobox background was painted incorrectly in disabled mode.
    The 14.36 has no such problems so far but sometimes the main form flickers black just before it appears on screen.

    The main problem with v14 is the slowness. I continue with v13 until fixed.

    Note:
    In my app I have large number of misc controls on main form, either as designed or I create them at runtime before the main form is shown. I tried to set Active=False during creation to speed it up but without effect.
    When the main form is shown and all the controls are created it is slower but can be worked with.
    The same app can be compiled in Lazarus with dummy AC package (I’ve sent it to you a long time ago) and there it starts blazingly fast (<1s). So the speed problem is AC.

    Regards
    TK

    • This reply was modified 4 years, 10 months ago by tomkrysl.
    #68262
    Support
    Keymaster

    Can I connect to your PC and look your application remotely?

    #68265
    tomkrysl
    Participant

    I can make different exes and send you link via email.
    If you send me your email to my email (see my profile).
    I cannot send you sources.

    #68266
    Support
    Keymaster
Viewing 6 posts - 1 through 6 (of 6 total)
  • You must be logged in to reply to this topic.