private void notifySectionItemRangeInserted(int sectionIndex, int fromPosition, int number, boolean updateSelectionState) {
        if (sections == null) {
            buildSectionIndex();
            notifyAllSectionsDataSetChanged();
        } else {
            buildSectionIndex();
            Section section = this.sections.get(sectionIndex);

            // 0 is a valid position to insert from
            if (fromPosition > section.numberOfItems) {
                throw new IndexOutOfBoundsException("itemIndex adapterPosition: " + fromPosition + " exceeds sectionIndex numberOfItems: " + section.numberOfItems);
            }

            int offset = fromPosition;
            if (section.hasHeader) {
                offset += 2;
            }

            notifyItemRangeInserted(section.adapterPosition + offset, number);
        }

        if (updateSelectionState) {
            // update selection state by inserting unselected spaces
            updateSectionItemRangeSelectionState(sectionIndex, fromPosition, +number);
        }
    }
Notify that a range of items in a section has been inserted

@param sectionIndex index of the section
@param fromPosition index to start adding
@param number       amount of items inserted
android/modules/module_common/src/main/java/github/tornaco/android/thanos/widget/section/SectioningAdapter.java