Class XBLEventSupport


  • public class XBLEventSupport
    extends EventSupport
    An EventSupport class that handles XBL-specific event processing.
    Version:
    $Id: XBLEventSupport.java 1851346 2019-01-15 13:41:00Z ssteiner $
    • Field Detail

      • capturingImplementationListeners

        protected java.util.HashMap<java.lang.String,​EventListenerList> capturingImplementationListeners
        The unstoppable capturing listeners table.
      • bubblingImplementationListeners

        protected java.util.HashMap<java.lang.String,​EventListenerList> bubblingImplementationListeners
        The unstoppable bubbling listeners table.
      • eventTypeAliases

        protected static java.util.HashMap<java.lang.String,​java.lang.String> eventTypeAliases
        Map of event types to their aliases.
    • Constructor Detail

      • XBLEventSupport

        public XBLEventSupport​(AbstractNode n)
        Creates a new XBLEventSupport object.
    • Method Detail

      • addEventListenerNS

        public void addEventListenerNS​(java.lang.String namespaceURI,
                                       java.lang.String type,
                                       org.w3c.dom.events.EventListener listener,
                                       boolean useCapture,
                                       java.lang.Object group)
        Registers an event listener for the given namespaced event type in the specified group.
        Overrides:
        addEventListenerNS in class EventSupport
      • removeEventListenerNS

        public void removeEventListenerNS​(java.lang.String namespaceURI,
                                          java.lang.String type,
                                          org.w3c.dom.events.EventListener listener,
                                          boolean useCapture)
        Deregisters an event listener.
        Overrides:
        removeEventListenerNS in class EventSupport
      • addImplementationEventListenerNS

        public void addImplementationEventListenerNS​(java.lang.String namespaceURI,
                                                     java.lang.String type,
                                                     org.w3c.dom.events.EventListener listener,
                                                     boolean useCapture)
        Registers an event listener that will not be stopped by the usual XBL stopping.
      • removeImplementationEventListenerNS

        public void removeImplementationEventListenerNS​(java.lang.String namespaceURI,
                                                        java.lang.String type,
                                                        org.w3c.dom.events.EventListener listener,
                                                        boolean useCapture)
        Unregisters an implementation event listener.
      • dispatchEvent

        public boolean dispatchEvent​(NodeEventTarget target,
                                     org.w3c.dom.events.Event evt)
                              throws org.w3c.dom.events.EventException
        This method allows the dispatch of events into the implementations event model. Events dispatched in this manner will have the same capturing and bubbling behavior as events dispatched directly by the implementation. The target of the event is the EventTarget on which dispatchEvent is called.
        Overrides:
        dispatchEvent in class EventSupport
        Parameters:
        target - the target node
        evt - Specifies the event type, behavior, and contextual information to be used in processing the event.
        Returns:
        The return value of dispatchEvent indicates whether any of the listeners which handled the event called preventDefault. If preventDefault was called the value is false, else the value is true.
        Throws:
        org.w3c.dom.events.EventException - UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event's type was not specified by initializing the event before dispatchEvent was called. Specification of the Event's type as null or an empty string will also trigger this exception.
      • fireHandlerGroupEventListeners

        protected void fireHandlerGroupEventListeners​(NodeEventTarget node,
                                                      AbstractEvent e,
                                                      boolean useCapture,
                                                      java.util.HashSet stoppedGroups,
                                                      java.util.HashSet toBeStoppedGroups)
        Fires the event handlers registered on an XBL 'handlerGroup' element.
      • isSingleScopeEvent

        protected boolean isSingleScopeEvent​(org.w3c.dom.events.Event evt)
        Returns whether the given event should be stopped once it crosses a shadow scope boundary.
      • getRetargettedEvents

        protected AbstractEvent[] getRetargettedEvents​(NodeEventTarget target,
                                                       NodeEventTarget[] ancestors,
                                                       AbstractEvent e)
        Returns an array of Event objects to be used for each event target in the event flow. The Event objects are retargetted if an sXBL shadow scope is crossed and the event is not a DOM mutation event.
      • getImplementationEventListeners

        public EventListenerList getImplementationEventListeners​(java.lang.String type,
                                                                 boolean useCapture)
        Returns the implementation listneers.
      • fireImplementationEventListeners

        protected void fireImplementationEventListeners​(NodeEventTarget node,
                                                        AbstractEvent e,
                                                        boolean useCapture)
        Fires the registered implementation listeners on the given event target.