global: optimize imports

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
Jason A. Donenfeld 2020-03-09 12:21:35 -06:00
parent 8e8643122e
commit 40ebf8006e
65 changed files with 223 additions and 281 deletions

View File

@ -5,11 +5,9 @@
package com.wireguard.android.backend;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import com.wireguard.config.Config;
import java.util.Collection;
import java.util.Set;
import androidx.annotation.Nullable;

View File

@ -5,14 +5,10 @@
package com.wireguard.android.backend;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.ParcelFileDescriptor;
import androidx.annotation.Nullable;
import androidx.collection.ArraySet;
import android.util.Log;
import com.wireguard.android.backend.BackendException.Reason;
@ -23,6 +19,7 @@ import com.wireguard.config.InetNetwork;
import com.wireguard.config.Peer;
import com.wireguard.crypto.Key;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.util.NonNullForAll;
import java.net.InetAddress;
import java.util.Collections;
@ -30,6 +27,8 @@ import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import androidx.annotation.Nullable;
import androidx.collection.ArraySet;
import java9.util.concurrent.CompletableFuture;
@NonNullForAll

View File

@ -5,12 +5,11 @@
package com.wireguard.android.backend;
import com.wireguard.util.NonNullForAll;
import android.os.SystemClock;
import android.util.Pair;
import com.wireguard.crypto.Key;
import com.wireguard.util.NonNullForAll;
import java.util.HashMap;
import java.util.Map;

View File

@ -5,10 +5,6 @@
package com.wireguard.android.backend;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import android.content.Context;
import android.util.Log;
import android.util.Pair;
@ -19,6 +15,7 @@ import com.wireguard.android.util.RootShell;
import com.wireguard.android.util.ToolsInstaller;
import com.wireguard.config.Config;
import com.wireguard.crypto.Key;
import com.wireguard.util.NonNullForAll;
import java.io.File;
import java.io.FileOutputStream;
@ -26,14 +23,15 @@ import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.HashMap;
import androidx.annotation.Nullable;
import java9.util.stream.Collectors;
import java9.util.stream.Stream;

View File

@ -5,13 +5,12 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.system.OsConstants;
import android.util.Base64;
import com.wireguard.android.util.RootShell.RootShellException;
import com.wireguard.util.NonNullForAll;
import net.i2p.crypto.eddsa.EdDSAEngine;
import net.i2p.crypto.eddsa.EdDSAPublicKey;

View File

@ -5,13 +5,11 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import androidx.annotation.Nullable;
import android.util.Log;
import com.wireguard.android.util.RootShell.RootShellException.Reason;
import com.wireguard.util.NonNullForAll;
import java.io.BufferedReader;
import java.io.File;
@ -22,6 +20,8 @@ import java.nio.charset.StandardCharsets;
import java.util.Collection;
import java.util.UUID;
import androidx.annotation.Nullable;
/**
* Helper class for running commands as root.
*/

View File

@ -5,12 +5,12 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.os.Build;
import android.util.Log;
import com.wireguard.util.NonNullForAll;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

View File

@ -5,14 +5,12 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import androidx.annotation.Nullable;
import android.system.OsConstants;
import android.util.Log;
import com.wireguard.android.util.RootShell.RootShellException;
import com.wireguard.util.NonNullForAll;
import java.io.File;
import java.io.FileNotFoundException;
@ -20,6 +18,8 @@ import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import androidx.annotation.Nullable;
/**
* Helper to install WireGuard tools to the system partition.
*/

View File

