xTaskbar, selection and zorder... Strange Thread last updated on 2007-09-19 07:12:37

Posted by member 256241 on 2007-09-19 07:12:37

I have a relatively complex problem, which I will try my best to explain. If this fails I might make a video of the issue at hand. Thanks for your patience.


I have a collection of labels, xtray, xtaskbar etc that pops up when desired. I have had many issues with zorder in general, but it is mostly cleared up with using ilmcuts' zorder module. I have isolated my issue to a single circumstance, although it is a massive functional impairment.

If a task is selected from the xTaskbar, the whole collection of labels, xtray etc. will then be below that task, even though the order is being forced with the zorder module. I can call this menu as many times as I like BEHIND the selected task, and it will never be on top. It is being created, it is just behind it. If I then call the menu to appear outside of the border of the task that I have selected, it then is able to gain it's ontop statu, ie, I have to call this menu outside the tasks window then it works. Another way to get it to work is to call an xPopup, which somehow fixes the zordering, as once the xpopup is closed the menu will then be drawn on top of the task which was selected from xTaskbar.

To clarify, this ONLY happens when the task is selected from xTaskbar, if it selected simply by clicking within that task, or if it is activated through ALT-TAB it works perfectly.

So, SOMETHING must be happening when the task is selected from the xTaskbar to make this happen.


I don't think that this is really anything to do with it, but !clearhooker is called OnSelect. The function is as follows:


*script bang !clearhooker
*Script exec !bringtofront ; I've tried removing this, doesn't make a difference
*Script exec !LabelHide volumedock
*Script exec !Timerstop escape
*script exec !xStatsGraphHide CPUGraph
*script exec !LabelHide test5
*script exec !LabelHide test6
*script exec !LabelHide test7
*script exec !LabelHide ampsong
*script exec !LabelHide date
*Script exec !LabelHide netload
*script exec !LabelHide amptime
*script exec !LabelHide ampplay
*script exec !LabelHide ampnext
*script exec !LabelHide ampprev
*script exec !LabelHide ampshuffle
*script exec !LabelHide ampstop
; *Script exec !LabelHide separator
*script exec !xTaskbarHide xtask1
*script exec !xTaskbarHide xtask2
*script exec !xTaskbarHide xtask3
*script exec !xTrayHide
; *script exec !umSliderHide track
*script exec !varset hookershown 0
*script ~bang



I don't think this is important either, but !bringtofront is:

*script bang !bringtofront
*script exec !zorderTop xLabel date
*script exec !zorderTop xLabel netload
*script exec !zorderTop xLabel test5
*script exec !zorderTop xLabel amptime
*script exec !zorderTop xLabel ampsong
*script exec !zorderTop xLabel ampprev
*script exec !zorderTop xLabel ampnext
*script exec !zorderTop xLabel ampplay
*script exec !zorderTop xLabel ampshuffle
*script exec !zorderTop xLabel ampstop
*script exec !zorderTop xLabel volumedock
*script exec !zorderTop xTaskbar xtask3
*script exec !zorderTop xTaskbar xtask1
*script exec !zorderTop xTaskbar xtask2
*script exec !zorderTop xTaskbar xtask4
*script exec !zorderTop xTaskbar xtask4
*script exec !zorderTop xTray xTray
*script ~bang


This is extremely frustrating for me, as it sort of negates the usefulness of my entire theme. Any help will be wildly appreciated.

Thanks for your time.