diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/AddIngredientController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/AddIngredientController.java
index e2df33f50a05c944abaca08c1dee82c52867c6f9..5f5ad545a128657db5d563776322db5af6759bc1 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/AddIngredientController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/AddIngredientController.java
@@ -3,11 +3,15 @@ package no.ntnu.idatt1002.demo.controller;
 import javafx.collections.FXCollections;
 import javafx.collections.ObservableList;
 import javafx.fxml.FXML;
+import javafx.fxml.FXMLLoader;
 import javafx.fxml.Initializable;
+import javafx.scene.Parent;
 import javafx.scene.Scene;
+import javafx.scene.control.DialogPane;
 import javafx.scene.control.ListView;
 import javafx.event.ActionEvent;
 
+import java.io.IOException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -18,7 +22,9 @@ import java.util.stream.Collectors;
 
 import javafx.scene.control.Button;
 import javafx.scene.control.TextField;
+import no.ntnu.idatt1002.demo.data.recipes.FileHandler;
 import no.ntnu.idatt1002.demo.data.recipes.FoodItem;
+import no.ntnu.idatt1002.demo.data.recipes.IngredientsAtHand;
 
 public class AddIngredientController implements Initializable {
 
@@ -28,14 +34,14 @@ public class AddIngredientController implements Initializable {
     );*/
 
     /*List<String> testIngredients =  Arrays.asList("Tester words", "Another tester word", "tomatoes that are canned", "minced meat", "blueberries");*/
+/*
     String[] testIngredients =  {"Tester words", "Another tester word", "tomatoes that are canned", "minced meat", "blueberries"};
 
+*/
 
-    private List<String> stringIngredients = Arrays.stream(FoodItem.values()).toList().stream().map(value -> value.label).toList();
-    private int noLengthOfList = stringIngredients.size();
-    String[] arrayIngredients = stringIngredients.stream().toArray(String[] ::new);
-    //private String[] arrayIngredients
-    private ObservableList<String> ingredients = FXCollections.observableArrayList(stringIngredients);
+    private ObservableList<String> ingredients;
+    private String[] ingredientsList;
+    private IngredientsAtHand ingredientsAtHand;
 
     @FXML
     private Button addBtn;
@@ -49,12 +55,24 @@ public class AddIngredientController implements Initializable {
     @FXML
     private Button searchBtn;
 
+
     @FXML
-    void addToFridge(ActionEvent event) {
+    void addToFridge(ActionEvent event) throws IOException {
         System.out.printf("Add ingredient to fridge");
         String item = listView.getSelectionModel().getSelectedItem();
         System.out.printf("The item was: %s", item);
 
+        ingredientsAtHand.addIngredient(FoodItem.valueOf(item.replace(" ", "_").toUpperCase()));
+        FileHandler.writeIngredientsAtHand(ingredientsAtHand, "Fridge");
+
+  /*      FXMLLoader loader = new FXMLLoader();
+        loader.setLocation(getClass().getResource("/view/SuggestRecipesController.fxml"));
+        loader.load();
+        // Location is not set.
+
+        SuggestRecipesController suggestRecipesController = loader.getController();
+        suggestRecipesController.addToFridge(item);*/
+
         // Add to existing at hand and write to file. if not null/blank
 
     }
@@ -63,19 +81,25 @@ public class AddIngredientController implements Initializable {
     void search(ActionEvent event) {
         System.out.printf("Searching for ingredient to fridge");
        listView.getItems().clear();
-       listView.getItems().addAll(searchList(searchBar.getText(), arrayIngredients));
+       listView.getItems().addAll(searchList(searchBar.getText(), ingredientsList));
 
     }
 
     @Override
     public void initialize(URL url, ResourceBundle resourceBundle) {
 
-   /*     ObservableList ingredients = FXCollections.observableArrayList(testIngredients);*/
-
-
+        ingredientsAtHand = FileHandler.readIngredientsAtHand("AtHandRegister");
 
+   /*     ObservableList ingredients = FXCollections.observableArrayList(testIngredients);*/
   /*      ObservableList<FoodItem> ingredients = FXCollections.observableArrayList(
                 FoodItem.values());*/
+
+        //TODO: Move into initializer? - Tidy up!
+        List<String> stringIngredients = Arrays.stream(FoodItem.values()).toList().stream().map(value -> value.label).toList();
+        int noLengthOfList = stringIngredients.size();
+        ingredientsList = stringIngredients.stream().toArray(String[] ::new);
+        //private String[] arrayIngredients
+        ingredients = FXCollections.observableArrayList(stringIngredients);
         // Fill list with ingredients
         listView.setItems(ingredients);
 
diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/SuggestRecipesController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/SuggestRecipesController.java
index ba7622a97c6f79e42c547b974d27ea84018cb900..75af4a24f9cf0c98fd3696f279cc7a74e9166ee5 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/SuggestRecipesController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/SuggestRecipesController.java
@@ -32,6 +32,9 @@ public class SuggestRecipesController implements Initializable {
     @FXML
     private Button addToFridgeBtn;
 
+    @FXML
+    private Button removeBtn;
+
     @FXML
     private Button goBackBtn;
 
@@ -57,7 +60,14 @@ public class SuggestRecipesController implements Initializable {
         dialog.setTitle("Add ingredient to fridge");
 
         Optional<ButtonType> clickedButton = dialog.showAndWait();
-        if (clickedButton.get() == ButtonType.OK) {
+
+        if (clickedButton.get() == ButtonType.APPLY) {
+        // Refresh ingredientsAtHand.
+            ingredientsAtHand = FileHandler.readIngredientsAtHand("Fridge");
+            //TODO: Duplicate
+            fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
+            fridgeList.setItems(fridge);
+
             System.out.println("Clickecked OK!");
         }else if(clickedButton.get() == ButtonType.CANCEL) {
             System.out.println("Close the dialog");
@@ -65,11 +75,21 @@ public class SuggestRecipesController implements Initializable {
     }
 
     @FXML
-    private void removeIngredient(ActionEvent event) throws IOException {
+    private void removeFromFridge(ActionEvent event) throws IOException {
 
         System.out.println("Remove the selected from fridge!");
         String toRemove = fridgeList.getSelectionModel().getSelectedItem();
-        ingredientsAtHand.removeIngredient(FoodItem.valueOf(toRemove.toUpperCase()));
+        ingredientsAtHand.removeIngredient(FoodItem.valueOf(toRemove.replace(" ", "_").toUpperCase()));
+        //TODO: Remove toUppercase solution above.
+        //TODO: Consider factoring out to a update method.
+        fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
+        fridgeList.setItems(fridge);
+    }
+
+    public void addToFridge(String ingredient) {
+        System.out.println("Add to fridge!");
+        String toRemove = fridgeList.getSelectionModel().getSelectedItem();
+        ingredientsAtHand.addIngredient(FoodItem.valueOf(toRemove.toUpperCase()));
         //TODO: Remove toUppercase solution above.
         //TODO: Consider factoring out to a update method.
         fridge = FXCollections.observableArrayList(ingredientsAtHand.getIngredientsAtHand().stream().map(foodItem -> foodItem.label).toList());
@@ -77,6 +97,7 @@ public class SuggestRecipesController implements Initializable {
 
     }
 
+
     @FXML
     private void goBack(ActionEvent event) throws IOException {
         FXMLLoader loader = new FXMLLoader();
diff --git a/src/main/java/no/ntnu/idatt1002/demo/data/recipes/IngredientsAtHand.java b/src/main/java/no/ntnu/idatt1002/demo/data/recipes/IngredientsAtHand.java
index d3708f3f461a9814539f6db281a65f6d503791d3..ef4ccf0adb04e2d50422740da6caf19b7e4c4ea5 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/data/recipes/IngredientsAtHand.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/data/recipes/IngredientsAtHand.java
@@ -21,7 +21,9 @@ public class IngredientsAtHand {
      * @param ingredient The ingredient object to add to the collection of ingredients at hand.
      */
     public void addIngredient(FoodItem ingredient) {
-        this.ingredientsAtHand.add(ingredient);
+        if(!this.atHand(ingredient)) {
+            this.ingredientsAtHand.add(ingredient);
+        }
     }
 
     //TODO: Unit tests and javadoc
diff --git a/src/main/resources/recipes/Fridge.register b/src/main/resources/recipes/Fridge.register
index 57c23bbd2e72598d21864d220a8383cabb8096c0..fb1ef97c3dafb895dfa2bf4f030bcf5e2bdb2483 100644
--- a/src/main/resources/recipes/Fridge.register
+++ b/src/main/resources/recipes/Fridge.register
@@ -1,4 +1,8 @@
 POTATO
 MILK
 LEMON
-MINCED_MEAT
\ No newline at end of file
+MINCED_MEAT
+YELLOW_CHEESE
+ORANGE
+SALSA_SAUCE
+ONION
diff --git a/src/main/resources/view/AddIngredient.fxml b/src/main/resources/view/AddIngredient.fxml
index 89a4fcd2e33da791375ca7be2979d2c84b86e6df..db5e96d15b266482da62a13476c5b2e92272f9c1 100644
--- a/src/main/resources/view/AddIngredient.fxml
+++ b/src/main/resources/view/AddIngredient.fxml
@@ -24,7 +24,7 @@
                               <Insets />
                            </HBox.margin>
                         </TextField>
-                        <Button fx:id="searchBtn" alignment="CENTER" contentDisplay="CENTER" defaultButton="true" mnemonicParsing="false" onAction="#search" text="Search" textAlignment="CENTER">
+                        <Button fx:id="searchBtn" alignment="CENTER" contentDisplay="CENTER" mnemonicParsing="false" onAction="#search" text="Search" textAlignment="CENTER">
                            <font>
                               <Font size="14.0" />
                            </font>
@@ -47,7 +47,7 @@
                   </ListView>
                   <Pane prefHeight="81.0" prefWidth="600.0">
                      <children>
-                        <Button fx:id="addBtn" layoutX="275.0" layoutY="7.0" mnemonicParsing="false" onAction="#addToFridge" text="ADD">
+                        <Button fx:id="addBtn" defaultButton="true" layoutX="275.0" layoutY="7.0" mnemonicParsing="false" onAction="#addToFridge" text="ADD">
                            <font>
                               <Font size="14.0" />
                            </font>
@@ -69,7 +69,7 @@
       </Label>
    </header>
    <buttonTypes>
-      <ButtonType fx:constant="OK" />
+      <ButtonType fx:constant="APPLY" />
       <ButtonType fx:constant="CANCEL" />
    </buttonTypes>
 </DialogPane>
diff --git a/src/main/resources/view/SuggestRecipes.fxml b/src/main/resources/view/SuggestRecipes.fxml
index 181d21fe06094041d0cfc0783071558a747fdd3d..dbde1809a1a61c0db8597086fbd805773865a9c9 100644
--- a/src/main/resources/view/SuggestRecipes.fxml
+++ b/src/main/resources/view/SuggestRecipes.fxml
@@ -37,7 +37,7 @@
                               <Font size="14.0" />
                            </font>
                         </Button>
-                        <Button fx:id="removeBtn" layoutX="31.0" layoutY="11.0" mnemonicParsing="false" onAction="#removeIngredient" text="Remove">
+                        <Button fx:id="removeBtn" layoutX="31.0" layoutY="11.0" mnemonicParsing="false" onAction="#removeFromFridge" text="Remove">
                            <font>
                               <Font size="14.0" />
                            </font>