Custom View Pager2
A custom ViewPager2 class that can scroll without triggering ViewPager2.OnPageChangeCallBack with the method scrollByCode(). This is to distinguish between when the user changes page a page change happens programmatically. Does not extend ViewPager2 because it's final. Thanks, Google :(