2985 Commits

Author SHA1 Message Date
Daniel Martí
7a220077c5 pull-trans: do not revert changes in HEAD
Using .. instead of ... means that changes in HEAD not yet pushed (and
hence not in the weblate branch) will be reverted.
2016-01-06 18:03:46 +01:00
Daniel Martí
51cf2db6ac Persian: fix format strings
Someone introduced lots of %I and and other weird format issues like %!.
Fixed all of them.

We normally catch these via Android's lint, but it appears that %I went
under its radar.

Fixes #530.
2016-01-06 17:58:57 +01:00
Daniel Martí
96187bda4c Bump to 0.98-alpha5 v0.98-alpha5 2016-01-05 21:18:44 +01:00
Daniel Martí
57f5180dae Bump Gradle to 2.9
I'd do 2.10, the current stable, but the android plugin seems to break
with it.
2016-01-05 09:24:02 +01:00
F-Droid Translatebot
e1510d2329 Pull translation updates from Weblate
Translators:

Adrià García-Alzórriz      Catalan
ageru                      French
Ajeje Brazorf              Sardinian
Allan Nordhøy              Norwegian Bokmål
Enol Puente                Asturian
Erwin Scheuch-Heilig       German
Karola Marky               Japanese
Ldm Public                 French
Marcelo Santana            Portuguese (Brazil)
Massimiliano Caniparoli    Italian
naofum                     Japanese
Reiner Herrmann            German
riotism                    Chinese (Hong Kong)
Tobias Bannert             German
ultrapeer                  Turkish
2016-01-05 09:03:37 +01:00
Peter Serwylo
4ae5045568 Merge branch 'pmd-fixes' into 'master'
Pmd fixes



See merge request !188
2016-01-05 07:10:11 +00:00
Daniel Martí
ea3c95832e Simplify some ifs
Sometimes joining them, removing unnecessary checks and removing
unnecessary levels of indentation.
2016-01-04 11:03:00 +01:00
Daniel Martí
8e193cecff Apk: Don't create Integer object just to compare 2016-01-03 18:55:15 +01:00
Daniel Martí
87fb293348 Merge branch 'acra-dialog-styles' into 'master'
Use custom layout for ACRA report dialog, not default one.

Styling the default dialog was difficult and it doesn't obey some
of the guidelines provided by the Android design docs:

 https://www.google.com/design/spec/components/dialogs.html#dialogs-specs
 (see "Content Guidelines")

This change introduces a custom dialog extending the base ACRA reporting
activity. Specifically, it introduces a padding of 24dp around the dialog
contents.

I couldn't find design specs on the specific spacing between different elements _within_ the dialog, so I used the same spacing of 20dp suggested to use between the title and the main body of the dialog.

At the very least, this change should make it easier to update styles in the future if somebody suggests improvements to the layout of the dialog.

### Before

![acra-dialog.1](/uploads/9540290fcbe245f8b573506c6a982332/acra-dialog.1.png)

### After

![acra-dialog.2](/uploads/2cad0213101f53edfd32dab69cafa757/acra-dialog.2.png)


See merge request !186
2016-01-03 17:42:17 +00:00
Peter Serwylo
a99767f3a6 Remove icon, add scroll view to crash report dialog.
Scroll view helps with smaller screens. Alert dialog icons are not
part of the material design spec so that was removed.
2016-01-03 15:48:44 +11:00
Daniel Martí
c2c8c55862 Merge branch 'fix-519--crash-during-swap' into 'master'
Partially revert f2212e33. Make some constructors public again.

There is some code in the Android SDK using reflection to find the constructor
of one of our custom views. As such, a previous change in f2212e33 broke this
code because it made constructors package local. This partially reverts the bit
of f2212e33 which pertains to the constructors accessed using reflection.

Fixes #519.

