From 37ca15b77cd9d9717920a54c6138b0c48ab5415e Mon Sep 17 00:00:00 2001 From: J-Jamet Date: Wed, 6 Jun 2018 19:11:20 +0200 Subject: [PATCH] Refactor lock --- app/src/main/AndroidManifest.xml | 6 ++- .../keepass/activities/EntryActivity.java | 2 + .../keepass/activities/EntryEditActivity.java | 2 + .../keepass/activities/ListNodesActivity.java | 1 + .../LockService.java} | 40 ++++++++++--------- .../{activities => lock}/LockingActivity.java | 2 +- .../LockingHideActivity.java | 2 +- .../keepass/password/PasswordActivity.java | 2 +- .../keepass/settings/SettingsActivity.java | 2 +- .../kunzisoft/keepass/timeout/Timeout.java | 9 ++--- .../keepass/timeout/TimeoutHelper.java | 2 +- 11 files changed, 40 insertions(+), 30 deletions(-) rename app/src/main/java/com/kunzisoft/keepass/{timeout/TimeoutService.java => lock/LockService.java} (73%) rename app/src/main/java/com/kunzisoft/keepass/{activities => lock}/LockingActivity.java (99%) rename app/src/main/java/com/kunzisoft/keepass/{activities => lock}/LockingHideActivity.java (97%) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 6d297a544..1f5351535 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -134,11 +134,13 @@ android:configChanges="orientation|keyboardHidden" /> - + + + - + diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/EntryActivity.java b/app/src/main/java/com/kunzisoft/keepass/activities/EntryActivity.java index d59a7e06b..1498f4561 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/EntryActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/activities/EntryActivity.java @@ -47,6 +47,8 @@ import com.kunzisoft.keepass.database.PwDatabase; import com.kunzisoft.keepass.database.PwEntry; import com.kunzisoft.keepass.database.security.ProtectedString; import com.kunzisoft.keepass.icons.IconPackChooser; +import com.kunzisoft.keepass.lock.LockingActivity; +import com.kunzisoft.keepass.lock.LockingHideActivity; import com.kunzisoft.keepass.notifications.NotificationCopyingService; import com.kunzisoft.keepass.notifications.NotificationField; import com.kunzisoft.keepass.settings.PreferencesUtil; diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/EntryEditActivity.java b/app/src/main/java/com/kunzisoft/keepass/activities/EntryEditActivity.java index ae24effc8..fbeb943a5 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/EntryEditActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/activities/EntryEditActivity.java @@ -57,6 +57,8 @@ import com.kunzisoft.keepass.database.security.ProtectedString; import com.kunzisoft.keepass.dialogs.GeneratePasswordDialogFragment; import com.kunzisoft.keepass.dialogs.IconPickerDialogFragment; import com.kunzisoft.keepass.icons.IconPackChooser; +import com.kunzisoft.keepass.lock.LockingActivity; +import com.kunzisoft.keepass.lock.LockingHideActivity; import com.kunzisoft.keepass.settings.PreferencesUtil; import com.kunzisoft.keepass.tasks.SaveDatabaseProgressTaskDialogFragment; import com.kunzisoft.keepass.tasks.UpdateProgressTaskStatus; diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/ListNodesActivity.java b/app/src/main/java/com/kunzisoft/keepass/activities/ListNodesActivity.java index c0467add4..654a3ba69 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/ListNodesActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/activities/ListNodesActivity.java @@ -41,6 +41,7 @@ import com.kunzisoft.keepass.database.PwNode; import com.kunzisoft.keepass.database.SortNodeEnum; import com.kunzisoft.keepass.dialogs.AssignMasterKeyDialogFragment; import com.kunzisoft.keepass.dialogs.SortDialogFragment; +import com.kunzisoft.keepass.lock.LockingActivity; import com.kunzisoft.keepass.password.AssignPasswordHelper; import com.kunzisoft.keepass.utils.MenuUtil; diff --git a/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutService.java b/app/src/main/java/com/kunzisoft/keepass/lock/LockService.java similarity index 73% rename from app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutService.java rename to app/src/main/java/com/kunzisoft/keepass/lock/LockService.java index b5b9aa66c..d67bcdbd8 100644 --- a/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutService.java +++ b/app/src/main/java/com/kunzisoft/keepass/lock/LockService.java @@ -1,5 +1,5 @@ /* - * Copyright 2017 Brian Pellin, Jeremy Jamet / Kunzisoft. + * Copyright 2018 Jeremy Jamet / Kunzisoft. * * This file is part of KeePass DX. * @@ -17,7 +17,7 @@ * along with KeePass DX. If not, see . * */ -package com.kunzisoft.keepass.timeout; +package com.kunzisoft.keepass.lock; import android.app.NotificationManager; import android.app.Service; @@ -31,38 +31,42 @@ import android.util.Log; import com.kunzisoft.keepass.app.App; -public class TimeoutService extends Service { +public class LockService extends Service { + + private static final String TAG = LockService.class.getName(); + public static final String LOCK_ACTION = "com.kunzisoft.keepass.LOCK"; - private static final String TAG = TimeoutService.class.getName(); private BroadcastReceiver mIntentReceiver; - + @Override public void onCreate() { super.onCreate(); - + mIntentReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); - if ( action != null && action.equals(Timeout.TIMEOUT) ) { - timeout(); + if ( action != null && + action.equals(LOCK_ACTION) + ) { + lock(); } } }; - + IntentFilter filter = new IntentFilter(); - filter.addAction(Timeout.TIMEOUT); + filter.addAction(LOCK_ACTION); registerReceiver(mIntentReceiver, filter); } @Override public void onStart(Intent intent, int startId) { super.onStart(intent, startId); - Log.d(TAG, "Timeout service started"); + Log.d(TAG, "Lock service started"); } - private void timeout() { - Log.d(TAG, "Timeout"); + private void lock() { + Log.d(TAG, "Lock"); App.setShutdown(); NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); if (nm != null) @@ -73,17 +77,17 @@ public class TimeoutService extends Service { @Override public void onDestroy() { super.onDestroy(); - Log.d(TAG, "Timeout service stopped"); + Log.d(TAG, "Lock service stopped"); unregisterReceiver(mIntentReceiver); } - public class TimeoutBinder extends Binder { - public TimeoutService getService() { - return TimeoutService.this; + public class LockBinder extends Binder { + public LockService getService() { + return LockService.this; } } - private final IBinder mBinder = new TimeoutBinder(); + private final IBinder mBinder = new LockBinder(); @Override public IBinder onBind(Intent intent) { diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/LockingActivity.java b/app/src/main/java/com/kunzisoft/keepass/lock/LockingActivity.java similarity index 99% rename from app/src/main/java/com/kunzisoft/keepass/activities/LockingActivity.java rename to app/src/main/java/com/kunzisoft/keepass/lock/LockingActivity.java index 3b2a7ae98..8e7ed238a 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/LockingActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/lock/LockingActivity.java @@ -17,7 +17,7 @@ * along with KeePass DX. If not, see . * */ -package com.kunzisoft.keepass.activities; +package com.kunzisoft.keepass.lock; import android.app.Activity; import android.content.BroadcastReceiver; diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/LockingHideActivity.java b/app/src/main/java/com/kunzisoft/keepass/lock/LockingHideActivity.java similarity index 97% rename from app/src/main/java/com/kunzisoft/keepass/activities/LockingHideActivity.java rename to app/src/main/java/com/kunzisoft/keepass/lock/LockingHideActivity.java index ee828a4ad..6fddd6abe 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/LockingHideActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/lock/LockingHideActivity.java @@ -17,7 +17,7 @@ * along with KeePass DX. If not, see . * */ -package com.kunzisoft.keepass.activities; +package com.kunzisoft.keepass.lock; import android.content.ActivityNotFoundException; import android.content.Intent; diff --git a/app/src/main/java/com/kunzisoft/keepass/password/PasswordActivity.java b/app/src/main/java/com/kunzisoft/keepass/password/PasswordActivity.java index c0b3e4833..ce38fe592 100644 --- a/app/src/main/java/com/kunzisoft/keepass/password/PasswordActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/password/PasswordActivity.java @@ -56,7 +56,7 @@ import com.getkeepsafe.taptargetview.TapTarget; import com.getkeepsafe.taptargetview.TapTargetView; import com.kunzisoft.keepass.R; import com.kunzisoft.keepass.activities.GroupActivity; -import com.kunzisoft.keepass.activities.LockingActivity; +import com.kunzisoft.keepass.lock.LockingActivity; import com.kunzisoft.keepass.app.App; import com.kunzisoft.keepass.autofill.AutofillHelper; import com.kunzisoft.keepass.compat.ClipDataCompat; diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/SettingsActivity.java b/app/src/main/java/com/kunzisoft/keepass/settings/SettingsActivity.java index f123b2a2e..6b7828042 100644 --- a/app/src/main/java/com/kunzisoft/keepass/settings/SettingsActivity.java +++ b/app/src/main/java/com/kunzisoft/keepass/settings/SettingsActivity.java @@ -28,7 +28,7 @@ import android.support.v7.widget.Toolbar; import android.view.MenuItem; import com.kunzisoft.keepass.R; -import com.kunzisoft.keepass.activities.LockingActivity; +import com.kunzisoft.keepass.lock.LockingActivity; public class SettingsActivity extends LockingActivity implements MainPreferenceFragment.Callback { diff --git a/app/src/main/java/com/kunzisoft/keepass/timeout/Timeout.java b/app/src/main/java/com/kunzisoft/keepass/timeout/Timeout.java index f40691ca3..cad550ff4 100644 --- a/app/src/main/java/com/kunzisoft/keepass/timeout/Timeout.java +++ b/app/src/main/java/com/kunzisoft/keepass/timeout/Timeout.java @@ -28,17 +28,16 @@ import android.preference.PreferenceManager; import android.util.Log; import com.kunzisoft.keepass.R; +import com.kunzisoft.keepass.lock.LockService; public class Timeout { - public static final String TIMEOUT = "com.kunzisoft.keepass.timeout"; - private static final int REQUEST_ID = 0; private static final long DEFAULT_TIMEOUT = 5 * 60 * 1000; // 5 minutes private static String TAG = "KeePass Timeout"; private static PendingIntent buildIntent(Context ctx) { - Intent intent = new Intent(TIMEOUT); + Intent intent = new Intent(LockService.LOCK_ACTION); return PendingIntent.getBroadcast(ctx, REQUEST_ID, intent, PendingIntent.FLAG_CANCEL_CURRENT); } @@ -58,7 +57,7 @@ public class Timeout { return; } - ctx.startService(new Intent(ctx, TimeoutService.class)); + ctx.startService(new Intent(ctx, LockService.class)); long triggerTime = System.currentTimeMillis() + timeout; AlarmManager am = (AlarmManager) ctx.getSystemService(Context.ALARM_SERVICE); @@ -77,7 +76,7 @@ public class Timeout { am.cancel(buildIntent(ctx)); } - ctx.stopService(new Intent(ctx, TimeoutService.class)); + ctx.stopService(new Intent(ctx, LockService.class)); } } diff --git a/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutHelper.java b/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutHelper.java index 2009598d6..a9e7f51f0 100644 --- a/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutHelper.java +++ b/app/src/main/java/com/kunzisoft/keepass/timeout/TimeoutHelper.java @@ -24,7 +24,7 @@ import android.content.SharedPreferences; import android.preference.PreferenceManager; import com.kunzisoft.keepass.R; -import com.kunzisoft.keepass.activities.LockingActivity; +import com.kunzisoft.keepass.lock.LockingActivity; import com.kunzisoft.keepass.app.App; public class TimeoutHelper {