[cp-patches] RFC: Combo box mouseclick

Francis Kung fkung at redhat.com
Tue Jun 13 18:05:10 UTC 2006


After talking to rkennke, here is an alternate implementation to fix the
same bug, which does not involve removing and re-adding listeners, nor
consuming the mouseclick event (since this breaks other functionality).

Regards,
Francis

2006-06-13  Francis Kung  <fkung at redhat.com>

	* javax/swing/plaf/basic/BasicComboPopup.java:
	(setVisible): new method
	* javax/swing/plaf/basic/BasicLookAndFeel.java:
	(PopupHelper.mousePressed): do not consume event; instead, 
	check a client property to determine whether to close the popup


On Mon, 2006-06-12 at 14:09 -0400, Francis Kung wrote:
> Hi,
> 
> Please find attached a patch to fix mouseclick actions in the JComboBox.
> 
> Previously, if you clicked on the combo box button while the popup menu
> was already open, it would close and immediately re-open the popup; this
> was caused by two listeners both catching the mouseclick and both
> toggling the menu (ie toggled off, then immediately toggled back on).
> This patch disables one of the listeners while the popup menu is
> visible.
> 
> Unfortunately, the fix isn't evident at the moment due to a new bug in
> JComponent introduced by the VolatileImage patch, but has been tested
> against pre-VolatileImage code.  Not sure how to write a mauve test,
> since it must simulate a mouseclick on a specific component's
> location...
> 
> Regards,
> Francis
> 
> 2006-06-12  Francis Kung  <fkung at redhat.com>
> 
>         * javax/swing/plaf/basic/BasicComboPopup.java:
> 	(setVisible): new method
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ComboBox-2.diff
Type: text/x-patch
Size: 3794 bytes
Desc: not available
Url : http://developer.classpath.org/pipermail/classpath-patches/attachments/20060613/d8d547f0/ComboBox-2.bin


More information about the Classpath-patches mailing list