From 47242cd0fea278001dda666f9aafd5d8bcb3513a Mon Sep 17 00:00:00 2001
From: Johann-S <johann.servoire@gmail.com>
Date: Fri, 1 Sep 2017 11:17:49 +0200
Subject: [PATCH] Fix delegation events

---
 js/src/dom/eventHandler.js | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/js/src/dom/eventHandler.js b/js/src/dom/eventHandler.js
index 1348dc96e1..f720f14413 100644
--- a/js/src/dom/eventHandler.js
+++ b/js/src/dom/eventHandler.js
@@ -115,7 +115,8 @@ const EventHandler = {
       return
     }
 
-    const delegation = typeof handler === 'string'
+    const delegation      = typeof handler === 'string'
+    const originalHandler = delegation ? delegationFn : handler
     // allow to get the native events from namespaced events ('click.bs.button' --> 'click')
     let typeEvent = originalTypeEvent.replace(stripNameRegex, '')
     const isNative = nativeEvents.indexOf(typeEvent) > -1
@@ -124,14 +125,14 @@ const EventHandler = {
     }
     const events    = getEvent(element)
     const handlers  = events[typeEvent] || (events[typeEvent] = {})
-    const uid = getUidEvent(handler, originalTypeEvent.replace(namespaceRegex, ''))
+    const uid       = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))
     if (handlers[uid]) {
       return
     }
 
     const fn = !delegation ? bootstrapHandler(element, handler) : bootstrapDelegationHandler(handler, delegationFn)
     handlers[uid] = fn
-    handler.uidEvent = uid
+    originalHandler.uidEvent = uid
     element.addEventListener(typeEvent, fn, false)
   },
 
-- 
GitLab