1Rinse the basmati rice thoroughly under cold water until the water runs clear. Soak the rice in water for 20 minutes, then drain.
In a saucepan, add the soaked rice, 1 cup coconut milk, 1 cup water, and 1/2 teaspoon salt. Bring to a boil, then reduce heat to low, cover, and simmer for 15-18 minutes until the rice is cooked and the liquid is absorbed. Fluff with a fork and set aside.
While the rice is cooking, heat 2 tablespoons vegetable oil in a large pan over medium heat. Add 1 teaspoon cumin seeds and let them sizzle for a few seconds.
Add the sliced onions and sauté until golden brown, about 6-8 minutes.
Stir in 2 tablespoons ginger garlic paste and cook for 1 minute until fragrant.
Add the chopped tomatoes and cook for 4-5 minutes until they soften and the oil begins to separate.
Add 1 teaspoon turmeric powder, 2 teaspoons coriander powder, and 1/2 teaspoon salt. Mix well and cook for another 2 minutes.
Add the fish fillets to the pan and gently coat them with the masala. Cover and cook for 8-10 minutes, turning the fish halfway through, until the fish is cooked through and flakes easily.
Taste and adjust salt if needed. Serve the fish salan hot with the coconut rice.