From 9381f5783a247d702fe91b640bb945ded0605b4d Mon Sep 17 00:00:00 2001 From: TimofeyBoyko Date: Mon, 29 Aug 2022 17:27:05 +0300 Subject: [PATCH] Web:Pages:Accounts: clear selection after click --- .../pages/Accounts/Home/Section/Body/index.js | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/packages/client/src/pages/Accounts/Home/Section/Body/index.js b/packages/client/src/pages/Accounts/Home/Section/Body/index.js index 0213ca643a..3ae4e8e100 100644 --- a/packages/client/src/pages/Accounts/Home/Section/Body/index.js +++ b/packages/client/src/pages/Accounts/Home/Section/Body/index.js @@ -12,6 +12,31 @@ import PeopleRowContainer from "./RowView/PeopleRowContainer"; import TableView from "./TableView/TableContainer"; class SectionBodyContent extends React.Component { + componentDidMount() { + window.addEventListener("mousedown", this.onMouseDown); + } + + componentWillUnmount() { + window.removeEventListener("mousedown", this.onMouseDown); + } + + onMouseDown = (e) => { + const { setSelection, setBufferSelection } = this.props; + if ( + (e.target.closest(".scroll-body") && + !e.target.closest(".user-item") && + !e.target.closest(".not-selectable") && + !e.target.closest(".info-panel") && + !e.target.closest(".table-container_group-menu")) || + e.target.closest(".files-main-button") || + e.target.closest(".add-button") || + e.target.closest(".search-input-block") + ) { + setSelection([]); + setBufferSelection(null); + } + }; + render() { const { tReady, viewAs } = this.props; @@ -39,7 +64,9 @@ class SectionBodyContent extends React.Component { export default inject(({ peopleStore }) => { const { viewAs } = peopleStore; - return { viewAs }; + const { setSelection, setBufferSelection } = peopleStore.selectionStore; + + return { viewAs, setSelection, setBufferSelection }; })( withTranslation(["People", "Common", "PeopleTranslations"])( withPeopleLoader(observer(SectionBodyContent))(