221 Commits

Author SHA1 Message Date
Peter Serwylo
2eab1d0e6d Replace "Recently updated" and "Whats new" with "New" tag.
As per the newer design iteration.

Also re-order the items on the main page so new items always come before
recently updated ones from the same day.
2017-03-08 10:34:23 +11:00
Peter Serwylo
a1a7427cd2 Added "Installed Apps" activity to top of settings.
This is as per the mockup in issue #840, and does the following:

 * Adds a new `PreferencesCategory` of "My Apps" at the top of the
   preferences screen.
 * Adds a "Manage Installed Apps" preference, and moves the
   "Repositories" preference into this category.
 * Repeals an existing change which prevented "updateable" apps from
   appearing in the list of "installed" apps. This is because the two
   lists of apps are no longer displayed alongside eachother.
 * Enhances the `AppListItemController` to also be able to display
   whether or not the currently installed version is the recommended
   version or not.
 * Also adds option to display whether the user has asked to ignore any
   updates for any specific apps.
2017-03-08 10:34:22 +11:00
Peter Serwylo
9acc34c9ba Tweak accessibility so that visually impaird people can use F-Droid well.
Things that are still not right:

 * BottomNavigationView doesn't read out the title of items when selected.
   Created this issue: https://code.google.com/p/android/issues/detail?id=230595&thanks=230595&ts=1482125499
 * TTS reader combines the app name and summary without a pause which is jarring.
 * Touching the background of the recycler view in the categories view reads all category names.
 * Likely other problems too.
2017-03-08 09:42:32 +11:00
Peter Serwylo
908d5f3a05 Added search floating action button to Overview and Categories screen.
Both times it launches the AppListActivity with an empty search box
focussed.
2017-03-08 09:42:32 +11:00
Peter Serwylo
7209ab87f5 Tweak some button styles with those added in !419.
The styles used by the app details showed good padding on either
side of the buttons text. This was because they had a certain amount
of screen space to fill up which resulted in nice empty space on either
side of the text. Other buttons do not have this type of layout, so
need to have a minimum amount of padding thrust upon them.

Required breaking out into values-v17 too, so refactored common styles
into base style to make this easier.
2017-03-08 09:42:10 +11:00
mvp76
083339f60e No need for custom attribute
From what I know, actionBarTheme and actionBarPopupTheme will do the
job.
2017-03-07 18:21:17 +11:00
Peter Serwylo
55824a491b Settings: Added preference fragment to the last tab in the main view.
This is a little bit flakey at this point, because the weird asynchronous nature of
adding fragments. If swiping to the second-to-last entry on the bottom navigation view,
it will populate the settings fragment in the UI and then it will dissapear. Need to
fix this.
2017-03-07 18:21:17 +11:00
Peter Serwylo
fff7999aac App List: Category "chip" and free text searching of apps
Show a "Chip" in the search box whcih indicates the user is viewing
a particular category. This chip:
 * Gets remtoved when the user presses backspace from in front of it.
 * Can be re-added by typing the name of a category and then a colon.
 * Follows the material design guidelines.
 * Has an accessibility hint that tells screen readers it is a category name.
2017-03-07 18:21:17 +11:00
Peter Serwylo
9bc72ff102 App list: Show a list of apps matching a particular category.
This populates a search box with the category name and shows a
clear button to the right and a back button to the left of the
text input.
2017-03-07 18:21:17 +11:00
Peter Serwylo
f5e6d73999 Categories: Show list of all categories in the main view.
This is different to the old categories drop down, because that also
included meta-categories of "Whats New" and "Recently Updated". Given
we now show them on the first page, this categories screen can do away
with them.

Each category entry loads a few apps to show to the user.

