Source/WebCore: Specified width CSS tables should not include border and padding as part of that width.
https://bugs.webkit.org/show_bug.cgi?id=77028

Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-11-12
Reviewed by Julien Chaffraix.

CSS table width should not include border and padding even though HTML
tables size as though their width includes border/padding.

This is applicable for all CSS tables with specified widths.

The change would also make our rendering of CSS tables with specified
width similar to that of Opera, IE and FF.

Test: fast/table/css-table-width-with-border-padding.html

* rendering/RenderTable.cpp:
(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
Added check for all (positive) specified widths for CSS tables to
consider border and padding outside of the specified width.

LayoutTests: Specified width CSS tables should not include border and padding as part of that width.
https://bugs.webkit.org/show_bug.cgi?id=77028

Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-11-12
Reviewed by Julien Chaffraix.

* fast/table/css-table-width-with-border-padding-expected.html: Added.
* fast/table/css-table-width-with-border-padding.html: Added.
Test added for verifying that for specified width css tables, border
and padding are not considered as part of the specified table width.

The test also verifies the width values for the different box-sizing
properties viz, content-box, border-box and padding-box.

Out of these padding-box is currently not supported even though
the test verifies against this property as well.
The expected width values added for padding-box are thus incorrect
and should be lesser by 100px (padding value).

* fast/table/min-width-css-block-table-expected.txt:
* fast/table/min-width-css-inline-table-expected.txt:
* fast/table/script-tests/min-width-helpers.js:
Existing test values changed for CSS tables that have percent width
specified since for both these tests, border and padding has been
specified for all the tables.

As a result of this fix, the specified table width shall no longer
include the border and padding values thereby increasing our table
width size by exactly 30px (the value of border and padding in these
tests).
The new values for percent width css tables now match those for FF
and Opera.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134265 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r126157.
http://trac.webkit.org/changeset/126157
https://bugs.webkit.org/show_bug.cgi?id=101954

This patch caused (untestable) regression of the volume
property on Mac, Win, and Blackberry ports. (Requested by
jernoble on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-12

* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::loadWithNextMediaEngine):
(WebCore::MediaPlayer::setVolume):
(WebCore::MediaPlayer::setMuted):
(WebCore::MediaPlayer::setPreservesPitch):
(WebCore::MediaPlayer::setSize):
(WebCore::MediaPlayer::setVisible):
(WebCore::MediaPlayer::setPreload):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134268 268f45cc-cd09-0410-ab3c-d52691b4dbfc
remove the chromium-mac-mountainlion TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=101789

Reviewed by Ojan Vafai.

Nearly all of the tests have been updated for 10.8 and the remaining
failures have been merged into the main TestExpectations file. We
don't need this hook any more.

Tools:

* Scripts/webkitpy/layout_tests/port/chromium_mac.py:
(ChromiumMacPort.operating_system):
* Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:
(ChromiumMacPortTest.test_path_to_image_diff):

LayoutTests:

* platform/chromium-mac-mountainlion/TestExpectations: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More work on remote layer flushing
https://bugs.webkit.org/show_bug.cgi?id=101960

Reviewed by Andreas Kling.

* WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
* WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
(WebKit::RemoteGraphicsLayer::flushCompositingState):
Call recursiveCommitChanges.

(WebKit::RemoteGraphicsLayer::flushCompositingStateForThisLayerOnly):
Add stub function for now.

(WebKit::RemoteGraphicsLayer::recursiveCommitChanges):
Call flushCompositingStateForThisLayerOnly and then call recursiveCommitChanges recursively on all the child layers.

* WebProcess/WebPage/mac/RemoteLayerTreeController.h:
* WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
(WebKit::RemoteLayerTreeController::create):
(WebKit::RemoteLayerTreeController::RemoteLayerTreeController):
This now takes a web page.

(WebKit::RemoteLayerTreeController::setRootLayer):
Add empty function.

(WebKit::RemoteLayerTreeController::layerFlushTimerFired):
Call flushLayers explicitly.

(WebKit::RemoteLayerTreeController::flushLayers):
Force a layout and then sync all the compositing layers.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
RemoteLayerTreeController::create now takes a web page.

(WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
Call the remote layer tree controller.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, update chromium-mac-mountainlion baselines.

* platform/chromium-mac/fast/repaint/delete-into-nested-block-expected.png:
* platform/chromium-mac/fast/repaint/inline-outline-repaint-expected.png:
* platform/chromium-mac/fast/repaint/no-caret-repaint-in-non-content-editable-element-expected.png:
* platform/chromium-mac/fast/repaint/selection-after-delete-expected.png:
* platform/chromium-mac/svg/custom/foreignObject-crash-on-hover-expected.png:
* platform/chromium-mac/svg/custom/hit-test-unclosed-subpaths-expected.png:
* platform/chromium-mac/svg/custom/hit-test-with-br-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134279 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Update to new proxyInfo API
https://bugs.webkit.org/show_bug.cgi?id=101945

Patch by Joe Mason <jmason@rim.com> on 2012-11-12
Reviewed by George Staikos.

Internal PR: 234680
Reviewed internally by: Leo Yang

The proxyAddress, proxyUsername and proxyPassword methods in BlackBerry::Platform::Settings
have been replaced with a single, more efficient proxyInfo method.

No new tests because this is an API update with no behaviour change.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::storeCredentials):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134280 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix Chromium DEPS version after accidentally checking in HEAD a couple days ago.

Unreviewed, build fix.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134281 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix memory leak in createSurfaceForBackingStore()
https://bugs.webkit.org/show_bug.cgi?id=101941

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-11-12
Reviewed by Kenneth Rohde Christiansen.

Fix memory leak in createSurfaceForBackingStore(),
the RefPtr<cairo_surface_t> should be released
when returned since we pass ownership to the
caller.

No new tests, no behavior change for layout tests.

* platform/graphics/efl/CairoUtilitiesEfl.cpp:
(WebCore::createSurfaceForBackingStore):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Layout Test compositing/repaint/invalidations-on-composited-layers.html is failing/flaky
https://bugs.webkit.org/show_bug.cgi?id=101219

Reviewed by James Robinson.

Force a style recalc before starting repaint tracking.

* compositing/repaint/invalidations-on-composited-layers-expected.txt:
* compositing/repaint/invalidations-on-composited-layers.html:
* platform/chromium/TestExpectations:
* platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134287 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewd, update chromium-mac-mountainlion expectations for a few tests.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Delete WebCompositor.h
https://bugs.webkit.org/show_bug.cgi?id=101137

Reviewed by James Robinson.

The implementation of this class is getting deleted and all
WebKit-side users are already going via WebCompositorSupport instead.

Source/Platform:

* Platform.gypi:
* chromium/public/WebCompositor.h: Removed.

Source/WebKit/chromium:

* tests/WebCompositorInputHandlerImplTest.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134289 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Update expectations for calendar-picker tests..
https://bugs.webkit.org/show_bug.cgi?id=101561

* platform/chromium/TestExpectations: Updated expectations.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134291 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, update chromium-mac-lion baselines after r134279.

* platform/chromium-mac-lion/fast/repaint/delete-into-nested-block-expected.png: Added.
* platform/chromium-mac-lion/fast/repaint/inline-outline-repaint-expected.png: Added.
* platform/chromium-mac-lion/fast/repaint/no-caret-repaint-in-non-content-editable-element-expected.png: Added.
* platform/chromium-mac-lion/fast/repaint/selection-after-delete-expected.png: Added.
* platform/chromium-mac-lion/svg/custom/foreignObject-crash-on-hover-expected.png: Added.
* platform/chromium-mac-lion/svg/custom/hit-test-unclosed-subpaths-expected.png: Added.
* platform/chromium-mac-lion/svg/custom/hit-test-with-br-expected.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134292 268f45cc-cd09-0410-ab3c-d52691b4dbfc
More work towards packaging layer changes up into a transaction object
https://bugs.webkit.org/show_bug.cgi?id=101969

Reviewed by Andreas Kling.

* Shared/mac/RemoteLayerTreeTransaction.h:
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::RemoteLayerTreeTransaction):
(WebKit::RemoteLayerTreeTransaction::~RemoteLayerTreeTransaction):
(WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
Add empty stubs.

* WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
(WebKit::RemoteGraphicsLayer::flushCompositingStateForThisLayerOnly):
Call layerPropertiesChanged on the current transaction.

* WebProcess/WebPage/mac/RemoteLayerTreeController.h:
* WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
(WebKit::RemoteLayerTreeController::RemoteLayerTreeController):
Initialize m_currentTransaction till 0.

(WebKit::RemoteLayerTreeController::currentTransaction):
Add getter. This may only be called from beneath flushLayers.

(WebKit::RemoteLayerTreeController::flushLayers):
Create a transaction before flusing the compositing state.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134293 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Use keyevents instead of editor commands for backspace
https://bugs.webkit.org/show_bug.cgi?id=101663

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-11-12
Reviewed by Rob Buis.

PR229395
Sending keyEvents for backspace and switching from KeyChar
to KeyDown since we are still receiving an unadultered KeyUp
from the input service. This was causing us to get two keyUps
for regular keys and no key downs for backspace since it was
triggering an editor command and bypassing JS listeners.

Reviewed internally by Mike Fenton.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::handleKeyboardInput):
(BlackBerry::WebKit::relativeRightOffset):
(WebKit):
(BlackBerry::WebKit::InputHandler::deleteTextRelativeToCursor):
(BlackBerry::WebKit::InputHandler::setText):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134294 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Add --device-pixel-ratio command line option to EFL MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=101930

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-12
Reviewed by Kenneth Rohde Christiansen.

