@Override
 public void onViewCreated(View view, Bundle savedInstanceState) {
   super.onViewCreated(view, savedInstanceState);
   setupRvMovies();
   presenter = new TrendingShowsPresenterImpl(this);
   refreshLayout.setOnRefreshListener(
       () -> {
         refreshLayout.setRefreshing(true);
         presenter.downloadTrendingShows(FIRST_PAGE, MOVIE_LIMIT);
       });
   progressBar.setVisibility(View.VISIBLE);
   presenter.downloadTrendingShows(FIRST_PAGE, MOVIE_LIMIT);
 }
        @Override
        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
          super.onScrolled(recyclerView, dx, dy);
          int visibleItemCount = preloadLayoutManager.getChildCount();
          int totalItemCount = preloadLayoutManager.getItemCount();
          int firstVisibleItemPosition = preloadLayoutManager.findFirstVisibleItemPosition();

          if (!loading) {
            if ((visibleItemCount + firstVisibleItemPosition) >= totalItemCount
                && firstVisibleItemPosition >= 0
                && totalItemCount >= MOVIE_LIMIT) {
              loading = true;
              currentPageNumber = currentPageNumber + 1;
              presenter.downloadTrendingShows(currentPageNumber, MOVIE_LIMIT);
            }
          }
        }