From cdc8a7aea60f84946dddb1b3bafc569aa61eaee3 Mon Sep 17 00:00:00 2001 From: seven332 Date: Mon, 4 Apr 2016 15:12:33 +0800 Subject: [PATCH] Adjust GLView attachToRoot detachFromRoot --- .../main/java/com/hippo/gl/view/GLRootView.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/hippo/gl/view/GLRootView.java b/app/src/main/java/com/hippo/gl/view/GLRootView.java index 58c102c84..9a482c0db 100644 --- a/app/src/main/java/com/hippo/gl/view/GLRootView.java +++ b/app/src/main/java/com/hippo/gl/view/GLRootView.java @@ -573,28 +573,34 @@ public class GLRootView extends GLSurfaceView public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) { unfreeze(); super.surfaceChanged(holder, format, w, h); + + requestLayoutContentPane(); } @Override public void surfaceCreated(SurfaceHolder holder) { unfreeze(); super.surfaceCreated(holder); + + if (mContentView != null && !mContentView.isAttachedToRoot()) { + mContentView.attachToRoot(this); + } } @Override public void surfaceDestroyed(SurfaceHolder holder) { unfreeze(); super.surfaceDestroyed(holder); + + if (mContentView != null && mContentView.isAttachedToRoot()) { + mContentView.detachFromRoot(); + } } @Override protected void onDetachedFromWindow() { unfreeze(); super.onDetachedFromWindow(); - - if (mContentView != null) { - mContentView.detachFromRoot(); - } } /**