From ea7b75b7fed26ea522346cf8055466642e6d704c Mon Sep 17 00:00:00 2001
From: chris <kokosias@yahoo.gr>
Date: Fri, 15 Jan 2021 15:30:07 +0200
Subject: [PATCH] dont rerender component

---
 .../trackChanges/TrackChangeOptionsTool.js    |  2 +-
 .../TrackCommentOptions.js                    | 23 +++++++++++--------
 2 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/wax-prosemirror-components/src/components/trackChanges/TrackChangeOptionsTool.js b/wax-prosemirror-components/src/components/trackChanges/TrackChangeOptionsTool.js
index 640597119..b5924629a 100644
--- a/wax-prosemirror-components/src/components/trackChanges/TrackChangeOptionsTool.js
+++ b/wax-prosemirror-components/src/components/trackChanges/TrackChangeOptionsTool.js
@@ -1,4 +1,4 @@
-import React, { useMemo, useState, useRef } from 'react';
+import React, { useMemo, useState, useRef, useEffect } from 'react';
 
 import styled from 'styled-components';
 import { grid } from '@pubsweet/ui-toolkit';
diff --git a/wax-prosemirror-services/src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptions.js b/wax-prosemirror-services/src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptions.js
index ccbaffe19..893387826 100644
--- a/wax-prosemirror-services/src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptions.js
+++ b/wax-prosemirror-services/src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptions.js
@@ -22,16 +22,21 @@ class TrackCommentOptions extends ToolGroup {
 
   renderTools(view) {
     if (isEmpty(view)) return null;
-    return (
-      <TrackChangeOptionsTool
-        key={uuidv4()}
-        view={view}
-        groups={this._toolGroups[0].groups.map(group => ({
-          //   groupName: group.title.props.title,
-          items: group._tools,
-        }))}
-      />
+
+    const MemorizedComponent = useMemo(
+      () => (
+        <TrackChangeOptionsTool
+          key={uuidv4()}
+          view={view}
+          groups={this._toolGroups[0].groups.map(group => ({
+            //   groupName: group.title.props.title,
+            items: group._tools,
+          }))}
+        />
+      ),
+      [],
     );
+    return MemorizedComponent;
   }
 }
 
-- 
GitLab