Пример #1
0
        /// <summary>
        /// Remove  C# listner from the xpcom listner.
        /// </summary>
        /// <param name="Type">The name of the eventtype, for e.g 'MyCustomEvent'. This must be the same as the EventName in the JavaScript.</param>
        /// <param name="Handler">The handler for this event</param>
        public void RemoveEventListener(string Type, EventHandler <DOMJSONStringEventArgs> Handler)
        {
            nsIDOMEventTarget target  = oDomWindow as nsIDOMEventTarget;
            nsAString         strType = oEventTypes[Handler.Method.GetHashCode()] as nsAString;

            RouteEventHandler route = oEventListeners[Handler.Method.GetHashCode()] as RouteEventHandler;

            target.RemoveEventListener(strType, route, false);

            oEventListeners.Remove(Handler.Method.GetHashCode());
            oEventTypes.Remove(Handler.Method.GetHashCode());
        }
Пример #2
0
 protected override void OnHandleDestroyed(EventArgs e)
 {
     if (_target != null)
     {
         //Remove Event Listener
         _target.RemoveEventListener(new nsAString("submit"), this, true);
         _target.RemoveEventListener(new nsAString("keydown"), this, true);
         _target.RemoveEventListener(new nsAString("keyup"), this, true);
         _target.RemoveEventListener(new nsAString("keypress"), this, true);
         _target.RemoveEventListener(new nsAString("mousemove"), this, true);
         _target.RemoveEventListener(new nsAString("mouseover"), this, true);
         _target.RemoveEventListener(new nsAString("mouseout"), this, true);
         _target.RemoveEventListener(new nsAString("mousedown"), this, true);
         _target.RemoveEventListener(new nsAString("mouseup"), this, true);
         _target.RemoveEventListener(new nsAString("click"), this, true);
         _target.RemoveEventListener(new nsAString("dblclick"), this, true);
         _target.RemoveEventListener(new nsAString("compositionstart"), this, true);
         _target.RemoveEventListener(new nsAString("compositionend"), this, true);
         _target.RemoveEventListener(new nsAString("contextmenu"), this, true);
         _target.RemoveEventListener(new nsAString("DOMMouseScroll"), this, true);
         _target.RemoveEventListener(new nsAString("focus"), this, true);
         _target.RemoveEventListener(new nsAString("blur"), this, true);
         _target.RemoveEventListener(new nsAString("load"), this, true);
         _target.RemoveEventListener(new nsAString("DOMContentLoaded"), this, true);
         _target.RemoveEventListener(new nsAString("readystatechange"), this, true);
         _target.RemoveEventListener(new nsAString("change"), this, true);
         _target.RemoveEventListener(new nsAString("hashchange"), this, false);
         _target.RemoveEventListener(new nsAString("dragstart"), this, true);
         _target.RemoveEventListener(new nsAString("dragenter"), this, true);
         _target.RemoveEventListener(new nsAString("dragover"), this, true);
         _target.RemoveEventListener(new nsAString("dragleave"), this, true);
         _target.RemoveEventListener(new nsAString("drag"), this, true);
         _target.RemoveEventListener(new nsAString("drop"), this, true);
         _target.RemoveEventListener(new nsAString("dragend"), this, true);
     }
     base.OnHandleDestroyed(e);
 }