[Demonstration 1]

[Buggy Method]
private void initComponents() {
    infoToolbar = new javax.swing.JPanel();
    controlToolBar = new javax.swing.JToolBar();
    saveFileButton = new javax.swing.JButton();
    undoEditButton = new javax.swing.JButton();
    redoEditButton = new javax.swing.JButton();
    lineWrappingToggleButton = new javax.swing.JToggleButton();
    showUnprintablesToggleButton = new javax.swing.JToggleButton();
    jSeparator1 = new javax.swing.JToolBar.Separator();
    jSeparator2 = new javax.swing.JToolBar.Separator();
    jSeparator3 = new javax.swing.JToolBar.Separator();
    codeTypeComboBox = new ComboBox<>();
    editorPanel.setLayout(new java.awt.BorderLayout());
    controlToolBar.setBorder(null);
    controlToolBar.setFloatable(false);
    controlToolBar.setRollover(true);
    saveFileButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/exbin/deltahex/intellij/resources/icons/document-save.png")));
    saveFileButton.setToolTipText("Save current file");
    saveFileButton.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            saveFileButtonActionPerformed(evt);
        }
    });
    saveFileButton.setEnabled(false);
    controlToolBar.add(saveFileButton);
    controlToolBar.add(jSeparator1);
    undoEditButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/exbin/deltahex/intellij/resources/icons/edit-undo.png")));
    undoEditButton.setToolTipText("Undo last operation");
    undoEditButton.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            undoEditButtonActionPerformed(evt);
        }
    });
    controlToolBar.add(undoEditButton);
    redoEditButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/exbin/deltahex/intellij/resources/icons/edit-redo.png")));
    redoEditButton.setToolTipText("Redo last undid operation");
    redoEditButton.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            redoEditButtonActionPerformed(evt);
        }
    });
    controlToolBar.add(redoEditButton);
    controlToolBar.add(jSeparator2);
    lineWrappingToggleButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/exbin/deltahex/intellij/resources/icons/deltahex-linewrap.png")));
    lineWrappingToggleButton.setToolTipText("Wrap line to window size");
    lineWrappingToggleButton.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            lineWrappingToggleButtonActionPerformed(evt);
        }
    });
    controlToolBar.add(lineWrappingToggleButton);
    showUnprintablesToggleButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/exbin/deltahex/intellij/resources/icons/insert-pilcrow.png")));
    showUnprintablesToggleButton.setToolTipText("Show symbols for unprintable/whitespace characters");
    showUnprintablesToggleButton.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            showUnprintablesToggleButtonActionPerformed(evt);
        }
    });
    controlToolBar.add(showUnprintablesToggleButton);
    controlToolBar.add(jSeparator3);
    codeTypeComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "BIN", "OCT", "DEC", "HEX" }));
    codeTypeComboBox.setMaximumSize(new java.awt.Dimension(58, 25));
    codeTypeComboBox.addActionListener(new java.awt.event.ActionListener() {

        public void actionPerformed(java.awt.event.ActionEvent evt) {
            codeTypeComboBoxActionPerformed(evt);
        }
    });
    controlToolBar.add(codeTypeComboBox);
    javax.swing.GroupLayout infoToolbarLayout = new javax.swing.GroupLayout(infoToolbar);
    infoToolbar.setLayout(infoToolbarLayout);
    infoToolbarLayout.setHorizontalGroup(infoToolbarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(infoToolbarLayout.createSequentialGroup().addComponent(controlToolBar, javax.swing.GroupLayout.DEFAULT_SIZE, 366, Short.MAX_VALUE)));
    infoToolbarLayout.setVerticalGroup(infoToolbarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(controlToolBar, javax.swing.GroupLayout.PREFERRED_SIZE, 25, Short.MAX_VALUE));
    headerPanel = new JPanel();
    headerPanel.setLayout(new java.awt.BorderLayout());
    headerPanel.add(infoToolbar, java.awt.BorderLayout.CENTER);
    editorPanel.add(headerPanel, java.awt.BorderLayout.NORTH);
}

[Buggy Hunk]
codeTypeComboBox.setMaximumSize(new java.awt.Dimension(58, 25));

[Patch]
codeTypeComboBox.setMaximumSize(new java.awt.Dimension(64, 25));

[Demonstration 2]

[Buggy Method]
private void uiThreadCheck() {
    if (java.awt.EventQueue.isDispatchThread()) {
        RunGame.printStackTraceAndCrashTheProgramBecause("Only the UI thread can access this data");
    }
}

[Buggy Hunk]
if ( java.awt.EventQueue.isDispatchThread() ) {

[Patch]
if ( ! java.awt.EventQueue.isDispatchThread() ) {

[Demonstration 3]

[Buggy Method]
@Override
protected void onPause() {
    super.onPause();
    SimpleNotepadActivity.requestToShowArrow();
}

[Buggy Hunk]
SimpleNotepadActivity.requestToShowArrow();

[Patch]
SimpleNotepadActivity.requestToShowArrow(this);