Antoine POPINEAU
4e3da9160e
Advancement with Couchbase Lite.
2020-09-26 17:26:42 +02:00
Antoine POPINEAU
1126d47a1a
Update.
2020-09-05 15:15:08 +02:00
Antoine POPINEAU
945f227ace
Added dependency injection.
2020-09-05 15:13:06 +02:00
Antoine POPINEAU
567a7476f9
WIP - Integrate Room and LiveData.
2020-09-05 15:02:22 +02:00
Antoine POPINEAU
ce8d956cee
#52 : implemented UI and functionnal filtering for all, me and subscribed. Funkwhale still does not seem to respect that.
2020-09-03 22:55:09 +02:00
Antoine POPINEAU
50c8dac297
#66 : add queue actions to clear or shuffle the queue.
2020-09-01 22:16:36 +02:00
Antoine POPINEAU
4cf77404a1
#73 : fix track sorting order by fixing a mistake and taking disc_number into consideration.
2020-09-01 18:25:10 +02:00
Antoine POPINEAU
d76f76a222
Use the new schema for cover art URLs.
2020-08-08 14:51:39 +02:00
Antoine POPINEAU
e7cb5e4c6e
QueueNavigator now returns queue index.
2020-07-12 15:19:33 +02:00
Antoine POPINEAU
ba31a4efcf
Some tracks do not have album, this fixes a crash trying to retrieve their album cover. Changed the placeholder album cover to be less aggressive to the eye.
2020-07-11 21:01:09 +02:00
Antoine POPINEAU
3a81d26cd9
Renamed some components to refer to Otter instead of Funkwhale.
2020-07-10 20:40:18 +02:00
Antoine POPINEAU
bc1e911b41
Globalize the use of caching for main sections data, improved handling of loading more pages.
2020-07-10 20:28:44 +02:00
Antoine POPINEAU
57692f2e42
Added copyright and license information ( #58 ).
2020-07-10 20:25:35 +02:00
Antoine POPINEAU
4ecb607f45
Let the media session live when playback is paused.
...
As per Android policy and internal logic, we stopped the playback
foreground service when playback was paused. This made our PlayService
elligible for garbage collection by the OS. This had the consequences of
not allowing someone to pause playback and resume it after some time.
Android would always kill the service after around one minute.
This commit, on supported Android version (7.0+) detaches the
notification when stopping the foreground service, leaving the
notification in place even when the service is killed, allowing the user
to resume playback whenever they please.
We also had to move the MediaSession out of the service, for it to
remain alive between service killing and resurrection.
2020-07-09 23:01:35 +02:00
Antoine POPINEAU
b2e6ec43a8
Improved loading of new and cached items.
...
Scrolling through large lists was a pain. The next page would only load
when the end of the list was reached, stopping the scroll action while the new
page was fetched.
This commits adds two items:
* Artists, albums and playlists do not refresh data on resume, only
using cached data until manually refreshed.
* When manually refreshed, we initially fetch a few pages instead
of only one. Also, on scroll, we try as best as we can to always keep
10 pages (pages as in screen estate) worth of data loaded.
2020-07-08 22:11:50 +02:00
Antoine POPINEAU
de0a494b43
Do not transform URLs to HTTPS now that we support cleartext connections.
2020-07-08 15:12:49 +02:00
Antoine POPINEAU
e17c706ae3
Release date can be null, changed model and added checks.
2020-07-08 14:08:35 +02:00
Antoine POPINEAU
37f4b1da9e
Sort artists and global albums by name/title. Sort an artist's albums by release date. Display the release year in the albums view ( #54 ).
2020-07-08 13:19:47 +02:00
Antoine POPINEAU
9c61fcf462
Tidied up usage of GlobalScope to the profit of AndroidX's lifecycle coroutine scopes.
2020-06-25 01:26:15 +02:00
Antoine POPINEAU
b2d26a8127
Refactored and rationalized some events and commands on the buses.
2020-06-24 14:54:13 +02:00
Antoine POPINEAU
03fcf1a382
Fixed download and cache indicators on search screen. Fixed an issue with placeholder texts when some search terms did not return results.
2020-06-22 21:48:31 +02:00
Antoine POPINEAU
a19e500f09
Prevent long-running requests to make the app crash when user is logging out.
2020-06-21 14:16:30 +02:00
Antoine POPINEAU
490de25b05
Handle radios when logged in anonymously.
...
On top this fix, this commit adds support for "My content" and
"Favorites" instance radios (fixes #51 ), as well as clearly separates instance
radios from user radios.
Radios were a bit unusable when not logged in with an actual authorized
user account, this commit fixes the following elements:
* Anonymous users get a transient session cookie when starting a radio
session that was not stored and forwarded on playback, meaning no
radios would play;
* Anonymous users do not have their own own content. Thus, only the
"Random" radio makes sense in that context. This commit only display
the instance radios that are relevant to your authentication status.
"My content" radios needs the user ID to function properly, this commit
also adds retrieving it from the /api/v1/users/users/me/ endpoint, which
now may be used in the future for other purposes.
2020-06-21 13:41:27 +02:00
Antoine POPINEAU
18e981fba5
Fixed an issue where the main playback UI would freeze when skipping an erroring track (in airplane mode, for example).
2020-06-20 22:10:13 +02:00
Antoine POPINEAU
e539cc26dd
Manage cached and downloaded tracks separately. Downloaded track are not automatically evicted and do not count towards cache storage limit. Contributes to #37 . Fixed an issue where the event bus on main would be duplicated.
2020-06-20 15:42:10 +02:00
Antoine POPINEAU
a2c35595c7
Better handling of download progress and event. Added an option to retry failed downloads. Performance improvement around downloads UI.
2020-06-14 20:32:48 +02:00
Antoine POPINEAU
a2caba8bd1
Added downloaded indicator on track rows.
2020-06-14 20:32:17 +02:00
Antoine POPINEAU
4127421132
Allow downloading whole albums.
2020-06-14 20:31:12 +02:00
Antoine POPINEAU
00fb833cfa
Added basic management of downloads and downloaded tracks.
2020-06-14 20:31:07 +02:00
Antoine POPINEAU
2dfabf74e9
Initial handling of track downloads.
2020-06-14 20:28:05 +02:00
Antoine POPINEAU
a0e201e68f
Filter music according to own music setting (should close #33 ).
2020-06-14 20:26:47 +02:00
Antoine POPINEAU
746ae8897d
Frontend logic for displaying only own music.
2020-06-14 20:26:39 +02:00
Antoine POPINEAU
c75f2e45f6
Ability to shuffle play all tracks from an artist. Should close #21 . Also added animations over long-running operations.
2020-06-02 18:50:46 +02:00
Antoine POPINEAU
cb43615cb1
Fixed some linting issues. Fixed two issues related to current track emphasis and landscape now playing cover background.
2020-06-01 21:25:16 +02:00
Antoine POPINEAU
ce05acad21
Send track played reports to Funkwhale whenever a track finishes playing. Closes #40 .
2020-06-01 16:31:58 +02:00
Antoine POPINEAU
dc7803acb4
Added support for native radios (random and less listened to radios). Advancing #8 .
2020-06-01 14:38:50 +02:00
Derek Schmidt
c9159166d2
Avoid java.net.URL's RFC 2396 parsing
2020-05-30 18:54:57 -07:00
Antoine POPINEAU
d5c1b89d3d
Cache if playback is in radio mode to be able to continue after app gets killed.
2020-05-31 02:39:32 +02:00
Antoine POPINEAU
fd1741ca53
Added experimental radios support. Fixed linter and fastlane metadata.
2020-05-30 21:16:28 +02:00
Antoine POPINEAU
159685bcc1
Added track details from Now Playing view. Should fix #30 .
2020-05-30 15:49:06 +02:00
Antoine POPINEAU
cf4cd16bed
Added a toggle for repeat mode on the Now Playing view. Should fix #26 .
2020-05-29 23:42:03 +02:00
Antoine POPINEAU
fa82f13a9c
Display search results for artists and albums. Only cosmetic for now, there is no action on them.
2020-05-29 13:19:28 +02:00
Antoine POPINEAU
534e48e2c8
Upgrades dependencies. Enhanced login screen appearance. Fixed a seriously dumb issue where we would not transmit the token to the server.
2020-05-29 01:11:15 +02:00
Antoine POPINEAU
aad0ec439c
Allow for anonymous connection if server supports it. Should provide basic support for #14 .
2019-11-25 23:16:18 +01:00
Antoine POPINEAU
a55986343f
Format code and fixed favoriting issue on favorite tab.
2019-11-23 14:45:56 +01:00
Antoine POPINEAU
fbe5ea4db9
Sort album view by track position.
2019-11-22 20:24:08 +01:00
Antoine POPINEAU
0cb4bda212
Added support for landscape mode.
2019-11-21 23:26:34 +01:00
Antoine POPINEAU
ba12854e6c
Migrate to Flows.
2019-11-16 16:52:39 +01:00
Antoine POPINEAU
22c99d384c
Fixed issue #7 to display all search results properly.
2019-10-31 11:20:12 +01:00
Antoine POPINEAU
eac875b9cb
Clear queue on logout.
2019-10-30 22:06:57 +01:00