It seems like places started doing this when schools were giving out the food vouchers etc as a way to look like they were trying to help kids have adequate food in school holidays.
it only really benefits those who can afford to eat out in the first place.
its just a bunch of restaurants trying to give across the image that they care whilst not actually helping anyone that needs help.
(with the exception of Asda who are doing kids meals for £1 without requiring any other purchases)