public boolean doResume(Fragment owner, Runnable dataAvail) {
   mOwner = owner;
   mState.resume(this);
   if (mState.hasData()) {
     // If the state already has its data, then let's populate our
     // list right now to avoid flicker.
     refreshUi(true);
     return true;
   }
   mDataAvail = dataAvail;
   return false;
 }
 @Override
 public boolean isEmpty() {
   return mState.hasData() && mItems.size() == 0;
 }