Ignore:
Timestamp:
10/31/18 10:20:25 (6 years ago)
Author:
bln4
Message:

Updated how the SwingInputManager deals with popups so that the call to focus can be re-enabled.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/gio/swing/SwingInputManager.java

    r1169 r1187  
    2121import java.awt.event.WindowListener;
    2222import java.awt.event.WindowStateListener;
     23import java.util.List;
    2324
    2425import javax.swing.SwingUtilities;
     
    348349        @Override
    349350        public void keyTyped(KeyEvent e) {
     351                //System.err.println("SwingInputManager::keyTyped::KeyEvent: " + e.getKeyChar());
    350352                // Give widgets first whack at input
    351353                distributeNativeInput(e);
    352354                if (e.isConsumed()) {
     355                        //System.err.println("SwingInputManager::keyTyped::Widget/Popup Consumed KeyEvent");
    353356                        return;
    354357                }
     
    383386        /** Handles key pressed/released events. */
    384387        private void keyAction(KeyEvent e, boolean down) {
     388                //System.err.println("SwingInputManager::keyAction::KeyEvent: " + e.getKeyChar());
    385389                // Give widgets first whack at input
    386390                distributeNativeInput(e);
    387391                if (e.isConsumed()) {
    388                         return;
    389                 }
     392                        //System.err.println("SwingInputManager::keyAction::Was consumed: " + e.isConsumed());
     393                        return;
     394                }
     395                //System.err.println("SwingInputManager::keyAction::Was consumed: " + e.isConsumed());
    390396
    391397                KBMInputEvent.Key key = SwingConversions.fromSwingVirtualKey(e.getKeyCode());
     
    418424        /** Forwards the given input event to the listener if it is listening for it. */
    419425        private void forwardNativeInputToListener(Object listener, java.awt.event.InputEvent event) {
     426                //System.err.println("SwingInputManager::forwardNativeInputToListener");
    420427                if (listener == null || event == null) {
    421428                        return;
    422429                }
    423 
     430                //System.err.println("SwingInputManager::forwardNativeInputToListener::Recieving input: " + event.toString());
    424431                if (listener instanceof KeyListener && event instanceof KeyEvent) {
    425432
     
    435442                                return;
    436443                        case KeyEvent.KEY_TYPED:
     444                                //System.err.println("SwingInputManager::forwardNativeInputToListener::Recieving key typed: " + event.toString());
    437445                                keyListener.keyTyped(ke);
    438446                                return;
     
    505513                        return;
    506514                }
    507 
    508                 for (Popup popup : PopupManager.getInstance().getPopups()) {
     515                final List<Popup> popups = PopupManager.getInstance().getPopups();
     516                for (Popup popup : popups) {
    509517                        forwardNativeInputToListener(popup, event);
    510518
     
    520528                        return;
    521529                }
    522 
    523530                for (Widget iw : _widgets) {
    524531                        java.awt.event.InputEvent e = respecInputEventForWidget(event, iw);
Note: See TracChangeset for help on using the changeset viewer.