This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix to ActionEvent generation on List widgets


2003-12-02 Fernando Nasser <fnasser@redhat.com>

        * gnu/java/awt/peer/gtk/GtkListPeer.java (handleEvent): Fix generation
        of ActionEvents so that a return only generates one if something is
        selected and a higher number of mouse multiple-clicks do not generate
        a spurious ActionEvent after the expected one.
Index: gnu/java/awt/peer/gtk/GtkListPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java,v
retrieving revision 1.3
diff -c -p -r1.3 GtkListPeer.java
*** gnu/java/awt/peer/gtk/GtkListPeer.java	2 Dec 2003 16:19:28 -0000	1.3
--- gnu/java/awt/peer/gtk/GtkListPeer.java	3 Dec 2003 19:11:18 -0000
*************** public class GtkListPeer extends GtkComp
*** 131,137 ****
  	MouseEvent me = (MouseEvent) e;
  	if (!me.isConsumed ()
  	    && (me.getModifiers () & MouseEvent.BUTTON1_MASK) != 0
! 	    && me.getClickCount() > 1)
  	  postActionEvent (((List)awtComponent).getSelectedItem (), 
  			   me.getModifiers ());
        }
--- 131,137 ----
  	MouseEvent me = (MouseEvent) e;
  	if (!me.isConsumed ()
  	    && (me.getModifiers () & MouseEvent.BUTTON1_MASK) != 0
! 	    && me.getClickCount() == 2)
  	  postActionEvent (((List)awtComponent).getSelectedItem (), 
  			   me.getModifiers ());
        }
*************** public class GtkListPeer extends GtkComp
*** 140,147 ****
        {
  	KeyEvent ke = (KeyEvent) e;
  	if (!ke.isConsumed () && ke.getKeyCode () == KeyEvent.VK_ENTER)
! 	  postActionEvent (((List)awtComponent).getSelectedItem (),
! 			   ke.getModifiers ());
        }
  
      super.handleEvent (e);
--- 140,152 ----
        {
  	KeyEvent ke = (KeyEvent) e;
  	if (!ke.isConsumed () && ke.getKeyCode () == KeyEvent.VK_ENTER)
! 	  {
!             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);

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]