You are here

[Fixed] Icons for PAF apps missing at 120dpi on Vista

8 posts / 0 new
Last post
John T. Haller
John T. Haller's picture
Offline
Last seen: 10 hours 26 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
[Fixed] Icons for PAF apps missing at 120dpi on Vista

THIS BUG IS FIXED IN THE CURRENT 1.6 PRE-RELEASE:
https://portableapps.com/node/18859

I've confirmed and reproduced a bug in the current 1.5.x Platform where on Vista, when the screen DPI is set to 120 (aka Large Fonts in Windows), the icons for apps in PortableApps.com Format are missing from the menu. This is due to Vista's ExtractIconEx API not working properly with Delphi when in 120dpi mode though I am not sure if the issue is with Delphi or Vista at the moment. I'm working on a workaround that will fix it and will post soon.

UPDATE: I have confirmed that this only affects Windows Vista and Windows 7 Beta at 120dpi. It does appear to be a bug in the ExtractIconEx API in Windows itself (it fails to return a small icon, which it should not as there is one). It does not affect Windows XP and earlier.

John T. Haller
John T. Haller's picture
Offline
Last seen: 10 hours 26 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Fix Build Test 1

I've posted a fixed build that should handle the issue. You can download it here:
https://portableapps.com/temp/livetests/120dpifix/PortableAppsPlatform.exe

Just place this in your X:\PortableApps\PortableApps directory. You can rename the old one first just in case.

This should enable a full view in 120dpi mode on all systems. The graphics of the menu itself will be a bit distorted, but that happens with most apps at 120dpi.

This should fix the issue with icons not showing up. All PAF icons will now show up properly. Non-PAF icons will still be losing a pixel on the right and bottom edges. Small and large fonts should also now work and not be cut off.

Please post back if this is working for you.

Sometimes, the impossible can become possible, if you're awesome!

Zach Thibeau
Zach Thibeau's picture
Offline
Last seen: 2 years 1 month ago
Developer
Joined: 2006-05-26 12:08
Test on Vista Home Premium

Test on Vista Home Premium dpi set at 120, Test successful and issue I believe is resolved Smile

your friendly neighbourhood moderator Zach Thibeau

Bruce Pascoe
Offline
Last seen: 12 years 10 months ago
Joined: 2006-01-15 16:14
...

Quick question, does this only affect Vista and later with Aero turned on? With Aero off, the operating system reverts to XP scaling behavior, so it might be worth testing that.

Why I bring this up is because, what I'm thinking is that it's not necessarily a bug in ExtractIconEx, but an incompatibility with the algorithm it's using for new-style scaling. That is, perhaps it's looking for a 20x20 image at 120dpi? Vista's DPI scaling tries to make everything look nice regardless of DPI, so higher DPI would likely result in it looking for an image larger than 16x16. Failing that, it might then look for a Vista icon (256x256), which if I'm not mistaken not all of the apps here have yet...

I don't know, I'm just guessing here. But I've been dealing with the Windows API long enough that I can usually deduce what's going on...

John T. Haller
John T. Haller's picture
Offline
Last seen: 10 hours 26 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Nope

It happens when you have Aero off, too. It seems in Vista when you have 120dpi enabled it refuses to give you a small icon when calling ExtractIconEx (which is supposed to give you both a small and large icon). The same applies in Windows 7 Beta. It's either a conscious decision, or people with 120dpi enabled are so used to things looking bad that they haven't noticed the programs it affects.

Sometimes, the impossible can become possible, if you're awesome!

pierrot
Offline
Last seen: 9 years 1 week ago
Joined: 2008-02-26 12:34
Hurray, it works for me!

Dear John, thank you. It works like a charm.

Peter

Dogger
Offline
Last seen: 15 years 6 months ago
Joined: 2009-04-14 00:44
Thank you!

I registered so I could say thank you for fixing this problem. I have Vista DPI set somewhere between standard and 120 DPI, not because I'm an old fogey but because I like to sit back from the monitor a little and with a HD monitor all the text looks so tiny.

So thank you again for fixing this issue, I think it's pretty common with all the HD monitors out there that people are enlarging the fonts they use. In fact I use "No Squint" on Firefox to zoom everything in so I don't have to strain my eyes because I'm in front of the computer for hours and hours every day.

Love Portableapps, it's the future of computing IMHO.

Bruce Pascoe
Offline
Last seen: 12 years 10 months ago
Joined: 2006-01-15 16:14
I know

The resolution just keeps getting higher and the text smaller and smaller... high DPI looks awesome if stuff is scaled right, but unfortunately a lot of people stupidly refuse to use anything other than 96 DPI because "I got a high-resolution monitor so I could fit more stuff on the screen, not so I could scale everything up!" Which is all well and good, but if the screen doesn't scale 1:1 with the pixel count (which they don't), everything is just going to keep getting tinier and tinier until you can't see anything--defeating the purpose.

I don't understand people sometimes. :/

Log in or register to post comments