Commit Graph

423 Commits

Author SHA1 Message Date
Óscar García Amor 3c9dcbc0a3
Merge branch 'develop' into no-sort-special-collections 2020-12-29 16:31:51 +01:00
lbonn f43c107269
Do not sort special collections
It does not make sense to sort:

- random songs
- recently added albums
- recently played albums
- most played albums
- top rated albums
- random albums

As the order returned by the server is more relevant in these cases

Signed-off-by: lbonn <bonnans.l@gmail.com>
2020-12-21 23:35:19 +01:00
lbonn 7af666037d
Fall back to path when comparing tracks
Tracks will be sorted by ascending path if neither album, disc and track
id can help.

This is helpful for browsing a loose collection of tracks tagged under
the same album.

Signed-off-by: lbonn <bonnans.l@gmail.com>
2020-12-21 22:20:35 +01:00
Nite 543cb21cd1
Fixed artist items in search 2020-12-07 16:34:59 +01:00
Nite 4336e8e243
Added setting to show artist picture 2020-11-25 20:00:12 +01:00
Nite a3c4815a07
Fixed Artist row layout
Changed Unknown image
2020-11-24 18:19:58 +01:00
Nite 47e5675d1e
Added coverArt images to Artists
Minor fixes
2020-11-18 21:46:46 +01:00
Nite 34a6413f10
Migrated SelectArtistActivity to Kotlin
Updated SelectArtistActivity to use RecyclerView
Changed old progress display to use SwipeRefreshLayout's spinner
Added alphabetic side index
Enabled RecyclerView's FastScroll
2020-11-16 19:14:44 +01:00
Nite 92f01fec26
Implemented single button play/pause support for old Bluetooth devices 2020-11-06 18:08:36 +01:00
Nite 537478430c
Fixed null checks in SongView
Migrated SongView to Kotlin
2020-10-31 08:51:43 +01:00
Óscar García Amor cf19736049
Merge branch 'develop' into fix/equalizer_visualizer_init 2020-10-25 10:38:49 +01:00
Nite 5c81097df8
Merge branch 'develop' into fix/equalizer_visualizer_init 2020-10-20 11:59:37 +02:00
Nite bd5440bb96
Merge branch 'develop' into fix/store-api-version 2020-10-20 11:52:08 +02:00
Nite 9eeff3fabc
Fixed clearing the playlist when MediaPlayerService isn't running 2020-10-20 11:29:05 +02:00
Nite 0482c540bd
Updated Equalizer and Visualizer to use late initialization with LiveData 2020-10-17 12:35:30 +02:00
Nite 4e6df12f4e
Moved minimumApiVersion detection to be executed before any first request
Refactored RESTMusicService to Kotlin
Refactored OfflineMusicService not to be a subclass of RESTMusicService
Minor fixes
2020-10-15 10:22:15 +02:00
Nite a396b4b27b
Fixed Subsonic API version detection
Fixed server change detection
Minor fixes
2020-10-13 21:41:01 +02:00
Nite 0b21dfdb2d
Merge branch 'develop' into feature/log_to_file 2020-10-07 21:05:54 +02:00
Nite 1f7167e016
Removed file existence check to improve performance 2020-10-07 20:52:58 +02:00
Nite b16dde0b07
Fixed Opus file handling
Fixed file name generation in offline mode
2020-10-07 17:52:16 +02:00
Nite 60a8599a02
Merge branch 'develop' into feature/log_to_file 2020-10-06 17:07:16 +02:00
Max Pop 6ae3c9692a
Add Material Black Theme 2020-10-05 01:45:58 +02:00
Nite 6e7ebeabef
Implemented file logging settings
Implemented log rotation, log deletion
Minor fixes
2020-10-02 18:47:21 +02:00
Nite 5de20861ca
Added Timber to Koin and OkHttp, started implementing file logging 2020-09-30 18:17:57 +02:00
Nite 7217f2cca8
Refactored Log calls to Timber 2020-09-30 14:47:59 +02:00
Nite 75a9c60889
Fixed handling Bluetooth intents while Ultrasonic isn't running 2020-09-29 11:09:24 +02:00
Nite c805005b02
Added resume and pause settings for bluetooth device connection / disconnection 2020-09-28 21:14:47 +02:00
Nite 046916221d
Started implementing Bluetooth connection settings 2020-09-28 21:14:30 +02:00
Óscar García Amor 8c07346296
Fix fatal error loading unknown album cover
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-25 19:36:35 +02:00
Óscar García Amor 5387b58e35
Finish convert drawables to vectors. Closes #308
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-25 18:20:18 +02:00
Óscar García Amor 89ef73ccec
Merge branch 'develop' into vector 2020-09-25 13:35:11 +02:00
Óscar García Amor 81f248f446
Convert drawables to vectors
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-24 22:00:29 +02:00
Nite 481084686b
Fixed missing Genre Refresh functionality 2020-09-24 15:16:59 +02:00
Óscar García Amor a411ed63e2
Fix Select Folder item. Closes #305
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-24 13:19:25 +02:00
Óscar García Amor a7d29a4093
More UltraSonic -> Ultrasonic
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-24 13:03:05 +02:00
Óscar García Amor 36e25253be
Fix translations
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-09-24 12:21:17 +02:00
Nite 06109424ec
Index fix, added logging 2020-09-22 21:50:53 +02:00
Nite cc954e4d5a
Fixed migration to check for empty database at every start 2020-09-22 17:03:04 +02:00
Nite e8310b2ac8
Merge branch 'develop' into feature/updated-server-settings 2020-09-22 11:40:25 +02:00
Max Pop 251e575421
Resign all with gpg key 2020-09-21 12:17:55 +02:00
Nite 234e4703a1
Fixed first time migration
Minor fixes
2020-09-19 11:56:10 +02:00
Nite 6721500202
Updated Server Settings UI and Storage
Updated Koin to latest
2020-09-18 09:37:19 +02:00
Nite 6beb1ae42e
Fixed Jukebox start bug 2020-09-03 16:05:38 +02:00
Nite ca2bfbf14b
Updated Subsonic API version handling 2020-08-27 10:27:25 +02:00
Nite 5739b2bf4b
Implemented file picker for cache folder settings 2020-08-18 21:24:24 +02:00
Nite 720f43c8d9
Fixed unintentional replaces 2020-07-30 11:59:22 +02:00
Nite 5f3861b1ac
Improved cold start time from Doze 2020-07-16 14:25:58 +02:00
Nite 4b0809f905
Fixed unnecessary starts 2020-07-11 11:15:16 +02:00
Nite 3d61dde83f
Fixed audio focus handling 2020-07-07 18:50:26 +02:00
Nite f5748d7dc0
Fixed lost lockscreen controls when exiting the app 2020-07-02 19:01:33 +02:00
Nite 091374f922
Fixed wired headset handling
Fixed MediaPlayer start timeout for slow phones
2020-07-02 17:20:06 +02:00
Nite 60250a42a9
Fixed wrong context 2020-06-30 22:10:15 +02:00
Nite 2ff0151e8c
Fixed widget operation when Ultrasonic is stopped 2020-06-30 16:47:29 +02:00
Nite 7f5ff00237
Fixed Media Key processing 2020-06-30 16:19:50 +02:00
Nite decca7103f
Fixed exit and restart 2020-06-30 15:16:45 +02:00
Nite 7dad738fce
Fixed pause on bluetooth disconnect, minor fixes 2020-06-29 16:17:22 +02:00
Nite fdc1748f8a
Fixed foreground service stop and start
Fixed play on restore
2020-06-29 14:44:19 +02:00
Nite bd77c2a851
Added null checks, moved MediaPlayer to its own Koin module 2020-06-26 16:33:27 +02:00
Nite bbe9f39300
Moved externally visible functions to interface, added comments 2020-06-26 15:18:14 +02:00
Nite 0bef3ae417
Fixed concurrency problems 2020-06-26 13:31:31 +02:00
Nite b83631107c
Major cleanup, minor fixes 2020-06-25 14:33:44 +02:00
Nite 8c60e09914
Fixed player threading, other minor fixes 2020-06-25 11:58:09 +02:00
Nite c3be251e8b
Restored minor fixes 2020-06-23 19:27:04 +02:00
Nite 0820763c7f
Refactored playback related things 2020-06-23 18:40:44 +02:00
Nite 53628dde54
Started to use Koin, refactored lifecycleSupport and Intent handling 2020-06-22 18:44:15 +02:00
Nite 13b987791e
Started DownloadServiceImpl refactor 2020-06-22 18:43:59 +02:00
Nite f6a41206b8
Minor fixes 2020-06-21 09:37:12 +02:00
Nite 02da3e79ba
Fixed DownloadServiceImpl to start as background service
Removed notification related settings for API26
2020-06-20 15:16:57 +02:00
Nite 50fde988a8
Fixed notification priority 2020-06-19 13:58:51 +02:00
Nite ad1ae62aff
Fixed notification update error 2020-06-18 15:53:38 +02:00
Óscar García Amor 884cf8b1b0 Reactivate the uncaught exception handler
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-06-18 10:12:50 +02:00
Nite e210908257
Fixed context in FileUtil
Added CleartextTraffic to AndroidManifest
2020-06-17 18:14:34 +02:00
Óscar García Amor af5ecae7f5 First approach to API 28
Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2020-06-17 15:08:30 +02:00
Nite 1e789858bc
Updated AutoRepeatButton from ImageView to AppCompatImageView as Lint suggested 2020-06-13 22:46:54 +02:00
Nite a845ec8039
Fixed dialog title 2020-06-02 16:33:06 +02:00
Nite 5d18929258
Implemented runtime permission handling using Dexter library, minor fixes 2020-06-02 15:35:36 +02:00
Nite f4ae87fffe
Migrated to Androidx 2020-04-26 12:05:28 +02:00
Nite d920e51279
Testing conditional notification update 2020-03-23 15:53:18 +01:00
Nite b4885c684c
Fixed stuck notification 2020-03-23 15:47:47 +01:00
Óscar García Amor bbb92b19d4
Merge pull request #267 from nitehu/fix/share-playlist
Fixed missing Extra from Intent when selecting a Playlist Item.
2020-03-23 10:01:13 +01:00
Nite 99dbf236c9
Fixed rating from notification 2020-02-23 12:57:15 +01:00
Nite b10f6d895c
Fixed missing Extra from Intent when selecting a Playlist Item. This caused sharing to fail. 2020-01-15 20:46:33 +01:00
Nite ab624be93d
Implemented five star rating 2020-01-13 21:20:52 +01:00
Dmitriy Bogdanov 58d620acf2
Set the notification publicly visible
Signed-off-by: Dmitriy Bogdanov <d@di72nn.com>
2019-10-25 17:36:41 +04:00
Yahor Berdnikau c2924df25f Use Koin java module.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-08-03 22:08:30 +02:00
Yahor Berdnikau 50a0923cf4 Fix app doesn't open album using ID3 tags browsing.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-07-15 11:59:00 +02:00
Yahor Berdnikau 75d81fe920 Don't close app on background task error.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-07-15 10:24:46 +02:00
Yahor Berdnikau a63c47112c Add feature flags that contains new image loader flag.
This allows to release new versions of the app with unfinished/
not fully implemented features.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-07-15 09:50:07 +02:00
Yahor Berdnikau 77eb257d84 Glue together old ImageLoader impl and new one.
Currently it is working in a pretty limited way.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-06-26 23:09:16 +02:00
Yahor Berdnikau b27ce42d02 Extract ImageLoader interface.
This will allow to swap it with a new implementation.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-06-26 23:09:16 +02:00
Yahor Berdnikau 52b32d0fd6 Add DI for MusicService.
It is still hidden behind MusicServiceFactory, but opens a way to use
it directly via injection.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-06-24 17:30:38 +02:00
Yahor Berdnikau 91b5941c7c Fix bookmark doesn't restore saved song position.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-06-12 22:29:19 +02:00
Óscar García Amor 8b58691246 Default server settings removed
Now when you configure a new server connection the input boxes will
appear clean instead of with default garbage.

Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2018-04-07 17:23:23 +02:00
Yahor Berdnikau 41fe68db0f Fix notification can't be killed when player is not playing.
Fix clicking on close (x) in notification does nothing when player has
neither playing nor paused state.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-04-06 19:00:59 +02:00
Yahor Berdnikau 68cb1af02b Fix inconsistent behaviour when adding new server on debug build.
After adding special suffix for debug builds, default shared preferences
name was changed.
2018-04-03 22:09:22 +02:00
Yahor Berdnikau d476ddfa0c Make a ping to server on app start.
This will update supported server version in subsonic api client.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-18 19:15:22 +01:00
Yahor Berdnikau 1737fd69e7 Remove unused method from FileUtil.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-18 17:38:47 +01:00
Yahor Berdnikau 8076956786 Clear persistent storage on server deletion.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-12 22:21:07 +01:00
Yahor Berdnikau 334ffbf5e9 Make persistent storage per server base.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-12 21:40:55 +01:00
Yahor Berdnikau fa7b8b1c88 Store loaded artists in persistent file store.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-12 21:19:46 +01:00
Yahor Berdnikau 423461c3ba Store loaded indexes in persistent storage.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-11 22:02:31 +01:00
Yahor Berdnikau c49e447240 Add permanent file storage.
It serialize domain objects to byte array and store it to file.
For now it only uses for MusicFolder entity store.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-03-10 22:20:34 +01:00
Yahor Berdnikau 4c85213c6c
Merge pull request #169 from ultrasonic/convert_entities_to_data_class
Convert domain entities to kotlin
2018-02-24 23:07:41 +01:00
Yahor Berdnikau 85111dd47d Fix crash on entry unboxing.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-24 23:04:07 +01:00
Yahor Berdnikau 12c68d9ebf Fix adapter using toString() method for entry.
Replace it to use getName().

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-24 23:03:50 +01:00
Yahor Berdnikau 1fe6da5f46 Convert MusicDirectory domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 22:45:28 +01:00
Yahor Berdnikau 47d5a4dba1 Convert Artist domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 22:30:39 +01:00
Yahor Berdnikau 3e3d39e2cd Convert Bookmark domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 22:23:48 +01:00
Yahor Berdnikau 817122c16f Convert ChatMessage domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 22:18:23 +01:00
Yahor Berdnikau ea5fd0d1be Convert Genre domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:57:10 +01:00
Yahor Berdnikau 9ddd68f941 Convert Indexes domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:46:53 +01:00
Yahor Berdnikau 21b3fcc77c Convert JukeboxStatus domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:36:58 +01:00
Yahor Berdnikau 3dd7e531b9 Convert Lyrics domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:26:40 +01:00
Yahor Berdnikau a1f2132a17 Convert MusicFolder domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:18:24 +01:00
Yahor Berdnikau b3d70f8745 Convert Playlist domain enum to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:16:41 +01:00
Yahor Berdnikau 5265e58d47 Convert Playlist domain entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 21:15:32 +01:00
Yahor Berdnikau 6d6380ca96 Remove unused PodcastEpisode entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-22 20:53:16 +01:00
Yahor Berdnikau 257a014b18 Migrate PodcastsChannel entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-21 22:38:13 +01:00
Yahor Berdnikau 82e265fda9 Migrate RepeatMode enum to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-21 22:09:34 +01:00
Yahor Berdnikau 773158859e Migrate SearchCriteria entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-21 22:07:11 +01:00
Yahor Berdnikau 8c5944d858 Migrate SearchResult entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-21 22:05:38 +01:00
Yahor Berdnikau 20773761fa Migrate Share entity to kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-21 21:51:40 +01:00
Yahor Berdnikau cb02582740 Migrate UserInfo to Kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-20 22:08:34 +01:00
Yahor Berdnikau 4218698a16 Convert Version class to Kotlin.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-20 21:54:53 +01:00
Óscar García Amor 75e6e70094 REST_CLIENT_ID simplified
From UltraSonic%20for%20Android to simply Ultrasonic

