Merge "Deprecate LOAD_STATE_SUCCESS and FAILURE" into oc-support-26.0-dev
diff --git a/compat/java/android/support/v4/app/JobIntentService.java b/compat/java/android/support/v4/app/JobIntentService.java
index daeb55b..a5417e6 100644
--- a/compat/java/android/support/v4/app/JobIntentService.java
+++ b/compat/java/android/support/v4/app/JobIntentService.java
@@ -26,6 +26,7 @@
 import android.content.Context;
 import android.content.Intent;
 import android.os.AsyncTask;
+import android.os.Build;
 import android.os.IBinder;
 import android.os.PowerManager;
 import android.support.annotation.NonNull;
@@ -93,10 +94,11 @@
     static final boolean DEBUG = false;
 
     CompatJobEngine mJobImpl;
-    ArrayList<CompatWorkItem> mCompatQueue;
     WorkEnqueuer mCompatWorkEnqueuer;
     CommandProcessor mCurProcessor;
 
+    final ArrayList<CompatWorkItem> mCompatQueue;
+
     static final Object sLock = new Object();
     static final HashMap<Class, WorkEnqueuer> sClassWorkEnqueuer = new HashMap<>();
 
@@ -385,19 +387,22 @@
      * Default empty constructor.
      */
     public JobIntentService() {
+        if (Build.VERSION.SDK_INT >= 26) {
+            mCompatQueue = null;
+        } else {
+            mCompatQueue = new ArrayList<>();
+        }
     }
 
     @Override
     public void onCreate() {
         super.onCreate();
         if (DEBUG) Log.d(TAG, "CREATING: " + this);
-        if (BuildCompat.isAtLeastO()) {
+        if (Build.VERSION.SDK_INT >= 26) {
             mJobImpl = new JobServiceEngineImpl(this);
-            mCompatQueue = null;
             mCompatWorkEnqueuer = null;
         } else {
             mJobImpl = null;
-            mCompatQueue = new ArrayList<>();
             mCompatWorkEnqueuer = getWorkEnqueuer(this, this.getClass(), false, 0);
             mCompatWorkEnqueuer.serviceCreated();
         }
diff --git a/media-compat/proguard-rules.pro b/media-compat/proguard-rules.pro
index 38a9966..416b2e8 100644
--- a/media-compat/proguard-rules.pro
+++ b/media-compat/proguard-rules.pro
@@ -13,6 +13,6 @@
 # limitations under the License.
 
 # Prevent Parcelable objects from being removed or renamed.
--keep class * implements android.os.Parcelable {
+-keep class android.support.v4.media.** implements android.os.Parcelable {
     public static final android.os.Parcelable$Creator *;
 }
\ No newline at end of file
diff --git a/v7/appcompat/tests/src/android/support/v7/widget/AppCompatTextViewAutoSizeTest.java b/v7/appcompat/tests/src/android/support/v7/widget/AppCompatTextViewAutoSizeTest.java
index f05f8f8..b8f082e 100644
--- a/v7/appcompat/tests/src/android/support/v7/widget/AppCompatTextViewAutoSizeTest.java
+++ b/v7/appcompat/tests/src/android/support/v7/widget/AppCompatTextViewAutoSizeTest.java
@@ -995,12 +995,15 @@
     }
 
     @Test
-    public void testAutosizeWithMaxLines_shouldNotThrowException() throws Throwable {
+    public void testAutoSizeWithMaxLines_shouldNotThrowException() throws Throwable {
         // the layout contains an instance of CustomTextViewWithTransformationMethod
         final AppCompatTextView textView = (AppCompatTextView) mActivityTestRule.getActivity()
                 .getLayoutInflater().inflate(R.layout.textview_autosize_maxlines, null);
         assertTrue(textView instanceof CustomTextViewWithTransformationMethod);
-        assertEquals(1, textView.getMaxLines());
+        // Method added in API 16.
+        if (Build.VERSION.SDK_INT >= 16) {
+            assertEquals(1, textView.getMaxLines());
+        }
         assertEquals(TextView.AUTO_SIZE_TEXT_TYPE_UNIFORM, textView.getAutoSizeTextType());
         assertTrue(textView.getTransformationMethod() instanceof SingleLineTransformationMethod);
     }