Fix the “screen lock option” and password restriction view are

in the wrong position on PIN/Password/Pattern in the landscape mode.

1. Move the description position under the GlifLayout header
2. Move the position "Screen lock options" button under the
GlifLayout header

Bug: 272676038
Bug: 285271342

Test: manully test with reproducible steps:
STEPS TO REPRODUCE:
1. Go through the setup flow
2. Continue steps until “set pin” page
3. The “screen lock option” is in the wrong position

Test: make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings
.password.SetupChooseLockPasswordTest"

Change-Id: I24464e6b7e93f20abbeb59426919ed7fec5c7cbb
This commit is contained in:
Jason Chang
2023-06-15 16:09:06 +00:00
parent cc1fe61339
commit c0f0b0ca1a
12 changed files with 112 additions and 39 deletions

View File

@@ -26,6 +26,7 @@ import android.os.Bundle;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Button;
import android.widget.LinearLayout;
import androidx.appcompat.app.AlertDialog;
@@ -106,6 +107,20 @@ public class SetupChooseLockPasswordTest {
assertThat(ShadowDialog.getLatestDialog()).isNotNull();
}
@Test
public void createActivity_withShowOptionsButtonExtra_shouldShowButtonUnderSudHeader() {
SetupChooseLockPassword activity = createSetupChooseLockPassword();
final LinearLayout headerLayout = activity.findViewById(
R.id.sud_layout_header);
assertThat(headerLayout).isNotNull();
final Button optionsButton = headerLayout.findViewById(R.id.screen_lock_options);
assertThat(optionsButton).isNotNull();
optionsButton.performClick();
assertThat(ShadowDialog.getLatestDialog()).isNotNull();
}
@Test
@Config(shadows = ShadowChooseLockGenericController.class)
public void createActivity_withShowOptionsButtonExtra_buttonNotVisibleIfNoVisibleLockTypes() {