code: function _inSearchScope(file) {
          // Replicate the checks getCandidateFiles() does
          if (searchModel && searchModel.scope) {
              if (!_subtreeFilter(file, searchModel.scope)) {
                  return false;
              }
          } else {
              // Still need to make sure it's within project or working set
              // In getCandidateFiles(), this is covered by the baseline getAllFiles() itself
              if (file.fullPath.indexOf(ProjectManager.getProjectRoot().fullPath) !== 0) {
                  if (MainViewManager.findInWorkingSet(MainViewManager.ALL_PANES, file.fullPath) === -1) {
                      return false;
                  }
              }
          }
  
          if (!_isReadableText(file.fullPath)) {
              return false;
          }
  
          // Replicate the filtering filterFileList() does
          return FileFilters.filterPath(searchModel.filter, file.fullPath);
      }
docs: Checks that the file is eligible for inclusion in the search (matches the user's subtree scope and
  file exclusion filters, and isn't binary). Used when updating results incrementally - during the
  initial search, these checks are done in bulk via getCandidateFiles() and the filterFileList() call
  after it.
  @param {!File} file
  @return {boolean}