@ -5,12 +5,11 @@
package com.wireguard.config;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import com.wireguard.crypto.KeyFormatException;
@NonNullForAll
public class BadConfigException extends Exception {
private final Location location;

View File

@ -5,13 +5,10 @@
package com.wireguard.config;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import com.wireguard.config.BadConfigException.Location;
import com.wireguard.config.BadConfigException.Reason;
import com.wireguard.config.BadConfigException.Section;
import com.wireguard.util.NonNullForAll;
import java.io.BufferedReader;
import java.io.IOException;
@ -25,6 +22,8 @@ import java.util.List;
import java.util.Objects;
import java.util.Set;
import androidx.annotation.Nullable;
/**
* Represents the contents of a wg-quick configuration file, made up of one or more "Interface"
* sections (combined together), and zero or more "Peer" sections (treated individually).

View File

@ -7,8 +7,6 @@ package com.wireguard.config;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import org.threeten.bp.Duration;
import org.threeten.bp.Instant;
@ -19,6 +17,7 @@ import java.net.URISyntaxException;
import java.net.UnknownHostException;
import java.util.regex.Pattern;
import androidx.annotation.Nullable;
import java9.util.Optional;

View File

@ -5,16 +5,13 @@
package com.wireguard.config;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import com.wireguard.config.BadConfigException.Location;
import com.wireguard.config.BadConfigException.Reason;
import com.wireguard.config.BadConfigException.Section;
import com.wireguard.crypto.Key;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.crypto.KeyPair;
import com.wireguard.util.NonNullForAll;
import java.net.InetAddress;
import java.util.Collection;
@ -25,6 +22,7 @@ import java.util.Locale;
import java.util.Objects;
import java.util.Set;
import androidx.annotation.Nullable;
import java9.util.Lists;
import java9.util.Optional;
import java9.util.stream.Collectors;

View File

@ -5,15 +5,12 @@
package com.wireguard.config;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import com.wireguard.config.BadConfigException.Location;
import com.wireguard.config.BadConfigException.Reason;
import com.wireguard.config.BadConfigException.Section;
import com.wireguard.crypto.Key;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.util.NonNullForAll;
import java.util.Collection;
import java.util.Collections;
@ -22,6 +19,7 @@ import java.util.Locale;
import java.util.Objects;
import java.util.Set;
import androidx.annotation.Nullable;
import java9.util.Optional;
/**

View File

@ -8,10 +8,10 @@ package com.wireguard.crypto;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import java.util.Arrays;
import androidx.annotation.Nullable;
/**
* Implementation of the Curve25519 elliptic curve algorithm.
* <p>

View File

@ -5,9 +5,8 @@
package com.wireguard.crypto;
import com.wireguard.util.NonNullForAll;
import com.wireguard.crypto.KeyFormatException.Type;
import com.wireguard.util.NonNullForAll;
import java.security.MessageDigest;
import java.security.SecureRandom;

View File

@ -5,8 +5,6 @@
package com.wireguard.android;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
@ -17,10 +15,6 @@ import android.os.Looper;
import android.os.StrictMode;
import android.util.Log;
import androidx.preference.PreferenceManager;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatDelegate;
import com.wireguard.android.backend.Backend;
import com.wireguard.android.backend.GoBackend;
import com.wireguard.android.backend.WgQuickBackend;
@ -31,10 +25,14 @@ import com.wireguard.android.util.ExceptionLoggers;
import com.wireguard.android.util.ModuleLoader;
import com.wireguard.android.util.RootShell;
import com.wireguard.android.util.ToolsInstaller;
import com.wireguard.util.NonNullForAll;
import java.lang.ref.WeakReference;
import java.util.Locale;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.preference.PreferenceManager;
import java9.util.concurrent.CompletableFuture;
@NonNullForAll

View File

@ -5,8 +5,6 @@
package com.wireguard.android;
import com.wireguard.util.NonNullForAll;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@ -15,6 +13,7 @@ import android.util.Log;
import com.wireguard.android.backend.WgQuickBackend;
import com.wireguard.android.model.TunnelManager;
import com.wireguard.android.util.ExceptionLoggers;
import com.wireguard.util.NonNullForAll;
@NonNullForAll
public class BootShutdownReceiver extends BroadcastReceiver {

View File

@ -5,11 +5,7 @@
package com.wireguard.android;
import com.wireguard.util.NonNullForAll;
import android.content.Intent;
import androidx.databinding.Observable;
import androidx.databinding.Observable.OnPropertyChangedCallback;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.Icon;
@ -17,8 +13,6 @@ import android.os.Build;
import android.os.IBinder;
import android.service.quicksettings.Tile;
import android.service.quicksettings.TileService;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import android.util.Log;
import com.wireguard.android.activity.MainActivity;
@ -26,9 +20,15 @@ import com.wireguard.android.activity.TunnelToggleActivity;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.android.widget.SlashDrawable;
import com.wireguard.util.NonNullForAll;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.databinding.Observable;
import androidx.databinding.Observable.OnPropertyChangedCallback;
/**
* Service that maintains the application's custom Quick Settings tile. This service is bound by the
* system framework as necessary to update the appearance of the tile in the system UI, and to

View File

@ -5,18 +5,18 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.CallbackRegistry;
import androidx.databinding.CallbackRegistry.NotifierCallback;
import android.os.Bundle;
import androidx.annotation.Nullable;
import com.wireguard.android.Application;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.util.NonNullForAll;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.databinding.CallbackRegistry;
import androidx.databinding.CallbackRegistry.NotifierCallback;
/**
* Base class for activities that need to remember the currently-selected tunnel.
*/

View File

@ -5,16 +5,9 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.appcompat.app.ActionBar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View.OnApplyWindowInsetsListener;
@ -24,9 +17,16 @@ import com.wireguard.android.R;
import com.wireguard.android.fragment.TunnelDetailFragment;
import com.wireguard.android.fragment.TunnelEditorFragment;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.util.NonNullForAll;
import java.util.List;
import androidx.annotation.Nullable;
import androidx.appcompat.app.ActionBar;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
/**
* CRUD interface for WireGuard tunnels. This activity serves as the main entry point to the
* WireGuard application, and contains several fragments for listing, viewing details of, and

View File

@ -5,17 +5,9 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
import android.util.SparseArray;
import android.view.MenuItem;
@ -23,11 +15,19 @@ import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.backend.WgQuickBackend;
import com.wireguard.android.util.ModuleLoader;
import com.wireguard.util.NonNullForAll;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import androidx.annotation.Nullable;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import androidx.preference.PreferenceScreen;
/**
* Interface for changing application-global persistent settings.
*/

View File

@ -5,20 +5,16 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import android.content.SharedPreferences;
import android.content.res.Resources;
import android.os.Build;
import android.os.Bundle;
import com.wireguard.android.Application;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;
import android.util.Log;
import com.wireguard.android.Application;
import java.lang.reflect.Field;
@NonNullForAll
public abstract class ThemeChangeAwareActivity extends AppCompatActivity implements SharedPreferences.OnSharedPreferenceChangeListener {

View File

@ -5,13 +5,13 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import android.os.Bundle;
import androidx.annotation.Nullable;
import com.wireguard.android.fragment.TunnelEditorFragment;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
/**
* Standalone activity for creating tunnels.

View File

@ -5,15 +5,9 @@
package com.wireguard.android.activity;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
import android.content.ComponentName;
import android.os.Bundle;
import android.os.Build;
import android.os.Bundle;
import android.service.quicksettings.TileService;
import android.util.Log;
import android.widget.Toast;
@ -21,9 +15,14 @@ import android.widget.Toast;
import com.wireguard.android.Application;
import com.wireguard.android.QuickTileService;
import com.wireguard.android.R;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;
@RequiresApi(Build.VERSION_CODES.N)
@NonNullForAll

View File

@ -5,9 +5,8 @@
package com.wireguard.android.configStore;
import com.wireguard.util.NonNullForAll;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.util.Set;

View File

@ -5,14 +5,13 @@
package com.wireguard.android.configStore;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.util.Log;
import com.wireguard.android.R;
import com.wireguard.config.BadConfigException;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.io.File;
import java.io.FileInputStream;

View File

@ -5,16 +5,6 @@
package com.wireguard.android.databinding;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BindingAdapter;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
import androidx.databinding.adapters.ListenerUtil;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.text.InputFilter;
import android.view.LayoutInflater;
import android.widget.LinearLayout;
@ -29,7 +19,16 @@ import com.wireguard.android.widget.ToggleSwitch.OnBeforeCheckedChangeListener;
import com.wireguard.config.Attribute;
import com.wireguard.config.InetNetwork;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.databinding.BindingAdapter;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
import androidx.databinding.adapters.ListenerUtil;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import java9.util.Optional;
/**

View File

@ -5,21 +5,21 @@
package com.wireguard.android.databinding;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
import androidx.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.wireguard.android.BR;
import com.wireguard.util.NonNullForAll;
import java.lang.ref.WeakReference;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
/**
* Helper class for binding an ObservableList to the children of a ViewGroup.
*/

View File

@ -5,24 +5,24 @@
package com.wireguard.android.databinding;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.RecyclerView.Adapter;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import com.wireguard.android.BR;
import com.wireguard.android.util.ObservableKeyedList;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import java.lang.ref.WeakReference;
import androidx.annotation.Nullable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ObservableList;
import androidx.databinding.ViewDataBinding;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.RecyclerView.Adapter;
/**
* A generic {@code RecyclerView.Adapter} backed by a {@code ObservableKeyedList}.
*/

View File

@ -5,8 +5,6 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.app.Activity;
import android.app.Dialog;
import android.content.DialogInterface;
@ -14,10 +12,6 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
import androidx.appcompat.app.AlertDialog;
import android.widget.Toast;
import com.wireguard.android.Application;
@ -27,11 +21,16 @@ import com.wireguard.android.model.ApplicationData;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.android.util.ObservableKeyedArrayList;
import com.wireguard.android.util.ObservableKeyedList;
import com.wireguard.util.NonNullForAll;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
import java9.util.Comparators;
import java9.util.stream.Collectors;
import java9.util.stream.StreamSupport;

View File

@ -5,29 +5,29 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.content.Intent;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import androidx.fragment.app.Fragment;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
import com.google.android.material.snackbar.Snackbar;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.activity.BaseActivity;
import com.wireguard.android.activity.BaseActivity.OnSelectedTunnelChangedListener;
import com.wireguard.android.backend.GoBackend;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.databinding.TunnelDetailFragmentBinding;
import com.wireguard.android.databinding.TunnelListItemBinding;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import androidx.fragment.app.Fragment;
/**
* Base class for fragments that need to know the currently-selected tunnel. Only does anything when

View File

@ -5,16 +5,11 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.fragment.app.DialogFragment;
import androidx.appcompat.app.AlertDialog;
import android.view.inputmethod.InputMethodManager;
import com.wireguard.android.Application;
@ -22,12 +17,17 @@ import com.wireguard.android.R;
import com.wireguard.android.databinding.ConfigNamingDialogFragmentBinding;
import com.wireguard.config.BadConfigException;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.DialogFragment;
@NonNullForAll
public class ConfigNamingDialogFragment extends DialogFragment {
private static final String KEY_CONFIG_TEXT = "config_text";

View File

@ -5,12 +5,7 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.databinding.DataBindingUtil;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@ -18,16 +13,20 @@ import android.view.View;
import android.view.ViewGroup;
import com.wireguard.android.R;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.databinding.TunnelDetailFragmentBinding;
import com.wireguard.android.databinding.TunnelDetailPeerBinding;
import com.wireguard.android.model.ObservableTunnel;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.ui.EdgeToEdge;
import com.wireguard.crypto.Key;
import com.wireguard.util.NonNullForAll;
import java.util.Timer;
import java.util.TimerTask;
import androidx.annotation.Nullable;
import androidx.databinding.DataBindingUtil;
/**
* Fragment that shows details about a specific tunnel.
*/

View File

@ -5,15 +5,9 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.app.Activity;
import android.content.Context;
import androidx.databinding.ObservableList;
import android.os.Bundle;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@ -24,6 +18,7 @@ import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.Toast;
import com.google.android.material.snackbar.Snackbar;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.databinding.TunnelEditorFragmentBinding;
@ -34,11 +29,15 @@ import com.wireguard.android.ui.EdgeToEdge;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.android.viewmodel.ConfigProxy;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.databinding.ObservableList;
/**
* Fragment for editing a WireGuard configuration.
*/

View File

@ -5,8 +5,6 @@
package com.wireguard.android.fragment;
import com.wireguard.util.NonNullForAll;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.ContentResolver;
@ -16,13 +14,6 @@ import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.OpenableColumns;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.view.ActionMode;
import androidx.recyclerview.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@ -30,6 +21,7 @@ import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import com.google.android.material.snackbar.Snackbar;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import com.wireguard.android.Application;
@ -44,6 +36,7 @@ import com.wireguard.android.util.ErrorMessages;
import com.wireguard.android.widget.MultiselectableRelativeLayout;
import com.wireguard.config.BadConfigException;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
@ -59,6 +52,11 @@ import java.util.Locale;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.view.ActionMode;
import androidx.recyclerview.widget.RecyclerView;
import java9.util.concurrent.CompletableFuture;
import java9.util.stream.StreamSupport;

View File

@ -5,14 +5,14 @@
package com.wireguard.android.model;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import android.graphics.drawable.Drawable;
import com.wireguard.android.BR;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
@NonNullForAll
public class ApplicationData extends BaseObservable implements Keyed<String> {

View File

@ -5,19 +5,17 @@
package com.wireguard.android.model;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.annotation.Nullable;
import com.wireguard.android.BR;
import com.wireguard.android.backend.Statistics;
import com.wireguard.android.backend.Tunnel;
import com.wireguard.android.util.ExceptionLoggers;
import com.wireguard.config.Config;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import java9.util.concurrent.CompletableFuture;
import java9.util.concurrent.CompletionStage;

View File

@ -5,32 +5,31 @@
package com.wireguard.android.model;
import com.wireguard.util.NonNullForAll;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.annotation.Nullable;
import com.wireguard.android.Application;
import com.wireguard.android.BR;
import com.wireguard.android.R;
import com.wireguard.android.configStore.ConfigStore;
import com.wireguard.android.backend.Statistics;
import com.wireguard.android.backend.Tunnel;
import com.wireguard.android.backend.Tunnel.State;
import com.wireguard.android.backend.Statistics;
import com.wireguard.android.configStore.ConfigStore;
import com.wireguard.android.util.ExceptionLoggers;
import com.wireguard.android.util.ObservableSortedKeyedArrayList;
import com.wireguard.android.util.ObservableSortedKeyedList;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Comparator;
import java.util.Set;
import androidx.annotation.Nullable;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import java9.util.Comparators;
import java9.util.concurrent.CompletableFuture;
import java9.util.concurrent.CompletionStage;

View File

@ -5,28 +5,27 @@
package com.wireguard.android.preference;
import com.wireguard.util.NonNullForAll;
import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import androidx.preference.Preference;
import android.util.AttributeSet;
import android.util.Log;
import com.google.android.material.snackbar.Snackbar;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.util.DownloadsFileSaver;
import com.wireguard.android.util.DownloadsFileSaver.DownloadsFile;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.android.util.FragmentUtils;
import com.wireguard.util.NonNullForAll;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
/**
* Preference implementing a button that asynchronously exports logs.
*/

View File

@ -5,8 +5,6 @@
package com.wireguard.android.preference;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.content.Intent;
import android.system.OsConstants;
@ -16,6 +14,7 @@ import android.widget.Toast;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.preference.Preference;

View File

@ -5,16 +5,16 @@
package com.wireguard.android.preference;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
import android.util.AttributeSet;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.util.ToolsInstaller;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
/**
* Preference implementing a button that asynchronously runs {@code ToolsInstaller} and displays the

View File

@ -5,14 +5,10 @@
package com.wireguard.android.preference;
import com.wireguard.util.NonNullForAll;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
import android.util.AttributeSet;
import com.wireguard.android.Application;
@ -21,9 +17,13 @@ import com.wireguard.android.R;
import com.wireguard.android.backend.Backend;
import com.wireguard.android.backend.GoBackend;
import com.wireguard.android.backend.WgQuickBackend;
import com.wireguard.util.NonNullForAll;
import java.util.Locale;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
@NonNullForAll
public class VersionPreference extends Preference {
@Nullable private String versionSummary;

View File

@ -5,17 +5,13 @@
package com.wireguard.android.preference;
import com.wireguard.util.NonNullForAll;
import android.Manifest;
import android.content.Context;
import android.content.pm.PackageManager;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import androidx.preference.Preference;
import android.util.AttributeSet;
import android.util.Log;
import com.google.android.material.snackbar.Snackbar;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.model.ObservableTunnel;
@ -24,6 +20,7 @@ import com.wireguard.android.util.DownloadsFileSaver.DownloadsFile;
import com.wireguard.android.util.ErrorMessages;
import com.wireguard.android.util.FragmentUtils;
import com.wireguard.config.Config;
import com.wireguard.util.NonNullForAll;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
@ -31,6 +28,8 @@ import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import androidx.annotation.Nullable;
import androidx.preference.Preference;
import java9.util.concurrent.CompletableFuture;
/**

View File

@ -6,12 +6,7 @@ package com.wireguard.android.ui
import android.view.View
import android.view.ViewGroup
import androidx.core.view.marginBottom
import androidx.core.view.marginLeft
import androidx.core.view.marginRight
import androidx.core.view.marginTop
import androidx.core.view.updateLayoutParams
import androidx.core.view.updatePadding
import androidx.core.view.*
import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
/**

View File

@ -5,10 +5,10 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.os.Handler;
import com.wireguard.util.NonNullForAll;
import java.util.concurrent.Executor;
import java9.util.concurrent.CompletableFuture;

View File

@ -5,15 +5,15 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import com.google.android.material.snackbar.Snackbar;
import android.view.View;
import android.widget.TextView;
import com.google.android.material.snackbar.Snackbar;
import com.wireguard.util.NonNullForAll;
/**
* Standalone utilities for interacting with the system clipboard.
*/

View File

@ -5,8 +5,6 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
@ -18,6 +16,7 @@ import android.provider.MediaStore;
import android.provider.MediaStore.MediaColumns;
import com.wireguard.android.R;
import com.wireguard.util.NonNullForAll;
import java.io.File;
import java.io.FileOutputStream;

View File

@ -5,13 +5,9 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.res.Resources;
import android.os.RemoteException;
import androidx.annotation.Nullable;
import com.wireguard.android.Application;
import com.wireguard.android.R;
import com.wireguard.android.backend.BackendException;
@ -24,11 +20,13 @@ import com.wireguard.config.ParseException;
import com.wireguard.crypto.Key.Format;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.crypto.KeyFormatException.Type;
import com.wireguard.util.NonNullForAll;
import java.net.InetAddress;
import java.util.EnumMap;
import java.util.Map;
import androidx.annotation.Nullable;
import java9.util.Maps;
@NonNullForAll

View File

@ -5,11 +5,9 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import android.util.Log;
import androidx.annotation.Nullable;
import java9.util.function.BiConsumer;
/**

View File

@ -4,13 +4,13 @@
*/
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import androidx.preference.Preference;
import android.view.ContextThemeWrapper;
import com.wireguard.android.activity.SettingsActivity;
import com.wireguard.util.NonNullForAll;
import androidx.preference.Preference;
@NonNullForAll
public final class FragmentUtils {

View File

@ -5,17 +5,16 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.ObservableArrayList;
import androidx.annotation.Nullable;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import java.util.Collection;
import java.util.ListIterator;
import java.util.Objects;
import androidx.annotation.Nullable;
import androidx.databinding.ObservableArrayList;
/**
* ArrayList that allows looking up elements by some key property. As the key property must always
* be retrievable, this list cannot hold {@code null} elements. Because this class places no

View File

@ -5,13 +5,12 @@
package com.wireguard.android.util;
import com.wireguard.util.Keyed;
import com.wireguard.util.KeyedList;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.ObservableList;
import com.wireguard.util.Keyed;
import com.wireguard.util.KeyedList;
/**
* A list that is both keyed and observable.
*/

View File

@ -5,11 +5,8 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import com.wireguard.util.SortedKeyedList;
import java.util.AbstractList;
@ -21,6 +18,8 @@ import java.util.NoSuchElementException;
import java.util.Set;
import java.util.Spliterator;
import androidx.annotation.Nullable;
/**
* KeyedArrayList that enforces uniqueness and sorted order across the set of keys. This class uses
* binary search to improve lookup and replacement times to O(log(n)). However, due to the

View File

@ -5,9 +5,8 @@
package com.wireguard.android.util;
import com.wireguard.util.NonNullForAll;
import com.wireguard.util.Keyed;
import com.wireguard.util.NonNullForAll;
import com.wireguard.util.SortedKeyedList;
/**

View File

@ -5,20 +5,20 @@
package com.wireguard.android.viewmodel;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.ObservableArrayList;
import androidx.databinding.ObservableList;
import android.os.Parcel;
import android.os.Parcelable;
import com.wireguard.config.BadConfigException;
import com.wireguard.config.Config;
import com.wireguard.config.Peer;
import com.wireguard.util.NonNullForAll;
import java.util.ArrayList;
import java.util.Collection;
import androidx.databinding.ObservableArrayList;
import androidx.databinding.ObservableList;
@NonNullForAll
public class ConfigProxy implements Parcelable {
public static final Parcelable.Creator<ConfigProxy> CREATOR = new ConfigProxyCreator();

View File

@ -5,12 +5,6 @@
package com.wireguard.android.viewmodel;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.databinding.ObservableArrayList;
import androidx.databinding.ObservableList;
import android.os.Parcel;
import android.os.Parcelable;
@ -21,10 +15,15 @@ import com.wireguard.config.Interface;
import com.wireguard.crypto.Key;
import com.wireguard.crypto.KeyFormatException;
import com.wireguard.crypto.KeyPair;
import com.wireguard.util.NonNullForAll;
import java.net.InetAddress;
import java.util.List;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.databinding.ObservableArrayList;
import androidx.databinding.ObservableList;
import java9.util.stream.Collectors;
import java9.util.stream.StreamSupport;

View File

@ -5,15 +5,8 @@
package com.wireguard.android.viewmodel;
import com.wireguard.util.NonNullForAll;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.databinding.Observable;
import androidx.databinding.ObservableList;
import android.os.Parcel;
import android.os.Parcelable;
import androidx.annotation.Nullable;
import com.wireguard.android.BR;
import com.wireguard.config.Attribute;
@ -21,6 +14,7 @@ import com.wireguard.config.BadConfigException;
import com.wireguard.config.InetEndpoint;
import com.wireguard.config.Peer;
import com.wireguard.crypto.Key;
import com.wireguard.util.NonNullForAll;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
@ -29,6 +23,11 @@ import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
import androidx.annotation.Nullable;
import androidx.databinding.BaseObservable;
import androidx.databinding.Bindable;
import androidx.databinding.Observable;
import androidx.databinding.ObservableList;
import java9.util.Lists;
import java9.util.Sets;
import java9.util.stream.Collectors;

View File

@ -5,14 +5,14 @@
package com.wireguard.android.widget;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import android.text.InputFilter;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import com.wireguard.crypto.Key;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
/**
* InputFilter for entering WireGuard private/public keys encoded with base64.

View File

@ -5,13 +5,12 @@
package com.wireguard.android.widget;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.RelativeLayout;
import com.wireguard.android.R;
import com.wireguard.util.NonNullForAll;
@NonNullForAll
public class MultiselectableRelativeLayout extends RelativeLayout {

View File

@ -5,14 +5,14 @@
package com.wireguard.android.widget;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import android.text.InputFilter;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import com.wireguard.android.backend.Tunnel;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
/**
* InputFilter for entering WireGuard configuration names (Linux interface names).

View File

@ -6,8 +6,6 @@
package com.wireguard.android.widget;
import com.wireguard.util.NonNullForAll;
import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
import android.content.res.ColorStateList;
@ -24,11 +22,14 @@ import android.graphics.RectF;
import android.graphics.Region;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.util.FloatProperty;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.ColorInt;
import androidx.annotation.IntRange;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import android.util.FloatProperty;
@RequiresApi(Build.VERSION_CODES.N)
@NonNullForAll

View File

@ -6,14 +6,15 @@
package com.wireguard.android.widget;
import com.wireguard.util.NonNullForAll;
import android.content.Context;
import android.os.Parcelable;
import androidx.annotation.Nullable;
import android.util.AttributeSet;
import android.widget.Switch;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
@NonNullForAll
public class ToggleSwitch extends Switch {
private boolean isRestoringState;

View File

@ -5,8 +5,6 @@
package com.wireguard.util;
import com.wireguard.util.NonNullForAll;
/**
* Interface for objects that have a identifying key of the given type.
*/

View File

@ -5,13 +5,11 @@
package com.wireguard.util;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import java.util.Collection;
import java.util.List;
import androidx.annotation.Nullable;
/**
* A list containing elements that can be looked up by key. A {@code KeyedList} cannot contain
* {@code null} elements.

View File

@ -5,14 +5,12 @@
package com.wireguard.util;
import com.wireguard.util.NonNullForAll;
import androidx.annotation.Nullable;
import java.util.Collection;
import java.util.Comparator;
import java.util.Set;
import androidx.annotation.Nullable;
/**
* A keyed list where all elements are sorted by the comparator returned by {@code comparator()}
* applied to their keys.