diff --git a/src/org/openstreetmap/josm/gui/ExtendedDialog.java b/src/org/openstreetmap/josm/gui/ExtendedDialog.java
index b7b6afb..28bb484 100644
--- a/src/org/openstreetmap/josm/gui/ExtendedDialog.java
+++ b/src/org/openstreetmap/josm/gui/ExtendedDialog.java
@@ -5,6 +5,7 @@ import static org.openstreetmap.josm.tools.I18n.tr;
 
 import java.awt.Component;
 import java.awt.Dimension;
+import java.awt.Frame;
 import java.awt.GridBagConstraints;
 import java.awt.GridBagLayout;
 import java.awt.Insets;
@@ -145,7 +146,7 @@ public class ExtendedDialog extends JDialog {
     }
 
     public ExtendedDialog(Component parent, String title, String[] buttonTexts, boolean modal, boolean disposeOnClose) {
-        super(GuiHelper.getFrameForComponent(parent), title, modal ? ModalityType.DOCUMENT_MODAL : ModalityType.MODELESS);
+        super(searchRealParent(parent), title, modal ? ModalityType.DOCUMENT_MODAL : ModalityType.MODELESS);
         this.parent = parent;
         this.modal = modal;
         bTexts = Utils.copyArray(buttonTexts);
@@ -155,6 +156,14 @@ public class ExtendedDialog extends JDialog {
         this.disposeOnClose = disposeOnClose;
     }
 
+    private static Frame searchRealParent(Component parent) {
+        if (parent == null) {
+            return null;
+        } else {
+            return GuiHelper.getFrameForComponent(parent);
+        }
+    }
+
     /**
      * Allows decorating the buttons with icons.
      * @param buttonIcons The button icons
diff --git a/src/org/openstreetmap/josm/tools/GBC.java b/src/org/openstreetmap/josm/tools/GBC.java
index 7dd8553..0261e61 100644
--- a/src/org/openstreetmap/josm/tools/GBC.java
+++ b/src/org/openstreetmap/josm/tools/GBC.java
@@ -96,6 +96,17 @@ public final class GBC extends GridBagConstraints {
     }
 
     /**
+     * Adds insets to this GBC.
+     * @param insets The insets in all directions.
+     * @return This constraint for chaining.
+     * @since xxx
+     */
+    public GBC insets(int insets) {
+        insets(insets, insets, insets, insets);
+        return this;
+    }
+
+    /**
      * Specifies how to distribute extra horizontal space.
      * @param weightx   Weight in horizontal direction
      * @param weighty   Weight in vertical direction
diff --git a/src/org/openstreetmap/josm/tools/bugreport/BugReport.java b/src/org/openstreetmap/josm/tools/bugreport/BugReport.java
index 9b4aea6..360c509 100644
--- a/src/org/openstreetmap/josm/tools/bugreport/BugReport.java
+++ b/src/org/openstreetmap/josm/tools/bugreport/BugReport.java
@@ -2,6 +2,7 @@
 package org.openstreetmap.josm.tools.bugreport;
 
 import java.io.PrintWriter;
+import java.io.Serializable;
 import java.io.StringWriter;
 import java.util.concurrent.CopyOnWriteArrayList;
 
@@ -37,7 +38,9 @@ import org.openstreetmap.josm.actions.ShowStatusReportAction;
  * @author Michael Zangl
  * @since 10285
  */
-public final class BugReport {
+public final class BugReport implements Serializable {
+    private static final long serialVersionUID = 1L;
+
     private boolean includeStatusReport = true;
     private boolean includeData = true;
     private boolean includeAllStackTraces;
diff --git a/src/org/openstreetmap/josm/tools/bugreport/BugReportDialog.java b/src/org/openstreetmap/josm/tools/bugreport/BugReportDialog.java
new file mode 100644
index 0000000..62027ef
--- /dev/null
+++ b/src/org/openstreetmap/josm/tools/bugreport/BugReportDialog.java
@@ -0,0 +1,191 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.tools.bugreport;
+
+import static org.openstreetmap.josm.tools.I18n.tr;
+
+import java.awt.Component;
+import java.awt.Frame;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+
+import javax.swing.BorderFactory;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JDialog;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.UIManager;
+
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.actions.ExpertToggleAction;
+import org.openstreetmap.josm.gui.widgets.JMultilineLabel;
+import org.openstreetmap.josm.gui.widgets.UrlLabel;
+import org.openstreetmap.josm.tools.GBC;
+import org.openstreetmap.josm.tools.ImageProvider;
+
+/**
+ * This is a fialog that can be used to display a bug report.
+ * <p>
+ * It displays the bug to the user and asks the user to submit a bug report.
+ * @author Michael Zangl
+ * @since xxx
+ */
+public class BugReportDialog extends JDialog {
+    private static final int MAX_MESSAGE_SIZE = 500;
+    // This is explicitly not an ExtendedDialog - we still want to be able to display bug reports if there are problems with preferences/..
+    private final JPanel content = new JPanel(new GridBagLayout());
+    private final BugReport report;
+    private final DebugTextDisplay textPanel;
+    private JCheckBox cbSuppress;
+
+    /**
+     * Create a new dialog.
+     * @param report The report to display the dialog for.
+     */
+    public BugReportDialog(BugReport report) {
+        super(findParent(), tr("You have encountered a bug in JOSM"));
+        this.report = report;
+        textPanel = new DebugTextDisplay(report);
+        setContentPane(content);
+
+        addMessageSection();
+
+        addUpToDateSection();
+        // TODO: Notify user about plugin updates
+
+        addCreateTicketSection();
+
+        if (ExpertToggleAction.isExpert()) {
+            addDebugTextSection();
+        }
+
+        addIgnoreButton();
+
+        pack();
+        setModal(true);
+        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
+    }
+
+    /**
+     * The message informing the user what happened.
+     */
+    private void addMessageSection() {
+        String message = tr(
+                "An unexpected exception occurred.\n" + "This is always a coding error. If you are running the latest "
+                        + "version of JOSM, please consider being kind and file a bug report.");
+        Icon icon = UIManager.getIcon("OptionPane.errorIcon");
+
+        JPanel panel = new JPanel(new GridBagLayout());
+
+        panel.add(new JLabel(icon), GBC.std().insets(0, 0, 10, 0));
+        JMultilineLabel messageLabel = new JMultilineLabel(message);
+        messageLabel.setMaxWidth(MAX_MESSAGE_SIZE);
+        panel.add(messageLabel, GBC.eol().fill());
+        content.add(panel, GBC.eop().fill(GBC.HORIZONTAL).insets(20));
+    }
+
+    private void addDebugTextSection() {
+        JPanel panel = new JPanel(new GridBagLayout());
+        addBorder(panel, tr("Debug information"));
+        panel.add(textPanel, GBC.eop().fill());
+
+        panel.add(new JLabel(tr("Manually report at:")), GBC.std());
+        panel.add(new UrlLabel(Main.getJOSMWebsite() + "/newticket"), GBC.std().fill(GBC.HORIZONTAL));
+        JButton copy = new JButton("Copy to clipboard");
+        copy.addActionListener(e -> textPanel.copyToClippboard());
+        panel.add(copy, GBC.eol().anchor(GBC.EAST));
+        content.add(panel, GBC.eop().fill());
+    }
+
+    private void addUpToDateSection() {
+        JPanel panel = new JosmUpdatePanel();
+        addBorder(panel, tr("Is JOSM up to date?"));
+        content.add(panel, GBC.eop().fill(GBC.HORIZONTAL));
+    }
+
+    private void addCreateTicketSection() {
+        JPanel panel = new JPanel(new GridBagLayout());
+        addBorder(panel, tr("Send bug report"));
+
+        JMultilineLabel helpText = new JMultilineLabel(
+                tr("If you are running the latest version of JOSM and the plugins, "
+                        + "please file a bug report in our bugtracker.\n"
+                        + "There the error information should already be "
+                        + "filled in for you. Please include information on how to reproduce "
+                        + "the error and try to supply as much detail as possible."));
+        helpText.setMaxWidth(MAX_MESSAGE_SIZE);
+        panel.add(helpText, GBC.eop().fill(GridBagConstraints.HORIZONTAL));
+
+        if (ExpertToggleAction.isExpert()) {
+            // The default settings should be fine in most situations.
+            panel.add(new BugReportSettingsPanel(report), GBC.eop().fill(GBC.HORIZONTAL));
+        }
+
+        JButton sendBugReportButton = new JButton(tr("Report Bug"), ImageProvider.get("bug"));
+        sendBugReportButton.addActionListener(e -> sendBug());
+        panel.add(sendBugReportButton, GBC.eop().anchor(GBC.EAST));
+        content.add(panel, GBC.eop().fill(GBC.HORIZONTAL));
+    }
+
+    private static void addBorder(JPanel panel, String title) {
+        panel.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createTitledBorder(title), BorderFactory
+                .createEmptyBorder(10, 10, 10, 10)));
+    }
+
+    private void addIgnoreButton() {
+        JPanel panel = new JPanel(new GridBagLayout());
+        cbSuppress = new JCheckBox(tr("Suppress further error dialogs for this session."));
+        cbSuppress.setVisible(false);
+        panel.add(cbSuppress, GBC.std().fill(GBC.HORIZONTAL));
+        JButton ignore = new JButton(tr("Ignore this error."));
+        ignore.addActionListener(e -> closeDialog());
+        panel.add(ignore, GBC.eol());
+        content.add(panel, GBC.eol().fill(GBC.HORIZONTAL).insets(20));
+    }
+
+    /**
+     * Shows or hides the suppress errors button
+     * @param showSuppress <code>true</code> to show the suppress errors checkbox.
+     */
+    public void setShowSuppress(boolean showSuppress) {
+        cbSuppress.setVisible(showSuppress);
+        pack();
+    }
+
+    /**
+     * Check if the checkbox to suppress further errors was selected
+     * @return <code>true</code> if the user wishes to suppress errors.
+     */
+    public boolean shouldSuppressFurtherErrors() {
+        return cbSuppress.isSelected();
+    }
+
+    private void closeDialog() {
+        setVisible(false);
+    }
+
+    private void sendBug() {
+        BugReportSender.reportBug(textPanel.getCodeText());
+    }
+
+    /**
+     * A safe way to find a matching parent frame.
+     * @return The parent frame.
+     */
+    private static Frame findParent() {
+        Component current = Main.parent;
+        try {
+            // avoid cycles/invalid hirarchies
+            for (int i = 0; i < 20 && current != null; i++) {
+                if (current instanceof Frame) {
+                    return (Frame) current;
+                }
+                current = current.getParent();
+            }
+        } catch (RuntimeException e) {
+            BugReport.intercept(e).put("current", current).warn();
+        }
+        return null;
+    }
+}
diff --git a/src/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandler.java b/src/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandler.java
index 94fa83e..461b73f 100644
--- a/src/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandler.java
+++ b/src/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandler.java
@@ -1,35 +1,15 @@
 // License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.tools.bugreport;
 
-import static org.openstreetmap.josm.tools.I18n.tr;
-
-import java.awt.Component;
 import java.awt.GraphicsEnvironment;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JLabel;
+
 import javax.swing.JOptionPane;
-import javax.swing.JPanel;
 import javax.swing.SwingUtilities;
 
 import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.actions.ReportBugAction;
-import org.openstreetmap.josm.actions.ShowStatusReportAction;
-import org.openstreetmap.josm.data.Version;
-import org.openstreetmap.josm.gui.ExtendedDialog;
 import org.openstreetmap.josm.gui.preferences.plugin.PluginPreference;
-import org.openstreetmap.josm.gui.widgets.JMultilineLabel;
-import org.openstreetmap.josm.gui.widgets.UrlLabel;
 import org.openstreetmap.josm.plugins.PluginDownloadTask;
 import org.openstreetmap.josm.plugins.PluginHandler;
-import org.openstreetmap.josm.tools.GBC;
-import org.openstreetmap.josm.tools.WikiReader;
 
 /**
  * An exception handler that asks the user to send a bug report.
@@ -78,75 +58,14 @@ public final class BugReportExceptionHandler implements Thread.UncaughtException
         }
 
         static void askForBugReport(final Throwable e) {
-            String[] buttonTexts = new String[] {tr("Do nothing"), tr("Report Bug")};
-            String[] buttonIcons = new String[] {"cancel", "bug"};
-            int defaultButtonIdx = 1;
-            String message = tr("An unexpected exception occurred.<br>" +
-                    "This is always a coding error. If you are running the latest<br>" +
-                    "version of JOSM, please consider being kind and file a bug report."
-                    );
-            // Check user is running current tested version, the error may already be fixed
-            int josmVersion = Version.getInstance().getVersion();
-            if (josmVersion != Version.JOSM_UNKNOWN_VERSION) {
-                try {
-                    int latestVersion = Integer.parseInt(new WikiReader().
-                            read(Main.getJOSMWebsite()+"/wiki/TestedVersion?format=txt").trim());
-                    if (latestVersion > josmVersion) {
-                        buttonTexts = new String[] {tr("Do nothing"), tr("Update JOSM"), tr("Report Bug")};
-                        buttonIcons = new String[] {"cancel", "download", "bug"};
-                        defaultButtonIdx = 2;
-                        message = tr("An unexpected exception occurred. This is always a coding error.<br><br>" +
-                                "However, you are running an old version of JOSM ({0}),<br>" +
-                                "instead of using the current tested version (<b>{1}</b>).<br><br>"+
-                                "<b>Please update JOSM</b> before considering to file a bug report.",
-                                String.valueOf(josmVersion), String.valueOf(latestVersion));
-                    }
-                } catch (IOException | NumberFormatException ex) {
-                    Main.warn(ex, "Unable to detect latest version of JOSM:");
-                }
-            }
-            // Build panel
-            JPanel pnl = new JPanel(new GridBagLayout());
-            pnl.add(new JLabel("<html>" + message + "</html>"), GBC.eol());
-            JCheckBox cbSuppress = null;
-            if (exceptionCounter > 1) {
-                cbSuppress = new JCheckBox(tr("Suppress further error dialogs for this session."));
-                pnl.add(cbSuppress, GBC.eol());
-            }
             if (GraphicsEnvironment.isHeadless()) {
                 return;
             }
-            // Show dialog
-            ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Unexpected Exception"), buttonTexts);
-            ed.setButtonIcons(buttonIcons);
-            ed.setIcon(JOptionPane.ERROR_MESSAGE);
-            ed.setCancelButton(1);
-            ed.setDefaultButton(defaultButtonIdx);
-            ed.setContent(pnl);
-            ed.setFocusOnDefaultButton(true);
-            ed.showDialog();
-            if (cbSuppress != null && cbSuppress.isSelected()) {
-                suppressExceptionDialogs = true;
-            }
-            if (ed.getValue() <= 1) {
-                // "Do nothing"
-                return;
-            } else if (ed.getValue() < buttonTexts.length) {
-                // "Update JOSM"
-                try {
-                    Main.platform.openUrl(Main.getJOSMWebsite());
-                } catch (IOException ex) {
-                    Main.warn(ex, "Unable to access JOSM website:");
-                }
-            } else {
-                // "Report bug"
-                try {
-                    JPanel p = buildPanel(e);
-                    JOptionPane.showMessageDialog(Main.parent, p, tr("You have encountered a bug in JOSM"), JOptionPane.ERROR_MESSAGE);
-                } catch (RuntimeException ex) {
-                    Main.error(ex);
-                }
-            }
+            BugReport report = new BugReport(BugReport.intercept(e));
+            BugReportDialog dialog = new BugReportDialog(report);
+            dialog.setShowSuppress(exceptionCounter > 1);
+            dialog.setVisible(true);
+            suppressExceptionDialogs = dialog.shouldSuppressFurtherErrors();
         }
 
         @Override
@@ -195,53 +114,6 @@ public final class BugReportExceptionHandler implements Thread.UncaughtException
         }
     }
 
-    static JPanel buildPanel(final Throwable e) {
-        DebugTextDisplay textarea;
-        if (e instanceof ReportedException) {
-            // Temporary!
-            textarea = new DebugTextDisplay(new BugReport((ReportedException) e));
-        } else {
-            StringWriter stack = new StringWriter();
-            e.printStackTrace(new PrintWriter(stack));
-            textarea = new DebugTextDisplay(ShowStatusReportAction.getReportHeader() + stack.getBuffer().toString());
-        }
-
-        JPanel p = new JPanel(new GridBagLayout());
-        p.add(new JMultilineLabel(
-                tr("You have encountered an error in JOSM. Before you file a bug report " +
-                        "make sure you have updated to the latest version of JOSM here:")),
-                        GBC.eol().fill(GridBagConstraints.HORIZONTAL));
-        p.add(new UrlLabel(Main.getJOSMWebsite(), 2), GBC.eop().insets(8, 0, 0, 0));
-        p.add(new JMultilineLabel(
-                tr("You should also update your plugins. If neither of those help please " +
-                        "file a bug report in our bugtracker using this link:")),
-                        GBC.eol().fill(GridBagConstraints.HORIZONTAL));
-        p.add(new JButton(new ReportBugAction(textarea.getCodeText())), GBC.eop().insets(8, 0, 0, 0));
-        p.add(new JMultilineLabel(
-                tr("There the error information provided below should already be " +
-                        "filled in for you. Please include information on how to reproduce " +
-                        "the error and try to supply as much detail as possible.")),
-                        GBC.eop().fill(GridBagConstraints.HORIZONTAL));
-        p.add(new JMultilineLabel(
-                tr("Alternatively, if that does not work you can manually fill in the information " +
-                        "below at this URL:")), GBC.eol().fill(GridBagConstraints.HORIZONTAL));
-        p.add(new UrlLabel(Main.getJOSMWebsite()+"/newticket", 2), GBC.eop().insets(8, 0, 0, 0));
-
-        if (textarea.copyToClippboard()) {
-            p.add(new JLabel(tr("(The text has already been copied to your clipboard.)")),
-                    GBC.eop().fill(GridBagConstraints.HORIZONTAL));
-        }
-
-        p.add(textarea, GBC.eop().fill());
-
-        for (Component c: p.getComponents()) {
-            if (c instanceof JMultilineLabel) {
-                ((JMultilineLabel) c).setMaxWidth(400);
-            }
-        }
-        return p;
-    }
-
     /**
      * Determines if an exception is currently being handled
      * @return {@code true} if an exception is currently being handled, {@code false} otherwise
diff --git a/src/org/openstreetmap/josm/tools/bugreport/BugReportSettingsPanel.java b/src/org/openstreetmap/josm/tools/bugreport/BugReportSettingsPanel.java
index de214f0..9d8c1a4 100644
--- a/src/org/openstreetmap/josm/tools/bugreport/BugReportSettingsPanel.java
+++ b/src/org/openstreetmap/josm/tools/bugreport/BugReportSettingsPanel.java
@@ -25,7 +25,7 @@ public class BugReportSettingsPanel extends JPanel {
         statusReport.addChangeListener(e -> report.setIncludeStatusReport(statusReport.isSelected()));
         add(statusReport);
 
-        JCheckBox data = new JCheckBox(tr("Include information about the data that was worked on."));
+        JCheckBox data = new JCheckBox(tr("Include information about the data you were working on."));
         data.setSelected(report.isIncludeData());
         data.addChangeListener(e -> report.setIncludeData(data.isSelected()));
         add(data);
diff --git a/src/org/openstreetmap/josm/tools/bugreport/JosmUpdatePanel.java b/src/org/openstreetmap/josm/tools/bugreport/JosmUpdatePanel.java
new file mode 100644
index 0000000..d54f771
--- /dev/null
+++ b/src/org/openstreetmap/josm/tools/bugreport/JosmUpdatePanel.java
@@ -0,0 +1,103 @@
+// License: GPL. For details, see LICENSE file.
+package org.openstreetmap.josm.tools.bugreport;
+
+import static org.openstreetmap.josm.tools.I18n.tr;
+
+import java.awt.GridBagLayout;
+import java.io.IOException;
+
+import javax.swing.JButton;
+import javax.swing.JPanel;
+import javax.swing.SwingUtilities;
+
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.Version;
+import org.openstreetmap.josm.gui.widgets.JMultilineLabel;
+import org.openstreetmap.josm.gui.widgets.UrlLabel;
+import org.openstreetmap.josm.tools.GBC;
+import org.openstreetmap.josm.tools.ImageProvider;
+import org.openstreetmap.josm.tools.WikiReader;
+
+/**
+ * This is a panel that displays the current JOSM version and the ability to update JOSM.
+ * @author Michael Zangl
+ * @since xxx
+ */
+public class JosmUpdatePanel extends JPanel {
+    private final JMultilineLabel testedVersionField;
+    private final int josmVersion;
+
+    /**
+     * Create a new {@link JosmUpdatePanel}
+     */
+    public JosmUpdatePanel() {
+        super(new GridBagLayout());
+        josmVersion = Version.getInstance().getVersion();
+
+        add(new JMultilineLabel(tr("Your current version of JOSM is {0}", josmVersion)), GBC.eop().fill(GBC.HORIZONTAL));
+        testedVersionField = new JMultilineLabel(tr("JOSM is searching for updates..."));
+        add(testedVersionField, GBC.eop().fill(GBC.HORIZONTAL));
+
+        checkCurrentVersion();
+    }
+
+    private void checkCurrentVersion() {
+        new Thread(this::readCurrentVersion, "JOSM version checker").start();
+    }
+
+    private void readCurrentVersion() {
+        int testedVersion = getTestedVersion();
+
+        if (testedVersion < 0) {
+            SwingUtilities.invokeLater(this::displayError);
+        } else if (josmVersion < testedVersion) {
+            SwingUtilities.invokeLater(() -> displayOutOfDate(testedVersion));
+        } else {
+            SwingUtilities.invokeLater(this::displayUpToDate);
+        }
+    }
+
+    private static int getTestedVersion() {
+        try {
+            String testedString = new WikiReader().read(Main.getJOSMWebsite() + "/wiki/TestedVersion?format=txt");
+            return Integer.parseInt(testedString.trim());
+        } catch (NumberFormatException | IOException e) {
+            Main.warn(e, "Unable to detect latest version of JOSM:");
+            return -1;
+        }
+    }
+
+    /**
+     * Display that there was an error while checking the current version.
+     */
+    private void displayError() {
+        testedVersionField.setText(tr("An error occured while checking if your JOSM instance is up to date."));
+        showUpdateButton();
+    }
+
+    private void displayUpToDate() {
+        testedVersionField.setText(tr("JOSM is up to date."));
+    }
+
+    private void displayOutOfDate(int testedVersion) {
+        testedVersionField
+                .setText(tr("JOSM is out of date. The current version is {0}. Try updateing JOSM.", testedVersion));
+        showUpdateButton();
+    }
+
+    private void showUpdateButton() {
+        add(new JMultilineLabel(tr("Before you file a bug report make sure you have updated to the latest version of JOSM here:")), GBC.eol());
+        add(new UrlLabel(Main.getJOSMWebsite(), 2), GBC.eop().insets(8, 0, 0, 0));
+        JButton updateButton = new JButton(tr("Update JOSM"), ImageProvider.get("download"));
+        updateButton.addActionListener(e -> openJosmUpdateSite());
+        add(updateButton, GBC.eol().anchor(GBC.EAST));
+    }
+
+    private static void openJosmUpdateSite() {
+        try {
+            Main.platform.openUrl(Main.getJOSMWebsite());
+        } catch (IOException ex) {
+            Main.warn(ex, "Unable to access JOSM website:");
+        }
+    }
+}
diff --git a/test/unit/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandlerTest.java b/test/unit/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandlerTest.java
index b2d2bd3..f479d0b 100644
--- a/test/unit/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandlerTest.java
+++ b/test/unit/org/openstreetmap/josm/tools/bugreport/BugReportExceptionHandlerTest.java
@@ -2,7 +2,6 @@
 package org.openstreetmap.josm.tools.bugreport;
 
 import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -22,14 +21,6 @@ public class BugReportExceptionHandlerTest {
     }
 
     /**
-     * Unit test for {@link BugReportExceptionHandler#buildPanel} method.
-     */
-    @Test
-    public void testBuildPanel() {
-        assertNotNull(BugReportExceptionHandler.buildPanel(new Exception("testBuildPanel")));
-    }
-
-    /**
      * Unit test for {@link BugReportExceptionHandler.BugReporterThread#askForBugReport} method.
      */
     @Test
