kennethnym / StarlightLauncher

A search-focused Android launcher
GNU General Public License v3.0
100 stars 7 forks source link

[IN PROGRESS] Settings redesign + Refactor #44

Closed kennethnym closed 1 year ago

kennethnym commented 2 years ago

Since Android preferences screen doesn't support Datastore, I might as well redesign the settings to fit more into the launcher's aesthetics.

kennethnym commented 2 years ago

Progress update:

The new settings screen is completely rewritten from the ground up using Jetpack Compose and the new Preference DataStore framework. I have attached a screenshot of the new settings screen ;)

Screenshot 2022-09-19 at 23 32 25

I am still slowly migrating parts of the launcher to use the DataStore framework instead of SharedPreferences. Since DataStore is asynchronous in nature, significant changes have to be made. It will take a little while, but trust me it will be worth it!

kennethnym commented 2 years ago

Update: this issue has now turned into major refactoring of various components for the launcher. The refactor will make use of ViewModels to de-couple view states and logics from views/fragments/activities. I will also address some major misuse of CoroutineScope in the code. Hopefully this will result in a more stable experience.