See merge request !187
2016-01-03 01:03:14 +00:00
Peter Serwylo
d24a6b71b9 Partially revert f2212e33. Make some constructors public again.
There is some code in the Android SDK using reflection to find the constructor
of one of our custom views. As such, a previous change in f2212e33 broke this
code because it made constructors package local. This partially reverts the bit
of f2212e33 which pertains to the constructors accessed using reflection.
2016-01-03 11:06:52 +11:00
Daniel Martí
03c0ef5f65 Make checkstyle happy again 2016-01-02 20:00:16 +01:00
Daniel Martí
e1058ba46d Remove unused classes
These were useful at some point, but stopped being used some time ago.
Should have been removed then.
2016-01-02 19:19:16 +01:00
Daniel Martí
d0c8fecfd3 Remove some public fields and methods 2016-01-02 19:13:11 +01:00
Daniel Martí
e34192573d Remove some unused code 2016-01-02 19:04:11 +01:00
Daniel Martí
ae5fb8e8fc Run Studio's imports optimizer 2016-01-02 18:47:59 +01:00
Peter Serwylo
49d01e0ca3 Use custom layout for ACRA report dialog, not default one.
Styling the default dialog was difficult and it doesn't obey some
of the guidelines provided by the Android design docs:

 https://www.google.com/design/spec/components/dialogs.html#dialogs-specs
 (see "Content Guidelines")

This change introduces a custom dialog extending the base ACRA reporting
activity. Specifically, it introduces a padding of 24dp around the dialog
contents.
2016-01-02 13:42:57 +11:00
Daniel Martí
e29b6cbdaf Remove code that worked around #334 (now fixed) 2015-12-29 22:42:49 +01:00
Daniel Martí
3a8051898a checkstyle: be more strict with curly rules 2015-12-29 22:18:38 +01:00
Daniel Martí
c1d4248723 checkstyle: Check comment indentation too 2015-12-29 22:10:19 +01:00
Daniel Martí
9efe173380 checkstyle: Finally add proper indentation checks
Somewhat painful conversion, but should go much smoother from here
onward.
2015-12-29 22:00:23 +01:00
Daniel Martí
dd4420965d checkstyle: Add more rules that we already obey 2015-12-29 21:43:29 +01:00
Daniel Martí
7ed03bdcba checkstyle: EmptyLineSeparator is now fixed 2015-12-29 12:59:21 +01:00
Daniel Martí
0f27374452 checkstyle: forbid inner assignments 2015-12-29 12:55:29 +01:00
Daniel Martí
6a0c230493 Add NonFreeAssets anti-feature 2015-12-29 12:36:15 +01:00
Daniel Martí
0a0dc0d596 AppDetails: don't hide unknown anti-features
This is thinking of the future, when new AFs are added and the installed
client doens't know about them yet. Showing the name is better than not
showing anything at all.
2015-12-29 12:32:21 +01:00
Daniel Martí
975ce94246 Bump checkstyle to 6.14 2015-12-29 12:27:15 +01:00
Daniel Martí
209ed1dc62 ACRA: use reports@f-droid.org 2015-12-29 12:10:51 +01:00
F-Droid Translatebot
1b3080c07d Pull translation updates from Weblate
Translators:

Adrià García-Alzórriz    Catalan
Ajeje Brazorf            Sardinian
Alberto Moshpirit        Spanish
Allan Nordhøy            Norwegian Bokmål
Enol Puente              Asturian
Kalle Lampila            Finnish
Marcelo Santana          Portuguese (Brazil)
Mladen Pejaković         Serbian
naofum                   Japanese
Tobias Bannert           German
Андрій Бандура           Ukrainian
Саша Петровић            Serbian
2015-12-29 12:03:44 +01:00
Peter Serwylo
352b87f1c4 Merge branch 'acra' into 'master'
Add opt-in crash reporting via ACRA

Fixes #398.

Screenshot: https://imgur.com/E3uNIBY

E-mails to team@, so the reports are somewhat private yet still available to developers.

Using e-mail over POST has two advantages:
* Doesn't require a specific server handling the form submits
* Makes interaction with users who reported issues easy (we can just reply to the e-mail to ask for more info, etc)

It also has a disadvantage, though:
* It requires an e-mail app to be present and set up in the device

