Merge branch 'linked-identities' (and fix OperationHelper ids)

Merge Linked Identities.

Also includes an important fix for OperationHelper ids, which had an
error in the bit mask logic.

Conflicts:
	Graphics/update-drawables.sh
	OpenKeychain/build.gradle
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/operations/results/OperationResult.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainProvider.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/ProviderHelper.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/CertifyActionsParcel.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/KeychainIntentService.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/CreateYubiKeyImportFragment.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/KeyAdapter.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/CertifyKeySpinner.java
	OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
	OpenKeychain/src/main/res/anim/fade_in.xml
	OpenKeychain/src/main/res/anim/fade_out.xml
	OpenKeychain/src/main/res/layout/decrypt_text_fragment.xml
	OpenKeychain/src/main/res/layout/encrypt_decrypt_overview_fragment.xml
	OpenKeychain/src/main/res/layout/view_key_fragment.xml
	OpenKeychain/src/main/res/menu/key_view.xml
	OpenKeychain/src/main/res/values/strings.xml
	OpenKeychain/src/test/java/org/sufficientlysecure/keychain/operations/CertifyOperationTest.java
	README.md
This commit is contained in:
Vincent Breitmoser
2015-08-29 13:28:56 +02:00
115 changed files with 6277 additions and 97 deletions

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="-10" android:toYDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="200"
/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="200"
/>
</set>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
android:interpolator="@android:anim/bounce_interpolator"
android:duration="400"
/>
</set>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="10" android:toYDelta="0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="200"
/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="200"
/>
</set>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="0.0" android:toYDelta="10"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="200"
/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="150"
/>
</set>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="150"
/>
</set>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromYDelta="0.0" android:toYDelta="-10"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="200"
/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0"
android:interpolator="@android:anim/decelerate_interpolator"
android:duration="150"
/>
</set>

Binary file not shown.

After

Width:  |  Height:  |  Size: 667 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 544 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 999 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1010 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 880 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 429 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 736 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 717 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<size
android:height="1px"
android:width="1000dp" />
<solid android:color="#eeeeee" />
</shape>

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<org.sufficientlysecure.keychain.ui.widget.CertListWidget
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/linked_id_certs"
tools:showIn="@layout/linked_id_view_fragment">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
tools:ignore="UseCompoundDrawables">
<TextView
android:id="@+id/cert_collapsed_list"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:gravity="center_vertical"
android:layout_weight="1"
tools:text="The identity is not yet verified or confirmed."
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:src="@drawable/ic_expand_more_black_24dp"
android:id="@+id/cert_expand_button"
android:padding="4dp"
/>
</LinearLayout>
<ListView
android:id="@+id/cert_expanded_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
</org.sufficientlysecure.keychain.ui.widget.CertListWidget>

View File

@@ -8,11 +8,11 @@
<LinearLayout
android:visibility="gone"
tools:visibility="visible"
android:id="@+id/decrypt_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:orientation="vertical"
tools:visibility="visible">
<ScrollView
android:fillViewport="true"
@@ -39,12 +39,12 @@
</LinearLayout>
<LinearLayout
android:visibility="gone"
android:id="@+id/decrypt_error_overlay"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_vertical">
android:gravity="center_vertical"
android:visibility="gone">
<TextView
android:layout_width="wrap_content"
@@ -65,4 +65,4 @@
android:layout_gravity="center_horizontal" />
</LinearLayout>
</org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator>
</org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator>

View File

@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
@@ -13,7 +14,8 @@
android:id="@+id/keyspinner_key_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/choice_none"
android:textAppearance="?android:attr/textAppearanceMedium" />
android:textAppearance="?android:attr/textAppearanceMedium"
tools:text="@string/choice_none"
/>
</LinearLayout>

