title: MultiItem ListGrid filtering
body: <p>I'm currently setting up a <code>ListGrid</code> with filters, but am having problems in implementing a filter for fields with multiple items selection.</p>
  
  <p>Here's an example of what I want to achieve:</p>
  
  <p>I have a <code>ListGrid</code> with these values:</p>
  
  <pre><code>_________________
  |Fruits Selected|
  |_______________|
  |Apple          |
  |Apple,Orange   |
  |Orange         |
  |_______________|
  </code></pre>
  
  <p>When I try to filter and select Orange in my "Multi-Item Filter" I expect to see this on my grid:</p>
  
  <pre><code>_________________
  |Fruits Selected|
  |_______________|
  |Apple,Orange   |
  |Orange         |
  |_______________|
  </code></pre>
  
  <p>But instead, I only see this:</p>
  
  <pre><code>_________________
  |Fruits Selected|
  |_______________|
  |Orange         |
  |_______________|
  </code></pre>
  
  <p>Am I interpreting the expected output wrong? If so, is there a way that I can customize the way that multiple items filter is handled?</p>
  
  <p>Another thing, I'm using <code>GenericGwtRpcDataSource</code> from this forums. Hopefully this is not an issue.</p>
  
  <p>Here's a sample code as requested:
  <strong>DataSource</strong></p>
  
  <pre><code>public class FruitLocalDS extends DataSource {
  
  private static FruitLocalDS instance = null;
  
  public static FruitLocalDS getInstance() {
      if (instance == null) {
          instance = new FruitLocalDS("supplyItemLocalDS");
      }
      return instance;
  }
  
  public FruitLocalDS(String id) {
      setID(id);
  
      DataSourceEnumField fruitNameField = new DataSourceEnumField(
              "fruitNames", "Fruit Name");
      fruitNameField.setMultiple(true);
      fruitNameField.setValueMap("Apple", "Guyabano", "Pineapple", "Orange",
              "Grapes");
  
      setFields(fruitNameField);
      setClientOnly(true);
      setTestData(Fruit.getDummyRecords());
  }}
  </code></pre>
  
  <p><strong>ListGridRecord</strong>:</p>
  
  <pre><code>public class Fruit  extends ListGridRecord {
  
  public Fruit(String[] fruitNames) {
      setFruitNames(fruitNames);
  }
  
  public void setFruitNames(String[] fruitNames) {
      setAttribute("fruitNames", fruitNames);
  }
  
  public String getFruitName() {
      return getAttribute("fruitNames");
  }
  
  public static Fruit[] getDummyRecords() {
      return new Fruit[] {
              new Fruit(new String[]{"Orange"}), 
              new Fruit(new String[]{"Apple", "Orange"}),
              new Fruit(new String[]{"Guyabano","Orange"}),
              new Fruit(new String[]{"Pineapple","Orange"}),
      };
  }}
  </code></pre>
  
  <p><strong>EntryPoint</strong>:</p>
  
  <pre><code>public class MultiItemTest implements EntryPoint {
  public void onModuleLoad() {
      final DataSource dataSource = FruitLocalDS.getInstance();
  
      ListGrid listGrid = new ListGrid();
      listGrid.setWidth(1000);
      // listGrid.setAutoFitData(Autofit.VERTICAL);
      listGrid.setHeight(224);
      listGrid.setDataPageSize(50);
      listGrid.setDataSource(dataSource);
      listGrid.setShowFilterEditor(true);
      listGrid.setCanEdit(true);
      listGrid.setAutoFetchData(true);
      listGrid.setEditEvent(ListGridEditEvent.DOUBLECLICK);
  
      listGrid.setShowRowNumbers(true);
      listGrid.setFilterOnKeypress(true);
      listGrid.setFetchDelay(1);
  
      listGrid.draw();
  }}
  </code></pre>
  
  <p>When you try selecting 'Orange' in the filter it will only show:</p>
  
  <pre><code>Orange
  </code></pre>
  
  <p>what I expect is:</p>
  
  <pre><code>Apple,Orange
  Guyabano,Orange
  Orange
  Pineapple, Orange
  </code></pre>