This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit 8e02ae3793f36ee4131afd3e558266ab20900dc4 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 11 16:44:40 2015 +0200 refs #6931 Ajout d'un garde-fou sur le timer d'affichage des actions popups --- .../src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java | 8 ++++++-- .../fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java | 8 +++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java index 32f4836..3d18c40 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java @@ -885,7 +885,6 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage } - //------------------------------------------------------------------------// //-- UI methods --// //------------------------------------------------------------------------// @@ -1228,11 +1227,16 @@ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessage private Timer timer; - public Timer getTimer() { + public synchronized Timer getTimer() { if (timer == null) { timer = new Timer("ShowActions::"); } return timer; } + public synchronized Timer reloadTimer() { + timer = null; + return getTimer(); + } + } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java index c91f60c..a6e497a 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java @@ -360,7 +360,13 @@ public abstract class AbstractTuttiUIHandler<M, UI extends TuttiUI<M, ?>> extend if (source.isEnabled()) { - getContext().getTimer().schedule(new ShowComboBoxPopupActions(source), 300); + ShowComboBoxPopupActions task = new ShowComboBoxPopupActions(source); + + try { + getContext().getTimer().schedule(task, 300); + } catch (IllegalStateException e1) { + getContext().reloadTimer().schedule(task, 300); + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.