diff options
author | tobiasKaminsky <tobias@kaminsky.me> | 2022-07-07 13:05:15 +0300 |
---|---|---|
committer | tobiasKaminsky <tobias@kaminsky.me> | 2022-07-07 15:20:41 +0300 |
commit | c3fd318437d23aca9ee3bdf7cf40f5dada81506c (patch) | |
tree | be242f81a5ac9b3bf5be6f499d9b358d939c3c8a | |
parent | 427b503b8ad20c80fd3a3a28889d6b6bf5066196 (diff) |
add broadcastReceiver when switching from media -> on deviceendlessRefresh
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
-rw-r--r-- | app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java | 22 | ||||
-rw-r--r-- | app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java | 17 |
2 files changed, 27 insertions, 12 deletions
diff --git a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java index 597315659a..fb096c5eea 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -290,6 +290,8 @@ public class FileDisplayActivity extends FileActivity mPlayerConnection = new PlayerServiceConnection(this); checkStoragePath(); + + initSyncBroadcastReceiver(); } private void checkStoragePath() { @@ -1095,16 +1097,9 @@ public class FileDisplayActivity extends FileActivity // Listen for sync messages if (!(leftFragment instanceof OCFileListFragment) || !((OCFileListFragment) leftFragment).isSearchFragment()) { - IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START); - syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_END); - syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_FOLDER_CONTENTS_SYNCED); - syncIntentFilter.addAction(RefreshFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED); - syncIntentFilter.addAction(RefreshFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED); - mSyncBroadcastReceiver = new SyncBroadcastReceiver(); - localBroadcastManager.registerReceiver(mSyncBroadcastReceiver, syncIntentFilter); + initSyncBroadcastReceiver(); } - if (!(leftFragment instanceof OCFileListFragment)) { if (leftFragment instanceof FileFragment) { super.updateActionBarTitleAndHomeButton(((FileFragment) leftFragment).getFile()); @@ -1172,6 +1167,17 @@ public class FileDisplayActivity extends FileActivity Log_OC.v(TAG, "onResume() end"); } + public void initSyncBroadcastReceiver() { + if (mSyncBroadcastReceiver == null) { + IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START); + syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_END); + syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_FOLDER_CONTENTS_SYNCED); + syncIntentFilter.addAction(RefreshFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED); + syncIntentFilter.addAction(RefreshFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED); + mSyncBroadcastReceiver = new SyncBroadcastReceiver(); + localBroadcastManager.registerReceiver(mSyncBroadcastReceiver, syncIntentFilter); + } + } @Override protected void onPause() { diff --git a/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java b/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java index 9e3b1aa85a..1adcb9f040 100644 --- a/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -1549,13 +1549,22 @@ public class OCFileListFragment extends ExtendedListFragment implements searchEvent = null; menuItemAddRemoveValue = MenuItemAddRemove.ADD_GRID_AND_SORT_WITH_SEARCH; - if (getActivity() != null) { - getActivity().invalidateOptionsMenu(); + Activity activity = getActivity(); + if (activity != null) { + activity.invalidateOptionsMenu(); + + if (activity instanceof FileDisplayActivity) { + ((FileDisplayActivity) activity).initSyncBroadcastReceiver(); + } + setTitle(themeUtils.getDefaultDisplayNameForRootFolder(getContext())); + activity.getIntent().removeExtra(OCFileListFragment.SEARCH_EVENT); } - getActivity().getIntent().removeExtra(OCFileListFragment.SEARCH_EVENT); - getArguments().putParcelable(OCFileListFragment.SEARCH_EVENT, null); + Bundle arguments = getArguments(); + if (arguments != null) { + arguments.putParcelable(OCFileListFragment.SEARCH_EVENT, null); + } setFabVisible(true); } |