View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">
<TextView
android:drawableLeft="@drawable/linked_dns"
android:drawablePadding="8dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_1_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_1_2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_1_3" />
<EditText
android:id="@+id/linked_create_dns_domain"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:ems="10"
android:inputType="textUri"
android:layout_gravity="center_horizontal"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_1_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:clickable="true"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_next"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
android:drawableRight="@drawable/ic_chevron_right_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical|right"
android:clickable="true"
style="?android:attr/borderlessButtonStyle"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,164 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_2_1" />
<TextView
android:id="@+id/linked_create_dns_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center_horizontal"
android:textIsSelectable="true"
android:textAppearance="?android:attr/textAppearanceSmall"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_2_2" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center_horizontal"
style="?android:buttonBarStyle"
android:showDividers="middle">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@drawable/ic_content_copy_grey_24dp"
android:drawableStart="@android:drawable/ic_menu_share"
android:text="Copy"
android:id="@+id/button_save"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_share"
android:drawableStart="@android:drawable/ic_menu_share"
android:text="Share"
android:id="@+id/button_send"
/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_2_3" />
<include layout="@layout/linked_create_verify" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_dns_2_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_finish"
android:minHeight="?android:attr/listPreferredItemHeight"
android:drawableRight="@drawable/ic_person_add_grey_24dp"
android:drawablePadding="8dp"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:gravity="center_vertical|right"
android:clickable="true"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:drawableLeft="@drawable/linked_github"
android:drawablePadding="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_1_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_1_2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_1_3" />
<EditText
android:id="@+id/linked_create_github_handle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:layout_marginTop="16dp"
android:ems="10"
android:layout_gravity="center_horizontal"
android:hint="@string/linked_create_github_handle"/>
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:clickable="true"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_next"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableRight="@drawable/ic_chevron_right_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical|right"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,152 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_2_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_2_2" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center_horizontal"
style="?android:buttonBarStyle">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_send"
android:drawableStart="@android:drawable/ic_menu_send"
android:text="Post Gist"
android:id="@+id/button_send"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_share"
android:drawableStart="@android:drawable/ic_menu_share"
android:text="Share"
android:id="@+id/button_share"
/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_2_3" />
<include layout="@layout/linked_create_verify" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_github_2_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:clickable="true"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_finish"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
android:drawableRight="@drawable/ic_person_add_grey_24dp"
android:drawablePadding="8dp"
style="?android:attr/borderlessButtonStyle"
android:gravity="center_vertical|right"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,129 @@
<?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="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/linked_https"
android:drawablePadding="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_1_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_1_2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_1_3" />
<org.sufficientlysecure.keychain.ui.widget.PrefixedEditText
android:id="@+id/linked_create_https_uri"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:layout_marginTop="16dp"
android:ems="10"
android:inputType="textUri"
android:layout_gravity="center_horizontal"
custom:prefix="https://"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_1_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:clickable="true"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_next"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
android:drawableRight="@drawable/ic_chevron_right_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical|right"
style="?android:attr/borderlessButtonStyle"
android:clickable="true"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,165 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_2_1" />
<EditText
android:id="@+id/linked_create_https_uri"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:layout_marginTop="8dp"
android:hint="uri"
android:ems="10"
android:layout_gravity="center_horizontal"
android:inputType="textUri|none"
android:enabled="false"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_2_2" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center_horizontal"
style="?android:buttonBarStyle"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_save"
android:drawableStart="@android:drawable/ic_menu_save"
android:text="Save"
android:id="@+id/button_save"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_share"
android:drawableStart="@android:drawable/ic_menu_share"
android:text="Share"
android:id="@+id/button_send"
/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_2_3" />
<include layout="@layout/linked_create_verify" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_https_2_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_finish"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
android:drawableRight="@drawable/ic_person_add_grey_24dp"
android:drawablePadding="8dp"
style="?android:attr/borderlessButtonStyle"
android:gravity="center_vertical|right"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,123 @@
<?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="wrap_content"
android:layout_height="match_parent"
>
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/linked_twitter"
android:drawablePadding="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_twitter_1_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_twitter_1_2" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_twitter_1_3" />
<org.sufficientlysecure.keychain.ui.widget.PrefixedEditText
android:id="@+id/linked_create_twitter_handle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:layout_marginTop="16dp"
android:ems="10"
android:layout_gravity="center_horizontal"
android:inputType="text"
android:hint="@string/linked_create_twitter_handle"
custom:prefix="\@"
/>
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:clickable="true"
android:gravity="center_vertical"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_next"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableRight="@drawable/ic_chevron_right_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical|right"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="false"
android:layout_above="@+id/create_key_button_divider">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_twitter_2_1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="@string/linked_create_twitter_2_2" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_gravity="center_horizontal"
style="?android:buttonBarStyle">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_send"
android:drawableStart="@android:drawable/ic_menu_send"
android:text="Tweet"
android:id="@+id/button_send"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
style="?android:buttonBarButtonStyle"
android:drawableLeft="@android:drawable/ic_menu_share"
android:drawableStart="@android:drawable/ic_menu_share"
android:text="Share"
android:id="@+id/button_share"
/>
</LinearLayout>
<TextView
android:id="@+id/linked_tweet_published"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
tools:text="@string/linked_create_twitter_2_3" />
<include layout="@layout/linked_create_verify" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_create_twitter_2_4" />
</LinearLayout>
</ScrollView>
<View
android:id="@+id/create_key_button_divider"
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:background="?android:attr/listDivider"
android:layout_alignTop="@+id/create_key_buttons"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:id="@+id/create_key_buttons">
<TextView
android:id="@+id/back_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_back"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
style="?android:attr/borderlessButtonStyle"
android:drawableLeft="@drawable/ic_chevron_left_grey_24dp"
android:drawablePadding="8dp"
android:gravity="center_vertical"
android:clickable="true"
android:layout_gravity="center_vertical" />
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:background="?android:attr/listDivider" />
<TextView
android:id="@+id/next_button"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/btn_finish"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAllCaps="true"
android:drawableRight="@drawable/ic_person_add_grey_24dp"
android:drawablePadding="8dp"
style="?android:attr/borderlessButtonStyle"
android:gravity="center_vertical|right"
android:layout_gravity="center_vertical" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
tools:showIn="@layout/linked_create_https_fragment_step2">
<ViewAnimator
android:id="@+id/verify_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="16dip"
android:layout_marginStart="16dip"
android:layout_gravity="center_vertical"
android:inAnimation="@anim/fade_in"
android:outAnimation="@anim/fade_out"
>
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:id="@+id/verify_image"
android:src="@drawable/status_signature_unverified_cutout_24dp"
/>
<ProgressBar
android:layout_width="24dp"
android:layout_height="24dp"
android:indeterminateOnly="true" />
</ViewAnimator>
<TextView
android:id="@+id/verify_status"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_verify_pending"
android:layout_marginLeft="16dip"
android:layout_marginStart="16dip"
android:layout_weight="1"
/>
<ViewAnimator
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="16dp"
android:layout_marginEnd="16dip"
android:inAnimation="@anim/fade_in"
android:outAnimation="@anim/fade_out"
android:id="@+id/verify_buttons"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:buttonBarButtonStyle"
android:text="@string/linked_button_verify"
android:id="@+id/button_verify"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:buttonBarButtonStyle"
android:text="@string/linked_button_retry"
android:id="@+id/button_retry"
/>
<Space
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</ViewAnimator>
</LinearLayout>

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?android:attr/listPreferredItemHeight"
android:orientation="horizontal"
android:singleLine="true"
tools:showIn="@layout/linked_id_view_fragment">
<ImageView
android:layout_width="32dp"
android:layout_height="32dp"
android:id="@+id/linked_id_type_icon"
android:layout_marginLeft="14dp"
android:layout_marginStart="14dp"
tools:src="@drawable/linked_dns"
android:layout_gravity="center_vertical"
android:scaleType="fitCenter" />
<LinearLayout
android:orientation="vertical"
android:layout_gravity="center_vertical"
android:layout_width="0dip"
android:layout_marginLeft="8dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<TextView
android:id="@+id/linked_id_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="Title"
android:textAppearance="?android:attr/textAppearanceMedium"
/>
<TextView
android:id="@+id/linked_id_comment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:text="comment"
android:textAppearance="?android:attr/textAppearanceSmall"
/>
</LinearLayout>
<ViewAnimator
android:id="@+id/linked_id_certified"
android:layout_width="22dp"
android:layout_height="wrap_content"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:outAnimation="@anim/fade_out_down"
android:inAnimation="@anim/fade_in_up"
android:layout_gravity="center_vertical"
android:orientation="vertical">
<ImageView
android:id="@+id/linked_id_certified_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
tools:src="@drawable/status_signature_unknown_cutout_24dp"
/>
<Space
android:layout_height="wrap_content"
android:layout_width="wrap_content" />
</ViewAnimator>
</LinearLayout>

