Fix bug #4972141 Overlapping content in single-choice dialogs

- need to take care about padding resolution

Change-Id: Ida9738ffada6c6455b7949f933fa61924c4f7961
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 74dc100..8627ab2 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -2167,21 +2167,27 @@
 
     /**
      * Cache the paddingRight set by the user to append to the scrollbar's size.
+     *
+     * @hide
      */
     @ViewDebug.ExportedProperty(category = "padding")
-    int mUserPaddingRight;
+    protected int mUserPaddingRight;
 
     /**
      * Cache the paddingBottom set by the user to append to the scrollbar's size.
+     *
+     * @hide
      */
     @ViewDebug.ExportedProperty(category = "padding")
-    int mUserPaddingBottom;
+    protected int mUserPaddingBottom;
 
     /**
      * Cache the paddingLeft set by the user to append to the scrollbar's size.
+     *
+     * @hide
      */
     @ViewDebug.ExportedProperty(category = "padding")
-    int mUserPaddingLeft;
+    protected int mUserPaddingLeft;
 
     /**
      * Cache if the user padding is relative.
diff --git a/core/java/android/widget/CheckedTextView.java b/core/java/android/widget/CheckedTextView.java
index 8d4aaea..49616cc 100644
--- a/core/java/android/widget/CheckedTextView.java
+++ b/core/java/android/widget/CheckedTextView.java
@@ -130,10 +130,10 @@
             setMinHeight(d.getIntrinsicHeight());
             
             mCheckMarkWidth = d.getIntrinsicWidth();
-            mPaddingRight = mCheckMarkWidth + mBasePaddingRight;
+            mUserPaddingRight = mCheckMarkWidth + mBasePaddingRight;
             d.setState(getDrawableState());
         } else {
-            mPaddingRight = mBasePaddingRight;
+            mUserPaddingRight = mBasePaddingRight;
         }
         mCheckMarkDrawable = d;
         requestLayout();
@@ -142,7 +142,7 @@
     @Override
     public void setPadding(int left, int top, int right, int bottom) {
         super.setPadding(left, top, right, bottom);
-        mBasePaddingRight = mPaddingRight;
+        mBasePaddingRight = mUserPaddingRight;
     }
 
     @Override
@@ -167,9 +167,9 @@
             
             int right = getWidth();
             checkMarkDrawable.setBounds(
-                    right - mCheckMarkWidth - mBasePaddingRight, 
+                    right - mUserPaddingRight,
                     y, 
-                    right - mBasePaddingRight, 
+                    right - mUserPaddingRight + mCheckMarkWidth,
                     y + height);
             checkMarkDrawable.draw(canvas);
         }