Torsten Grote
c19787a7fa
Prepare backends for new app backup repository
2024-10-08 19:36:02 -03:00
Torsten Grote
d2df088f2c
Add zstd-jni library
2024-10-08 19:36:02 -03:00
Torsten Grote
cb68f75eb6
remove kotlin protobuf as its not in aosp
2024-10-08 19:36:02 -03:00
Torsten Grote
b2307d94dd
Add protobuf definitions for snapshot
2024-10-08 19:36:02 -03:00
Torsten Grote
a9df9a2d2f
Merge pull request #771 from grote/770-backup-start
...
Unify code to start new backup
2024-10-08 18:21:15 -03:00
Torsten Grote
d6572979cc
Unify code to start new backup
...
to ensure that files backup and app backup will always run if they should
2024-10-08 16:13:12 -03:00
Torsten Grote
5498e838db
Merge pull request #764 from grote/697-receivery-code-crash
...
Trim white-spaces from recovery code words
2024-10-07 11:09:26 -03:00
Torsten Grote
3601494b06
Also show TikTok in Backup status
...
The apps ships an instrumentation configuration which we've so far only soon for instrumentation test dev apps. Now, we do more checks to identify those.
2024-10-07 10:47:27 -03:00
t-m-w
a27ef47294
Fix title of restore notification channel
...
The restore foreground service notification uses the restore channel, which was inadvertently using the title from the error channel, showing "Auto restore flash drive error" when tapping and holding on the notification, and showing that channel name twice in the notification settings.
2024-10-03 16:09:25 -04:00
Torsten Grote
542a79e2e1
Trim white-spaces from recovery code words
2024-10-03 14:09:39 -03:00
Torsten Grote
f2aec3f932
Merge pull request #747 from theimpulson/a15
...
Support edge to edge
2024-09-20 14:03:29 -03:00
Aayush Gupta
b9b7c96063
Support edge to edge
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-09-18 20:21:09 +05:30
Torsten Grote
78ef0caea7
clean up libs and fix AOSP build
2024-09-12 09:34:00 -03:00
Torsten Grote
206affee00
Move AOSP libs to root libs dir
2024-09-12 09:33:59 -03:00
Torsten Grote
c83e8f392e
Fix issue with DocumentFileCache
2024-09-12 09:33:59 -03:00
Torsten Grote
96a3564610
Switch everything to new backends
2024-09-12 09:33:58 -03:00
Torsten Grote
58d58415c5
Use new Backend directly in storage lib
2024-09-12 09:18:22 -03:00
Torsten Grote
0c1dfb316d
Use new Backend directly in the app
2024-09-12 09:18:22 -03:00
Torsten Grote
5bb599e528
Use new SafBackend in DocumentsProviderStoragePlugin
2024-09-12 09:18:21 -03:00
Torsten Grote
8c05ccc39d
Use new WebDavBackend in WebDavStoragePlugin
2024-09-12 09:18:21 -03:00
Torsten Grote
099e0ba6d5
Remove hasData() method from StoragePlugin
...
because it is one extra request for packages that do have data and from the looks of it not really needed.
2024-09-12 09:18:21 -03:00
Torsten Grote
27eb95f768
Split key concern out of storage plugin
...
This creates a KeyManager interface in the new core module which the storage module can use to get the key from.
2024-09-12 09:18:21 -03:00
Torsten Grote
9e56384cb2
Add core gradle module with unified storage backends
2024-09-12 09:18:21 -03:00
Aayush Gupta
bc2cb257b1
app: test: Force robolectric to SDK 34 for now
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-09-12 17:31:01 +05:30
Aayush Gupta
4a235c6739
app: test: Assert applicationInfo is non-null
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-09-10 12:13:21 +05:30
Aayush Gupta
a334eb0e91
Update AGP, Gradle and dependencies to AOSP versions
...
* Also regenerate JARs against Android 15 user build
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-09-09 11:39:58 +05:30
Chirayu Desai
bf609f9723
Bump version to 15-4.1, mention 15 in README
...
* VanillaIceCream
Change-Id: Idd149e2be3329452ab61941cde2ff4f2ae3575ca
2024-09-06 20:52:49 +05:30
Aayush Gupta
085d152e55
drawable: Use text color for system icons
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-09-06 12:50:42 +05:30
Torsten Grote
ff59decaab
Merge pull request #731 from lucasmz-dev/android14-bump-version
...
Bump version
2024-09-05 16:24:37 -03:00
Torsten Grote
dc9391deef
Merge pull request #723 from grote/allow-restore
...
Allow restore whenever the user feels like it
2024-09-05 16:24:13 -03:00
Torsten Grote
b8602fdcc2
Merge pull request #736 from grote/fix-retry
...
Fix retries: don't upload metadata three times
2024-09-05 16:14:20 -03:00
Torsten Grote
710354d6d0
Merge pull request #722 from grote/restore-foreground-service
...
Start a foreground service during restore
2024-09-05 16:14:02 -03:00
Torsten Grote
17d0885e77
Fix retries: don't upload metadata three times
2024-09-05 09:11:52 -03:00
Torsten Grote
40d0f55012
Show app is in progress before we download APKs
2024-08-28 15:07:36 -03:00
Torsten Grote
7214d9c666
Don't allow app selection toggles before icons have loaded
2024-08-28 15:07:31 -03:00
LucasMZ
006dfadca0
Bump to 14-4.1 - many cool things :D
2024-08-23 22:40:40 -03:00
Torsten Grote
d266c36c91
Don't use Context#startForegroundService() because we may get killed
...
If the foreground service doesn't have anything to do and terminates quickly, the system will kill us, even though the service had called startForeground(). To prevent this, we don't promise that our service will be a foreground service. We can still be a foreground service, but escape the punishment if we are too quick.
2024-08-22 17:45:39 -03:00
Torsten Grote
639947b87e
Start a foreground service during restore
...
so the system won't kill us, even if the user navigates away.
2024-08-21 17:28:37 -03:00
Torsten Grote
bebb9005da
Merge pull request #719 from grote/only-install-if-not-installed
...
Don't re-install apps that are already installed and disable auto-restore
2024-08-21 17:22:41 -03:00
Torsten Grote
61e748ac42
Don't back up to USB, if backup disabled
2024-08-21 14:47:54 -03:00
Torsten Grote
ebb662add7
Merge pull request #720 from grote/fix-app-selection
...
Fix app selection when restoring after SUW
2024-08-21 14:36:26 -03:00
Torsten Grote
1b9dc25896
Allow restore whenever the user feels like it
2024-08-20 17:53:24 -03:00
Torsten Grote
570850aa51
Disable auto-restore during install, if it was on
2024-08-16 10:53:00 -03:00
Torsten Grote
09074c5dff
Move Settings.Secure backup flags into BackupStateManager
2024-08-16 10:53:00 -03:00
Torsten Grote
3397fdbd87
Fix app selection when restoring after SUW
2024-08-16 09:45:46 -03:00
Torsten Grote
109e0ae281
Don't re-install apps that are already installed
2024-08-16 09:29:43 -03:00
Torsten Grote
7f934c8209
Fix back navigation when FirstRunFragment is shown
2024-08-15 18:29:38 -03:00
Torsten Grote
22b3ace3aa
Ask on first run if user wants restore
2024-08-15 18:29:37 -03:00
Torsten Grote
cff5d20342
Merge pull request #712 from grote/debug-launcher
...
Add launcher icon for debug builds
2024-08-15 18:28:25 -03:00
Torsten Grote
e4de9e1c41
Uncheck system apps by default if restore outside of SUW
2024-08-15 15:46:40 -03:00
Torsten Grote
e6e6154b7d
Add launcher icon for debug builds
2024-08-15 09:56:19 -03:00
Torsten Grote
66836c875c
Fixes for MD3 that got merged in the meantime
2024-07-31 15:09:44 -03:00
Torsten Grote
118b2c0be0
Integrate files selection into real Seedvault app
2024-07-31 15:09:43 -03:00
Torsten Grote
dbb40a4a5b
Only attempt to do a manual app backup, if it is actually enabled
2024-07-31 15:09:43 -03:00
Torsten Grote
7d6ab6f8e0
Make demo restore with file selection functional
...
This injects FileSelectionManager as a singleton, so we can use its selection to recreate a snapshot, even in a service.
Also includes some UI improvements.
2024-07-31 15:09:43 -03:00
Torsten Grote
5012099419
Add UI prototype for selecting file to storage demo app
2024-07-31 15:09:43 -03:00
t-m-w
a00ee0fa4f
Fix AOSP build
2024-07-31 11:02:33 -04:00
Aayush Gupta
2f96393a89
Apply dynamic colors to all acitvites
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-26 15:53:10 +07:00
Aayush Gupta
3f7022ecb7
fragment_restore_app_selection: Set background color to squashed layout
...
CollapsingToolbarLayout doesn't seems to be respecting background color for some reason
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 16:57:06 +07:00
Aayush Gupta
70413f1425
drawable: Tint colors directly instead of relying on system theme
...
Material theme seems to be not respecting the tint color in the XML.
Override the colors manually to get the job done.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 16:39:52 +07:00
Torsten Grote
0dcab41fd1
Use MD3 switches in settings
2024-07-11 15:59:03 +07:00
Aayush Gupta
98c6ebab8d
SchedulingFragment: Implement Material3 based ListPreference
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 15:59:03 +07:00
Aayush Gupta
d15fe36638
RecoveryCodeInputFragment: Switch to MaterialAutoCompleteTextView
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 15:59:02 +07:00
Aayush Gupta
cdcb862d9d
Migrate to MaterialAlertDialog everywhere
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 15:59:02 +07:00
Aayush Gupta
033498aa17
themes: Switch to Material3 theme
...
* Merge accent and primary color for simpler color management
* Apply background color on status and navigation bar
* Drop non-required colors
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 15:59:02 +07:00
Aayush Gupta
412ed9ee16
themes: Switch to single theme for all activities
...
Default to NoActionBar theme and use toolbar where required
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-07-11 15:59:02 +07:00
Torsten Grote
b07bb6bc48
Merge pull request #692 from grote/679-consider-other-transports
...
Better scheduling co-existence with other transport
2024-07-08 15:32:24 -03:00
Torsten Grote
490c7882e4
Add missing docs for sendBackupData()
2024-06-27 17:20:06 -03:00
Torsten Grote
7afd496db9
Catch the underlying exception when WebDAV writing fails due to closed pipe
2024-06-27 17:20:05 -03:00
Torsten Grote
823eb4ffab
Improve logging relevant for WebDAV streams
2024-06-27 16:34:37 -03:00
Torsten Grote
a1f6be0447
Remove dav4jvm InputStream hack as not needed with latest version
2024-06-24 13:53:08 -03:00
Torsten Grote
6e84d727c2
Update dav4jvm to b8be778
...
as recommended by upstream: https://github.com/bitfireAT/dav4jvm/discussions/36#discussioncomment-9862613
2024-06-24 13:48:40 -03:00
Torsten Grote
520074521e
Update okhttp to 4.12.0
2024-06-24 13:09:49 -03:00
Torsten Grote
484767bf16
Disable framework scheduling when scheduling backup, because another transport may have re-enabled it
2024-06-19 09:29:22 -03:00
Torsten Grote
878492088d
Don't disable framework scheduling when not current transport
2024-06-19 09:29:22 -03:00
Torsten Grote
97093ca0b2
Don't restore the storage provider app
...
otherwise it gets killed during data restore which kills our restore process
2024-06-19 09:24:01 -03:00
Torsten Grote
22ca2550c2
Merge pull request #670 from grote/309-restore-choose-apps
...
Allow choosing which apps will get restored
2024-06-19 09:21:59 -03:00
Torsten Grote
f15018253c
Prevent NoClassDefFound error when a WebDAV server returns GetLastModified
...
which happens in the case of dufs (see last commit)
2024-06-14 09:17:52 -03:00
Torsten Grote
4ac02018fa
Fix uncaught throwable with dufs WebDAV server
...
The underlying issue will affect other functionality though: https://github.com/sigoden/dufs/issues/400
2024-06-14 09:17:52 -03:00
Torsten Grote
56e26083fc
Fix PROPFIND fallback for lighttpd as well
2024-06-14 09:17:51 -03:00
Torsten Grote
1dd898b068
Add fallback when WebDAV PROPFIND with depth=2 isn't supported
2024-06-14 09:17:51 -03:00
Torsten Grote
c522c460fd
Add trailing slash to WebDAV collection requests
2024-06-14 09:17:50 -03:00
Torsten Grote
c483332b15
Try to fix issue where our transport doesn't get registered in emulator
2024-06-12 09:57:24 -03:00
Steve Soltys
08727651af
Skip magic package manager in assertions
...
We still don't know why, but after latest test fixes, the @pm@ package didn't have the the @meta@ key in the backup, but it did in restore.
2024-06-07 09:35:15 -03:00
Torsten Grote
e76ab1ca43
Increase WebDAV timeouts and declare body one-shot
...
As most output streams come from the system, we can't re-send them. So when okhttp wants to retry it tries to write to closed streams which will fail. We declare our outputstream writing as one-shot for this reason.
2024-06-05 12:40:42 -03:00
Torsten Grote
0e224b1238
Filter out @end@ helper package
...
it doesn't really exist and should probably not even be in the backup metadata. It messes up progress reporting, if we keep it in.
2024-05-31 17:11:34 -03:00
Torsten Grote
fa19261d8e
Improve app data restore process
...
Apps are now restored alphabetically to be consistent with the other lists. Some irrelevant apps are hidden. Under the hood, we now use an AsyncListDiffer like in the other lists.
2024-05-31 17:06:14 -03:00
Torsten Grote
b3f93adf77
Factor out code into new
...
AppDataRestoreManager
which was in RestoreViewModel before.
Now all three steps of app restore have their own dedicated manager class making the ViewModel more readable.
2024-05-31 15:07:35 -03:00
Torsten Grote
66f3852edf
Delete cached icons after restore is done
2024-05-31 13:35:55 -03:00
Torsten Grote
ebf68cfe73
Don't try to install system apps without APK
...
during restore process. These can usually not be manually installed anyway and just clutter the list making it harder for the user to find their important apps and potential failures there.
2024-05-31 12:16:01 -03:00
Torsten Grote
f408381d18
Fix backup/restore instrumentation tests
2024-05-31 11:50:59 -03:00
Torsten Grote
88619b94c1
Fix red error color
...
Resources$NotFoundException: Resource ID #0x7f060258 type #0x2 is not valid
2024-05-31 11:50:59 -03:00
Torsten Grote
f68fa0f3fc
Fix AOSP build
2024-05-31 11:50:59 -03:00
Torsten Grote
4b1c76d585
don't record excluded apps in backup
2024-05-31 11:50:59 -03:00
Torsten Grote
e54d96d548
Re-factor and improve ApkRestore
2024-05-31 11:50:59 -03:00
Torsten Grote
05c39e98fa
Add tests for AppSelectionManager
2024-05-31 11:50:58 -03:00
Torsten Grote
6143ec04ed
Upgrade Roboeletric and bump minSdk to 34
2024-05-31 11:50:58 -03:00
Torsten Grote
9cc72bfa38
Show size for (all combined) system apps when restoring
2024-05-31 11:50:58 -03:00
Torsten Grote
f5fb9ffffa
Factor out app restore selection code into new AppSelectionManager
2024-05-31 11:50:58 -03:00
Torsten Grote
332387fd58
Encrypt zip file with icons
...
While we still don't guarantee that an attacker with access to the storage can't find out which apps we use (APKs are still unencrypted after all), we go into this direction.
Also, this should make it impossible for an attacker that can modify files to replace or otherwise mess with the icons.
2024-05-31 11:10:12 -03:00
Torsten Grote
eecfcdb285
Improve icon display when selecting apps for restore
2024-05-31 11:10:12 -03:00
Torsten Grote
787b9346a8
Add meta item for restoring all (internal) system apps
...
This way we don't need to show the long complicated list, but provide an all or nothing option at least.
2024-05-31 11:10:11 -03:00
Torsten Grote
573e48f393
Sort app selection like backup status and show sections
...
system data comes first and then apps
2024-05-31 11:10:11 -03:00
Torsten Grote
af1b3de9cb
Fix icon colors (again!)
...
see 5662409ef5
2024-05-31 11:10:11 -03:00
Torsten Grote
a447895079
Cleaned up backup status list by separating system data and apps
2024-05-31 11:10:11 -03:00
Torsten Grote
1ac613f588
Also store icons of launchable system apps
2024-05-31 11:10:11 -03:00
Torsten Grote
a0a3e871e0
Show actual app name in app selection for restore
2024-05-31 11:10:11 -03:00
Torsten Grote
1667d44967
Sort apps that failed to install by name
2024-05-31 11:10:10 -03:00
Torsten Grote
56d8d64261
Store app name and whether it is a launchable system app in metadata
...
this is helpful for restore, so the user can see app names when deciding which apps to restore
2024-05-31 11:10:10 -03:00
Torsten Grote
5a2f1187a8
Store app icons in separate file
...
so they can be shown when selecting apps for restore which is before we have downloaded the APK files to extract icons from
2024-05-31 11:10:10 -03:00
Torsten Grote
905340770c
Allow user to choose which apps should get restored
2024-05-31 11:10:10 -03:00
Torsten Grote
4803288629
Show other (launchable) system apps in backup status
2024-05-31 11:10:10 -03:00
Torsten Grote
16813395c7
Change app excludes from switches to checkboxes
...
apparently this is closer to the material design specs:
https://m2.material.io/components/checkboxes#usage
2024-05-31 11:10:10 -03:00
Aayush Gupta
6953f154b3
gradle: Migrate to recommended method of build version catalogs
...
This fixes broken AGP Upgrade Assistant in Android Studio as well as detects
the version catalog files in Android view.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-05-30 12:07:51 +05:30
Aayush Gupta
18c85a76c7
gradle: Bump to latest AGP and Gradle version
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2024-05-30 11:44:42 +05:30
Torsten Grote
d9642aec9d
Fix InstallRestriction
...
We had a logic bug where isAllowed actually meant isDisallowed
2024-05-28 14:33:28 -03:00
Chirayu Desai
0a81c42fd1
fixup! restore: Skip installing APKs if not allowed by policy
...
Change-Id: Iaa1590df84e3d1785baf0f938da0a2b2fe43ccd0
2024-05-23 16:06:44 +05:30
Michael Bestas
ecf3b99ac2
misc: Add SPDX copyright headers
2024-05-23 00:44:51 +05:30
Michael Bestas
1baf4b871e
app: Add SPDX copyright headers 5/5
2024-05-23 00:44:51 +05:30
Michael Bestas
bfd51350b2
app: Add SPDX copyright headers 4/5
2024-05-23 00:44:51 +05:30
Michael Bestas
a46e93261c
app: Add SPDX copyright headers 3/5
2024-05-23 00:44:51 +05:30
Michael Bestas
7f7861aba4
app: Add SPDX copyright headers 2/5
2024-05-23 00:44:51 +05:30
Michael Bestas
c1c2385bd5
app: Add SPDX copyright headers 1/5
2024-05-23 00:44:51 +05:30
Michael Bestas
297f335fa9
Add missing newlines at the end of the files
2024-05-23 00:44:51 +05:30
Hosted Weblate
2bbf46bc4a
Import translations from Weblate
...
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: lucasmz-dev <git@lucasmz.dev>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/de/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/es/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt/
Translation: CalyxOS/Seedvault
2024-05-23 00:44:39 +05:30
Torsten Grote
54f9e08c71
Fix scheduling for removable drive users
2024-05-23 00:42:47 +05:30
Hosted Weblate
54d9cfcbe7
Import translations from Weblate
...
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Igor Sorocean <sorocean.igor@gmail.com>
Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Co-authored-by: lucasmz <git@lucasmz.dev>
Co-authored-by: lucasmz-dev <git@lucasmz.dev>
Co-authored-by: rehork <cooky@e.email>
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/cs/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pl/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ro/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/tr/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/zh_Hans/
Translation: CalyxOS/Seedvault
2024-05-18 22:48:59 +05:30
Hosted Weblate
684ce8201b
Import translations from Weblate
...
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Igor Sorocean <sorocean.igor@gmail.com>
Co-authored-by: Kristian Nordin <kristian.po@proton.me>
Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: ikya91 <weblate.haq9g@simplelogin.com>
Co-authored-by: lucasmz <git@lucasmz.dev>
Co-authored-by: lucasmz-dev <git@lucasmz.dev>
Co-authored-by: rehork <cooky@e.email>
Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/cs/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/es/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fr/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pl/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ro/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/sv/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/tr/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_contactsbackup/sv/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_storage/sv/
Translation: CalyxOS/Seedvault
Translation: CalyxOS/Seedvault contacts backup
Translation: CalyxOS/Seedvault storage backup
2024-05-14 22:21:35 +05:30
Chirayu Desai
422e3f547d
restore: Skip installing APKs if not allowed by policy
...
* We should not bypass the OS-wide APK install restriction.
* Simply treat that as just not having the APK in the first place,
since we do support that as an option.
* This still lets users install apps via the store it was downloaded
from, if said store is installed and allowed to install apps.
* Introduce InstallRestriction to make testing easier.
Co-Authored-By: Torsten Grote <t@grobox.de>
Change-Id: Ic0a56961c9078d4dd542db5d9fc75034abb27bea
2024-05-14 20:34:33 +05:30
Torsten Grote
bb562a4cb2
Catch out 507 HTTP error when using WebDAV
...
Nextcloud has a bug that lets us write chunked transfers over quota:
https://github.com/nextcloud/server/issues/7993
However, when we upload small files, we can get the proper 507 response and thus detect out of space situations and warn the user about them.
2024-05-14 20:31:15 +05:30
Torsten Grote
066b147315
Catch out of space exception during FullBackup
2024-05-14 20:31:15 +05:30
Torsten Grote
860733d238
Don't retry backup on removable storage
2024-05-14 20:31:15 +05:30
Torsten Grote
49262682d1
Don't do backup, if space is already low, warn instead
2024-05-14 20:31:15 +05:30
Torsten Grote
36910fc777
Catch out of space errors and show error notification
2024-05-14 20:31:15 +05:30
Torsten Grote
5cae1b202d
Show app restore sets sorted by latest first
2024-05-14 20:31:15 +05:30
Torsten Grote
7ec80d4ebb
Store total backup size and show it when restoring
...
This is done by storing also the APK sizes in addition to the app data size we already store.
2024-05-14 20:31:15 +05:30
Torsten Grote
1d8c438723
Implement a storage plugin method to get free space
2024-05-14 20:31:15 +05:30
Torsten Grote
81cbb6e4dc
Get free space for storage authority if not available by other means
2024-05-14 20:31:15 +05:30
Torsten Grote
c04ddfa9a0
Add helper text for WebDAV URL field
2024-05-08 19:10:46 +05:30
Torsten Grote
d0cf168198
Merge pull request #647 from grote/webdav
...
Implement a native WebDAV plugin
2024-05-06 13:41:45 -03:00
Torsten Grote
1931024a10
Introduce constant for files snapshot file extension
2024-05-03 16:09:41 -03:00
Torsten Grote
2f6edf6b4b
Rename StoragePluginEnum to StoragePluginType
2024-05-03 15:59:28 -03:00
Torsten Grote
4651ad5eb3
Replace field naming _foo with mFoo
2024-05-03 15:57:01 -03:00
Torsten Grote
01dbcf5f2f
Move StorageProperties class into its own file
2024-05-03 15:54:04 -03:00
Torsten Grote
b041c208ac
Always update next scheduling time in UI
...
Also avoid hard-coded strings and log when no backups are scheduled.
2024-04-29 12:00:39 -03:00
Torsten Grote
0b4bd09e7d
Don't assume SAF-based storage is available
...
it may be WebDAV now
2024-04-25 14:13:32 -03:00
Torsten Grote
0e51c00bca
Properly migrate existing users to new plugin setup
2024-04-25 09:51:46 -03:00
Torsten Grote
a95ba41196
Reset WebDAV config state when the UI is left
2024-04-25 09:51:46 -03:00
Torsten Grote
f4366d930f
Adapt integration test to new plugin structure
2024-04-25 09:51:46 -03:00
Torsten Grote
a4cccabc5e
Don't allow changing backup location while backup is running
2024-04-25 09:51:45 -03:00