Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@tuuhin
Copy link
Owner

@tuuhin tuuhin commented Oct 9, 2024

Ui fixes and correction

  • Corrected the storage statistics indicator, the indicator was not provided with Modifier.fillMaxWidth() thus the ratio was incorrect, again float conversion was incorrect, and indicator was showing free space as text and graph was opposite, corrected that to show used space.
  • RecordingsCard fixed the layout , and added an extra supporting text to show if its from other app.
  • Corrected animation in RecorderTopBar no animation spec was provided.
  • Last Recordings shortcut is set when the recording is correctly loaded in the PlayerScreen.
  • Wrapped all the navigation icon in top bar with if previousBackStackEntry?.destination?.route != null to ensure not to show the nav-icon if no previous back stack is not present.

Data layer correction

  • In RecordingsSecondaryDataProvider while querying for secondary data added a filterNotNull but the flow needs to emit something to run PlayerFileProviderFromIdUseCase due to which the player screen was stuck in Loading State.
  • In VoiceRecordingProvider on getVoiceRecordings added an param which determines whether to query out all recordings or not. This is put in a ContentObserver flow with flatMap with settings.

Conclusion

The bugs aren't fixed completely , but momentarily everything seems working and the VoiceRecordingProviderImpl is lot readable now. As this class is responsible for the whole job. If error occurs later it will be fixed then.

tuuhin added 3 commits October 7, 2024 19:20
Firstly navigation icon in all the routes are wrapped with if previous back-stack entry exists otherwise it's useless.
In AudioPlayerViewModel shortcuts are added only if the AudioFileModel is loaded successfully, otherwise it's not .
Added the animation spec for the bookmarks and list animated content.
A bit of refactoring for the RecordingCard, rows-> column and vise versa.
Fixed the StorageStatistics card. Primarily the data was wrong and the graph was not showing it properly , fixed that.
Player screen was not able to load the recordings due to RecordingSecondaryDataProviderImpl.getRecordingFromIdAsFlow returning an empty flow, but it should emit at-least a null for PlayerFileProviderFromIdUseCase to work. Fixed the issue.
Not adding any scope to callback flow as I can launch a coroutine via `launch` inside the producer scope.
As per the problem of reading external recording not a lot of it is fixed but still working on it.
For the meantime simplified the logic to hold the recording in other flows.
They were not used anywhere in the codebase so removed them.
In VoiceRecordingsProviderImpl.voiceRecordingsOnlyThisApp yes we need to keep the flow alive for new changes in the recordings otherwise changes will be not be viewed.
@tuuhin tuuhin merged commit 9d377c3 into development Oct 9, 2024
@tuuhin tuuhin deleted the bug-fixes branch October 9, 2024 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants