Program: 3977
Project: 3977
Buggy source:
private Component makeLeftPanel(final Navigator navigator){
  itemIconLabel=new JLabel();
  itemIconLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
  itemIconLabel.setOpaque(false);
  heading.setContentType("String_Node_Str");
  heading.setEditable(false);
  heading.setMaximumSize(new Dimension(Integer.MAX_VALUE,25));
  heading.setOpaque(false);
  heading.addMouseListener(new MouseAdapter(){
    @Override public void mouseEntered(    MouseEvent e){
      populateHeading(rowHeightRule.getDisplayResult(vsr,searchText),vsr.getDownloadState(),true);
    }
    @Override public void mouseExited(    MouseEvent e){
      populateHeading(rowHeightRule.getDisplayResult(vsr,searchText),vsr.getDownloadState(),false);
    }
  }
);
  subheadingLabel.setForeground(subHeadingLabelColor);
  subheadingLabel.setFont(subHeadingFont);
  metadataLabel.setForeground(metadataLabelColor);
  metadataLabel.setFont(metadataFont);
  downloadSourceCount.setForeground(downloadSourceCountColor);
  downloadSourceCount.setFont(downloadSourceCountFont);
  JXPanel itemIconPanel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  itemIconPanel.setOpaque(false);
  itemIconPanel.add(itemIconLabel);
  searchResultTextPanel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  searchResultTextPanel.setOpaque(false);
  searchResultTextPanel.add(heading,"String_Node_Str");
  searchResultTextPanel.add(subheadingLabel,"String_Node_Str");
  searchResultTextPanel.add(metadataLabel,"String_Node_Str");
  JXPanel panel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  panel.setOpaque(false);
  panel.add(itemIconPanel);
  panel.add(searchResultTextPanel,"String_Node_Str");
  panel.add(downloadSourceCount);
  heading.addHyperlinkListener(new HyperlinkListener(){
    @Override public void hyperlinkUpdate(    HyperlinkEvent e){
      if (EventType.ACTIVATED == e.getEventType()) {
        if (e.getDescription().equals("String_Node_Str")) {
          actionButtonPanel.startDownload();
          table.editingStopped(new ChangeEvent(table));
        }
 else         if (e.getDescription().equals("String_Node_Str")) {
          navigator.getNavItem(NavCategory.DOWNLOAD,MainDownloadPanel.NAME).select(vsr);
        }
 else         if (e.getDescription().equals("String_Node_Str")) {
          navigator.getNavItem(NavCategory.LIBRARY,LibraryNavigator.NAME_PREFIX + vsr.getCategory()).select(vsr);
        }
      }
    }
  }
);
  return panel;
}

Fixed version (ground truth):
private Component makeLeftPanel(final Navigator navigator){
  itemIconLabel=new JLabel();
  itemIconLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
  itemIconLabel.setOpaque(false);
  heading.setContentType("String_Node_Str");
  heading.setEditable(false);
  heading.setMaximumSize(new Dimension(Integer.MAX_VALUE,25));
  heading.setOpaque(false);
  heading.addMouseListener(new MouseAdapter(){
    @Override public void mouseEntered(    MouseEvent e){
      populateHeading(rowHeightRule.getDisplayResult(vsr,searchText),vsr.getDownloadState(),true);
    }
    @Override public void mouseExited(    MouseEvent e){
      populateHeading(rowHeightRule.getDisplayResult(vsr,searchText),vsr.getDownloadState(),false);
    }
  }
);
  subheadingLabel.setForeground(subHeadingLabelColor);
  subheadingLabel.setFont(subHeadingFont);
  metadataLabel.setForeground(metadataLabelColor);
  metadataLabel.setFont(metadataFont);
  downloadSourceCount.setForeground(downloadSourceCountColor);
  downloadSourceCount.setFont(downloadSourceCountFont);
  JXPanel itemIconPanel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  itemIconPanel.setOpaque(false);
  itemIconPanel.add(itemIconLabel);
  searchResultTextPanel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  searchResultTextPanel.setOpaque(false);
  searchResultTextPanel.add(heading,"String_Node_Str");
  searchResultTextPanel.add(subheadingLabel,"String_Node_Str");
  searchResultTextPanel.add(metadataLabel,"String_Node_Str");
  JXPanel panel=new JXPanel(new MigLayout("String_Node_Str","String_Node_Str","String_Node_Str"));
  panel.setOpaque(false);
  panel.add(itemIconPanel);
  panel.add(searchResultTextPanel,"String_Node_Str");
  panel.add(downloadSourceCount,"String_Node_Str");
  heading.addHyperlinkListener(new HyperlinkListener(){
    @Override public void hyperlinkUpdate(    HyperlinkEvent e){
      if (EventType.ACTIVATED == e.getEventType()) {
        if (e.getDescription().equals("String_Node_Str")) {
          actionButtonPanel.startDownload();
          table.editingStopped(new ChangeEvent(table));
        }
 else         if (e.getDescription().equals("String_Node_Str")) {
          navigator.getNavItem(NavCategory.DOWNLOAD,MainDownloadPanel.NAME).select(vsr);
        }
 else         if (e.getDescription().equals("String_Node_Str")) {
          navigator.getNavItem(NavCategory.LIBRARY,LibraryNavigator.NAME_PREFIX + vsr.getCategory()).select(vsr);
        }
      }
    }
  }
);
  return panel;
}