See T54775 for design, T54965, T54707 for original designs.
The goal for this is to replace local view and the old layer buttons in the 3D viewport header. We need a way to quickly hide and show objects and collections while working, without changing more persistent visibility settings.
* Add panel with tree of view layerPlan:
* Add local view hiding flag for individual object bases, and bring back H key operators.
* Add local view hiding flag for collections, edited through a popup menu to quickly select a collection to show/hide
* Ensure shortcut keys can be used within this menu, for fast keyboard access to collections
* Allow show/hide controls* Decide if this hiding should be global or per-viewport.
* Renaming of collections* If it's global we can show corresponding buttons in the outliner and don't have to duplicate the UI so much. Further users will likely use show/hide objects in the outliner and if it's global we can offer these settings there. It also means we have a single set of selected objects matching between all viewport and other editors like properties, which is especially important if this system is used more than local view and the properties editor shows all selected objects.
* Other editing operations (reordering,* If it's per 3D viewport users can quickly isolate objects in one view while seeing the effect of the changes in the full scene. adding,Cycles viewport renders would not need to refresh when going into local view in one place. ..) can be added laterFurther this design would be more compatible with the old local view behavior of saving/restoring the view position. If we do this per 3D viewport, not a prioritythen we likely need a more powerful collection panel in the viewport properties.