diff --git a/apps/OpenSign/src/components/pdf/WidgetList.js b/apps/OpenSign/src/components/pdf/WidgetList.js
index 29dccb1de..e4100a9d7 100644
--- a/apps/OpenSign/src/components/pdf/WidgetList.js
+++ b/apps/OpenSign/src/components/pdf/WidgetList.js
@@ -27,6 +27,7 @@ function WidgetList(props) {
onMouseDown={() => {
props?.handleMouseLeave();
}}
+ onTouchStart={props?.handleDivClick}
>
{item.ref && getWidgetType(item, isHeader)}
diff --git a/apps/OpenSign/src/constant/Utils.js b/apps/OpenSign/src/constant/Utils.js
index c72e6e8f7..fff999dc5 100644
--- a/apps/OpenSign/src/constant/Utils.js
+++ b/apps/OpenSign/src/constant/Utils.js
@@ -382,14 +382,16 @@ export const getWidgetType = (item, isHeader) => {
{!isMobile && }
{item.type}
diff --git a/apps/OpenSign/src/pages/PlaceHolderSign.js b/apps/OpenSign/src/pages/PlaceHolderSign.js
index 6d849bc34..49f4ba31c 100644
--- a/apps/OpenSign/src/pages/PlaceHolderSign.js
+++ b/apps/OpenSign/src/pages/PlaceHolderSign.js
@@ -815,18 +815,30 @@ function PlaceHolderSign() {
setPageNumber((prevPageNumber) => prevPageNumber + offset);
}
- //function for capture position on hover signature button
+ //function for capture position on hover or touch widgets
const handleDivClick = (e) => {
+ const isTouchEvent = e.type.startsWith("touch");
const divRect = e.currentTarget.getBoundingClientRect();
- const mouseX = e.clientX - divRect.left;
- const mouseY = e.clientY - divRect.top;
-
- const xyPosition = {
- xPos: mouseX,
- yPos: mouseY
- };
-
- setXYSignature(xyPosition);
+ let mouseX, mouseY;
+ if (isTouchEvent) {
+ const touch = e.touches[0]; // Get the first touch point
+ mouseX = touch.clientX - divRect.left;
+ mouseY = touch.clientY - divRect.top;
+ setSignBtnPosition([
+ {
+ xPos: mouseX,
+ yPos: mouseY
+ }
+ ]);
+ } else {
+ mouseX = e.clientX - divRect.left;
+ mouseY = e.clientY - divRect.top;
+ const xyPosition = {
+ xPos: mouseX,
+ yPos: mouseY
+ };
+ setXYSignature(xyPosition);
+ }
};
//function for capture position of x and y on hover signature button last position
diff --git a/apps/OpenSign/src/pages/SignyourselfPdf.js b/apps/OpenSign/src/pages/SignyourselfPdf.js
index b896370a5..d967d8a8f 100644
--- a/apps/OpenSign/src/pages/SignyourselfPdf.js
+++ b/apps/OpenSign/src/pages/SignyourselfPdf.js
@@ -918,17 +918,30 @@ function SignYourSelf() {
setXyPostion(getUpdatePosition);
};
- //function for capture position on hover signature button
+ //function for capture position on hover or touch widgets button
const handleDivClick = (e) => {
+ const isTouchEvent = e.type.startsWith("touch");
const divRect = e.currentTarget.getBoundingClientRect();
- const mouseX = e.clientX - divRect.left;
- const mouseY = e.clientY - divRect.top;
- const xyPosition = {
- xPos: mouseX,
- yPos: mouseY
- };
-
- setXYSignature(xyPosition);
+ let mouseX, mouseY;
+ if (isTouchEvent) {
+ const touch = e.touches[0]; // Get the first touch point
+ mouseX = touch.clientX - divRect.left;
+ mouseY = touch.clientY - divRect.top;
+ setSignBtnPosition([
+ {
+ xPos: mouseX,
+ yPos: mouseY
+ }
+ ]);
+ } else {
+ mouseX = e.clientX - divRect.left;
+ mouseY = e.clientY - divRect.top;
+ const xyPosition = {
+ xPos: mouseX,
+ yPos: mouseY
+ };
+ setXYSignature(xyPosition);
+ }
};
//function for capture position of x and y on hover signature button last position
diff --git a/apps/OpenSign/src/pages/TemplatePlaceholder.js b/apps/OpenSign/src/pages/TemplatePlaceholder.js
index b1baf13a1..58af80a6f 100644
--- a/apps/OpenSign/src/pages/TemplatePlaceholder.js
+++ b/apps/OpenSign/src/pages/TemplatePlaceholder.js
@@ -683,18 +683,30 @@ const TemplatePlaceholder = () => {
setPageNumber((prevPageNumber) => prevPageNumber + offset);
}
- //function for capture position on hover signature button
+ //function for capture position on hover or touch widgets
const handleDivClick = (e) => {
+ const isTouchEvent = e.type.startsWith("touch");
const divRect = e.currentTarget.getBoundingClientRect();
- const mouseX = e.clientX - divRect.left;
- const mouseY = e.clientY - divRect.top;
-
- const xyPosition = {
- xPos: mouseX,
- yPos: mouseY
- };
-
- setXYSignature(xyPosition);
+ let mouseX, mouseY;
+ if (isTouchEvent) {
+ const touch = e.touches[0]; // Get the first touch point
+ mouseX = touch.clientX - divRect.left;
+ mouseY = touch.clientY - divRect.top;
+ setSignBtnPosition([
+ {
+ xPos: mouseX,
+ yPos: mouseY
+ }
+ ]);
+ } else {
+ mouseX = e.clientX - divRect.left;
+ mouseY = e.clientY - divRect.top;
+ const xyPosition = {
+ xPos: mouseX,
+ yPos: mouseY
+ };
+ setXYSignature(xyPosition);
+ }
};
//function for capture position of x and y on hover signature button last position