diff --git a/diylc/diylc-core/src/main/resources/update.xml b/diylc/diylc-core/src/main/resources/update.xml index a84c010e..942fdbb2 100644 --- a/diylc/diylc-core/src/main/resources/update.xml +++ b/diylc/diylc-core/src/main/resources/update.xml @@ -309,6 +309,10 @@ IMPROVEMENT Improved the styling of circuit analysis reports + + BUG_FIX + X or Q keys sometimes do not register in secondary dialogs + BUG_FIX If the internet connection is present, but unstable, the application starts but nothing can be clicked until the connection restores diff --git a/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/explorer/ExplorerPlugin.java b/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/explorer/ExplorerPlugin.java index 39e4d9f0..89948891 100644 --- a/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/explorer/ExplorerPlugin.java +++ b/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/explorer/ExplorerPlugin.java @@ -90,7 +90,9 @@ public class ExplorerPlugin implements IPlugIn { @Override public boolean dispatchKeyEvent(KeyEvent e) { - if (e.getKeyChar() == 'x' && e.getModifiersEx() == 0 + if (explorerPane != null + && (canvasPanel.hasFocus() || explorerPane.hasFocus()) + && e.getKeyChar() == 'x' && e.getModifiersEx() == 0 && ConfigurationManager.getInstance() .readBoolean(ConfigPlugin.PROJECT_EXPLORER, true)) { explorerPane.getSearchField().requestFocusInWindow(); diff --git a/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/tree/ComponentTree.java b/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/tree/ComponentTree.java index 39e009b6..db14d14d 100644 --- a/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/tree/ComponentTree.java +++ b/diylc/diylc-swing/src/main/java/org/diylc/swing/plugins/tree/ComponentTree.java @@ -80,12 +80,13 @@ public class ComponentTree implements IPlugIn { @Override public boolean dispatchKeyEvent(KeyEvent e) { - if ((canvasPanel.hasFocus() || treePanel.hasFocus()) - && e.getKeyChar() == 'q' + if (treePanel != null + && (canvasPanel.hasFocus() || treePanel.hasFocus()) + && e.getKeyChar() == 'q' && e.getModifiersEx() == 0 && ConfigurationManager.getInstance() .readString(ConfigPlugin.COMPONENT_BROWSER, ConfigPlugin.SEARCHABLE_TREE) .equals(ConfigPlugin.SEARCHABLE_TREE)) { - getTreePanel().getSearchField().requestFocusInWindow(); + treePanel.getSearchField().requestFocusInWindow(); return true; } return false;