Platform UI Design Discussion
A discussion about generalizing and simplifying core Workbench concepts.
- fixing the broken minimize
- fast views, multiple fast view bars
- Debugging client and server at the same time (each with its own Debug view, Variables view, etc)
- Maximizing the editor area, not just one editor
- Easily minimize everything except the editor area and the outline view
Separation of Concerns
Overall it seems that there are two concerns that we would like to separate:
- How are the pieces that make up the workbench (window, views, editors, trim, ...) composed, and how are they connected?
For this, we focus on questions like:
- Which services (selection, key binding, etc.) does a piece need, and where does it get it from?
- What does a piece (mostly: view, editor) contribute in terms of menus, toolbar items, context menu, trim items?
- How are the pieces presented, using a common layout, based on policy decisions for their placement?
Here we answer questions like:
- Where in the UI do the pieces show up? Where do contributed items show up?
- Which pieces can be rearranged and moved by the user, and in which way?
Eventually, we need a story for getting back the old behaviour. Let's not worry about that too much for now.
Why does trim not show up in the class hierarchy for views and editors, e.g. as in:
Piece Trim Part View Editor