5583 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
e05e306006 version code 1003004 1.3-alpha4 2018-07-13 23:47:52 +02:00
Hans-Christoph Steiner
ca42217217 update CHANGELOG 2018-07-13 23:47:52 +02:00
Hans-Christoph Steiner
9d398746fa Merge branch 'data-wifi-update-schedule' into 'master'
data/wifi update scheduling

Closes #1474, #1451, and #1457

See merge request fdroid/fdroidclient!711
2018-07-13 21:41:12 +00:00
Hans-Christoph Steiner
42424ad902 Merge branch 'sort-out-install-uninstall-events' into 'master'
Sort out install uninstall events

Closes #1311, #1031, #1271, #1435, and #1145

See merge request fdroid/fdroidclient!710
2018-07-13 16:14:19 +00:00
Hans-Christoph Steiner
277cd3c992 rework UpdateService scheduling to work with data/interval prefs
This was doing a couple of things wrong:

* the scheduled job should always require a network, NONE doesn't work
* when the preferences change, it should cancel any scheduled job first,
  so that if the user chooses to disable auto-updates, that takes effect

closes #1474
closes #1451
closes #1457
2018-07-13 18:13:03 +02:00
Hans-Christoph Steiner
01abcc2f4d basic onStopJob() method for UpdateJobService
If the scheduler decides it should cancel a job, this will attempt to shut
down UpdateService.
2018-07-13 18:10:18 +02:00
Hans-Christoph Steiner
a912eebe5b stop all updates when "Over Data" and "Over WiFi" are both disabled
fdroid/fdroidclient#1457
fdroid/fdroidclient#1451
2018-07-13 18:10:18 +02:00
Balázs Úr
a12425cb92 Translated using Weblate (Hungarian)
Currently translated at 100,0% (432 of 432 strings)
2018-07-13 15:46:48 +02:00
YFdyh000
f7986073a8 Translated using Weblate (Chinese (Simplified))
Currently translated at 97.9% (423 of 432 strings)
2018-07-13 15:46:48 +02:00
Hans-Christoph Steiner
6996bb6968 rename InstallManagerService Receivers for clarity and consistency 2018-07-13 13:34:15 +02:00
Hans-Christoph Steiner
0952f3ba71 track pending installs from first request to confirmed install
This changes the logic to only use a SharedPreference to track pending
installs, and to set the "pending install" mark as soon as possible
while waiting until final confirmation to unmark.  Before, there was a
complicated combination of a SharedPreference and the use of the APK in the
cache as a mark.

!488
refs #962
closes #1311
closes #1031
closes #1271
2018-07-13 13:34:15 +02:00
Hans-Christoph Steiner
862e985cc4 the current app is not always available when requesting uninstall
Since there are many ways to uninstall an app, including from Google
Play, {@code adb uninstall}, or Settings -> Apps, this method cannot
ever be sure that the app isn't already being uninstalled.  So it
needs to check that we can actually get info on the installed app,
otherwise, just call it interrupted and quit.

closes #1435
2018-07-13 13:34:15 +02:00
Hans-Christoph Steiner
be560f7179 show indeterminate progress when installing and uninstalling
This should make the buttons in AppDetails show the realistic state a lot
better.

closes #1145
refs #1357
2018-07-13 13:34:15 +02:00
Hans-Christoph Steiner
6c66697762 send ACTION_UNINSTALL_STARTED before any work has started
This needs to be broadcast as soon as possible so the UI can change to lock
out the user from doing conflicting actions.

refs #1357
2018-07-13 13:34:15 +02:00
Hans-Christoph Steiner
ab8f405dd2 Revert "add adaptive icon"
This reverts commit 3034afedeb81ab77ded807b66f06eea6cfab3b2c.

It still needs some work, see fdroid/fdroidclient#1298
fdroid/fdroidclient!680
2018-07-13 13:33:57 +02:00
Hans-Christoph Steiner
955edb49cd Merge branch 'weblate' into 'master'
Weblate

