d open(EmojiSearchField searchField) {
    myFocusedItem = -1;
    Point center = searchField.getSkinToneIconCenter();
    setBounds(searchField.getX() + center.x - myItemSize / 2 - 1,
              searchField.getY() + center.y - myItemSize / 2 - 1,
              myItemSize + 2, myItemSize * myItemMap.size() + 2);
    GridBagConstraints gbc = new GridBagConstraints();
    gbc.gridx = 0;
    removeAll();
    add(myItemMap.get(myCurrentSkinTone).myButton, gbc);
    for (Map.Entry<EmojiSkinTone, Item> item : myItemMap.entrySet()) {
      if (item.getKey() != myCurrentSkinTone) add(item.getValue().myButton, gbc);
    }
    doLayout();
    setVisible(true);
  }

 
d open(EmojiSearchField searchField) {
