CVSROOT: /cvsroot/classpath Module name: classpath Changes by: Roman Kennke <rabbit78> 06/06/13 19:41:23
Modified files: java/awt : Component.java javax/swing/plaf/basic: BasicLookAndFeel.java BasicArrowButton.java . : ChangeLog Log message: 2006-06-13 Roman Kennke <[EMAIL PROTECTED]> * java/awt/Component.java (dispatchEvent): Handle events even when consumed (this might be picked up later in the dispatching chain). * javax/swing/plaf/basic/BasicLookAndFeel.java (PopupHelper.mousePressed): Don't consume event. Only close popup when target component isn't flagged as DONT_CANCEL_POPUP. (DONT_CANCEL_POPUP): New package private constant for flagging special components that don't trigger popup closing. * javax/swing/plaf/basic/BasicArrowButton.java (BasicArrowButton): Set client property for not triggering closing of popups. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/Component.java?cvsroot=classpath&r1=1.121&r2=1.122 http://cvs.savannah.gnu.org/viewcvs/classpath/javax/swing/plaf/basic/BasicLookAndFeel.java?cvsroot=classpath&r1=1.94&r2=1.95 http://cvs.savannah.gnu.org/viewcvs/classpath/javax/swing/plaf/basic/BasicArrowButton.java?cvsroot=classpath&r1=1.17&r2=1.18 http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpath&r1=1.7801&r2=1.7802 Patches: Index: java/awt/Component.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/awt/Component.java,v retrieving revision 1.121 retrieving revision 1.122 diff -u -b -r1.121 -r1.122 --- java/awt/Component.java 13 Jun 2006 12:37:54 -0000 1.121 +++ java/awt/Component.java 13 Jun 2006 19:41:22 -0000 1.122 @@ -2314,7 +2314,6 @@ // Some subclasses in the AWT package need to override this behavior, // hence the use of dispatchEventImpl(). - if (! e.isConsumed()) dispatchEventImpl(e); } Index: javax/swing/plaf/basic/BasicLookAndFeel.java =================================================================== RCS file: /cvsroot/classpath/classpath/javax/swing/plaf/basic/BasicLookAndFeel.java,v retrieving revision 1.94 retrieving revision 1.95 diff -u -b -r1.94 -r1.95 --- javax/swing/plaf/basic/BasicLookAndFeel.java 13 Jun 2006 12:37:53 -0000 1.94 +++ javax/swing/plaf/basic/BasicLookAndFeel.java 13 Jun 2006 19:41:22 -0000 1.95 @@ -132,7 +132,6 @@ && ! m.isComponentPartOfCurrentMenu(target)) { m.clearSelectedPath(); - ev.consume(); } } @@ -199,6 +198,14 @@ static final long serialVersionUID = -6096995660290287879L; /** + * This is a key for a client property that tells the PopupHelper that + * it shouldn't close popups when the mouse event target has this + * property set. This is used when the component handles popup closing + * itself. + */ + static final String DONT_CANCEL_POPUP = "noCancelPopup"; + + /** * Helps closing menu popups when user clicks outside of the menu area. */ private transient PopupHelper popupHelper; Index: javax/swing/plaf/basic/BasicArrowButton.java =================================================================== RCS file: /cvsroot/classpath/classpath/javax/swing/plaf/basic/BasicArrowButton.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -b -r1.17 -r1.18 --- javax/swing/plaf/basic/BasicArrowButton.java 24 Nov 2005 18:19:18 -0000 1.17 +++ javax/swing/plaf/basic/BasicArrowButton.java 13 Jun 2006 19:41:22 -0000 1.18 @@ -116,6 +116,8 @@ this.shadow = shadow; this.darkShadow = darkShadow; this.highlight = highlight; + // Mark the button as not closing the popup, we handle this ourselves. + putClientProperty(BasicLookAndFeel.DONT_CANCEL_POPUP, Boolean.TRUE); } /** Index: ChangeLog =================================================================== RCS file: /cvsroot/classpath/classpath/ChangeLog,v retrieving revision 1.7801 retrieving revision 1.7802 diff -u -b -r1.7801 -r1.7802 --- ChangeLog 13 Jun 2006 19:00:47 -0000 1.7801 +++ ChangeLog 13 Jun 2006 19:41:22 -0000 1.7802 @@ -1,3 +1,17 @@ +2006-06-13 Roman Kennke <[EMAIL PROTECTED]> + + * java/awt/Component.java + (dispatchEvent): Handle events even when consumed (this might be + picked up later in the dispatching chain). + * javax/swing/plaf/basic/BasicLookAndFeel.java + (PopupHelper.mousePressed): Don't consume event. Only close popup + when target component isn't flagged as DONT_CANCEL_POPUP. + (DONT_CANCEL_POPUP): New package private constant for flagging + special components that don't trigger popup closing. + * javax/swing/plaf/basic/BasicArrowButton.java + (BasicArrowButton): Set client property for not triggering closing + of popups. + 2006-06-13 Lillian Angel <[EMAIL PROTECTED]> * java/awt/image/PixelGrabber.java