[haiku-development] Window ordering Haiku vs. R5

  • From: julun <host.haiku@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sun, 13 Jul 2008 23:28:29 +0200

Hi,

I was looking into task #1987 and it turns out that one part is not so easy to fix. The xkill window is search thru the app servers window list to get the window under the x. While this works fine on R5 on Haiku it will always return Tracker. This seems to be an ordering problem on how the window tokens are returned from the app_server.

TaskManager calls get_token_list(...) which will end up in Desktop::WriteWindowList(...). It returns a proper list of tokens, but they have no order. The window_info struct contains a member called layer and that seems to be an ordering of the windowtype on R5, whereas on Haiku it will always return 0.

This will also effect the the autoraise app which will check for layer < 3 for the Desktop window, basically it should not work at all.

Is there any info out there on how that ordering is performed and are there plans to support this? Any information would be helpful. :)

Regards,
Karsten

Attached some debug output of R5 running Tracker, Terminal and Taskmanager.




windowInfo->name: Select Team
windowInfo->team: 969
windowInfo->layer: 3
windowInfo->name: TaskManager
windowInfo->team: 969
windowInfo->layer: 3
windowInfo->name: Terminal 1
windowInfo->team: 966
windowInfo->layer: 3
windowInfo->name: Deskbar
windowInfo->team: 40
windowInfo->layer: 3
windowInfo->name: Team Monitor
windowInfo->team: 29
windowInfo->layer: 3
windowInfo->name: Desktop
windowInfo->team: 965
windowInfo->layer: 2
windowInfo->name: Twitcher
windowInfo->team: 40
windowInfo->layer: 0
windowInfo->name: Tracker Status
windowInfo->team: 965
windowInfo->layer: 0                                                            
                                                  

Other related posts: