From 6d326e2db4e385273b1d50f98427397ce91e631b Mon Sep 17 00:00:00 2001 From: Aman Harwara Date: Mon, 1 May 2023 18:59:05 +0530 Subject: [PATCH] feat: Swipe gestures on mobile are now enabled by default and have been improved. You can disable them from Preferences > General > Labs (#2319) --- ...tactjs-npm-2.1.5-c7bb4524ec-5be3d66835.zip | Bin 123601 -> 0 bytes packages/web/package.json | 3 +- .../ContentListView/ListItemTags.tsx | 2 +- .../ContentListView/NoteListItem.tsx | 2 +- .../Components/Panes/usePaneGesture.ts | 265 +++++++++++------- .../Preferences/Panes/General/Labs/Labs.tsx | 7 +- .../src/javascripts/Constants/PrefDefaults.ts | 1 + .../Controllers/Moments/PhotoRecorder.ts | 3 + packages/web/web.webpack.config.js | 3 +- yarn.lock | 8 - 10 files changed, 177 insertions(+), 117 deletions(-) delete mode 100644 .yarn/cache/contactjs-npm-2.1.5-c7bb4524ec-5be3d66835.zip diff --git a/.yarn/cache/contactjs-npm-2.1.5-c7bb4524ec-5be3d66835.zip b/.yarn/cache/contactjs-npm-2.1.5-c7bb4524ec-5be3d66835.zip deleted file mode 100644 index c7a52e7b4d34126d81515933f36139b4958f0a55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123601 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 = ({ hideTags, tags }) => { } return ( -
+
{tags.map((tag) => ( > = ({
node.clientHeight || node.scrollWidth > node.clientWidth) { + return node + } else { + return getScrollParent(node.parentElement) + } +} + +const supportsPassive = (() => { + let supportsPassive = false + try { + const opts = Object.defineProperty({}, 'passive', { + get: () => { + supportsPassive = true + }, + }) + window.addEventListener('test', null as never, opts) + window.removeEventListener('test', null as never, opts) + } catch (e) { + /* empty */ + } + return supportsPassive +})() export const usePaneSwipeGesture = ( direction: 'left' | 'right', @@ -12,16 +40,18 @@ export const usePaneSwipeGesture = ( ) => { const application = useApplication() - const overlayElementRef = useRef(null) + const underlayElementRef = useRef(null) const [element, setElement] = useState(null) const onSwipeEndRef = useStateRef(onSwipeEnd) const isMobileScreen = useMediaQuery(MutuallyExclusiveMediaQueryBreakpoints.sm) - const [isEnabled, setIsEnabled] = useState(() => application.getPreference(PrefKey.PaneGesturesEnabled, false)) + const [isEnabled, setIsEnabled] = useState(() => + application.getPreference(PrefKey.PaneGesturesEnabled, PrefDefaults[PrefKey.PaneGesturesEnabled]), + ) useEffect(() => { return application.addSingleEventObserver(ApplicationEvent.PreferencesChanged, async () => { - setIsEnabled(application.getPreference(PrefKey.PaneGesturesEnabled, false)) + setIsEnabled(application.getPreference(PrefKey.PaneGesturesEnabled, PrefDefaults[PrefKey.PaneGesturesEnabled])) }) }, [application]) @@ -38,126 +68,159 @@ export const usePaneSwipeGesture = ( return } - const panRecognizer = new Pan(element, { - supportedDirections: direction === 'left' ? [Direction.Left] : [Direction.Right], - }) + underlayElementRef.current = element.parentElement?.querySelector(`[data-pane-underlay="${element.id}"]`) || null - const pointerListener = new PointerListener(element, { - supportedGestures: [panRecognizer], - }) + let startX = 0 + let clientX = 0 + let closestScrollContainer: HTMLElement | null + let scrollContainerAxis: 'x' | 'y' | null = null + let canceled = false - function onPan(e: unknown) { - const event = e as CustomEvent - if (!element) { + const TouchMoveThreshold = 15 + const SwipeFinishThreshold = 40 + TouchMoveThreshold + + const scrollListener = () => { + canceled = true + } + + const touchStartListener = (event: TouchEvent) => { + closestScrollContainer = getScrollParent(event.target as HTMLElement) + if (closestScrollContainer) { + closestScrollContainer.addEventListener('scroll', scrollListener) + + if (closestScrollContainer.scrollWidth > closestScrollContainer.clientWidth) { + scrollContainerAxis = 'x' + } + } else { + scrollContainerAxis = null + } + + const touch = event.touches[0] + startX = touch.clientX + + canceled = false + + element.style.willChange = 'transform' + } + + const updateElement = (x: number) => { + if (!underlayElementRef.current) { + const underlayElement = document.createElement('div') + underlayElement.style.position = 'fixed' + underlayElement.style.top = '0' + underlayElement.style.left = '0' + underlayElement.style.width = '100%' + underlayElement.style.height = '100%' + underlayElement.style.pointerEvents = 'none' + underlayElement.style.backgroundColor = '#000' + underlayElement.style.opacity = '0' + underlayElement.style.willChange = 'opacity' + underlayElement.setAttribute('role', 'presentation') + underlayElement.ariaHidden = 'true' + underlayElement.setAttribute('data-pane-underlay', element.id) + + element.before(underlayElement) + underlayElementRef.current = underlayElement + } + + element.animate( + [ + { + transform: `translate3d(${x}px, 0, 0)`, + }, + ], + { + duration: 0, + fill: 'forwards', + }, + ) + + const percent = Math.min(window.innerWidth / x / 10, 0.45) + underlayElementRef.current.animate([{ opacity: percent }], { + duration: 0, + fill: 'forwards', + }) + } + + const touchMoveListener = (event: TouchEvent) => { + if (scrollContainerAxis === 'x') { return } - const x = event.detail.global.deltaX - requestElementUpdate(x) - } + if (canceled) { + return + } - let ticking = false + const touch = event.touches[0] + clientX = touch.clientX - function onPanEnd(e: unknown) { - const event = e as CustomEvent - if (ticking) { - setTimeout(function () { - onPanEnd(event) - }, 100) - } else { - if (!element) { - return - } + const deltaX = clientX - startX - if (direction === 'right' && event.detail.global.deltaX > 40) { - onSwipeEndRef.current(element) - } else if (direction === 'left' && event.detail.global.deltaX < -40) { - onSwipeEndRef.current(element) - } else { - requestElementUpdate(0) - } + if (Math.abs(deltaX) < TouchMoveThreshold) { + return + } - if (overlayElementRef.current) { - overlayElementRef.current - .animate([{ opacity: 0 }], { - duration: 5, - fill: 'forwards', - }) - .finished.then(() => { - if (overlayElementRef.current) { - overlayElementRef.current.remove() - overlayElementRef.current = null - } - }) - .catch(console.error) - } + if (closestScrollContainer) { + closestScrollContainer.style.touchAction = 'none' + } + + const x = + direction === 'right' ? Math.max(deltaX - TouchMoveThreshold, 0) : Math.min(deltaX + TouchMoveThreshold, 0) + + if (gesture === 'pan') { + updateElement(x) } } - function requestElementUpdate(x: number) { - if (!ticking) { - requestAnimationFrame(function () { - if (!element) { - return - } + const touchEndListener = () => { + if (closestScrollContainer) { + closestScrollContainer.removeEventListener('scroll', scrollListener) + closestScrollContainer.style.touchAction = '' + } - if (!overlayElementRef.current) { - const overlayElement = document.createElement('div') - overlayElement.style.position = 'fixed' - overlayElement.style.top = '0' - overlayElement.style.left = '0' - overlayElement.style.width = '100%' - overlayElement.style.height = '100%' - overlayElement.style.pointerEvents = 'none' - overlayElement.style.backgroundColor = '#000' - overlayElement.style.opacity = '0' - overlayElement.style.willChange = 'opacity' + if (canceled) { + updateElement(0) + return + } - element.before(overlayElement) - overlayElementRef.current = overlayElement - } + const deltaX = clientX - startX - const newLeft = direction === 'right' ? Math.max(x, 0) : Math.min(x, 0) - element.animate([{ transform: `translate3d(${newLeft}px,0,0)` }], { duration: 0, fill: 'forwards' }) + element.style.willChange = '' - const percent = Math.min(window.innerWidth / newLeft / 10, 0.45) - overlayElementRef.current.animate([{ opacity: percent }], { - duration: 0, + if ( + (direction === 'right' && deltaX > SwipeFinishThreshold) || + (direction === 'left' && deltaX < -SwipeFinishThreshold) + ) { + onSwipeEndRef.current(element) + } else { + updateElement(0) + } + + if (underlayElementRef.current) { + underlayElementRef.current + .animate([{ opacity: 0 }], { + easing: 'cubic-bezier(.36,.66,.04,1)', + duration: 500, fill: 'forwards', }) - - ticking = false - }) - - ticking = true + .finished.then(() => { + if (underlayElementRef.current) { + underlayElementRef.current.remove() + underlayElementRef.current = null + } + }) + .catch(console.error) } } - if (gesture === 'pan') { - element.addEventListener('panleft', onPan) - element.addEventListener('panright', onPan) - element.addEventListener('panend', onPanEnd) - } else { - if (direction === 'left') { - element.addEventListener('swipeleft', onPanEnd) - } else { - element.addEventListener('swiperight', onPanEnd) - } - } + element.addEventListener('touchstart', touchStartListener, supportsPassive ? { passive: true } : false) + element.addEventListener('touchmove', touchMoveListener, supportsPassive ? { passive: true } : false) + element.addEventListener('touchend', touchEndListener, supportsPassive ? { passive: true } : false) return () => { - pointerListener.destroy() - if (gesture === 'pan') { - element.removeEventListener('panleft', onPan) - element.removeEventListener('panright', onPan) - element.removeEventListener('panend', onPanEnd) - } else { - if (direction === 'left') { - element.removeEventListener('swipeleft', onPanEnd) - } else { - element.removeEventListener('swiperight', onPanEnd) - } - } + element.removeEventListener('touchstart', touchStartListener) + element.removeEventListener('touchmove', touchMoveListener) + element.removeEventListener('touchend', touchEndListener) } }, [direction, element, gesture, isMobileScreen, onSwipeEndRef, isEnabled]) diff --git a/packages/web/src/javascripts/Components/Preferences/Panes/General/Labs/Labs.tsx b/packages/web/src/javascripts/Components/Preferences/Panes/General/Labs/Labs.tsx index cab02a1cc..bafda97bc 100644 --- a/packages/web/src/javascripts/Components/Preferences/Panes/General/Labs/Labs.tsx +++ b/packages/web/src/javascripts/Components/Preferences/Panes/General/Labs/Labs.tsx @@ -8,6 +8,7 @@ import PreferencesSegment from '../../../PreferencesComponents/PreferencesSegmen import LabsFeature from './LabsFeature' import HorizontalSeparator from '@/Components/Shared/HorizontalSeparator' import { MutuallyExclusiveMediaQueryBreakpoints, useMediaQuery } from '@/Hooks/useMediaQuery' +import { PrefDefaults } from '@/Constants/PrefDefaults' type ExperimentalFeatureItem = { identifier: FeatureIdentifier @@ -30,11 +31,13 @@ const LabsPane: FunctionComponent = ({ application }) => { const [experimentalFeatures, setExperimentalFeatures] = useState([]) const [isPaneGesturesEnabled, setIsPaneGesturesEnabled] = useState(() => - application.getPreference(PrefKey.PaneGesturesEnabled, false), + application.getPreference(PrefKey.PaneGesturesEnabled, PrefDefaults[PrefKey.PaneGesturesEnabled]), ) useEffect(() => { return application.addSingleEventObserver(ApplicationEvent.PreferencesChanged, async () => { - setIsPaneGesturesEnabled(application.getPreference(PrefKey.PaneGesturesEnabled, false)) + setIsPaneGesturesEnabled( + application.getPreference(PrefKey.PaneGesturesEnabled, PrefDefaults[PrefKey.PaneGesturesEnabled]), + ) }) }, [application]) diff --git a/packages/web/src/javascripts/Constants/PrefDefaults.ts b/packages/web/src/javascripts/Constants/PrefDefaults.ts index 054efedc3..22afc8246 100644 --- a/packages/web/src/javascripts/Constants/PrefDefaults.ts +++ b/packages/web/src/javascripts/Constants/PrefDefaults.ts @@ -29,4 +29,5 @@ export const PrefDefaults = { [PrefKey.CustomNoteTitleFormat]: 'YYYY-MM-DD [at] hh:mm A', [PrefKey.UpdateSavingStatusIndicator]: true, [PrefKey.DarkMode]: false, + [PrefKey.PaneGesturesEnabled]: true, } as const diff --git a/packages/web/src/javascripts/Controllers/Moments/PhotoRecorder.ts b/packages/web/src/javascripts/Controllers/Moments/PhotoRecorder.ts index f50e2c8b5..0e895a9fc 100644 --- a/packages/web/src/javascripts/Controllers/Moments/PhotoRecorder.ts +++ b/packages/web/src/javascripts/Controllers/Moments/PhotoRecorder.ts @@ -12,6 +12,9 @@ export class PhotoRecorder { constructor() {} public static async isSupported(): Promise { + if (!navigator.mediaDevices) { + return false + } const devices = await navigator.mediaDevices.enumerateDevices() const hasCamera = devices.some((device) => device.kind === 'videoinput') return hasCamera diff --git a/packages/web/web.webpack.config.js b/packages/web/web.webpack.config.js index 55114b91c..22df5f748 100644 --- a/packages/web/web.webpack.config.js +++ b/packages/web/web.webpack.config.js @@ -76,8 +76,7 @@ module.exports = (env) => { * Exclude all node_modules, except for those we need to run through our babel rules because * they may contain class properties and other ES6+ syntax. */ - exclude: - /node_modules\/(?!(@standardnotes\/common|@standardnotes\/domain-core|contactjs|webextension-polyfill))/, + exclude: /node_modules\/(?!(@standardnotes\/common|@standardnotes\/domain-core|webextension-polyfill))/, use: [ 'babel-loader', { diff --git a/yarn.lock b/yarn.lock index 76ac1092f..4c2f9eae7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5547,7 +5547,6 @@ __metadata: autoprefixer: ^10.4.13 babel-loader: ^9.1.0 circular-dependency-plugin: ^5.2.2 - contactjs: 2.1.5 copy-webpack-plugin: ^11.0.0 css-loader: "*" dayjs: ^1.11.7 @@ -9631,13 +9630,6 @@ __metadata: languageName: node linkType: hard -"contactjs@npm:2.1.5": - version: 2.1.5 - resolution: "contactjs@npm:2.1.5" - checksum: 5be3d66835e5a78a16abe6cdbf0c2f4a44471086e313ef8550c6747026cca9e7ff5144fdaaf6b4307cb296baf0fd394ca63758354e58099f1fde3c6756a390c3 - languageName: node - linkType: hard - "content-disposition@npm:0.5.4": version: 0.5.4 resolution: "content-disposition@npm:0.5.4"