Most phones are already logged in to user's Google accounts, though, and a large part of those have the gmail app or the stock mail app installed. Those who don't have Google installed are probably technical enough to have set up a mail client like K9 on their own.

See merge request !185
2015-12-26 22:55:36 +00:00
Daniel Martí
b22466ee66 Add opt-in crash reporting via ACRA
Fixes #398.
2015-12-26 23:35:48 +01:00
Daniel Martí
76cda91e64 Use .FDroidApp in the manifest
Like the rest of classes, e.g. activity names.
2015-12-26 19:04:19 +01:00
Daniel Martí
892b47c060 Merge branch 'rename-id-to-package-name' into 'master'
Renaming id -> packageName in local variables/method args/comments/etc.

Building on the previous MR. This finishes renaming "id" in the Java code to "package name" where appropriate. It still leaves the database symbols as "id" because they are not worth the effort to rename at this point in time. 

See merge request !184
2015-12-26 10:10:46 +00:00
Peter Serwylo
c36529f445 Renaming id -> packageName in local variables/method args/comments/etc. 2015-12-26 15:12:58 +11:00
Daniel Martí
feb7a2bd09 Merge branch 'rename-id-to-package-name' into 'master'
Rename id to package name

As suggested in issue #37, "id" is not the correct terminology to use in the code base. Instead, it should use "package name". I'm doing this now before I begin work on #511, where it is helpful to recoup the "id" name, as "rowid" in sqlite refers to a row's integer primary key.

This changes the following Java symbols:
 * `Apk.id` -> `Apk.packageName`
 * `App.id` -> `App.packageName`
 * `ApkProvider.DataColumns.ID` -> `ApkProvider.DataColumns.PACKAGE_NAME`
 * `AppProvider.DataColumns.ID` -> `AppProvider.DataColumns.PACKAGE_NAME`
 * A small number of comments referring to `id`.

It does _not_ change (and likely will not benefit from changing):
 * Any database columns, these are all still `id`.
 * Anything pertaining to the index, which still uses `id`.