See merge request fdroid/fdroidclient!709
2018-07-13 11:34:24 +00:00
Hans-Christoph Steiner
d74e63c784 Weblate 2018-07-13 11:34:24 +00:00
Hans-Christoph Steiner
35a2ec5687 Merge branch '1.3-release-polish' into 'master'
1.3 release polish

Closes #1450, #1502, #1434, and #871

See merge request fdroid/fdroidclient!708
2018-07-12 22:00:23 +00:00
Hans-Christoph Steiner
c7dcb92a20 make SeekBarPreference format summary text in a standard way
I fixed it by using the same style as a standard preference:
* the summary text size was a bit too large
* the summary text should be allowed to wrap

closes #1450
2018-07-12 17:52:16 +02:00
Hans-Christoph Steiner
54a080f7f7 only scroll to bottom of Setting when toggling Expert Mode
closes #1502
2018-07-12 17:35:50 +02:00
Hans-Christoph Steiner
edb9fcd044 do not crash on mystery last second null IP addresses, closes #1434
java.lang.IllegalArgumentException: Could not parse [null/24]
 at org.apache.commons.net.util.SubnetUtils.calculate(SubnetUtils.java:275)
 at org.apache.commons.net.util.SubnetUtils.<init>(SubnetUtils.java:51)
 at org.fdroid.fdroid.net.WifiStateChangeService.setIpInfoFromNetworkInterface(WifiStateChangeService.java:261)
 at org.fdroid.fdroid.net.WifiStateChangeService.access$100(WifiStateChangeService.java:50)
 at org.fdroid.fdroid.net.WifiStateChangeService$WifiInfoThread.run(WifiStateChangeService.java:132)
2018-07-12 17:34:24 +02:00
Hans-Christoph Steiner
5295b6f0d1 rename FAB id to make it easier to find 2018-07-12 17:34:24 +02:00
Hans-Christoph Steiner
6bcc1f2e68 fix crasher caused by wrong init
Also, app.installedApk.sig is set in App.initInstalledApk()
from 3a5ecc5e8ec6c820dbfdb788dc06f7dbb0699c18

refs #1305
refs #855

java.lang.NullPointerException
at org.fdroid.fdroid.data.App.getInstance(App.java:390)
at org.fdroid.fdroid.localrepo.CacheSwapAppsService.onHandleIntent(CacheSwapAppsService.java:77)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.os.HandlerThread.run(HandlerThread.java:60)
2018-07-12 17:34:23 +02:00
Hans-Christoph Steiner
11c28bff2c use nearby icon in Nearby/Swap notification
closes #871
2018-07-12 17:34:23 +02:00
Hans-Christoph Steiner
4ff6afad1b Merge branch 'push-request-polish' into 'master'
push request polish

See merge request fdroid/fdroidclient!707
2018-07-12 15:27:10 +00:00
Hans-Christoph Steiner
02f10ea632 Merge branch 'three-randos' into 'master'
Three random low risk commits for 1.3

See merge request fdroid/fdroidclient!706
2018-07-12 10:15:41 +00:00
Hans-Christoph Steiner
c2d9749105 add Expert Pref to enable Push Requests
Since !705 will allow OEMs, ROM makers, etc. to add repos, there needs to
be a way for the user to prevent those from automatically installing or
uninstalling apps for users of the full F-Droid app, which guarantees user
control.
2018-07-11 16:05:53 +02:00
Hans-Christoph Steiner
1fe0d8f4b7 only process Repo Push Requests from IndexV1 if they are enabled 2018-07-11 16:05:53 +02:00
Hans-Christoph Steiner
d9781d735c ban internal Repo vars from being set by the index JSON
These things should never be settable from the server.
2018-07-11 16:05:53 +02:00
Hans-Christoph Steiner
5b11898ba3 improve debug message when Apk is missing NAME and/or REPO_ADDRESS 2018-07-11 15:58:42 +02:00
Hans-Christoph Steiner
61a452e7cd add new Anti-Feature: NoSourceSince
* https://f-droid.org/wiki/page/Antifeature:NoSourceSince
* fdroidserver!529
* fdroidserver#508
2018-07-11 15:58:42 +02:00
Hans-Christoph Steiner
0d1cdf84f9 stop all F-Droid services when hiding by querying for list
No need to list them out manually, it is easy to get the list of what is
actually registered for this app.
!629
2018-07-11 15:58:42 +02:00
Hans-Christoph Steiner
bfb67061b2 Merge branch 'share-repo-url' into 'master'
add share button to repo details activity, for sharing repo urls

