Update restricted icon position in RestrictedSwitchPreference.

Bug: 25603665
Bug: 27263775
Change-Id: I7066b19d75cf426b60c8aeac816828810d8c5d13
diff --git a/src/com/android/phone/RestrictedSwitchPreference.java b/src/com/android/phone/RestrictedSwitchPreference.java
index 1fdf22f..fd2b222 100644
--- a/src/com/android/phone/RestrictedSwitchPreference.java
+++ b/src/com/android/phone/RestrictedSwitchPreference.java
@@ -31,10 +31,12 @@
     private final Context mContext;
     private boolean mDisabledByAdmin;
     private EnforcedAdmin mEnforcedAdmin;
+    private final int mSwitchWidgetResId;
 
     public RestrictedSwitchPreference(Context context, AttributeSet attrs, int defStyleAttr,
             int defStyleRes) {
         super(context, attrs, defStyleAttr, defStyleRes);
+        mSwitchWidgetResId = getWidgetLayoutResource();
         mContext = context;
     }
 
@@ -53,12 +55,14 @@
     @Override
     public void onBindView(View view) {
         super.onBindView(view);
-        final TextView titleView = (TextView) view.findViewById(com.android.internal.R.id.title);
-        if (titleView != null) {
-            RestrictedLockUtils.setTextViewPadlock(mContext, titleView, mDisabledByAdmin);
-            if (mDisabledByAdmin) {
-                view.setEnabled(true);
-            }
+        if (mDisabledByAdmin) {
+            view.setEnabled(true);
+        }
+        final TextView summaryView = (TextView) view.findViewById(android.R.id.summary);
+        if (summaryView != null && mDisabledByAdmin) {
+            summaryView.setText(
+                    isChecked() ? R.string.enabled_by_admin : R.string.disabled_by_admin);
+            summaryView.setVisibility(View.VISIBLE);
         }
     }
 
@@ -81,6 +85,7 @@
         mEnforcedAdmin = admin;
         if (mDisabledByAdmin != disabled) {
             mDisabledByAdmin = disabled;
+            setWidgetLayoutResource(disabled ? R.layout.restricted_icon : mSwitchWidgetResId);
             setEnabled(!disabled);
         }
     }