Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Replace UIController #1341

@grokys

Description

@grokys

UIController has various problems:

  • It's hard to add new views, and how to do this isn't well documented
  • It's not very flexible (a fixed set of triggers to move from state to state)
    • Even the Login view hacks around this internally
  • It mixes view and view model concerns so is hard to test
  • Relies on passing a global IConnection to get the connection from the UIController to view models
  • Adding views involves adding entries to a long enum (UIViewType)
  • GitHubPaneViewModel has to be implemented in Views
  • Navigating to the PR list causes a reload of all PRs #1105 When used in the GitHub pane there's no differentiation between load and refresh

MVVM is the accepted solution for such things, we should rip out UIController and replace it with a more standard architecture.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions