Audio in apps which embed WebViews is corrupted.
https://bugs.webkit.org/show_bug.cgi?id=118163

Reviewed by Maciej Stachowiak.

Source/WebCore:

Add a preference, which defaults to off, which controls whether the
AudioSessionManager will switch to a large audio buffer setting for
power-savings during <video> playback.

* WebCore.exp.in:
* page/Settings.cpp:
(WebCore::Settings::setLowPowerVideoAudioBufferSizeEnabled): Added.  Simple setter.
* page/Settings.h:
(WebCore::Settings::lowPowerVideoAudioBufferSizeEnabled): Added.  Simple getter.
* platform/audio/mac/AudioSessionManagerMac.cpp:
(AudioSessionManager::updateSessionState): Only set the large audio buffer
    size if lowPowerVideoAudioBufferSize is enabled.

Source/WebKit/mac:

Expose the WebCore lowPowerVideoAudioBufferSizeEnabled setting to WebKit clients.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences lowPowerVideoAudioBufferSizeEnabled]):
(-[WebPreferences setLowPowerVideoAudioBufferSizeEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

Expose the WebCore lowPowerVideoAudioBufferSizeEnabled setting to WebKit2 clients.

* Shared/WebPreferencesStore.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Support for mspace element
https://bugs.webkit.org/show_bug.cgi?id=115610

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-07-01
Reviewed by Chris Fleizach.

Source/WebCore:

This patch adds basic support for the MathML mspace element. This is
important to let people control spacing of mathematical formulas.
Attributes width, height and depth are implemented. For the moment,
only nonnegative width are accepted.

* CMakeLists.txt: add references to the RenderMathMLSpace files.
* GNUmakefile.list.am: ditto.
* Target.pri: ditto.
* WebCore.vcxproj/WebCore.vcxproj: ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.
* css/mathml.css:
(mtable[columnlines="dashed"] > mtr > mtd + mtd): remove the obsolete linebreaking rule.
* mathml/MathMLTextElement.cpp:
(WebCore::MathMLTextElement::createRenderer): map mspaceTag to RenderMathMLSpace.
* mathml/mathattrs.in: add width, height and depth attributes
* mathml/mathtags.in: add mspace element
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::parseMathMLLength): fix int to float conversion.
* rendering/mathml/RenderMathMLBlock.h: declare isRenderMathMLSpace.
(WebCore::RenderMathMLBlock::isRenderMathMLSpace):
* rendering/mathml/RenderMathMLSpace.cpp: Added.
(WebCore::RenderMathMLSpace::RenderMathMLSpace):
(WebCore::RenderMathMLSpace::isChildAllowed):
(WebCore::RenderMathMLSpace::computePreferredLogicalWidths):
(WebCore::RenderMathMLSpace::updateFromElement):
(WebCore::RenderMathMLSpace::updateLogicalWidth):
(WebCore::RenderMathMLSpace::updateLogicalHeight):
(WebCore::RenderMathMLSpace::layout):
(WebCore::RenderMathMLSpace::styleDidChange):
(WebCore::RenderMathMLSpace::firstLineBoxBaseline):
* rendering/mathml/RenderMathMLSpace.h: Added.
(WebCore::RenderMathMLSpace::isRenderMathMLSpace):
(WebCore::RenderMathMLSpace::renderName):
(WebCore::toRenderMathMLSpace):

LayoutTests:

Add a reftest for the mspace element (width, height and depth) and
the parsing of MathML lengths. Import a reftest from Gecko to check
positive namedspace values.

* mathml/presentation/mspace-expected.html: Added.
* mathml/presentation/mspace-units-expected.html: Added.
* mathml/presentation/mspace-units.html: Added.
* mathml/presentation/mspace.html: Added.
* mathml/presentation/positive-namedspace-expected.html: Added.
* mathml/presentation/positive-namedspace.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add screenshot of the inspector color picker for the blog

* blog-files/last-week-in-webkit: Added.
* blog-files/last-week-in-webkit/Inspector_color_picker.png: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove support for consumable user gestures
https://bugs.webkit.org/show_bug.cgi?id=118247

Reviewed by Geoffrey Garen.

Source/WebCore:

The features was not enabled on any port, and is meanwhile broken, so we
should delete it.

No new tests, just deleting dead code.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
* bindings/ScriptControllerBase.cpp:
(WebCore::ScriptController::executeScript):
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::executeScriptInWorld):
* dom/UserGestureIndicator.cpp:
(WebCore::isDefinite):
(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::~UserGestureIndicator):
* dom/UserGestureIndicator.h:
(WebCore::UserGestureIndicator::processingUserGesture):
* inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::openInNewTab):
* inspector/InspectorFrontendHost.cpp:
(WebCore::FrontendMenuProvider::contextMenuItemSelected):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::navigate):
* loader/NavigationScheduler.cpp:
(WebCore::ScheduledURLNavigation::fire):
(WebCore::ScheduledURLNavigation::didStartTimer):
(WebCore::ScheduledRedirect::fire):
(WebCore::ScheduledRefresh::fire):
(WebCore::ScheduledHistoryNavigation::fire):
(WebCore::ScheduledFormSubmission::fire):
(WebCore::ScheduledFormSubmission::didStartTimer):
* page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::fired):
* page/DOMTimer.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::showModalDialog):
* page/EventHandler.cpp:
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
* page/EventHandler.h:
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::toggleMediaFullscreenState):
(WebCore::HitTestResult::enterFullscreenForVideo):

