Есть элемент canvas, которому нужны события типа mousemove/down/up/out/click/dblclick (если поднапрячься, можно сократить до move/up/out)
Но поверх него расположены всякие другие элементы, которым тоже нужен, как минимум, клик.
Всё, естественно, absolute/relative positioned.
Весь html поверх канваса - достаточно рандомный (не особо контролируемый со стороны меня как автора модуля).
Вопрос - как обработать события, которые попадают на элементы поверх канваса и ими "съедаются"?
Технология реализации - angular. Тоесть я ваяю директивы, которые сосуществуют с "пользовательским" кодом, который я не контролирую, но на который могу наложить какие-то условия - например, звернуть его в обёрточный элемент с моей директивой.
Но суть проблемы - в непонимании "маршрутизации" ивентов.
P.S. примерный сетап:
https://embed.plnkr.co/lKHjED/