added getScrollState and scrollBy