1 /* 2 * Copyright (C) 2017 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 5 * except in compliance with the License. You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software distributed under the 10 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 11 * KIND, either express or implied. See the License for the specific language governing 12 * permissions and limitations under the License. 13 */ 14 15 package com.android.systemui.tuner; 16 17 import android.content.Context; 18 import android.graphics.drawable.Drawable; 19 import android.util.TypedValue; 20 21 import androidx.preference.CheckBoxPreference; 22 23 import com.android.systemui.statusbar.ScalingDrawableWrapper; 24 25 public class SelectablePreference extends CheckBoxPreference { 26 private final int mSize; 27 SelectablePreference(Context context)28 public SelectablePreference(Context context) { 29 super(context); 30 setWidgetLayoutResource(com.android.systemui.R.layout.preference_widget_radiobutton); 31 setSelectable(true); 32 mSize = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 32, 33 context.getResources().getDisplayMetrics()); 34 } 35 36 @Override setIcon(Drawable icon)37 public void setIcon(Drawable icon) { 38 super.setIcon(new ScalingDrawableWrapper(icon, 39 mSize / (float) icon.getIntrinsicWidth())); 40 } 41 42 @Override toString()43 public String toString() { 44 return ""; 45 } 46 } 47