@Override
 public void onBindViewHolder(final TrackViewHolder holder, int position) {
   TrackItem item = new TrackItem(mList.get(position));
   Bitmap art = item.getArt();
   if (art != null) {
     holder.art.setImageBitmap(art);
   } else {
     holder.art.setImageDrawable(null);
   }
   holder.title.setText(
       position == mCurrentPosition ? getBoldString(item.getTitle()) : item.getTitle());
   holder.artist.setText(item.getArtist());
   holder.duration.setText(item.getDuration());
   holder.itemView.setOnClickListener(
       new View.OnClickListener() {
         @Override
         public void onClick(View v) {
           Intent intent = new Intent();
           intent.putExtra(SEEK_COUNT_EXTRA, holder.getAdapterPosition() - mCurrentPosition);
           try {
             mReply.send(holder.itemView.getContext(), 0, intent);
           } catch (PendingIntent.CanceledException e) {
             log(e);
           }
           if (mCloseRunnable != null) {
             mCloseRunnable.run();
           }
         }
       });
 }