Advanced screen, warning fragment

This commit is contained in:
Dominik Schürmann
2016-01-11 07:42:00 +01:00
parent 93327dccce
commit cc917857b0
72 changed files with 121 additions and 17 deletions

View File

@@ -61,10 +61,11 @@ public class ViewKeyAdvActivity extends BaseActivity implements
protected Uri mDataUri;
public static final String EXTRA_SELECTED_TAB = "selected_tab";
public static final int TAB_SHARE = 0;
public static final int TAB_IDENTITIES = 1;
public static final int TAB_SUBKEYS = 2;
public static final int TAB_CERTS = 3;
public static final int TAB_START = 0;
public static final int TAB_SHARE = 1;
public static final int TAB_IDENTITIES = 2;
public static final int TAB_SUBKEYS = 3;
public static final int TAB_CERTS = 4;
// view
private ViewPager mViewPager;
@@ -126,31 +127,35 @@ public class ViewKeyAdvActivity extends BaseActivity implements
mViewPager.setAdapter(mTabAdapter);
// keep track which of these are action mode enabled!
mTabsWithActionMode = new boolean[4];
mTabsWithActionMode = new boolean[5];
mTabAdapter.addTab(ViewKeyAdvStartFragment.class,
null, getString(R.string.key_view_tab_start));
mTabsWithActionMode[0] = false;
Bundle shareBundle = new Bundle();
shareBundle.putParcelable(ViewKeyAdvShareFragment.ARG_DATA_URI, dataUri);
mTabAdapter.addTab(ViewKeyAdvShareFragment.class,
shareBundle, getString(R.string.key_view_tab_share));
mTabsWithActionMode[0] = false;
mTabsWithActionMode[1] = false;
Bundle userIdsBundle = new Bundle();
userIdsBundle.putParcelable(ViewKeyAdvUserIdsFragment.ARG_DATA_URI, dataUri);
mTabAdapter.addTab(ViewKeyAdvUserIdsFragment.class,
userIdsBundle, getString(R.string.section_user_ids));
mTabsWithActionMode[1] = true;
mTabsWithActionMode[2] = true;
Bundle keysBundle = new Bundle();
keysBundle.putParcelable(ViewKeyAdvSubkeysFragment.ARG_DATA_URI, dataUri);
mTabAdapter.addTab(ViewKeyAdvSubkeysFragment.class,
keysBundle, getString(R.string.key_view_tab_keys));
mTabsWithActionMode[2] = true;
mTabsWithActionMode[3] = true;
Bundle certsBundle = new Bundle();
certsBundle.putParcelable(ViewKeyAdvCertsFragment.ARG_DATA_URI, dataUri);
mTabAdapter.addTab(ViewKeyAdvCertsFragment.class,
certsBundle, getString(R.string.key_view_tab_certs));
mTabsWithActionMode[3] = false;
mTabsWithActionMode[4] = false;
// update layout after operations
mSlidingTabLayout.setViewPager(mViewPager);
@@ -158,7 +163,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements
// switch to tab selected by extra
Intent intent = getIntent();
int switchToTab = intent.getIntExtra(EXTRA_SELECTED_TAB, TAB_SHARE);
int switchToTab = intent.getIntExtra(EXTRA_SELECTED_TAB, TAB_START);
mViewPager.setCurrentItem(switchToTab);
}

View File

@@ -0,0 +1,55 @@
/*
* Copyright (C) 2015 Dominik Schürmann <dominik@dominikschuermann.de>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.sufficientlysecure.keychain.ui;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import org.markdown4j.Markdown4jProcessor;
import org.sufficientlysecure.htmltextview.HtmlTextView;
import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.util.Log;
import java.io.IOException;
public class ViewKeyAdvStartFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.view_key_adv_start_fragment, container, false);
HtmlTextView textView = (HtmlTextView)
view.findViewById(R.id.view_key_adv_start_text);
// load markdown from raw resource
try {
String html = new Markdown4jProcessor().process(
getActivity().getResources().openRawResource(R.raw.advanced));
textView.setHtmlFromString(html, new HtmlTextView.LocalImageGetter());
} catch (IOException e) {
Log.e(Constants.TAG, "IOException", e);
}
return view;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,23 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/view_key_adv_start_text"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal|top"
android:src="@drawable/ic_beaker_grey600_48dp" />
<org.sufficientlysecure.htmltextview.HtmlTextView
android:id="@+id/view_key_adv_start_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />
</RelativeLayout>

View File

@@ -0,0 +1,9 @@
[//]: # (NOTE: Please put every sentence in its own line, Transifex puts every line in its own translation field!)
Advanced screen allows you to
* share key in non-recommended ways
* edit identities
* edit subkeys
* examine certificates in detail
Only proceed if you know what you are doing!

View File

@@ -37,7 +37,7 @@
<string name="title_help">"Help"</string>
<string name="title_log_display">"Log"</string>
<string name="title_exchange_keys">"Exchange Keys"</string>
<string name="title_advanced_key_info">"Extended Information"</string>
<string name="title_advanced_key_info">"Advanced"</string>
<string name="title_delete_secret_key">"Delete YOUR key '%s'?"</string>
<string name="title_manage_my_keys">"Manage my keys"</string>
@@ -126,7 +126,7 @@
<string name="menu_select_all">"Select all"</string>
<string name="menu_export_all_keys">"Export all keys"</string>
<string name="menu_update_all_keys">"Update all keys"</string>
<string name="menu_advanced">"Extended information"</string>
<string name="menu_advanced">"Advanced"</string>
<string name="menu_certify_fingerprint">"Confirm with fingerprint"</string>
<string name="menu_certify_fingerprint_phrases">"Confirm with phrases"</string>
<string name="menu_share_log">"Share log"</string>
@@ -598,10 +598,8 @@
<string name="intent_send_decrypt">"Decrypt with OpenKeychain"</string>
<!-- Remote API -->
<string name="api_settings_show_info">"Show extended information"</string>
<string name="api_settings_hide_info">"Hide extended information"</string>
<string name="api_settings_show_advanced">"Show extended settings"</string>
<string name="api_settings_hide_advanced">"Hide extended settings"</string>
<string name="api_settings_show_info">"Show advanced information"</string>
<string name="api_settings_hide_info">"Hide advanced information"</string>
<string name="api_settings_no_key">"No key selected"</string>
<string name="api_settings_select_key">"Select key"</string>
<string name="api_settings_create_key">"Create new key"</string>
@@ -614,7 +612,7 @@
<string name="api_settings_package_name">"Package Name"</string>
<string name="api_settings_package_certificate">"SHA-256 of Package Certificate"</string>
<string name="api_settings_accounts">"Accounts (old API)"</string>
<string name="api_settings_advanced">"Extended Information"</string>
<string name="api_settings_advanced">"Advanced"</string>
<string name="api_settings_allowed_keys">"Allowed Keys"</string>
<string name="api_settings_settings">"Settings"</string>
<string name="api_settings_key">"Account key:"</string>
@@ -677,6 +675,7 @@
<string name="key_view_action_share_nfc">"Share over NFC"</string>
<string name="key_view_action_upload">"Upload to keyserver"</string>
<string name="key_view_tab_main">"Main Info"</string>
<string name="key_view_tab_start">"Start"</string>
<string name="key_view_tab_share">"Share"</string>
<string name="key_view_tab_keys">"Subkeys"</string>
<string name="key_view_tab_certs">"Certificates"</string>