I've run into an issue and cannot figure out what is causing it. I use the Task plug-in to enable folders for exclusive control as various applications start/stop. Whenever I run XBMC in full-screen mode, the task events being generated (e.g. Activated, Deactivated, etc.) show up for "explorer" instead of "XBMC". For instance, starting XBMC in full-screen mode generates a "Task.Activated.explorer" event. This is not the case when running XBMC in windowed mode, the proper events get triggered.
I am running the 0.3.6.1486 build in Vista x86.
Thanks!
Notice: This forum has been recovered from an old backup, so some content, links, and dates may be outdated. The forum is currently read-only while we restore sign-in and registration functionality. Details
If you find this forum valuable and would like to help keep it online, donations to help cover hosting and domain costs are greatly appreciated, but never expected. You can support the forum through Buy Me a Coffee or Ko-fi. Thank you for helping preserve the EventGhost community.
If you find this forum valuable and would like to help keep it online, donations to help cover hosting and domain costs are greatly appreciated, but never expected. You can support the forum through Buy Me a Coffee or Ko-fi. Thank you for helping preserve the EventGhost community.
XBMC task events issue
Re: XBMC task events issue
I'm not experiencing "exactly" the same issue, but you may be observing it differently.
I see XBMC being Activated, Deactivated and Destroyed in short order upon launching it. When I quit XBMC, I see Desktop and/or Explorer (and/or EventGhost if it was last focused) being triggered.
I have a top level folder called "programs" and inside of that there's "XBMC" and "Windows". My idea was to set exclusive status to "XBMC" when it's running, and "Windows" when the XBMC task is destroyed or deactivated. That didn't work exactly as expected, due to the tasks firing early for XBMC when in full screen.
My solution was to add "Enable Exclusive: Windows" to the "Quit XBMC" macro in the XBMC folder. When I hit the button I use to "Quit XBMC" on my remote, it quits XBMC and grants exclusive to the "windows" folder again.
I also have two "top level" macros - "Exclusive XBMC" and "Exclusive Windows":
Exclusive XBMC: Task.Created XBMC, Task.Activated.XBMC, Enable Exclusive: XBMC
Exclusive Windows: Task.Activated.Desktop, Task.Activated.explorer, Enable Exclusive: Windows
(It would seem that those macros will fire on either of their Task events)
This isn't ideal, as it requires XBMC to be quit properly via a button (or Desktop or Explorer Tasks activated) - but it does the trick for me.
I see XBMC being Activated, Deactivated and Destroyed in short order upon launching it. When I quit XBMC, I see Desktop and/or Explorer (and/or EventGhost if it was last focused) being triggered.
I have a top level folder called "programs" and inside of that there's "XBMC" and "Windows". My idea was to set exclusive status to "XBMC" when it's running, and "Windows" when the XBMC task is destroyed or deactivated. That didn't work exactly as expected, due to the tasks firing early for XBMC when in full screen.
My solution was to add "Enable Exclusive: Windows" to the "Quit XBMC" macro in the XBMC folder. When I hit the button I use to "Quit XBMC" on my remote, it quits XBMC and grants exclusive to the "windows" folder again.
I also have two "top level" macros - "Exclusive XBMC" and "Exclusive Windows":
Exclusive XBMC: Task.Created XBMC, Task.Activated.XBMC, Enable Exclusive: XBMC
Exclusive Windows: Task.Activated.Desktop, Task.Activated.explorer, Enable Exclusive: Windows
(It would seem that those macros will fire on either of their Task events)
This isn't ideal, as it requires XBMC to be quit properly via a button (or Desktop or Explorer Tasks activated) - but it does the trick for me.
-
m3flyin2lo
- Plugin Developer
- Posts: 22
- Joined: Sun Nov 23, 2008 3:22 am
Re: XBMC task events issue
Thanks for the suggestion.
I think for me the issue is a bit more complex because I fire various external players from XBMC (e.g. TMT and VLC). When these get activated, their corresponding folders get exclusive access. I do this by using their associated Activated/Deactivated events. When they close however, and the control comes back to XBMC, I was expecting a Task.Activated.XBMC, that would give exclusive control back to XBMC; that's not happening, since I get a Task.Activated.explorer instead, which activates my Desktop folder instead. Yes, I could hack it so that TMT and VLC being deactivated would automatically activate XBMC, but what if I am not running XBMC. It gets hairy. I was hoping that would be a quick fix to this so that it works as expected. My guess is that it has to do with how full-screen is implemented in XBMC...
I think for me the issue is a bit more complex because I fire various external players from XBMC (e.g. TMT and VLC). When these get activated, their corresponding folders get exclusive access. I do this by using their associated Activated/Deactivated events. When they close however, and the control comes back to XBMC, I was expecting a Task.Activated.XBMC, that would give exclusive control back to XBMC; that's not happening, since I get a Task.Activated.explorer instead, which activates my Desktop folder instead. Yes, I could hack it so that TMT and VLC being deactivated would automatically activate XBMC, but what if I am not running XBMC. It gets hairy. I was hoping that would be a quick fix to this so that it works as expected. My guess is that it has to do with how full-screen is implemented in XBMC...
Re: XBMC task events issue
My guess is because of SDL and how it is used for fullscreen. One thing you can do is when your external app closes have EG look for the XBMC "window" and restore it, then switch controls. I know I use EG with XBMC as fullscreen with other apps, and whenever I switch back to XBMC it has proper control. I never use Task.Deactivated to trigger anything for the main reason you posted. There are many other apps that also deactivate or close right after they are 'activated'.
I just tested my XBMC in fullscreen and after task.Activated.xbmc I did not encounter a close or deactivate. I can switch apps back and forth with alt+tab and see XBMC get activated and deactivated in the log. Each time I do the switch I can see the controls switch properly.
Maybe you need a newer XBMC build.
I just tested my XBMC in fullscreen and after task.Activated.xbmc I did not encounter a close or deactivate. I can switch apps back and forth with alt+tab and see XBMC get activated and deactivated in the log. Each time I do the switch I can see the controls switch properly.
Maybe you need a newer XBMC build.
Re: XBMC task events issue
I think it's not a XBMC issue. I have the same problem with several full screen application. Vista Media Center has the same problem. When I start Vista Media Center I see the task created, activated and right after deactivated and closed.kricker wrote:(...) There are many other apps that also deactivate or close right after they are 'activated'. (...) Maybe you need a newer XBMC build.
I also notices that this plugin works for visual task but not for processes. I think a solution may be to create a new plugin to watch processes.