Peel the onions. Quarter one and a half onions. Halve each of the quarters then peel the layers apart giving you triangular pieces of onion. This is the onion you will add later, after browning them. Finely chop the remaining one and a half onions. Set both of these aside separately.
Heat the gingelly oil over medium-low heat in a kadai or wok. When hot add the triangular pieces of onion. Stirring frequently, cook the onions until the edges start to turn brown which should take around ten minutes. You want the onions to be cooked but not softened.
Remove the onions with a slotted spoon, place on kitchen paper to drain and set aside.
to cook
Heat a small pan over medium heat and add the coriander and cumin seeds. Toast for two minutes, or until spices darken and become aromatic. Remove from heat and allow to cool a little. Transfer to a grinder and grind to a smooth powder. Set aside.
Make a paste from the garlic and ginger, adding as little water as possible. Set aside.
Using the same pan, add the bay leaf, finely chopped onions and sprinkle with salt. Stirring frequently, cook the onions until they become translucent and are starting to brown – this will take around 10 minutes.
Add the ginger-garlic paste, mix well and fry until the raw aroma of ginger-garlic goes away, which should take two minutes.
Add the chopped tomatoes, mix well and fry for one minute.
Add the turmeric and Kashmiri chilli powders, ground coriander and cumin seeds. Mix well.
Fry this mix until the tomatoes soften and the oil starts to separate, which will take around five minutes. Gently mash the mixture with the back of a spoon.
Add the mushrooms and mix well. Fry, stirring continuously. The mushrooms may release moisture and you need to continue to fry until this moisture dries. You want the mushrooms just cooked, in a dry masala. This should take around 10 minutes. The mushrooms should not become soft.
to serve
When the mushrooms are cooked, add the reserved onion triangles, garam masala, green chilli and coriander leaves. Mix well and once hot, serve.