private void setupDirectoryView() {
    myList.getTableHeader().setDefaultRenderer(new MyHeaderCellRenderer(myList.getTableHeader().getDefaultRenderer()));
    myList.setDefaultRenderer(Object.class, new MyTableCellRenderer(myList.getDefaultRenderer(Object.class)));
    myList.resetDefaultFocusTraversalKeys();
    myList.setShowGrid(false);
    myList.setCellSelectionEnabled(false);
    myList.setColumnSelectionAllowed(false);
    myList.setRowSelectionAllowed(true);
    myList.setSelectionMode(myDescriptor.isChooseMultiple() ? ListSelectionModel.MULTIPLE_INTERVAL_SELECTION : ListSelectionModel.SINGLE_SELECTION);
    myList.addFocusListener(new FocusAdapter() {
      @Override
      public void focusGained(FocusEvent e) {
        myPathBarActive = false;
      }
    });
    new ClickListener() {
      @Override
      public boolean onClick(@NotNull MouseEvent e, int clickCount) {
        if (e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 2) {
          var idx = myList.rowAtPoint(e.getPoint());
          if (idx >= 0) {
            myList.setRowSelectionInterval(idx, idx);
            var action = myList.getActionMap().get(OPEN);
            if (action != null) action.actionPerformed(null);
            return true;
          }
        }
        return false;
      }
    }.installOn(myList, true);
    myList.getActionMap().put(OPEN, new AbstractAction() {
      @Override
      public void actionPerformed(ActionEvent e) {
        openSelectedRow();
      }
    });
    myList.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), OPEN);
    TableSpeedSearch.installOn(myList);
    myList.getActionMap().put(TableActions.Left.ID, myList.getActionMap().get(TableActions.CtrlHome.ID));
    myList.getActionMap().put(TableActions.Right.ID, myList.getActionMap().get(TableActions.CtrlEnd.ID));
    myList.setTransferHandler(new TransferHandler(null) {
      @Override
      public int getSourceActions(JComponent c) {
        return COPY;
      }

      @Override
      protected Transferable createTransferable(JComponent c) {
        var items = myList.getSelectedObjects();
        return items.isEmpty() ? null : new TextTransferable(items.stream().map(item -> item.name).collect(Collectors.joining("\n")));
      }
    });
  }
private void setupDirectoryView()