Skip to content

Commit a9ed1dd

Browse files
committed
Allow to disable Update Notifier
1 parent b16667b commit a9ed1dd

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

app/src/main/java/io/github/krlvm/powertunnel/android/activities/AboutActivity.java

+12-1
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,15 @@
1919

2020
import android.app.AlertDialog;
2121
import android.app.ProgressDialog;
22+
import android.content.SharedPreferences;
2223
import android.os.Bundle;
2324
import android.text.method.LinkMovementMethod;
2425
import android.view.MenuItem;
26+
import android.widget.Toast;
2527

2628
import androidx.appcompat.app.ActionBar;
2729
import androidx.appcompat.app.AppCompatActivity;
30+
import androidx.preference.PreferenceManager;
2831

2932
import io.github.krlvm.powertunnel.BuildConstants;
3033
import io.github.krlvm.powertunnel.android.BuildConfig;
@@ -60,7 +63,7 @@ protected void onCreate(Bundle savedInstanceState) {
6063
NoUnderlineSpan.stripUnderlines(binding.license);
6164
binding.license.setMovementMethod(LinkMovementMethod.getInstance());
6265

63-
findViewById(R.id.update_button).setOnClickListener(v -> {
66+
binding.updateButton.setOnClickListener(v -> {
6467
final ProgressDialog progress = new ProgressDialog(AboutActivity.this);
6568
progress.setTitle(R.string.dialog_update_checking_title);
6669
progress.setMessage(getString(R.string.dialog_update_checking_message, BuildConfig.VERSION_NAME));
@@ -88,6 +91,14 @@ protected void onCreate(Bundle savedInstanceState) {
8891
.show();
8992
});
9093
});
94+
binding.updateButton.setLongClickable(true);
95+
binding.updateButton.setOnLongClickListener(v -> {
96+
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
97+
final boolean wasDisabled = prefs.getBoolean("disable_update_notifier", false);
98+
prefs.edit().putBoolean("disable_update_notifier", !wasDisabled).apply();
99+
Toast.makeText(this, "Update Notifier has been " + (wasDisabled ? "enabled" : "disabled"), Toast.LENGTH_SHORT).show();
100+
return true;
101+
});
91102
}
92103

93104
@Override

app/src/main/java/io/github/krlvm/powertunnel/android/updater/Updater.java

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ public class Updater {
3030

3131
public static void checkUpdatesIfNecessary(Context context, Consumer<UpdateInfo> handler) {
3232
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
33+
if (prefs.getBoolean("disable_update_notifier", false)) return;
3334

3435
if(System.currentTimeMillis() - prefs.getLong("last_update_check", 0) < 24 * 60 * 60 * 1000) return;
3536
prefs.edit().putLong("last_update_check", System.currentTimeMillis()).apply();

0 commit comments

Comments
 (0)