import androidx.viewpager2.adapter.FragmentStateAdapter
import androidx.viewpager2.widget.ViewPager2
-import com.google.android.material.tabs.TabLayout
-
import com.stoutner.privacybrowser.R
import com.stoutner.privacybrowser.fragments.WebViewTabFragment
import com.stoutner.privacybrowser.views.NestedScrollWebView
import java.util.LinkedList
-class WebViewStateAdapter(fragmentActivity: FragmentActivity) : FragmentStateAdapter(fragmentActivity) {
+class WebViewStateAdapter(fragmentActivity: FragmentActivity, private val bottomAppBar: Boolean) : FragmentStateAdapter(fragmentActivity) {
// Define the class variables.
private val webViewFragmentsList = LinkedList<WebViewTabFragment>()
NO_ID
}
- fun addPage(pageNumber: Int, newTab: TabLayout.Tab, url: String, moveToNewPage: Boolean) {
+ fun addPage(pagePosition: Int, url: String) {
// Add a new page.
- webViewFragmentsList.add(WebViewTabFragment.createPage(pageNumber, url))
+ webViewFragmentsList.add(pagePosition, WebViewTabFragment.createPage(pagePosition, url, bottomAppBar))
// Update the view pager.
- notifyItemInserted(pageNumber)
-
- // Move to the new page if indicated.
- if (moveToNewPage) {
- // Select the newTab.
- newTab.select()
- }
+ notifyItemInserted(pagePosition)
}
fun deletePage(pageNumber: Int, webViewPager2: ViewPager2): Boolean {
fun restorePage(savedState: Bundle, savedNestedScrollWebViewState: Bundle) {
// Restore the page.
- webViewFragmentsList.add(WebViewTabFragment.restorePage(savedState, savedNestedScrollWebViewState))
+ webViewFragmentsList.add(WebViewTabFragment.restorePage(savedState, savedNestedScrollWebViewState, bottomAppBar))
// Update the view pager. The position is zero indexed.
notifyItemInserted(webViewFragmentsList.size - 1)