player: Fix crashes when current track gets hidden while searching

We should check first if the row reference is still valid before doing
anything with it.
player: Select first track if current track was hidden/removed

This would handle next and previous track when the track changes while
searching if there is no match.
player: No next/previous track if playlist is empty

Disables next and previous buttons if the search result is empty.
player: Ignore Play button if no track is available

This fixes a crash if there is no track to play.