242 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
89e103fc23 Bump to 0.103-alpha1 2017-04-01 21:15:18 +02:00
Hans-Christoph Steiner
d769dcfc60 support new index-v1 format using Jackson parser
This adds support for parsing the new index-v1.json data as defined in
fdroidserver!221.  This new index metadata format is required to
support localization, graphics, screenshots, etc.

refs #15
2017-03-31 09:09:31 +11:00
Peter Serwylo
c59899cbff Ensure support lib 25.2.0
The default behaviour of gradle when encountering a transitive
dependency which is the same as an explicit dependency, but where the
transitive dependency has a higher version, is to bump the depdendency
which was explicitly added. This meant that the addition of the
bottom navigation library implicitly bumped our support lib to 25.3.0
due to its dependence on it.

The options are:
 * Change the 3rd party lib to support 25.2.0 instead of 25.3.0.
 * Explicitly exclude the transitive support lib dependency in our build
   script (what we have done in the past, e.g. with acra).
 * Bump our explicit dependency.

Given the nature of the changes from 25.2.0 and 25.3.0, it seemed like
it was simplest to bump our dep. However, there is a bug
https://code.google.com/p/android/issues/detail?id=251302 which causes
a function we depend on in SwitchCompat to require API 14. Therefore,
this change excludes the 25.3.0 transitive dependencies, allowing our
25.2.0 dep to get used.

In the process, I've noted that there were a few places we opted for
excluding the transitive dependency in the past. These have now been
removed because we have a higher version than they do, and thus they
will no longer drag our old version forward.
2017-03-22 09:47:12 +11:00
Peter Serwylo
c24ccae02c Use 3rd party bottom nav library which isn't based on support lib one.
The previous dependency extended the support library bottom nav. It did
this at the expense of lots of reflection. This is pretty brittle and
likely to break in future releases as the support lib gets updated. In
the mean time we need to have a fully working bottom nav, so this commit
includes a different dependency.

Most 3rd party bottom navigation panes look great. All that I found
require at least API 11, mostly API 14 (due to animations I suspect).
I've forked one of the most popular ones on GitHub and made it support
back down to API 10. My fork is added as a dependency until upstream
accepts the PR.

If they don't ever, then we can reconsider what our options are.

The two times I've swapped the bottom nav implementation have both been
trivial. The code generally only touches the MainActivity and its
layout.
2017-03-22 08:55:27 +11:00
Peter Serwylo
43a9a9d229 Add dependency to make bottom nav work better + bump support libs.
Right now, it will allow us to set the selected item more nicely.
In the near future, we will use this dependency to control the visual
display of the bottom nav better (e.g. icons/text appearance/animation).

Note that there is a bit of development going on at the Android team,
and the official bottom navigation view may oneday support all of these
features. In that case, we should probably switch back.
2017-03-22 08:55:27 +11:00
Peter Serwylo
23d40dbca0 Added dependency to make working with complex RecyclerViews more manageable.
There were a few different options around, but some of the best ones
which provided the most flexibility when adding diverse/complex
viewTypes to a recycler view target a minsdk above 10.

The "adapterdelegates" library still offers a big improvement on vanila
adapters, especially for the Updates view.
2017-03-22 08:55:26 +11:00
Peter Serwylo
ce946f4257 Bump robolectric version
There were troubles with the particular version of gradle plugin and
gradle that we were using, which has since been fixed by robolectric.
2017-03-14 09:49:55 +11:00
mvp76
a814792594 Break out library version for easier updates in the future 2017-03-07 18:21:17 +11:00
Peter Serwylo
ba82cfcfc5 Bumped support lib versions. Added dependencies for new UI.
The following official Android support libraries were added:
 * recyclerview-v7
 * cardview-v7
 * design
 * support-vector-drawable
 * constraint-layout
 * palette
2017-03-03 13:14:01 +11:00
mvp76
40a061ae73 Fix for old devices
They can't use vector drawables in notifications. Also, groups can not
be used, see http://stackoverflow.com/a/34953411.
2017-02-28 20:56:35 +01:00
Hans-Christoph Steiner
bfc1060bfb Merge branch 'new-ui--app-details-2' into 'master'
Tweak some styles in AppDetails2

See merge request !426
2017-02-24 15:27:29 +00:00
Daniel Martí
3d20a07c8a Update CI image and build-tools to 25.0.2
The new CI image also contains the support repo r41, with the support
libs version 25.1.0.
2016-12-23 12:55:28 +01:00
Peter Serwylo
d54c138a1d Work on the "Donate" styles.
Still needs some better assets for the actual donate buttons, but now it includes
the relevant text about donating to developers. It also puts the donation options
in a grid layout and lets them flow across so that if there is more than three, they
will end up on the second line.
2016-12-21 23:05:08 +11:00
Peter Serwylo
f9f0a0f91c Merge branch 'app_details_749' into 'master'
App details 749

