diff --git a/src/main/java/ch/hepia/ui/MainWindowController.java b/src/main/java/ch/hepia/ui/MainWindowController.java
index 3567d7bfdc86c97afddcf6e9e1d541e55c7267e1..cc9acea72f67d8d721575ca66282032f81a7eed3 100644
--- a/src/main/java/ch/hepia/ui/MainWindowController.java
+++ b/src/main/java/ch/hepia/ui/MainWindowController.java
@@ -6,6 +6,7 @@ import ch.hepia.api.transport.LinkAPI;
 import ch.hepia.api.transport.Section;
 import ch.hepia.config.AppContext;
 import ch.hepia.events.ChatMessage;
+import ch.hepia.models.User;
 import javafx.animation.TranslateTransition;
 import javafx.application.Platform;
 import javafx.beans.value.ChangeListener;
@@ -19,6 +20,7 @@ import javafx.scene.image.Image;
 import javafx.scene.input.KeyCode;
 import javafx.scene.layout.Background;
 import javafx.scene.paint.Color;
+import javafx.scene.text.TextAlignment;
 import javafx.util.Duration;
 import org.json.JSONArray;
 
@@ -108,8 +110,7 @@ public class MainWindowController implements Initializable {
     private void drawConnection(Connection connection, int x, int y){
         List<Section> sections = connection.getSections();
         connectionCanvas.getGraphicsContext2D().setFill(Color.RED);
-        
-        System.out.println(sections.size());
+
 		for (int i = 0; i < sections.size(); i++){
 			connectionCanvas.getGraphicsContext2D().strokeLine(
 					x + (622 / sections.size()) * (i), y, 622 / sections.size(), y);
@@ -122,7 +123,11 @@ public class MainWindowController implements Initializable {
 		}
     }
 
-    private void drawMessage(String message){
+    /**
+     * Draws a newly received message
+     * @param message The message to draw
+     */
+    private void drawMessage(User user, String message){
         Pane p = new Pane();
         p.setMaxWidth(326);
 
@@ -130,6 +135,9 @@ public class MainWindowController implements Initializable {
         msg.setWrapText(true);
         msg.setStyle("-fx-padding: 8px");
         msg.setText(message);
+        if (Main.getContext().getUser().isPresent() && !user.equals(Main.getContext().getUser().get())){
+            msg.setTextAlignment(TextAlignment.RIGHT);
+        }
         msg.setMaxWidth(310);
 
         p.getChildren().add(msg);
@@ -137,6 +145,9 @@ public class MainWindowController implements Initializable {
         chatContainer.getChildren().add(p);
     }
 
+    /**
+     * Moves the older messages downwards
+     */
     private void insertMessageIntoQueue(){
         for (int i = 0; i < chatContainer.getChildren().size(); i++){
             Pane sp = (Pane) chatContainer.getChildren().get(i);
@@ -208,7 +219,7 @@ public class MainWindowController implements Initializable {
             chatMessage -> {
                 Platform.runLater(() -> {
                     String message = chatMessage.getUser().toString() + ": " + chatMessage.getMessage();
-                    drawMessage(message);
+                    drawMessage(chatMessage.getUser(), message);
                 });
             },
             chatMessage -> !(app.getUser().get().getIgnoredUserList().contains(chatMessage.getUser()))