code: private void addFilesFromDir(File dir) {
      File[] files = dir.listFiles();
      for (int i = 0; i < files.length; i++) {
        if (!files[i].isDirectory()) {
          mFiles.add(files[i]);
        } else if (mRecursive) {
          addFilesFromDir(files[i]);
        }
      }
    }
docs: This method adds files in the directory passed in as a parameter to mFiles.
  If mRecursive is true, it will include all files in all subdirectories
  (recursively), as well.
  
  @param dir