From ffc8037a0895acd3a1272dc01f9be62f25ad4708 Mon Sep 17 00:00:00 2001 From: Emily Kager Date: Tue, 14 May 2019 15:00:01 -0700 Subject: [PATCH] Fix navigation for pairing --- .../settings/PairInstructionsFragment.kt | 32 ++--- app/src/main/res/layout/fragment_pair.xml | 28 ++-- .../res/layout/fragment_pair_instructions.xml | 85 ++++++------ app/src/main/res/navigation/nav_graph.xml | 127 +++++++++++------- 4 files changed, 145 insertions(+), 127 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/settings/PairInstructionsFragment.kt b/app/src/main/java/org/mozilla/fenix/settings/PairInstructionsFragment.kt index cda30de7e..7cdc4e501 100644 --- a/app/src/main/java/org/mozilla/fenix/settings/PairInstructionsFragment.kt +++ b/app/src/main/java/org/mozilla/fenix/settings/PairInstructionsFragment.kt @@ -12,17 +12,11 @@ import android.widget.Button import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import androidx.core.text.HtmlCompat -import androidx.navigation.Navigation +import androidx.navigation.fragment.NavHostFragment.findNavController import com.google.android.material.bottomsheet.BottomSheetDialogFragment -import mozilla.components.support.base.feature.BackHandler import org.mozilla.fenix.R -class PairInstructionsFragment : BottomSheetDialogFragment(), BackHandler { - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - (activity as AppCompatActivity).title = getString(R.string.preferences_sync) - } - +class PairInstructionsFragment : BottomSheetDialogFragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { return inflater.inflate(R.layout.fragment_pair_instructions, container, false) } @@ -37,22 +31,20 @@ class PairInstructionsFragment : BottomSheetDialogFragment(), BackHandler { super.onViewCreated(view, savedInstanceState) val instructionsText = view.findViewById(R.id.pair_instructions_info) as TextView - instructionsText.setText(HtmlCompat.fromHtml(getString(R.string.pair_instructions), - HtmlCompat.FROM_HTML_MODE_LEGACY)) + instructionsText.text = HtmlCompat.fromHtml( + getString(R.string.pair_instructions), + HtmlCompat.FROM_HTML_MODE_LEGACY + ) val openCamera = view.findViewById(R.id.pair_open_camera) as Button - openCamera.setOnClickListener(View.OnClickListener { + openCamera.setOnClickListener { val directions = PairInstructionsFragmentDirections.actionPairInstructionsFragmentToPairFragment() - Navigation.findNavController(view!!).navigate(directions) - }) + findNavController(this@PairInstructionsFragment).navigate(directions) + } val cancelCamera = view.findViewById(R.id.pair_cancel) as Button - cancelCamera.setOnClickListener(View.OnClickListener { - onBackPressed() - }) - } - - override fun onBackPressed(): Boolean { - return true + cancelCamera.setOnClickListener { + findNavController(this@PairInstructionsFragment).navigateUp() + } } } diff --git a/app/src/main/res/layout/fragment_pair.xml b/app/src/main/res/layout/fragment_pair.xml index e8818ef9f..2024b9e79 100644 --- a/app/src/main/res/layout/fragment_pair.xml +++ b/app/src/main/res/layout/fragment_pair.xml @@ -2,22 +2,22 @@ - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> + android:layout_width="match_parent" + android:layout_height="match_parent"> + android:id="@+id/pair_layout" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + android:id="@+id/pair_instructions" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="10dp" + android:background="#8000" + android:gravity="center" + android:text="@string/pair_instructions" + android:textColor="@color/photonWhite" + android:textSize="20sp" /> diff --git a/app/src/main/res/layout/fragment_pair_instructions.xml b/app/src/main/res/layout/fragment_pair_instructions.xml index 9a7c09c11..046062a59 100644 --- a/app/src/main/res/layout/fragment_pair_instructions.xml +++ b/app/src/main/res/layout/fragment_pair_instructions.xml @@ -2,57 +2,54 @@ - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - + + android:id="@+id/guideline" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:orientation="vertical" /> + android:id="@+id/pair_instructions_info" + style="@style/QuickSettingsText.Icon" + android:layout_width="wrap_content" + android:layout_height="@dimen/quicksettings_item_height" + android:layout_marginTop="24dp" + android:drawableStart="@drawable/ic_qr" + android:text="@string/pair_instructions" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" />