View File

@@ -0,0 +1,193 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="16dp"
android:paddingBottom="16dp"
android:paddingLeft="16dp"
android:paddingRight="16dp">
<android.support.v7.widget.CardView
android:id="@+id/card_linked_ids"
android:transitionName="card_linked_ids"
android:layout_width="match_parent"
android:layout_height="wrap_content"
card_view:cardBackgroundColor="@android:color/white"
card_view:cardElevation="2dp"
card_view:cardUseCompatPadding="true"
card_view:cardCornerRadius="4dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true"
android:orientation="vertical">
<TextView
style="@style/CardViewHeader"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/card_linked_identity" />
<include layout="@layout/linked_id_item" />
<ViewAnimator
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/linked_verify_container"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:measureAllChildren="false"
>
<include layout="@layout/cert_list_widget" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:baselineAligned="false"
android:animateLayoutChanges="true"
>
<TextSwitcher
android:id="@+id/linked_cert_text"
android:layout_height="wrap_content"
android:layout_width="0dip"
android:layout_marginLeft="8dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:inAnimation="@anim/fade_in_quick"
android:outAnimation="@anim/fade_out_quick"
android:measureAllChildren="false"
android:layout_weight="1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall" />
</TextSwitcher>
<ViewAnimator
android:layout_width="22dp"
android:layout_height="22dp"
android:layout_marginLeft="16dp"
android:layout_marginRight="4dp"
android:layout_gravity="center"
android:id="@+id/linked_cert_progress"
android:inAnimation="@anim/fade_in"
android:outAnimation="@anim/fade_out">
<ProgressBar
android:layout_width="22dp"
android:layout_height="22dp"
android:indeterminate="true"
/>
<ImageView
android:id="@+id/status_icon_verified"
android:layout_width="22dp"
android:layout_height="wrap_content"
android:src="@drawable/status_signature_verified_inner_24dp"
/>
<ImageView
android:id="@+id/status_icon_invalid"
android:layout_width="22dp"
android:layout_height="wrap_content"
android:src="@drawable/status_signature_invalid_cutout_24dp"
/>
</ViewAnimator>
</LinearLayout>
</ViewAnimator>
<!-- this layout is used for a highlight thing, so we use padding instead of margin -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="14dp"
android:paddingRight="14dp"
android:id="@+id/cert_key_spincontainer"
android:visibility="gone"
tools:visibility="visible"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_marginRight="4dp"
android:layout_marginEnd="4dp"
android:text="@string/add_keys_my_key" />
<org.sufficientlysecure.keychain.ui.widget.CertifyKeySpinner
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/cert_key_spinner">
</org.sufficientlysecure.keychain.ui.widget.CertifyKeySpinner>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="right|end">
<Button
android:id="@+id/button_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linked_button_view"
android:textColor="@color/link_text_material_light"
style="?android:attr/borderlessButtonStyle"
/>
<ViewAnimator
android:id="@+id/button_animator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inAnimation="@anim/fade_in"
android:outAnimation="@anim/fade_out">
<Button
android:id="@+id/button_verify"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linked_button_verify"
android:textColor="@color/link_text_material_light"
style="?android:attr/borderlessButtonStyle" />
<Button
android:id="@+id/button_retry"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linked_button_retry"
android:textColor="@color/link_text_material_light"
style="?android:attr/borderlessButtonStyle" />
<Button
android:id="@+id/button_confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/linked_button_confirm"
android:textColor="@color/link_text_material_light"
style="?android:attr/borderlessButtonStyle" />
</ViewAnimator>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</ScrollView>

View File

@@ -0,0 +1,188 @@
<?xml version="1.0" encoding="UTF-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_select_1"
android:id="@+id/textView"
android:layout_weight="1" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/linked_select_2"
android:layout_weight="1" />
<org.sufficientlysecure.keychain.ui.widget.FixedListView
android:id="@+id/view_key_user_ids"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginBottom="4dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:id="@+id/linked_create_https_button"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:background="?android:selectableItemBackground"
android:orientation="horizontal">
<!-- separate ImageView required for recoloring -->
<ImageView
android:id="@+id/certify_key_action_certify_image"
android:layout_width="60dip"
android:layout_height="60dip"
android:padding="8dp"
android:src="@drawable/linked_https"
android:layout_gravity="center_vertical" />
<TextView
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="0dip"
android:layout_height="match_parent"
android:text="@string/linked_title_https"
android:layout_weight="1"
android:gravity="center_vertical" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginBottom="4dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:id="@+id/linked_create_dns_button"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:background="?android:selectableItemBackground"
android:orientation="horizontal">
<!-- separate ImageView required for recoloring -->
<ImageView
android:layout_width="60dip"
android:layout_height="60dip"
android:padding="8dp"
android:src="@drawable/linked_dns"
android:layout_gravity="center"
/>
<TextView
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="0dip"
android:layout_height="match_parent"
android:text="@string/linked_title_dns"
android:layout_weight="1"
android:gravity="center_vertical" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginBottom="4dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:id="@+id/linked_create_twitter_button"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:background="?android:selectableItemBackground"
android:orientation="horizontal">
<!-- separate ImageView required for recoloring -->
<ImageView
android:layout_width="60dip"
android:layout_height="60dip"
android:padding="8dp"
android:src="@drawable/linked_twitter"
android:layout_gravity="center"
/>
<TextView
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="0dip"
android:layout_height="match_parent"
android:text="@string/linked_title_twitter"
android:layout_weight="1"
android:gravity="center_vertical" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginBottom="4dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:id="@+id/linked_create_github_button"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:clickable="true"
android:background="?android:selectableItemBackground"
android:orientation="horizontal">
<!-- separate ImageView required for recoloring -->
<ImageView
android:layout_width="60dip"
android:layout_height="60dip"
android:padding="8dp"
android:src="@drawable/linked_github"
android:layout_gravity="center"
/>
<TextView
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="0dip"
android:layout_height="match_parent"
android:text="@string/linked_title_github"
android:layout_weight="1"
android:gravity="center_vertical" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dip"
android:layout_marginBottom="4dp"
android:background="?android:attr/listDivider" />
</LinearLayout>
</ScrollView>

View File

@@ -2,6 +2,7 @@
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:paddingBottom="16dp"
android:paddingLeft="16dp"
@@ -34,7 +35,63 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp" />
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
android:id="@+id/card_linked_ids"
android:transitionName="card_linked_ids"
android:layout_gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
tools:visibility="visible"
card_view:cardBackgroundColor="@android:color/white"
card_view:cardElevation="2dp"
card_view:cardUseCompatPadding="true"
card_view:cardCornerRadius="4dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
style="@style/CardViewHeader"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/section_linked_identities" />
<org.sufficientlysecure.keychain.ui.widget.FixedListView
android:id="@+id/view_key_linked_ids"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp" />
<TextView
android:id="@+id/view_key_linked_ids_expander"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:gravity="center_vertical"
android:drawableTop="@drawable/divider"
android:drawableRight="@drawable/ic_expand_more_black_24dp"
android:drawableEnd="@drawable/ic_expand_more_black_24dp"
android:drawablePadding="3dp"
android:clickable="true"
android:text="@string/linked_ids_more_unknown"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:background="?android:selectableItemBackground"
android:visibility="gone"
tools:visibility="visible"
/>
</LinearLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
@@ -83,7 +140,9 @@
android:text="@string/view_key_fragment_no_system_contact"
android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</LinearLayout>

