summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Kondik <steve@cyngn.com>2015-12-07 17:16:11 -0800
committerSteve Kondik <steve@cyngn.com>2015-12-07 17:16:11 -0800
commit5757d1ccef4fde8f1e8511e7c820f28c3b297042 (patch)
tree67eb128f78118ac5dfa7d129d2be88a00435674d
parentadb9b6733987e1c97299f687f7d2614a1fe69e9e (diff)
parentf79417e198124e78457517ec69bf7a9f48c953ce (diff)
downloadandroid_frameworks_support-5757d1ccef4fde8f1e8511e7c820f28c3b297042.tar.gz
android_frameworks_support-5757d1ccef4fde8f1e8511e7c820f28c3b297042.tar.bz2
android_frameworks_support-5757d1ccef4fde8f1e8511e7c820f28c3b297042.zip
Merge tag 'android-6.0.1_r3' of https://android.googlesource.com/platform/frameworks/support into HEAD
Android 6.0.1 release 3
-rw-r--r--v4/java/android/support/v4/app/Fragment.java5
-rw-r--r--v4/java/android/support/v4/app/FragmentController.java1
-rw-r--r--v4/java/android/support/v4/app/FragmentHostCallback.java11
-rw-r--r--v4/java/android/support/v4/app/FragmentManager.java12
-rw-r--r--v4/java/android/support/v4/provider/DocumentFile.java2
-rw-r--r--v8/renderscript/jni/android_renderscript_RenderScript.cpp20
6 files changed, 24 insertions, 27 deletions
diff --git a/v4/java/android/support/v4/app/Fragment.java b/v4/java/android/support/v4/app/Fragment.java
index 79f21ff746..48fc495bf3 100644
--- a/v4/java/android/support/v4/app/Fragment.java
+++ b/v4/java/android/support/v4/app/Fragment.java
@@ -272,9 +272,6 @@ public class Fragment implements ComponentCallbacks, OnCreateContextMenuListener
// If set this fragment is being retained across the current config change.
boolean mRetaining;
-
- // If set this fragment's loaders are being retained across the current config change.
- boolean mRetainLoader;
// If set this fragment has menu items to contribute.
boolean mHasMenu;
@@ -2153,7 +2150,7 @@ public class Fragment implements ComponentCallbacks, OnCreateContextMenuListener
mLoaderManager = mHost.getLoaderManager(mWho, mLoadersStarted, false);
}
if (mLoaderManager != null) {
- if (mRetainLoader) {
+ if (mHost.getRetainLoaders()) {
mLoaderManager.doRetain();
} else {
mLoaderManager.doStop();
diff --git a/v4/java/android/support/v4/app/FragmentController.java b/v4/java/android/support/v4/app/FragmentController.java
index dbf9ee71e0..5d647b061a 100644
--- a/v4/java/android/support/v4/app/FragmentController.java
+++ b/v4/java/android/support/v4/app/FragmentController.java
@@ -346,7 +346,6 @@ public class FragmentController {
*/
public void doLoaderStop(boolean retain) {
mHost.doLoaderStop(retain);
- mHost.mFragmentManager.setRetainLoader(retain);
}
/**
diff --git a/v4/java/android/support/v4/app/FragmentHostCallback.java b/v4/java/android/support/v4/app/FragmentHostCallback.java
index fb4410f0d0..5d6145ad71 100644
--- a/v4/java/android/support/v4/app/FragmentHostCallback.java
+++ b/v4/java/android/support/v4/app/FragmentHostCallback.java
@@ -42,9 +42,14 @@ public abstract class FragmentHostCallback<E> extends FragmentContainer {
private final Handler mHandler;
final int mWindowAnimations;
final FragmentManagerImpl mFragmentManager = new FragmentManagerImpl();
+ /** The loader managers for individual fragments [i.e. Fragment#getLoaderManager()] */
private SimpleArrayMap<String, LoaderManager> mAllLoaderManagers;
+ /** Whether or not fragment loaders should retain their state */
+ private boolean mRetainLoaders;
+ /** The loader manger for the fragment host [i.e. Activity#getLoaderManager()] */
private LoaderManagerImpl mLoaderManager;
private boolean mCheckedForLoaderManager;
+ /** Whether or not the fragment host loader manager was started */
private boolean mLoadersStarted;
public FragmentHostCallback(Context context, Handler handler, int windowAnimations) {
@@ -197,6 +202,10 @@ public abstract class FragmentHostCallback<E> extends FragmentContainer {
void onAttachFragment(Fragment fragment) {
}
+ boolean getRetainLoaders() {
+ return mRetainLoaders;
+ }
+
void doLoaderStart() {
if (mLoadersStarted) {
return;
@@ -217,6 +226,8 @@ public abstract class FragmentHostCallback<E> extends FragmentContainer {
// retain -- whether to stop the loader or retain it
void doLoaderStop(boolean retain) {
+ mRetainLoaders = retain;
+
if (mLoaderManager == null) {
return;
}
diff --git a/v4/java/android/support/v4/app/FragmentManager.java b/v4/java/android/support/v4/app/FragmentManager.java
index 8e1a2fcaa3..adf8892a2f 100644
--- a/v4/java/android/support/v4/app/FragmentManager.java
+++ b/v4/java/android/support/v4/app/FragmentManager.java
@@ -918,17 +918,6 @@ final class FragmentManagerImpl extends FragmentManager implements LayoutInflate
}
}
- void setRetainLoader(boolean retain) {
- if (mActive != null) {
- for (int i=0; i<mActive.size(); i++) {
- Fragment f = mActive.get(i);
- if (f != null) {
- f.mRetainLoader = retain;
- }
- }
- }
- }
-
void moveToState(Fragment f, int newState, int transit, int transitionStyle,
boolean keepActive) {
// Fragments that are not currently added will sit in the onCreate() state.
@@ -2264,6 +2253,7 @@ final class FragmentManagerImpl extends FragmentManager implements LayoutInflate
// This fragment was retained from a previous instance; get it
// going now.
fragment.mInLayout = true;
+ fragment.mHost = mHost;
// If this fragment is newly instantiated (either right now, or
// from last saved state), then give it the attributes to
// initialize itself.
diff --git a/v4/java/android/support/v4/provider/DocumentFile.java b/v4/java/android/support/v4/provider/DocumentFile.java
index 0529da8ff2..95e9117a90 100644
--- a/v4/java/android/support/v4/provider/DocumentFile.java
+++ b/v4/java/android/support/v4/provider/DocumentFile.java
@@ -86,7 +86,7 @@ public abstract class DocumentFile {
/**
* Create a {@link DocumentFile} representing the filesystem tree rooted at
- * the given {@link Uri}. This doesn't give you any additional access to the
+ * the given {@link File}. This doesn't give you any additional access to the
* underlying files beyond what your app already has.
* <p>
* {@link #getUri()} will return {@code file://} Uris for files explored
diff --git a/v8/renderscript/jni/android_renderscript_RenderScript.cpp b/v8/renderscript/jni/android_renderscript_RenderScript.cpp
index 32243fcdac..9d69a2d653 100644
--- a/v8/renderscript/jni/android_renderscript_RenderScript.cpp
+++ b/v8/renderscript/jni/android_renderscript_RenderScript.cpp
@@ -605,11 +605,11 @@ nScriptIntrinsicBLAS_Single(JNIEnv *_env, jobject _this, jlong con, jlong incCon
if (mUseInc) {
dispatchTab.ContextFinish((RsContext)con);
dispatchTabInc.ScriptForEachMulti((RsContext)incCon, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
} else {
dispatchTab.ScriptForEachMulti((RsContext)con, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
}
}
@@ -645,11 +645,11 @@ nScriptIntrinsicBLAS_Double(JNIEnv *_env, jobject _this, jlong con, jlong incCon
if (mUseInc) {
dispatchTab.ContextFinish((RsContext)con);
dispatchTabInc.ScriptForEachMulti((RsContext)incCon, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
} else {
dispatchTab.ScriptForEachMulti((RsContext)con, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
}
}
@@ -688,11 +688,11 @@ nScriptIntrinsicBLAS_Complex(JNIEnv *_env, jobject _this, jlong con, jlong incCo
if (mUseInc) {
dispatchTab.ContextFinish((RsContext)con);
dispatchTabInc.ScriptForEachMulti((RsContext)incCon, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
} else {
dispatchTab.ScriptForEachMulti((RsContext)con, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
}
}
@@ -731,11 +731,11 @@ nScriptIntrinsicBLAS_Z(JNIEnv *_env, jobject _this, jlong con, jlong incCon, jlo
if (mUseInc) {
dispatchTab.ContextFinish((RsContext)con);
dispatchTabInc.ScriptForEachMulti((RsContext)incCon, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
} else {
dispatchTab.ScriptForEachMulti((RsContext)con, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
}
}
@@ -764,11 +764,11 @@ nScriptIntrinsicBLAS_BNNM(JNIEnv *_env, jobject _this, jlong con, jlong incCon,
if (mUseInc) {
dispatchTab.ContextFinish((RsContext)con);
dispatchTabInc.ScriptForEachMulti((RsContext)incCon, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
} else {
dispatchTab.ScriptForEachMulti((RsContext)con, (RsScript)id, 0,
- in_allocs, sizeof(in_allocs), nullptr,
+ in_allocs, NELEM(in_allocs), nullptr,
&call, sizeof(call), nullptr, 0);
}
}