#7924: Enable optional Z-Snake functionality. --------------------------+------------------------------------------------ Reporter: | Owner: stippi KarmaMechanic | Status: closed Type: | Milestone: Unscheduled enhancement | Version: R1/alpha3 Priority: low | Keywords: z-snake menu snake tracker deskbar Component: User | Blocking: Interface | Platform: All Resolution: invalid | Blocked By: | Has a Patch: 0 | --------------------------+------------------------------------------------ Comment (by anevilyak): Replying to [comment:4 KarmaMechanic]: > Not a key feature desired by everyone, I did find it useful when adding drivers to the old dano system I used to have on real hardware. Figured it might be a semi-easy gui task for a newer developer, and set to off by default. I guess this gives me a good reason to learn something more than generic c++ lol. I would advise against that, one of the many reasons it hasn't been done is because it's actually quite hard to do correctly. You'll notice even Dano didn't manage, seeing as Z-snake has visual artifacts in a lot of situations. Path computation for it is non-trivial since you have to figure out a path that looks good regardless of where the next menu window is ultimately positioned, bearing in mind that could be above, below and to either side of your current window. Furthermore, as implemented in Dano it's currently impossible in Haiku since it requires non-rectangular window support in the app_server, which Haiku doesn't currently have, and which would require pretty significant effort to implement (especially in a way that actually performs well). To add to the complexity, the menu code is quite complex/messy as is, partly due to the BeOS API design for them being horrible, which makes it even harder to implement than it otherwise would be. None of the above is something I'd advise attempting without very deep knowledge of the involved components. -- Ticket URL: <http://dev.haiku-os.org/ticket/7924#comment:6> Haiku <http://dev.haiku-os.org> Haiku - the operating system.