Bug 73557 [Dialogs] Pattern matching changes Open Resource type-ahead behaviour
If I use the "Open Resource" dialog (Ctrl-Shift-r) and being typing, it lists matches as though there is an implicit '*' at the end. E.g. if I being typing "MyF", it will show "MyFunClass.java", "MyFoobar.java", etc. But if I add a '*' at the beginning, and start typing e.g. "*F", it doesn't show the same list of files. Instead, only anything ending with 'F' is shown. I've tried this with a couple of other expressions, and it seems that if any regular expression is used, the behaviour of the dialog changes -- there is no longer considered to be a '*' at the end. I think this is confusing behaviour. If I add a manually add a '*' at the end of my expression, and then begin typing before the '*', I get the behaviour that I would expect.
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/dialogs/ResourceListSelectionDialog.java
import org.eclipse.core.runtime.CoreException;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.BusyIndicator;
import org.eclipse.swt.events.KeyAdapter;
import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.internal.ide.IDEWorkbenchMessages;
import org.eclipse.ui.internal.ide.StringMatcher;
import org.eclipse.ui.model.WorkbenchLabelProvider;
/**
 * Shows a list of resources to the user with a text entry field
 * for a string pattern used to filter the list of resources.
 * <p>
 * 
 * @since 2.1
 */
public class ResourceListSelectionDialog extends SelectionDialog {