* Fixed issue downloading all songs from an artist
* Added download option for songs in songslistfragment
* Created UIUtils.downloadSongs(...) to reduce code duplication
* Refactored downloading of songs on host/artist/album levels
All levels now use song display artist as artist and album display artist.
This prevents downloading songs multiple times when downloading same song on different levels.
* Song lists for artist, album, and overall now shows the artist name for each individual song
* Added display artist column to songs table. This required a DB upgrade and users should
do a refresh for music items to be able to see the display artist in the song lists.
Currently Kore does only support the playback of youtube and vimeo video
urls when invoked via the "Play with Kodi" share menu.
This commit adds support for plain video urls.
This applies the fix for issue #219 Incomplete libraries for movies and
TV shows.
For music items this was already fixed in PR #236
See commit 7330f85241
* Added perl tools to generate json files for music and movie data
* Upgraded build tools version, sdk compile version, and support libraries
as this is required by the test packages.
* Added new product flavor instrumentationTest to make sure assets and settings
required for testing do not also ship with a release version of Kore
Using Kodi's JSON RPC, Kodi may return less items than requested, even
if there are more items available. The old method of determining if
more items are available by checking if the amount of items returned
equals the amount requested does not work in these cases. Therefore,
we now use the returned List.LimitsReturned to determine if there are
more items available. If List.LimitsReturned.end equals
List.LimitesReturned.total we assume we retrieved all items.
The SongsListFragment lists all available songs for a connected host or
for a specific artist.
Added the songs tab to the music screen and to the artist details
screen.
Using AddonOverviewFragment in both cases would probably be an easier to
follow code path, but this implementation switches between using
AddonDetailsFragment directly and adding it via AddonOverviewFragment.
Some plugins trigger UI when you Kore attempts to browse. We don't want
the Content tab to cause this when the user has only opened the Overview
tab.
For the tabs pinned to the addons view (AddonListContainerFragment),
loading by the usual OffScreenPageLimit rules probably makes sense, as
you can avoid pinning tabs that don't work well.
When user enters a search query for a ListFragment the query will
now be restored on device configuration changes and when
ListFragment is restored from the backstack or in a ViewPager.
Refactored AbstractListFragment to make it more generic and allow it to be used by
MediaFileListFragment. This adds support for switching between a single- and multicolumn
view.
Created new abstract class AbstractCursorListFragment for list fragments using a cursoradapter.
When user selects artist from ArtistListFragment it will now
show a screen displaying artist details. I've taken the TV show
details setup as an example.
This adds the following new functionality:
* Displaying artist fanart
* Displaying artist description
* Download all songs from an artist
Removed getting details in AddonDetailsFragment as the
AddonListFragment already provides all information required
in the AddonDetailsFragment. Therefore, we do not need to
retrieve the same information in the AddonDetailsFragment as well.
EventServer only listens on IPv4 addresses, even if the machine running
kodi has IPv6 support (the webserver on the other hand does listen on
both IPv4 and IPv6).
fixes#148
When shared element view is not visible on returning, the return shared
element transition starts off screen. This looks odd and we now simply
do not perform the shared element transition when the shared element is
not visible.
Added SharedElementCallback to be able to detect if shared element
is still visible. If not, the shared element transition should not
be performed when returning to the previous fragment.
Added the pager tab strip to the fade animation to keep shared element
transition smooth when poster is partly below the toolbar.
I removed using the poster as fanart if no fanart is available.
The reason is that the shared element transition is not very smooth
when the aspect ratio of the two image states is not the same.
Going from AlbumListFragment to AlbumDetailsFragment the poster
is resized correctly to the fanart size. However, returning to the
AlbumListFragment from the AlbumDetailsFragment the poster is
abruptly resized to the square aspect ratio needed for the list
fragment.