Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[New arch] Camera uploads #3293

Merged
merged 56 commits into from
Jul 14, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
77c1127
Start moving camera uploads to new architecture
abelgardep May 10, 2021
b124985
Add a new use case to retrieve camera uploads configuration and add i…
abelgardep Jun 14, 2021
ac6a836
Add a worker to trigger camera uploadsç
abelgardep Jun 14, 2021
628ab0c
Use saf to retrieve source folder for camera uploads and adapt worker
abelgardep Jun 14, 2021
75e4277
Upload only new pictures
abelgardep Jun 14, 2021
643eea6
Sample to upload files from content Uri - WIP: Move it to a different…
abelgardep Jun 14, 2021
852d61f
Enqueue a new upload in other worker
abelgardep Jun 14, 2021
8564427
Check upload result and throw exception if it does not succeed
abelgardep Jun 15, 2021
2341577
Add skeleton with pending tasks within uploads
abelgardep Jun 16, 2021
2b52fbc
Check file existance or throw an exception
abelgardep Jun 16, 2021
13e003b
Create folder in case parent folder does not exists
abelgardep Jun 16, 2021
90fe2c3
Check if there are name collissions and add a suffix in case
abelgardep Jun 16, 2021
b29b449
Fix timestamp initialization for camera uploads. Polish and refactor …
abelgardep Jun 17, 2021
cc10cb0
Polish a little bit the camera uploads worker
abelgardep Jun 17, 2021
a540e17
Apply same behavior for video uploads
abelgardep Jun 17, 2021
b296d0c
Camera uploads worker polished
abelgardep Jun 17, 2021
82be569
Remove file after upload when behavior is MOVE
abelgardep Jun 17, 2021
de69618
Remove old local folder picker. We will use the native one from now on
abelgardep Jun 17, 2021
5d7a78d
First try to link workers with current uploads database
abelgardep Jun 18, 2021
e659d1e
Update uploads with result. There are some error cases pending to notify
abelgardep Jun 18, 2021
c76baed
Add constraints to perform uploads: Connected and wifi
abelgardep Jun 21, 2021
0ce3abf
Enqueue uploads via usecase
abelgardep Jun 21, 2021
89e7e70
Cancel uploads from account
abelgardep Jun 22, 2021
f951e5b
Show a notification when upload fails
abelgardep Jun 23, 2021
ded14c9
Reuse some code included in previous commit. Compose the pending inte…
abelgardep Jun 23, 2021
56f0bfa
Remove uploads individually
abelgardep Jun 23, 2021
cb40084
Show a notification with the number of files that will be uploaded vi…
abelgardep Jun 23, 2021
994a556
Move upload from content uri operation to library
abelgardep Jun 24, 2021
cf3bc7c
Add some more error cases
abelgardep Jun 24, 2021
62da78e
Remove old camera uploads job
abelgardep Jun 24, 2021
2c8fab0
Keep removing legacy code
abelgardep Jun 24, 2021
886f879
Update viewmodel tests
abelgardep Jun 24, 2021
09e9855
Move default camera path to local storage path
abelgardep Jun 25, 2021
32632c9
Show error when source path is not available anymore
abelgardep Jun 28, 2021
954e700
Moving picture uploads from preferences to Room
abelgardep Jun 30, 2021
17aee1d
Moving video uploads from preferences to Room
abelgardep Jun 30, 2021
896a61e
Refactor to remove duplicities
abelgardep Jun 30, 2021
e383669
Migrate old camera upload configuration to room database
abelgardep Jun 30, 2021
3a9f9ef
Use the timestamp stored in new database instead of old one
abelgardep Jun 30, 2021
d1fffdc
Keep polishing legacy code
abelgardep Jun 30, 2021
7446411
Reset camera uploads after removing the attached account
abelgardep Jul 1, 2021
c1e827f
Cleaning PreferenceManager
abelgardep Jul 1, 2021
676e60d
Enqueue camera uploads after upgrading from previous version
abelgardep Jul 1, 2021
9dd15f7
Remove delay for wifi checks for camera uploads in fileUploader. Came…
abelgardep Jul 1, 2021
7ec1bc7
Ignore camera uploads viewmodel tests while refactoring them
abelgardep Jul 1, 2021
83286cb
Fix klint error
abelgardep Jul 1, 2021
1159e94
Enqueue camera uploads on destroy instead of on stop, so it avoid tri…
abelgardep Jul 1, 2021
8961f87
Remove camera uploads tests, they needs to be refactored
abelgardep Jul 1, 2021
52d975e
Add last synchronization timestamp to camera uploads screen
abelgardep Jul 2, 2021
4ef702b
Apply code review suggestions
abelgardep Jul 6, 2021
0b621d1
Fix camera uploads error notification target. Now, it point to the pr…
abelgardep Jul 7, 2021
a23170e
Use KEEP instead of REPLACE to enqueue camera uploads workers. It is …
abelgardep Jul 7, 2021
86a291f
Do not show notification when there are no files to upload
abelgardep Jul 7, 2021
0d999f2
Remove optional label. Source folder is required, not optional
abelgardep Jul 7, 2021
fdf7674
Use default source path when opening the native picker to select the …
abelgardep Jul 8, 2021
16c392f
Add calens item
abelgardep Jul 12, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions changelog/unreleased/3293
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Enhancement: Replace picker to select camera folder with native one

The custom picker to select the camera folder was replaced with the native one. Now, it is ready for
scoped storage and some problems to select a folder in the SD Card were fixed. Also, a new field to show
the last synchronization timestamp was added.

https://github.com/owncloud/android/issues/2899 https://github.com/owncloud/android/pull/3293
7 changes: 6 additions & 1 deletion owncloudApp/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,11 @@ dependencies {
implementation 'com.github.chrisbanes:PhotoView:2.3.0'

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion"

implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$archLifecycleVersion"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1"
kapt "androidx.lifecycle:lifecycle-common-java8:$archLifecycleVersion"

kapt "org.xerial:sqlite-jdbc:3.34.0" // fix kapt for Apple Silicon https://stackoverflow.com/a/68285501/1079990
Expand All @@ -48,13 +50,16 @@ dependencies {
implementation "org.koin:koin-core:$koinVersion"
implementation "org.koin:koin-androidx-viewmodel:$koinVersion"

// WorkManager
implementation "androidx.work:work-runtime-ktx:2.5.0"

// KTX extensions, see https://developer.android.com/kotlin/ktx.html
implementation "androidx.core:core-ktx:$ktxCoreVersion"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$ktxViewModelVersion"
implementation "androidx.fragment:fragment-ktx:$ktxFragmentVersion"

// Preferences
implementation 'androidx.preference:preference:1.1.1'
implementation 'androidx.preference:preference-ktx:1.1.1'

// Tests
testImplementation project(':owncloudTestUtil')
Expand Down

This file was deleted.

Loading