From ef2c542dd667919e1dbb9fcebb0d75df3e0ee15a Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Wed, 11 Aug 2021 11:09:53 +0200 Subject: [PATCH] Implemented recursive scanning to get scan status --- .../play/ui/fragment/SettingsFragment.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java index f41418ba..9b611bef 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java @@ -68,12 +68,13 @@ public class SettingsFragment extends PreferenceFragmentCompat { settingViewModel.launchScan(new ScanCallback() { @Override public void onError(Exception exception) { - Toast.makeText(requireContext(), exception.getMessage(), Toast.LENGTH_SHORT).show(); + findPreference("scan_library").setSummary(exception.getMessage()); } @Override public void onSuccess(boolean isScanning, long count) { - Toast.makeText(requireContext(), "Scanning: counting " + count + " elements", Toast.LENGTH_SHORT).show(); + if(isScanning) getScanStatus(); + else findPreference("scan_library").setSummary("Scanning: counting " + count + " tracks"); } }); return true; @@ -94,4 +95,19 @@ public class SettingsFragment extends PreferenceFragmentCompat { }); } } + + private void getScanStatus() { + settingViewModel.getScanStatus(new ScanCallback() { + @Override + public void onError(Exception exception) { + findPreference("scan_library").setSummary(exception.getMessage()); + } + + @Override + public void onSuccess(boolean isScanning, long count) { + findPreference("scan_library").setSummary("Scanning: counting " + count + " tracks"); + if(isScanning) getScanStatus(); + } + }); + } }