From aba75d112408d477ca5925028074da7edcdd05f9 Mon Sep 17 00:00:00 2001 From: nick-delirium Date: Mon, 10 Jul 2023 18:01:30 +0200 Subject: [PATCH] fix(ui): mouse trail setting fixes --- .../app/player/web/managers/MouseMoveManager.ts | 15 ++++++++++----- tracker/tracker/CHANGELOG.md | 6 +++--- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/frontend/app/player/web/managers/MouseMoveManager.ts b/frontend/app/player/web/managers/MouseMoveManager.ts index 03f3bbc1b..3374f6024 100644 --- a/frontend/app/player/web/managers/MouseMoveManager.ts +++ b/frontend/app/player/web/managers/MouseMoveManager.ts @@ -4,10 +4,12 @@ import { HOVER_CLASSNAME } from '../messages/rewriter/constants' import ListWalker from '../../common/ListWalker' import MouseTrail from '../addons/MouseTrail' import styles from './trail.module.css' +import { MOUSE_TRAIL } from "App/constants/storageKeys"; export default class MouseMoveManager extends ListWalker { private hoverElements: Array = [] - private mouseTrail: MouseTrail + private mouseTrail: MouseTrail | undefined + private removeMouseTrail = false constructor(private screen: Screen) { super() @@ -15,13 +17,16 @@ export default class MouseMoveManager extends ListWalker { canvas.id = 'openreplay-mouse-trail' canvas.className = styles.canvas - this.mouseTrail = new MouseTrail(canvas) + this.removeMouseTrail = localStorage.getItem(MOUSE_TRAIL) === 'false' + if (!this.removeMouseTrail) { + this.mouseTrail = new MouseTrail(canvas) + } this.screen.overlay.appendChild(canvas) - this.mouseTrail.createContext() + this.mouseTrail?.createContext() const updateSize = (w: number, h: number) => { - return this.mouseTrail.resizeCanvas(w, h) + return this.mouseTrail?.resizeCanvas(w, h) } this.screen.setOnUpdate(updateSize) @@ -54,7 +59,7 @@ export default class MouseMoveManager extends ListWalker { this.screen.cursor.move(lastMouseMove) //window.getComputedStyle(this.screen.getCursorTarget()).cursor === 'pointer' // might influence performance though this.updateHover() - this.mouseTrail.leaveTrail(lastMouseMove.x, lastMouseMove.y) + this.mouseTrail?.leaveTrail(lastMouseMove.x, lastMouseMove.y) } } } diff --git a/tracker/tracker/CHANGELOG.md b/tracker/tracker/CHANGELOG.md index 1a4f997fa..b373ae6d6 100644 --- a/tracker/tracker/CHANGELOG.md +++ b/tracker/tracker/CHANGELOG.md @@ -1,13 +1,13 @@ # 9.0.0 -- Option to disable string dictionary `{disableStringDict: true` in Tracker constructor +- Option to disable string dictionary `{disableStringDict: true}` in Tracker constructor - Introduced Feature flags api - Fixed input durations recorded on programmable autofill - change InputMode from enum to const Object # 8.1.2 -- option to disable string dictionary `{disableStringDict: true` in Tracker constructor +- option to disable string dictionary `{disableStringDict: true}` in Tracker constructor # 8.1.1 @@ -22,7 +22,7 @@ # 7.0.4 -- option to disable string dictionary `{disableStringDict: true` in Tracker constructor +- option to disable string dictionary `{disableStringDict: true}` in Tracker constructor # 7.0.3