Change to use footer button of setupcompat

Bug: 120805516
Test: RunSettingsRoboTests
Change-Id: I0eba5f8fff37bbb13b54a4d41290ae9363905f96
diff --git a/res/layout/face_enroll_introduction_footer.xml b/res/layout/face_enroll_introduction_footer.xml
index d73a8ed..15993f0 100644
--- a/res/layout/face_enroll_introduction_footer.xml
+++ b/res/layout/face_enroll_introduction_footer.xml
@@ -39,6 +39,6 @@
         style="@style/SuwGlifButton.Primary"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:text="@string/suw_next_button_label" />
+        android:text="@string/wizard_next" />
 
 </com.google.android.setupdesign.view.ButtonBarLayout>
diff --git a/res/layout/fingerprint_enroll_introduction_footer.xml b/res/layout/fingerprint_enroll_introduction_footer.xml
index 1298d82..47d7657 100644
--- a/res/layout/fingerprint_enroll_introduction_footer.xml
+++ b/res/layout/fingerprint_enroll_introduction_footer.xml
@@ -39,6 +39,6 @@
         style="@style/SuwGlifButton.Primary"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:text="@string/suw_next_button_label" />
+        android:text="@string/wizard_next" />
 
 </com.google.android.setupdesign.view.ButtonBarLayout>
diff --git a/res/layout/storage_wizard_footer.xml b/res/layout/storage_wizard_footer.xml
index 0ff40aa..a4cda18 100644
--- a/res/layout/storage_wizard_footer.xml
+++ b/res/layout/storage_wizard_footer.xml
@@ -27,7 +27,7 @@
         android:layout_height="wrap_content"
         android:onClick="onNavigateBack"
         android:visibility="gone"
-        android:text="@string/suw_back_button_label" />
+        android:text="@string/wizard_back" />
 
     <Space
         android:layout_width="0dp"
@@ -41,6 +41,6 @@
         android:layout_height="wrap_content"
         android:onClick="onNavigateNext"
         android:visibility="gone"
-        android:text="@string/suw_next_button_label" />
+        android:text="@string/wizard_next" />
 
 </LinearLayout>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 6aacb0a..fa69fc6 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -6733,7 +6733,7 @@
     <string name="wizard_back">Back</string>
     <!-- Wizard next button label [CHAR LIMIT=25] -->
     <string name="wizard_next">Next</string>
-    <!-- Wizard next button label [CHAR LIMIT=25] -->
+    <!-- Wizard finish button label [CHAR LIMIT=25] -->
     <string name="wizard_finish">Finish</string>
 
     <!-- An option in a photo selection dialog, if there is no photo yet [CHAR LIMIT=50] -->
diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java
index 8e745a3..61a247d 100644
--- a/src/com/android/settings/MasterClear.java
+++ b/src/com/android/settings/MasterClear.java
@@ -66,7 +66,9 @@
 import com.android.settingslib.RestrictedLockUtilsInternal;
 
 import com.google.android.setupcompat.TemplateLayout;
-import com.google.android.setupdesign.template.ButtonFooterMixin;
+import com.google.android.setupcompat.item.FooterButton;
+import com.google.android.setupcompat.item.FooterButton.ButtonType;
+import com.google.android.setupcompat.template.ButtonFooterMixin;
 
 import java.util.List;
 
@@ -96,7 +98,7 @@
 
     private View mContentView;
     @VisibleForTesting
-    Button mInitiateButton;
+    FooterButton mInitiateButton;
     private View mExternalStorageContainer;
     @VisibleForTesting
     CheckBox mExternalStorage;
@@ -416,12 +418,15 @@
 
         final TemplateLayout layout = mContentView.findViewById(R.id.setup_wizard_layout);
         final ButtonFooterMixin buttonFooterMixin = layout.getMixin(ButtonFooterMixin.class);
-        buttonFooterMixin.removeAllViews();
-        buttonFooterMixin.addSpace();
-        buttonFooterMixin.addSpace();
-        mInitiateButton = buttonFooterMixin.addButton(R.string.master_clear_button_text,
-                R.style.SuwGlifButton_Primary);
-        mInitiateButton.setOnClickListener(mInitiateListener);
+        buttonFooterMixin.setPrimaryButton(
+                new FooterButton(
+                        getActivity(),
+                        R.string.master_clear_button_text,
+                        mInitiateListener,
+                        ButtonType.OTHER,
+                        R.style.SuwGlifButton_Primary)
+        );
+        mInitiateButton = buttonFooterMixin.getPrimaryButton();
     }
 
     private void getContentDescription(View v, StringBuffer description) {
diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java
index ffbb2aa..b2bf838 100644
--- a/src/com/android/settings/MasterClearConfirm.java
+++ b/src/com/android/settings/MasterClearConfirm.java
@@ -45,7 +45,9 @@
 import com.android.settingslib.RestrictedLockUtilsInternal;
 
 import com.google.android.setupcompat.TemplateLayout;
-import com.google.android.setupdesign.template.ButtonFooterMixin;
+import com.google.android.setupcompat.item.FooterButton;
+import com.google.android.setupcompat.item.FooterButton.ButtonType;
+import com.google.android.setupcompat.template.ButtonFooterMixin;
 
 /**
  * Confirm and execute a reset of the device to a clean "just out of the box"
@@ -153,11 +155,14 @@
         final TemplateLayout layout = mContentView.findViewById(R.id.setup_wizard_layout);
 
         final ButtonFooterMixin buttonFooterMixin = layout.getMixin(ButtonFooterMixin.class);
-        buttonFooterMixin.removeAllViews();
-        buttonFooterMixin.addSpace();
-        buttonFooterMixin.addSpace();
-        buttonFooterMixin.addButton(R.string.master_clear_button_text,
-                R.style.SuwGlifButton_Primary).setOnClickListener(mFinalClickListener);
+        buttonFooterMixin.setPrimaryButton(
+                new FooterButton(
+                        getActivity(),
+                        R.string.master_clear_button_text,
+                        mFinalClickListener,
+                        ButtonType.OTHER,
+                        R.style.SuwGlifButton_Primary)
+        );
     }
 
     private void setUpActionBarAndTitle() {
diff --git a/tests/robotests/src/com/android/settings/MasterClearTest.java b/tests/robotests/src/com/android/settings/MasterClearTest.java
index 21cb09c..388440e 100644
--- a/tests/robotests/src/com/android/settings/MasterClearTest.java
+++ b/tests/robotests/src/com/android/settings/MasterClearTest.java
@@ -51,6 +51,7 @@
 import androidx.fragment.app.FragmentActivity;
 
 import com.android.settings.testutils.shadow.ShadowUtils;
+import com.google.android.setupcompat.item.FooterButton;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -386,7 +387,7 @@
     public void testOnGlobalLayout_shouldNotRemoveListener() {
         final ViewTreeObserver viewTreeObserver = mock(ViewTreeObserver.class);
         mMasterClear.mScrollView = mScrollView;
-        mMasterClear.mInitiateButton = mock(Button.class);
+        mMasterClear.mInitiateButton = mock(FooterButton.class);
         doReturn(true).when(mMasterClear).hasReachedBottom(any());
         when(mScrollView.getViewTreeObserver()).thenReturn(viewTreeObserver);