diff options
Diffstat (limited to 'OpenKeychain/src/main/res')
20 files changed, 1621 insertions, 3 deletions
diff --git a/OpenKeychain/src/main/res/anim/fade_in.xml b/OpenKeychain/src/main/res/anim/fade_in.xml new file mode 100644 index 000000000..5e2b8be60 --- /dev/null +++ b/OpenKeychain/src/main/res/anim/fade_in.xml @@ -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="700" + /> +</set>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/anim/fade_out.xml b/OpenKeychain/src/main/res/anim/fade_out.xml new file mode 100644 index 000000000..f96bf3cb3 --- /dev/null +++ b/OpenKeychain/src/main/res/anim/fade_out.xml @@ -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/accelerate_interpolator" + android:duration="300" + /> +</set>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/drawable/dns.png b/OpenKeychain/src/main/res/drawable/dns.png Binary files differnew file mode 100644 index 000000000..69d0a4fa8 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable/dns.png diff --git a/OpenKeychain/src/main/res/drawable/ssl_lock.png b/OpenKeychain/src/main/res/drawable/ssl_lock.png Binary files differnew file mode 100644 index 000000000..00c4d8e4f --- /dev/null +++ b/OpenKeychain/src/main/res/drawable/ssl_lock.png diff --git a/OpenKeychain/src/main/res/drawable/twitter.png b/OpenKeychain/src/main/res/drawable/twitter.png Binary files differnew file mode 100644 index 000000000..3533e0488 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable/twitter.png diff --git a/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step1.xml b/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step1.xml new file mode 100644 index 000000000..9665f3e80 --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step1.xml @@ -0,0 +1,143 @@ +<?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"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="16dp" + android:orientation="horizontal"> + + <ImageView + android:layout_width="60dip" + android:layout_height="60dip" + android:padding="8dp" + android:src="@drawable/dns" + android:layout_gravity="center_vertical" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_create_dns_1_1" /> + + </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_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" /> + + <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_5" /> + + </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" + style="@style/SelectableItem" + android:minHeight="?android:attr/listPreferredItemHeight" + 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:drawableRight="@drawable/ic_play_arrow_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step2.xml b/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step2.xml new file mode 100644 index 000000000..af5937067 --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_dns_fragment_step2.xml @@ -0,0 +1,186 @@ +<?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_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" /> + + <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="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_gravity="center_horizontal"> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Share" + android:id="@+id/button_send" + android:layout_marginRight="8dip"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Save" + android:id="@+id/button_save" + android:layout_marginLeft="8dip"/> + + </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" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp"> + + <ImageView + android:id="@+id/verify_image" + android:src="@drawable/status_signature_unverified_cutout_24dp" + android:layout_gravity="center_vertical" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + /> + + <ProgressBar + android:id="@+id/verify_progress" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:indeterminateOnly="true"/> + + <TextView + android:id="@+id/verify_status" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_verify_pending" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + android:layout_weight="1" + /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Verify" + android:id="@+id/button_verify" + android:layout_marginRight="16dp" + android:layout_marginEnd="16dip" + /> + + </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_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" + style="@style/SelectableItem" + 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:drawableRight="@drawable/ic_play_arrow_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step1.xml b/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step1.xml new file mode 100644 index 000000000..799de2997 --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step1.xml @@ -0,0 +1,138 @@ +<?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"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="16dp" + android:orientation="horizontal"> + + <ImageView + android:id="@+id/certify_key_action_certify_image" + android:layout_width="60dip" + android:layout_height="60dip" + android:padding="8dp" + android:src="@drawable/ssl_lock" + android:layout_gravity="center_vertical" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_create_https_1_1" /> + + </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_1_2" /> + + <org.sufficientlysecure.keychain.ui.widget.HttpsPrefixedText + 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" + /> + + <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" /> + + <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" + style="@style/SelectableItem" + android:minHeight="?android:attr/listPreferredItemHeight" + 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:drawableRight="@drawable/ic_play_arrow_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step2.xml b/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step2.xml new file mode 100644 index 000000000..e726c48be --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_https_fragment_step2.xml @@ -0,0 +1,190 @@ +<?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="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_gravity="center_horizontal"> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Share" + android:id="@+id/button_send" + android:layout_marginRight="8dip"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Save" + android:id="@+id/button_save" + android:layout_marginLeft="8dip"/> + + </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" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp"> + + <ImageView + android:id="@+id/verify_image" + android:src="@drawable/status_signature_unverified_cutout_24dp" + android:layout_gravity="center_vertical" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + /> + + <ProgressBar + android:id="@+id/verify_progress" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:indeterminateOnly="true"/> + + <TextView + android:id="@+id/verify_status" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_verify_pending" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + android:layout_weight="1" + /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Verify" + android:id="@+id/button_verify" + android:layout_marginRight="16dp" + android:layout_marginEnd="16dip" + /> + + </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_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" + style="@style/SelectableItem" + 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:drawableRight="@drawable/ic_done_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step1.xml b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step1.xml new file mode 100644 index 000000000..33db6ed5f --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step1.xml @@ -0,0 +1,130 @@ +<?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"> + + <LinearLayout + android:layout_marginTop="16dp" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal"> + + <ImageView + android:id="@+id/certify_key_action_certify_image" + android:layout_width="60dip" + android:layout_height="60dip" + android:padding="8dp" + android:src="@drawable/twitter" + android:layout_gravity="center_vertical" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_create_twitter_1_1" /> + + </LinearLayout> + + <EditText + 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:hint="@string/linked_create_twitter_handle"/> + + <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" /> + + </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" + style="@style/SelectableItem" + 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:drawableRight="@drawable/ic_play_arrow_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step2.xml b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step2.xml new file mode 100644 index 000000000..3ae871f5a --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step2.xml @@ -0,0 +1,144 @@ +<?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_twitter_2_1" /> + + <EditText + android:id="@+id/linked_create_twitter_custom" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:imeOptions="actionNext" + android:layout_marginTop="8dp" + android:hint="Custom Text" + android:ems="10" + android:layout_gravity="center_horizontal" + /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal"> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="16dp" + android:layout_weight="1" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_create_twitter_2_2" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="16dp" + android:textAppearance="?android:attr/textAppearanceSmall" + android:id="@+id/linked_create_twitter_textlen" + android:text="0/140" /> + + </LinearLayout> + + <EditText + android:id="@+id/linked_create_twitter_preview" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:imeOptions="actionNext" + android:layout_marginTop="8dp" + android:ems="10" + android:layout_gravity="center_horizontal" + android:inputType="textMultiLine" + android:enabled="false" + 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_twitter_2_3" /> + + </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:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + 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:drawableRight="@drawable/ic_play_arrow_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step3.xml b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step3.xml new file mode 100644 index 000000000..a37cf01cf --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_create_twitter_fragment_step3.xml @@ -0,0 +1,194 @@ +<?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_twitter_3_1" /> + + <EditText + android:id="@+id/linked_create_twitter_preview" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:imeOptions="actionNext" + android:layout_marginTop="8dp" + android:ems="10" + android:layout_gravity="center_horizontal" + android:inputType="textMultiLine" + android:enabled="false" + android:textSize="@dimen/abc_text_size_small_material"/> + + <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_3_2" /> + + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="8dp" + android:layout_gravity="center_horizontal"> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:drawableLeft="@android:drawable/ic_menu_send" + android:drawableStart="@android:drawable/ic_menu_send" + android:text="Tweet" + android:id="@+id/button_send" + android:layout_marginRight="8dip" /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:drawableLeft="@android:drawable/ic_menu_share" + android:drawableStart="@android:drawable/ic_menu_share" + android:text="Share" + android:id="@+id/button_share" + android:layout_marginLeft="8dip" /> + + </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_twitter_3_3" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="8dp"> + + <ImageView + android:id="@+id/verify_image" + android:src="@drawable/status_signature_unverified_cutout_24dp" + android:layout_gravity="center_vertical" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + /> + + <ProgressBar + android:id="@+id/verify_progress" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:indeterminateOnly="true"/> + + <TextView + android:id="@+id/verify_status" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/linked_verify_pending" + android:layout_marginLeft="16dip" + android:layout_marginStart="16dip" + android:layout_weight="1" + /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Verify" + android:id="@+id/button_verify" + android:layout_marginRight="16dp" + android:layout_marginEnd="16dip" + /> + + </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_twitter_3_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:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + 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:drawableRight="@drawable/ic_done_grey_24dp" + android:drawablePadding="8dp" + android:gravity="center_vertical" + android:clickable="true" + style="@style/SelectableItem" + android:layout_gravity="center_vertical" /> + </LinearLayout> +</RelativeLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_id_cert.xml b/OpenKeychain/src/main/res/layout/linked_id_cert.xml new file mode 100644 index 000000000..b2b841ffc --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_id_cert.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:orientation="horizontal" + android:singleLine="true"> + + <LinearLayout + android:orientation="vertical" + android:layout_gravity="center_vertical" + android:layout_width="0dip" + android:layout_marginLeft="16dp" + android:layout_marginTop="4dp" + android:layout_marginBottom="4dp" + android:layout_height="wrap_content" + android:layout_weight="1"> + + <TextView + android:id="@+id/linked_cert_text" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Verifying…" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + </LinearLayout> + + <ViewAnimator + android:layout_width="22dp" + android:layout_height="22dp" + android:layout_marginLeft="16dp" + android:layout_marginRight="16dp" + 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:layout_width="22dp" + android:layout_height="wrap_content" + android:src="@drawable/status_signature_unknown_cutout_24dp" + android:id="@+id/linked_cert_icon" + /> + </ViewAnimator> + +</LinearLayout> diff --git a/OpenKeychain/src/main/res/layout/linked_id_item.xml b/OpenKeychain/src/main/res/layout/linked_id_item.xml new file mode 100644 index 000000000..312dee6ba --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_id_item.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:orientation="horizontal" + android:singleLine="true"> + + <ImageView + android:layout_width="32dp" + android:layout_height="wrap_content" + android:id="@+id/linked_id_type_icon" + android:layout_marginLeft="14dp" + android:layout_marginStart="14dp" + android:src="@drawable/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" + android:text="Title" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <TextView + android:id="@+id/linked_id_comment" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textColor="@color/tertiary_text_light" + android:text="comment" + android:textAppearance="?android:attr/textAppearanceSmall" /> + + </LinearLayout> + + <LinearLayout + android:id="@+id/user_id_item_certified_layout" + android:layout_width="22dp" + android:layout_height="wrap_content" + android:layout_marginLeft="16dp" + android:layout_marginRight="16dp" + android:layout_gravity="center_vertical" + android:orientation="vertical"> + + <ImageView + android:id="@+id/user_id_item_certified" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@drawable/status_signature_unknown_cutout_24dp" + android:layout_gravity="center_horizontal" /> + + </LinearLayout> + +</LinearLayout> diff --git a/OpenKeychain/src/main/res/layout/linked_id_view_fragment.xml b/OpenKeychain/src/main/res/layout/linked_id_view_fragment.xml new file mode 100644 index 000000000..f2580122a --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_id_view_fragment.xml @@ -0,0 +1,112 @@ +<?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" + 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="Linked Identity" /> + + <include layout="@layout/linked_id_item" /> + + <LinearLayout + android:layout_width="fill_parent" + android:layout_height="wrap_content" + android:orientation="vertical" + android:id="@+id/linked_id_certs"> + </LinearLayout> + + <org.sufficientlysecure.keychain.ui.widget.CertifyKeySpinner + android:layout_marginLeft="14dp" + android:layout_marginRight="14dp" + android:layout_width="fill_parent" + android:layout_height="wrap_content" + android:id="@+id/cert_key_spinner" + android:visibility="gone"> + </org.sufficientlysecure.keychain.ui.widget.CertifyKeySpinner> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal"> + + <ImageView + android:id="@+id/back_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@drawable/ic_arrow_back_white_24dp" + style="?android:attr/borderlessButtonStyle" /> + + <Space + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="1" /> + + <Button + android:id="@+id/button_view" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="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="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="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="Confirm" + android:textColor="@color/link_text_material_light" + style="?android:attr/borderlessButtonStyle" /> + </ViewAnimator> + + </LinearLayout> + + </LinearLayout> + + </android.support.v7.widget.CardView> + +</ScrollView>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/linked_select_fragment.xml b/OpenKeychain/src/main/res/layout/linked_select_fragment.xml new file mode 100644 index 000000000..deaa9098d --- /dev/null +++ b/OpenKeychain/src/main/res/layout/linked_select_fragment.xml @@ -0,0 +1,153 @@ +<?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:paddingRight="4dp" + style="@style/SelectableItem" + 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/ssl_lock" + android:layout_gravity="center_vertical" /> + + <TextView + android:paddingLeft="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="Website (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:paddingRight="4dp" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <!-- separate ImageView required for recoloring --> + <ImageView + android:layout_width="60dip" + android:layout_height="60dip" + android:padding="8dp" + android:src="@drawable/dns" + android:layout_gravity="center" + /> + + <TextView + android:paddingLeft="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="Domain Name (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:paddingRight="4dp" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <!-- separate ImageView required for recoloring --> + <ImageView + android:layout_width="60dip" + android:layout_height="60dip" + android:padding="8dp" + android:src="@drawable/twitter" + android:layout_gravity="center" + /> + + <TextView + android:paddingLeft="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="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> + +</ScrollView>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/view_key_fragment.xml b/OpenKeychain/src/main/res/layout/view_key_fragment.xml index bba412f99..3d9e4fde8 100644 --- a/OpenKeychain/src/main/res/layout/view_key_fragment.xml +++ b/OpenKeychain/src/main/res/layout/view_key_fragment.xml @@ -13,7 +13,7 @@ android:paddingRight="16dp"> <android.support.v7.widget.CardView - android:id="@+id/card_view" + android:id="@+id/card_identities" android:layout_gravity="center" android:layout_width="match_parent" android:layout_height="wrap_content" @@ -41,6 +41,35 @@ </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" + 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" /> + </LinearLayout> + </android.support.v7.widget.CardView> </LinearLayout> diff --git a/OpenKeychain/src/main/res/menu/key_view.xml b/OpenKeychain/src/main/res/menu/key_view.xml index 4a9fe16c7..3d1b02958 100644 --- a/OpenKeychain/src/main/res/menu/key_view.xml +++ b/OpenKeychain/src/main/res/menu/key_view.xml @@ -37,4 +37,9 @@ android:visible="false" android:title="@string/menu_certify_fingerprint" /> + <item + android:id="@+id/menu_key_view_add_linked_identity" + app:showAsAction="never" + android:title="@string/menu_linked_add_identity" /> + </menu>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/transition/linked_id_card_trans.xml b/OpenKeychain/src/main/res/transition/linked_id_card_trans.xml new file mode 100644 index 000000000..8d6e75cee --- /dev/null +++ b/OpenKeychain/src/main/res/transition/linked_id_card_trans.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<transitionSet xmlns:android="http://schemas.android.com/apk/res/android"> + <changeBounds /> +</transitionSet>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml index 051383a36..4a2be2eb8 100644 --- a/OpenKeychain/src/main/res/values/strings.xml +++ b/OpenKeychain/src/main/res/values/strings.xml @@ -17,6 +17,7 @@ <string name="title_unlock">"Unlock Key"</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_cloud_search_preferences">"Cloud Search Preferences"</string> <string name="title_api_registered_apps">"Apps"</string> @@ -413,11 +414,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"> @@ -1150,6 +1151,22 @@ <item quantity="other">"Failed to delete %d keys"</item> </plurals> + <!-- Linked identity verification --> + <string name="msg_lv">"Verifying linked identity…"</string> + <string name="msg_lv_match">"Searching for cookie"</string> + <string name="msg_lv_match_error">"No cookie 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_nonce_ok">"Link verified!"</string> + <string name="msg_lv_nonce_error">"Nonce mismatch!"</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_acc_saved">"Account saved"</string> <string name="msg_download_success">"Downloaded successfully!"</string> @@ -1246,4 +1263,47 @@ <string name="unlocked">Unlocked</string> <string name="nfc_settings">Settings</string> + <string name="linked_create_https_1_1">"You can link your key to a website you control. Note that your server must have a valid https certificate!"</string> + <string name="linked_create_https_1_2">"Please enter the url where you are able to place a text file for proof:"</string> + <string name="linked_create_https_1_3">"Example: https://example.com/pgpkey.txt"</string> + <string name="linked_create_https_1_4">"In the next step, a text file will be generated, which you will be asked to upload to the uri. This file links back to your pgp key, to make the connection verifiable in both directions."</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 verification is successful, hit next to add the linked identity to your keyring and finish the process."</string> + + <string name="linked_create_twitter_1_1">"You can link your pgp key to your account on Twitter. Please enter your username:"</string> + <string name="linked_create_twitter_1_2">"A message will be generated in the next step, which you can then customize and finally publish to your timeline."</string> + <string name="linked_create_twitter_1_3">"This tweet links back to your pgp key, to make the connection verifiable in both directions."</string> + <string name="linked_create_twitter_handle">Twitter Handle</string> + <string name="linked_create_twitter_2_1">"A message for this Twitter account has been created. You can add some text in front if you like, or leave it as-is."</string> + <string name="linked_create_twitter_2_2">"Here's a preview of the full tweet:"</string> + <string name="linked_create_twitter_2_3">"Once you are happy with the tweet, click next to proceed."</string> + <string name="linked_create_twitter_3_1">"Alright, here's the finished text:"</string> + <string name="linked_create_twitter_3_2">"Tweet the message using either method."</string> + <string name="linked_create_twitter_3_3">"After the tweet is published, hit the button to verify that everything is correct"</string> + <string name="linked_create_twitter_3_4">"Next"</string> + + <string name="linked_create_dns_1_1">"You can link your key to a domain name you control by publishing a special TXT record."</string> + <string name="linked_create_dns_1_2">"A linked identity of this type is especially useful if the email address you use is at the same domain."</string> + <string name="linked_create_dns_1_3">"Please enter a fully qualified domain name:"</string> + <string name="linked_create_dns_1_4">"Example: subdomain.example.com"</string> + <string name="linked_create_dns_1_5">"In the next step, a message will be generated which you will be asked to publish as a TXT record. This record then links back to your pgp key, to make the connection verifiable in both directions."</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">"bla bla"</string> + + <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\nCookie for proof:\n%1$s"</string> + <string name="linked_verifying">Verifying…</string> + <string name="linked_verify_success">Verification successful!</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> + </resources> |