On 1/17/20 7:48 AM, Norman Feske wrote:
Hi Cedrik,
Genode's philosophy seems to be "don't deny complexity, but organize it". So it would be an interesting challenge: would implementing workspaces entail big changes in nitpicker? in wm? How to reconcile the need for a low number of source- code lines, with the need for additional, complex features -- it might justify offering several w.m.'s (which I think is already the case), of varying degrees of complexity, so that users have a choice between high reliability (but somewhat restricted) wm's and more feature-rich wm's implementing workspaces, at the expense of possibly more bugs.
the design of the existing architecture (nitpicker + wm + layouter + decorator) already anticipates these concerns but the current version of Sculpt still hides this potential somewhat. I remained rather low-key about it because we had to nail down other (non-GUI) aspects of Sculpt first.
The current architecture already has the right hooks for implementing a rich feature set, including workspaces or a panel. It's just a matter of using (and possibly refining) those hooks. During 2020, I plan to put the GUI architecture more and more into the spotlight, possibly via a couple of Genodians articles.
The dual-head support is a different topic though. This one calls for non-trivial interface and architectural changes.
Can you give a quick overview of what changes might be required for this?
Not having looked into the APIs, I would assume that having different workspaces on different displays would fit nicely with the hooks already present in Genode (as opposed to workspaces spanning multiple displays). To my mind, this would handle the vast majority of use cases for most users. Am I off-base here?
Thanks!
John J. Karcher devuser@alternateapproach.com