private int getEndPos(TextView widget) { int end; if (widget.getSelectionStart() == mManager.getSelectionStart()) { end = widget.getSelectionEnd(); } else { end = widget.getSelectionStart(); } return end; }
/** Make the characters of the password visible if show_password is checked. */ private void updatePasswordVisibility(boolean checked) { int pos = mPasswordView.getSelectionEnd(); mPasswordView.setInputType( InputType.TYPE_CLASS_TEXT | (checked ? InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD : InputType.TYPE_TEXT_VARIATION_PASSWORD)); if (pos >= 0) { ((EditText) mPasswordView).setSelection(pos); } }
private void captureValues(TransitionValues transitionValues) { if (transitionValues.view instanceof TextView) { TextView textview = (TextView) transitionValues.view; transitionValues.values.put(PROPNAME_TEXT, textview.getText()); if (textview instanceof EditText) { transitionValues.values.put(PROPNAME_TEXT_SELECTION_START, textview.getSelectionStart()); transitionValues.values.put(PROPNAME_TEXT_SELECTION_END, textview.getSelectionEnd()); } if (mChangeBehavior > CHANGE_BEHAVIOR_KEEP) { transitionValues.values.put(PROPNAME_TEXT_COLOR, textview.getCurrentTextColor()); } } }
@Override public void onCheckedChanged(CompoundButton view, boolean isChecked) { if (view.getId() == R.id.show_password) { int pos = mPasswordView.getSelectionEnd(); mPasswordView.setInputType( InputType.TYPE_CLASS_TEXT | (isChecked ? InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD : InputType.TYPE_TEXT_VARIATION_PASSWORD)); if (pos >= 0) { ((EditText) mPasswordView).setSelection(pos); } } else if (view.getId() == R.id.wifi_advanced_togglebox) { if (isChecked) { mView.findViewById(R.id.wifi_advanced_fields).setVisibility(View.VISIBLE); } else { mView.findViewById(R.id.wifi_advanced_fields).setVisibility(View.GONE); } } }