diff options
6 files changed, 86 insertions, 8 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/BackupCodeFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/BackupCodeFragment.java index 8afdb5f94..3e53e35da 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/BackupCodeFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/BackupCodeFragment.java @@ -54,6 +54,7 @@ import org.sufficientlysecure.keychain.operations.results.ExportResult; import org.sufficientlysecure.keychain.provider.TemporaryFileProvider; import org.sufficientlysecure.keychain.service.BackupKeyringParcel; import org.sufficientlysecure.keychain.ui.base.CryptoOperationFragment; +import org.sufficientlysecure.keychain.ui.dialog.ProgressDialogFragment; import org.sufficientlysecure.keychain.ui.util.Notify; import org.sufficientlysecure.keychain.ui.util.Notify.ActionListener; import org.sufficientlysecure.keychain.ui.util.Notify.Style; @@ -68,9 +69,9 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar public static final String BACK_STACK_INPUT = "state_display"; public static final String ARG_EXPORT_SECRET = "export_secret"; public static final String ARG_MASTER_KEY_IDS = "master_key_ids"; - public static final String ARG_CURRENT_STATE = "current_state"; + public static final int REQUEST_SAVE = 1; public static final String ARG_BACK_STACK = "back_stack"; @@ -80,8 +81,7 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar String mBackupCode; private EditText[] mCodeEditText; - private ToolableViewAnimator mStatusAnimator, mTitleAnimator, mCodeFieldsAnimator; - + private ToolableViewAnimator mStatusAnimator, mTitleAnimator, mCodeFieldsAnimator, mFaqAnimator; private Integer mBackStackLevel; private Uri mCachedBackupUri; @@ -115,14 +115,14 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar mTitleAnimator.setDisplayedChild(0, animate); mStatusAnimator.setDisplayedChild(0, animate); mCodeFieldsAnimator.setDisplayedChild(0, animate); - + mFaqAnimator.setDisplayedChild(0, animate); break; case STATE_INPUT: mTitleAnimator.setDisplayedChild(1, animate); mStatusAnimator.setDisplayedChild(1, animate); mCodeFieldsAnimator.setDisplayedChild(1, animate); - + mFaqAnimator.setDisplayedChild(1, animate); for (EditText editText : mCodeEditText) { editText.setText(""); } @@ -135,6 +135,7 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar mTitleAnimator.setDisplayedChild(1, false); mStatusAnimator.setDisplayedChild(2, animate); mCodeFieldsAnimator.setDisplayedChild(1, false); + mFaqAnimator.setDisplayedChild(0, false); hideKeyboard(); @@ -151,6 +152,7 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar mTitleAnimator.setDisplayedChild(2, animate); mStatusAnimator.setDisplayedChild(3, animate); mCodeFieldsAnimator.setDisplayedChild(1, false); + mFaqAnimator.setDisplayedChild(0, animate); hideKeyboard(); @@ -220,6 +222,7 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar mStatusAnimator = (ToolableViewAnimator) view.findViewById(R.id.status_animator); mTitleAnimator = (ToolableViewAnimator) view.findViewById(R.id.title_animator); mCodeFieldsAnimator = (ToolableViewAnimator) view.findViewById(R.id.code_animator); + mFaqAnimator = (ToolableViewAnimator) view.findViewById(R.id.faq_animator); View backupInput = view.findViewById(R.id.button_backup_input); backupInput.setOnClickListener(new OnClickListener() { @@ -255,9 +258,19 @@ public class BackupCodeFragment extends CryptoOperationFragment<BackupKeyringPar } }); + view.findViewById(R.id.tv_faq).setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + showFaq(); + } + }); return view; } + private void showFaq() { + HelpActivity.startHelpActivity(getActivity(), HelpActivity.TAB_FAQ); + } + @Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/HelpActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/HelpActivity.java index c757c8e88..b96c7edb5 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/HelpActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/HelpActivity.java @@ -17,8 +17,10 @@ package org.sufficientlysecure.keychain.ui; +import android.content.Context; import android.content.Intent; import android.os.Bundle; +import android.support.annotation.IntDef; import android.support.v4.view.ViewPager; import android.view.View; @@ -28,13 +30,16 @@ import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.ui.adapter.PagerTabStripAdapter; import org.sufficientlysecure.keychain.ui.base.BaseActivity; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + public class HelpActivity extends BaseActivity { public static final String EXTRA_SELECTED_TAB = "selected_tab"; public static final int TAB_START = 0; - public static final int TAB_FAQ = 1; - public static final int TAB_TRUST = 2; + public static final int TAB_CONFIRM = 1; + public static final int TAB_FAQ = 2; public static final int TAB_CHANGELOG = 3; public static final int TAB_ABOUT = 4; @@ -99,4 +104,11 @@ public class HelpActivity extends BaseActivity { protected void initLayout() { setContentView(R.layout.help_activity); } + + public static void startHelpActivity(Context context, int code) { + Intent intent = new Intent(context, HelpActivity.class); + intent.putExtra(HelpActivity.EXTRA_SELECTED_TAB, code); + context.startActivity(intent); + } + } diff --git a/OpenKeychain/src/main/res/layout-land/backup_code_fragment.xml b/OpenKeychain/src/main/res/layout-land/backup_code_fragment.xml index 3157bbfd3..0c93f4e24 100644 --- a/OpenKeychain/src/main/res/layout-land/backup_code_fragment.xml +++ b/OpenKeychain/src/main/res/layout-land/backup_code_fragment.xml @@ -339,5 +339,23 @@ </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> + <org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator + + android:id="@+id/faq_animator" + android:inAnimation="@anim/fade_in" + android:outAnimation="@anim/fade_out" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + <android.support.v4.widget.Space + android:layout_width="wrap_content" + android:layout_height="match_parent" /> + <TextView + android:id="@+id/tv_faq" + android:text="@string/how_to_import" + android:gravity="center" + style="?android:buttonBarButtonStyle" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> </LinearLayout> diff --git a/OpenKeychain/src/main/res/layout-mdpi/backup_code_fragment.xml b/OpenKeychain/src/main/res/layout-mdpi/backup_code_fragment.xml index 2e2159f4e..502050849 100644 --- a/OpenKeychain/src/main/res/layout-mdpi/backup_code_fragment.xml +++ b/OpenKeychain/src/main/res/layout-mdpi/backup_code_fragment.xml @@ -339,5 +339,22 @@ </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> + <org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator + android:id="@+id/faq_animator" + android:inAnimation="@anim/fade_in" + android:outAnimation="@anim/fade_out" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + <android.support.v4.widget.Space + android:layout_width="wrap_content" + android:layout_height="match_parent" /> + <TextView + android:id="@+id/tv_faq" + android:text="@string/how_to_import" + android:gravity="center" + style="?android:buttonBarButtonStyle" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> </LinearLayout> diff --git a/OpenKeychain/src/main/res/layout-xhdpi/backup_code_fragment.xml b/OpenKeychain/src/main/res/layout-xhdpi/backup_code_fragment.xml index e7d8cac34..fd1e16145 100644 --- a/OpenKeychain/src/main/res/layout-xhdpi/backup_code_fragment.xml +++ b/OpenKeychain/src/main/res/layout-xhdpi/backup_code_fragment.xml @@ -339,5 +339,23 @@ </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> + <org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator + android:id="@+id/faq_animator" + android:inAnimation="@anim/fade_in" + android:outAnimation="@anim/fade_out" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + <android.support.v4.widget.Space + android:layout_width="wrap_content" + android:layout_height="match_parent" /> + <TextView + android:id="@+id/tv_faq" + android:text="@string/how_to_import" + android:gravity="center" + style="?android:buttonBarButtonStyle" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + </org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator> + </LinearLayout> diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml index ebab53df6..81f0f2be4 100644 --- a/OpenKeychain/src/main/res/values/strings.xml +++ b/OpenKeychain/src/main/res/values/strings.xml @@ -347,7 +347,7 @@ <string name="fingerprint_copied_to_clipboard">"Fingerprint has been copied to the clipboard!"</string> <string name="select_key_to_certify">"Please select a key to be used for confirmation!"</string> <string name="text_copied_to_clipboard">"Text has been copied to the clipboard!"</string> - + <string name="how_to_import">"How to import this?"</string> <!-- errors no punctuation, all lowercase, |