diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-05-05 00:58:22 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2014-05-05 00:58:22 +0200 |
commit | 6055b0b0da6ca3f6fdae3b7b1602a38d3a05bb3b (patch) | |
tree | 5dfe1e65ce2f5f0808d939af3b2ed458a2cc0d0a /OpenKeychain/src/main/res | |
parent | 4053e1ebd795f5b5fba8ed61185e5a5fdf9b0820 (diff) | |
download | open-keychain-6055b0b0da6ca3f6fdae3b7b1602a38d3a05bb3b.tar.gz open-keychain-6055b0b0da6ca3f6fdae3b7b1602a38d3a05bb3b.tar.bz2 open-keychain-6055b0b0da6ca3f6fdae3b7b1602a38d3a05bb3b.zip |
New key view design, using Android flat buttons and Android icons
Diffstat (limited to 'OpenKeychain/src/main/res')
39 files changed, 483 insertions, 318 deletions
diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_copy.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_copy.png Binary files differnew file mode 100644 index 000000000..22327391e --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_copy.png diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_edit.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_edit.png Binary files differnew file mode 100644 index 000000000..5f7c6eff3 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_edit.png diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_good.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_good.png Binary files differnew file mode 100644 index 000000000..38051d8d6 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_good.png diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_help.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_help.png Binary files differnew file mode 100644 index 000000000..382d314ca --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_help.png diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_important_small.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_important_small.png Binary files differnew file mode 100644 index 000000000..a1804b2c1 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_important_small.png diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_settings.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_settings.png Binary files differnew file mode 100644 index 000000000..0eb78f7c7 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_settings.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_copy.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_copy.png Binary files differnew file mode 100644 index 000000000..713482020 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_copy.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_edit.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_edit.png Binary files differnew file mode 100644 index 000000000..650b4d899 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_edit.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_good.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_good.png Binary files differnew file mode 100644 index 000000000..13967b30a --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_good.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_help.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_help.png Binary files differnew file mode 100644 index 000000000..5876cdea4 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_help.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_important_small.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_important_small.png Binary files differnew file mode 100644 index 000000000..11a25b504 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_important_small.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_settings.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_settings.png Binary files differnew file mode 100644 index 000000000..c290e5902 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_settings.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_copy.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_copy.png Binary files differnew file mode 100644 index 000000000..5ddf15139 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_copy.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_edit.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_edit.png Binary files differnew file mode 100644 index 000000000..8ab436d87 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_edit.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_good.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_good.png Binary files differnew file mode 100644 index 000000000..0bb45d2c0 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_good.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_help.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_help.png Binary files differnew file mode 100644 index 000000000..19a9df332 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_help.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_important_small.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_important_small.png Binary files differnew file mode 100644 index 000000000..40ca1572c --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_important_small.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_settings.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_settings.png Binary files differnew file mode 100644 index 000000000..999d0f0d8 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_settings.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_copy.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_copy.png Binary files differnew file mode 100644 index 000000000..a0508df8c --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_copy.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_edit.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_edit.png Binary files differnew file mode 100644 index 000000000..f2b2078b0 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_edit.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_good.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_good.png Binary files differnew file mode 100644 index 000000000..fda51ad86 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_good.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_help.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_help.png Binary files differnew file mode 100644 index 000000000..c5a34319b --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_help.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_important_small.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_important_small.png Binary files differnew file mode 100644 index 000000000..44754152f --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_important_small.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_settings.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_settings.png Binary files differnew file mode 100644 index 000000000..530227e2d --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_settings.png diff --git a/OpenKeychain/src/main/res/drawable/selector_transparent_button.xml b/OpenKeychain/src/main/res/drawable/selector_transparent_button.xml index a2cacf0ad..ed856f281 100644 --- a/OpenKeychain/src/main/res/drawable/selector_transparent_button.xml +++ b/OpenKeychain/src/main/res/drawable/selector_transparent_button.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <!-- Borderless Buttons for API < 11, see http://stackoverflow.com/a/14663170 --> -<selector xmlns:android="http://schemas.android.com/apk/res/android" android:exitFadeDuration="@android:integer/config_shortAnimTime"> - <item android:state_pressed="true" android:drawable="@color/emphasis" /> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_pressed="true" android:drawable="@color/bg_gray" /> <item android:drawable="@android:color/transparent" /> </selector>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/certify_key_activity.xml b/OpenKeychain/src/main/res/layout/certify_key_activity.xml index 0ae46a261..cba73a3c7 100644 --- a/OpenKeychain/src/main/res/layout/certify_key_activity.xml +++ b/OpenKeychain/src/main/res/layout/certify_key_activity.xml @@ -93,7 +93,7 @@ android:text="@string/label_fingerprint" /> <TextView - android:id="@+id/fingerprint" + android:id="@+id/view_key_fingerprint" android:layout_width="match_parent" android:layout_height="wrap_content" android:typeface="monospace" /> @@ -111,7 +111,7 @@ android:text="@string/section_uids_to_sign" /> <org.sufficientlysecure.keychain.ui.widget.FixedListView - android:id="@+id/user_ids" + android:id="@+id/view_key_user_ids" android:layout_width="match_parent" android:layout_height="wrap_content" android:descendantFocusability="blocksDescendants" /> diff --git a/OpenKeychain/src/main/res/layout/import_keys_list_entry.xml b/OpenKeychain/src/main/res/layout/import_keys_list_entry.xml index ba8ff91ca..f5ec71abe 100644 --- a/OpenKeychain/src/main/res/layout/import_keys_list_entry.xml +++ b/OpenKeychain/src/main/res/layout/import_keys_list_entry.xml @@ -106,7 +106,7 @@ android:typeface="monospace" /> <TextView - android:id="@+id/fingerprint" + android:id="@+id/view_key_fingerprint" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="0000 0000 0000 0000 0000\n0000 0000 0000 0000 0000" diff --git a/OpenKeychain/src/main/res/layout/key_list_item.xml b/OpenKeychain/src/main/res/layout/key_list_item.xml index 4676a624d..db61728c1 100644 --- a/OpenKeychain/src/main/res/layout/key_list_item.xml +++ b/OpenKeychain/src/main/res/layout/key_list_item.xml @@ -52,7 +52,7 @@ android:layout_height="match_parent"> <Button - android:background="@drawable/selector_transparent_button" + style="@style/SelectableItem" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/edit" diff --git a/OpenKeychain/src/main/res/layout/view_key_activity.xml b/OpenKeychain/src/main/res/layout/view_key_activity.xml index 58e4919dc..eed71945b 100644 --- a/OpenKeychain/src/main/res/layout/view_key_activity.xml +++ b/OpenKeychain/src/main/res/layout/view_key_activity.xml @@ -2,11 +2,18 @@ <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" - android:orientation="vertical" > + android:orientation="vertical"> + + <org.sufficientlysecure.keychain.util.SlidingTabLayout + android:id="@+id/view_key_sliding_tab_layout" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> <android.support.v4.view.ViewPager - android:id="@+id/pager" + android:id="@+id/view_key_pager" android:layout_width="match_parent" - android:layout_height="match_parent" /> + android:layout_height="0px" + android:layout_weight="1" + android:background="@android:color/white" /> </LinearLayout>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/layout/view_key_certs_item.xml b/OpenKeychain/src/main/res/layout/view_key_certs_item.xml index de7570818..e84a98cdb 100644 --- a/OpenKeychain/src/main/res/layout/view_key_certs_item.xml +++ b/OpenKeychain/src/main/res/layout/view_key_certs_item.xml @@ -12,22 +12,22 @@ android:focusable="false"> <TextView - android:id="@+id/signerKeyId" + android:id="@+id/signerName" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="signer key id" + android:text="signer name" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> <TextView - android:id="@+id/signerUserId" + android:id="@+id/signerKeyId" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="<user@example.com>" android:textAppearance="?android:attr/textAppearanceSmall" - android:layout_below="@+id/signerKeyId" + android:layout_below="@+id/signerName" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" /> @@ -38,7 +38,7 @@ android:textAppearance="?android:attr/textAppearanceSmall" android:text="status" android:visibility="visible" - android:layout_above="@+id/signerUserId" + android:layout_above="@+id/signerKeyId" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" android:layout_marginRight="10dp" /> diff --git a/OpenKeychain/src/main/res/layout/view_key_keys_fragment.xml b/OpenKeychain/src/main/res/layout/view_key_keys_fragment.xml new file mode 100644 index 000000000..88da26a95 --- /dev/null +++ b/OpenKeychain/src/main/res/layout/view_key_keys_fragment.xml @@ -0,0 +1,149 @@ +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <!-- focusable and related properties to workaround http://stackoverflow.com/q/16182331--> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:focusable="true" + android:focusableInTouchMode="true" + android:descendantFocusability="beforeDescendants" + android:orientation="vertical" + android:paddingLeft="16dp" + android:paddingRight="16dp" + android:id="@+id/container"> + + <TextView + style="@style/SectionHeader" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="4dp" + android:layout_marginTop="14dp" + android:text="@string/section_master_key" /> + + <TableLayout + android:layout_width="wrap_content" + android:paddingLeft="8dp" + android:layout_height="0dp" + android:layout_weight="1" + android:shrinkColumns="1"> + + <TableRow> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_key_id" /> + + <TextView + android:id="@+id/key_id" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingRight="5dip" + android:text="" + android:typeface="monospace" /> + </TableRow> + + <TableRow> + + <TextView + android:id="@+id/label_algorithm" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_algorithm" /> + + <TextView + android:id="@+id/algorithm" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingRight="5dip" + android:text="" /> + </TableRow> + + <TableRow + android:layout_width="fill_parent" + android:layout_height="fill_parent" + android:id="@+id/tableRow"> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_fingerprint" /> + + <TextView + android:id="@+id/view_key_fingerprint" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:typeface="monospace" /> + </TableRow> + + <TableRow> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_creation" /> + + <TextView + android:id="@+id/creation" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </TableRow> + + <TableRow> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_expiry" /> + + <TextView + android:id="@+id/expiry" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </TableRow> + + <TableRow> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center_vertical" + android:paddingRight="10dip" + android:text="@string/label_secret_key" /> + + <TextView + android:id="@+id/secret_key" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </TableRow> + </TableLayout> + + <TextView + style="@style/SectionHeader" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginBottom="4dp" + android:layout_marginTop="14dp" + android:text="@string/section_keys" /> + + <org.sufficientlysecure.keychain.ui.widget.FixedListView + android:id="@+id/keys" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + </LinearLayout> + +</ScrollView> diff --git a/OpenKeychain/src/main/res/layout/view_key_main_fragment.xml b/OpenKeychain/src/main/res/layout/view_key_main_fragment.xml index e3448c39f..884eee430 100644 --- a/OpenKeychain/src/main/res/layout/view_key_main_fragment.xml +++ b/OpenKeychain/src/main/res/layout/view_key_main_fragment.xml @@ -18,247 +18,93 @@ <TextView style="@style/SectionHeader" android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginBottom="4dp" - android:layout_marginTop="14dp" - android:text="@string/section_master_user_id" /> - - <TableLayout - android:layout_width="wrap_content" android:layout_height="0dp" - android:layout_weight="1" - android:stretchColumns="1"> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="top" - android:paddingRight="10dip" - android:text="@string/label_name" /> - - <TextView - android:id="@+id/name" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:paddingRight="5dip" - android:text="" /> - </TableRow> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="top" - android:paddingRight="10dip" - android:text="@string/label_email" /> - - <TextView - android:id="@+id/email" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:paddingRight="5dip" - android:text="" /> - </TableRow> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="top" - android:paddingRight="10dip" - android:text="@string/label_comment" /> - - <TextView - android:id="@+id/comment" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:paddingRight="5dip" - android:text="" /> - </TableRow> - </TableLayout> - - <TextView - style="@style/SectionHeader" - android:layout_width="wrap_content" - android:layout_height="wrap_content" android:layout_marginBottom="4dp" android:layout_marginTop="14dp" - android:text="@string/section_master_key" /> + android:text="@string/section_user_ids" + android:layout_weight="1" /> - <TableLayout - android:layout_width="wrap_content" + <org.sufficientlysecure.keychain.ui.widget.FixedListView + android:id="@+id/view_key_user_ids" + android:layout_width="match_parent" android:layout_height="0dp" - android:layout_weight="1" - android:shrinkColumns="1"> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_key_id" /> - - <TextView - android:id="@+id/key_id" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:paddingRight="5dip" - android:text="" - android:typeface="monospace" /> - </TableRow> - - <TableRow> - - <TextView - android:id="@+id/label_algorithm" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_algorithm" /> - - <TextView - android:id="@+id/algorithm" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:paddingRight="5dip" - android:text="" /> - </TableRow> - - <TableRow - android:layout_width="fill_parent" - android:layout_height="fill_parent" - android:id="@+id/tableRow"> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_fingerprint" /> - - <TextView - android:id="@+id/fingerprint" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:typeface="monospace" /> - </TableRow> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_creation" /> - - <TextView - android:id="@+id/creation" - android:layout_width="match_parent" - android:layout_height="wrap_content" /> - </TableRow> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_expiry" /> - - <TextView - android:id="@+id/expiry" - android:layout_width="match_parent" - android:layout_height="wrap_content" /> - </TableRow> - - <TableRow> - - <TextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center_vertical" - android:paddingRight="10dip" - android:text="@string/label_secret_key" /> - - <TextView - android:id="@+id/secret_key" - android:layout_width="match_parent" - android:layout_height="wrap_content" /> - </TableRow> - </TableLayout> - - <TextView - style="@style/SectionHeader" - android:layout_width="wrap_content" - android:layout_height="wrap_content" android:layout_marginBottom="4dp" - android:layout_marginTop="14dp" - android:text="@string/section_user_ids" /> + android:layout_weight="1" /> - <org.sufficientlysecure.keychain.ui.widget.FixedListView - android:id="@+id/user_ids" + <View + android:id="@+id/view_key_action_certify_divider" android:layout_width="match_parent" - android:layout_height="wrap_content" /> + android:layout_height="1dip" + android:background="?android:attr/listDivider" /> - <TextView - style="@style/SectionHeader" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginBottom="4dp" - android:layout_marginTop="14dp" - android:text="@string/section_keys" /> - - <org.sufficientlysecure.keychain.ui.widget.FixedListView - android:id="@+id/keys" + <LinearLayout + android:id="@+id/view_key_action_certify" android:layout_width="match_parent" - android:layout_height="wrap_content" /> + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <TextView + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="@string/key_view_action_certify" + android:layout_weight="1" + android:drawableRight="@drawable/ic_action_good" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> + + </LinearLayout> <TextView style="@style/SectionHeader" android:layout_width="wrap_content" - android:layout_height="wrap_content" + android:layout_height="0dp" android:layout_marginTop="14dp" - android:text="@string/section_actions" /> + android:text="@string/section_actions" + android:layout_weight="1" /> - <com.beardedhen.androidbootstrap.BootstrapButton - android:id="@+id/action_edit" + <TextView + android:id="@+id/view_key_action_edit" + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="match_parent" - android:layout_height="50dp" - android:layout_marginTop="4dp" - android:layout_marginBottom="4dp" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" android:text="@string/key_view_action_edit" - bootstrapbutton:bb_icon_left="fa-key" - bootstrapbutton:bb_type="info" - android:visibility="gone" /> + android:layout_weight="1" + android:drawableRight="@drawable/ic_action_edit" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> - <com.beardedhen.androidbootstrap.BootstrapButton - android:id="@+id/action_encrypt" + <View + android:id="@+id/view_key_action_edit_divider" android:layout_width="match_parent" - android:layout_height="50dp" - android:layout_marginTop="4dp" - android:layout_marginBottom="4dp" - android:text="@string/key_view_action_encrypt" - bootstrapbutton:bb_icon_left="fa-lock" - bootstrapbutton:bb_type="info" /> + android:layout_height="1dip" + android:background="?android:attr/listDivider" /> - <com.beardedhen.androidbootstrap.BootstrapButton - android:id="@+id/action_certify" + <TextView + android:id="@+id/view_key_action_encrypt" + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="match_parent" - android:layout_height="50dp" - android:layout_marginTop="4dp" - android:layout_marginBottom="4dp" - android:text="@string/key_view_action_certify" - bootstrapbutton:bb_icon_left="fa-pencil" - bootstrapbutton:bb_type="info" /> + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" + android:text="@string/key_view_action_encrypt" + android:layout_weight="1" + android:drawableRight="@drawable/ic_action_secure" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> </LinearLayout> diff --git a/OpenKeychain/src/main/res/layout/view_key_share_fragment.xml b/OpenKeychain/src/main/res/layout/view_key_share_fragment.xml new file mode 100644 index 000000000..ae6b750b2 --- /dev/null +++ b/OpenKeychain/src/main/res/layout/view_key_share_fragment.xml @@ -0,0 +1,179 @@ +<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:bootstrapbutton="http://schemas.android.com/apk/res-auto" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <!-- focusable and related properties to workaround http://stackoverflow.com/q/16182331--> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:focusable="true" + android:focusableInTouchMode="true" + android:descendantFocusability="beforeDescendants" + android:orientation="vertical" + android:paddingLeft="16dp" + android:paddingRight="16dp" + android:id="@+id/container"> + + <TextView + style="@style/SectionHeader" + android:layout_width="wrap_content" + android:layout_height="0dp" + android:layout_marginTop="14dp" + android:text="@string/section_fingerprint" + android:layout_weight="1" /> + + <LinearLayout + android:id="@+id/view_key_action_fingerprint_share" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <TextView + android:id="@+id/view_key_fingerprint" + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceSmall" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="" + android:layout_weight="1" + android:typeface="monospace" + android:drawableRight="@drawable/ic_action_share" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> + + <View + android:layout_width="1dip" + android:layout_height="match_parent" + android:gravity="right" + android:layout_marginBottom="8dp" + android:layout_marginTop="8dp" + android:background="?android:attr/listDivider" /> + + <ImageButton + android:id="@+id/view_key_action_fingerprint_clipboard" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:padding="8dp" + android:src="@drawable/ic_action_copy" + android:layout_gravity="center_vertical" + style="@style/SelectableItem" /> + + </LinearLayout> + + + <View + android:layout_width="match_parent" + android:layout_height="1dip" + android:background="?android:attr/listDivider" /> + + <ImageView + android:id="@+id/view_key_fingerprint_qr_code_image" + android:paddingTop="8dp" + android:paddingBottom="8dp" + android:layout_width="match_parent" + android:layout_height="200dp" + android:layout_gravity="center_horizontal" + android:layout_weight="1" + style="@style/SelectableItem" /> + + <TextView + style="@style/SectionHeader" + android:layout_width="wrap_content" + android:layout_height="0dp" + android:layout_marginTop="14dp" + android:text="@string/section_share_key" + android:layout_weight="1" /> + + <LinearLayout + android:id="@+id/view_key_action_key_share" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <TextView + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="@string/key_view_action_share_with" + android:layout_weight="1" + android:drawableRight="@drawable/ic_action_share" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> + + <View + android:layout_width="1dip" + android:layout_height="match_parent" + android:gravity="right" + android:layout_marginBottom="8dp" + android:layout_marginTop="8dp" + android:background="?android:attr/listDivider" /> + + <ImageButton + android:id="@+id/view_key_action_key_clipboard" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:padding="8dp" + android:src="@drawable/ic_action_copy" + android:layout_gravity="center_vertical" + style="@style/SelectableItem" /> + + </LinearLayout> + + <View + android:layout_width="match_parent" + android:layout_height="1dip" + android:background="?android:attr/listDivider" /> + + <LinearLayout + android:id="@+id/view_key_action_nfc_help" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:minHeight="?android:attr/listPreferredItemHeight" + android:clickable="true" + style="@style/SelectableItem" + android:orientation="horizontal"> + + <TextView + android:paddingLeft="8dp" + android:paddingRight="8dp" + android:textAppearance="?android:attr/textAppearanceMedium" + android:layout_width="0dip" + android:layout_height="match_parent" + android:text="@string/key_view_action_share_nfc" + android:layout_weight="1" + android:drawableRight="@drawable/ic_action_help" + android:drawablePadding="8dp" + android:gravity="center_vertical" /> + + <View + android:layout_width="1dip" + android:layout_height="match_parent" + android:gravity="right" + android:layout_marginBottom="8dp" + android:layout_marginTop="8dp" + android:background="?android:attr/listDivider" /> + + <ImageButton + android:id="@+id/view_key_action_nfc_prefs" + android:layout_width="wrap_content" + android:layout_height="match_parent" + android:padding="8dp" + android:src="@drawable/ic_action_settings" + android:layout_gravity="center_vertical" + style="@style/SelectableItem" /> + + </LinearLayout> + + </LinearLayout> + +</ScrollView> diff --git a/OpenKeychain/src/main/res/layout/view_key_userids_item.xml b/OpenKeychain/src/main/res/layout/view_key_userids_item.xml index e56355ff3..5552757ef 100644 --- a/OpenKeychain/src/main/res/layout/view_key_userids_item.xml +++ b/OpenKeychain/src/main/res/layout/view_key_userids_item.xml @@ -2,6 +2,7 @@ <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:paddingRight="3dip" android:singleLine="true"> @@ -13,24 +14,43 @@ android:clickable="false" android:focusable="false" /> - <TextView - android:id="@+id/rank" + <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" - android:textAppearance="?android:attr/textAppearanceSmall" - android:text="0" - android:paddingLeft="10dp" - android:paddingRight="10dp" + android:layout_marginLeft="8dp" android:layout_gravity="center_vertical" - android:width="30sp" /> + android:orientation="vertical"> + + <ImageView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/certified" + android:src="@drawable/key_certify_ok_self" /> + + <ImageView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:id="@+id/primary_user_id_icon" + android:src="@drawable/ic_action_important_small" /> + </LinearLayout> <LinearLayout android:orientation="vertical" + android:layout_gravity="center_vertical" android:layout_width="0dip" + android:layout_marginLeft="8dp" android:layout_height="wrap_content" android:layout_weight="1"> <TextView + android:id="@+id/address" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="alice@example.com" + android:textAppearance="?android:attr/textAppearanceMedium" /> + + <TextView android:id="@+id/userId" android:layout_width="wrap_content" android:layout_height="wrap_content" @@ -38,20 +58,13 @@ android:textAppearance="?android:attr/textAppearanceSmall" /> <TextView - android:id="@+id/address" + android:id="@+id/comment" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="alice@example.com" + android:textColor="@color/tertiary_text_light" + android:text="comment" android:textAppearance="?android:attr/textAppearanceSmall" /> </LinearLayout> - <ImageView - android:layout_width="wrap_content" - android:layout_height="match_parent" - android:id="@+id/certified" - android:src="@drawable/key_certify_ok_self" - android:layout_marginLeft="5dp" - android:layout_marginRight="5dp" /> - </LinearLayout> diff --git a/OpenKeychain/src/main/res/menu/key_view.xml b/OpenKeychain/src/main/res/menu/key_view.xml index 2f5697a0f..864016801 100644 --- a/OpenKeychain/src/main/res/menu/key_view.xml +++ b/OpenKeychain/src/main/res/menu/key_view.xml @@ -3,53 +3,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto"> <item - android:id="@+id/menu_key_view_share" - android:icon="@drawable/ic_action_share" - app:showAsAction="always" - android:title="@string/menu_share"> - <menu> - <item - android:id="@+id/menu_key_view_share_fingerprint_title" - app:showAsAction="never" - android:title="@string/menu_share_title_fingerprint"> - <menu> - <item - android:id="@+id/menu_key_view_share_default_fingerprint" - app:showAsAction="never" - android:title="@string/menu_share_default_fingerprint" /> - <item - android:id="@+id/menu_key_view_share_qr_code_fingerprint" - app:showAsAction="never" - android:title="@string/menu_share_qr_code_fingerprint" /> - </menu> - </item> - <item - android:id="@+id/menu_key_view_share_title" - app:showAsAction="never" - android:title="@string/menu_share_title"> - <menu> - <item - android:id="@+id/menu_key_view_share_default" - app:showAsAction="never" - android:title="@string/menu_share_default" /> - <item - android:id="@+id/menu_key_view_share_qr_code" - app:showAsAction="never" - android:title="@string/menu_share_qr_code" /> - <item - android:id="@+id/menu_key_view_share_nfc" - app:showAsAction="never" - android:title="@string/menu_share_nfc" /> - <item - android:id="@+id/menu_key_view_share_clipboard" - app:showAsAction="never" - android:title="@string/menu_copy_to_clipboard" /> - </menu> - </item> - </menu> - </item> - - <item android:id="@+id/menu_key_keyserver" android:icon="@drawable/ic_action_cloud" app:showAsAction="always" @@ -69,13 +22,13 @@ <item android:id="@+id/menu_key_view_export_file" android:icon="@drawable/ic_action_import_export" - app:showAsAction="ifRoom" + app:showAsAction="never" android:title="@string/menu_export_key" /> <item android:id="@+id/menu_key_view_delete" android:icon="@drawable/ic_action_discard" - app:showAsAction="ifRoom" + app:showAsAction="never" android:title="@string/menu_delete_key" /> </menu>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/values-v14/styles.xml b/OpenKeychain/src/main/res/values-v14/styles.xml index 4f8c45117..7097ed900 100644 --- a/OpenKeychain/src/main/res/values-v14/styles.xml +++ b/OpenKeychain/src/main/res/values-v14/styles.xml @@ -15,4 +15,8 @@ <item name="android:textSize">14sp</item> </style> + <style name="SelectableItem"> + <item name="android:background">?android:attr/selectableItemBackground</item> + </style> + </resources>
\ No newline at end of file diff --git a/OpenKeychain/src/main/res/values/colors.xml b/OpenKeychain/src/main/res/values/colors.xml index 0f0b2a600..728aefdd8 100644 --- a/OpenKeychain/src/main/res/values/colors.xml +++ b/OpenKeychain/src/main/res/values/colors.xml @@ -3,9 +3,13 @@ <color name="emphasis">#31b6e7</color> <color name="bg_gray">#cecbce</color> + <color name="tertiary_text_light">#808080</color> - <color name="result_red">#FF4444</color> - <color name="result_orange">#FFBB33</color> - <color name="result_green">#99CC00</color> - <color name="result_blue">#33B5E5</color> + <color name="holo_gray_light">#33999999</color> + <color name="holo_gray_bright">#33CCCCCC</color> + + <color name="result_red">#ffff4444</color> + <color name="result_orange">#ffffbb33</color> + <color name="result_green">#ff99cc00</color> + <color name="result_blue">#ff33b5e5</color> </resources>
\ 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 330bc349d..2a1a045ef 100644 --- a/OpenKeychain/src/main/res/values/strings.xml +++ b/OpenKeychain/src/main/res/values/strings.xml @@ -14,7 +14,8 @@ <string name="title_key_server_preference">Keyserver Preference</string> <string name="title_change_passphrase">Change Passphrase</string> <string name="title_set_passphrase">Set Passphrase</string> - <string name="title_share_with">Share with…</string> + <string name="title_share_fingerprint_with">Share fingerprint with…</string> + <string name="title_share_key_with">Share key with…</string> <string name="title_share_file">Share file with…</string> <string name="title_encrypt_to_file">Encrypt To File</string> <string name="title_decrypt_to_file">Decrypt To File</string> @@ -28,19 +29,21 @@ <string name="title_help">Help</string> <!-- section --> - <string name="section_user_ids">User IDs</string> + <string name="section_user_ids">Identities</string> <string name="section_keys">Keys</string> <string name="section_general">General</string> <string name="section_defaults">Defaults</string> <string name="section_advanced">Advanced</string> <string name="section_master_key">Master Key</string> - <string name="section_master_user_id">Master User ID</string> + <string name="section_master_user_id">Primary Identity</string> <string name="section_actions">Actions</string> + <string name="section_share_key">Share key</string> <string name="section_certification_key">Your Key used for certification</string> <string name="section_upload_key">Upload Key</string> <string name="section_key_server">Keyserver</string> <string name="section_encrypt_and_or_sign">Encrypt and/or Sign</string> <string name="section_decrypt_verify">Decrypt and Verify</string> + <string name="section_fingerprint">Fingerprint</string> <!-- button --> <string name="btn_certify">Certify</string> @@ -121,7 +124,7 @@ <string name="label_expiry">Expiry</string> <string name="label_usage">Usage</string> <string name="label_key_size">Key Size</string> - <string name="label_main_user_id">Main User ID</string> + <string name="label_main_user_id">Primary identity</string> <string name="label_name">Name</string> <string name="label_comment">Comment</string> <string name="label_email">Email</string> @@ -207,7 +210,7 @@ <string name="key_deletion_confirmation_multi">Do you really want to delete all selected public keys?\nYou can\'t undo this!</string> <string name="secret_key_deletion_confirmation">Do you really want to delete the SECRET key \'%s\'?\nYou can\'t undo this!</string> <string name="ask_save_changed_key">You have made changes to the keyring, would you like to save it?</string> - <string name="ask_empty_id_ok">You have added an empty user ID, are you sure you want to continue?</string> + <string name="ask_empty_id_ok">You have added an empty identity, are you sure you want to continue?</string> <string name="public_key_deletetion_confirmation">Do you really want to delete the public key \'%s\'?\nYou can\'t undo this!</string> <string name="also_export_secret_keys">Also export secret keys?</string> @@ -251,6 +254,7 @@ <string name="list_empty">This list is empty!</string> <string name="nfc_successful">Successfully sent key with NFC Beam!</string> <string name="key_copied_to_clipboard">Key has been copied to the clipboard!</string> + <string name="fingerprint_copied_to_clipboard">Fingerprint has been copied to the clipboard!</string> <string name="key_has_already_been_certified">Key has already been certified!</string> <string name="select_key_to_sign">Please select a key to be used for signing!</string> <string name="key_too_big_for_sharing">Key is too big to be shared this way!</string> @@ -268,8 +272,8 @@ <string name="error_master_key_must_not_be_el_gamal">the master key cannot be an ElGamal key</string> <string name="error_unknown_algorithm_choice">unknown algorithm choice</string> <string name="error_user_id_no_email">no email found</string> - <string name="error_key_needs_a_user_id">need at least one user id</string> - <string name="error_main_user_id_must_not_be_empty">main user id must not be empty</string> + <string name="error_key_needs_a_user_id">need at least one identity</string> + <string name="error_main_user_id_must_not_be_empty">primary identity must not be empty</string> <string name="error_key_needs_master_key">need at least a master key</string> <string name="error_no_signature_passphrase">no passphrase given</string> <string name="error_no_signature_key">no signature key given</string> @@ -422,8 +426,8 @@ <string name="api_register_allow">Allow access</string> <string name="api_register_disallow">Disallow access</string> <string name="api_register_error_select_key">Please select a key!</string> - <string name="api_select_pub_keys_missing_text">No public keys were found for these user ids:</string> - <string name="api_select_pub_keys_dublicates_text">More than one public key exist for these user ids:</string> + <string name="api_select_pub_keys_missing_text">No public keys were found for these identities:</string> + <string name="api_select_pub_keys_dublicates_text">More than one public key exist for these identities:</string> <string name="api_select_pub_keys_text">Please review the list of recipients!</string> <string name="api_error_wrong_signature">Signature check failed! Have you installed this app from a different source? If you are sure that this is not an attack, revoke this app\'s registration in OpenKeychain and then register the app again.</string> @@ -447,10 +451,14 @@ <string name="key_list_empty_button_import">importing keys.</string> <!-- Key view --> - <string name="key_view_action_edit">Edit this key</string> + <string name="key_view_action_edit">Edit key</string> <string name="key_view_action_encrypt">Encrypt with this key</string> - <string name="key_view_action_certify">Certify this key</string> - <string name="key_view_tab_main">Info</string> + <string name="key_view_action_certify">Certify identities</string> + <string name="key_view_action_share_with">with…</string> + <string name="key_view_action_share_nfc">over NFC by holding the devices back to back</string> + <string name="key_view_tab_main">Main Info</string> + <string name="key_view_tab_share">Share</string> + <string name="key_view_tab_keys_details">Key Details</string> <string name="key_view_tab_certs">Certifications</string> <!-- Navigation Drawer --> @@ -485,10 +493,10 @@ <!-- unsorted --> <string name="section_signer_id">Signer</string> <string name="section_cert">Certificate Details</string> - <string name="label_user_id">User ID</string> + <string name="label_user_id">Identity</string> <string name="unknown_uid"><unknown></string> <string name="empty_certs">No certificates for this key</string> - <string name="section_uids_to_sign">User IDs to sign</string> + <string name="section_uids_to_sign">Identities to sign</string> <string name="label_revocation">Revocation Reason</string> <string name="label_verify_status">Verification Status</string> <string name="label_cert_type">Type</string> diff --git a/OpenKeychain/src/main/res/values/styles.xml b/OpenKeychain/src/main/res/values/styles.xml index f03d72605..4a3fa0f8f 100644 --- a/OpenKeychain/src/main/res/values/styles.xml +++ b/OpenKeychain/src/main/res/values/styles.xml @@ -2,7 +2,6 @@ <resources> <!-- Used in Android < 4 --> - <style name="KeychainTheme" parent="@style/Theme.AppCompat.Light"> <item name="android:alertDialogStyle">@style/CustomDialogTheme</item> </style> @@ -30,5 +29,8 @@ <item name="android:textSize">14sp</item> </style> + <style name="SelectableItem"> + <item name="android:background">@drawable/selector_transparent_button</item> + </style> </resources>
\ No newline at end of file |