See merge request fdroid/fdroidclient!696
2018-06-28 18:40:08 +00:00
Michael Pöhn
6f7a8db019 fix share repo dialog text 2018-06-28 16:15:57 +02:00
Michael Pöhn
4cdbee7d3b repo activity: move delete button to end of options menu 2018-06-28 16:15:57 +02:00
Michael Pöhn
c2fce47975 add share button to repo details activity, for sharing repo urls 2018-06-28 16:15:56 +02:00
Hans-Christoph Steiner
1bd4f9f4e7 bump to version code 1003003 1.3-alpha3 2018-06-27 23:22:03 +02:00
Hans-Christoph Steiner
aa87a02584 update CHANGELOG 2018-06-27 23:21:23 +02:00
Hans-Christoph Steiner
56cbcd386c Merge branch 'final-whitelabel-features' into 'master'
final whitelabel features

See merge request fdroid/fdroidclient!695
2018-06-27 20:25:32 +00:00
Hans-Christoph Steiner
bae8d2718e Merge branch 'weblate' into 'master'
Weblate

See merge request fdroid/fdroidclient!702
2018-06-27 19:51:52 +00:00
Hans-Christoph Steiner
40e6437602 Weblate 2018-06-27 19:51:52 +00:00
Hans-Christoph Steiner
f17b5061fd Merge branch 'adaptive-icon' into 'master'
add adaptive icon

Closes #1298

See merge request fdroid/fdroidclient!680
2018-06-27 18:55:09 +00:00
Hans-Christoph Steiner
c9241ae720 Merge branch 'key-fixes-for-todays-alpha' into 'master'
Key fixes for todays alpha

See merge request fdroid/fdroidclient!701
2018-06-27 18:48:05 +00:00
Hans-Christoph Steiner
7043627a3a basic Install History viewer, available only when logging is enabled
This provides a super simple way to view the install history directly in
F-Droid.
2018-06-27 20:45:27 +02:00
Hans-Christoph Steiner
460720c7f3 allow user to disable ACRA entirely with a preference
ACRA is sometimes problematic or annoying.  Also, whitelabel versions might
want to disable ACRA.  The setting the preference defaultValue is an easy
way to do that.

refs #1483
2018-06-27 20:45:27 +02:00
Hans-Christoph Steiner
b1c3d64748 add expert option to send debug version/UUID on each HTTP download
When debugging issues, tracking the client can be quite useful.  This makes
an "Expert" preference that adds the app version and a randomly generated,
stored UUID to the query string each time it downloads an index or an app
package.

This is also useful in whitelabeling, for use cases where there needs to be
some kind of identifier to make it work.
2018-06-27 20:45:27 +02:00
Hans-Christoph Steiner
d57b00ab7d Merge branch 'master' into 'master'
Highlight Install status below app version

See merge request fdroid/fdroidclient!700
2018-06-27 15:29:21 +00:00
Hans-Christoph Steiner
2c5fe8ffbe purge redundant system_install_* strings 2018-06-27 17:16:49 +02:00
Hans-Christoph Steiner
519101a8a4 prevent crash loop after rapid install/uninstall cycling
If you quickly cycle between installing an app and uninstalling it, then
`app.installedApk` will still be null when AppDetails2.startUninstall()
calls InstallerService.uninstall().  It is better to crash earlier here,
before the Intent is sent with a null APK, because InstallerService is set
to receive Sticky Intents.  That means they will automatically be resent
by the system until they successfully complete.
2018-06-27 17:16:30 +02:00
Hans-Christoph Steiner
ea166fbc81 "Privileged Extension" pref requires special defaults handling
Fix privileged installer mode, broken by 5ffec23b2f3d367e8e04.  See the
javadoc string for Preferences.isPrivilegedInstallerEnabled() for more info
2018-06-27 17:16:30 +02:00