From 2c1d050d5915931c9714726ac497257cf072d9c9 Mon Sep 17 00:00:00 2001 From: xing Date: Wed, 25 Mar 2015 14:43:02 +0800 Subject: [PATCH] [Android] Implement XWalkView.setZOrderOnTop Use this API to control whether the XWalkView's surface is placed on top of its window. Note this only works when XWalkPreferences.ANIMATABLE_XWALK_VIEW is false. BUG=XWALK-3778,XWALK-3742 --- .../src/org/xwalk/core/internal/XWalkContent.java | 5 +++++ .../org/xwalk/core/internal/XWalkViewInternal.java | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkContent.java b/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkContent.java index 7523e72b79..86c5df54c2 100644 --- a/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkContent.java +++ b/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkContent.java @@ -778,6 +778,11 @@ public void setOverlayVideoMode(boolean enabled) { } } + public void setZOrderOnTop(boolean onTop) { + if (mContentViewRenderView == null) return; + mContentViewRenderView.setZOrderOnTop(onTop); + } + private native long nativeInit(); private static native void nativeDestroy(long nativeXWalkContent); private native WebContents nativeGetWebContents(long nativeXWalkContent); diff --git a/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkViewInternal.java b/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkViewInternal.java index 32ff113fc3..73df74ef12 100644 --- a/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkViewInternal.java +++ b/runtime/android/core_internal/src/org/xwalk/core/internal/XWalkViewInternal.java @@ -941,6 +941,18 @@ void setOverlayVideoMode(boolean enabled) { mContent.setOverlayVideoMode(enabled); } + /** + * Control whether the XWalkView's surface is placed on top of its window. + * Note this only works when XWalkPreferences.ANIMATABLE_XWALK_VIEW is false. + * @param onTop true for on top. + * @since 5.0 + */ + @XWalkAPI + public void setZOrderOnTop(boolean onTop) { + if (mContent == null) return; + mContent.setZOrderOnTop(onTop); + } + // Below methods are for test shell and instrumentation tests. /** * @hide