Skip to content

Commit 25843ae

Browse files
committed
Watch changes on all URIs, fix some reports from #52
1 parent 88bc1ae commit 25843ae

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

app/src/main/java/com/phpbg/easysync/ui/MainViewModel.kt

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import android.database.ContentObserver
3030
import android.net.Uri
3131
import android.os.Handler
3232
import android.os.Looper
33-
import android.provider.MediaStore
3433
import android.util.Log
3534
import androidx.compose.runtime.mutableIntStateOf
3635
import androidx.compose.runtime.mutableStateOf
@@ -46,12 +45,12 @@ import com.phpbg.easysync.dav.MisconfigurationException
4645
import com.phpbg.easysync.dav.WebDavService
4746
import com.phpbg.easysync.db.AppDatabaseFactory
4847
import com.phpbg.easysync.mediastore.MediaStoreService
48+
import com.phpbg.easysync.mediastore.URIS
4949
import com.phpbg.easysync.settings.SettingsDataStore
5050
import com.phpbg.easysync.worker.FileDetectWorker
5151
import com.phpbg.easysync.worker.FullSyncWorker
5252
import kotlinx.coroutines.Dispatchers
5353
import kotlinx.coroutines.launch
54-
import java.lang.Exception
5554

5655
private const val TAG = "MainActivityViewModel"
5756

@@ -136,10 +135,13 @@ class MainViewModel(application: Application) : AndroidViewModel(application) {
136135
_localFilesCount.postValue(mediaStoreService.countAll(settingsDataStore.getSettings().pathExclusions))
137136

138137
if (contentObserver == null) {
139-
contentObserver = getApplication<Application>().contentResolver.registerObserver(
140-
MediaStore.Images.Media.EXTERNAL_CONTENT_URI
141-
) {
142-
loadImages()
138+
URIS.forEach {
139+
contentObserver =
140+
getApplication<Application>().contentResolver.registerObserver(
141+
it
142+
) {
143+
loadImages()
144+
}
143145
}
144146
}
145147
}
@@ -153,7 +155,7 @@ class MainViewModel(application: Application) : AndroidViewModel(application) {
153155
val webDavService = WebDavService.getInstance(settingsDataStore.getSettingsAsFlow())
154156
webDavService.getProperties(CollectionPath("/"))
155157
isDavConnected.value = true
156-
} catch (e:MisconfigurationException) {
158+
} catch (_: MisconfigurationException) {
157159
Log.d(TAG, "Cannot create DAV client")
158160
} catch (e: Exception) {
159161
Log.e(TAG, e.stackTraceToString())

0 commit comments

Comments
 (0)