Source/WebKit/blackberry:

* WebKitSupport/NotificationManager.cpp:
(BlackBerry::WebKit::NotificationManager::notificationClicked):

Source/WebKit/mac:

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluate):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):

Source/WebKit/qt:

* WebCoreSupport/NotificationPresenterClientQt.cpp:
(WebCore::NotificationPresenterClientQt::notificationClicked):

Source/WebKit/win:

* WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::searchWithGoogle):

Source/WebKit2:

* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::WebNotificationManager::didClickNotification):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performFrameLoadURLRequest):
(WebKit::PluginView::evaluate):
* WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
(WebKit::WebContextMenuClient::searchWithGoogle):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152238 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build correction.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Need to export tag for textarea element.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Removed all references to DrawingBuffer methods unused since the removal of Chromium:
DrawingBuffer::prepareBackBuffer,
DrawingBuffer::requiresCopyFromBackToFrontBuffer, and
DrawingBuffer::clearPlatformLayer.
https://bugs.webkit.org/show_bug.cgi?id=118257

Reviewed by Darin Adler.

* platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
(WebCore::DrawingBuffer::platformLayer):
* platform/graphics/cairo/DrawingBufferCairo.cpp:
(WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
* platform/graphics/clutter/DrawingBufferClutter.cpp:
(WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
* platform/graphics/gpu/DrawingBuffer.cpp:
(WebCore::DrawingBuffer::clear):
* platform/graphics/gpu/DrawingBuffer.h:
* platform/graphics/gpu/mac/DrawingBufferMac.mm:
(WebCore::DrawingBuffer::frontColorBuffer):
* platform/graphics/gpu/qt/DrawingBufferQt.cpp:
(WebCore::DrawingBuffer::paintCompositedResultsToCanvas):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Properly hide the header and footer banners if they are set to null.
https://bugs.webkit.org/show_bug.cgi?id=118219

Reviewed by Beth Dakin.

Call Page::addFooterWithHeight(0) to remove the parent layer that hosts the banner when
the footer banner is detached. Similarly for the header banner.

* WebProcess/WebPage/mac/PageBannerMac.mm:
(WebKit::PageBanner::detachFromPage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152249 268f45cc-cd09-0410-ab3c-d52691b4dbfc