Signed-off-by: Óscar García Amor <ogarcia@connectical.com>
2018-02-20 17:55:24 +01:00
Yahor Berdnikau ef4d606db2 Move all converters to domain package.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-17 20:36:19 +01:00
Yahor Berdnikau b080c62843 Fix app doesn't handle right transcoded suffix.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-11 22:44:53 +01:00
Yahor Berdnikau acde5b9473 Fix wrong support for empty cover art url.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-10 20:11:17 +01:00
Yahor Berdnikau 009567c83e Fix app may use wrong folder to store music.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-10 20:08:57 +01:00
Yahor Berdnikau b6c14c7541 Fix stray ">" in songs list.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-02-08 22:00:22 +01:00
Yahor Berdnikau efe1efdda6 Add more specific error message related to ssl connection problems.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-01-21 21:01:21 +01:00
Yahor Berdnikau ae6b73fab4 Add setting to force using old-authorization for LDAP users.
Subsonic api doesn't support new md5 based authorization for LDAP users.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-01-21 18:15:02 +01:00
Yahor Berdnikau 3e1dbe3476 Fix api error parses always in generic error.
Now it parses to right error representation. Also fix that right
exception for error is not thrown on api call.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-01-13 10:19:42 +01:00
Yahor Berdnikau ada94dc24f Change to handle json parse exception instead of xml.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-01-07 13:30:37 +01:00
Yahor Berdnikau 27465a086d Add displaying more specific api errors.
Now app will show more specific api errors to user.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2018-01-07 13:17:53 +01:00
Yahor Berdnikau e96eae29d5 Add option to resume playback on headphones insertion.
This is disabled by default and should be enabled in app settings.
Playback resume only happened when app is not in Jukebox mode and
playback is paused.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-28 22:02:09 +01:00
Yahor Berdnikau c9bc3df543 Merge branch 'master' into develop 2017-12-27 22:01:10 +01:00
Yahor Berdnikau 592ab16b94 Add setting to server config to allow self-signed certificates.
It is disabled by default.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-26 12:34:52 +01:00
Yahor Berdnikau ae3ef770c7 Regenerate lint baseline.
Also have to fix some of the lint issues, for some reason they don't
get into baseline.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-21 11:53:15 +01:00
Yahor Berdnikau 2e9935e182 Remove usage of HttpRequest from StreamProxy.
Apache http client classes was removed since api 23. And actually this
HttpRequest doesn't required here at all.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-21 10:53:23 +01:00
Yahor Berdnikau ed78fce31c Remove deprecated HttpClient.
Apache HttpClient package was removed from Android since api 23.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-21 10:53:23 +01:00
Yahor Berdnikau aadb14eb4e Fix service try download covert art for empty id.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-16 22:20:44 +01:00
Yahor Berdnikau b2384a43ce Update api definition to use String type for ids.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-16 22:14:01 +01:00
Yahor Berdnikau 3fddef0ec5 Check call if it supported by current server version.
Add a api wrapper that checks if current protocol version is supported
for this call and fail fast if not.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-12-10 10:48:41 +01:00
Yahor Berdnikau 336f505ba5 Replace ServerTooOldException with more proper ApiNotSupportedException. 2017-12-03 14:14:01 +01:00
Yahor Berdnikau c4f28280f9 Use getStreamUrl() method for video urls.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-21 21:29:24 +01:00
Yahor Berdnikau d1256d2b77 Remove unused Apache http client.
Finally!

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 22:13:46 +01:00
Yahor Berdnikau 4b789e4c88 Disable getVideoUrl() method.
This method uses some assuptions on endpoint urls.
The right way is to use stream() api call to get video stream.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 22:10:34 +01:00
Yahor Berdnikau 91d93b713d Remove unused methods.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 21:47:58 +01:00
Yahor Berdnikau 662e99ff5a Use new getAvatar() api call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 21:40:27 +01:00
Yahor Berdnikau f2ce22ef08 Fix response check NPE
Fix response check doens't take into account that body will be null
if response is not successfull.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 21:39:13 +01:00
Yahor Berdnikau 48f8d35e4f Use new api updateShare() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 15:51:15 +01:00
Yahor Berdnikau b1f7e7a14c Use new api deleteShare() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 14:41:31 +01:00
Yahor Berdnikau 51ed43978b Use new api getVideos() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-19 13:58:48 +01:00
Yahor Berdnikau a9516ecab6 Use new api deleteBookmark() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-18 22:19:00 +01:00
Yahor Berdnikau 445c3a4944 Use new api createBookmark() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-18 22:01:33 +01:00
Yahor Berdnikau 59ff48860a Use new api getBookmarks() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-18 21:37:11 +01:00
Yahor Berdnikau 6b2a682646 Add helper functions to convert api Bookmark entity to domain entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-18 21:34:03 +01:00
Yahor Berdnikau 4d2d7b9318 Use new api addChatMessage() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-16 22:20:25 +01:00
Yahor Berdnikau b6f9c733bc Delete unused ChatMessageParser.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-16 21:34:22 +01:00
Yahor Berdnikau 74bf89ef26 Use new api getChatMessages() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-16 21:33:04 +01:00
Yahor Berdnikau f1639bab48 Delete unused parser.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-15 22:05:52 +01:00
Yahor Berdnikau e537b7ae1b Use new api getUser() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-15 21:59:49 +01:00
Yahor Berdnikau 3b91f41cbe Use new api getSongsByGenre call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-14 22:12:23 +01:00
Yahor Berdnikau 579accb06c Use new api getGenres call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-12 00:00:42 +01:00
Yahor Berdnikau d693971baf Add helper functions to convert api Genre to domain entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-12 00:00:28 +01:00
Yahor Berdnikau c6c640f0cf Use new api createShare call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-11 20:31:20 +01:00
Yahor Berdnikau 04df5b20da Use new api getShares call in RESTMusicService.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-10 22:00:10 +01:00
Yahor Berdnikau 3bbd1fb16b Add methods to convert api share entity to domain entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-10 22:00:10 +01:00
Yahor Berdnikau db73978596 Use new subsonic api jukebox control method.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-07 22:03:52 +01:00
Yahor Berdnikau 3e2529bd25 Use new subsonic api stream call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-11-05 22:21:25 +01:00
Yahor Berdnikau 4ef8507353 Use new subsonic api getCoverArt call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-10-18 22:32:30 +02:00
Yahor Berdnikau cc531698e5 Use new subsonic api getSearch2 call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-16 22:57:39 +02:00
Yahor Berdnikau a6bb02fc77 Use new subsonic api getStarred call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-16 22:27:30 +02:00
Yahor Berdnikau d848fa2669 Use new subsonic api getRandomSongs call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-16 20:57:52 +02:00
Yahor Berdnikau 2e90581fb5 Use new subsonic api getAlbumList2 call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-16 20:06:30 +02:00
Yahor Berdnikau 69ac8551c6 Use new subsonic api getAlbumList() method.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-14 22:34:30 +02:00
Yahor Berdnikau 71b7948908 Use new subsonic api scrobble call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-04 21:25:56 +02:00
Yahor Berdnikau 1bb1fc0aa0 Use new subsonic api getLyrics() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-03 22:24:29 +02:00
Yahor Berdnikau ba0152bbca Use new subsonic api getPodcasts call in RestMusicService.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-03 21:42:17 +02:00
Yahor Berdnikau 0e8c853dbf Use new subsonic api updatePlaylist call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-03 10:35:04 +02:00
Yahor Berdnikau 9de41524e9 Use new subsonic api deletePlaylist call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-02 21:12:37 +02:00
Yahor Berdnikau fcb5210a3b Use new subsonic api call to create playlist.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-02 20:51:10 +02:00
Yahor Berdnikau f7498409b9 Split new subsonic api converting extension functions into different files.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-02 19:40:32 +02:00
Yahor Berdnikau 8bcebcee46 Use new subsonic api to get playlists.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-01 22:51:05 +02:00
Yahor Berdnikau d82ff15f57 Add converting subsonic api Playlist entity to domain entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-09-01 22:46:37 +02:00
Yahor Berdnikau de0b57f9b8 Use new subsonic api getPlaylist() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-27 22:36:37 +02:00
Yahor Berdnikau a65fbef3be Use new subsonic api search3 call in RESTMusicService.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-27 12:54:21 +02:00
Yahor Berdnikau 6649ba806b Use new subsonic api search2 call in RestMusicService.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-25 22:29:30 +02:00
Yahor Berdnikau 383b05e4dc Use new api method for search call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-24 22:04:53 +02:00
Yahor Berdnikau 2d8d98696c Use new getAlbum() subsonic api call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-21 21:29:09 +02:00
Yahor Berdnikau a2a0c7ac62 Use new api getArtist call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-20 21:01:22 +02:00
Yahor Berdnikau ab7f39e667 Use new api call to get music directory.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-20 15:10:34 +02:00
Yahor Berdnikau 768616d14a Add converter from api MusicDirectory to domain MusicDirectory.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-20 15:10:34 +02:00
Yahor Berdnikau 23ee01d0f5 Use new subsonic api unstar call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-17 23:06:15 +02:00
Yahor Berdnikau 40e2dd4d8c Fix missing progress listener for getArtists call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-17 22:39:12 +02:00
Yahor Berdnikau 864488510c Use new subsonic api star request.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-17 22:38:23 +02:00
Yahor Berdnikau 61006cdfd1 Use new api getArtists() call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-16 06:59:25 +02:00
Yahor Berdnikau b02df33b9c Use new subsonic api method for getIndexes().
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-12 20:24:41 +02:00
Yahor Berdnikau b57a425e9d Implement converting Indexes Subsonic api entity to domain entity.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-12 20:19:27 +02:00
Yahor Berdnikau 3c4f91efef Change to extension functions in api converter.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-08-12 10:11:14 +02:00
Yahor Berdnikau 4f42301752 Remove unused methods from MusicService.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-29 10:32:13 +02:00
Yahor Berdnikau 7a5035e725 Reset MusicService when user changes active server.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-27 08:16:33 +02:00
Yahor Berdnikau ce90d5a3e9 Use different messages in progress listener.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-26 22:58:16 +02:00
Yahor Berdnikau 987ed9faf6 Remove unused MusicFolderParser.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-26 22:56:47 +02:00
Yahor Berdnikau a8ab61ec3b Remove unused LicenseParser.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-26 22:54:56 +02:00
Yahor Berdnikau 4fd5493d15 Use getMusicFolders() method from SubsonicAPI kotlin implementation.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-26 22:04:20 +02:00
Yahor Berdnikau 67601262de Use getLicense() method from Subsonic API kotlin implementation.
Replace in RESTMusicService isLicenseValid() method body to use new kotlin subsonic API.
2017-07-25 22:31:49 +02:00
Yahor Berdnikau 1caeaa9fe6 Add using new api for ping call.
Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-07-24 22:41:26 +02:00
dtarasov e3a485f0ef Not add track number prefix to filename if its already added 2017-06-28 13:25:04 +04:00
Yahor Berdnikau c80d92b459
Update how now playing notification is shown.
Move all logic to the DownloadServiceImpl as it is not a responsibility of SubsonicTabActivity to do it.
Also NotificationCompat.Builder to build notification as now it is a standard way to do it.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-02-11 15:38:32 +01:00
Óscar García Amor 5fee79c652 Comented the code that uses sensitive permissions 2017-02-07 15:17:01 +01:00
Yahor Berdnikau 744b3d6a67 Move out server preferences to separate fragment.
Now app opens server settings in a separate activity, rather then reusing same preference screen.
2017-02-05 23:57:21 +01:00
Yahor Berdnikau 9f23778bf7 Move app settings to PreferenceFragment.
That allows display Material theme also in preferences.
2017-02-05 14:46:22 +01:00
Yahor Berdnikau 9ce1f288c0 Change app theme to Theme.AppCompat.
This changes main app theme to Material theme from support library.

