requireContext provides helpful error messages when it's null as opposed to getContext
which simply throws a NullPointerException.
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
It's only used from the ManageDialog in VpnDialogs, which in turn is
only instantiated in the legacy VPN path.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This is horible! But ToolsInstaller uses lots of other error strings
nakedly, as does ModuleLoader. These both need to be fixed up the proper
way (like the last two commits). This commit here is just to make the
initial porting a bit easier.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This is likely broken but should make for a good starting point.
It also should hopefully handle stopping tunnels before starting new
ones, in the case of the GoBackend. Again, untested.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
We've been relying on implicit backstack changes to handle removing the detail fragment for a while which is now gone so let's do this properly like we should
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
If anybody has a problem with missing or mismatched NDK, run this command to install the right version
$ANDROID_SDK_ROOT/tools/bin/sdkmanager 'ndk;20.0.5594570'
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Rather than always toggle all elements, elect to unselect all if any are selected. This allows
returning to a clean state in at most two clicks.
Suggested-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
- Using the require_() methods provides helpful error messages when things are null
compared to the get_() methods which throw NPEs.
- Ensure currentlyExcludedApps is empty but never null
- Rename inner variable to silence name shadowing lint
- Make setExclusionsAndDismiss private
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Change functionality in excluded apps dialog for better user experience
when user wants only one or few apps to use WireGuard.
Signed-off-by: Sébastien LEBEAU <sebcbi1@gmail.com>
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
If this is to be JRE-only, then it doesn't make sense to rely on the
android class, especially since this is so trivial to inline.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>