Client merge requestshttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests2015-05-08T12:11:47Zhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/73Fix #241: Text is too faint in Material "Light" theme.2015-05-08T12:11:47Zusername-removed-124398Fix #241: Text is too faint in Material "Light" theme.I also rebased material-design on master.I also rebased material-design on master.materialusername-removed-25042username-removed-25042https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/94Improve details2015-06-14T16:09:09Zusername-removed-124398Improve detailsI make a new MR because this wants to merge from the F-Droid branch.
TODO:
- Add [icons](https://gitlab.com/fdroid/fdroidclient/merge_requests/93#note_1344254)I make a new MR because this wants to merge from the F-Droid branch.
TODO:
- Add [icons](https://gitlab.com/fdroid/fdroidclient/merge_requests/93#note_1344254)0.95username-removed-124398username-removed-124398https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/95Material Design2015-06-18T21:17:42Zusername-removed-124398Material DesignSimilar to !94, this wants to merge from the F-Droid branch.
Old MR is !84.Similar to !94, this wants to merge from the F-Droid branch.
Old MR is !84.materialhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/162Ensure the "no apps to display" doesn't overlap with the category spinner.2015-11-06T22:43:33Zusername-removed-25042Ensure the "no apps to display" doesn't overlap with the category spinner.There is no layout .xml file for the updated/installed list,
but there is for the available apps list. As a result, the `TextView` containing
the empty list message is added dynamically. With the recent improvements to
the category sp...There is no layout .xml file for the updated/installed list,
but there is for the available apps list. As a result, the `TextView` containing
the empty list message is added dynamically. With the recent improvements to
the category spinner, a `RelativeLayout` was used instead of a `ListView`. To
remedy this, the layout has been augmented to ensure the dynamically added
`TextView` still displays correctly.
*Before:*
![before](/uploads/15e8dca7a98c6ed2e302e33934cddd52/before.png)
*After:*
![after](/uploads/88de17059d84c6c2bf97d108f3504905/after.png)https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/177Search as the user types2015-12-16T11:50:37Zusername-removed-25042Search as the user typesFixes #323.
This does away with the separate `SearchResult` and instead applies the search to the currently viewed tab on the main screen (Available, Installed, Updates). When filtering the Available list, it filters the currently sel...Fixes #323.
This does away with the separate `SearchResult` and instead applies the search to the currently viewed tab on the main screen (Available, Installed, Updates). When filtering the Available list, it filters the currently selected category.
Note however that there are still times when the old style `SearchDialog` will be shown over the top of the action bar rather than the `SearchView` within the action bar. These times include:
* When a user with a hardware keyboard starts typing from the main screen.
* On older devices with a "search" hardware button.
* Probably some other cases (I think when there is not enough screen real estate, but haven't seen that happen).
In cases where this dialog is shown, filtering the lists as you type does not seem to be an option. I tried to figure out how to do that, but failed. If someone else figures it out, that would be great. However, when the search is submitted, it will hide the `SearchDialog` and populate the `SearchView`, focus it, and apply the search appropriately.
There is a script in the `F-Droid/tools/` subdirectory which will consecutively send various intents to F-Droid relating to search. This includes Play, market, Amazon search links. For good measure, I also made it send intents to do with viewing app details. This should probably be made into a proper instrumented test at some point, but I didn't have the time to figure out how to do that. Maybe a project for future @pserwylo.
One unknown is the performance implications. There is no problems on my Nexus 4 with Android 5.0. My Chinese/ebay/$30/Android 2.3.4 device seems good enough too.https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/265Misc fixes/improvements to apk downloading2016-04-22T16:59:11Zusername-removed-25042Misc fixes/improvements to apk downloadingThis started as a fix to #625, but quickly turned into a mini rampage to fix and/or improve a few different things in the `DownloaderService`. Hopefully the commits are self explanatory as to what they fix, but of course feel free to ask...This started as a fix to #625, but quickly turned into a mini rampage to fix and/or improve a few different things in the `DownloaderService`. Hopefully the commits are self explanatory as to what they fix, but of course feel free to ask questions if you have any.0.100https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/261Show progress bar in download notification.2016-11-27T17:52:20Zusername-removed-25042Show progress bar in download notification.This enhances the download notification to include a progress bar of the downloads progress.
(It doesn't show the actual size of the download or the number of bytes downloaded in text yet. Need to think about internationalizing this f...This enhances the download notification to include a progress bar of the downloads progress.
(It doesn't show the actual size of the download or the number of bytes downloaded in text yet. Need to think about internationalizing this from the `AppDetails` `updateProgress` method so that it is not copy-pasted in two places.)https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/292Don't allow download notifications to be cancelled, other than our "Cancel" a...2016-11-27T17:52:21Zusername-removed-25042Don't allow download notifications to be cancelled, other than our "Cancel" action on them.*NOTE: To be cherry-picked into stable-v0.100*
As a user, I expect removing a notification of a pending action to cancel that pending action. This change makes the pending notifications uncancellable, unless users use our cancel actio...*NOTE: To be cherry-picked into stable-v0.100*
As a user, I expect removing a notification of a pending action to cancel that pending action. This change makes the pending notifications uncancellable, unless users use our cancel action added to the events by @paresh. If the user is on an older device that doesn't support these type of rich notifications, then they will need to touch the pending download notification, which will take them to the `AppDetails` activity for that app. From there, they can cancel the install, which will remove the app from the pending download queue.
Until the notifications are reworked, this is the simplest solution. In the near future, the notifications will likely be combined into one more intelligent notification with better defined semantics.0.100https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/235Fix version upgrade string for RTL languages2016-12-12T17:37:03Zusername-removed-56399Fix version upgrade string for RTL languagesIn right-to-left languages _forward_ is the direction to the left, so leftwards arrow should be used to indicate upgrade:
![upgrade-arrow-rtl](/uploads/238dd85c33c92336e71357e4250aaef3/upgrade-arrow-rtl.png)
For left-to-right langu...In right-to-left languages _forward_ is the direction to the left, so leftwards arrow should be used to indicate upgrade:
![upgrade-arrow-rtl](/uploads/238dd85c33c92336e71357e4250aaef3/upgrade-arrow-rtl.png)
For left-to-right languages it remains the same:
![upgrade-arrow-ltr](/uploads/5e06ace9e6bf868ed89684c274f4e813/upgrade-arrow-ltr.png)
Closes #609.https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/426Tweak some styles in AppDetails22017-02-24T15:27:32Zusername-removed-25042Tweak some styles in AppDetails2Identified a bit of low hanging fruit for brining the new `AppDetails2` screen more in line with that of #749. Will need to make some better buttons for Bitcoin/Flattr/Litecoin - but that should be straightforward to replace as they are ...Identified a bit of low hanging fruit for brining the new `AppDetails2` screen more in line with that of #749. Will need to make some better buttons for Bitcoin/Flattr/Litecoin - but that should be straightforward to replace as they are just drawables in the `res/` directory.
**Current view:**
![current](/uploads/d53609612e3f139e520c3d509f437851/current.png)
**New view in this MR:**
![new](/uploads/372ccd5fc415ad64d711f25716791ac9/new.png)0.103 - UX Overhaulhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/432Some groundwork for the main screens new UI2017-02-28T02:44:44Zusername-removed-25042Some groundwork for the main screens new UIBreaking up in the interest of making it easier to request CRs.
This includes a few small commits laying the groundwork for the new UI. The commits are separated out from the other stuff on the basis that they can be merged in without (...Breaking up in the interest of making it easier to request CRs.
This includes a few small commits laying the groundwork for the new UI. The commits are separated out from the other stuff on the basis that they can be merged in without (drastically) changing any behaviour of the current F-Droid client. The only exception is the addition of the preference "Manage Repositories" which will be available both in the main menu and also the settings activity (In the forthcoming UI changes, the main menu will not exist).0.103 - UX Overhaulhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/433Initial UI for new main screens2017-03-13T15:33:52Zusername-removed-25042Initial UI for new main screensThis includes all five items on the main screen:
* Latest
* Categories
* Swap/Nearby
* My Apps/Updates
* Settings
It is a large change but it should build and run after essentially every commit. That way, if you get bored of...This includes all five items on the main screen:
* Latest
* Categories
* Swap/Nearby
* My Apps/Updates
* Settings
It is a large change but it should build and run after essentially every commit. That way, if you get bored of CR'ing half way through you can stop and we can consider merging up to there after addressing any feedback.0.103 - UX Overhaulusername-removed-25042username-removed-25042https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/434Improved UI for new main screens2017-03-13T23:55:29Zusername-removed-25042Improved UI for new main screensThis adds some bells and whistles to the UI in !433, and also makes the app more compatible with the current stable build:
* General improvements to UI (e.g. app lists).
* Improved accessibility.
* Bug fixes.
* Search button.
*...This adds some bells and whistles to the UI in !433, and also makes the app more compatible with the current stable build:
* General improvements to UI (e.g. app lists).
* Improved accessibility.
* Bug fixes.
* Search button.
* Handle all the intents that the old `FDroid` class used to.
As with !433, it is a large change but it should build and run after essentially every commit. That way, if you get bored of CR'ing half way through you can stop and we can consider merging up to there after addressing any feedback.
(Fixes #734, Fixes #867)0.103 - UX Overhaulhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/443Notification improvements from mvp762017-03-14T10:17:50Zusername-removed-25042Notification improvements from mvp76See !437, specifically [this comment](https://gitlab.com/fdroid/fdroidclient/merge_requests/437#note_24387158).
This is just a procedural thing whereby I wanted CI to pass with `gradle lint` before merging, but timezone differences woul...See !437, specifically [this comment](https://gitlab.com/fdroid/fdroidclient/merge_requests/437#note_24387158).
This is just a procedural thing whereby I wanted CI to pass with `gradle lint` before merging, but timezone differences would have caused a whole day round trip before we could get it merged. This would prevent me from updating other MRs and allowing them to get CR'ed.0.103 - UX Overhaulusername-removed-25042username-removed-25042https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/445Scroll app details appropriately when expanding sections.2017-03-21T14:11:43Zusername-removed-25042Scroll app details appropriately when expanding sections.Fixes #875.
Note that the versions list works really nicely, by animating the addition of items and smooth scrolling down. However the other expandable items don't. This is due to a technical limitation whereby the adapter only includes...Fixes #875.
Note that the versions list works really nicely, by animating the addition of items and smooth scrolling down. However the other expandable items don't. This is due to a technical limitation whereby the adapter only includes one item for Links + Permissions respectively. This item grows/shrinks in size as it is expanded/collapsed, but no items are added/removed from the adapter. This causes problems with the smooth scrolling, but I don't think it is a bit problem.0.103 - UX Overhaulusername-removed-833299username-removed-833299https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/448Categories artwork2017-03-21T21:53:59Zusername-removed-25042Categories artworkImprovements to category screen. Now shows images or procedural artwork behind categories. Also uses the previously internationalized category names. Also tweaked the "View all" button to have the proper background when touching.
Fixe...Improvements to category screen. Now shows images or procedural artwork behind categories. Also uses the previously internationalized category names. Also tweaked the "View all" button to have the proper background when touching.
Fixes #851.0.103 - UX Overhaulhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/444Updates tab + misc UI improvements.2017-03-22T00:20:51Zusername-removed-25042Updates tab + misc UI improvements.Does away with "My Apps", replacing instead with "Updates" (Fixes #840). The things it **doesn't** address (fully) from #840 is offline "mark for install", security warnings, and donation prompts.
Other UI tweaks are:
* Back button ...Does away with "My Apps", replacing instead with "Updates" (Fixes #840). The things it **doesn't** address (fully) from #840 is offline "mark for install", security warnings, and donation prompts.
Other UI tweaks are:
* Back button now works as expected (Fixes #876) for:
* Viewing list of apps in a category
* Searching for apps
* Viewing installed apps
* Manage repositories
* App Details
* Bottom navigation bar uses new icons (Fixes #838).
* Bottom navigation now includes labels for each item (Fixes #892).
* Notification about available updates takes user to the main "Updates" tab.
* Use rounded buttons instead of square ones (Identified in #840).
There is one concern I have which should be addressed in a future MR (or this if you think so). That is the new service which scans the disk cache for downloaded apks, and then adds downloaded items to the `AppUpdateStatusManager` with a status of `ReadyToInstall`. This works great for the new "Updates" tab, but it now also continually shows the update notifications to the end user even if they have previously dismissed them. Is this okay, given we are only showing notifications for apps which are downloaded and ready to install, not those for which an update is available (which I'd think would get annoying if we kept notifying about that)?
For those wanting to see/test this (e.g. @crwinfrey), check out [F-Droid.new-ui.unofficial.debug.apk](/uploads/089b3197e311ecc3b6000ccc695b7e00/F-Droid.new-ui.unofficial.debug.apk).0.103 - UX Overhaulusername-removed-833299username-removed-833299https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/453Minor ui tweaks2017-03-26T07:32:42Zusername-removed-25042Minor ui tweaksFixes a handful of issues throughout the new UI. Each commit should address one.Fixes a handful of issues throughout the new UI. Each commit should address one.0.103 - UX Overhaulhttps://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/422Add new index format to support localization and graphics2017-03-31T17:44:13Zusername-removed-24982Add new index format to support localization and graphicsWe have been talking about a new index format for a long time. Adding support for localization and graphics is the straw that broke the camel's back for me, so I finally dug in. I also took this opportunity to change the flow on both c...We have been talking about a new index format for a long time. Adding support for localization and graphics is the straw that broke the camel's back for me, so I finally dug in. I also took this opportunity to change the flow on both client and server side to take advantage of some really great libraries out there, like Jackson on the client side, and python-yaml and python-json on the server side.
There is a test repo here with the new index: http://testy.at.or.at/fdroid/repo/0.103 - UX Overhaulusername-removed-25042username-removed-25042https://staging.gitlab.com/fdroid/fdroidclient/-/merge_requests/466Force the build tools to generate .pngs for each vector.2017-04-07T07:41:50Zusername-removed-25042Force the build tools to generate .pngs for each vector.This results in a slightly larger apk (e.g. 500KiB), but it reduces the
scope for bugs greatly. We still get all the maintenance benefits of only having to
maintain a single density-independent vector (rather than several
density depende...This results in a slightly larger apk (e.g. 500KiB), but it reduces the
scope for bugs greatly. We still get all the maintenance benefits of only having to
maintain a single density-independent vector (rather than several
density dependent PNGs and all the work that involves).
The class of bugs that it solves is that there are several places where
vectors cannot be used, and you wont notice when developing on a device
newer than 5.0. For example, notification icons, `TextView`
and its `android:drawableStart` attribute.
Fixes #913, which is coming up a few times in ACRA crash reports.0.103 - UX Overhaul