Signed-off-by: Yahor Berdnikau <egorr.berd@gmail.com>
2017-02-04 23:18:02 +01:00
biconou a9d96227e4 bug fix : if a podcast episode is in status "error" it can not be added in the episodes list. Application crashes.
(cherry picked from commit 3fedd79)
2016-03-23 21:58:08 +01:00
rcocula e3e90cebf1 podcasts feature
Work on podcats

Work on podcats

podcasts

Dont't bypass the context menu in long click on album view.

Work on podcats

Work on podcats

Work on podcats

podcasts

If items are maximized they will return to minimize form when scrolling.
(cherry picked from commit ada247d)

podcasts

Podcasts icon

podcasts

podcasts
(cherry picked from commit b4ff614)
2016-03-20 00:22:30 +01:00
biconou 3f2f59020c If items are maximized they will return to minimize form when scrolling.
(cherry picked from commit ada247d)
2016-02-22 23:19:20 +01:00
biconou a17b2f978c Dont't bypass the context menu in long click on album view.
(cherry picked from commit 2aa31e0)
2016-02-12 17:06:53 +01:00
biconou a0a8c86924 On album list view text items can be minimized/maximized when long click.
(cherry picked from commit 8a3f6b2)
2016-02-12 17:06:46 +01:00
Óscar García Amor c8245e1dbe SDCard directory changed
- Now Ultrasonic stores files and caches in
	sdcard/Android/data/org.moire.ultrasonic instead sdcard/utrasonic. The
	user stills can change the music directory.
2015-07-26 18:40:04 +02:00
Óscar García Amor 879d86eaa1 Changed package name 2015-07-26 18:15:07 +02:00
Óscar García Amor ca157cd187 Removed uppercase in module name 2015-07-26 17:37:04 +02:00