context menu label now can be string or function