Saturday, 7 March 2009

Taskbar shows in full screen applications

I have a few applications that show the Windows taskbar when they are supposed to be running in full-screen. A couple of these applications are VLC media player, and Hauppauge WinTV.

I'm running Windows Vista (Home Premium), and have found a couple of workarounds, like auto-hiding the taskbar, or running the programs in a compatibility mode, but these solutions are not ideal, as they either compromise other functionality, or I have to switch them off again afterwards.

The under-lying problem seems to be a bug with Windows (possibly just Vista, possibly other versions too) where if you are running in Large Fonts mode (i.e. DPI-scaling is set to a non-standard value), then the call that gets by certain programs to put the application in full-screen mode does not hook into the functionality to hide the taskbar.
I can "prove this" by setting my DPI-scaling to standard (96DPI), rebooting (changing the DPI-scaling requires a reboot annoyingly) and then observing that full-screen mode (e.g. for WinTV) hides the taskbar ... and then changing it back to 120DPI (large) and doing the same - the taskbar is not hidden.

I did look briefly into how to file a bug report with Windows, but 10 minutes of Googling left me without many options (install Microsoft OneCare or pay $35 to report the issue over the phone - no thanks!).

One interesting thing is that although some applications display this behaviour, not all do. So Media Player Classic displays in full-screen correctly, where VLC does not. I can watch full-screen television in Windows Media Center without the taskbar, but not in WinTV.

I may look further into it later. Perhaps I can use the SysInternals Process Monitor to figure out which Windows API call is being used and figure out a way to patch it. Then I can try to badger someone at Microsoft to listen. Most likely I'll keep using the work-arounds and being mildly annoyed about it every time that I have to...

13 comments:

Nic said...

I also have this issue. I have tested this on various MS Windows platforms. XP does not have this issue. I even wrote my own exclusive fullscreen program in Java and it does not have this problem in Vista. The two programs I have noticed this in is VLC Player and PowerDVD. Let me know if you find a way to overcome this, without annoying workarounds.

Nic said...

I have found your answer! I have been pissed off about this for weeks. Here it is:

Vista and XP handle DPI scaling in different ways. By default, when a program runs it will use whatever is installed. A lot of programs have not migrated to the Vista way. This causes the exclusive fullscreen mode to be less exclsuive than desirable. Here's the fix:

You can either (only do one of these ):
1. Right-click each affected program's executable and go to compatibility tab. Then check the "Disable display scaling on high DPI settings"
2. Globally fix this in the custom DPI setting. Chose the windows XP scaling mode when you set your DPI.

Marv said...

Hi Nic,

Sorry I didn't reply to this earlier, but I wanted to say that your fix totally works. Well done! You removed one of VLC's major annoyances for me.

Many many thanks!

Marv

Anonymous said...

Thanks this worked great!

Anonymous said...

Worked for me too. AWESOME! This had been annoying me for SO LONG, THANKYOU!!!

Anonymous said...

Hey Nic - you're a star!! Worked like a charm - this had been annoying me for ages!! Thank you!!

Anonymous said...

Thanks! works, even for windows 7

Anonymous said...

Brill! Thanks so much, works a treat.

Damon said...

Brilliant. Works perfectly for BBC iPlayer Desktop on Windows 7 x64.

If anyone reading this has an issue of the Windows 7 taskbar remaining on-top of BBC iPlayer in full-screen, the above solution will sort it.

Michael said...

Fantastic, works on my Win7x64 iPlayer desktop too. Thanks Nic.

sailor.nir said...

Hi. I'm glad you got this solved for Vista, but I have the same problem on XP. Executable compatibility tab doesn't have that checkbox. Any suggestions anyone?

Anonymous said...

im haveing this issue too but with windows 7 and when im useing fullscreen on youtube. the task bar didnt used to do this its just started it randomly a week ago. please help :'( your solution isnt working for me

James Palmer said...

This fix worked perfectly for me! Thank you :-)

(Problems with BBC iPlayer Desktop in Windows 8 on a Surface Pro)