diff --git a/src/AnnotationCreation.js b/src/AnnotationCreation.js
index a61340882c73061a00ac796174a1a41dd36f9118..d25fff171e0a35231b330eee67bece744ff72c6d 100644
--- a/src/AnnotationCreation.js
+++ b/src/AnnotationCreation.js
@@ -480,8 +480,8 @@ function AnnotationCreation(props) {
         />
         )}
         <AnnotationFormDrawing
-          {...toolState}
-          setToolState={setToolState}
+          toolState={toolState}
+          updateToolState={setToolState}
           handleImgChange={handleImgChange}
         />
         <div>
diff --git a/src/AnnotationForm/AnnotationFormDrawing.js b/src/AnnotationForm/AnnotationFormDrawing.js
index 844009867b12aba193d64c71a45ffda9e070fc63..1804cdbf7e78c95a87ff1085b568c6bb63123c88 100644
--- a/src/AnnotationForm/AnnotationFormDrawing.js
+++ b/src/AnnotationForm/AnnotationFormDrawing.js
@@ -42,7 +42,7 @@ const StyledDivider = styled(Divider)(({ theme }) => ({
   margin: theme.spacing(1, 0.5),
 }));
 
-function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange, lineWeightPopoverOpen, popoverLineWeightAnchorEl, stroke, strokeWidth, colorPopoverOpen, popoverAnchorEl, currentColorType, ...props }) {
+function AnnotationFormDrawing( { updateToolState, toolState, handleImgChange }) {
  /* const [state, setState] = useState({
     activeTool: 'cursor',
     closedMode: 'closed',
@@ -56,73 +56,73 @@ function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange,
 
   /** */
   const openChooseLineWeight = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       lineWeightPopoverOpen: true,
       popoverLineWeightAnchorEl: e.currentTarget,
-    }));
+    });
   };
 
 
 
   /** Close color popover window */
   const closeChooseColor = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       colorPopoverOpen: false,
       currentColorType: null,
       popoverAnchorEl: null,
-    }));
+    });
   };
 
   /** Update strokecolor */
   const updateStrokeColor = (color) => {
-    setState((prevState) => ({
-      ...prevState,
-      [prevState.currentColorType]: color.hex,
-    }));
+    updateToolState({
+      ...toolState,
+      currentColorType: color.hex,
+    });
   };
   /** */
   const openChooseColor = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       colorPopoverOpen: true,
       currentColorType: e.currentTarget.value,
       popoverAnchorEl: e.currentTarget,
-    }));
+    });
   };
 
   /** */
   const handleCloseLineWeight = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       lineWeightPopoverOpen: false,
       popoverLineWeightAnchorEl: null,
-    }));
+    });
   };
 
   /** */
   const handleLineWeightSelect = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       lineWeightPopoverOpen: false,
       popoverLineWeightAnchorEl: null,
       strokeWidth: e.currentTarget.value,
-    }));
+    });
   };
 
   const changeTool = (e, tool) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       activeTool: tool,
-    }));
+    });
   };
 
   const changeClosedMode = (e) => {
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       closedMode: e.currentTarget.value,
-    }));
+    });
   };
 
   /**
@@ -134,12 +134,25 @@ function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange,
       id: image?.id,
     };
 
-    setState((prevState) => ({
-      ...prevState,
+    updateToolState({
+      ...toolState,
       imageEvent: data,
-    }));
+    });
   };
 
+  const {
+    activeTool,
+    closedMode,
+    image,
+    lineWeightPopoverOpen,
+    popoverLineWeightAnchorEl,
+    fillColor,
+    strokeColor,
+    strokeWidth,
+    colorPopoverOpen,
+    popoverAnchorEl,
+    currentColorType } = toolState;
+
   return (
     <div>
       <div>
@@ -182,9 +195,9 @@ function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange,
                 orientation="vertical"
               />
               <StyledToggleButtonGroup
-                value={props.value}
+                value={activeTool} // State or props ?
                 exclusive
-                onChange={props.onChange}
+                onChange={changeTool}
                 aria-label="tool selection"
                 size="small"
               >
@@ -225,7 +238,7 @@ function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange,
                 aria-label="select color"
                 onClick={openChooseColor}
               >
-                <StrokeColorIcon style={{ fill: props.fill }} />
+                <StrokeColorIcon style={{ fill: strokeColor }} />
                 <ArrowDropDownIcon />
               </ToggleButton>
               <ToggleButton
@@ -241,14 +254,14 @@ function AnnotationFormDrawing({ activeTool, closedMode, image, handleImgChange,
                 aria-label="select color"
                 onClick={openChooseColor}
               >
-                <FormatColorFillIcon style={{ fill: props.fill }} />
+                <FormatColorFillIcon style={{ fill: fillColor }} />
                 <ArrowDropDownIcon />
               </ToggleButton>
             </ToggleButtonGroup>
 
             <StyledDivider flexItem orientation="vertical" />
             { /* close / open polygon mode only for freehand drawing mode. */
-          props.activeTool === 'freehand'
+          activeTool === 'freehand'
             ? (
               <ToggleButtonGroup
                 size="small"