docs: public synchronized T addItem(V item) {
          if(item == null) {
              return self();
          }
  
          items.add(item);
          if(selectedIndex == -1) {
              selectedIndex = 0;
          }
          invalidate();
          return self();
      }