#8612: app_server needs to be multi-head aware -------------------------+------------------------------------------------- Reporter: kallisti5 | Owner: axeld Type: | Status: new enhancement | Milestone: Unscheduled Priority: low | Version: R1/Development Component: | Keywords: multiple display, multiple crtc, Servers/app_server | multihead, multi-head Resolution: | Blocking: Blocked By: | Platform: All Has a Patch: 0 | -------------------------+------------------------------------------------- Comment (by kallisti5): Replying to [comment:2 axeld]: > Another option would be to clone the accelerant for each head; this would allow to implement it with minimum changes to the interface. I'm not 100% sold on this idea... probing displays is difficult (especially on newer cards where we have to walk down DisplayPort paths) Hot plugging monitors sounds like *big* pain here. > Also, there is no need to actually break compatibility: just create a new API together with a new HWInterface implementation, and let the app_server support both. This is a really good idea... i'd rather not *completely* trash the old BeOS accelerant layout as it is working. (even though we aren't abi compatible with BeOS drivers) > The accelerant interface needs a redesign anyway, if you want to prepare it for drivers capable of supporting compositing. Ie. the app_server needs to maintain the memory for the graphics card in order to allocate blocks for textures as needed. The remaining acceleration functions need to be able to work on blocks of memory rather than one screen, etc. Even support for 32 bit hardware mouse cursors would be nice to have for a start :-) > > There is little reason to try to squeeze it all into the existing accelerant API which isn't really adequate anymore. All really good points. I forgot about compositing... it should be rolled into this as multi-head changes would be a great time to lay the basework for compositing. -- Ticket URL: <http://dev.haiku-os.org/ticket/8612#comment:3> Haiku <http://dev.haiku-os.org> Haiku - the operating system.