Closed xSabrina closed 3 years ago
Next time please don't do everything on one branch, because now merging with my design changes will be difficult.
I agree, sorry for now though. I merged conflicts manually.
Help will be integrated into the bottom navigation bar and should, in my opinion, remain as a separate view. Therefore, please reverse the changes in this regard.
We talked about this in our meeting already - so I will leave the changes.
Name changes to classes that are being edited by others at the same time are likely to cause merge problems and should only be made after consultation. So undo the renaming and fix the checkstyle warning please.
True - there is no undoing necessary though, I fixed possible merge conflicts already.
I solved all merge conflicts and fixed some bugs.
Mainly fixing the bug from #119: Also limited the possible recording duration for voice notes to 1 Min. to avoid crashes from too large byte arrays for our database blobs. I chose the limit in time and not file size, because it is more resource saving to use a countDown instead of permanently checking the temporary-recording-file for its size. I chose 1 minute as limit since it is almost the biggest possible size and a plain value. If the record extends over 1 Min. the audio is saved as a separate note (a toast to notify the user additionally) and automatically starts the next recording. Also adjusted the help strings for the voice note editor to this.
As discussed in team meeting, this PR will be closed as further major changes are needed.
Description
Closes #106
A voice note editor has been created - therefore noteLists in NotesFragment and BookNotesFragment have been adjusted in code and layout. The editor is only opened on creating a new voice note - existing voice notes in noteLists have small buttons to play/pause, stop and a seekBar to move through the audio.
Also did some general clean ups and changes that affected the VoiceNotes-feature or have been affected by it.
Affects
@SarahKurek should take a look since she created the view for booknotes that has been changed majorly.
Notes for Reviewer
1. General changes:
Adjust and clean up build.gradle: add necessary implementations for using pulseAnimation and seekBar and set up mindSDK from 24 to 26 (suggested because something from a former merge into the dev is only available from 26 upwards and could cause crashes).
adjust and clean up AndroidManifest by removing legacy usages and adding the necessary one for recording audio.
BookNotesView has been renamed to BookNotesFragment to match the other class name structure.
renamed the bookNotesView-xml file to match the fragment and other xml-name-structure to "fragment_book_notes".
BookNotesRecyclerViewAdapter has been removed and its usages have been replaced by usages of the NotesRecyclerViewAdapter to remove much double code.
HelpFragment has been removed and has been replaced by alert dialogs with only an positive "OK"-Button to save resources and avoid possible bugs with using the system UI back-button e.g.
Reformatted all help text strings for better readability.
fixed a bug with help-strings displays all over the app (HTML-format has been ignored).
Reformatted all deleting text strings for better readability.
Some icon-drawables have been editted in size (e.g. the microphone for voiceNote-type), necessary ones were added and legacy ones have been removed.
a custom seekBarListener has been created for seekBar-usages.
renamed color-layout-xml library_item_selector to general "item_selector" since we use it for several items.
did some small code clean ups (checkstyle or reformatting) to some classes.
fixed a bug when editing text notes caused by missing bookId param on noteItems. The bookId is now added correctly on creating noteItems in the noteModel by using the noteDao.
removed overriding system back button from TextNoteEditor and VoiceNoteEditor because it was causing bugs (on using the bottom nav e.g.) and using the onPause instead (we have been talking about an approve/back-button in our last meeting - if we implement sth like this the onPause code has to be moved to that button onClick).
2. VoiceNoteEditorFragment:
3. NotesFragment and BookNotesFragment:
4. Database related (NoteModel, NoteDao, etc.):
5. Suggestions for your testing: