Merge branch 'development' into linked-identities
Conflicts: OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java
|
Before Width: | Height: | Size: 669 B |
BIN
OpenKeychain/src/main/res/drawable-hdpi/ic_vpn_key_grey_24dp.png
Normal file
|
After Width: | Height: | Size: 391 B |
|
Before Width: | Height: | Size: 499 B |
BIN
OpenKeychain/src/main/res/drawable-mdpi/ic_vpn_key_grey_24dp.png
Normal file
|
After Width: | Height: | Size: 301 B |
|
Before Width: | Height: | Size: 827 B |
|
After Width: | Height: | Size: 463 B |
|
Before Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 714 B |
|
Before Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 825 B |
@@ -8,13 +8,12 @@
|
||||
android:paddingLeft="24dp"
|
||||
android:paddingRight="24dp">
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
|
||||
<org.sufficientlysecure.keychain.ui.widget.EmailEditText
|
||||
android:id="@+id/add_user_id_address"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/label_email"
|
||||
android:imeOptions="actionNext"
|
||||
android:inputType="textAutoCorrect|textEmailAddress"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium" />
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:custom="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
@@ -42,13 +43,12 @@
|
||||
android:hint="@string/create_key_hint_full_name"
|
||||
android:ems="10" />
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.AutoCorrectAutoCompleteTextView
|
||||
<org.sufficientlysecure.keychain.ui.widget.EmailEditText
|
||||
android:id="@+id/create_key_email"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:imeOptions="actionNext"
|
||||
android:inputType="textAutoCorrect|textEmailAddress"
|
||||
android:hint="@string/label_email"
|
||||
android:ems="10" />
|
||||
|
||||
@@ -58,17 +58,33 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_passphrase" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/create_key_passphrase"
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:imeOptions="actionNext"
|
||||
android:inputType="textPassword"
|
||||
android:hint="@string/label_passphrase"
|
||||
android:ems="10"
|
||||
android:layout_gravity="center_horizontal" />
|
||||
android:layout_marginBottom="8dp">
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.PasswordEditText
|
||||
android:id="@+id/create_key_passphrase"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:imeOptions="actionNext"
|
||||
android:hint="@string/label_passphrase"
|
||||
android:ems="10"
|
||||
android:layout_gravity="center_horizontal" />
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.passwordstrengthindicator.PasswordStrengthBarView
|
||||
android:id="@+id/create_key_passphrase_strength"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="8dp"
|
||||
android:layout_gravity="end|center_vertical"
|
||||
custom:strength="medium"
|
||||
custom:showGuides="false"
|
||||
custom:color_fail="@color/android_red_light"
|
||||
custom:color_weak="@color/android_orange_light"
|
||||
custom:color_strong="@color/android_green_light" />
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/create_key_passphrase_again"
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:text="Show"
|
||||
android:drawableRight="@drawable/ic_action_accounts"
|
||||
android:drawableRight="@drawable/ic_vpn_key_grey_24dp"
|
||||
android:drawablePadding="8dp"
|
||||
android:gravity="center_vertical"
|
||||
style="@style/SelectableItem" />
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:custom="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
@@ -14,17 +15,35 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_no_passphrase" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/passphrase_passphrase"
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:imeOptions="actionNext"
|
||||
android:inputType="textPassword"
|
||||
android:hint="@string/label_passphrase"
|
||||
android:ems="10"
|
||||
android:layout_gravity="center_horizontal" />
|
||||
android:layout_marginBottom="8dp">
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.PasswordEditText
|
||||
android:id="@+id/passphrase_passphrase"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:imeOptions="actionNext"
|
||||
android:hint="@string/label_passphrase"
|
||||
android:ems="10"
|
||||
android:layout_gravity="center_horizontal" />
|
||||
|
||||
<org.sufficientlysecure.keychain.ui.widget.passwordstrengthindicator.PasswordStrengthBarView
|
||||
android:id="@+id/passphrase_repeat_passphrase_strength"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="8dp"
|
||||
android:layout_gravity="end|center_vertical"
|
||||
custom:strength="medium"
|
||||
custom:showGuides="false"
|
||||
custom:color_fail="@color/android_red_light"
|
||||
custom:color_weak="@color/android_orange_light"
|
||||
custom:color_strong="@color/android_green_light" />
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
<EditText
|
||||
android:id="@+id/passphrase_passphrase_again"
|
||||
|
||||
@@ -12,4 +12,9 @@
|
||||
android:id="@+id/check_delete_after_encrypt"
|
||||
android:title="@string/label_delete_after_encryption"
|
||||
android:checkable="true" />
|
||||
<item
|
||||
android:id="@+id/check_enable_compression"
|
||||
android:title="@string/label_enable_compression"
|
||||
android:checked="true"
|
||||
android:checkable="true" />
|
||||
</menu>
|
||||
@@ -4,4 +4,9 @@
|
||||
android:id="@+id/check_use_symmetric"
|
||||
android:title="@string/label_symmetric"
|
||||
android:checkable="true" />
|
||||
<item
|
||||
android:id="@+id/check_enable_compression"
|
||||
android:title="@string/label_enable_compression"
|
||||
android:checked="true"
|
||||
android:checkable="true" />
|
||||
</menu>
|
||||
@@ -15,4 +15,18 @@
|
||||
</attr>
|
||||
</declare-styleable>
|
||||
|
||||
<!-- Taken from Matt Allen Password Strength View
|
||||
https://github.com/matt-allen/android-password-strength-indicator -->
|
||||
<declare-styleable name="PasswordStrengthView">
|
||||
<attr name="strength" format="enum">
|
||||
<enum name="weak" value="0" />
|
||||
<enum name="medium" value="1" />
|
||||
<enum name="strong" value="2" />
|
||||
</attr>
|
||||
<attr name="showGuides" format="boolean" />
|
||||
<attr name="color_fail" format="color" />
|
||||
<attr name="color_weak" format="color" />
|
||||
<attr name="color_strong" format="color" />
|
||||
</declare-styleable>
|
||||
|
||||
</resources>
|
||||
@@ -162,6 +162,7 @@
|
||||
<string name="expiry_date_dialog_title">"Set expiry date"</string>
|
||||
<string name="label_first_keyserver_is_used">"(First keyserver listed is preferred)"</string>
|
||||
<string name="label_preferred">"preferred"</string>
|
||||
<string name="label_enable_compression">"Enable compression"</string>
|
||||
|
||||
<string name="user_id_no_name">"<no name>"</string>
|
||||
<string name="none">"<none>"</string>
|
||||
@@ -988,6 +989,7 @@
|
||||
<string name="msg_dc_clear_meta_size_unknown">"File size is unknown"</string>
|
||||
<string name="msg_dc_clear_meta_time">"Modification time: %s"</string>
|
||||
<string name="msg_dc_clear_signature_bad">"Signature check NOT OK!"</string>
|
||||
<string name="msg_dc_error_unsupported_hash_algo">"Unsupported and potentially insecure hash algorithm!"</string>
|
||||
<string name="msg_dc_clear_signature_check">"Verifying signature data"</string>
|
||||
<string name="msg_dc_clear_signature_ok">"Signature check OK"</string>
|
||||
<string name="msg_dc_clear_signature">"Saving signature data for later"</string>
|
||||
@@ -1003,7 +1005,7 @@
|
||||
<string name="msg_dc_error_pgp_exception">"Encountered OpenPGP Exception during operation!"</string>
|
||||
<string name="msg_dc_integrity_check_ok">"Integrity check OK!"</string>
|
||||
<string name="msg_dc_ok_meta_only">"Only metadata was requested, skipping decryption"</string>
|
||||
<string name="msg_dc_ok">"OK"</string>
|
||||
<string name="msg_dc_ok">"Decryption/Verification finished"</string>
|
||||
<string name="msg_dc_pass_cached">"Using passphrase from cache"</string>
|
||||
<string name="msg_dc_pending_nfc">"NFC token required, requesting user input…"</string>
|
||||
<string name="msg_dc_pending_passphrase">"Passphrase required, requesting user input…"</string>
|
||||
@@ -1015,6 +1017,7 @@
|
||||
<string name="msg_dc_trail_sym">"Encountered trailing, symmetrically encrypted data"</string>
|
||||
<string name="msg_dc_trail_unknown">"Encountered trailing data of unknown type"</string>
|
||||
<string name="msg_dc_unlocking">"Unlocking secret key"</string>
|
||||
<string name="msg_dc_old_symmetric_encryption_algo">"Potentially insecure encryption algorithm has been used!"</string>
|
||||
|
||||
<!-- Messages for VerifySignedLiteralData operation -->
|
||||
<string name="msg_vl">"Starting signature check"</string>
|
||||
@@ -1069,11 +1072,14 @@
|
||||
<string name="msg_pse_symmetric">"Preparing symmetric encryption"</string>
|
||||
|
||||
<string name="msg_crt_certifying">"Generating certifications"</string>
|
||||
<string name="msg_crt_certify_all">"Certifying all user IDs for key %s"</string>
|
||||
<plurals name="msg_crt_certify_some">
|
||||
<plurals name="msg_crt_certify_uids">
|
||||
<item quantity="one">"Certifying one user ID for key %2$s"</item>
|
||||
<item quantity="other">"Certifying %1$d user IDs for key %2$s"</item>
|
||||
</plurals>
|
||||
<plurals name="msg_crt_certify_uats">
|
||||
<item quantity="one">"Certifying one user attribute for key %2$s"</item>
|
||||
<item quantity="other">"Certifying %1$d user attributes for key %2$s"</item>
|
||||
</plurals>
|
||||
<string name="msg_crt_error_self">"Cannot issue self-certificate like this!"</string>
|
||||
<string name="msg_crt_error_master_not_found">"Master key not found!"</string>
|
||||
<string name="msg_crt_error_nothing">"No keys certified!"</string>
|
||||
|
||||
@@ -1,52 +1,23 @@
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<PreferenceCategory android:title="@string/section_defaults">
|
||||
<CheckBoxPreference
|
||||
android:key="writeVersionHeader"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_write_version_header"
|
||||
android:summary="@string/label_write_version_header_summary" />
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:key="defaultEncryptionAlgorithm"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_encryption_algorithm" />
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:key="defaultHashAlgorithm"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_hash_algorithm" />
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:key="defaultMessageCompression"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_message_compression" />
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:key="defaultFileCompression"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_file_compression" />
|
||||
<CheckBoxPreference
|
||||
android:key="defaultAsciiArmor"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_ascii_armor" />
|
||||
</PreferenceCategory>
|
||||
<PreferenceCategory android:title="@string/section_passphrase_cache">
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:entries="@array/passphrase_cache_ttl_entries"
|
||||
android:entryValues="@array/passphrase_cache_ttl_values"
|
||||
android:key="passphraseCacheTtl"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_passphrase_cache_ttl" />
|
||||
<CheckBoxPreference
|
||||
android:key="passphraseCacheSubs"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_passphrase_cache_subs" />
|
||||
<CheckBoxPreference
|
||||
android:key="useDefaultYubikeyPin"
|
||||
android:persistent="false"
|
||||
android:defaultValue="true"
|
||||
android:title="@string/label_use_default_yubikey_pin"
|
||||
android:summary="@string/label_label_use_default_yubikey_pin_summary" />
|
||||
<CheckBoxPreference
|
||||
android:key="useNumKeypadForYubikeyPin"
|
||||
android:persistent="false"
|
||||
android:defaultValue="false"
|
||||
android:title="@string/label_use_num_keypad_for_yubikey_pin" />
|
||||
</PreferenceCategory>
|
||||
<org.sufficientlysecure.keychain.ui.widget.IntegerListPreference
|
||||
android:entries="@array/passphrase_cache_ttl_entries"
|
||||
android:entryValues="@array/passphrase_cache_ttl_values"
|
||||
android:key="passphraseCacheTtl"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_passphrase_cache_ttl" />
|
||||
<CheckBoxPreference
|
||||
android:key="passphraseCacheSubs"
|
||||
android:persistent="false"
|
||||
android:title="@string/label_passphrase_cache_subs" />
|
||||
<CheckBoxPreference
|
||||
android:key="useDefaultYubikeyPin"
|
||||
android:persistent="false"
|
||||
android:defaultValue="true"
|
||||
android:title="@string/label_use_default_yubikey_pin"
|
||||
android:summary="@string/label_label_use_default_yubikey_pin_summary" />
|
||||
<CheckBoxPreference
|
||||
android:key="useNumKeypadForYubikeyPin"
|
||||
android:persistent="false"
|
||||
android:defaultValue="false"
|
||||
android:title="@string/label_use_num_keypad_for_yubikey_pin" />
|
||||
</PreferenceScreen>
|
||||
|
||||
@@ -4,5 +4,5 @@
|
||||
android:title="@string/section_cloud_search" />
|
||||
<header
|
||||
android:fragment="org.sufficientlysecure.keychain.ui.SettingsActivity$AdvancedPrefsFragment"
|
||||
android:title="@string/section_advanced" />
|
||||
android:title="@string/section_passphrase_cache" />
|
||||
</preference-headers>
|
||||
|
||||