The new App Details screen (issue #749), now accessible by long-clicking on an app in the application list.

See merge request !419
2016-12-08 01:19:49 +00:00
Peter Serwylo
46eb6ee3b4 Added initial test for AppDetailsRecyclerViewAdapter.
Doesn't do anything except create an app with no versions,
no donate links, anything like that, and ensure that the adapter
is able to create the view holders for each resulting item.

In the future we can beef this up to check more exotic conditions,
such as calling `updateItems(App)` with different apps, each
with different combinations of versions, donation links, permissions,
etc.
2016-12-01 12:15:31 +11:00
Daniel Martí
af24db2d14 Bump to 0.102 2016-11-28 12:15:30 +00:00
mvp76
3b23ea019b Reset build files to release 2016-11-25 10:07:56 +01:00
mvp76
f355232bd5 Build changes 2016-11-18 15:39:53 +01:00
Daniel Martí
99216d923a Bump to 0.102-alpha3 2016-11-16 22:06:03 +00:00
Daniel Martí
6f0b33a092 Bump to 0.102-alpha2 2016-11-02 21:19:34 +00:00
Daniel Martí
04c7176a2a Bump checkstyle to 7.2 2016-10-31 14:19:30 +00:00
Daniel Martí
28853fb2ec Bump ACRA to 4.9.1
Changes: https://github.com/ACRA/acra/wiki/ChangeLog#acra-491-12-oct-2016
2016-10-31 14:07:41 +00:00
Daniel Martí
3af5416f09 Bump to new CI image, bump buildTools to 25 2016-10-23 17:09:17 +01:00
Hans-Christoph Steiner
2350b4e694 move shareable test classes into new separate section: testShared
This allows some of the mock classes to be shared across Robolectric and
emulator tests.
2016-10-11 08:44:51 +02:00
Hans-Christoph Steiner
a5a90954bc fix lint UnsafeProtectedBroadcastReceiver
Android won't protect us from other apps sending other Intents to these
receivers, so at least check that the action string matches what its
looking for.  This is based on a lint recommendation.
2016-10-10 20:15:47 +02:00
Hans-Christoph Steiner
a16589eab0 bump to errors: AppCompatMethod, NestedScrolling, StringFormatCount
These are things that we definitely want to be checking, and making them
lint errors rather than warnings means the CI build will fail.
2016-10-10 19:57:56 +02:00
Daniel Martí
663d981c7a Bump to 0.102-alpha1 2016-10-06 22:37:09 +01:00
Daniel Martí
36378acc7b gradle: bump plugin version to 2.2.0
Also update the dependency declarations since the current ones break
with the new plugin/gradle version.

https://stackoverflow.com/questions/39602587/could-not-get-unknown-property-assemblerelease-for-project
2016-09-28 21:58:27 +01:00
Daniel Martí
ae78042bda Bump versionCode to 0.102-alpha0
This enables upgrading from 0.101 to master until alpha1 is out.
2016-09-28 20:44:26 +01:00
Hans-Christoph Steiner
4598a78bfd support TLS 1.2 on all repos
Update to the latest NetCipher, which now fully supports SNI, in order to
support TLS 1.2 on all supported platform levels.  Without this, a repo
that is TLS 1.2 only will be unusable on all but the most recent versions
of Android.

#431
2016-09-28 11:35:57 +02:00
Hans-Christoph Steiner
dd134c50bc update to latest support lib bugfix version: v24.2.1 2016-09-27 22:59:17 +02:00
Daniel Martí
fdc70b0f9d Bump build-tools and docker image version
The latter is simply to include the newer version.
2016-09-10 12:02:12 +02:00
Daniel Martí
fde227e889 Bump to 0.101-alpha6 2016-08-27 08:37:34 +09:00
Hans-Christoph Steiner
0577ecfc53 update support libs to latest (24.2.0) to hopefully fix crashes
Based on ACRA reports, there are some mystery UI related stacktraces that
do not have org.fdroid.fdroid lines in them.
2016-08-26 10:47:46 +02:00
Hans-Christoph Steiner
691545f065 use gradle-witness for all included libs
use the automatic method for generating the gradle-witness block so its
easy to keep it updated.
2016-08-26 10:47:46 +02:00
Hans-Christoph Steiner
3adfbc66aa sort gradle-witness lines so its easy to see changes 2016-08-26 10:42:39 +02:00
Daniel Martí
a9944f7a22 Bump robolectric to 3.1.2 2016-08-21 11:07:47 +02:00
Daniel Martí
16170d6794 Bump to 0.101-alpha5 2016-08-20 19:07:25 +02:00
Daniel Martí
3c5f8756f4 Bump to 0.101-alpha4 2016-08-02 11:25:30 +02:00
Dominik Schürmann
0fd1d5ae4c Move Privileged Extension to separate repo 2016-08-01 23:02:57 +02:00
Daniel Martí
3726b2b7fa gradle: bump support libs to 24.1.1
Minor bugfix release.

Also bump the CI image with the new stuff.
2016-08-01 00:59:24 +02:00
Daniel Martí
d41cfe85d6 gradle: bump buildToolsVersion to 24.0.1 2016-07-31 18:40:06 +02:00
Daniel Martí
217bde1290 gradle: bump checkstyle, robolectric and PMD versions
All minor bugfix releases.
2016-07-31 16:41:25 +02:00
Daniel Martí
f9bfe2a877 Merge branch 'api-24' into 'master'
Api 24

Based on https://gitlab.com/fdroid/fdroidclient/merge_requests/352 with fixes for robolectric

See merge request !360
2016-07-25 12:58:46 +00:00
Daniel Martí
53e812e198 Bump to 0.101-alpha3 2016-07-25 13:19:16 +02:00
Daniel Martí
f17482f1eb Bump compile/target sdk versions to 24 2016-07-13 16:08:55 +01:00
Daniel Martí
8d60e70f5d Bump buildToolsVersion to 24.0.0 2016-07-13 14:59:14 +01:00
Daniel Martí
bd0efe8ffa Bump to 0.101-alpha2 2016-07-06 20:22:02 +01:00
Daniel Martí
6d52bc1022 Revert to build-tools 23 until we can have 64-bit
As long as we're stuck with 32-bit on the buildserver, avoid both target
and build-tools 24. Necessary to do an alpha.
2016-07-06 11:38:25 +01:00
Daniel Martí
7fe15e6c7d PMD: bump to 5.5.0 2016-07-04 11:32:29 +01:00