modified settings to use settingslib class

LinkTextView is duplicated in various places in the
code base. The duplicate in settings has been removed
and the relevant classes have been updated to use the
one located in SettingsLib.

Test: robotests still pass
Bug: 34621372
Change-Id: I1d3cffb5e1960042fab752a47c0d842406468fd2
This commit is contained in:
Salvador Martinez
2017-01-23 14:06:49 -08:00
parent d9d463be8b
commit 3213a28d04
3 changed files with 2 additions and 68 deletions

View File

@@ -1,66 +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.settings.widget;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v13.view.ViewCompat;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.TextView;
import com.android.setupwizardlib.util.LinkAccessibilityHelper;
/**
* Copied from setup wizard.
*/
public class LinkTextView extends TextView {
private LinkAccessibilityHelper mAccessibilityHelper;
public LinkTextView(Context context) {
this(context, null);
}
public LinkTextView(Context context, AttributeSet attrs) {
super(context, attrs);
mAccessibilityHelper = new LinkAccessibilityHelper(this);
ViewCompat.setAccessibilityDelegate(this, mAccessibilityHelper);
}
@Override
public void setText(CharSequence text, BufferType type) {
super.setText(text, type);
if (text instanceof Spanned) {
final ClickableSpan[] spans =
((Spanned) text).getSpans(0, text.length(), ClickableSpan.class);
if (spans.length > 0) {
setMovementMethod(LinkMovementMethod.getInstance());
}
}
}
@Override
protected boolean dispatchHoverEvent(@NonNull MotionEvent event) {
if (mAccessibilityHelper.dispatchHoverEvent(event)) {
return true;
}
return super.dispatchHoverEvent(event);
}
}