angular / angular/components

mat/cdk-split-view component

未关闭
#7,940 3 条评论 25 个 reaction 已指派 0 人 在 GitHub 查看
area: new feature needs: discussion P5
主要语言
TypeScript
星标
25k
派生
6.8k
平均合并
1 天 8 小时
30 天内合并 PR
91

描述

#### feature request: `mat-split-view`/`cdk-split-view` component
![screen-shot-2017-10-21-at-1 45](https://user-images.githubusercontent.com/12599934/31850330-05f465ec-b605-11e7-8c29-7e2b7b019e9e.jpg)

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_

贡献指南

打开贡献指南

调研方向

未指定文件、测试或入口点。首先审查拟议的 CDK 方向和链接的 angular-split 实现,然后寻求一个更窄且已达成共识的范围;只有在有一份获接受的定义,涵盖所请求的分割、调整大小、可访问性、方向和响应式行为时,才能算完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
angular, typescript
领域
accessibility, design, frontend
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
基本清楚
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。