diff options
author | Vincent Breitmoser <valodim@mugenguild.com> | 2014-04-11 20:25:50 +0200 |
---|---|---|
committer | Vincent Breitmoser <valodim@mugenguild.com> | 2014-04-14 13:06:49 +0200 |
commit | 227155d484766a620a2f9467a248c844fca26382 (patch) | |
tree | 736238cd070ae89774dfdb9939095c37d60dd01a /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java | |
parent | e02e9e6707612db592fdfb3ae834fef5cbb0def0 (diff) | |
download | open-keychain-227155d484766a620a2f9467a248c844fca26382.tar.gz open-keychain-227155d484766a620a2f9467a248c844fca26382.tar.bz2 open-keychain-227155d484766a620a2f9467a248c844fca26382.zip |
add debug backup/restore options to main menu
Closes #543
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java index 8db643583..de16142d6 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java @@ -22,9 +22,16 @@ import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; +import com.devspark.appmsg.AppMsg; + import org.sufficientlysecure.keychain.Constants; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.helper.ExportHelper; +import org.sufficientlysecure.keychain.provider.KeychainContract; +import org.sufficientlysecure.keychain.provider.KeychainDatabase; +import org.sufficientlysecure.keychain.util.Log; + +import java.io.IOException; public class KeyListActivity extends DrawerActivity { @@ -46,6 +53,12 @@ public class KeyListActivity extends DrawerActivity { public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); getMenuInflater().inflate(R.menu.key_list, menu); + + if(Constants.DEBUG) { + menu.findItem(R.id.menu_key_list_debug_read).setVisible(true); + menu.findItem(R.id.menu_key_list_debug_write).setVisible(true); + } + return true; } @@ -68,6 +81,27 @@ public class KeyListActivity extends DrawerActivity { mExportHelper.showExportKeysDialog(null, Constants.Path.APP_DIR_FILE, true); return true; + case R.id.menu_key_list_debug_read: + try { + KeychainDatabase.debugRead(this); + AppMsg.makeText(this, "Restored from backup", AppMsg.STYLE_CONFIRM).show(); + getContentResolver().notifyChange(KeychainContract.KeyRings.CONTENT_URI, null); + } catch(IOException e) { + Log.e(Constants.TAG, "IO Error", e); + AppMsg.makeText(this, "IO Error: " + e.getMessage(), AppMsg.STYLE_ALERT).show(); + } + return true; + + case R.id.menu_key_list_debug_write: + try { + KeychainDatabase.debugWrite(this); + AppMsg.makeText(this, "Backup successful", AppMsg.STYLE_CONFIRM).show(); + } catch(IOException e) { + Log.e(Constants.TAG, "IO Error", e); + AppMsg.makeText(this, "IO Error: " + e.getMessage(), AppMsg.STYLE_ALERT).show(); + } + return true; + default: return super.onOptionsItemSelected(item); } |