Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal: Update TabView to use ItemsRepeater #1837

Open
stmoy opened this issue Jan 13, 2020 · 0 comments
Open

Proposal: Update TabView to use ItemsRepeater #1837

stmoy opened this issue Jan 13, 2020 · 0 comments
Labels
area-TabView feature proposal New feature proposal team-Controls Issue for the Controls team

Comments

@stmoy
Copy link
Contributor

stmoy commented Jan 13, 2020

Proposal: Update TabView to use ItemsRepeater

Summary

Currently, TabView uses a ListView "under the covers" for the tab strip area. This limits our ability to implement features like drag-and-drop rails and improved animations. This proposal suggests updating TabView to use ItemsRepeater "under the covers" instead, which would enable us to implement drag and drop, animations.

Rationale

The TabView vNext issue #1332 proposes improvements to features such as drag and drop and animations. The current TabView implementation uses ListView "under the covers" which provides these services as part of ListViewBase. This, in turn, makes it very tricky to implement improvements to TabView because they would potentially also affect ListViewBase (which would affect ListView, GridView, NavigationView, TreeView...)

TabView was originally built in a way that obfuscates the fact that it uses a ListView as an implementation detail because we knew we might want to update to ItemsRepeater instead.

  • Unblocks us from implementing improved drag and drop and improved animations
  • Provides more validation on ItemsRepeater

Scope

Capability Priority
This proposal will allow developers to accomplish W Must
This proposal will allow end users to accomplish X Should
This proposal will allow developers to accomplish Y Could
This proposal will allow end users to accomplish Z Won't

Important Notes

Open Questions

@stmoy stmoy added feature proposal New feature proposal area-TabView labels Jan 13, 2020
@msft-github-bot msft-github-bot added the needs-triage Issue needs to be triaged by the area owners label Jan 13, 2020
@ranjeshj ranjeshj added team-Controls Issue for the Controls team and removed needs-triage Issue needs to be triaged by the area owners labels Jan 14, 2020
@ranjeshj ranjeshj added this to the WinUI 2.4 milestone Jan 14, 2020
@ranjeshj ranjeshj removed this from the WinUI 2.4 milestone Mar 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-TabView feature proposal New feature proposal team-Controls Issue for the Controls team
Projects
None yet
Development

No branches or pull requests

3 participants