diff --git a/editors/demo/src/Editoria/Editoria.js b/editors/demo/src/Editoria/Editoria.js
index 4293bf1a13cb9cb8ab75698003fed441428a1def..3a72be1e77c3730d05315f894139f42e27619975 100644
--- a/editors/demo/src/Editoria/Editoria.js
+++ b/editors/demo/src/Editoria/Editoria.js
@@ -57,6 +57,8 @@ const Editoria = () => {
           //   console.log(JSON.stringify(source));
           // }, 200)}
           user={user}
+          scrollMargin={200}
+          scrollThreshold={200}
         />
       </>
     ),
diff --git a/wax-prosemirror-core/src/Wax.js b/wax-prosemirror-core/src/Wax.js
index a4cc8235eb9f4b5624e6953492f36bdfde20f7ac..b4207c52bfae908aabeb6e65858ff1e6fa794af8 100644
--- a/wax-prosemirror-core/src/Wax.js
+++ b/wax-prosemirror-core/src/Wax.js
@@ -45,6 +45,8 @@ const Wax = forwardRef((props, ref) => {
     user,
     onChange,
     targetFormat,
+    scrollMargin,
+    scrollThreshold,
   } = props;
 
   if (!application) return null;
@@ -71,6 +73,8 @@ const Wax = forwardRef((props, ref) => {
           placeholder={placeholder}
           readonly={readonly}
           ref={ref}
+          scrollMargin={scrollMargin}
+          scrollThreshold={scrollThreshold}
           serializer={serializer}
           targetFormat={targetFormat}
           TrackChange={
diff --git a/wax-prosemirror-core/src/WaxView.js b/wax-prosemirror-core/src/WaxView.js
index 0ac0dd1a0f0207668390cdd9fdaf5b61b2f045ce..40ad701925f13fd50c968ae6b3d12893b221e09a 100644
--- a/wax-prosemirror-core/src/WaxView.js
+++ b/wax-prosemirror-core/src/WaxView.js
@@ -42,6 +42,8 @@ const WaxView = forwardRef((props, ref) => {
     user,
     targetFormat,
     serializer,
+    scrollMargin,
+    scrollThreshold,
   } = props;
 
   const WaxEditorRef = useRef();
@@ -77,8 +79,8 @@ const WaxView = forwardRef((props, ref) => {
             dispatchTransaction,
             disallowedTools: [],
             user,
-            scrollMargin: 200,
-            scrollThreshold: 200,
+            scrollMargin: scrollMargin || 200,
+            scrollThreshold: scrollThreshold || 200,
             attributes: {
               spellcheck: browserSpellCheck ? 'true' : 'false',
             },
diff --git a/wax-prosemirror-services/src/CommentsService/components/RightArea.js b/wax-prosemirror-services/src/CommentsService/components/RightArea.js
index 3147319c2808ab8f4ec9070fbcf90fd36a0b870a..76917053b355667b7b21be78224a1fb988a0783d 100644
--- a/wax-prosemirror-services/src/CommentsService/components/RightArea.js
+++ b/wax-prosemirror-services/src/CommentsService/components/RightArea.js
@@ -39,10 +39,11 @@ export default ({ area }) => {
     each(marksNodes[area], (markNode, pos) => {
       const id =
         markNode instanceof Mark ? markNode.attrs.id : markNode.node.attrs.id;
-
+      let activeTrackChange = null;
       const activeComment = commentPlugin.getState(activeView.state).comment;
-      const activeTrackChange = trakChangePlugin.getState(activeView.state)
-        .trackChange;
+      if (trakChangePlugin)
+        activeTrackChange = trakChangePlugin.getState(activeView.state)
+          .trackChange;
 
       let isActive = false;
       if (
diff --git a/wax-prosemirror-services/src/ImageService/Image.js b/wax-prosemirror-services/src/ImageService/Image.js
index 789f921fb2ea738978081f88e8b6d0b43f51e4be..b81daf6433531756947c245aa32a6ef95aacb341 100644
--- a/wax-prosemirror-services/src/ImageService/Image.js
+++ b/wax-prosemirror-services/src/ImageService/Image.js
@@ -33,8 +33,8 @@ export default class Image extends Tools {
   }
 
   renderTool(view) {
-    if (isEmpty(view)) return null;
     const context = useContext(WaxContext);
+    if (isEmpty(view)) return null;
     const upload = fileUpload(
       view,
       this.config.get('fileUpload'),