Forcing XBMC to "stay on top" no matter what?
#1
I am having a bit of a problem and hours of searching the internet have done me no good.

Something with my remote control makes XBMC minimize once in a while. It's rare; it happens maybe once a week. But I hit a button on my IR remote and XBMC minimizes. Your guess is as good as mine as to why it happens but even after reformatting, it still happens. It's not a big deal, but nothing is more annoying than watching Futurama at 2am, trying to go to bed, and having to get up and look for my mouse to click back to XBMC.

I would like to know if there's a way, even if it's via use of an external program, to make XBMC "always on top no matter what" meaning hitting Win+D does not minimize it, ALT+TAB does not minimize it, getting an instant message does not minimize it, etc. I know this must be possible because kiosks all over the world use Windows systems and they have "front ends" that cannot be exited no matter how hard you try. For reference, I am using the latest XBMC on Windows 7, but this problem has been ongoing since the early versions of the (fantastic) program.

In short, I want XBMC to run in front of everything and other than clicking the exit XBMC button inside XBMC, I don't want anything to close or minimize it. Any help would be much appreciated!
Reply
#2
I'm not sure if this will help with forcing XBMC to stay on top all the time, but if you were to use EventGhost you could at least assign a button on your remote to maximize and bring to front again?

EventGhost is pretty easy to use, so you should be able to work out how to do it! (if not I can check once at home)
OpenElec / Silverstone LC17 / 6TB / Toshiba 32WLT68

Get your freshly squeezed recipes, news and views at foodforfriendsyeah.co.uk!
Reply
#3
bramblepants Wrote:I'm not sure if this will help with forcing XBMC to stay on top all the time, but if you were to use EventGhost you could at least assign a button on your remote to maximize and bring to front again?

EventGhost is pretty easy to use, so you should be able to work out how to do it! (if not I can check once at home)

Thank you for your helpful post. I tried EventGhost and I must say it is indeed an incredible program (though it took me a minute to learn). However, there's really no way to assign a key press to bring XBMC back. I tried everything, from mapping a button to open XBMC to "pressing" alt+tab and no dice. Only way I can get back to XBMC after it minimizes itself is by mouse clicking on the taskbar icon of it.

Needless to say, thanks for showing me EventGhost, even though it didn't solve my problem. I'd really rather fix this by means of forcing XBMC to always be on top rather than having to press some key when it minimizes, anyway. It kinda kills the HTPC feeling when all of a sudden I'm looking at a Windows desktop. Smile
Reply
#4
I use Intelliremote and have a button programmed for Alt-Tab.

I also find sometimes hitting the button to open XBMC again will bring it to focus.
Reply
#5
Brad P Wrote:I use Intelliremote and have a button programmed for Alt-Tab.

I also find sometimes hitting the button to open XBMC again will bring it to focus.

Doesn't work for me. Trust me, I've tried everything. I'd rather not get into why my remote is doing this sporadically or what buttons I can program to re-open XBMC and I'd much rather get information on how to make it run on top of everything. I know you've all seen programs that do this, especially at kiosks and such. Any help would be greatly appreciated.
Reply
#6
You will probably have better luck using it in fullscreen window mode instead of true fullscreen mode. Check under settings/system/video output. This will at least keep XBMC from minimizing I believe, but as far as staying "always" on top I'm not sure. I too would probably use EventGhost for this, as I think it has an always ontop you can apply to a window.
Reply
#7
kricker Wrote:I too would probably use EventGhost for this, as I think it has an always ontop you can apply to a window.

This is big, helpful news to me since I had no idea. Thank you! Man, who knew EventGhost had an "always on top" feature for programs? Amazing.

Is there any downside to using maximized window instead of true full screen? I figured there would be a performance hit for some reason.
Reply
#8
It'll depend on your graphics chipset. You may experience frame dropping or tearing. Then again it may run perfectly fine.
Reply
#9
I thought using a maximized window did incur a performance hit, at least it does for me.

You could always try keeping it set to full screen, then setting EventGhost to "find window:XBMC.exe" then "set to always on top" or "bring to front". You could assign that to anything, like when your machine comes out of standby (Resume), or to a spare button on your remote.

I have XBMC set to full screen and on occasion had a system tray popup causing it to lose focus. The above fixed it, as did stopping those damn system tray popups!

EventGhost is extremely useful and I'd be surprised if it couldn't fix your problem Wink
OpenElec / Silverstone LC17 / 6TB / Toshiba 32WLT68

Get your freshly squeezed recipes, news and views at foodforfriendsyeah.co.uk!
Reply
#10
bramblepants Wrote:I thought using a maximized window did incur a performance hit, at least it does for me.

You could always try keeping it set to full screen, then setting EventGhost to "find window:XBMC.exe" then "set to always on top" or "bring to front". You could assign that to anything, like when your machine comes out of standby (Resume), or to a spare button on your remote.

I have XBMC set to full screen and on occasion had a system tray popup causing it to lose focus. The above fixed it, as did stopping those damn system tray popups!

EventGhost is extremely useful and I'd be surprised if it couldn't fix your problem Wink

I tried every one of your suggestions and none of them worked believe it or not. But again, XBMC minimized itself for no reason yet again, and in the log to the left side of EventGhost, it said something about show desktop. So I dragged the show desktop entry over to "maximize XBMC" and now the problem kinda went away! Smile Every time XBMC minimizes itself for no good reason it pops right back up.

It's not the perfect solution...every once in a while my desktop shows up then XBMC opens up again so it kind of ruins the HTPC experience but at least it's better than searching for a mouse every time it happens. I wonder why the hell the IR remote I bought for my computer thinks I'm pressing desktop every once in a while, anyway.

I also wish I knew what the hell people use to make programs stay on top when I see them at kiosks. Lord knows I always try to get access to Windows or the desktop and I always fail (except for the one time I pressed Win+R and was able to get to explorer...not that I did anything malicious or anything!).
Reply
#11
I have XBMC loaded on a Zbox with a monitor hooked up to the VGA port (first video port) and XBMC going to the HDMI port (second video port) which goes to my TV. I'll be watching something and another program tries to take focus (usually the program that I record TV programs with) and poof XBMC is hiding somewhere. Putting a Windows Short Cut (CTRL-Alt-X) has helped but switching back usually takes a minute and sometimes I have to hit the short cut keys on my wireless keyboard several times.

I haven't tried event ghost yet but I plan on it (after reading this thread).

I find it REALLY baffling that XBMC was programmed to behave this way.

Are they ever going to fix this bug?

Where do I go to suggest that they change this behavior?
Reply
#12
By default XBMC uses a DirectX mode that is fast, but that won't share the screen with any other app. That's why XBMC minimises when another app gets the focus. If you want to change this go to System settings, System, Video output and enable "Use a fullscreen window rather than true fullscreen". However this does reduce performance and you may notice some tearing. Try it and see.

There is no way in Windows to stop another app getting the focus. If there was viruses would no doubt exploit it.

JR
Reply
#13
Just write an autoit script.


While 1 ; create an infinite loop
$state = wingetstate ("xbmc") ; this is the window to monitor

If bitand($state,16) then ; if it is minimized then.....
Winsetstate("xbmc","",@sw_restore) ; restore it back
Endif
Sleep(10)
Wend
Reply

Logout Mark Read Team Forum Stats Members Help
Forcing XBMC to "stay on top" no matter what?0