Hans-Christoph Steiner
10808e2fea
rename App.upstreamVersionName to suggestedVersionName #1063
2020-01-10 18:15:39 +01:00
Hans-Christoph Steiner
531494e571
rename App.suggestedVersionName to autoInstallVersionName #1063
...
# Conflicts:
# app/src/test/java/org/fdroid/fdroid/updater/IndexV1UpdaterTest.java
2020-01-10 18:15:37 +01:00
Hans-Christoph Steiner
cd635459ad
rename Cols.SuggestedApk to AutoInstallApk #1063
2020-01-10 18:15:36 +01:00
Hans-Christoph Steiner
cc3d874dc4
rename App.suggestedVersionCode to autoInstallVersionCode #1063
2020-01-10 18:15:34 +01:00
Hans-Christoph Steiner
1c0957ce77
disable annoying or erronous PMD errors
2020-01-10 16:28:03 +01:00
Hans-Christoph Steiner
c987e6ad4c
use Collections' isEmpty() to test for emptiness
...
This should make the code intent clearer and more standard Java.
2020-01-10 16:28:01 +01:00
Hans-Christoph Steiner
c7f3910472
fix PMD "Field has the same name as a method"
2020-01-10 16:28:00 +01:00
Hans-Christoph Steiner
30d16a8862
ManageRepos: force to HTTPS when required by Network Security Config
...
Since GitLab, GitHub, and Amazon S3 allow some HTTP access while always
providing HTTPS, those should always use HTTPS. This prevents
2020-01-10 15:28:13 +01:00
Chirayu Desai
fae735c468
Handle API 29 split-permissions v2
...
* This new permission comes courtesy of the Q December update.
* Read external storage implies access media location
References:
* ac7b10c135
%5E%21/#F1
2020-01-10 19:27:53 +05:30
Michael Pöhn
f7c757bf33
app list: open keyboard when X-ing search query
2019-12-29 21:46:29 +01:00
Michael Pöhn
e42718b11f
display summary text on app details activity
2019-12-08 03:37:13 +01:00
Chirayu Desai
09835721f2
Handle API 29 split-permissions
...
* For apps targetting 28 or lower,
fine/coarse location now implies background location.
* Fine location now implies coarse location.
References:
* https://developer.android.com/about/versions/10/privacy/changes#access_granted_automatically_when_targeting_android_9_or_lower
* https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-10.0.0_r1/data/etc/platform.xml#186
2019-11-14 20:35:50 +05:30
Hans-Christoph Steiner
7c0cb2064e
Merge branch 'left-padding' into 'master'
...
Add left padding on first screenshot to match header
See merge request fdroid/fdroidclient!851
2019-10-30 11:29:07 +00:00
Hans-Christoph Steiner
4312deb4c8
Merge branch 'padding' into 'master'
...
Fix extra large padding after every five items on main page
See merge request fdroid/fdroidclient!850
2019-10-29 17:27:23 +00:00
dkanada
c9040e2cf4
add left padding on first screenshot to match header
2019-10-29 04:35:25 +09:00
dkanada
d538760ad1
fix extra large padding after every five items on main page
2019-10-29 04:02:37 +09:00
dkanada
6393923274
hide the seekbar value on all devices
2019-10-29 01:51:54 +09:00
Marcus
65463781d0
PrivilegedInstaller: fix a grammar mistake in error message
2019-10-15 11:43:08 +00:00
Hans-Christoph Steiner
ca5996c5b3
detect when USB OTG device is plugged in and show Nearby tab
2019-06-17 18:37:26 +02:00
Hans-Christoph Steiner
23b296a012
add Intent Extra to force Nearby tab to show, like the other tabs have
2019-06-17 18:37:00 +02:00
Hans-Christoph Steiner
525f99b056
implement mirror/repos on USB OTG via Storage Access Framework
...
* https://developer.android.com/training/articles/scoped-directory-access
One potential future direction, if this proves too limiting:
https://github.com/magnusja/libaums
2019-06-17 18:36:58 +02:00
Hans-Christoph Steiner
842db03d8a
fold ".views.hiding" into ".panic", it is only use there
2019-06-17 11:28:52 +02:00
Hans-Christoph Steiner
32aad6b562
move ".net.bluetooth" into ".nearby" package
2019-06-17 11:18:07 +02:00
Hans-Christoph Steiner
15d349f863
move LocalHTTPD and WifiStateChangeService into ".nearby" package
2019-06-17 11:18:07 +02:00
Hans-Christoph Steiner
43c7574228
fold ".views.swap" package into ".nearby" class
2019-06-17 10:50:56 +02:00
Hans-Christoph Steiner
790b5ab27d
rename 'localrepo' package to 'nearby' to cover the whole thing
2019-06-17 10:50:56 +02:00
Hans-Christoph Steiner
df3a09dd2b
ensure SwapService is running first, after Location perm prompt
2019-06-14 11:25:41 +02:00
Hans-Christoph Steiner
254bd6a4db
allow hotspots to work for swapping, even if they don't have internet
...
It is possible to enable the Hotspot AP on a device, and disable mobile
data. This setup will work fine for swapping, but the detection logic for
whether there is metered internet was blocking it. So this adds a new
state to represent and handle this condition.
2019-06-13 21:17:31 +02:00
Hans-Christoph Steiner
bac0ae8f25
show all installed apps as possibilities for panic uninstall
...
F-Droid should be able to uninstall any app, in theory, not just the apps
that are listed in the index.
This lays some groundwork for moving swap's SelectAppsView to the standard
AppList elements used everywhere else. It also does a little bit towards
getting rid of InstalledApp in favor of just reusing App.
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
89140d5334
InstalledAppProvider: use Android sematics for query methods
...
Throughout Android, a null projection means return the full record. This
is well documented.
Also, null sortOrder means use default sort order.
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
3b53af0657
panic: add destructive option to reset repos to defaults
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
515b5b08f0
set up Panic preference to choose apps to uninstall on trigger
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
3812331166
stop crashing if the suggested version ends up being bogus
...
It is possible for repo operators to specify a bad CurrentVersionCode for
an app that is also in another repo, and cause confusion in the suggested
version calculation. Or if one repo's index is very out of date. This
adds a fallback for these cases, so at least it'll stop the crash and
attempt the user's requested install.
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
b400df3ac3
remove unused 'projection' argument from ApkProvider.findApkFromAnyRepo()
...
One small victory in the ever lasting battle against creeping complexity!
2019-06-12 14:48:50 +02:00
Hans-Christoph Steiner
7ca4ee6539
rename InstalledAppProvider method after what it returns: last update
2019-06-12 14:48:50 +02:00
Michael Pöhn
5dd866d39e
fix checkstyle
2019-06-12 12:04:15 +02:00
Michael Pöhn
067d39f72d
preferences fragment: setup use tor preferences changed only once
2019-06-11 16:23:22 +02:00
Michael Pöhn
88f3a68f83
deduplicate error prone proxy settings code
2019-06-11 16:23:22 +02:00
Michael Pöhn
292950898e
replace prone useTor preference mirror value from FDroidApp with direct preference calls
2019-06-11 16:23:22 +02:00
Yoginth
0851fea8eb
Fix Typos
2019-06-05 03:52:40 +00:00
Hans-Christoph Steiner
6d3a7d4537
move all QR Code related classes to .qr package
2019-05-24 15:47:48 +02:00
Hans-Christoph Steiner
fea778793c
replace BluetoothSwap with BluetoothManager, using HandlerThread
...
This is the last of the SwapType stuff!
fdroid/fdroidclient#1723
fdroid/fdroidclient#1669
2019-05-24 13:35:56 +02:00
Hans-Christoph Steiner
79e7e78e7f
create testable LocalHTTPDManager for controlling the webserver
...
The RxJava tricks were a nightmare...
2019-05-24 10:02:22 +02:00
Hans-Christoph Steiner
f0158063fb
show full error messages from UpdateService
...
The "cause" is the Exception that was caught and embedded into the
UpdateException, so it has more info on what happened.
2019-05-24 10:00:08 +02:00
Hans-Christoph Steiner
d5f2e26ea7
use one method everywhere for the "swap back" requests
2019-05-24 10:00:07 +02:00
Hans-Christoph Steiner
ea3b47f705
purge CacheSwapAppsService in favor of InstalledAppProvider
...
The most expensive part of this whole process is calculating the hash of the
whole APK. InstalledAppProvider already caches that, and the rest is OK to
query. If any particular part of the query is expensive, it could also be
moved to InstalledAppProviderService.
2019-05-24 10:00:07 +02:00
Hans-Christoph Steiner
1cc14b3499
show progress spinner on Updates Tab if index is being updated
...
The "Congrats, your apps are up to date" message isn't quite right in this
context.
closes #1769
2019-05-20 14:14:29 +02:00
Hans-Christoph Steiner
dffc8e5925
make sure ImageLoader is inited before trying to use it
...
closes #1782
2019-05-20 14:14:29 +02:00
Hans-Christoph Steiner
86908ceeaa
the calculated ETag should be compared to the stored ETag
...
Thanks to @amiraliakbari for tracking this down!
closes fdroid/fdroidclient#1737
2019-05-20 14:14:29 +02:00
Hocuri
dbfe267540
Show snackbars with undo buttons.
2019-05-13 17:55:09 +02:00