From 43930ed8f2d890585b5b85cd963d4f564cdb736f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Sch=C3=BCrmann?= Date: Thu, 29 Jan 2015 10:10:07 +0100 Subject: [PATCH] Move key list logic into fragment, UI fixes for nav drawer --- Graphics/get-material-icons.sh | 3 +- .../keychain/Constants.java | 7 +- .../remote/ui/AccountSettingsActivity.java | 3 - .../remote/ui/AppSettingsActivity.java | 7 - .../keychain/remote/ui/AppsListActivity.java | 47 ---- .../keychain/ui/FirstTimeActivity.java | 2 +- .../keychain/ui/KeyListActivity.java | 237 ------------------ .../keychain/ui/MainActivity.java | 52 ++++ .../keychain/ui/NavDrawerActivity.java | 2 +- .../keychain/ui/SafeSlingerActivity.java | 2 +- .../keychain/ui/ViewKeyActivity.java | 2 +- .../res/drawable-hdpi/ic_help_black_24dp.png | Bin 0 -> 559 bytes .../res/drawable-mdpi/ic_help_black_24dp.png | Bin 0 -> 390 bytes .../res/drawable-xhdpi/ic_help_black_24dp.png | Bin 0 -> 700 bytes .../drawable-xxhdpi/ic_help_black_24dp.png | Bin 0 -> 986 bytes .../drawable-xxxhdpi/ic_help_black_24dp.png | Bin 0 -> 1323 bytes .../layout-large/api_apps_list_activity.xml | 18 -- .../res/layout/api_apps_list_activity.xml | 11 - .../main/res/layout/api_apps_list_content.xml | 24 -- .../main/res/menu/api_account_settings.xml | 4 - 20 files changed, 61 insertions(+), 360 deletions(-) delete mode 100644 OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppsListActivity.java delete mode 100644 OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java create mode 100644 OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/MainActivity.java create mode 100644 OpenKeychain/src/main/res/drawable-hdpi/ic_help_black_24dp.png create mode 100644 OpenKeychain/src/main/res/drawable-mdpi/ic_help_black_24dp.png create mode 100644 OpenKeychain/src/main/res/drawable-xhdpi/ic_help_black_24dp.png create mode 100644 OpenKeychain/src/main/res/drawable-xxhdpi/ic_help_black_24dp.png create mode 100644 OpenKeychain/src/main/res/drawable-xxxhdpi/ic_help_black_24dp.png delete mode 100644 OpenKeychain/src/main/res/layout-large/api_apps_list_activity.xml delete mode 100644 OpenKeychain/src/main/res/layout/api_apps_list_activity.xml delete mode 100644 OpenKeychain/src/main/res/layout/api_apps_list_content.xml diff --git a/Graphics/get-material-icons.sh b/Graphics/get-material-icons.sh index 0d7d688f2..652e3063a 100755 --- a/Graphics/get-material-icons.sh +++ b/Graphics/get-material-icons.sh @@ -13,4 +13,5 @@ python copy OpenKeychain communication black vpn_key 24 python copy OpenKeychain action black lock_open 24 python copy OpenKeychain action black lock_outline 24 python copy OpenKeychain navigation black apps 24 -python copy OpenKeychain action black settings 24 \ No newline at end of file +python copy OpenKeychain action black help 24 +python copy OpenKeychain action black settings 24 diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java index 04a932658..b3b433a63 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java @@ -20,11 +20,10 @@ package org.sufficientlysecure.keychain; import android.os.Environment; import org.spongycastle.jce.provider.BouncyCastleProvider; -import org.sufficientlysecure.keychain.remote.ui.AppsListActivity; import org.sufficientlysecure.keychain.ui.DecryptActivity; import org.sufficientlysecure.keychain.ui.EncryptFilesActivity; import org.sufficientlysecure.keychain.ui.EncryptTextActivity; -import org.sufficientlysecure.keychain.ui.KeyListActivity; +import org.sufficientlysecure.keychain.ui.MainActivity; import java.io.File; @@ -92,11 +91,11 @@ public final class Constants { } public static final class DrawerItems { - public static final Class KEY_LIST = KeyListActivity.class; + public static final Class KEY_LIST = MainActivity.class; public static final Class ENCRYPT_TEXT = EncryptTextActivity.class; public static final Class ENCRYPT_FILE = EncryptFilesActivity.class; public static final Class DECRYPT = DecryptActivity.class; - public static final Class REGISTERED_APPS_LIST = AppsListActivity.class; + public static final Class REGISTERED_APPS_LIST = MainActivity.class; public static final Class[] ARRAY = new Class[]{ KEY_LIST, ENCRYPT_TEXT, diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsActivity.java index e5edd6a0f..f4cd553d0 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AccountSettingsActivity.java @@ -92,9 +92,6 @@ public class AccountSettingsActivity extends BaseActivity { case R.id.menu_account_settings_delete: deleteAccount(); return true; - case R.id.menu_account_settings_cancel: - finish(); - return true; } return super.onOptionsItemSelected(item); } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppSettingsActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppSettingsActivity.java index e91482e28..36d6ad888 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppSettingsActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppSettingsActivity.java @@ -47,13 +47,6 @@ public class AppSettingsActivity extends BaseActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - // let the actionbar look like Android's contact app -// ActionBar actionBar = getSupportActionBar(); -// actionBar.setDisplayHomeAsUpEnabled(true); -// actionBar.setIcon(android.R.color.transparent); -// actionBar.setHomeButtonEnabled(true); - - mSettingsFragment = (AppSettingsFragment) getSupportFragmentManager().findFragmentById( R.id.api_app_settings_fragment); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppsListActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppsListActivity.java deleted file mode 100644 index 3b4cc654e..000000000 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/remote/ui/AppsListActivity.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (C) 2013-2014 Dominik Schürmann - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.sufficientlysecure.keychain.remote.ui; - -import android.os.Bundle; - -import org.sufficientlysecure.keychain.R; -import org.sufficientlysecure.keychain.ui.DrawerActivity; -import org.sufficientlysecure.keychain.ui.NavDrawerActivity; - -public class AppsListActivity extends NavDrawerActivity { - -// @Override -// protected void onCreate(Bundle savedInstanceState) { -// super.onCreate(savedInstanceState); -// -// activateDrawerNavigation(savedInstanceState); -// } - - @Override - public void init(Bundle savedInstanceState) { - super.init(savedInstanceState); - setContentView(R.layout.api_apps_list_activity); - } - - -// @Override -// protected void initLayout() { -// setContentView(R.layout.api_apps_list_activity); -// } - -} diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/FirstTimeActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/FirstTimeActivity.java index ce2a049f5..4e51c62d2 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/FirstTimeActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/FirstTimeActivity.java @@ -92,7 +92,7 @@ public class FirstTimeActivity extends BaseActivity { private void finishSetup(Intent srcData) { Preferences prefs = Preferences.getPreferences(this); prefs.setFirstTime(false); - Intent intent = new Intent(this, KeyListActivity.class); + Intent intent = new Intent(this, MainActivity.class); // give intent through to display notify if (srcData != null) { intent.putExtras(srcData); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java deleted file mode 100644 index b7f3588eb..000000000 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java +++ /dev/null @@ -1,237 +0,0 @@ -/* - * Copyright (C) 2012-2014 Dominik Schürmann - * Copyright (C) 2014 Vincent Breitmoser - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.sufficientlysecure.keychain.ui; - -import android.app.ProgressDialog; -import android.content.Intent; -import android.os.Bundle; -import android.os.Message; -import android.os.Messenger; -import android.view.Menu; -import android.view.MenuItem; - -import org.sufficientlysecure.keychain.Constants; -import org.sufficientlysecure.keychain.R; -import org.sufficientlysecure.keychain.operations.results.ConsolidateResult; -import org.sufficientlysecure.keychain.operations.results.OperationResult; -import org.sufficientlysecure.keychain.provider.KeychainContract; -import org.sufficientlysecure.keychain.provider.KeychainDatabase; -import org.sufficientlysecure.keychain.service.KeychainIntentService; -import org.sufficientlysecure.keychain.service.KeychainIntentServiceHandler; -import org.sufficientlysecure.keychain.ui.util.Notify; -import org.sufficientlysecure.keychain.util.ExportHelper; -import org.sufficientlysecure.keychain.util.Log; -import org.sufficientlysecure.keychain.util.Preferences; - -import java.io.IOException; - -import it.neokree.materialnavigationdrawer.MaterialNavigationDrawer; - -public class KeyListActivity extends NavDrawerActivity { - - public static final int REQUEST_CODE_RESULT_TO_LIST = 1; - - ExportHelper mExportHelper; - - @Override -// public void onCreate(Bundle savedInstanceState) { - public void init(Bundle savedInstanceState) { - super.init(savedInstanceState); -// super.onCreate(savedInstanceState); -// setActionBarIcon(R.drawable.ic_ab_drawer); - - setTitle(R.string.nav_keys); - - // if this is the first time show first time activity - Preferences prefs = Preferences.getPreferences(this); - if (prefs.isFirstTime()) { - startActivity(new Intent(this, FirstTimeActivity.class)); - finish(); - return; - } - - mExportHelper = new ExportHelper(this); - - Intent data = getIntent(); - // If we got an EXTRA_RESULT in the intent, show the notification - if (data != null && data.hasExtra(OperationResult.EXTRA_RESULT)) { - OperationResult result = data.getParcelableExtra(OperationResult.EXTRA_RESULT); - result.createNotify(this).show(); - } - - // now setup navigation drawer in DrawerActivity... -// activateDrawerNavigation(savedInstanceState); - } - -// @Override -// protected void initLayout() { -// setContentView(R.layout.key_list_activity); -// } - - @Override - 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_cons).setVisible(true); - menu.findItem(R.id.menu_key_list_debug_read).setVisible(true); - menu.findItem(R.id.menu_key_list_debug_write).setVisible(true); - menu.findItem(R.id.menu_key_list_debug_first_time).setVisible(true); - } - - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - switch (item.getItemId()) { - case R.id.menu_key_list_add: - Intent scanQrCode = new Intent(this, QrCodeScanActivity.class); - scanQrCode.setAction(QrCodeScanActivity.ACTION_SCAN_WITH_RESULT); - startActivityForResult(scanQrCode, 0); - return true; - - case R.id.menu_key_list_search_cloud: - searchCloud(); - return true; - - case R.id.menu_key_list_create: - createKey(); - return true; - - case R.id.menu_key_list_import_existing_key: - Intent intentImportExisting = new Intent(this, ImportKeysActivity.class); - intentImportExisting.setAction(ImportKeysActivity.ACTION_IMPORT_KEY_FROM_FILE_AND_RETURN); - startActivityForResult(intentImportExisting, 0); - return true; - - case R.id.menu_key_list_export: - mExportHelper.showExportKeysDialog(null, Constants.Path.APP_DIR_FILE, true); - return true; - - case R.id.menu_key_list_debug_cons: - consolidate(); - return true; - - case R.id.menu_key_list_debug_read: - try { - KeychainDatabase.debugBackup(this, true); - Notify.showNotify(this, "Restored debug_backup.db", Notify.Style.INFO); - getContentResolver().notifyChange(KeychainContract.KeyRings.CONTENT_URI, null); - } catch (IOException e) { - Log.e(Constants.TAG, "IO Error", e); - Notify.showNotify(this, "IO Error " + e.getMessage(), Notify.Style.ERROR); - } - return true; - - case R.id.menu_key_list_debug_write: - try { - KeychainDatabase.debugBackup(this, false); - Notify.showNotify(this, "Backup to debug_backup.db completed", Notify.Style.INFO); - } catch (IOException e) { - Log.e(Constants.TAG, "IO Error", e); - Notify.showNotify(this, "IO Error: " + e.getMessage(), Notify.Style.ERROR); - } - return true; - - case R.id.menu_key_list_debug_first_time: - Preferences prefs = Preferences.getPreferences(this); - prefs.setFirstTime(true); - Intent intent = new Intent(this, FirstTimeActivity.class); - startActivity(intent); - finish(); - return true; - - default: - return super.onOptionsItemSelected(item); - } - } - - private void searchCloud() { - Intent importIntent = new Intent(this, ImportKeysActivity.class); - importIntent.putExtra(ImportKeysActivity.EXTRA_QUERY, (String) null); // hack to show only cloud tab - startActivity(importIntent); - } - - private void createKey() { - Intent intent = new Intent(this, CreateKeyActivity.class); - startActivityForResult(intent, 0); - } - - private void consolidate() { - // Message is received after importing is done in KeychainIntentService - KeychainIntentServiceHandler saveHandler = new KeychainIntentServiceHandler( - this, - getString(R.string.progress_importing), - ProgressDialog.STYLE_HORIZONTAL) { - public void handleMessage(Message message) { - // handle messages by standard KeychainIntentServiceHandler first - super.handleMessage(message); - - if (message.arg1 == KeychainIntentServiceHandler.MESSAGE_OKAY) { - // get returned data bundle - Bundle returnData = message.getData(); - if (returnData == null) { - return; - } - final ConsolidateResult result = - returnData.getParcelable(OperationResult.EXTRA_RESULT); - if (result == null) { - return; - } - - result.createNotify(KeyListActivity.this).show(); - } - } - }; - - // Send all information needed to service to import key in other thread - Intent intent = new Intent(this, KeychainIntentService.class); - - intent.setAction(KeychainIntentService.ACTION_CONSOLIDATE); - - // fill values for this action - Bundle data = new Bundle(); - - intent.putExtra(KeychainIntentService.EXTRA_DATA, data); - - // Create a new Messenger for the communication back - Messenger messenger = new Messenger(saveHandler); - intent.putExtra(KeychainIntentService.EXTRA_MESSENGER, messenger); - - // show progress dialog - saveHandler.showProgressDialog(this); - - // start service with intent - startService(intent); - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - // if a result has been returned, display a notify - if (data != null && data.hasExtra(OperationResult.EXTRA_RESULT)) { - OperationResult result = data.getParcelableExtra(OperationResult.EXTRA_RESULT); - result.createNotify(this).show(); - } else { - super.onActivityResult(requestCode, resultCode, data); - } - } - -} diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/MainActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/MainActivity.java new file mode 100644 index 000000000..f3bf337c9 --- /dev/null +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/MainActivity.java @@ -0,0 +1,52 @@ +/* + * Copyright (C) 2012-2014 Dominik Schürmann + * Copyright (C) 2014 Vincent Breitmoser + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package org.sufficientlysecure.keychain.ui; + +import android.content.Intent; +import android.os.Bundle; + +import org.sufficientlysecure.keychain.R; +import org.sufficientlysecure.keychain.operations.results.OperationResult; +import org.sufficientlysecure.keychain.util.Preferences; + +public class MainActivity extends NavDrawerActivity { + + @Override + public void init(Bundle savedInstanceState) { + super.init(savedInstanceState); + + setTitle(R.string.nav_keys); + + // if this is the first time show first time activity + Preferences prefs = Preferences.getPreferences(this); + if (prefs.isFirstTime()) { + startActivity(new Intent(this, FirstTimeActivity.class)); + finish(); + return; + } + + Intent data = getIntent(); + // If we got an EXTRA_RESULT in the intent, show the notification + if (data != null && data.hasExtra(OperationResult.EXTRA_RESULT)) { + OperationResult result = data.getParcelableExtra(OperationResult.EXTRA_RESULT); + result.createNotify(this).show(); + } + } + +} diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/NavDrawerActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/NavDrawerActivity.java index 5381b1ab3..57910af5e 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/NavDrawerActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/NavDrawerActivity.java @@ -23,7 +23,6 @@ import android.view.LayoutInflater; import android.view.View; import org.sufficientlysecure.keychain.R; -import org.sufficientlysecure.keychain.remote.ui.AppsListActivity; import org.sufficientlysecure.keychain.remote.ui.AppsListFragment; import it.neokree.materialnavigationdrawer.MaterialNavigationDrawer; @@ -52,5 +51,6 @@ public abstract class NavDrawerActivity extends MaterialNavigationDrawer { // create bottom section addBottomSection(newSection(getString(R.string.menu_preferences), R.drawable.ic_settings_black_24dp, new Intent(this, SettingsActivity.class))); + addBottomSection(newSection(getString(R.string.menu_help), R.drawable.ic_help_black_24dp, new Intent(this, HelpActivity.class))); } } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SafeSlingerActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SafeSlingerActivity.java index f95644aff..d1df2906d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SafeSlingerActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/SafeSlingerActivity.java @@ -163,7 +163,7 @@ public class SafeSlingerActivity extends BaseActivity { certifyIntent.putExtra(CertifyKeyActivity.EXTRA_RESULT, result); certifyIntent.putExtra(CertifyKeyActivity.EXTRA_KEY_IDS, result.getImportedMasterKeyIds()); certifyIntent.putExtra(CertifyKeyActivity.EXTRA_CERTIFY_KEY_ID, mMasterKeyId); - startActivityForResult(certifyIntent, KeyListActivity.REQUEST_CODE_RESULT_TO_LIST); + startActivityForResult(certifyIntent, 0); // mExchangeMasterKeyId = null; } diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java index 3bb0695a0..575df01b7 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java @@ -188,7 +188,7 @@ public class ViewKeyActivity extends BaseActivity implements try { switch (item.getItemId()) { case android.R.id.home: { - Intent homeIntent = new Intent(this, KeyListActivity.class); + Intent homeIntent = new Intent(this, MainActivity.class); homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(homeIntent); return true; diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_help_black_24dp.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_help_black_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..05be749c3e30fd766f4c1407f4b47a0e0b63918f GIT binary patch literal 559 zcmV+~0?_@5P)004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00E~-L_t(Y$K{kiOF~f?haWWELRu=K2pakhK}`*TqCno#0t?pPRW^V|w*MemJ2@Jfof5F)bbO!+N-Cj!6AUR*H3Bd{Yyfa7DRn={4Zv&zu+F!nIew65!1UPxV2w|u8X9y0z%n12Z9-nn zB@V!gMt8!ReKRafoi3PN(gqd)IM(V#KPasYtYKmCtksj^6X}F%XtIMd;%l@11<002ovPDHLkV1m-S*bV>y literal 0 HcmV?d00001 diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_help_black_24dp.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_help_black_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..f3743dc203ff7351492cb645ab82730ea723ed21 GIT binary patch literal 390 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1g=CK)Uj~LMH3o);76yi2K%s^g z3=E|P3=FRl7#OT(FffQ0%-I!a1C(G&@^*J&_}|`tWO=~G=WkMH z&(p;*#Nzbc$&P)Djv{UQBPJL;}zY%rOf zH)-3Wz3;SAm)~3U@7Mk-|AW>)xV!qm1XV>tLq%>jk(h6K){}g4U*0%tnb!6*&dyR; z;J1Eh*OZJ8%LSBsZk*=dx@bb#uF#Wl>^6QfnN0Egwa#%33r|I}_^GJKH1L;R5>Lp? zE#(inQm5yTu`xb_QF-Ya)(+m^Q}Z88u3ze^m%wwyV)>R6qAR)nq->eWz|Fkjt~7^1 zg_X#zs$UPc>AziAXYnFJX{o5bweLRR8Mltzu9r$rlFn~1llCq<|MmH&FEcl*DJ8i& f=-+*1eU10cW|8H~LaNh%A;IA3>gTe~DWM4fxg(Jm literal 0 HcmV?d00001 diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_help_black_24dp.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_help_black_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..87095ef2687c61c890cf2fd1914160921cd51265 GIT binary patch literal 700 zcmV;t0z>_YP)004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00J~gL_t(o!|j*PN?Sn`#(!#zC_)jX3$5)&i*#3L{Iifg zL=ozu-H1ed0slOJv2GO!*gioZrHuifpqoIEkQXp0h%r@BYZD5$o4J?jJ#%O7#6=69 zvzz(O_ub5ybIt@F?0>L!rdTCUg*r`|)TxkXg-P05Cx6NYM|c`PWSwDm^2hAZ)ROz& zAj^OY{X2db$$hUg8;`t`PuAqVXGz%7_ple6-ov9vkKNbH^xsJ{N|GecSzuoyVeuVx9>hb6Wg@fIg*PFR&w?y>Bnr<(ezLG8P<^ zl#6YB)kR4hz&R z>CZ{2h(1k6^6;pI1)5g$S4=4UBTA8D$Wh?ELih5`Fz1|(s1%?J24u}G$@2>P#)vGt zUDFY6}vpaMe^^zY*%?>`?o4}ep4~8vk!Q{Uf z)XlW)y$EdTXYzod+8GSLM?FkvG5j|&3U$t@m#*VX0jxseGG^kM~ i#}X;Ir9IfcW`6)MBT};p>?fB100004P)004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00UA}2 z_=+pP00`Ycx^jbo#ApI08W%hi5?uj-1qmbt8k(lICMpYJwA7tR(==?fy(rfeaVGT6 znVCDcVbL?od(J<<&Yd&o%-jMMt60TOs`=52FlG@)202);kV6J>%p!~))Rz;b86iYr z!4`}nwlIXV-otcZ1%HGn>^Q(OI=zFrhHYsSc0>^{57UPCS};dr9xWzu?qS~*jtv`m z^qGOF!7JA=M`IE`w>YN}F@|Hq#u^&j;56Z*Q5+jKl4#PO9UA95MiE3SeDI+SK|H~p z1X82k+M!-n8n;n(EUpT7ks%`2b=J~LLiCNGJoqt3L{F$Ex>#_GRCr1#+)~>H_len& zv3X)&YL*9jN30#WTHb&kLY=qrHA_6%cR24_gpfi31tc+u8t&PBLP@glZWD>lX4VDl za8Ezu9G7w8eA|?3FvP!Vl$)KMW6wWvDLqE0b4VCnG#CY@&YD;uCNVQ+B zjCZP}#|OsaJlVn#g(O67{Ok)Ul=S$;?e~=4fEXxhpnU#j^r}hk4e?3BG60ld6x&Jf z0_vQBdW|#~{fy!R3IA?qps)d)6t~J2BqBzffo5If>~hWgC8;CRv@=lLCC*p0F>0r< zB^4EO2Fkd?`NowEU_vr3?F^K2fwPB;oYuH>WY!r-Kk0v>ol_cBh%K52Iz$(z^H?dm zX#SPG=2Qk1qqC+LwZ$#w0RAe*r%k8*0+;H$%JDJN8{d^vX&mdnk;)BjW^;(I~n)*GGu>F8!^>GF|RE~~_JH{d7*DosFQ^_X(psY9+&QRx$ z<+1`T(&w_yvI1R^IlD&7h7*xH+Xu>obBL?5_aF1xX|EDDBY!{Cg1qNIIknr^KF@(} zsNOQZ@D%8|`Yo&vYn}nEqFU#sx)DiFfD-WQe_BWyPxb^|EX1?4ZWL!#e|G+_rAcEr z&-B(#sZAj78YZWn=;F3y&Q+0^(f=qV>H{`4OK1l?vkojNv~U&{EVE_OC literal 0 HcmV?d00001 diff --git a/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_help_black_24dp.png b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_help_black_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..a4286b54cd244c36238756981d8606f2905e4682 GIT binary patch literal 1323 zcmV+`1=RY9P)004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00g5+L_t(|+U;B2Yg9)R{~2wXFNM}*WBVYc4Ym?gdvIkP<-w~{76+=8d^#p8j_968u5dM_z{z= zCa}rv(?Ym&v-g~tGk5R9J@Y#AJHOxEnKNh3%mR@`7FlGGMJ8t}5JwlTq7OqD!!%|w zi)oBu2oG=tU5KMToWyIe7b#@n5LyP^*n{e@P%lFqckqEkeSXW~Hg=+{wB(l|foE*$ z^VFX@PsvyVlt73zH~p}7?u=8`ve{M zNXF}zh)CDS?uOAsLR^Oo8S}FFwncUIH|of!G5kZu-EWpOOp?ET9Sb=|{uL(BpfBJ) zIk#_OW3MBxgYxM6a5$iiP zMu)$EtCr~ZDM7Fdf3i`!{RQ+{q5sh1My6BiSM;?Z3-lj*Gxxq;$t&%nrJzH0kgt8?`MjKO$Ij%`CtW1;Tr|N8RG_s`CzBe zVFi7?;l*Gs$VEJe#V+hG@yZZ$G{`Xeqq1>5GR7o?(Fa2G$CVny0Rhyz{sOKD3HVw0 z{!ax^F9ny(xyxPKL{JmKrPCW+xTi%>36+U@ApxITSzDwcen!NVJA{r1V5Vtj;%*TE zZp#T^o~H@eV@1H60Ol_0%|K2(rIu)u3tZoN*zHgXxIwRt?hK`X?VN{vBcY?8#UjoP z!O_qOIK;c5S&BEIqCdueXL=%30uo?b6`qHN{xf<2oo}t88<`2#54v~ty`d2Bi~d`Q zRd`==0pnO{_CmMR0*qhuUM{JCi{>x3D$rjt0lzCZ3R)J^x-~NwkU_1~yTwM0f|RL% zmnJW@R9j((?oVr$p<9ID}+Dho<`{q`IBZk2>i$kUUQ(_rf(1R(B zGSv-y&#N@polv`x^m#8=XhS%UU8R~d{)yiXbf6peFo03ykVhUljA8(HaR~{uFkiVx h7FlGGMHX36`yWBAQ35xd;GqBj002ovPDHLkV1iDQYx4jA literal 0 HcmV?d00001 diff --git a/OpenKeychain/src/main/res/layout-large/api_apps_list_activity.xml b/OpenKeychain/src/main/res/layout-large/api_apps_list_activity.xml deleted file mode 100644 index af06614b9..000000000 --- a/OpenKeychain/src/main/res/layout-large/api_apps_list_activity.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/api_apps_list_activity.xml b/OpenKeychain/src/main/res/layout/api_apps_list_activity.xml deleted file mode 100644 index df187e0a5..000000000 --- a/OpenKeychain/src/main/res/layout/api_apps_list_activity.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/api_apps_list_content.xml b/OpenKeychain/src/main/res/layout/api_apps_list_content.xml deleted file mode 100644 index e1922079c..000000000 --- a/OpenKeychain/src/main/res/layout/api_apps_list_content.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/OpenKeychain/src/main/res/menu/api_account_settings.xml b/OpenKeychain/src/main/res/menu/api_account_settings.xml index d08fc7f42..713345ffc 100644 --- a/OpenKeychain/src/main/res/menu/api_account_settings.xml +++ b/OpenKeychain/src/main/res/menu/api_account_settings.xml @@ -6,9 +6,5 @@ android:id="@+id/menu_account_settings_delete" android:title="@string/api_settings_delete_account" app:showAsAction="never" /> - \ No newline at end of file