View File

@@ -14,4 +14,4 @@
android:icon="@drawable/ic_share_black_24dp"
app:showAsAction="ifRoom" />
</menu>
</menu>

View File

@@ -43,4 +43,9 @@
android:visible="false"
android:title="@string/menu_certify_fingerprint_word" />
</menu>
<item
android:id="@+id/menu_key_view_add_linked_identity"
app:showAsAction="never"
android:title="@string/menu_linked_add_identity" />
</menu>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
<changeBounds />
</transitionSet>

View File

@@ -33,4 +33,8 @@
<attr name="color_strong" format="color" />
</declare-styleable>
<declare-styleable name="PrefixedEditText">
<attr name="prefix" format="string" />
</declare-styleable>
</resources>

View File

@@ -14,6 +14,7 @@
<string name="title_decrypt">"Decrypt"</string>
<string name="title_add_subkey">"Add subkey"</string>
<string name="title_edit_key">"Edit Key"</string>
<string name="title_linked_create">"Create a Linked Identity"</string>
<string name="title_preferences">"Settings"</string>
<string name="title_api_registered_apps">"Apps"</string>
<string name="title_key_server_preference">"OpenPGP keyservers"</string>
@@ -83,8 +84,8 @@
<string name="btn_back">"Back"</string>
<string name="btn_no">"No"</string>
<string name="btn_match">"Fingerprints match"</string>
<string name="btn_share_encrypted_signed">"Encrypt and share text"</string>
<string name="btn_copy_encrypted_signed">"Encrypt and copy text"</string>
<string name="btn_share_encrypted_signed">"Encrypt/sign and share text"</string>
<string name="btn_copy_encrypted_signed">"Encrypt/sign and copy text"</string>
<string name="btn_view_cert_key">"View certification key"</string>
<string name="btn_create_key">"Create key"</string>
<string name="btn_add_files">"Add file(s)"</string>
@@ -262,6 +263,7 @@
<string name="choice_4hours">"4 hours"</string>
<string name="choice_8hours">"8 hours"</string>
<string name="choice_forever">"forever"</string>
<string name="choice_select_cert">"Select a Key"</string>
<string name="dsa">"DSA"</string>
<string name="elgamal">"ElGamal"</string>
<string name="rsa">"RSA"</string>
@@ -510,11 +512,11 @@
<!-- Import result toast -->
<plurals name="import_keys_added_and_updated_1">
<item quantity="one">"Successfully imported key"</item>
<item quantity="one">"Successfully imported one key"</item>
<item quantity="other">"Successfully imported %1$d keys"</item>
</plurals>
<plurals name="import_keys_added_and_updated_2">
<item quantity="one">"and updated key%2$s."</item>
<item quantity="one">"and updated one key%2$s."</item>
<item quantity="other">"and updated %1$d keys%2$s."</item>
</plurals>
<plurals name="import_keys_added">
@@ -1330,6 +1332,29 @@
<string name="msg_revoke_key_fail">"Failed revoking key"</string>
<string name="msg_revoke_ok">"Successfully revoked key"</string>
<!-- Linked Identity verification -->
<string name="msg_lv">"Verifying linked identity…"</string>
<string name="msg_lv_match">"Searching for token"</string>
<string name="msg_lv_match_error">"No token found in resource!"</string>
<string name="msg_lv_fp_ok">"Fingerprint OK."</string>
<string name="msg_lv_fp_error">"Fingerprint mismatch!"</string>
<string name="msg_lv_error_twitter_auth">"Error obtaining Twitter auth token!"</string>
<string name="msg_lv_error_twitter_handle">"Twitter account handle mismatch in response!"</string>
<string name="msg_lv_error_twitter_response">"Unexpected response from Twitter API!"</string>
<string name="msg_lv_error_github_handle">"Github account handle mismatch in response!"</string>
<string name="msg_lv_error_github_not_found">"Gist contains no matching files!"</string>
<string name="msg_lv_fetch">"Fetching URI '%s'"</string>
<string name="msg_lv_fetch_redir">"Following redirect to '%s'"</string>
<string name="msg_lv_fetch_ok">"Successfully fetched (HTTP %s)"</string>
<string name="msg_lv_fetch_error">"Server error (HTTP %s)"</string>
<string name="msg_lv_fetch_error_url">"URL is malformed!"</string>
<string name="msg_lv_fetch_error_io">"IO Error!"</string>
<string name="msg_lv_fetch_error_format">"Format error!"</string>
<string name="msg_lv_fetch_error_nothing">"Resource not found!"</string>
<string name="msg_acc_saved">"Account saved"</string>
<string name="msg_download_success">"Downloaded successfully!"</string>
@@ -1519,4 +1544,85 @@
<string name="error_scan_match">"Fingerprints did not match!"</string>
<string name="error_expiry_past">"Expiry date is in the past!"</string>
<string name="linked_create_https_1_1">"By creating a Linked Identity of this type, you can link your key to a website you control."</string>
<string name="linked_create_https_1_2">"To do this, you publish a text file on this website, then create a Linked Identity which links to it."</string>
<string name="linked_create_https_1_3">"Please enter a URL where you are able to place a text file for proof. Note that your server must support https and have a valid TLS certificate!"</string>
<string name="linked_create_https_1_4">"Example: https://example.com/pgpkey.txt"</string>
<string name="linked_create_https_created">"The proof file has been created. For the next step, you should save and upload it to the URI you indicated:"</string>
<string name="linked_create_https_2_1">"A proof file for this URI has been created:"</string>
<string name="linked_create_https_2_2">"For the next step, you should save and upload this file."</string>
<string name="linked_create_https_2_3">"Make sure the file is reachable at the correct URI, then verify your setup."</string>
<string name="linked_create_https_2_4">"After successful verification, press the Finish button to add the Linked Identity to your keyring and finish the process."</string>
<string name="linked_create_twitter_1_1">"By creating a Linked Identity of this type, you can link your key to a Twitter account you control."</string>
<string name="linked_create_twitter_1_2">"To do this, you publish a specific Tweet on your timeline, then create a Linked Identity which links to this Tweet."</string>
<string name="linked_create_twitter_1_3">"Please enter your Twitter screen name to proceed."</string>
<string name="linked_create_twitter_handle">Twitter Handle</string>
<string name="linked_create_twitter_2_1">"Click either button to tweet the message!"</string>
<string name="linked_create_twitter_2_2">"You can edit the Tweet before posting it, so long as the text inside the brackets is unmodified."</string>
<string name="linked_create_twitter_2_3">"Once your Tweet is published as &lt;b&gt;@%s&lt;/b&gt;, click the Verify button to scan your timeline for it."</string>
<string name="linked_create_twitter_2_4">"After successful verification, press the Finish button to add the Linked Identity to your keyring and finish the process."</string>
<string name="linked_create_github_1_1">"By creating a Linked Identity of this type, you can link your key to a Github account you control."</string>
<string name="linked_create_github_1_2">"To do this, you publish a specific Gist on your timeline, then create a Linked Identity which links to this Gist."</string>
<string name="linked_create_github_1_3">"Please enter your Twitter screen name to proceed."</string>
<string name="linked_create_github_handle">Github Handle</string>
<string name="linked_create_github_2_1">"Click either button to post the gist!"</string>
<string name="linked_create_github_2_2">"You can edit the Gist before posting it, so long as the text inside the brackets is unmodified."</string>
<string name="linked_create_github_2_3">"Once your Gist is published, click the Verify button to scan your timeline for it."</string>
<string name="linked_create_github_2_4">"After successful verification, press the Finish button to add the Linked Identity to your keyring and finish the process."</string>
<string name="linked_create_dns_1_1">"By creating a Linked Identity of this type, you can link your key to a domain name you control."</string>
<string name="linked_create_dns_1_2">"To do this, you create a specific TXT record for the domain, then create a Linked Identity which links to this record."</string>
<!-- An Identity of this type is especially appropriate if your email address is at the same domain. -->
<string name="linked_create_dns_1_3">"Please enter a fully qualified domain name to proceed."</string>
<string name="linked_create_dns_1_4">"Example: subdomain.example.com"</string>
<string name="linked_create_dns_2_1">"Your proof text:"</string>
<string name="linked_create_dns_2_2">"For the next step, bla bla"</string>
<string name="linked_create_dns_2_3">"More bla:"</string>
<string name="linked_create_dns_2_4">"After successful verification, press the Finish button to add the Linked Identity to your keyring and finish the process."</string>
<string name="linked_create_verify">"Verify"</string>
<string name="linked_text_clipboard">Text has been copied to clipboard</string>
<string name="linked_verified_https">"The link between this Website and key was securely verified. <b>If you believe the Website is genuine</b>, confirm this verification with your key."</string>
<string name="linked_verified_github">"The link between this Github account and key was securely verified. <b>If you believe the account is genuine</b>, confirm this verification with your key."</string>
<string name="linked_verified_dns">"The link between this Domain Name and key was securely verified. <b>If you believe the Domain is genuine</b>, confirm this verification with your key."</string>
<string name="linked_verified_twitter">"The link between this Twitter account and key was securely verified. <b>If you believe the account is genuine</b>, confirm this verification with your key."</string>
<string name="linked_verified_secret_https">"The link between your Website and key was securely verified. Everything looks in order."</string>
<string name="linked_verified_secret_github">"The link between your Github account and key was securely verified. Everything looks in order."</string>
<string name="linked_verified_secret_dns">"The link between your Domain Name and key was securely verified. Everything looks in order."</string>
<string name="linked_verified_secret_twitter">"The link between this Twitter account and key was securely verified. Everything looks in order."</string>
<plurals name="linked_id_expand">
<item quantity="one">"There is one more unknown identity type"</item>
<item quantity="other">"There are %d more unknown identity types"</item>
</plurals>
<string name="linked_select_1">"A \'linked identity\' connects your pgp key to a resource on the web."</string>
<string name="linked_select_2">"Please select a type:"</string>
<string name="linked_id_generic_text">"This file claims ownership of the OpenPGP key with long id %2$s.\n\nToken for proof:\n%1$s"</string>
<string name="linked_id_github_text">"This Gist confirms the Linked Identity in my OpenPGP key, and links it to this Github account.\n\nToken for proof:\n%1$s"</string>
<string name="linked_verifying">"Verifying…"</string>
<string name="linked_verify_success">"Verified!"</string>
<string name="linked_verify_error">"Verification error!"</string>
<string name="linked_verify_pending">"Not yet verified"</string>
<string name="linked_need_verify">The resource needs to be verified before you can proceed!</string>
<string name="menu_linked_add_identity">"Add Linked Identity"</string>
<string name="section_linked_identities">"Linked Identities"</string>
<string name="btn_finish">"Finish"</string>
<string name="linked_title_https">Website (HTTPS)</string>
<string name="linked_title_dns">Domain Name (DNS)</string>
<string name="linked_title_github">Github</string>
<string name="linked_title_twitter">Twitter</string>
<string name="card_linked_identity">Linked Identity</string>
<string name="linked_button_verify">Verify</string>
<string name="linked_button_retry">Retry</string>
<string name="linked_button_confirm">Confirm</string>
<string name="linked_button_view">View</string>
<string name="linked_text_verifying">Verifying…</string>
<string name="linked_text_error">Error</string>
<string name="linked_text_confirming">Confirming…</string>
<string name="linked_ids_more_unknown">%d more unknown identity types</string>
<string name="title_linked_id_create">Create Linked Identity</string>
</resources>