added scroll event detection and bail out when unsupported

Work in progress refactoring for #146