Cherry-pick: Hide fullscreen button when fullscreen not supported.
NOTE: this cherry-pick will only be landed after
https://googleplex-android-review.git.corp.google.com/#/c/523938/
BUG=400333
Review URL: https://codereview.chromium.org/442603006
git-svn-id: svn://svn.chromium.org/blink/trunk@179633 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Conflicts:
LayoutTests/media/video-controls-fullscreen.js
Change-Id: I806815e693f10703eea832ed030579775ecd0f2e
diff --git a/LayoutTests/media/video-controls-fullscreen-not-supported.html b/LayoutTests/media/video-controls-fullscreen-not-supported.html
new file mode 100644
index 0000000..9b2fbb2
--- /dev/null
+++ b/LayoutTests/media/video-controls-fullscreen-not-supported.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>video controls fullscreen button</title>
+ <script src="../resources/testharness.js"></script>
+ <script src="../resources/testharnessreport.js"></script>
+ <script src="media-file.js"></script>
+ <script src="media-controls.js"></script>
+ <script src="video-controls-fullscreen.js"></script>
+ </head>
+ <body>
+ <div id="log"></div>
+ <script>
+ window.internals.settings.setFullscreenSupported(false);
+ fullscreen_not_supported_test();
+ </script>
+ </body>
+</html>
diff --git a/Source/core/html/shadow/MediaControls.cpp b/Source/core/html/shadow/MediaControls.cpp
index a82cf61..011e9b8 100644
--- a/Source/core/html/shadow/MediaControls.cpp
+++ b/Source/core/html/shadow/MediaControls.cpp
@@ -40,6 +40,11 @@
// LayoutTests/media/media-controls.js.
static const double timeWithoutMouseMovementBeforeHidingMediaControls = 3;
+static bool fullscreenIsSupported(const Document& document)
+{
+ return !document.settings() || document.settings()->fullscreenSupported();
+}
+
MediaControls::MediaControls(HTMLMediaElement& mediaElement)
: HTMLDivElement(mediaElement.document())
, m_mediaElement(&mediaElement)
@@ -178,7 +183,7 @@
refreshClosedCaptionsButtonVisibility();
- if (mediaElement().hasVideo())
+ if (mediaElement().hasVideo() && fullscreenIsSupported(document()))
m_fullScreenButton->show();
else
m_fullScreenButton->hide();