Grind the onion, chilli, ginger and garlic into a coarse paste (using a small food processor or pestle & mortar).
Cut the chicken into bite-sized pieces.
Heat the oil in a large, heavy-based dish, then cook the chicken pieces until lightly browned, then drain them on kitchen paper towels.
Add the paste to the pan and stir-fry for 5 minutes over low heat. Add the spices and continue stirring for a minute.
Add the sugar, tomato purée, tinned tomatoes and vegetable stock. Season with salt and pepper. Bring to the boil then add the chicken bites and the curry leaves. Simmer, under cover, for 20-25 minutes.
When the chicken is cooked through and the sauce has thickened, turn off the heat, mix in the yogurt and chopped coriander.
Serve warm.