diff --git a/src/components/DrawTools.js b/src/components/DrawTools.js
index a9d70f760dff8884b05deeca7b9044bdc999c37e..3de6eddbc6bd7478d33e7b8c49daeb2885646aca 100644
--- a/src/components/DrawTools.js
+++ b/src/components/DrawTools.js
@@ -252,14 +252,14 @@ class DrawTools extends Component {
           onDeleteStop={this._onEditDeleteStop}
           draw={{
             circle: {
-              repeatMode: true, // allows using the tool again after finishing the previous shape
+              repeatMode: false, // allows using the tool again after finishing the previous shape
               shapeOptions: {
                 color: "#f9f10c",
                 opacity: 1 // affects the outline only. for some reason it wasn't at full opacity, so this is needed for more clarity
               }
             },
             rectangle: {
-              repeatMode: true
+              repeatMode: false
             },
             polygon: {
               repeatMode: true,
diff --git a/src/components/Player.js b/src/components/Player.js
index c64884b6996200de9b039a65b5a53755779115c4..15f7a7f48c7357e815c30134bd25c7b61b5c3984 100644
--- a/src/components/Player.js
+++ b/src/components/Player.js
@@ -5,7 +5,8 @@ class Player extends Component {
   constructor(props) {
     super(props);
     this.state = {
-      players: null
+      players: null,
+      time: Date.now()
     };
   }
 
@@ -33,6 +34,14 @@ class Player extends Component {
       });
   }
 
+  componentDidMount() {
+    // update components every 10 seconds
+    this.interval = setInterval(
+      () => this.setState({ time: Date.now() }),
+      10000
+    );
+  }
+
   shouldComponentUpdate(nextProps, nextState) {
     // do not update component until players have been fetched and game ID is available
     if (this.state.players === null) {
@@ -54,6 +63,10 @@ class Player extends Component {
     }
   }
 
+  componentWillUnmount() {
+    clearInterval(this.interval);
+  }
+
   render() {
     return (
       <div>