Poor child, and poor gran. There is no doubt in my mind that the parents are the one to blame. We all know what children are like, they are the best they can be, and they follow their impulses. I don't understand how the parents can just throw all their responsibility into the arms of the gran, and go to sleep.
Of course you were annoyed, who wouldn't be? If someone kept kicking my seat, I wouldn't be so patient, but instead of doing the right thing, which is waking up the parents, and asking them to take responsibility for their offspring, we just sit by, and get even more annoyed, because we don't want to create a conflict, in case the parents got mad.
I think the grandmother should have woken the parents, and told them that she couldn't control the child, then hopefully the parents would step up their game, although I doubt it.
I have travelled by plane, alone with my three children, then 3, 5, and 8 years old. During the 3 hour flight, there was NO problem what so ever. Why? Because we came prepared. First of all, I had taken time, to explain to the kids how to behave around other people, hard to understand for the 3 year old I know, but that combined with a small reward when we landed, AND some things to keep them activated, did the trick. The oldest one was reading most of the flight, Lucky Luke and Asterix saw to that. The other two passed time with paper and crayons, and a nice stewardess came by with some stickers that they have for children on board. No problems at all. What most children want, is attention from grown ups, especially their parents.
Be prepared!