added signals to allow custom actions on user events