From 4c3c9bd99f4651fe96774adbf303c3b59f88db9f Mon Sep 17 00:00:00 2001 From: Victor Nyagudi Date: Mon, 1 May 2023 16:43:11 +0300 Subject: [PATCH 1/4] Add logic to prevent 'new' word from being copied --- src/components/UnreadActionIndicator.js | 2 +- src/libs/SelectionScraper/index.js | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/components/UnreadActionIndicator.js b/src/components/UnreadActionIndicator.js index b5124155b6be..b2d19ae689c5 100755 --- a/src/components/UnreadActionIndicator.js +++ b/src/components/UnreadActionIndicator.js @@ -5,7 +5,7 @@ import Text from './Text'; import withLocalize, {withLocalizePropTypes} from './withLocalize'; const UnreadActionIndicator = props => ( - + {props.translate('common.new')} diff --git a/src/libs/SelectionScraper/index.js b/src/libs/SelectionScraper/index.js index 2d81d9f6ccf6..751defa6ca15 100644 --- a/src/libs/SelectionScraper/index.js +++ b/src/libs/SelectionScraper/index.js @@ -2,6 +2,7 @@ import render from 'dom-serializer'; import {parseDocument} from 'htmlparser2'; import _ from 'underscore'; import Str from 'expensify-common/lib/str'; +import styles from '../../styles/styles'; const elementsWillBeSkipped = ['html', 'body']; const tagAttribute = 'data-testid'; @@ -80,6 +81,8 @@ const getHTMLOfSelection = () => { } } + div.querySelectorAll(`div[style*="user-select: ${styles.userSelectNone.WebkitUserSelect}"]`).forEach(item => item.remove()); + return div.innerHTML; }; From 3082420a08fda06cc7097f0fcc14472e810d8af2 Mon Sep 17 00:00:00 2001 From: Victor Nyagudi Date: Mon, 1 May 2023 17:51:39 +0300 Subject: [PATCH 2/4] Add comment explaining change --- src/libs/SelectionScraper/index.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libs/SelectionScraper/index.js b/src/libs/SelectionScraper/index.js index 751defa6ca15..e7644666e935 100644 --- a/src/libs/SelectionScraper/index.js +++ b/src/libs/SelectionScraper/index.js @@ -81,6 +81,7 @@ const getHTMLOfSelection = () => { } } + // Remove any element that isn't selectable div.querySelectorAll(`div[style*="user-select: ${styles.userSelectNone.WebkitUserSelect}"]`).forEach(item => item.remove()); return div.innerHTML; From 1d48b321590eb96643834ca71c545b4c4d3b6b58 Mon Sep 17 00:00:00 2001 From: Victor Nyagudi Date: Mon, 1 May 2023 18:05:31 +0300 Subject: [PATCH 3/4] Update comment --- src/libs/SelectionScraper/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libs/SelectionScraper/index.js b/src/libs/SelectionScraper/index.js index e7644666e935..f5c108c79753 100644 --- a/src/libs/SelectionScraper/index.js +++ b/src/libs/SelectionScraper/index.js @@ -81,7 +81,7 @@ const getHTMLOfSelection = () => { } } - // Remove any element that isn't selectable + // Remove any element that isn't selectable to prevent copying unnecessary text/items div.querySelectorAll(`div[style*="user-select: ${styles.userSelectNone.WebkitUserSelect}"]`).forEach(item => item.remove()); return div.innerHTML; From 2652e7da1497c1d8f5b5b077f86138858f87de1b Mon Sep 17 00:00:00 2001 From: Vicktor <79470910+Victor-Nyagudi@users.noreply.github.com> Date: Tue, 2 May 2023 18:24:25 +0300 Subject: [PATCH 4/4] Update src/components/UnreadActionIndicator.js Co-authored-by: Alex Beaman --- src/components/UnreadActionIndicator.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/UnreadActionIndicator.js b/src/components/UnreadActionIndicator.js index b2d19ae689c5..ccd3c8037884 100755 --- a/src/components/UnreadActionIndicator.js +++ b/src/components/UnreadActionIndicator.js @@ -5,7 +5,11 @@ import Text from './Text'; import withLocalize, {withLocalizePropTypes} from './withLocalize'; const UnreadActionIndicator = props => ( - + {props.translate('common.new')}