Clean and wash your fish steaks/fillets. Then drain all the water, and season with turmeric, red chili, and salt. Gently massage onto the fish, making sure to cover all sides/pieces.
Heat your oil on high on a nonstick pan, then gently slide in the fish and fry for just a minute, flipping midway through until both sides are nice and golden.
Make sure to be gentle when flipping so you don't break the fish, and fry in two batches if needed to make it easier and not overcrowd the pan so they get a nice fry.
Take the fish out of the pan once golden. Turn your heat down to medium, and add in your onions.
Stir occassionally and fry until they start to change color, then add in your bay leaves. Frying for bit.
Add in the ginger garlic paste. Stir and fry for a few minutes until the raw smells are gone, adding a splash of water to keep it from burning if needed.
Then add in your tomato and ground spices. Mix.
Add in a 1/4 cup of water, stir and reduce until the oils come out, fry for a minute then add more water and repeat this process 3-4 times.
The longer you do this the better your curry will taste.
Once done, mash your tomatoes and onions in the pan with your spatula to make it into a nice paste like consistency.
Then, throw in your cauliflower and half of the salt, stir and fry in the gravy for a few minutes.
Add in 2 cups of water (or as much as you need to cover the cauliflower), bring up to a simmer, and turn the heat down to medium low.
Carefully slide in your fried fish, and swirl your pan a little to cover all the pieces. You don't want to stir with utensils as it will break the fish.
Let it simmer for about 10-15 minutes until the cauliflower is tender, adding in the split green chilis a few minutes before it's done.
Then taste and adjust salt if needed. Swirling the pan around carefully to mix it in without breaking the fish.
Garnish with chopped cilantro and take it off the heat after a minute. Serve hot.