diff options
Diffstat (limited to 'src/com/android/dialer/dialpad/DialpadView.java')
-rw-r--r-- | src/com/android/dialer/dialpad/DialpadView.java | 158 |
1 files changed, 0 insertions, 158 deletions
diff --git a/src/com/android/dialer/dialpad/DialpadView.java b/src/com/android/dialer/dialpad/DialpadView.java deleted file mode 100644 index a8b1e79a7..000000000 --- a/src/com/android/dialer/dialpad/DialpadView.java +++ /dev/null @@ -1,158 +0,0 @@ -/* - * Copyright (C) 2014 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.dialer.dialpad; - -import android.content.Context; -import android.content.res.Resources; -import android.util.AttributeSet; -import android.view.MotionEvent; -import android.view.View; -import android.widget.EditText; -import android.widget.ImageButton; -import android.widget.LinearLayout; -import android.widget.TableRow; -import android.widget.TextView; - -import com.android.dialer.R; - -/** - * View that displays a twelve-key phone dialpad. - */ -public class DialpadView extends LinearLayout { - private static final String TAG = DialpadView.class.getSimpleName(); - - private EditText mDigits; - private ImageButton mDelete; - - private boolean mCanDigitsBeEdited; - - public DialpadView(Context context) { - this(context, null); - } - - public DialpadView(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public DialpadView(Context context, AttributeSet attrs, int defStyle) { - super(context, attrs, defStyle); - } - - @Override - protected void onFinishInflate() { - setupKeypad(); - mDigits = (EditText) findViewById(R.id.digits); - mDelete = (ImageButton) findViewById(R.id.deleteButton); - } - - private void setupKeypad() { - final int[] buttonIds = new int[] {R.id.zero, R.id.one, R.id.two, R.id.three, R.id.four, - R.id.five, R.id.six, R.id.seven, R.id.eight, R.id.nine, R.id.star, R.id.pound}; - - final int[] numberIds = new int[] {R.string.dialpad_0_number, R.string.dialpad_1_number, - R.string.dialpad_2_number, R.string.dialpad_3_number, R.string.dialpad_4_number, - R.string.dialpad_5_number, R.string.dialpad_6_number, R.string.dialpad_7_number, - R.string.dialpad_8_number, R.string.dialpad_9_number, R.string.dialpad_star_number, - R.string.dialpad_pound_number}; - - final int[] letterIds = new int[] {R.string.dialpad_0_letters, R.string.dialpad_1_letters, - R.string.dialpad_2_letters, R.string.dialpad_3_letters, R.string.dialpad_4_letters, - R.string.dialpad_5_letters, R.string.dialpad_6_letters, R.string.dialpad_7_letters, - R.string.dialpad_8_letters, R.string.dialpad_9_letters, - R.string.dialpad_star_letters, R.string.dialpad_pound_letters}; - - final Resources resources = getContext().getResources(); - - DialpadKeyButton dialpadKey; - TextView numberView; - TextView lettersView; - - for (int i = 0; i < buttonIds.length; i++) { - dialpadKey = (DialpadKeyButton) findViewById(buttonIds[i]); - numberView = (TextView) dialpadKey.findViewById(R.id.dialpad_key_number); - lettersView = (TextView) dialpadKey.findViewById(R.id.dialpad_key_letters); - final String numberString = resources.getString(numberIds[i]); - numberView.setText(numberString); - numberView.setElegantTextHeight(false); - dialpadKey.setContentDescription(numberString); - if (lettersView != null) { - lettersView.setText(resources.getString(letterIds[i])); - } - } - - final DialpadKeyButton one = (DialpadKeyButton) findViewById(R.id.one); - one.setLongHoverContentDescription( - resources.getText(R.string.description_voicemail_button)); - - final DialpadKeyButton zero = (DialpadKeyButton) findViewById(R.id.zero); - zero.setLongHoverContentDescription( - resources.getText(R.string.description_image_button_plus)); - - } - - public void setShowVoicemailButton(boolean show) { - View view = findViewById(R.id.dialpad_key_voicemail); - if (view != null) { - view.setVisibility(show ? View.VISIBLE : View.INVISIBLE); - } - } - - /** - * Whether or not the digits above the dialer can be edited. - * - * @param canBeEdited If true, the backspace button will be shown and the digits EditText - * will be configured to allow text manipulation. - */ - public void setCanDigitsBeEdited(boolean canBeEdited) { - View deleteButton = findViewById(R.id.deleteButton); - deleteButton.setVisibility(canBeEdited ? View.VISIBLE : View.GONE); - - EditText digits = (EditText) findViewById(R.id.digits); - digits.setClickable(canBeEdited); - digits.setLongClickable(canBeEdited); - digits.setFocusableInTouchMode(canBeEdited); - digits.setCursorVisible(false); - - View overflowMenuButton = findViewById(R.id.dialpad_overflow); - overflowMenuButton.setVisibility(canBeEdited ? View.VISIBLE : View.GONE); - - View addContactButton = findViewById(R.id.dialpad_add_contact); - addContactButton.setVisibility(canBeEdited ? View.VISIBLE : View.GONE); - mCanDigitsBeEdited = canBeEdited; - } - - public boolean canDigitsBeEdited() { - return mCanDigitsBeEdited; - } - - /** - * Always returns true for onHoverEvent callbacks, to fix problems with accessibility due to - * the dialpad overlaying other fragments. - */ - @Override - public boolean onHoverEvent(MotionEvent event) { - return true; - } - - public EditText getDigits() { - return mDigits; - } - - public ImageButton getDeleteButton() { - return mDelete; - } -} |