Implemented showing a music/video/picture playlist in PlaylistFragment even
when playback has stopped but the playlist is still available on Kodi.
The playlist is now only cleared if the Playlist.OnClear event is received
from Kodi.
As the pictures playlist does not support moving/removing items this has
been disabled for the pictures playlist only.
Added a new package org.xbmc.kore.host.actions to hold all Callable's that
we use to handle complex interactions with Kodi that use multiple JSON RPC
calls.
Fixed issue in HostConnectionObserver in method notifySomethingIsPlaying
where hostState.lastGetItemResult.label might not be set.
Reduced calling (force)refreshPlaylist considerably as it should now be
handled by the playlist observer.
Refactored MusicListFragment and PVRListFragment to use AbstractTabsFragment
Fixed scrolling in a nested scroll view using espresso
Fixed issue with setting and checking Kodi major version
* Implemented a new widget "fabspeeddial"
* Provides user with two options to play the media item. One
option to play the item on Kodi, one to play it on the remote.
* Replaced deprecated FAB button from
com.melnykov:floatingactionbutton:1.3.0 with the FAB button from
the design library
* Implemented a busy indicator (pulsate) when fab button is clicked
and JSON API method is still pending
* Added a setting to allow the user to disable local playback and
revert back to the old behaviour
* Refactored AbstractFragmentInfo
* Replaced RelativeLayout by CoordinatorLayout to support
hiding/showing the FAB button when scrolling
* Replaced the tree view observer to fade out art view when scrolling
with a behavior for the CoordinaterLayout
* Removed empty theme file for v19
* Refactored HostConnection to allow new activities to attach its
callbacks to any pending ApiMethod. This is required to support device
configuration changes.
ControlPad now uses AppCompatImageView to support theme colors.
Instead of applying the colors programmatically they are now defined
in the layout file.
* It seems tinting is applied on pre-Lollipop devices using
a color filter. HighlightButton used clearColorFilter to remove
the highlight color and revert back to the original color. This
caused an issue on < v21 devices as the View would loose its tint.
* Refactored RemoteFragment and created a compound view for the
actual remote. I called it ControlPad to make it more clear what
its main function is.
* Implemented a custom grid layout (SquareGridLayout) that will
always be square. When its width and height are both set to
match_parent, it will take the smallest of the two as the
actual size.
* For devices with a smallest width smaller then 360dp the ControlPad
is sized to the maximum available space. For larger devices we still
use the old fixed sizes.
Refactored code to use styles
* Allow the RemoteActivity and BaseMediaActivity to show a volume controller dialog when hardware volume keys are pressed
** The dialog handles the key events and makes callbacks to the activities to handle showing the dialog itself
* Minor improvements
** Make HighlightButton render in the IDE GUI Editor
** Minor code cleanup
** set currentActivePlayerId = -1; on playerOnStop in BaseMediaActivity to be more consistent
resolvesxbmc/Kore#235
* Refactored RemoteFragment and created a compound view for the
actual remote. I called it ControlPad to make it more clear what
its main function is.
* Implemented a custom grid layout (SquareGridLayout) that will
always be square. When its width and height are both set to
match_parent, it will take the smallest of the two as the
actual size.
* For devices with a smallest width smaller then 360dp the ControlPad
is sized to the maximum available space. For larger devices we still
use the old fixed sizes.
* Panel now only closes when collapsed bar is clicked.
This prevents unwanted closing when using the sliders and
buttons.
* Moved collapsed panel size to the compound view so users
of the NowPlayingPanel don't need to look inside the
compound view layout to determine the correct size.
* The slideup panel is only displayed when something is
playing. It starts collapsed showing the media poster
and title of what is currently playing.
* Media controls implemented are volume, progress, shuffle,
repeat and play/pause for all items. Next and previous are only
available when a music item is playing.
* In collapsed mode the panel will display the mute button only
if Kodi is muted. The mute button in expanded mode is always
visible.
* Panel is enabled by default. Users can disable the panel
in Settings
* Implemented listening to Player.OnPropertyChanged notifications
to update shuffle and repeat button states.