The following change is needed to make this work better in devices with keypad grip and when the keys are locked automatically when the grip is closed.
void CKeyPadLockStatusNotifier::ConstructL()
... iWindowGroup.EnableGroupListChangeEvents(); -- request to follow new events
void CKeyPadLockStatusNotifier::RunL()
... case EEventWindowGroupListChanged: -- handle also these events
also the wgId check should be completely removed.