Note: The "View all" button next to each category doesn't currently
go anywhere. It will soon be hooked up to an app list that is filtered
to the selected category.
2017-03-07 18:21:17 +11:00
Peter Serwylo
53df5473f5 My Apps: Added the list of updateable apps to the main view.
Not fully featured yet, because it doesn't listen for broadcasts
from the installers, but it is shows the correct list of apps and
allows users to queue up downloads of all updateable apps.
2017-03-07 18:21:12 +11:00
Peter Serwylo
69b58c7646 Whats New: Added list of recently updated apps to the main view.
Smooshes the recently updated and recently added lists into one,
and adds a status line under each app saying which of the two it
is (i.e. "Recnelty Updated" or "Whats New".
2017-03-03 13:14:05 +11:00
Peter Serwylo
b151374a6c Introduce new main activity, currently mostly empty.
This activity so far has a bottom navigation bar with 5 tabs.
The tabs can be changed, but no content is shown.
2017-03-03 13:14:05 +11:00
Peter Serwylo
d8dc1698d6 Toolbar instead of ActionBar in ManageReposActivity. Remove need for Fragment in manage repos.
The fragment was quite straightforward to roll into the activity. Most
of the code moved across almost exactly as is.

Also added a theme for the toolbar so that in the future it will be
easier to support dark/night themes as well.
2017-03-03 13:14:05 +11:00
Peter Serwylo
30701ff9ac Change theme to not have an action bar.
This will temporarily break activities which depend on the action bar until
the following commits replace their dependencies with a Toolbar instead.
2017-03-03 13:14:04 +11:00
mvp76
a4c187f3e1 Add strings for first time installs 2017-02-28 20:56:35 +01:00
mvp76
f7e12b4f25 Icon fixes and general tweaks 2017-02-28 20:56:35 +01:00
mvp76
7efa62891d Use strings, async image loading, "unknown" status added. 2017-02-28 20:56:35 +01:00
Peter Serwylo
a93904d907 Added preference to manage repositories
As this is no longer a top level menu item, it is now the first item
in the settings, under "Updates".
2017-02-28 08:29:38 +11:00
Peter Serwylo
6a6cede4de More specific paddings round the "collapsable lists" at the bottom of app details.
Also tried a more specific naming scheme for dimens to make it clearer where
they are to be used. This increased the padding on the left/right of the collapsable
lists. It also decreased the padding above/below.
2016-12-21 23:05:15 +11: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
Daniel Martí
a8b84ff815 Add two new languages to list 2016-11-28 12:11:51 +00:00
mvp76
05f13df17a Separate adapter from rest of activity 2016-11-23 12:37:26 +01:00
mvp76
0855c0affe Change icon for versions (and add string!) 2016-11-18 16:07:18 +01:00
mvp76
7061e47a8c Fix toolbar icons 2016-11-18 15:39:53 +01:00
mvp76
d90cb040b1 Move some files and add donate section 2016-11-18 15:39:53 +01:00
mvp76
7469a1cdab Some layout and color fixes 2016-11-18 15:39:53 +01:00
mvp76
3eb2a5eb96 Added the links section, cleanup some code 2016-11-18 15:39:53 +01:00
mvp76
34450569b3 Initial work on details view 2016-11-18 15:39:53 +01:00
Hans-Christoph Steiner
7e7ec966ee improved internet state handling for updates, including metered
This introduces three network states:

1. completely disconnected
2. connected only via metered networks
3. connected via unlimited networks

This allows the update process to use bandwidth better, especially when the
user has enabled the "Only on WiFi" setting.  It also helps prevent silly,
cryptic error messages in the update process is triggered when there isn't
internet available.

I tested this with:

* 4G only, but not set up for internet
* 4G only, with internet
* 4G + WiFi
* WiFi only airplane mode
* no internet at all, full airplane mode

closes #793
closes #774
2016-11-14 16:03:37 +01:00
Peter Serwylo
f2a58ad67f Update priorities for default repos to go from 1-4 instead of 10 + 20 2016-10-06 03:03:02 +11:00
Hans-Christoph Steiner
a08a32020a add preference to control storing install history
For now, this is disabled by default and hidden in the expert preferences
since it doesn't do anything yet inside of F-Droid.  It is useful now for
whitelabel builds to fetch the install history from another app. #396
2016-09-29 12:09:50 +02:00
Hans-Christoph Steiner
f102ccff60 allow install history to be read from an ContentProvider
This allows a designated app to read the install history from F-Droid via a
ContentProvider.  The app is designated by the packageName defined in the
string install_history_reader_packageName.
2016-09-29 12:09:50 +02:00
Hans-Christoph Steiner
c02125db01 store install/uninstall history for later use
The install and uninstall history has lots of uses, including displaying
to the user in the app itself, reporting to the Device Administrator to
enable tracking of installs/uninstalls from the admin's app repo, etc.  It
can also be used as part of a "popularity contest" #396
2016-09-29 12:09:50 +02:00
Hans-Christoph Steiner
5c9dd1a11e basic support for repo push requests, configed in default_repos
This allows whitelabel versions of apps to specify built-in app repos that
have push requests accepted by default.  This is useful for the case where
there is a central manager of the core apps that are installed.

https://gitlab.com/fdroid/fdroidserver/issues/177
2016-09-28 23:36:11 +02:00
Hans-Christoph Steiner
d34a1285e8 convert default_repo.xml to more flexible format
This is a step towards supporting easy whitelabeling, using gradle flavors.
This allows the whitelabel version to set the default repos just by making
their own default_repos.xml in app/src/whitelabel/res/values.  That one
will then override the built-in F-Droid one.
2016-09-28 22:07:34 +02:00
Hans-Christoph Steiner
28198dddb4 rename default_repo.xml to default_repos.xml, there are many
Just to make it clear that there can be and are multiple repos configured
in the file.
2016-09-28 22:07:34 +02:00
Daniel Martí
3aad107b51 Add Icelandic to the list of languages
Added to weblate in the last commit.
2016-09-27 13:15:03 +01:00
Daniel Martí
012fe5e224 Add new Burmese/Myanmar language to the list
Rendering this on my computer is a pain, so patches welcome if I screwed
up the unicode since all I can see is squares.
2016-09-10 11:59:24 +02:00
Hans-Christoph Steiner
973174cc7b privileged mode means auto-downloads are actually installs
When the Privileged Extension is working, then enabling the preference
"Automatically download updates" will actually install those updates in the
background.  So the preference should communicate that to the user. So now
it serves as a global "allow background updates"

#16
closes #106
2016-09-01 17:49:52 +02:00
Aditya Bharadwaj
632eeff611 Update naming convention as per review. Add antifeatures list length check to filter anti-feature apps. 2016-08-26 21:48:53 -04:00
Aditya Bharadwaj
1f354a1b3f Add option to grey out apps requiring anti-features. 2016-08-26 21:48:53 -04:00
Hans-Christoph Steiner
c9e3643712 switch "Keep Cache Time" units to milliseconds
Both the Android task scheduler and the Java File operations want millis.
For "Forever", Long.MAX_VALUE is used.
2016-08-16 11:22:25 +02:00
Daniel Martí
a4458b7cdf Add new language to the list: Croatian 2016-07-13 14:47:30 +01:00
Peter Serwylo
aae87eb92e Extracted new API styles dependent on API 16 and 17 into values-17.
This involved the typical Android design pattern of a "Base" style in
`values/styles.xml`, then the an empty normal style which uses that Base style
as a `parent` also in `values/styles.xml`, and finally any API specific
styles in another version of the normal style in a `values/styles-v17` folder.

Same was done for android:actionBarStyle moving it into into values-v11.
This time, didn't worry about the base style, because there was not much to be
gained. by doing so.
2016-06-16 15:37:19 +10:00
Daniel Martí
4685d82ee6 Remove a couple of unused strings
Updates #684.
2016-06-14 11:45:07 +01:00
Daniel Martí
1f61259ae3 Add Thai to the languages list 2016-06-09 14:14:13 +01:00
Dominik Schürmann
f6cc716fac Remove first-time dialogs for extension installer
The root mechanism will not be useful in 5.1 and later and has been shown
to be error prone.

Fixes #636
2016-06-09 11:12:09 +02:00
Daniel Martí
4c7217d796 Add Tamil (ta) to the languages list 2016-06-08 23:32:44 +01:00