Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2021-04-03 15:37:11 +0300
committerStefan Niedermann <info@niedermann.it>2021-04-03 15:37:11 +0300
commit04f18caeebe384197a006f3e10e8d49827ae309d (patch)
tree31b12fd8a74bce691f1aed3f33aa731edd9fb7fa /app/src/main/java/it/niedermann
parentf31a1756e4bfb3cb2b6bbcf5f6cf5fd1f2133699 (diff)
Fix wrong thread on swipe 2 refresh
Diffstat (limited to 'app/src/main/java/it/niedermann')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/edit/NotePreviewFragment.java28
1 files changed, 16 insertions, 12 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/edit/NotePreviewFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/edit/NotePreviewFragment.java
index ed918bd1..6d3549e1 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/edit/NotePreviewFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/edit/NotePreviewFragment.java
@@ -154,18 +154,22 @@ public class NotePreviewFragment extends SearchableBaseNoteFragment implements O
public void onRefresh() {
if (noteLoaded && db.getNoteServerSyncHelper().isSyncPossible() && SSOUtil.isConfigured(getContext())) {
binding.swiperefreshlayout.setRefreshing(true);
- try {
- final Account account = db.getAccountDao().getAccountByName(SingleAccountHelper.getCurrentSingleSignOnAccount(requireContext()).name);
- db.getNoteServerSyncHelper().addCallbackPull(account, () -> {
- note = db.getNoteDao().getNoteById(note.getId());
- changedText = note.getContent();
- binding.singleNoteContent.setMarkdownString(note.getContent());
- binding.swiperefreshlayout.setRefreshing(false);
- });
- db.getNoteServerSyncHelper().scheduleSync(account, false);
- } catch (NextcloudFilesAppAccountNotFoundException | NoCurrentAccountSelectedException e) {
- e.printStackTrace();
- }
+ new Thread(() -> {
+ try {
+ final Account account = db.getAccountDao().getAccountByName(SingleAccountHelper.getCurrentSingleSignOnAccount(requireContext()).name);
+ db.getNoteServerSyncHelper().addCallbackPull(account, () -> new Thread(() -> {
+ note = db.getNoteDao().getNoteById(note.getId());
+ changedText = note.getContent();
+ requireActivity().runOnUiThread(() -> {
+ binding.singleNoteContent.setMarkdownString(note.getContent());
+ binding.swiperefreshlayout.setRefreshing(false);
+ });
+ }).start());
+ db.getNoteServerSyncHelper().scheduleSync(account, false);
+ } catch (NextcloudFilesAppAccountNotFoundException | NoCurrentAccountSelectedException e) {
+ e.printStackTrace();
+ }
+ }).start();
} else {
binding.swiperefreshlayout.setRefreshing(false);
Toast.makeText(requireContext(), getString(R.string.error_sync, getString(R.string.error_no_network)), Toast.LENGTH_LONG).show();