From 26d86d940ebeffe2e360292bbba54a7d6eb33ef5 Mon Sep 17 00:00:00 2001 From: Fernando Nasser Date: Wed, 3 Dec 2003 22:29:31 +0000 Subject: [PATCH] GtkListPeer.java (handleEvent): Fix generation of ActionEvents. 2003-12-02 Fernando Nasser * gnu/java/awt/peer/gtk/GtkListPeer.java (handleEvent): Fix generation of ActionEvents. From-SVN: r74248 --- libjava/ChangeLog | 5 +++++ libjava/gnu/java/awt/peer/gtk/GtkListPeer.java | 13 ++++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 47b2c78927d..b89faeb6b2d 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2003-12-02 Fernando Nasser + + * gnu/java/awt/peer/gtk/GtkListPeer.java (handleEvent): Fix generation + of ActionEvents. + 2003-12-03 Michael Koch * java/lang/Class.h (hack_signers): Renamed signers to hack_signers. diff --git a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java index f90497e7182..31f98525f23 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java @@ -128,10 +128,12 @@ public class GtkListPeer extends GtkComponentPeer { if (e.getID () == MouseEvent.MOUSE_CLICKED && isEnabled ()) { + /* Only generate the ActionEvent on the second click of + a multiple click */ MouseEvent me = (MouseEvent) e; if (!me.isConsumed () && (me.getModifiers () & MouseEvent.BUTTON1_MASK) != 0 - && me.getClickCount() > 1) + && me.getClickCount() == 2) postActionEvent (((List)awtComponent).getSelectedItem (), me.getModifiers ()); } @@ -140,8 +142,13 @@ public class GtkListPeer extends GtkComponentPeer { KeyEvent ke = (KeyEvent) e; if (!ke.isConsumed () && ke.getKeyCode () == KeyEvent.VK_ENTER) - postActionEvent (((List)awtComponent).getSelectedItem (), - ke.getModifiers ()); + { + String selectedItem = ((List)awtComponent).getSelectedItem (); + + /* Enter only generates an Action event if something is selected */ + if (selectedItem != null) + postActionEvent (selectedItem, ke.getModifiers ()); + } } super.handleEvent (e); -- 2.30.2