diff options
author | nchalko <nchalko@google.com> | 2019-06-10 11:48:13 -0700 |
---|---|---|
committer | Nick Chalko <nchalko@google.com> | 2019-06-11 16:07:21 -0700 |
commit | 3b7a3f36a7136cdc741e4e0a6ef6d8826a817f6f (patch) | |
tree | 35b976e82504499a742c3a4fe271664f1e21bf51 | |
parent | 02b7e6dab60c1acee39925c462e0d0cf2514c319 (diff) | |
download | TV-temp_b_135118009.tar.gz |
CLEANUP: Remove launched use_leanback_pin_picker flagtemp_b_135118009
Startblock:
b/131597163 is fixed
and then
12d have passed
PiperOrigin-RevId: 252451548
Change-Id: Ice166e20ad67ee425fed3866da231e5b6648fb54
-rwxr-xr-x | common/src/com/android/tv/common/flags/UiFlags.java | 3 | ||||
-rw-r--r-- | common/src/com/android/tv/common/flags/impl/DefaultUiFlags.java | 5 | ||||
-rw-r--r-- | res/layout/pin_dialog.xml | 10 | ||||
-rw-r--r-- | src/com/android/tv/dialog/PinDialogFragment.java | 44 | ||||
-rw-r--r-- | src/com/android/tv/dialog/picker/PinPicker.java | 145 |
5 files changed, 11 insertions, 196 deletions
diff --git a/common/src/com/android/tv/common/flags/UiFlags.java b/common/src/com/android/tv/common/flags/UiFlags.java index 67a98492..73349be4 100755 --- a/common/src/com/android/tv/common/flags/UiFlags.java +++ b/common/src/com/android/tv/common/flags/UiFlags.java @@ -38,7 +38,4 @@ public interface UiFlags { /** Unhide the launcher all the time */ boolean uhideLauncher(); - - /** Use the Leanback Pin Picker */ - boolean useLeanbackPinPicker(); } diff --git a/common/src/com/android/tv/common/flags/impl/DefaultUiFlags.java b/common/src/com/android/tv/common/flags/impl/DefaultUiFlags.java index 137615b9..2746485c 100644 --- a/common/src/com/android/tv/common/flags/impl/DefaultUiFlags.java +++ b/common/src/com/android/tv/common/flags/impl/DefaultUiFlags.java @@ -36,11 +36,6 @@ public class DefaultUiFlags implements UiFlags { } @Override - public boolean useLeanbackPinPicker() { - return true; - } - - @Override public long maxHistoryDays() { return 0; } diff --git a/res/layout/pin_dialog.xml b/res/layout/pin_dialog.xml index c9d94509..84807f27 100644 --- a/res/layout/pin_dialog.xml +++ b/res/layout/pin_dialog.xml @@ -55,16 +55,6 @@ android:fontFamily="@string/font" android:singleLine="false" /> - <com.android.tv.dialog.picker.PinPicker - android:id="@+id/pin_picker" - android:importantForAccessibility="yes" - android:layout_width="match_parent" - android:layout_height="154dp" - android:paddingStart="24dp" - android:paddingEnd="24dp" - android:gravity="center" - /> - <com.android.tv.dialog.picker.TvPinPicker android:id="@+id/tv_pin_picker" android:importantForAccessibility="yes" diff --git a/src/com/android/tv/dialog/PinDialogFragment.java b/src/com/android/tv/dialog/PinDialogFragment.java index ad245fad..c7145583 100644 --- a/src/com/android/tv/dialog/PinDialogFragment.java +++ b/src/com/android/tv/dialog/PinDialogFragment.java @@ -35,7 +35,6 @@ import android.widget.TextView; import android.widget.Toast; import com.android.tv.R; import com.android.tv.common.SoftPreconditions; -import com.android.tv.dialog.picker.PinPicker; import com.android.tv.dialog.picker.TvPinPicker; import com.android.tv.util.TvInputManagerHelper; import com.android.tv.util.TvSettings; @@ -86,7 +85,6 @@ public class PinDialogFragment extends SafeDismissDialogFragment { private View mEnterPinView; private TextView mTitleView; - private PinPicker mPicker; private TvPinPicker mTvPinPicker; private SharedPreferences mSharedPreferences; private String mPrevPin; @@ -169,27 +167,14 @@ public class PinDialogFragment extends SafeDismissDialogFragment { mWrongPinView = (TextView) v.findViewById(R.id.wrong_pin); mEnterPinView = v.findViewById(R.id.enter_pin); mTitleView = (TextView) mEnterPinView.findViewById(R.id.title); - mPicker = v.findViewById(R.id.pin_picker); mTvPinPicker = v.findViewById(R.id.tv_pin_picker); - if (!mUiFlags.useLeanbackPinPicker()) { - mTvPinPicker.setVisibility(View.GONE); - mPicker.setOnClickListener( - view -> { - String pin = getPinInput(); - if (!TextUtils.isEmpty(pin)) { - done(pin); - } - }); - } else { - mPicker.setVisibility(View.GONE); - mTvPinPicker.setOnClickListener( - view -> { - String pin = getPinInput(); - if (!TextUtils.isEmpty(pin)) { - done(pin); - } - }); - } + mTvPinPicker.setOnClickListener( + view -> { + String pin = getPinInput(); + if (!TextUtils.isEmpty(pin)) { + done(pin); + } + }); if (TextUtils.isEmpty(getPin())) { // If PIN isn't set, user should set a PIN. // Successfully setting a new set is considered as entering correct PIN. @@ -231,11 +216,8 @@ public class PinDialogFragment extends SafeDismissDialogFragment { if (mType != PIN_DIALOG_TYPE_NEW_PIN) { updateWrongPin(); } - if (!mUiFlags.useLeanbackPinPicker()) { - mPicker.requestFocus(); - } else { - mTvPinPicker.requestFocus(); - } + + mTvPinPicker.requestFocus(); return v; } @@ -369,15 +351,11 @@ public class PinDialogFragment extends SafeDismissDialogFragment { } private String getPinInput() { - return (mUiFlags.useLeanbackPinPicker() ? mTvPinPicker.getPin() : mPicker.getPinInput()); + return mTvPinPicker.getPin(); } private void resetPinInput() { - if (!mUiFlags.useLeanbackPinPicker()) { - mPicker.resetPinInput(); - } else { - mTvPinPicker.resetPin(); - } + mTvPinPicker.resetPin(); } /** diff --git a/src/com/android/tv/dialog/picker/PinPicker.java b/src/com/android/tv/dialog/picker/PinPicker.java deleted file mode 100644 index 7af62585..00000000 --- a/src/com/android/tv/dialog/picker/PinPicker.java +++ /dev/null @@ -1,145 +0,0 @@ -/* - * Copyright (C) 2018 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.android.tv.dialog.picker; - -import static android.content.Context.ACCESSIBILITY_SERVICE; - -import android.content.Context; -import android.support.annotation.Nullable; -import android.support.annotation.VisibleForTesting; -import androidx.leanback.widget.picker.Picker; -import androidx.leanback.widget.picker.PickerColumn; -import android.util.AttributeSet; -import android.view.KeyEvent; -import android.view.View; -import android.view.ViewGroup; -import android.view.accessibility.AccessibilityManager; -import java.util.ArrayList; -import java.util.List; - -/** 4 digit picker */ -public final class PinPicker extends Picker { - // TODO(b/116144491): use leanback pin picker. - - private final List<PickerColumn> mPickers = new ArrayList<>(); - private OnClickListener mOnClickListener; - private boolean mSkipPerformClick = true; - private boolean mIsAccessibilityEnabled = false; - - // the version of picker I link to does not have this constructor - public PinPicker(Context context, AttributeSet attributeSet) { - this(context, attributeSet, 0); - } - - public PinPicker(Context context, AttributeSet attributeSet, int defStyleAttr) { - super(context, attributeSet, defStyleAttr); - - for (int i = 0; i < 4; i++) { - PickerColumn pickerColumn = new PickerColumn(); - pickerColumn.setMinValue(0); - pickerColumn.setMaxValue(9); - pickerColumn.setLabelFormat("%d"); - mPickers.add(pickerColumn); - } - setSeparator(" "); - setColumns(mPickers); - setActivated(true); - setFocusable(true); - AccessibilityManager am = - (AccessibilityManager) context.getSystemService(ACCESSIBILITY_SERVICE); - mIsAccessibilityEnabled = am.isEnabled(); - super.setOnClickListener(this::onClick); - } - - public String getPinInput() { - String result = ""; - try { - for (PickerColumn column : mPickers) { - - result += column.getCurrentValue(); - } - } catch (IllegalStateException e) { - result = ""; - } - return result; - } - - @Override - public void setOnClickListener(@Nullable OnClickListener l) { - mOnClickListener = l; - } - - private void onClick(View v) { - int selectedColumn = getSelectedColumn(); - // (b/120096347) Skip first click when talkback is enabled - if (mSkipPerformClick && mIsAccessibilityEnabled) { - mSkipPerformClick = false; - /* Force focus to next value */ - setColumnValue(selectedColumn, 1, true); - } - int nextColumn = selectedColumn + 1; - // Only call the click listener if we are on the last column - // Otherwise move to the next column - if (nextColumn == getColumnsCount()) { - if (mOnClickListener != null) { - mOnClickListener.onClick(v); - } - } else { - setSelectedColumn(nextColumn); - onRequestFocusInDescendants(ViewGroup.FOCUS_FORWARD, null); - } - } - - public void resetPinInput() { - setActivated(false); - for (int i = 0; i < 4; i++) { - setColumnValue(i, 0, true); - } - setSelectedColumn(0); - setActivated(true); // This resets the focus - } - - @Override - public boolean dispatchKeyEvent(KeyEvent event) { - if (event.getAction() == KeyEvent.ACTION_UP) { - int keyCode = event.getKeyCode(); - int digit = digitFromKeyCode(keyCode); - if (digit != -1) { - int selectedColumn = getSelectedColumn(); - setColumnValue(selectedColumn, digit, false); - int nextColumn = selectedColumn + 1; - if (nextColumn < getColumnsCount()) { - setSelectedColumn(nextColumn); - onRequestFocusInDescendants(ViewGroup.FOCUS_FORWARD, null); - } else { - callOnClick(); - } - return true; - } - } - return super.dispatchKeyEvent(event); - } - - @VisibleForTesting - static int digitFromKeyCode(int keyCode) { - if (keyCode >= KeyEvent.KEYCODE_0 && keyCode <= KeyEvent.KEYCODE_9) { - return keyCode - KeyEvent.KEYCODE_0; - } else if (keyCode >= KeyEvent.KEYCODE_NUMPAD_0 && keyCode <= KeyEvent.KEYCODE_NUMPAD_9) { - return keyCode - KeyEvent.KEYCODE_NUMPAD_0; - } - return -1; - } -} |