Ryan Harg
d8f8c3c193
#28 : Auto update favorites list
...
- Also removes duplicate favorite listeners
2021-09-10 13:37:35 +02:00
Ryan Harg
898d2b437b
#95 : Remember scroll positions in list views
2021-09-10 09:45:22 +02:00
Ryan Harg
9d857de99a
#92 : Remove trailing slash from hostname
2021-09-10 07:28:09 +00:00
Ryan Harg
ef3387dee0
Fix existing linting problems
2021-09-09 09:56:15 +02:00
Ryan Harg
63292f07c5
#90 : Use correct radio identifier for user radio
2021-09-08 07:51:49 +00:00
Ryan Harg
fec95a7332
#88 : Fix hostname scheme prefix handling
2021-09-03 11:15:14 +02:00
Ryan Harg
07511d1d9e
Upgrade Android Gradle Plugin to version 7.0.2
2021-09-03 10:50:44 +02:00
Ryan Harg
1e1e34cae4
#87 : Show Pause icon when song is playing
2021-08-29 15:49:13 +02:00
Ryan Harg
0095381694
#65 : Upgrade exoplayer version
2021-08-29 13:41:50 +00:00
Ryan Harg
f35f3a5f92
#86 : Use correct downloaded status for tracks, disable albums and artists
2021-08-27 15:13:54 +02:00
Ryan Harg
ea286c2345
Minor adjustments to get rid of deprecation warnings
2021-08-27 13:28:23 +02:00
Ryan Harg
4f9f605bbf
Improving OAuth implementation
2021-08-27 11:06:46 +02:00
Ryan Harg
1209a0a5dc
#83 : Fix invalid null handling for add to playlist
2021-08-26 06:44:59 +00:00
Ryan Harg
107a8d55e8
Refactor OAuth code
2021-08-23 09:17:06 +02:00
Ryan Harg
94ac0c6b85
Upgrading Android Gradle Plugin
...
- Also moving some model classes
2021-08-22 09:48:36 +02:00
Ryan Harg
73631cc9e9
Further fix for refreshing access token
2021-08-22 07:13:19 +00:00
Ryan Harg
8ecc6f9b69
Add http retry back on unauthorized request
2021-08-20 11:50:32 +02:00
Ryan Harg
f3c7a865d2
74: Improve logging code
2021-08-13 15:04:49 +02:00
Ryan Harg
c8382495ea
74: Add logs for queue management
2021-08-13 12:55:38 +00:00
Ryan Harg
fe4a00ae07
74: Update logging to gather more information
2021-08-13 08:56:00 +00:00
Ryan Harg
3aa37e5d3c
#80 : Display error messages for user when login failes
2021-08-10 14:59:12 +02:00
Ryan Harg
c997405906
#79 : Add log statements in authentication code
2021-08-09 20:04:33 +02:00
Ryan Harg
80fc39a927
Remove OAuth interface
2021-08-09 08:40:04 +02:00
Ryan Harg
79f047015a
#7 : Restructure koin modules
2021-08-09 07:03:20 +02:00
Ryan Harg
a9319b88b0
#7 : Add Koin as dependency injection library
2021-08-09 04:50:46 +00:00
Ryan Harg
88b162b0f9
Remove old authentication retry code
2021-08-07 20:20:48 +02:00
Ryan Harg
7ddff0843f
Housekeeping/7 integration testing
2021-08-06 19:16:46 +00:00
Ryan Harg
81dd69a9d7
Remove unused experimental switch
2021-08-06 09:00:34 +02:00
Ryan Harg
09787c71f5
Update Android Gradle Plugin to 7.0.0
2021-08-04 08:41:42 +00:00
Ryan Harg
3a8b332796
#7 : Unit tests for oauth authorization
2021-08-03 10:29:41 +02:00
Ryan Harg
2e35a313fc
#7 : Add more tests to OAuth component
2021-08-02 13:24:12 +02:00
Ryan Harg
e60d93a05a
#7 : Add unit tests to OAuthDatasource
2021-07-30 08:57:49 +00:00
Ryan Harg
fcfc30a97e
#48 : Implement OAuth2 authentication
2021-07-23 12:10:13 +00:00
Ryan Harg
3ad9b40092
#70 : Fix missing search results title
2021-07-23 09:06:12 +02:00
Ryan Harg
bb17ec99f3
Extract response factory function
2021-07-22 14:45:04 +02:00
Ryan Harg
d2497c7217
Remove build warnings
2021-07-21 07:11:44 +00:00
Ryan Harg
ff4f6408da
Housekeeping/migrate to viewbinding
2021-07-16 08:03:52 +00:00
Ryan Harg
eb3c36fac2
#50 - Display if whole album is downloaded or cached
2021-07-15 15:23:11 +02:00
Ryan Harg
208c7e584b
Change base package name from org to audio
2021-07-12 10:14:26 +02:00
Ryan Harg
3c86003e30
Rebrand/rename packages
2021-07-02 11:55:49 +00:00
Ryan Harg
4a1630032d
Update some dependencies and adapt where necessary
2021-07-01 11:25:09 +00:00
Ryan Harg
eea0628d3d
Replace app logos and app name
...
commit f9058b7b08
Author: Ryan Harg <ryan.harg@mailbox.org>
Date: Tue Jun 29 18:41:32 2021 +0200
Exchange app logo in login activity
commit a67d2a854c
Author: Ryan Harg <ryan.harg@mailbox.org>
Date: Tue Jun 29 15:00:31 2021 +0200
Re-add source-set specific application name
commit 8bfcb36d60
Author: Ryan Harg <ryan.harg@mailbox.org>
Date: Tue Jun 29 14:19:22 2021 +0200
Replace in-app icons
commit f8eb547732
Author: Ryan Harg <ryan.harg@mailbox.org>
Date: Tue Jun 29 13:57:44 2021 +0200
Replace application icons and adjust app name
2021-07-01 13:11:11 +02:00
Ryan Harg
f0c2d22e78
Upgrade to Kotlin 1.5
2021-06-29 09:37:36 +02:00
ryan_harg
34d377630e
Fix build script issues
2021-06-26 11:36:32 +00:00
Antoine POPINEAU
a7b469d690
#15 : added "Add to playlist" action from the Now Playing screen.
2020-09-26 18:34:13 +02:00
Antoine POPINEAU
6bdefa1936
#81 : added save current queue to playlist.
2020-09-26 18:23:12 +02:00
Antoine POPINEAU
785fa6ce19
#84 : remove presumably unnecessary trigger to Event.QueueChanged.
2020-09-26 17:39:24 +02:00
Antoine POPINEAU
7feac4e400
Changed background color when rearranging playlist items.
2020-09-06 15:36:14 +02:00
Antoine POPINEAU
b0747658ae
Add toast when added to playlist.
2020-09-06 15:23:45 +02:00
Antoine POPINEAU
ab654a08c4
#15 : Enable reordering of playlist tracks. Fixed an algorithmic issue with reordering of queue items.
2020-09-06 14:56:46 +02:00
Antoine POPINEAU
049822005e
#15 : implemented removing track from playlist.
2020-09-06 14:56:44 +02:00
Antoine POPINEAU
d796fca26b
#15 : Enabled "Add to playlist" in the search screen. Localized strings and improved UI.
2020-09-06 14:56:43 +02:00
Antoine POPINEAU
54d4dc2235
#15 : initial support for adding tracks to a playlist.
2020-09-06 14:56:43 +02:00
Antoine POPINEAU
64ea222f08
#76 : fixed Shuffle and Clear queue actions in landscape mode.
2020-09-05 16:12:22 +02:00
Antoine POPINEAU
e60814d28f
#52 : Properly handle content filter selection and state.
2020-09-03 22:55:10 +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
63c8dbe09e
#65 : abide by order preference when using "Queue" overflow menu option.
2020-09-02 14:24:59 +02:00
Antoine POPINEAU
9b0c8b0bf6
#65 : added an option to select preference towards playback order.
2020-09-02 12:45:37 +02:00
Antoine POPINEAU
b87766dad2
#66 : Fixed behavior on queue shuffling, clearing and end of queue on no-repeat.
2020-09-02 12:05:31 +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
998dab0fb5
Do not delete downloads on authentication error (prepare for new authentication system).
2020-08-29 15:14:59 +02:00
Antoine POPINEAU
002ebec7ce
Do not delete downloaded tracks on log out.
...
Downloaded tracks can be quite precious when you have lots of them (as
redownloading all of them can be costly in terms of time and money).
This prevents downloaded tracks from being deleted along with your
session.
This must be included in 0.21, so we can safely implement Funkwhale's
new authentication mechanism in 0.22.
2020-08-08 14:58:50 +02:00
Antoine POPINEAU
d76f76a222
Use the new schema for cover art URLs.
2020-08-08 14:51:39 +02:00
Antoine POPINEAU
f062e62299
Apply current track style to playlist tracks.
2020-08-03 15:30:42 +02:00
Antoine POPINEAU
d2e472d770
Update media session metadata as soon as track changes.
2020-08-03 15:30:41 +02:00
Antoine POPINEAU
a7968e9a87
Fix dynamically changing between own music and all music. Dynamically reload all tabs instead of only active ones.
2020-07-13 10:31:36 +02:00
Antoine POPINEAU
5c684b6e67
Fixed audio focus stealing.
2020-07-12 20:46:33 +02:00
Antoine POPINEAU
85e9f14e2a
Cleaned up DisableableFrameLayout.
2020-07-12 19:05:51 +02:00
Antoine POPINEAU
1e62cc1f4e
Now Playing view: do not cancel fling event on touch, disable view behind it when opened.
2020-07-12 18:55:52 +02:00
Antoine POPINEAU
b0640cf1b2
Streamline the way the media session is controled across devices.
2020-07-12 18:28:50 +02:00
Antoine POPINEAU
e7cb5e4c6e
QueueNavigator now returns queue index.
2020-07-12 15:19:33 +02:00
Antoine POPINEAU
931cd0b42d
Stop PlayerService when logging out.
2020-07-11 21:05:19 +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
308e7d7567
Improve performance of recycler views and prevent flickering on state change.
2020-07-11 18:15:40 +02:00
Antoine POPINEAU
7d95618ff5
Allow track downloading from the search results.
2020-07-11 17:41:41 +02:00
Antoine POPINEAU
e4da4af3f3
Prevent keyboard to pop over result pages.
2020-07-11 17:28:01 +02:00
Antoine POPINEAU
b9e9272336
Optimized workflow between two searches.
2020-07-11 17:17:26 +02:00
Antoine POPINEAU
61fdb116ad
Fixed an issue where favorited tracks would not show up erroneously in track lists.
2020-07-11 16:56:09 +02:00
Antoine POPINEAU
dd86988518
Explicitely remove notification when paused and the app is swiped up.
2020-07-11 14:16:22 +02:00
Antoine POPINEAU
b6b9e4c053
Reattach the detached service notification when the app is swiped (if not playing) for it be removed with the application.
2020-07-11 12:58:25 +02:00
Antoine POPINEAU
eb6b7a807b
Fixed album position in track info and ensure safe callback to current recycler view.
2020-07-10 21:03:48 +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
28949a8e17
Fixed loading wheel.
2020-07-10 20:37:28 +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
fe224b097a
Re-enabled media session on service start. Do not condition radio resumption to having a cookie, since those are only valid when authenticated anonymously.
2020-07-10 18:46:49 +02:00
Antoine POPINEAU
b34810d631
Allow media session resuming from media buttons when service is killed.
2020-07-10 17:18:29 +02:00
Antoine POPINEAU
b14b703f05
Fix an issue where always retrieving favorites from the network could be really costly and introduce stack overflows ( #60 ).
2020-07-10 15:50:56 +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
4b2cf10e78
Fix IO thread performing UI task on some occasion ( #59 ).
2020-07-09 10:45:52 +02:00
Antoine POPINEAU
5d397ab1fe
Sort radios, playlists and favorites by name.
2020-07-08 23:23:14 +02:00
Antoine POPINEAU
f3bbca9c27
Fixed caching of metadata.
2020-07-08 23:21:47 +02:00
Antoine POPINEAU
37d5c7b7be
Load data from network on resume if cached data is empty.
2020-07-08 23:00:10 +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
0facf09c94
Do not list artists without albums.
...
As of now, Otter cannot list albumless tracks (for example, tracks in
compilation, appearing under the original artist, but not part of an
album published by this artist). This created a lot of "empty" artists
(with no albums) in the Artists section of the app.
This may be rolled back if we are some day able to list "orphan"
tracks.
2020-07-08 14:09:48 +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
b0d7ff393d
Changed track metadata reporting method so it could work similarly across devices (notification, ambient display, lockscreen, watches, ...) ( #55 ).
2020-07-08 12:46:52 +02:00