Vincent, Crosswalk currently uses SurfaceView to render web pages. Once SurfaceView's invisible and covered by another view, Android won't create the surface target for it. so nothing will happen then.
For the solution suggested by Guangzhen, a dialog belongs to a new window which is different from the window which SurfaceView belongs to. So it can work well. You might have a try with this solution. Thanks for your good test case for Crosswalk embedding API! :-) Yongsheng > -----Original Message----- > From: Vincent Bernat [mailto:[email protected]] > Sent: Wednesday, April 30, 2014 2:43 PM > To: Zhu, Yongsheng > Cc: [email protected] > Subject: Re: [Crosswalk-help] Use of embedded webview > > ❦ 30 avril 2014 03:20 CEST, "Zhu, Yongsheng" <[email protected]> : > > >> 1. I am using a LinearLayout to show a "loading" screen until the > >> webview is ready. I know that the webview is ready when it will call > >> a special JS function (declared as a > >> JavascriptInterface). Unfortunately, when the webview is not visible > >> (because pushed outside of the screen by the loading widget), the > >> webpage doesn't seem to be running at all. I don't even see it in > >> the web inspector. If I make the webview visible from the beginning, > >> no problem. So, is there a way to make the webview "live" without > >> being visible? > > > I've checked your code. And the code don't call onHide/pauseTimers > > methods of XWalkView which pause the web engine inside Crosswalk. So > > that web engine is not paused when it's background. I think the > > stopped loading may be due to Android system management. Android is > > not like desktop. When an app is not in front, system needs to pause > > many things of the app. > > The app is in the front, just the webview is not visible. When I replace > XWalkview > with a regular webview, I don't have this problem: > > https://github.com/vincentbernat/dashkiosk/compare/master...feature%2Fcros > swalk > > The layout is here: > > https://github.com/vincentbernat/dashkiosk/blob/master/android/res/layout/ > main.xml > > The linear layout contains the loading screen (a frame layout) and the > webview. > Both are instructed to fill their parent. So, if the loading screen is > visible, there is > no room for the webview which is not visible. > > >> 2. My main interest in Crosswalk is the ability to have WebGL > >> available. When I load the WebGL sample from my application, it runs > >> for three seconds then seems to be killed by OOM (in dmesg, I see a > >> lot of "send sigkill to XXX (XXX). adj XXX, size XXX"). Is there a > >> way to debug that (I am not really skilled in Android > >> programming). The WebGL sample is loaded through an iframe whose > >> size is 100% and the viewport of the webview is 1280x720. I am > >> running it on a real Nexus 5. > > This is weird to me. Maybe you can share the test case with us. > > I'll try to come with a test case. There is also a GPU accelerated CSS > transition in > the mix. Maybe this is too much. > -- > printk(KERN_WARNING "%s: Short circuit detected on the lobe\n", > dev->name); > 2.4.0-test2 /usr/src/linux/drivers/net/tokenring/lanstreamer.c _______________________________________________ Crosswalk-help mailing list [email protected] https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-help
