# Swallowing Events

User callbacks must always return 0 unless they intend to swallow the event to which they are responding. To swallow the event, the callback should return 1.

Only user input (mouse click and keypress events) and commit events can be swallowed. If swallowed, no more callbacks are called for that event. If a user input event is swallowed, the user’s mouse click or keypress is ignored. If a commit event is swallowed, it is not placed into the GetUserEvent queue.

| Note The following events can be swallowed: EVENT_COMMIT EVENT_KEYPRESS EVENT_LEFT_CLICK EVENT_LEFT_DOUBLE_CLICK EVENT_RIGHT_CLICK EVENT_RIGHT_DOUBLE_CLICK EVENT_END_TASK EVENT_MARK_STATE_CHANGE EVENT_COLLAPSE EVENT_DRAG EVENT_DROP EVENT_EXPAND EVENT_SELECTION_CHANGE EVENT_SORT