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

[Farewell, Interaction]: Step 1 of removing the Interaction class #4016

Merged
merged 13 commits into from
Mar 20, 2021

Conversation

d2dyno1
Copy link
Member

@d2dyno1 d2dyno1 commented Mar 12, 2021

This is the very first part of removing the Interaction class. Since the overall scope is very large, I've split it into multiple parts. For #4180

Many UI event handlers have been moved to GenericFileBrowser and GridViewBrowser. This is not ideal because a lot of the code is duplicated between these classes. I propose the best MVVM solution I could think of. The way it works is, we have a BaseLayoutCommandsViewModel class in BaseLayout which contains all UI ICommands and those commands call functions in IBaseLayoutCommandImplementationModel interface that contains implementation for these commands.
Since this is a big change that'll last for long, we must choose right and pick a sufficient solution.
Side note: The work hasn't been done using this pattern yet but classes and example usage have been added.

Update
This pattern has been approved and implemented.

Let me know what do you think of this solution! @yaichenbaum @duke7553 @gave92

@d2dyno1 d2dyno1 marked this pull request as ready for review March 13, 2021 18:39
@d2dyno1
Copy link
Member Author

d2dyno1 commented Mar 14, 2021

Ready for review! @yaichenbaum

@d2dyno1 d2dyno1 changed the title [Farewell, Interaction]: Step 1 of removing Interaction class [Farewell, Interaction]: Step 1 of removing the Interaction class Mar 14, 2021
@yaira2 yaira2 requested review from gave92 and tsvietOK March 17, 2021 16:45
Files/ViewModels/Properties/FileProperties.cs Outdated Show resolved Hide resolved
Files/ViewModels/Properties/FileProperties.cs Outdated Show resolved Hide resolved
Files/Views/PaneHolderPage.xaml.cs Show resolved Hide resolved
@d2dyno1 d2dyno1 requested a review from yaira2 March 18, 2021 21:11
@yaira2
Copy link
Member

yaira2 commented Mar 19, 2021

@tsvietOK Do you have any thoughts on this change?

@lukeblevins lukeblevins merged commit ca7e4da into files-community:main Mar 20, 2021
@d2dyno1 d2dyno1 deleted the farewell_interaction branch March 20, 2021 20:26
@yaira2 yaira2 added the ready to merge Pull requests that are approved and ready to merge label Mar 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge Pull requests that are approved and ready to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants