Most of them seem to be caused by using :hi statements, although the
highlighting group to be created is exactly the same. Therefore, get the
info from actual definition and only execute :hi when the new group is
actually different.
Also try to avoid to generate :hi statements when the popupmen is
visible. This causes flickers.