Title: [119966] trunk/Source
Revision
119966
Author
[email protected]
Date
2012-06-11 02:26:31 -0700 (Mon, 11 Jun 2012)

Log Message

Adding a flag to show fullscreen media controls in chromium
https://bugs.webkit.org/show_bug.cgi?id=88266

Patch by Min Qin <[email protected]> on 2012-06-11
Reviewed by Adam Barth.

Source/WebCore:

The default chromium shadow DOM for media element does not contain fullscreen button.
This change adds a flag to display the fullscreen button.
It will be used by the android port.

No new tests needed. We will use the same layout tests as desktop chromium.
However, new test result expections will be added later.

* html/shadow/MediaControlRootElementChromium.cpp:
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
(WebCore::MediaControlRootElementChromium::create):
(WebCore::MediaControlRootElementChromium::setMediaController):
(WebCore::MediaControlRootElementChromium::reset):
(WebCore::MediaControlRootElementChromium::reportedError):
* html/shadow/MediaControlRootElementChromium.h:
(MediaControlRootElementChromium):

Source/WebKit/chromium:

Adding a flag to the gyp file so that we can enable fullscreen media control

* features.gypi:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (119965 => 119966)


--- trunk/Source/WebCore/ChangeLog	2012-06-11 09:17:07 UTC (rev 119965)
+++ trunk/Source/WebCore/ChangeLog	2012-06-11 09:26:31 UTC (rev 119966)
@@ -1,3 +1,26 @@
+2012-06-11  Min Qin  <[email protected]>
+
+        Adding a flag to show fullscreen media controls in chromium
+        https://bugs.webkit.org/show_bug.cgi?id=88266
+
+        Reviewed by Adam Barth.
+
+        The default chromium shadow DOM for media element does not contain fullscreen button.
+        This change adds a flag to display the fullscreen button.
+        It will be used by the android port.
+
+        No new tests needed. We will use the same layout tests as desktop chromium.
+        However, new test result expections will be added later.
+
+        * html/shadow/MediaControlRootElementChromium.cpp:
+        (WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
+        (WebCore::MediaControlRootElementChromium::create):
+        (WebCore::MediaControlRootElementChromium::setMediaController):
+        (WebCore::MediaControlRootElementChromium::reset):
+        (WebCore::MediaControlRootElementChromium::reportedError):
+        * html/shadow/MediaControlRootElementChromium.h:
+        (MediaControlRootElementChromium):
+
 2012-06-11  Michael BrĂ¼ning  <[email protected]>
 
         [Qt][WK2] Compute and set cache capacities using the current CacheModel

Modified: trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp (119965 => 119966)


--- trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp	2012-06-11 09:17:07 UTC (rev 119965)
+++ trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp	2012-06-11 09:26:31 UTC (rev 119966)
@@ -55,6 +55,9 @@
     , m_panelMuteButton(0)
     , m_volumeSlider(0)
     , m_volumeSliderContainer(0)
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    , m_fullscreenButton(0)
+#endif
     , m_panel(0)
 #if ENABLE(VIDEO_TRACK)
     , m_textDisplayContainer(0)
@@ -131,6 +134,14 @@
     if (ec)
         return 0;
 
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    RefPtr<MediaControlFullscreenButtonElement> fullscreenButton = MediaControlFullscreenButtonElement::create(document, controls.get());
+    controls->m_fullscreenButton = fullscreenButton.get();
+    panel->appendChild(fullscreenButton.release(), ec, true);
+    if (ec)
+        return 0;
+#endif
+
     controls->m_panel = panel.get();
     controls->appendChild(panel.release(), ec, true);
     if (ec)
@@ -159,6 +170,10 @@
         m_volumeSlider->setMediaController(controller);
     if (m_volumeSliderContainer)
         m_volumeSliderContainer->setMediaController(controller);
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    if (m_fullscreenButton)
+        m_fullscreenButton->setMediaController(controller);
+#endif
     if (m_panel)
         m_panel->setMediaController(controller);
 #if ENABLE(VIDEO_TRACK)
@@ -211,6 +226,9 @@
     if (m_volumeSlider)
         m_volumeSlider->setVolume(m_mediaController->volume());
 
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    m_fullscreenButton->show();
+#endif
     makeOpaque();
 }
 
@@ -262,6 +280,9 @@
     m_timelineContainer->hide();
     m_panelMuteButton->hide();
     m_volumeSliderContainer->hide();
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    m_fullscreenButton->hide();
+#endif
 }
 
 void MediaControlRootElementChromium::updateStatusDisplay()

Modified: trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.h (119965 => 119966)


--- trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.h	2012-06-11 09:17:07 UTC (rev 119965)
+++ trunk/Source/WebCore/html/shadow/MediaControlRootElementChromium.h	2012-06-11 09:26:31 UTC (rev 119966)
@@ -121,6 +121,9 @@
     MediaControlPanelMuteButtonElement* m_panelMuteButton;
     MediaControlVolumeSliderElement* m_volumeSlider;
     MediaControlVolumeSliderContainerElement* m_volumeSliderContainer;
+#if ENABLE(FULLSCREEN_MEDIA_CONTROLS)
+    MediaControlFullscreenButtonElement* m_fullscreenButton;
+#endif
     MediaControlPanelElement* m_panel;
 #if ENABLE(VIDEO_TRACK)
     MediaControlTextTrackContainerElement* m_textDisplayContainer;

Modified: trunk/Source/WebKit/chromium/ChangeLog (119965 => 119966)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-06-11 09:17:07 UTC (rev 119965)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-06-11 09:26:31 UTC (rev 119966)
@@ -1,3 +1,14 @@
+2012-06-11  Min Qin  <[email protected]>
+
+        Adding a flag to show fullscreen media controls in chromium
+        https://bugs.webkit.org/show_bug.cgi?id=88266
+
+        Reviewed by Adam Barth.
+
+        Adding a flag to the gyp file so that we can enable fullscreen media control
+        
+        * features.gypi:
+
 2012-06-09  Eugene Klyuchnikov  <[email protected]>
 
         Web Inspector: Add message loop instrumentation to public API and timeline agent

Modified: trunk/Source/WebKit/chromium/features.gypi (119965 => 119966)


--- trunk/Source/WebKit/chromium/features.gypi	2012-06-11 09:17:07 UTC (rev 119965)
+++ trunk/Source/WebKit/chromium/features.gypi	2012-06-11 09:26:31 UTC (rev 119966)
@@ -134,6 +134,7 @@
         'feature_defines': [
           'ENABLE_CALENDAR_PICKER=0',
           'ENABLE_FONT_BOOSTING=1',
+          'ENABLE_FULLSCREEN_MEDIA_CONTROLS=1',
           'ENABLE_INPUT_SPEECH=0',
           'ENABLE_INPUT_TYPE_DATETIME=1',
           'ENABLE_INPUT_TYPE_DATETIMELOCAL=1',
@@ -159,6 +160,7 @@
         'feature_defines': [
           'ENABLE_CALENDAR_PICKER=1',
           'ENABLE_FONT_BOOSTING=0',
+          'ENABLE_FULLSCREEN_MEDIA_CONTROLS=0',
           'ENABLE_INPUT_SPEECH=1',
           'ENABLE_INPUT_TYPE_DATETIME=0',
           'ENABLE_INPUT_TYPE_DATETIMELOCAL=0',
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to