Wash and drain the chicken properly. Mix with ginger garlic paste, pinch of salt and lemon juice. Cover and keep aside.
Slice the 2 onions very finely.
Heat a heavy bottom pan and add 1 tbsp oil in it. Saute half of the onion on medium flame till it turns translucent (6-8 minutes). Add the coconut and poppy seeds.
Fry till the coconut takes on a light golden colour and gives out a nutty aroma. Add the cumin, coriander, red chillies, cinnamon, cloves, kokum and peppercorns.
Fry till the cumin and coriander start to pop. Do not burn them or your dish will be ruined with a bitter burnt taste.
Cool this and grind to a fine paste with little water.
Heat the rest of the oil and temper with curry leaves. Add the onion and fry till they turn golden. Add the chicken with all the marinade, salt and turmeric. Cook on low till you see the oil starts to separate at the sides.
Mine takes at least 15 minutes as I use fresh chicken and that leaves a lot of juice. This part is known as Kashano in Bengali and we consider it the most important part of cooking chicken curry.
We cover and let the juice come out on low flame then we brown the chicken by gently stirring it from time to time.
Once this is done, add the prepared paste. Mix and let the flavours mingle. Do a taste test and adjust seasoning if needed. After a couple of minutes add 1/2 cup of warm water and cover it.
Let it cook on slow flame for the water to absorb and the chicken to get all the flavours from the spices. The dish should be dry with oil oozing out from the sides.
Serve hot with steamed white rice or roti.