Change the volume slider to horizontal rendering for Chrome video controls.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Jun 2012 14:31:59 +0000 (14:31 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 12 Jun 2012 14:31:59 +0000 (14:31 +0000)
commit73ffbabb0f104568d503442c41e59bfb37b5c3da
tree0a46c7ef7500add2ed9fadb7f00123c62d28d2db
parent215628ce47a109d7a9a3c76fff7daf4584fd90fd
Change the volume slider to horizontal rendering for Chrome video controls.
https://bugs.webkit.org/show_bug.cgi?id=87835

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-12
Reviewed by Eric Carlson.

Source/WebCore:

No new tests - final patch in the Chrome controls update series will contain rebaselined tests.

The Chrome video controls are receiving a visual update. The volume slider is moved into
the controls with horizontal rendering, the volume slider container is removed. The visual
update itself is in a separate patch.

* css/mediaControlsChromium.css:
(audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
Removed relative positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
Removed absolute positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
Removed absolute positioning to render all controls elements equally in DOM order.
(audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
Removed volume slider container - it's not necessary any more.
(audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
Remove flexbox and introduce inline display to always display this field.
(audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
Removed absolute positioning to render all controls elements equally in DOM order.
* html/shadow/MediaControlRootElementChromium.cpp:
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
Removed volume slider container - it's not necessary any more.
(WebCore::MediaControlRootElementChromium::create):
Appended the volume slider and the mute button directly to the panel, removed volume slider container.
(WebCore::MediaControlRootElementChromium::setMediaController):
Removed volume slider container.
(WebCore::MediaControlRootElementChromium::reportedError):
Removed volume slider container.
(WebCore::MediaControlRootElementChromium::showVolumeSlider):
Removed volume slider container.
* html/shadow/MediaControlRootElementChromium.h:
(WebCore):
(MediaControlRootElementChromium):
Removed volume slider container.
* html/shadow/SliderThumbElement.cpp:
(WebCore::hasVerticalAppearance):
Allow use of horizontal media volume slider.
(WebCore::RenderSliderThumb::layout):
Reuse hasVerticalAppearance function.
* rendering/RenderMediaControlsChromium.cpp:
(WebCore::RenderMediaControlsChromium::paintMediaVolumeSlider):
Change line drawing from vertical to horizontal.
* rendering/RenderTheme.h:
(WebCore::RenderTheme::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.
* rendering/RenderThemeChromiumMac.h:
(WebCore::RenderThemeChromiumMac::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.
* rendering/RenderThemeChromiumSkia.h:
(WebCore::RenderThemeChromiumSkia::usesVerticalVolumeSlider):
Add usesVerticalVolumeSlider function to allow horizontal volume sliders.

LayoutTests:

The Chrome video controls are receiving a visual update. The volume slider is included into
the controls with horizontal rendering, the volume slider container is removed. The visual
update itself is in a separate patch.

* platform/chromium/TestExpectations:
Temporarily skip tests related to volume controls rendering for Chromium.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@120072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/platform/chromium/TestExpectations
Source/WebCore/ChangeLog
Source/WebCore/css/mediaControlsChromium.css
Source/WebCore/html/shadow/MediaControlRootElementChromium.cpp
Source/WebCore/html/shadow/MediaControlRootElementChromium.h
Source/WebCore/html/shadow/SliderThumbElement.cpp
Source/WebCore/rendering/RenderMediaControlsChromium.cpp
Source/WebCore/rendering/RenderTheme.h
Source/WebCore/rendering/RenderThemeChromiumMac.h
Source/WebCore/rendering/RenderThemeChromiumSkia.h