import com.stoutner.privacybrowser.R;
import com.stoutner.privacybrowser.adapters.WebViewPagerAdapter;
-import com.stoutner.privacybrowser.asynctasks.SaveUrl;
-import com.stoutner.privacybrowser.asynctasks.SaveWebpageImage;
import com.stoutner.privacybrowser.coroutines.GetHostIpAddressesCoroutine;
import com.stoutner.privacybrowser.coroutines.PopulateBlocklistsCoroutine;
import com.stoutner.privacybrowser.coroutines.PrepareSaveDialogCoroutine;
+import com.stoutner.privacybrowser.coroutines.SaveUrlCoroutine;
+import com.stoutner.privacybrowser.coroutines.SaveWebpageImageCoroutine;
import com.stoutner.privacybrowser.dataclasses.PendingDialogDataClass;
import com.stoutner.privacybrowser.dialogs.CreateBookmarkDialog;
import com.stoutner.privacybrowser.dialogs.CreateBookmarkFolderDialog;
public void onActivityResult(Uri fileUri) {
// Only save the URL if the file URI is not null, which happens if the user exited the file picker by pressing back.
if (fileUri != null) {
- new SaveUrl(getApplicationContext(), resultLauncherActivityHandle, fileUri, currentWebView.getSettings().getUserAgentString(), currentWebView.getAcceptCookies()).execute(saveUrlString);
+ // Instantiate the save URL coroutine.
+ SaveUrlCoroutine saveUrlCoroutine = new SaveUrlCoroutine();
+
+ // Save the URL.
+ saveUrlCoroutine.save(getApplicationContext(), resultLauncherActivityHandle, saveUrlString, fileUri, currentWebView.getSettings().getUserAgentString(),
+ currentWebView.getAcceptCookies());
}
// Reset the save URL string.
public void onActivityResult(Uri fileUri) {
// Only save the webpage image if the file URI is not null, which happens if the user exited the file picker by pressing back.
if (fileUri != null) {
+ // Instantiate the save webpage image coroutine.
+ SaveWebpageImageCoroutine saveWebpageImageCoroutine = new SaveWebpageImageCoroutine();
+
// Save the webpage image.
- new SaveWebpageImage(resultLauncherActivityHandle, fileUri, currentWebView).execute();
+ saveWebpageImageCoroutine.save(resultLauncherActivityHandle, fileUri, currentWebView);
}
}
});
}
}
} else { // The app has been restarted.
- // Set the saved tab position to be the size of the saved state array list. The tab position is 0 based, meaning the at the new tab will be the tab position that is restored.
- savedTabPosition = savedStateArrayList.size();
+ // Get the information from the intent.
+ String intentAction = intent.getAction();
+ Uri intentUriData = intent.getData();
+ String intentStringExtra = intent.getStringExtra(Intent.EXTRA_TEXT);
+
+ // Determine if this is a web search.
+ boolean isWebSearch = ((intentAction != null) && intentAction.equals(Intent.ACTION_WEB_SEARCH));
+
+ // If the new intent will open a new tab, set the saved tab position to be the size of the saved state array list.
+ // The tab position is 0 based, meaning the at the new tab will be the tab position that is restored.
+ if (intentUriData != null || intentStringExtra != null || isWebSearch)
+ savedTabPosition = savedStateArrayList.size();
// Replace the intent that started the app with this one. This will load the tab after the others have been restored.
setIntent(intent);