* 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
* 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.
* 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.