This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository jtimer. See https://gitlab.nuiton.org/chorem/jtimer.git commit 537de1f56feb023ec79d44358a2d384630352efd Author: Eric Chatellier <chatellier@codelutin.com> Date: Wed Mar 16 17:13:20 2016 +0100 fixes #1347: Enable "Enter" key support on main popups --- .../java/org/chorem/jtimer/ui/NewTaskView.java | 12 +++++++++- .../java/org/chorem/jtimer/ui/TimerTaskEditor.java | 27 +++------------------- .../jtimer/ui/resources/NewTaskView.properties | 4 ++-- .../jtimer/ui/resources/NewTaskView_fr.properties | 4 ++-- .../ui/resources/TimerTaskEditor_fr.properties | 2 +- 5 files changed, 19 insertions(+), 30 deletions(-) diff --git a/src/main/java/org/chorem/jtimer/ui/NewTaskView.java b/src/main/java/org/chorem/jtimer/ui/NewTaskView.java index 440cd3e..29c9aba 100644 --- a/src/main/java/org/chorem/jtimer/ui/NewTaskView.java +++ b/src/main/java/org/chorem/jtimer/ui/NewTaskView.java @@ -24,18 +24,22 @@ package org.chorem.jtimer.ui; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; +import java.awt.event.ActionEvent; import java.util.Date; import java.util.Map; import java.util.Set; +import javax.swing.AbstractAction; import javax.swing.ActionMap; import javax.swing.DefaultComboBoxModel; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JComboBox; +import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; +import javax.swing.KeyStroke; import org.chorem.jtimer.JTimer; import org.chorem.jtimer.data.DataViolationException; @@ -77,7 +81,7 @@ public class NewTaskView extends DialogView { setComponent(getMainComponent(selectedTask)); } - + protected JPanel getMainComponent(TimerTask selectedTask) { JPanel panel = new JPanel(new GridBagLayout()); @@ -120,11 +124,17 @@ public class NewTaskView extends DialogView { okButton.setAction(actionMap.get("valid")); panel.add(okButton, new GridBagConstraints(1, 4, 1, 1, 1, 0, GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(5, 5, 5, 1), 0, 0)); + // default enter + getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ENTER"), "ENTER"); + getRootPane().getActionMap().put("ENTER", okButton.getAction()); JButton cancelButton = new JButton(); cancelButton.setAction(actionMap.get("cancel")); panel.add(cancelButton, new GridBagConstraints(2, 4, 1, 1, 1, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(5, 1, 5, 5), 0, 0)); + // default escape + getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ESCAPE"), "ESCAPE"); + getRootPane().getActionMap().put("ESCAPE", cancelButton.getAction()); return panel; } diff --git a/src/main/java/org/chorem/jtimer/ui/TimerTaskEditor.java b/src/main/java/org/chorem/jtimer/ui/TimerTaskEditor.java index 7ddbda1..5d59a20 100644 --- a/src/main/java/org/chorem/jtimer/ui/TimerTaskEditor.java +++ b/src/main/java/org/chorem/jtimer/ui/TimerTaskEditor.java @@ -26,9 +26,6 @@ import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; -import java.awt.event.ActionEvent; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -38,12 +35,10 @@ import java.util.Map; import java.util.Set; import java.util.StringTokenizer; -import javax.swing.AbstractAction; import javax.swing.ActionMap; import javax.swing.JButton; import javax.swing.JComponent; import javax.swing.JLabel; -import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JSpinner; @@ -68,9 +63,6 @@ import org.chorem.jtimer.entities.TimerTask; import org.chorem.jtimer.entities.TimerTaskHelper; import org.chorem.jtimer.ui.widget.DialogView; import org.jdesktop.application.Action; -import org.jdesktop.application.ApplicationContext; -import org.jdesktop.application.ResourceManager; -import org.jdesktop.application.ResourceMap; import org.jdesktop.swingx.JXMonthView; import org.jdesktop.swingx.calendar.DateSelectionModel; @@ -187,22 +179,6 @@ public class TimerTaskEditor extends DialogView { * Build ui. */ protected void buildUI() { - /* - * Cancel window on escape key press. - */ - KeyStroke cancelStroke = KeyStroke.getKeyStroke("ESCAPE"); - getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put( - cancelStroke, "CANCEL"); - getRootPane().getActionMap().put("CANCEL", new AbstractAction() { - /** serialVersionUID */ - private static final long serialVersionUID = -3871353493857041286L; - - @Override - public void actionPerformed(ActionEvent e) { - cancel(); - } - }); - JPanel panel = new JPanel(new BorderLayout(1, 0)); panel.add(createContentPanel(), BorderLayout.CENTER); panel.add(createCommandPanel(), BorderLayout.SOUTH); @@ -222,6 +198,9 @@ public class TimerTaskEditor extends DialogView { // cancel button JButton cancelButton = new JButton(); cancelButton.setAction(actionMap.get("cancel")); + // default escape + getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ESCAPE"), "ESCAPE"); + getRootPane().getActionMap().put("ESCAPE", cancelButton.getAction()); // command panel JPanel panel = new JPanel(); diff --git a/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView.properties b/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView.properties index 1e5302e..ebd42bc 100644 --- a/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView.properties +++ b/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView.properties @@ -25,7 +25,7 @@ input.newTaskMessage=Task name to create for "%s" : input.newTaskTemplate=Task template to use : valid.Action.text = OK -valid.Action.accelerator = control O +valid.Action.mnemonic = O cancel.Action.text = Cancel -cancel.Action.accelerator = control C +cancel.Action.mnemonic = C diff --git a/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView_fr.properties b/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView_fr.properties index 40994da..4724524 100644 --- a/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView_fr.properties +++ b/src/main/resources/org/chorem/jtimer/ui/resources/NewTaskView_fr.properties @@ -24,7 +24,7 @@ input.newTaskMessage=Nom de la t\u00E2che \u00E0 cr\u00E9er pour "%s" : input.newTaskTemplate=Template \u00E0 utiliser : valid.Action.text = OK -valid.Action.accelerator = control O +valid.Action.mnemonic = O cancel.Action.text = Annuler -cancel.Action.accelerator = control A +cancel.Action.mnemonic = A diff --git a/src/main/resources/org/chorem/jtimer/ui/resources/TimerTaskEditor_fr.properties b/src/main/resources/org/chorem/jtimer/ui/resources/TimerTaskEditor_fr.properties index 0325c69..890c08c 100644 --- a/src/main/resources/org/chorem/jtimer/ui/resources/TimerTaskEditor_fr.properties +++ b/src/main/resources/org/chorem/jtimer/ui/resources/TimerTaskEditor_fr.properties @@ -26,7 +26,7 @@ apply.Action.mnemonic = V apply.Action.shortDescription = Appliquer les changements cancel.Action.text = Annuler -cancel.Action.mnemonic= Q +cancel.Action.mnemonic = A cancel.Action.shortDescription = Annuler et quitter label.time.text = Temps: -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.