diff --git a/app/package-lock.json b/app/package-lock.json index 48bd5cc..e481dd7 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -2301,7 +2301,7 @@ } }, "electron-telemetry": { - "version": "git+https://github.com/thomasnordquist/electron-telemetry.git#b6bd0bd6c0f84d387e1a0c970338517a78d67717", + "version": "git+https://github.com/thomasnordquist/electron-telemetry.git#a58a28de84874b16fb3d60ae9e83f5a94d873353", "from": "git+https://github.com/thomasnordquist/electron-telemetry.git", "dev": true, "requires": { diff --git a/app/package.json b/app/package.json index 2364f64..26cbd0f 100644 --- a/app/package.json +++ b/app/package.json @@ -17,6 +17,7 @@ "electron-nucleus": "^1.11.0", "electron-telemetry": "git+https://github.com/thomasnordquist/electron-telemetry.git", "html-webpack-plugin": "^4.0.0-beta.5", + "lodash.debounce": "^4.0.8", "number-abbreviate": "^2.0.0", "react": "^16.8.0-alpha.1", "react-dom": "^16.7.0", diff --git a/app/src/actions/Tree.ts b/app/src/actions/Tree.ts index 5404976..97c9e16 100644 --- a/app/src/actions/Tree.ts +++ b/app/src/actions/Tree.ts @@ -5,8 +5,13 @@ import { Dispatch, AnyAction } from 'redux' import { setTopic } from './Publish' import { TopicViewModel } from '../TopicViewModel' import { batchActions } from 'redux-batched-actions' +const debounce = require('lodash.debounce') export const selectTopic = (topic: q.TreeNode) => (dispatch: Dispatch, getState: () => AppState) => { + debouncedSelectTopic(topic, dispatch, getState) +} + +const debouncedSelectTopic = debounce((topic: q.TreeNode, dispatch: Dispatch, getState: () => AppState) => { const { selectedTopic } = getState().tree if (selectedTopic === topic) { return @@ -36,7 +41,7 @@ export const selectTopic = (topic: q.TreeNode) => (dispatch: Dis } else { dispatch(selectTreeTopicDispatch) } -} +}, 70) export const showTree = (tree?: q.Tree) => (dispatch: Dispatch, getState: () => AppState): AnyAction => { const visibleTree = getState().tree.tree diff --git a/app/src/components/Tree/TreeNode.tsx b/app/src/components/Tree/TreeNode.tsx index 125b669..d16269f 100644 --- a/app/src/components/Tree/TreeNode.tsx +++ b/app/src/components/Tree/TreeNode.tsx @@ -225,7 +225,7 @@ class TreeNode extends React.Component { private setHover = debounce((hover: boolean) => { this.setState({ mouseOver: hover }) - }, 5) + }, 45) private didClickNode = (event: React.MouseEvent) => { event.stopPropagation() diff --git a/package-lock.json b/package-lock.json index 96fbeb1..432c3c9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "MQTT-Explorer", - "version": "0.1.3", + "version": "0.1.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1281,7 +1281,7 @@ } }, "electron-telemetry": { - "version": "git+https://github.com/thomasnordquist/electron-telemetry.git#b6bd0bd6c0f84d387e1a0c970338517a78d67717", + "version": "git+https://github.com/thomasnordquist/electron-telemetry.git#a58a28de84874b16fb3d60ae9e83f5a94d873353", "from": "git+https://github.com/thomasnordquist/electron-telemetry.git", "requires": { "@types/node": "^10.12.18",