what's the reason for moving this into eventFilter instead of just ifdeffing?