Java Code Examples for java.awt.peer.ComponentPeer#handleEvent()
The following examples show how to use
java.awt.peer.ComponentPeer#handleEvent() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: DefaultKeyboardFocusManager.java From openjdk-jdk8u with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 2
Source File: DefaultKeyboardFocusManager.java From jdk8u-dev-jdk with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 3
Source File: DefaultKeyboardFocusManager.java From openjdk-8-source with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 4
Source File: DefaultKeyboardFocusManager.java From openjdk-jdk9 with GNU General Public License v2.0 | 4 votes |
@SuppressWarnings("deprecation") private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.peer; if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 5
Source File: DefaultKeyboardFocusManager.java From jdk8u_jdk with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { getOnTypeaheadFinishedHandler().accept(ke); if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 6
Source File: DefaultKeyboardFocusManager.java From openjdk-8 with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 7
Source File: DefaultKeyboardFocusManager.java From Bytecoder with Apache License 2.0 | 4 votes |
/** * Called by {@code dispatchEvent} if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns {@code true}, since * DefaultKeyboardFocusManager is designed so that neither * {@code dispatchEvent}, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return {@code true} * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.peer; if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.peer; } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 8
Source File: DefaultKeyboardFocusManager.java From openjdk-jdk8u-backup with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 9
Source File: DefaultKeyboardFocusManager.java From Java8CN with Apache License 2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 10
Source File: DefaultKeyboardFocusManager.java From Java8CN with Apache License 2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 11
Source File: DefaultKeyboardFocusManager.java From jdk1.8-source-analysis with Apache License 2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 12
Source File: DefaultKeyboardFocusManager.java From JDKSourceCode1.8 with MIT License | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 13
Source File: DefaultKeyboardFocusManager.java From JDKSourceCode1.8 with MIT License | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 14
Source File: DefaultKeyboardFocusManager.java From jdk8u-dev-jdk with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 15
Source File: DefaultKeyboardFocusManager.java From jdk8u60 with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 16
Source File: DefaultKeyboardFocusManager.java From jdk8u-jdk with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 17
Source File: DefaultKeyboardFocusManager.java From TencentKona-8 with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 18
Source File: DefaultKeyboardFocusManager.java From jdk8u-jdk with GNU General Public License v2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }
Example 19
Source File: DefaultKeyboardFocusManager.java From hottub with GNU General Public License v2.0 | 4 votes |
/** * Called by <code>dispatchEvent</code> if no other * KeyEventDispatcher in the dispatcher chain dispatched the KeyEvent, or * if no other KeyEventDispatchers are registered. If the event has not * been consumed, its target is enabled, and the focus owner is not null, * this method dispatches the event to its target. This method will also * subsequently dispatch the event to all registered * KeyEventPostProcessors. After all this operations are finished, * the event is passed to peers for processing. * <p> * In all cases, this method returns <code>true</code>, since * DefaultKeyboardFocusManager is designed so that neither * <code>dispatchEvent</code>, nor the AWT event dispatcher, should take * further action on the event in any situation. * * @param e the KeyEvent to be dispatched * @return <code>true</code> * @see Component#dispatchEvent */ public boolean dispatchKeyEvent(KeyEvent e) { Component focusOwner = (((AWTEvent)e).isPosted) ? getFocusOwner() : e.getComponent(); if (focusOwner != null && focusOwner.isShowing() && focusOwner.canBeFocusOwner()) { if (!e.isConsumed()) { Component comp = e.getComponent(); if (comp != null && comp.isEnabled()) { redispatchEvent(comp, e); } } } boolean stopPostProcessing = false; java.util.List<KeyEventPostProcessor> processors = getKeyEventPostProcessors(); if (processors != null) { for (java.util.Iterator<KeyEventPostProcessor> iter = processors.iterator(); !stopPostProcessing && iter.hasNext(); ) { stopPostProcessing = iter.next(). postProcessKeyEvent(e); } } if (!stopPostProcessing) { postProcessKeyEvent(e); } // Allow the peer to process KeyEvent Component source = e.getComponent(); ComponentPeer peer = source.getPeer(); if (peer == null || peer instanceof LightweightPeer) { // if focus owner is lightweight then its native container // processes event Container target = source.getNativeContainer(); if (target != null) { peer = target.getPeer(); } } if (peer != null) { peer.handleEvent(e); } return true; }
Example 20
Source File: DefaultKeyboardFocusManager.java From jdk1.8-source-analysis with Apache License 2.0 | 4 votes |
private boolean preDispatchKeyEvent(KeyEvent ke) { if (((AWTEvent) ke).isPosted) { Component focusOwner = getFocusOwner(); ke.setSource(((focusOwner != null) ? focusOwner : getFocusedWindow())); } if (ke.getSource() == null) { return true; } // Explicitly set the key event timestamp here (not in Component.dispatchEventImpl): // - A key event is anyway passed to this method which starts its actual dispatching. // - If a key event is put to the type ahead queue, its time stamp should not be registered // until its dispatching actually starts (by this method). EventQueue.setCurrentEventAndMostRecentTime(ke); /** * Fix for 4495473. * This fix allows to correctly dispatch events when native * event proxying mechanism is active. * If it is active we should redispatch key events after * we detected its correct target. */ if (KeyboardFocusManager.isProxyActive(ke)) { Component source = (Component)ke.getSource(); Container target = source.getNativeContainer(); if (target != null) { ComponentPeer peer = target.getPeer(); if (peer != null) { peer.handleEvent(ke); /** * Fix for 4478780 - consume event after it was dispatched by peer. */ ke.consume(); } } return true; } java.util.List<KeyEventDispatcher> dispatchers = getKeyEventDispatchers(); if (dispatchers != null) { for (java.util.Iterator<KeyEventDispatcher> iter = dispatchers.iterator(); iter.hasNext(); ) { if (iter.next(). dispatchKeyEvent(ke)) { return true; } } } return dispatchKeyEvent(ke); }