summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2014-10-01 10:38:07 -0700
committerJohn Reck <jreck@google.com>2014-10-01 10:38:07 -0700
commit77e4a5250fc6df451999efe508f57968a44b603f (patch)
treee26c3542b7d6efcc4902c3e384a145938f006c83
parentc909e1b2dfa2e47b786d96818f70f6308c5a78be (diff)
Re-allow suppressing onDetachedFromWindow
Bug: 17578553 Games seem to be doing this to prevent destruction of their GL contexts, and they assume it works even if it doesn't. However, GLSurfaceView is clunky here, so while the app is doing something questionable we don't really offer a better way. For now revert back to kitkat behavior. Change-Id: Icfa9e496279b9cfa47f9bc7f6848d9313caed0d5
-rw-r--r--core/java/android/view/SurfaceView.java5
-rw-r--r--opengl/java/android/opengl/GLSurfaceView.java5
2 files changed, 4 insertions, 6 deletions
diff --git a/core/java/android/view/SurfaceView.java b/core/java/android/view/SurfaceView.java
index a2a4540e4e07..afc804c68a94 100644
--- a/core/java/android/view/SurfaceView.java
+++ b/core/java/android/view/SurfaceView.java
@@ -256,9 +256,8 @@ public class SurfaceView extends View {
updateWindow(false, false);
}
- /** @hide */
@Override
- protected void onDetachedFromWindowInternal() {
+ protected void onDetachedFromWindow() {
if (mGlobalListenersAdded) {
ViewTreeObserver observer = getViewTreeObserver();
observer.removeOnScrollChangedListener(mScrollChangedListener);
@@ -280,7 +279,7 @@ public class SurfaceView extends View {
mSession = null;
mLayout.token = null;
- super.onDetachedFromWindowInternal();
+ super.onDetachedFromWindow();
}
@Override
diff --git a/opengl/java/android/opengl/GLSurfaceView.java b/opengl/java/android/opengl/GLSurfaceView.java
index 1406f6ba4b83..3c76115cb537 100644
--- a/opengl/java/android/opengl/GLSurfaceView.java
+++ b/opengl/java/android/opengl/GLSurfaceView.java
@@ -595,9 +595,8 @@ public class GLSurfaceView extends SurfaceView implements SurfaceHolder.Callback
mDetached = false;
}
- /** @hide */
@Override
- protected void onDetachedFromWindowInternal() {
+ protected void onDetachedFromWindow() {
if (LOG_ATTACH_DETACH) {
Log.d(TAG, "onDetachedFromWindow");
}
@@ -605,7 +604,7 @@ public class GLSurfaceView extends SurfaceView implements SurfaceHolder.Callback
mGLThread.requestExitAndWait();
}
mDetached = true;
- super.onDetachedFromWindowInternal();
+ super.onDetachedFromWindow();
}
// ----------------------------------------------------------------------