Start by making the Salisbury steaks, in a nonstick pan over medium heat drizzle in half the olive oil and toss in the onions and garlic to saute for 5 minutes. Turn off the heat and set them aside.
In a bowl use a whisk to beat the egg, mustard, ketchup, Worcestershire sauce, salt and pepper, and rosemary together. Then add in the ground beef, cooked onion and garlic, and breadcrumbs and mix it all. I like to use my hands to get it all well combined.
Divide the meat mix into four equal parts and then shape them into patties with your hands.
Add the rest of the olive oil to the pan and then brown the patties for 3 minutes on each side over high heat. Once they are browned carefully take them out of the pan and set them aside.
To make the gravy start by adding the butter to the pan over medium heat then add in the onions, garlic, and mushrooms and saute for 5 minutes.
Pour in the Italian herbs, Worcestershire sauce, beef stock, and cream, stir it together, and then let it simmer, stirring for 8-10 minutes until it starts to thicken. Remember to give the gravy a taste to see if the salt is right, it will probably not need any salt as the beef stock can be quite salty.
Gently place the steaks into the mushroom gravy, cover with a lid, and let them cook for 10 minutes. Remove the lid and serve.