This issue respects the following points:
Describe the bug
Clicking on the favorite icon of a note in grid mode neither adds nor removes a note from the favorite list. I checked this via the file view on the Nextcloud server / app.
I debugged the issue in the code and nailed it down to the following line:
|
toggleLiveData.observe(this, (next) -> toggleLiveData.removeObservers(this)); |
If this line is called, the method toggleFavoriteAndSync in class NotesRepository is called again which leads at the end to a neutral operation.
|
public void toggleFavoriteAndSync(Account account, long noteId) { |
I tried to understand the reason why adding an observer leads to such a behavior but I did not succeed. Maybe there is somebody who can explain it to me. However, I also do not understand why this line is necessary at all because there is no place in the code where an observer is added to the live data. Hence, it is not necessary to remove one. If I remove the line, the app behaves as expected.
Expected behavior
No response
Notes Android version
4.3.1
Notes server version
4.11.0
Nextcloud Android version
3.30.6
Nextcloud version
30.0.4
Device
Google Pixel 4a
Android Version
13
App Store
Stacktrace
No response
This issue respects the following points:
Describe the bug
Clicking on the favorite icon of a note in grid mode neither adds nor removes a note from the favorite list. I checked this via the file view on the Nextcloud server / app.
I debugged the issue in the code and nailed it down to the following line:
notes-android/app/src/main/java/it/niedermann/owncloud/notes/main/MainActivity.java
Line 782 in 8e225c7
If this line is called, the method
toggleFavoriteAndSyncin classNotesRepositoryis called again which leads at the end to a neutral operation.notes-android/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesRepository.java
Line 524 in 8e225c7
I tried to understand the reason why adding an observer leads to such a behavior but I did not succeed. Maybe there is somebody who can explain it to me. However, I also do not understand why this line is necessary at all because there is no place in the code where an observer is added to the live data. Hence, it is not necessary to remove one. If I remove the line, the app behaves as expected.
Expected behavior
No response
Notes Android version
4.3.1
Notes server version
4.11.0
Nextcloud Android version
3.30.6
Nextcloud version
30.0.4
Device
Google Pixel 4a
Android Version
13
App Store
Stacktrace
No response