CVSROOT: /cvsroot/classpath Module name: classpath Changes by: Roman Kennke <rabbit78> 06/07/26 19:09:50
Modified files: . : ChangeLog gnu/java/awt/peer/gtk: GtkComponentPeer.java GtkWindowPeer.java java/awt : AWTEvent.java Component.java DefaultKeyboardFocusManager.java EventDispatchThread.java KeyboardFocusManager.java Window.java Log message: 2006-07-26 Roman Kennke <[EMAIL PROTECTED]> * gnu/java/awt/peer/gtk/GtkComponentPeer.java (focusRequest): Removed field. (postFocusEvent(int,boolean,Component)): Removed. (postFocusEvent(int,boolean)): Reverted to post event using the heavyweight component. (requestFocus): Post focus event using the heavyweight component. * gnu/java/awt/peer/gtk/GtkWindowPeer.java (requestFocus): Post focus event using the heavyweight component. * java/awt/AWTEvent.java (isFocusManagerEvent): New field, indicating if this is an event that is redispatched by the KeyboardFocusManager. * java/awt/Component.java (requestFocusImpl): Register component for heavyweight->lightweight mapping. (dispatchEventImpl): Retarget focus events before dispatching to the KeyboardFocusManager. Use new AWTEvent flag instead of locking hack. Dispatch all events through the KeyboardFocusManager. Don't request focus on lightweight components. * java/awt/DefaultKeyboardFocusManager.java (dispatchEvent): Pulled out handling of FOCUS_GAINED and FOCUS_LOST. (handleFocusGained): Fixed handling of temporary vs permanent focus changes. Added some checks. (handleFocusLost): Fixed handling of temporary vs permanent focus changes. Added some checks. * java/awt/EventDispatchThread.java (run): Don't dispatch to KeyboardFocusManager here. This is done in Component.dispatchEventImpl(). * java/awt/KeyboardFocusManager.java (redispatchEvent): Use new AWTEvent flag instead of locking hack. (focusRequests): New field. (retargetFocusEvent): New method. Retargets focus events that come from heavyweights to the correct lightweight component. (addLightweightFocusRequest): New method. Stores a mapping for later retargetting of heavyweight focus events. * java/awt/Window.java (addFocusListener): Removed bogus method. If at all, this should be performed in the KeyboardFocusManager. (Window): Don't install a focus listener on the Window. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpath&r1=1.8233&r2=1.8234 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/GtkComponentPeer.java?cvsroot=classpath&r1=1.118&r2=1.119 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/GtkWindowPeer.java?cvsroot=classpath&r1=1.51&r2=1.52 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/AWTEvent.java?cvsroot=classpath&r1=1.17&r2=1.18 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/Component.java?cvsroot=classpath&r1=1.137&r2=1.138 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/DefaultKeyboardFocusManager.java?cvsroot=classpath&r1=1.21&r2=1.22 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/EventDispatchThread.java?cvsroot=classpath&r1=1.10&r2=1.11 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/KeyboardFocusManager.java?cvsroot=classpath&r1=1.17&r2=1.18 http://cvs.savannah.gnu.org/viewcvs/classpath/java/awt/Window.java?cvsroot=classpath&r1=1.73&r2=1.74