Added --device-pixel-ratio command line option to EFL MiniBrowser which sets
the ratio between the CSS units and device pixels when the content is unscaled.
Option is applied for all the views created by mini browser.

* MiniBrowser/efl/main.c:
(window_create):
(elm_main):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Supressing a Skia change to prevent layout test breakage.

Unreviewed expectations management.

* skia_webkit.gyp: Added supression 'SK_IGNORE_FAST_BLURRECT=1'


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, update chromium-mac baselines.

* platform/chromium-mac-lion/compositing/repaint/invalidations-on-composited-layers-expected.txt: Removed.
* platform/chromium-mac-snowleopard/compositing/repaint/invalidations-on-composited-layers-expected.txt: Removed.
* platform/chromium-mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] WonFixed hi-DPI related tests.
https://bugs.webkit.org/show_bug.cgi?id=90022

* platform/chromium/TestExpectations: Added expectations.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134298 268f45cc-cd09-0410-ab3c-d52691b4dbfc
NetworkProcess: Use an accurate shouldContentSniff value when creating ResourceHandles
https://bugs.webkit.org/show_bug.cgi?id=101872

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Expose shouldSniffContent to pass it along to the NetworkProcess.

* loader/ResourceLoader.h:
(WebCore::ResourceLoader::shouldSniffContent):

Source/WebKit2:

The WebProcess now passes "shouldContentSniff" over to the NetworkProcess with the requests so it can be respected.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::scheduleNetworkRequest): Update to pass through "shouldContentSniff"
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:

* NetworkProcess/NetworkRequest.cpp:
(WebKit::NetworkRequest::NetworkRequest):
(WebKit::NetworkRequest::start):
* NetworkProcess/NetworkRequest.h:
(WebKit::NetworkRequest::create):

* NetworkProcess/NetworkResourceLoadScheduler.cpp:
(WebKit::NetworkResourceLoadScheduler::scheduleNetworkRequest): Update to pass through "shouldContentSniff"
* NetworkProcess/NetworkResourceLoadScheduler.h:
* WebProcess/Network/NetworkProcessConnection.h:

* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::WebResourceLoadScheduler::scheduleLoad): Update to pass through "shouldContentSniff"

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