It does _not_ change (but future MR's will change):
 * Local variables referring to `id`
 * Method names referring to `id`

By not changing any string literals, only changing the name of variables and constants, and ensuring that the original variables/constants are no longer present, then in theory if this compiles is should be good to merge.

See merge request !183
2015-12-24 22:38:22 +00:00
Peter Serwylo
038816e32a Renamed Apk.id to Apk.packageName 2015-12-25 08:04:52 +11:00
Peter Serwylo
5779736913 Renamed App.id to App.packageName 2015-12-25 08:04:48 +11:00
Peter Serwylo
756df4d635 Renamed Java constant APP_ID to PACKAGE_NAME
In both the ApkProvider and the AppProvider.

Left the underlying database name as 'id' for now because it is
not as important or visible.
2015-12-25 08:04:41 +11:00
Daniel Martí
6d7d19433e Bump to 0.98-alpha4 v0.98-alpha4 2015-12-24 17:27:21 +01:00
Daniel Martí
9baad0fc3e Run remove-unused-trans 2015-12-24 17:25:36 +01:00
F-Droid Translatebot
2c2b826640 Pull translation updates from Weblate
Translators:

Enol Puente                Asturian
Martin Lacina              Slovak
Massimiliano Caniparoli    Italian
2015-12-24 17:18:23 +01:00
Daniel Martí
62885db7c4 Merge branch 'fix-517--repo-update-sadness' into 'master'
Make sure to insert, rather than update apks when updating repo.

(Actually) fixes #517. I had a hunch the other bug (though problematic) wasn't actually the fix for #517. I am confident that this one _is_ the fix, although I am still struggling to reproduce specific circumstances reported by others. I tracked this down when I did an update this morning and noticed a new app without any versions - so in a way I kind of reproduced it, but I can't reproduce it at will.

The problem was that again, only the `vercode`s of apks were being
compared to see if they were the same, rather than `vercode` and `id`.
The result is that some new apks will incorrectly be asked to execute
an `UPDATE` query rather than an `INSERT`. As such, they don't end
up in our database at all because the `UPDATE` will not run against
any row at all.

See merge request !182
2015-12-24 16:16:12 +00:00
Peter Serwylo
60a3804c5a Make sure to insert, rather than update apks when updating repo.
Fixes #517.

The problem was that again, only the `vercode`s of apks were being
compared to see if they were the same, rather than `vercode` and `id`.
The result is that some new apks will incorrectly be asked to execute
an `UPDATE` query rather than an `INSERT`. As such, they don't end
up in our database at all because the `UPDATE` will not run against
any row at all.
2015-12-24 09:59:33 +11:00
Peter Serwylo
b7eb30a69b Merge branch 'fix-517--repo-update-sadness' into 'master'
Correctly purge removed apks.

There were two bugs in this code that have been fixed. Both were
introduced while moving to a lower memory consumption version of
the repo updater for #324.

They were found while investigating #517, although I'm not confident
that they are to do with the specific problem in that issue. It is
possible, because it is part of the code to do with purging apks
from the database, but I'd like to do further investigations into
the code before declaring that this is actually related to that issue.

In the mean time, this includes important fixes, and should probably
go out in an alpha once merged.

The first is that for each app which is updated by a particular repo,
it was not correctly asking the question: "Which apks belonging to
this apk, and provided by this repo, are no longer provided by this
repo?". It was accidentally only comparing the version number of
existing apks in the DB and new apks from the index. This ensures
that the apks being checked to see if they need to be removed or
not are those with the same package name AND the same version code
(provided by the same repo).

The second bug is that when it was persisting a set of apps + apks
to the database, it would ask for existing apks already in the
database for these apps. In this case, there was a bug where of
the 50 apps being persisted, it would only retrieve the first of
these 50 apps from the database to decide if it needed to be
cleaned up or not. Now, it correctly retrieves data from the DB
belonging to all 50 apps.

See merge request !181
2015-12-22 20:34:44 +00:00
Peter Serwylo
70bf49c3ac Correctly purge removed apks.
There were two bugs in this code that have been fixed. Both were
introduced while moving to a lower memory consumption version of
the repo updater.

The first is that for each app which is updated by a particular repo,
it was not correctly asking the question: "Which apks belonging to
this apk, and provided by this repo, are no longer provided by this
repo?". It was accidentally only comparing the version number of
existing apks in the DB and new apks from the index. This ensures
that the apks being checked to see if they need to be removed or
not are those with the same package name AND the same version code
(provided by the same repo).

The second bug is that when it was persisting a set of apps + apks
to the database, it would ask for existing apks already in the
database for these apps. In this case, there was a bug where of
the 50 apps being persisted, it would only retrieve the first of
these 50 apps from the database to decide if it needed to be
cleaned up or not. Now, it correctly retrieves data from the DB
belonging to all 50 apps.
2015-12-22 22:53:01 +11:00
Peter Serwylo
07eb633f0f Merge branch 'master' into 'master'
Add HTTP Basic Authentication to ApkDownloader

In order to download protected files, the APKDownloader must be able to supply HTTP Basic Authentication headers to the server.

See merge request !178
2015-12-22 08:40:08 +00:00
Christian Morgner
25cbf98390 Fixed checkstyle errors. 2015-12-21 10:25:29 +01:00
Daniel Martí
4bbd0d83ef Add new language zh-rTW to settings list 2015-12-21 10:14:10 +01:00
F-Droid Translatebot
753e983339 Pull translation updates from Weblate
Translators:

Ajeje Brazorf              Sardinian
Green Lunar                Hebrew
Ldm Public                 French
lucnsy                     Chinese (China)
Massimiliano Caniparoli    Italian
Mladen Pejaković           Serbian
naofum                     Japanese
Nordlenningen              Norwegian Bokmål
Sérgio Marques             Portuguese (Portugal)
Tobias Bannert             German
Vdragon, V字龍            Chinese (Taiwan)
2015-12-21 09:58:45 +01:00