inAppBrowser

backbutton

With these modifications the hardware back button works within pages in an InAppBrowser.

In src/com/org/apache/corodova/inappbrowser/InAppBrowser.java change

private void goBack() { if (this.inAppWebView.canGoBack()) { this.inAppWebView.goBack(); } }

to (public method)

public void goBack() { if (this.inAppWebView.canGoBack()) { this.inAppWebView.goBack(); } } public boolean canGoBack() { return this.inAppWebView.canGoBack(); }

src/com/org/apache/corodova/inappbrowser/InAppBrowserDialog.java change

public void onBackPressed () { if (this.inAppBrowser == null) { this.dismiss(); } else { // better to go through the in inAppBrowser // because it does a clean up this.inAppBrowser.closeDialog(); } }

to

public void onBackPressed () { if (this.inAppBrowser == null) { this.dismiss(); } else { if (this.inAppBrowser.canGoBack()) { this.inAppBrowser.goBack(); } else { this.inAppBrowser.closeDialog(); } } }

autoplay

Enable video autplay without gestures

In file src/com/org/apache/corodova/inappbrowser/InAppBrowser.java add (~647 row)

inAppWebView.loadUrl(url); inAppWebView.setId(6); inAppWebView.getSettings().setLoadWithOverviewMode(true); inAppWebView.getSettings().setUseWideViewPort(true); + inAppWebView.getSettings().setMediaPlaybackRequiresUserGesture(false);

loop

Looping mode does not work, add this hack to javascript and add looping=“loop” attribute to video tag

var videos = jQNew( "video[looping='loop']" ); for (index = 0; index < videos.length; ++index) { videos[index].addEventListener('ended', function (e) {window.location.reload();},false); }