Load new intents in a new tab.
[PrivacyBrowser.git] / app / src / main / java / com / stoutner / privacybrowser / adapters / WebViewPagerAdapter.java
index 3bec00521955b29d8e5ea315d00eb0b6242d7239..7c6aaf351cbac051bb3a36bc9c4883a8dd41a113 100644 (file)
 
 package com.stoutner.privacybrowser.adapters;
 
-import com.stoutner.privacybrowser.fragments.WebViewTabFragment;
-
-import java.util.LinkedList;
-
 import androidx.annotation.NonNull;
 import androidx.fragment.app.Fragment;
 import androidx.fragment.app.FragmentManager;
 import androidx.fragment.app.FragmentPagerAdapter;
+import androidx.viewpager.widget.ViewPager;
+
+import com.stoutner.privacybrowser.fragments.WebViewTabFragment;
+
+import java.util.LinkedList;
 
 public class WebViewPagerAdapter extends FragmentPagerAdapter {
     // The WebView fragments list contains all the WebViews.
@@ -66,10 +67,10 @@ public class WebViewPagerAdapter extends FragmentPagerAdapter {
     @Override
     public long getItemId(int position) {
         // Return the unique ID for this page.
-        return webViewFragmentsList.get(position).tabId;
+        return webViewFragmentsList.get(position).fragmentId;
     }
 
-    public int getPositionForId(long pageId) {
+    public int getPositionForId(long fragmentId) {
         // Initialize the position variable.
         int position = -1;
 
@@ -79,7 +80,7 @@ public class WebViewPagerAdapter extends FragmentPagerAdapter {
         // Find the current position of the WebView fragment with the given ID.
         while (position < 0 && i < webViewFragmentsList.size()) {
             // Check to see if the tab ID of this WebView matches the page ID.
-            if (webViewFragmentsList.get(i).tabId == pageId) {
+            if (webViewFragmentsList.get(i).fragmentId == fragmentId) {
                 // Store the position if they are a match.
                 position = i;
             }
@@ -92,12 +93,17 @@ public class WebViewPagerAdapter extends FragmentPagerAdapter {
         return position;
     }
 
-    public void addPage(int pageNumber) {
+    public void addPage(int pageNumber, ViewPager webViewPager) {
         // Add a new page.
         webViewFragmentsList.add(WebViewTabFragment.createPage(pageNumber));
 
         // Update the view pager.
         notifyDataSetChanged();
+
+        // Move to the new page if it isn't the first one.
+        if (pageNumber > 0) {
+            webViewPager.setCurrentItem(pageNumber);
+        }
     }
 
     public void deletePage(int pageNumber) {