mat/cdk-split-view component
- Lenguaje dominante
- TypeScript
- Estrellas
- 25k
- Forks
- 6.8k
- Merge medio
- 1 d 8 h
- PR fusionados (30 d)
- 91
Descripción
#### feature request: `mat-split-view`/`cdk-split-view` component

See [bertrandg/angular-split](https://github.com/bertrandg/angular-split/) for inspiration.
#### What is the expected behavior?
In more complex applications, split views (allowing the user to resize the views) are a great way of handling users with different sized displays each viewing content of differing proportions. By giving the split views angular bindings, the component becomes incredibly flexible
- Ability to dynamically split content vertically, or horizontally, or with multiple, nested levels.
- Ability for user to drag divider to adjust container sizing
- Ability to fix sizing of some containers (preventing user from adjusting the size)
- Ability to animate container resizing
- Built in method for handling / adapting to mobile views vs tablet views vs destop views
- Ability to programmatically adjust container size
#### What is the current behavior?
There is at least one third party library offering some of this functionality ([bertrandg/angular-split](https://github.com/bertrandg/angular-split/)).
#### What is the use-case or motivation for changing an existing behavior?
I think the material team could improve upon this foundation by ensuring `mat-split-view` "plays nice" with other material components, by ensuring it is accessible on multiple devices / screen readers, by ensuring `split-views` can respond to text direction changes, and by providing an elegant way of repositioning content for desktop screens vs mobile screens.
Even for applications that don't want users to be able to dynamically resize views, a well designed `mat-split-view` component could be an easy way for devs to layout content and interact with containers (including "opening" / "closing" views when a button is clicked).
#### Is there anything else we should know?
This is probably a "cdk" component rather then "material" component. Not sure if this proposal should be placed somewhere else.
_Also: I enlarged the mouse-cursor icon for legibility_
Guía de contribución
Línea de trabajo
No se nombra ningún archivo, prueba ni punto de entrada. Empieza revisando la dirección propuesta para CDK y la implementación vinculada de angular-split, y después busca acordar un alcance más acotado; se consideraría terminado cuando exista una definición aceptada que cubra la división, el redimensionamiento, la accesibilidad, la dirección y el comportamiento responsive solicitados.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- angular, typescript
- Área
- accessibility, design, frontend
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 25/100