From 38d50b08606f1b4688c6a28dbfa8217cc8e58d05 Mon Sep 17 00:00:00 2001 From: Victor Soares Date: Sat, 23 Mar 2024 09:49:07 -0300 Subject: [PATCH] modified: src/annotations.js modified: src/managers/views/iframe.js modified: types/annotations.d.ts --- src/annotations.js | 4 ++-- src/managers/views/iframe.js | 17 +++++++++-------- types/annotations.d.ts | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/annotations.js b/src/annotations.js index ecbcb56..590b264 100644 --- a/src/annotations.js +++ b/src/annotations.js @@ -254,7 +254,7 @@ class Annotation { } else if (type === "underline") { result = view.underline(cfiRange, data, cb, className, styles); } else if (type === "mark") { - result = view.mark(cfiRange, data, cb); + result = view.mark(cfiRange, data, cb, className, styles); } this.mark = result; @@ -298,4 +298,4 @@ class Annotation { EventEmitter(Annotation.prototype); -export default Annotations +export default Annotations; diff --git a/src/managers/views/iframe.js b/src/managers/views/iframe.js index a1d3de4..3d95fc9 100644 --- a/src/managers/views/iframe.js +++ b/src/managers/views/iframe.js @@ -627,11 +627,11 @@ class IframeView { h.element.setAttribute("ref", className); h.element.addEventListener("click", emitter); - h.element.addEventListener("touchstart", emitter); + // h.element.addEventListener("touchstart", emitter); if (cb) { h.element.addEventListener("click", cb); - h.element.addEventListener("touchstart", cb); + // h.element.addEventListener("touchstart", cb); } return h; } @@ -659,16 +659,16 @@ class IframeView { h.element.setAttribute("ref", className); h.element.addEventListener("click", emitter); - h.element.addEventListener("touchstart", emitter); + // h.element.addEventListener("touchstart", emitter); if (cb) { h.element.addEventListener("click", cb); - h.element.addEventListener("touchstart", cb); + // h.element.addEventListener("touchstart", cb); } return h; } - mark(cfiRange, data={}, cb) { + mark(cfiRange, data={}, cb, className = "epubjs-mk", styles = {}) { if (!this.contents) { return; } @@ -698,7 +698,8 @@ class IframeView { } let mark = this.document.createElement("a"); - mark.setAttribute("ref", "epubjs-mk"); + mark.setAttribute("ref", className); + mark.style = styles; mark.style.position = "absolute"; mark.dataset["epubcfi"] = cfiRange; @@ -711,11 +712,11 @@ class IframeView { if (cb) { mark.addEventListener("click", cb); - mark.addEventListener("touchstart", cb); + // mark.addEventListener("touchstart", cb); } mark.addEventListener("click", emitter); - mark.addEventListener("touchstart", emitter); + // mark.addEventListener("touchstart", emitter); this.placeMark(mark, range); diff --git a/types/annotations.d.ts b/types/annotations.d.ts index 718319d..a65b375 100644 --- a/types/annotations.d.ts +++ b/types/annotations.d.ts @@ -12,7 +12,7 @@ export default class Annotations { underline(cfiRange: string, data?: object, cb?: Function, className?: string, styles?: object): void; - mark(cfiRange: string, data?: object, cb?: Function): void; + mark(cfiRange: string, data?: object, cb?: Function, className?: string, styles?: object): void; each(): Array