diff options
-rw-r--r-- | api/current.txt | 2 | ||||
-rw-r--r-- | core/java/android/webkit/WebSettings.java | 20 | ||||
-rw-r--r-- | core/java/android/webkit/WebSettingsClassic.java | 20 |
3 files changed, 42 insertions, 0 deletions
diff --git a/api/current.txt b/api/current.txt index 093d4c3..29e468b 100644 --- a/api/current.txt +++ b/api/current.txt @@ -26615,6 +26615,7 @@ package android.webkit { method public boolean getLightTouchEnabled(); method public boolean getLoadWithOverviewMode(); method public synchronized boolean getLoadsImagesAutomatically(); + method public boolean getMediaPlaybackRequiresUserGesture(); method public synchronized int getMinimumFontSize(); method public synchronized int getMinimumLogicalFontSize(); method public deprecated boolean getNavDump(); @@ -26664,6 +26665,7 @@ package android.webkit { method public void setLightTouchEnabled(boolean); method public void setLoadWithOverviewMode(boolean); method public synchronized void setLoadsImagesAutomatically(boolean); + method public void setMediaPlaybackRequiresUserGesture(boolean); method public synchronized void setMinimumFontSize(int); method public synchronized void setMinimumLogicalFontSize(int); method public deprecated void setNavDump(boolean); diff --git a/core/java/android/webkit/WebSettings.java b/core/java/android/webkit/WebSettings.java index 1a868d5..7a67a14 100644 --- a/core/java/android/webkit/WebSettings.java +++ b/core/java/android/webkit/WebSettings.java @@ -199,6 +199,26 @@ public abstract class WebSettings { } /** + * Sets whether the WebView requires a user gesture to play media. + * The default is true. + * + * @param require whether the WebView requires a user gesture to play media + */ + public void setMediaPlaybackRequiresUserGesture(boolean require) { + throw new MustOverrideException(); + } + + /** + * Gets whether the WebView requires a user gesture to play media. + * + * @return true if the WebView requires a user gesture to play media + * @see #setMediaPlaybackRequiresUserGesture + */ + public boolean getMediaPlaybackRequiresUserGesture() { + throw new MustOverrideException(); + } + + /** * Sets whether the WebView should use its built-in zoom mechanisms. The * built-in zoom mechanisms comprise on-screen zoom controls, which are * displayed over the WebView's content, and the use of a pinch gesture to diff --git a/core/java/android/webkit/WebSettingsClassic.java b/core/java/android/webkit/WebSettingsClassic.java index bd30464..66651f7 100644 --- a/core/java/android/webkit/WebSettingsClassic.java +++ b/core/java/android/webkit/WebSettingsClassic.java @@ -116,6 +116,7 @@ public class WebSettingsClassic extends WebSettings { private boolean mNeedInitialFocus = true; private boolean mNavDump = false; private boolean mSupportZoom = true; + private boolean mMediaPlaybackRequiresUserGesture = true; private boolean mBuiltInZoomControls = false; private boolean mDisplayZoomControls = true; private boolean mAllowFileAccess = true; @@ -459,6 +460,25 @@ public class WebSettingsClassic extends WebSettings { } /** + * @see android.webkit.WebSettings#setMediaPlaybackRequiresUserGesture(boolean) + */ + @Override + public void setMediaPlaybackRequiresUserGesture(boolean support) { + if (mMediaPlaybackRequiresUserGesture != support) { + mMediaPlaybackRequiresUserGesture = support; + postSync(); + } + } + + /** + * @see android.webkit.WebSettings#getMediaPlaybackRequiresUserGesture() + */ + @Override + public boolean getMediaPlaybackRequiresUserGesture() { + return mMediaPlaybackRequiresUserGesture; + } + + /** * @see android.webkit.WebSettings#setBuiltInZoomControls(boolean) */ @Override |