You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[HOLD for payment 2023-08-02] [$1000] IOS - Long Pressing on Attachment in chat history in Safari opens the native image menu #21344
changed the title [-]IOS - Long Pressing on Attachment in chat history in Safari opens the native image menu[/-][+][$1000] IOS - Long Pressing on Attachment in chat history in Safari opens the native image menu[/+]on Jun 23, 2023
Please re-state the problem that we are trying to solve in this issue.
The long-press behavior on images on iOS safari shows a contextual menu.
What is the root cause of that problem?
In Safari, the long-press behavior on images specifically triggers a contextual menu rather than the standard context menu by default.
What changes do you think we should make in order to solve the problem?
There is a workaround you can try to prevent the contextual menu from appearing. It involves adding the CSS property -webkit-touch-callout: none to the image element. By setting -webkit-touch-callout: none on the image element, you can attempt to prevent the contextual menu from appearing when the user long-presses on the image.
-webkit-touch-callout: none;
To solve this issue, insert this CSS property to webViewStyles.tagStyles.img style here.
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.45-7 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:
If no regressions arise, payment will be issued on 2023-08-02. 🎊
After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.
External issue reporter
Contributor that fixed the issue
Contributor+ that helped on the issue and/or PR
For reference, here are some details about the assignees on this issue:
@rushatgabhanedoes not require payment (Eligable for Manual Requests)
@s-alves10 requires payment
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
Merged PR within 3 business days of assignment - 50% bonus
Merged PR more than 9 business days after assignment - 50% penalty
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
[@rushatgabhane] The PR that introduced the bug has been identified. Link to the PR:
[@rushatgabhane] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[@rushatgabhane] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[@rushatgabhane] Determine if we should create a regression test for this bug.
[@rushatgabhane] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
[@NicMendonca] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:
The PR that introduced the bug has been identified. Link to the PR: This bug existed ever since we have long press for attachments. Will have to go years back. So we can leave this.
The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment: N.A.
A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion: N.A.
Determine if we should create a regression test for this bug. No. Won't happen again
If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again - No
Activity
melvin-bot commentedon Jun 22, 2023
Triggered auto assignment to @NicMendonca (
Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.melvin-bot commentedon Jun 22, 2023
Bug0 Triage Checklist (Main S/O)
Platformsin OP are ✅)dummy-1111 commentedon Jun 22, 2023
Proposal
Please re-state the problem that we are trying to solve in this issue.
Long pressing on attachment in chat history in iOS safari shows the default image menu
What is the root cause of that problem?
This is the default behavior of
imgelements in iOS safari browser. We didn't disable it yet.What changes do you think we should make in order to solve the problem?
We have CSS styles for
imgelements hereApp/src/styles/styles.js
Lines 132 to 136 in 2669f79
Add the following CSS
This works as expected
Result
21344_mac_chrome.mp4
What alternative solutions did you explore? (Optional)
[-]IOS - Long Pressing on Attachment in chat history in Safari opens the native image menu[/-][+][$1000] IOS - Long Pressing on Attachment in chat history in Safari opens the native image menu[/+]melvin-bot commentedon Jun 23, 2023
Job added to Upwork: https://www.upwork.com/jobs/~012b0bba0a353f1098
melvin-bot commentedon Jun 23, 2023
Current assignee @NicMendonca is eligible for the External assigner, not assigning anyone new.
melvin-bot commentedon Jun 23, 2023
Triggered auto assignment to Contributor-plus team member for initial proposal review - @rushatgabhane (
External)pauldriggers911 commentedon Jun 23, 2023
Proposal
Please re-state the problem that we are trying to solve in this issue.
The long-press behavior on images on iOS safari shows a contextual menu.
What is the root cause of that problem?
In Safari, the long-press behavior on images specifically triggers a contextual menu rather than the standard context menu by default.
What changes do you think we should make in order to solve the problem?
There is a workaround you can try to prevent the contextual menu from appearing. It involves adding the CSS property
-webkit-touch-callout: noneto the image element. By setting-webkit-touch-callout: noneon the image element, you can attempt to prevent the contextual menu from appearing when the user long-presses on the image.To solve this issue, insert this CSS property to
webViewStyles.tagStyles.imgstyle here.App/src/styles/styles.js
Lines 132 to 136 in a777544
What alternative solutions did you explore? (Optional)
None.
77 remaining items
melvin-bot commentedon Jul 26, 2023
Reviewinglabel has been removed, please complete the "BugZero Checklist".melvin-bot commentedon Jul 26, 2023
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.45-7 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:
If no regressions arise, payment will be issued on 2023-08-02. 🎊
After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.
For reference, here are some details about the assignees on this issue:
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
melvin-bot commentedon Jul 26, 2023
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
parasharrajat commentedon Aug 1, 2023
Reporting payment requested.
rushatgabhane commentedon Aug 2, 2023
The PR that introduced the bug has been identified. Link to the PR: This bug existed ever since we have long press for attachments. Will have to go years back. So we can leave this.
The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment: N.A.
A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion: N.A.
Determine if we should create a regression test for this bug. No. Won't happen again
If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again - No
rushatgabhane commentedon Aug 2, 2023
Created a manual request - https://staging.new.expensify.com/r/3188378132507359
NicMendonca commentedon Aug 2, 2023
@rushatgabhane thanks for getting that BZ checklist done so quick! 🎉
JmillsExpensify commentedon Aug 3, 2023
Reviewed details for @parasharrajat. These details are accurate based on summary from Business Reviewer and are now approved for payment in NewDot.
NicMendonca commentedon Aug 3, 2023
@s-alves10 has been paid via upwork ✅
NicMendonca commentedon Aug 3, 2023
all set here!
JmillsExpensify commentedon Aug 4, 2023
Reviewed details for @rushatgabhane. These details are accurate based on summary from Business Reviewer and are now approved for payment in NewDot.