Commit Graph
5361 Commits
Author SHA1 Message Date
Hans-Christoph Steiner 6bcc1f2e68 fix crasher caused by wrong init
Also, app.installedApk.sig is set in App.initInstalledApk()
from 3a5ecc5e8e

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 5ffec23b2f.  See the
javadoc string for Preferences.isPrivilegedInstallerEnabled() for more info
2018-06-27 17:16:30 +02:00
Hans-Christoph Steiner 74cfbb9658 gitlab-ci: only run deploy_nightly if DEBUG_KEYSTORE is set 2018-06-27 17:16:30 +02:00
Hans-Christoph Steiner 6cb54e8821 gitlab-ci: name job using all key components: test_lint_pmd_checkstyle 2018-06-27 17:16:30 +02:00
Umang 4d9f3ffa29 Highlight Installed App version 2018-06-27 18:27:13 +05:30
Hans-Christoph Steiner 2e802fc6e4 version code 1003002 1.3-alpha2 2018-06-25 22:55:33 +02:00
Hans-Christoph Steiner 8d62f2a27a update CHANGELOG 2018-06-25 22:55:33 +02:00
Hans-Christoph Steiner 6a3de3aab4 Merge branch 'weblate' into 'master'
Weblate

See merge request fdroid/fdroidclient!699
2018-06-25 20:46:18 +00:00
Hans-Christoph Steiner 9ed2539ea5 Weblate 2018-06-25 20:46:18 +00:00
Hans-Christoph Steiner 407e545a24 Merge branch 'notification-preferences' into 'master'
notification preferences

See merge request fdroid/fdroidclient!698
2018-06-25 20:44:09 +00:00
Hans-Christoph Steiner 4292832736 show Updating progress notification based on "available updates" pref
The notification that shows the download/parse progress of the index update
is now controled by the "Show available updates" preference.  That means it
will not be shown at all in the notifications bar if that preference is
disabled.  There will still be the header inside of F-Droid.  Ideally, the
Updating process would be shown in the Updates tab.
2018-06-25 21:22:12 +02:00
Hans-Christoph Steiner d8d043125b add expert preference to disable all notifications
This preference is meant for whitelabel builds that are meant to be
entirely controlled by the server, without user interaction, e.g.
"appliances".  Some users have asked for such a thing, so it makes sense to
have it available as an expert preference.  In general, we want to ensure
that installs/updates always show a notification so that the user is aware
of what is being installed on their computers.  That is the same policy as
other app stores like Google Play, etc.
2018-06-25 21:22:07 +02:00
Hans-Christoph Steiner 5771908f90 make Expert preference show/hide all the expert preferences
This should make them less scary to people who do not want to see them at
all.  It also means that there can be quite a few expert preferences without
making the list super long for most users.
2018-06-25 21:11:00 +02:00
Hans-Christoph Steiner 654d2ca40e Merge branch 'whitelabel-overhaul' into 'master'
whitelabel overhaul

See merge request fdroid/fdroidclient!692
2018-06-25 18:48:18 +00:00
Hans-Christoph Steiner 9e2800a9b9 Merge branch 'fix-up-mirrors' into 'master'
Fix up mirrors

See merge request fdroid/fdroidclient!697
2018-06-25 15:32:54 +00:00
Hans-Christoph Steiner f1f56abd0f try the next mirror on any network/HTTP/SSL errors
This labels all network, HTTP, and SSL related errors as CONNECTION_FAILED
so that the mirror selection logic will try the connection again with a new
mirror.
2018-06-25 11:58:21 +02:00
Hans-Christoph Steiner 06e922a35e when adding new repos via Intents, clean out Activities from the Task 2018-06-25 11:58:19 +02:00
Hans-Christoph Steiner 1a7c73064f fix off-by-one error when adding user mirrors to an existing repo 2018-06-25 11:58:15 +02:00
Hans-Christoph Steiner 654c5313de reorder gradle "android" sub-blocks in standard order
https://developer.android.com/studio/build/build-variants
2018-06-18 16:46:26 +02:00
Hans-Christoph Steiner 91b070675d mark old "cacheDownloaded" pref as deprecated 2018-06-18 16:46:26 +02:00
Hans-Christoph Steiner 5ffec23b2f set default values of preferences only in preferences.xml
This removes a layer of redundancy where there were defaults set in the
Preferences class, as well as in preferences.xml.  This makes it possible
for whitelabel versions to change the default values of the preferences by
changing it only in preferences.xml.
2018-06-18 16:46:26 +02:00
Hans-Christoph Steiner a5d642911d move all main preference handling to Preferences class 2018-06-18 16:46:26 +02:00
Hans-Christoph Steiner 74a2b25dfc dynamically assign menu items to bottom nav tabs
This loads menu/main_activity_screens.xml and stores the item IDs as the
positions for the bottom nav tabs.
2018-06-18 16:46:26 +02:00
Hans-Christoph Steiner c87f6a64f9 get "basic" flavor building and running 2018-06-18 16:46:26 +02:00