docs: public <T extends TextView> T searchFor(final Class<T> viewClass, final String regex, int expectedMinimumNumberOfMatches, final long timeout, final boolean scroll, final boolean onlyVisible) {
  		if(expectedMinimumNumberOfMatches < 1) {
  			expectedMinimumNumberOfMatches = 1;
  		}
  
  		final Callable<Collection<T>> viewFetcherCallback = new Callable<Collection<T>>() {
  			@SuppressWarnings("unchecked")
  			public Collection<T> call() throws Exception {
  				sleeper.sleep();
  	
  				ArrayList<T> viewsToReturn = viewFetcher.getCurrentViews(viewClass, true);
  
  				if(onlyVisible){
  					viewsToReturn = RobotiumUtils.removeInvisibleViews(viewsToReturn);
  				}
  		
  				if(viewClass.isAssignableFrom(TextView.class)) {
  					viewsToReturn.addAll((Collection<? extends T>) webUtils.getTextViewsFromWebView());
  				}
  				return viewsToReturn;
  			}
  		};
  
  		try {
  			return searchFor(viewFetcherCallback, regex, expectedMinimumNumberOfMatches, timeout, scroll);
  		} catch (Exception e) {
  			throw new RuntimeException(e);
  		}
  	}