WebKit-https.git
8 years agoUnskip some tests that are now passing with the switch to the Harfbuzz backend.
mrobinson@webkit.org [Tue, 11 Dec 2012 13:39:07 +0000 (13:39 +0000)]
Unskip some tests that are now passing with the switch to the Harfbuzz backend.

* platform/gtk/TestExpectations: Unskip some recently passing tests.

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

8 years ago[Qt][Mac] Fix transparency for WebGL content.
zeno.albisser@digia.com [Tue, 11 Dec 2012 13:37:34 +0000 (13:37 +0000)]
[Qt][Mac] Fix transparency for WebGL content.
https://bugs.webkit.org/show_bug.cgi?id=104659

When drawing a texture to the TextureMapper the flag SupportsBlending
must be passed in order to allow for transparent webgl content.
We are doing this for GLX already, but the flag was still missing
in GraphicsSurfaceMac.

Reviewed by Kenneth Rohde Christiansen.

* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):

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

8 years ago[Qt] Support third-party cookie policy for Qt clients
allan.jensen@digia.com [Tue, 11 Dec 2012 13:32:23 +0000 (13:32 +0000)]
[Qt] Support third-party cookie policy for Qt clients
https://bugs.webkit.org/show_bug.cgi?id=45455

Unreviewed fixup.

window.location is not set for http tests in platform, so use a reset function
that doesn't rely on it.

* platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:

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

8 years agoRemove unused GErrors
commit-queue@webkit.org [Tue, 11 Dec 2012 13:12:57 +0000 (13:12 +0000)]
Remove unused GErrors
https://bugs.webkit.org/show_bug.cgi?id=104657

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-11
Reviewed by Martin Robinson.

Replace unused GErrors with null pointers.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(initializeFonts):
* DumpRenderTree/gtk/EditingCallbacks.cpp:
(dumpRange):
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::inititializeFontConfigSetting):

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

8 years agoWeb Inspector: Duplicate emulated touch events in iframe
apavlov@chromium.org [Tue, 11 Dec 2012 13:00:53 +0000 (13:00 +0000)]
Web Inspector: Duplicate emulated touch events in iframe
https://bugs.webkit.org/show_bug.cgi?id=104653

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Synthetic touch events should be dispatched only on the frame containing its target, not on its ancestor frames,
up to the top frame.

* page/EventHandler.cpp:
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
  Do not dispatch a synthetic touch event on the current frame if its target is in a subframe.

LayoutTests:

The test incorrectly expected two synthetic touchend events from an iframe,
while only one touchstart and one touchend should be dispatched.

* fast/events/touch/emulated-touch-iframe-expected.txt:
* fast/events/touch/emulated-touch-iframe.html:
* fast/events/touch/resources/emulated-touch-iframe2.html:

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

8 years ago[EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
commit-queue@webkit.org [Tue, 11 Dec 2012 12:54:59 +0000 (12:54 +0000)]
[EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
https://bugs.webkit.org/show_bug.cgi?id=104652.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Reverting some of the changes from r137211, as it causes regressions
on NVIDIA drivers.

* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::copyToGraphicsSurface):
* platform/graphics/opengl/GLPlatformSurface.cpp:
(WebCore::GLPlatformSurface::updateContents):
* platform/graphics/opengl/GLPlatformSurface.h:
(GLPlatformSurface):

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

8 years ago[CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
christophe.dumez@intel.com [Tue, 11 Dec 2012 12:53:55 +0000 (12:53 +0000)]
[CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
https://bugs.webkit.org/show_bug.cgi?id=104654

Reviewed by Kenneth Rohde Christiansen.

UpdateAtlas currently uses *signed* integer type for its identifier.
Due to the way we generate those IDs, it is safer to use *unsigned*
integers. This is because the generated ID will overflow at some
point and the C and C++ language standards say that overflow of a
signed value is undefined behaviour.

This patch switches to unsigned integer type for UpdateAtlas IDs
since unsigned integers are guaranteed to wrap around on overflow.

* Shared/SurfaceUpdateInfo.h:
(SurfaceUpdateInfo):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
(WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
(WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
(LayerTreeCoordinatorProxy):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
(CoordinatedTileClient):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::createUpdateAtlas):
(WebKit::LayerTreeCoordinator::removeUpdateAtlas):
(WebKit::LayerTreeCoordinator::beginContentUpdate):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
(WebKit::UpdateAtlas::UpdateAtlas):
(WebKit::UpdateAtlas::~UpdateAtlas):
(WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
* WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
(UpdateAtlasClient):
(UpdateAtlas):

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

8 years agoWeb Inspector: follow up to r136974: do not process shortcuts while editing
pfeldman@chromium.org [Tue, 11 Dec 2012 12:45:14 +0000 (12:45 +0000)]
Web Inspector: follow up to r136974: do not process shortcuts while editing
https://bugs.webkit.org/show_bug.cgi?id=104440

Reviewed by Alexander Pavlov.

Currently, typing H while editing node results in corresponding shortcut processing.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline):
(WebInspector.ElementsTreeOutline.prototype.handleShortcut):
(WebInspector.ElementsTreeElement.prototype.onenter):
(WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
(WebInspector.ElementsTreeElement.prototype.dispose):
(WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
(WebInspector.ElementsTreeElement.prototype._editingCancelled):

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

8 years ago[Inspector] Add command for dispatching mouse events.
commit-queue@webkit.org [Tue, 11 Dec 2012 12:27:40 +0000 (12:27 +0000)]
[Inspector] Add command for dispatching mouse events.
https://bugs.webkit.org/show_bug.cgi?id=104074

Patch by Ken Kania <kkania@chromium.org> on 2012-12-11
Reviewed by Yury Semikhatsky.

Platform mouse event coordinates are relative to the containing window,
but the inspector command assumes they follow standard web coordinates,
where the origin is at the top left of the page and y increases as you
go down. We convert the coordinates to the window before constructing
the event. This also fixes the fact that some platforms have flipped
coordinate systems.
Also, update dispatchKeyEvent test to follow simpler dispatchMouseEvent
test.

Source/WebCore:

Test: inspector-protocol/input/dispatchMouseEvent.html

* inspector/Inspector.json:
* inspector/InspectorInputAgent.cpp:
(WebCore::InspectorInputAgent::dispatchMouseEvent):
(WebCore):
* inspector/InspectorInputAgent.h:
(InspectorInputAgent):

LayoutTests:

* inspector-protocol/input/dispatchKeyEvent.html:
* inspector-protocol/input/dispatchMouseEvent-expected.txt: Added.
* inspector-protocol/input/dispatchMouseEvent.html: Added.

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

8 years ago[Qt] Unreviewed gardening, skip new failing tests.
ossy@webkit.org [Tue, 11 Dec 2012 12:24:02 +0000 (12:24 +0000)]
[Qt] Unreviewed gardening, skip new failing tests.

* platform/qt/TestExpectations:

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

8 years ago[chromium] Unreviewed gardening
noel.gordon@gmail.com [Tue, 11 Dec 2012 12:19:35 +0000 (12:19 +0000)]
[chromium] Unreviewed gardening

fast/repaint/body-background-image.html
fast/text/font-initial.html

* platform/chromium/TestExpectations: These tests are passing on WIN.

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

8 years agoNot reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.
pfeldman@chromium.org [Tue, 11 Dec 2012 12:15:53 +0000 (12:15 +0000)]
Not reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.

* inspector/front-end/inspector.css:
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):

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

8 years agoImplement add64 for SH4 assembler to fix build after r136601
commit-queue@webkit.org [Tue, 11 Dec 2012 12:15:35 +0000 (12:15 +0000)]
Implement add64 for SH4 assembler to fix build after r136601
https://bugs.webkit.org/show_bug.cgi?id=104377

Patch by Julien BRIANCEAU <jbrianceau@nds.com> on 2012-12-11
Reviewed by Zoltan Herczeg.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::add64):
(MacroAssemblerSH4):

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

8 years ago[GTK] Bump the jhbuild libsoup version to fix an authentication issue
mrobinson@webkit.org [Tue, 11 Dec 2012 12:10:06 +0000 (12:10 +0000)]
[GTK] Bump the jhbuild libsoup version to fix an authentication issue
https://bugs.webkit.org/show_bug.cgi?id=104448

Reviewed by Gustavo Noronha Silva.

Tools:

Bump the libsoup version to one from the git repository. This requires updating
GLib as well which in turn requires adjusting the CFLAGS we pass when compiling
the scanobj step of the gtkdoc generation.

* gtk/generate-gtkdoc:
* gtk/jhbuild.modules:

LayoutTests:

* platform/gtk/TestExpectations: Unskip some tests which are now passing.

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

8 years ago[EFL] Unreviewed gardening.
thiago.santos@intel.com [Tue, 11 Dec 2012 12:05:43 +0000 (12:05 +0000)]
[EFL] Unreviewed gardening.

Added more shadow tests to the list of flaky tests.

* platform/efl-wk2/TestExpectations:

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

8 years agoRefactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
tkent@chromium.org [Tue, 11 Dec 2012 12:01:48 +0000 (12:01 +0000)]
Refactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
https://bugs.webkit.org/show_bug.cgi?id=104651

Reviewed by Kentaro Hara.

':read-only' and ':read-write' are pseudo classes. They are not
selectors in the context of these functions.  This patch rename them so
that they contain 'pseudo class,' and make them match to an existing
function, matchesFocusPseudoClass.

No new tests. This shouldn't make behavior changes.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
* dom/Element.cpp:
(WebCore::Element::recalcStyle):
(WebCore::Element::matchesReadOnlyPseudoClass):
(WebCore::Element::matchesReadWritePseudoClass):
* dom/Element.h:
(Element):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLInputElement::matchesReadWritePseudoClass):
* html/HTMLInputElement.h:
(HTMLInputElement):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
* html/HTMLTextAreaElement.h:
(HTMLTextAreaElement):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::matchesReadOnlyPseudoClass):
(WebCore::SliderThumbElement::matchesReadWritePseudoClass):
* html/shadow/SliderThumbElement.h:
(SliderThumbElement):
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::matchesReadOnlyPseudoClass):
(WebCore::SpinButtonElement::matchesReadWritePseudoClass):
* html/shadow/SpinButtonElement.h:
(SpinButtonElement):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::isReadOnlyControl):

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

8 years agoWeb Inspector: add more horizontal spacing for toolbar items in docked to bottom...
pfeldman@chromium.org [Tue, 11 Dec 2012 12:00:05 +0000 (12:00 +0000)]
Web Inspector: add more horizontal spacing for toolbar items in docked to bottom mode
https://bugs.webkit.org/show_bug.cgi?id=104655

Reviewed by Alexander Pavlov.

Drive-by increase height to 26px.

* inspector/front-end/inspector.css:
(#toolbar):
(body:not(.show-toolbar-icons) .toolbar-item):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
(body.show-toolbar-icons.dock-to-bottom .toolbar-item.toggleable):
(#toolbar-dropdown-arrow):
(#main):

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

8 years agoUnreviewed functionality fix for the GTK port.
zandobersek@gmail.com [Tue, 11 Dec 2012 11:45:04 +0000 (11:45 +0000)]
Unreviewed functionality fix for the GTK port.

Enable the MicroData feature support for the GTK port in the FeatureList module.
This feature listing now again affects which features are enabled and which disabled
on the development builds of the GTK port.

* Scripts/webkitperl/FeatureList.pm:

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

8 years agoUse histogram enumeration in Calendar Picker so we can get stats on UI usage
keishi@webkit.org [Tue, 11 Dec 2012 11:36:44 +0000 (11:36 +0000)]
Use histogram enumeration in Calendar Picker so we can get stats on UI usage
https://bugs.webkit.org/show_bug.cgi?id=104646

Reviewed by Kent Tamura.

Use histogram support to get stats on the calendar picker so we can improve the UI.

No new tests.

* Resources/pagepopups/calendarPicker.js:
(CalendarPicker):
(CalendarPicker.prototype.recordAction): Records action to histogram.
(CalendarPicker.prototype.handleToday): Record action.
(CalendarPicker.prototype.handleClear): Ditto.
(YearMonthController.prototype._showPopup): Ditto.
(YearMonthController.prototype._handleYearMonthChange): Ditto.
(YearMonthController.prototype._handleButtonClick): Ditto.
(DaysTable.prototype._handleDayClick): Ditto.
* page/PagePopupController.cpp:
(WebCore::PagePopupController::histogramEnumeration):
(WebCore):
* page/PagePopupController.h:
(PagePopupController):
* page/PagePopupController.idl: Added histogramEnumeration.

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

8 years ago[Qt] Support third-party cookie policy for Qt clients
allan.jensen@digia.com [Tue, 11 Dec 2012 11:30:49 +0000 (11:30 +0000)]
[Qt] Support third-party cookie policy for Qt clients
https://bugs.webkit.org/show_bug.cgi?id=45455

Reviewed by Csaba Osztrogon√°c.

Fix regressed test. The test is now run from it own dir, not the platform independent dir.

* platform/qt/TestExpectations:
* platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:

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

8 years ago[EFL][WK2] MiniBrowser is not built
commit-queue@webkit.org [Tue, 11 Dec 2012 11:10:56 +0000 (11:10 +0000)]
[EFL][WK2] MiniBrowser is not built
https://bugs.webkit.org/show_bug.cgi?id=104629

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Gyuyoung Kim.

As we are finding an elementary package in Tools/MiniBrowser/efl/CMakeList.txt since r137203,
we need to check if the package is found in the same place not in the Tools/CMakeList.txt.

* CMakeLists.txt:
* MiniBrowser/efl/CMakeLists.txt:

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

8 years ago[EFL][WK2] Create a ewk view object with new context for API tests
commit-queue@webkit.org [Tue, 11 Dec 2012 11:08:11 +0000 (11:08 +0000)]
[EFL][WK2] Create a ewk view object with new context for API tests
https://bugs.webkit.org/show_bug.cgi?id=103692

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Gyuyoung Kim.

Bug 103229 fixes the issue which PageGroupID increased even though
the EwkView was created with default context. If the Bug 103229 is
resolved, the EwkViews with same context will have same setting preferences.

Currently, WebKit2/EFL API test is creating the ewk view object
with the default context so the setting values set previously may
influence the following tests. So this patch created a ewk view object
with a new context instead of default one.

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp):

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

8 years agoIsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified.
morrita@google.com [Tue, 11 Dec 2012 10:36:24 +0000 (10:36 +0000)]
IsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified.
https://bugs.webkit.org/show_bug.cgi?id=103697

Reviewed by Ryosuke Niwa.

To save two more NodeFlags bits, this patch inroduces
UserActionElementSet to get IsLinkFlag, IsHoverFlag,
InActiveChainFlag together. These three old flags are replaced by
UserActionElementSet::ElementFlags and UserActionElementSet
collection which tracks elements which are flagged with one of
a ElementFlags.

When marking an element as active for example, WebKit sets
UserActionElementSet::IsActiveFlag to the element and store it
into corresponding element set of the document. This set maintains
marked elements and corresponding flags for each elements.

UserActionElementSet can be seen as a yet another rare data for
these flags. However, the following characteristics of these flags
make adding a new data structure on Document an attractive
alternative:

- UserActionElementSet is maintained for each Document instead of a
  global collecton. This fits element lifetime better.

- The number of elements which have these flags is generally
  small, and a group of elements for each flag is largely overlapped
  due to its nature. This property keeps the set small, and lets
  flag retrieval efficient. On majority of the elements, all these
  flags are false thus the check is done by just checking
  IsInUserActionFlag.

As a bonus, isFocused flag, which was on NodeRareData, is also moved to this model.

No new tests, covered by existing test.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* dom/DOMAllInOne.cpp:
* dom/Document.cpp:
(WebCore::Document::removedLastRef):
(WebCore::Document::updateHoverActiveState):
* dom/Document.h:
(WebCore::Document::userActionElements): Added.
(Document):
* dom/Node.cpp:
(WebCore::Node::detach):
* dom/Node.h:
(WebCore):
(WebCore::Node::isUserActionElement): Added.
(WebCore::Node::setUserActionElement): Added.
(Node):
(WebCore::Node::active): Switched to UserActionElementSet.
(WebCore::Node::inActiveChain): Switched to UserActionElementSet.
(WebCore::Node::hovered): Switched to UserActionElementSet.
(WebCore::Node::focused): Switched to UserActionElementSet.
(WebCore::Node::setFocus): Switched to UserActionElementSet.
(WebCore::Node::setActive): Switched to UserActionElementSet.
(WebCore::Node::setHovered): Switched to UserActionElementSet.
* dom/NodeRareData.h:
(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
* dom/UserActionElementSet.cpp: Added.
(WebCore):
(WebCore::UserActionElementSet::instanceFor):
(WebCore::UserActionElementSet::UserActionElementSet):
(WebCore::UserActionElementSet::~UserActionElementSet):
(WebCore::UserActionElementSet::didDetach):
(WebCore::UserActionElementSet::documentDidRemoveLastRef):
(WebCore::UserActionElementSet::hasFlags):
(WebCore::UserActionElementSet::setFlags):
(WebCore::UserActionElementSet::clearFlags):
* dom/UserActionElementSet.h: Added.
(WebCore):
(UserActionElementSet):
(WebCore::UserActionElementSet::create):
(WebCore::UserActionElementSet::isFocused):
(WebCore::UserActionElementSet::setFocused):
(WebCore::UserActionElementSet::isActive):
(WebCore::UserActionElementSet::setActive):
(WebCore::UserActionElementSet::isInActiveChain):
(WebCore::UserActionElementSet::setInActiveChain):
(WebCore::UserActionElementSet::isHovered):
(WebCore::UserActionElementSet::setHovered):
(WebCore::UserActionElementSet::setFlags):

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

8 years agoUnreviewed, rolling out r137266.
caseq@chromium.org [Tue, 11 Dec 2012 10:31:17 +0000 (10:31 +0000)]
Unreviewed, rolling out r137266.
http://trac.webkit.org/changeset/137266
https://bugs.webkit.org/show_bug.cgi?id=104071

New test fails on WebKit Win7 and chromium mac

* inspector/profiler/cpu-profiler-profiling-without-inspector-expected.txt:
* inspector/profiler/cpu-profiler-profiling-without-inspector.html:

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

8 years agoINPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
tkent@chromium.org [Tue, 11 Dec 2012 10:20:05 +0000 (10:20 +0000)]
INPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
https://bugs.webkit.org/show_bug.cgi?id=104644

Reviewed by Hajime Morita.

Source/WebCore:

Pressing the left key should focus on the field at the left of the
current focused field, and pressing the right key should focus on the
field at the right of the current focused field. This works well in LTR
locales.
In RTL locale, the current code doesn't work. We disable this behavior
for RTL locales for now. This issue will be handled in Bug 104650.

No new tests. Update some *-multiple-fields tests for new behavior.

* html/shadow/DateTimeFieldElement.cpp:
(WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
If this sub-field is in an RTL locale, we don't change focus.
(WebCore::DateTimeFieldElement::localeForOwner):
Moved from DateTimeNumericFieldElement.
* html/shadow/DateTimeFieldElement.h:
(DateTimeFieldElement): Remove isRTL, add localeForOwner.
* html/shadow/DateTimeNumericFieldElement.cpp: Remove localeForOwner.
* html/shadow/DateTimeNumericFieldElement.h:
(DateTimeNumericFieldElement): Ditto.

LayoutTests:

* fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
* fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
* fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
* fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
* fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
* fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events.html:
* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
* fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:

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

8 years ago2012-12-11 Pavel Podivilov <podivilov@google.com>
podivilov@chromium.org [Tue, 11 Dec 2012 10:06:11 +0000 (10:06 +0000)]
2012-12-11  Pavel Podivilov  <podivilov@google.com>

        [Chromium] Unreviewed, remove "platform/blackberry [ WontFix ]" from test expectations
        to make lint happy.

        * platform/chromium/TestExpectations:

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 11 Dec 2012 10:02:41 +0000 (10:02 +0000)]
Unreviewed GTK gardening.

Unskip a few test, adding expectations that (should) reflect the actual failure of each test.
Also remove the expectations for the Animation API test. Support for that feature, along with
the test, was removed just recently.

* platform/gtk/TestExpectations:

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

8 years ago2012-12-11 Pavel Podivilov <podivilov@google.com>
podivilov@chromium.org [Tue, 11 Dec 2012 09:59:40 +0000 (09:59 +0000)]
2012-12-11  Pavel Podivilov  <podivilov@google.com>

        Remove pango files deleted at r137263 form WebCore.gypi.

        Unreviewed, gardening.

        * WebCore.gypi:

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

8 years ago[GTK][jhbuild] Switch to GStreamer 1.0 build
philn@webkit.org [Tue, 11 Dec 2012 09:42:32 +0000 (09:42 +0000)]
[GTK][jhbuild] Switch to GStreamer 1.0 build
https://bugs.webkit.org/show_bug.cgi?id=91727

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-12-11
Reviewed by Philippe Normand.

Switch build-webkit --gtk to GStreamer 1.0 support and build the
necessary GStreamer git modules from JHBuild.

.:

* configure.ac: Removed GStreamer unstable API flag, made
GStreamer 1.0 default instead of 0.10 and made required version
1.0.3. In case no GStreamer version is specified, it falls back to
0.10. In case no video or web-audio are requested, GStreamer
and Farstream checks are not performed.

Tools:

* gtk/jhbuild.modules: Added GStreamer 1.0.3 build support.

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

8 years ago[GTK] Feature enabling/disabling should be possible through build-webkit
zandobersek@gmail.com [Tue, 11 Dec 2012 09:37:28 +0000 (09:37 +0000)]
[GTK] Feature enabling/disabling should be possible through build-webkit
https://bugs.webkit.org/show_bug.cgi?id=99271

Reviewed by Gustavo Noronha Silva.

.:

The autogen.sh script now calls the Tools/gtk/override-feature-defines script
before calling autoreconf. This ensures that Source/WebCore/GNUmakefile.features.am
is present and properly modified if the build-webkit script intends to override
any feature.

The Source/WebCore/GNUmakefile.features.am file is added to the ignored files list
so it doesn't pop out as a new, untracked file.

* .gitignore:
* autogen.sh:

Source/WebCore:

Move the contents of GNUmakefile.features.am into GNUmakefile.features.am.in.
The former is then copied from the latter but then appropriately modified if
the build-webkit script overrides any of the default feature defines.

No new tests - no new testable functionality.

* GNUmakefile.features.am.in: Renamed from Source/WebCore/GNUmakefile.features.am.

Tools:

Refactor the code in webkitdirs.pm that builds an autotools project to generate
autogen.sh arguments, make arguments and installation prefix from the passed-in
parameters rather than generating all of that in build-webkit. The autogen.sh
arguments now contain only enable/disable flags for options that are actually
configurable in configure.ac, the flag value actually reflecting whether the feature
is enabled or disabled in the feature list.

Other features are overridable through modifying the GNUmakefile.features.am file.
All these features are now stored in the build directory and upon change trigger
a rerun of the autogen.sh script, pretty much like the autogen.sh arguments do.

The override-feature-defines script is called by autogen.sh, before GNUmakefile.in is
generated when calling autoreconf. Its task is to copy the GNUmakefile.features.am.in
into GNUmakefile.features.am and modify it if there's a text file in the build directory
that contains all the feature defines the build-webkit script has written. If the build
is not done through build-webkit (and there's no file in build directory listing all the
feature defines) the script does not advance further from copying.

This approach is taken to overcome the rigidness of the automake system as it's impossible
to effectively generate and use GNUmakefile.features.am or even GNUmakefile.features file
after the autoreconf command execution in autogen.sh.

* Scripts/build-jsc:
(buildMyProject):
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
(runAutogenForAutotoolsProjectIfNecessary):
(mustReRunAutogen):
(buildAutotoolsProject):
(buildGtkProject):
* Scripts/webkitperl/FeatureList.pm: Update the features that are currently enabled in
Source/WebCore/GNUmakefile.features.am.in but aren't in the feature list.
* Scripts/webkitpy/style/checker.py: Source/WebCore/GNUmakefile.features.am.in is recognized
as a text file and tabulation errors are reported. Skip the file to suppress them.
* gtk/override-feature-defines: Added.
(copy_feature_defines_makefile):
(adjust_feature_defines_makefile):
(adjust_feature_defines_makefile.override_feature_define):
(override_feature_defines):

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

8 years agoUnreviewed GTK gardening
zandobersek@gmail.com [Tue, 11 Dec 2012 09:29:20 +0000 (09:29 +0000)]
Unreviewed GTK gardening

Adding failure expectations for tests that regressed in r137198 and in r137159-r137161 range.
Removing failure expectations for the SVG viewspec tests that now pass.

* platform/gtk/TestExpectations:

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

8 years ago[QT][EFL][WK2] Move the GraphicsSurfaceGLX.cpp to common place
commit-queue@webkit.org [Tue, 11 Dec 2012 09:29:07 +0000 (09:29 +0000)]
[QT][EFL][WK2] Move the GraphicsSurfaceGLX.cpp to common place
https://bugs.webkit.org/show_bug.cgi?id=104433

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

QT and EFL are commonly using the GraphicsSurfaceGLX.cpp and
it looks better to move this file to /glx directory.

* PlatformEfl.cmake:
* Target.pri:
* platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp.
(WebCore):
(OffScreenRootWindow):
(WebCore::OffScreenRootWindow::OffScreenRootWindow):
(WebCore::OffScreenRootWindow::getXWindow):
(WebCore::OffScreenRootWindow::display):
(WebCore::OffScreenRootWindow::~OffScreenRootWindow):
(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createSurface):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(WebCore::GraphicsSurfacePrivate::textureIsYInverted):
(WebCore::GraphicsSurfacePrivate::makeCurrent):
(WebCore::GraphicsSurfacePrivate::doneCurrent):
(WebCore::GraphicsSurfacePrivate::swapBuffers):
(WebCore::GraphicsSurfacePrivate::copyFromTexture):
(WebCore::GraphicsSurfacePrivate::display):
(WebCore::GraphicsSurfacePrivate::glxPixmap):
(WebCore::GraphicsSurfacePrivate::size):
(WebCore::resolveGLMethods):
(WebCore::GraphicsSurface::platformExport):
(WebCore::GraphicsSurface::platformGetTextureID):
(WebCore::GraphicsSurface::platformCopyToGLTexture):
(WebCore::GraphicsSurface::platformCopyFromTexture):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
(WebCore::GraphicsSurface::platformFrontBuffer):
(WebCore::GraphicsSurface::platformSwapBuffers):
(WebCore::GraphicsSurface::platformSize):
(WebCore::GraphicsSurface::platformCreate):
(WebCore::GraphicsSurface::platformImport):
(WebCore::GraphicsSurface::platformLock):
(WebCore::GraphicsSurface::platformUnlock):
(WebCore::GraphicsSurface::platformDestroy):
(WebCore::GraphicsSurface::platformBeginPaint):
(WebCore::GraphicsSurface::createReadOnlyImage):

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

8 years agoWeb Inspector: Evaluate private browsing mode's effect on console messages.
mkwst@chromium.org [Tue, 11 Dec 2012 09:17:59 +0000 (09:17 +0000)]
Web Inspector: Evaluate private browsing mode's effect on console messages.
https://bugs.webkit.org/show_bug.cgi?id=104383

Reviewed by Pavel Feldman.

Source/WebCore:

Two sets of console messages are currently gated on private browsing
mode being inactive. This patch centralizes the private browsing checks
in order to apply them equally to all console messages, and changes the
granularity at which they act.

The current checks block the console messages entirely. This patch
blocks only notifications to ChromeClient and ensures that messages
won't be passed to printf where they might end up in system logs.
Notifications to InspectorInstrumentation seem safe; so far as I can
tell, there's no compelling reason to prevent console-based debugging
in private browsing mode. This patch excludes those calls from the
private browsing check.

Test: inspector/console/clients-ignored-in-privatebrowsing.html

* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::printAccessDeniedMessage):
    Drop the private browsing check.
* page/Console.cpp:
(WebCore::Console::addMessage):
    Add private browsing checks to the two ::addMessage variants that
    do real work. Ensure that calls to printf and notifications to
    ChromeClients are gated on these checks, but always allow
    notifications to InspectorInstrumentation.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::printErrorMessage):
    Drop the private browsing check.

LayoutTests:

* inspector/console/clients-ignored-in-privatebrowsing-expected.txt: Added.
* inspector/console/clients-ignored-in-privatebrowsing.html: Added.
* platform/chromium/TestExpectations:
    Skip this test on Chromium, as that port doesn't use PrivateBrowsing

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

8 years agoWeb Inspector: better coverage for inspector/profiler/cpu-profiler-profiling-without...
caseq@chromium.org [Tue, 11 Dec 2012 09:15:43 +0000 (09:15 +0000)]
Web Inspector: better coverage for inspector/profiler/cpu-profiler-profiling-without-inspector.html
https://bugs.webkit.org/show_bug.cgi?id=104071

Reviewed by Pavel Feldman.

Extended test by spinning several function for a total of 400ms to provide coverage for sampling profiler.

* inspector/profiler/cpu-profiler-profiling-without-inspector-expected.txt:
* inspector/profiler/cpu-profiler-profiling-without-inspector.html:

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

8 years ago[Soup] Fix spelling of "initiating" in API.
danw@gnome.org [Tue, 11 Dec 2012 09:11:24 +0000 (09:11 +0000)]
[Soup] Fix spelling of "initiating" in API.

Reviewed by Martin Robinson.

Source/WebCore:

No new tests (just internal renaming).

* platform/network/ResourceHandle.h:
(ResourceHandle):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore):
(WebCore::setSoupRequestInitiatingPageIDFromNetworkingContext):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::getSoupRequestInitiatingPageID):

Source/WebKit2:

* WebProcess/soup/WebSoupRequestManager.cpp:
(WebKit::WebSoupRequestManager::send):

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

8 years ago[CSSRegions] Clean-up style for 2 regions expected results files
mihnea@adobe.com [Tue, 11 Dec 2012 09:09:33 +0000 (09:09 +0000)]
[CSSRegions] Clean-up style for 2 regions expected results files
https://bugs.webkit.org/show_bug.cgi?id=104572

Reviewed by Tony Chang.

Remove Win line endings, remove unnecessary spaces and close all html tags.

* fast/regions/positioned-objects-block-static-spanning-regions-expected.html:
* fast/regions/positioned-objects-block-static-spanning-regions-rtl-expected.html:

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

8 years ago[GTK] Remove the Pango backend
mrobinson@webkit.org [Tue, 11 Dec 2012 09:05:54 +0000 (09:05 +0000)]
[GTK] Remove the Pango backend
https://bugs.webkit.org/show_bug.cgi?id=104569

Reviewed by Daniel Bates.

.:

Always look for Freetype and Harfbuzz. We still depend on Pango for a few
things, so we cannot yet eliminate our dependency on Pango.

* configure.ac: Always look for FreeType/Harfbuzz.

Source/WebCore:

Remove the Pango backend entirely. The EFL build has no support for it and it's
not really maintained enough for the GTK+ port, now that HarfbuzzNG shapes complex
text when Freetype is the active text rendering backend.

No new tests. This does not change behavior.

* GNUmakefile.am: Remove Pango backend options and move Freetype options to the common list.
* GNUmakefile.list.am: Ditto.
* platform/graphics/FontPlatformData.h:
* platform/graphics/pango/FontCachePango.cpp: Removed.
* platform/graphics/pango/FontCustomPlatformDataPango.cpp: Removed.
* platform/graphics/pango/FontPango.cpp: Removed.
* platform/graphics/pango/FontPlatformData.h: Removed.
* platform/graphics/pango/FontPlatformDataPango.cpp: Removed.
* platform/graphics/pango/GlyphPageTreeNodePango.cpp: Removed.
* platform/graphics/pango/PangoUtilities.cpp: Removed.
* platform/graphics/pango/PangoUtilities.h: Removed.
* platform/graphics/pango/SimpleFontDataPango.cpp: Removed.

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

8 years agoWeb Inspector: [WebGL] prevent GC from collecting WebGLObject instances currently...
aandrey@chromium.org [Tue, 11 Dec 2012 08:58:03 +0000 (08:58 +0000)]
Web Inspector: [WebGL] prevent GC from collecting WebGLObject instances currently bound to the context state
https://bugs.webkit.org/show_bug.cgi?id=104119

Reviewed by Pavel Feldman.

This is to prevent GC from collecting resources bound to a context (WebGL or 2D).
Otherwise, for example in WebGL, subsequent calls to gl.getParameter() may return a recently created
instance that is no longer bound to a Resource object (thus, no history to replay it later).

* inspector/InjectedScriptCanvasModuleSource.js:
(.):

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

8 years agoMemory instrumentation: make sure each edge is reported only once
yurys@chromium.org [Tue, 11 Dec 2012 08:32:58 +0000 (08:32 +0000)]
Memory instrumentation: make sure each edge is reported only once
https://bugs.webkit.org/show_bug.cgi?id=104630

Reviewed by Pavel Feldman.

Source/JavaScriptCore:

Changed exported symbols for MemoryInstrumentation.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

Source/WTF:

Make sure that outgoing edges are reported only once if we come to the same
object twice: first by an address of a base class and then by a real address
of the object.

* wtf/MemoryInstrumentation.cpp:
(WTF::MemoryInstrumentation::MemoryInstrumentation):
(WTF::MemoryInstrumentation::reportLinkToBuffer):
(WTF::MemoryInstrumentation::InstrumentedPointerBase::InstrumentedPointerBase):
(WTF::MemoryInstrumentation::InstrumentedPointerBase::process):
(WTF::MemoryClassInfo::init):
(WTF::MemoryClassInfo::addRawBuffer):
(WTF::MemoryClassInfo::addPrivateBuffer):
* wtf/MemoryInstrumentation.h:
(InstrumentedPointerBase):
(MemoryInstrumentation):
(InstrumentedPointer):
(WTF::MemoryClassInfo::MemoryClassInfo):
(WTF::MemoryClassInfo::addMember):
(MemoryClassInfo):
(WTF::::InstrumentedPointer):
(WTF::::callReportMemoryUsage):
* wtf/MemoryObjectInfo.h:
(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::firstVisit):
(WTF::MemoryObjectInfo::className):
(WTF::MemoryObjectInfo::name):
(WTF::MemoryObjectInfo::setAlreadyVisited):
(MemoryObjectInfo):

Tools:

Test that outgoing edges are reported only once if we come to the same
object twice: first by an address of a base class and then by a real address
of the object.

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

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

8 years agoUnreviewed build fix after r137243.
zandobersek@gmail.com [Tue, 11 Dec 2012 08:05:47 +0000 (08:05 +0000)]
Unreviewed build fix after r137243.

* bindings/gobject/GNUmakefile.am:

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

8 years ago[chromium] Unreviewed gardening
christophe.dumez@intel.com [Tue, 11 Dec 2012 07:49:12 +0000 (07:49 +0000)]
[chromium] Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=84432

fast/filesystem/op-restricted-names.html
fast/filesystem/op-restricted-unicode.html
fast/filesystem/read-directory.html
fast/filesystem/simple-readonly-file-object.html

Patch by Noel Gordon <noel.gordon@gmail.com> on 2012-12-10

* platform/chromium/TestExpectations: These have been passing on WIN for over a month.

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

8 years ago[chromium] Remove WebCompositorFrame(Ack) as these classes are not needed now that...
danakj@chromium.org [Tue, 11 Dec 2012 07:46:32 +0000 (07:46 +0000)]
[chromium] Remove WebCompositorFrame(Ack) as these classes are not needed now that they are passed through cc::OutputSurface.
https://bugs.webkit.org/show_bug.cgi?id=104635

Reviewed by James Robinson.

These have been supplanted by cc::CompositorFrame(Ack) which do not
need to inherit from them.

* chromium/public/WebCompositorFrame.h: Removed.
* chromium/public/WebCompositorFrameAck.h: Removed.

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

8 years ago[chromium] Unreviewed gardening
noel.gordon@gmail.com [Tue, 11 Dec 2012 07:46:20 +0000 (07:46 +0000)]
[chromium] Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=84432

fast/filesystem/op-restricted-names.html
fast/filesystem/op-restricted-unicode.html
fast/filesystem/read-directory.html
fast/filesystem/simple-readonly-file-object.html

* platform/chromium/TestExpectations: These have been passing on WIN for over a month.

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

8 years ago[chromium] Remove WebCompositorOutputSurface implementations from DRT
danakj@chromium.org [Tue, 11 Dec 2012 07:45:17 +0000 (07:45 +0000)]
[chromium] Remove WebCompositorOutputSurface implementations from DRT
https://bugs.webkit.org/show_bug.cgi?id=104046

Reviewed by Darin Fisher.

Source/Platform:

Remove now-unused definitions for these classes. The cc::OutputSurface
and its related classes have replaced these, with the
WebCompositorOutputSurface class as an empty base class.

* Platform.gypi:
* chromium/public/WebCompositorOutputSurface.h:
(WebKit):
* chromium/public/WebCompositorOutputSurfaceClient.h: Removed.
* chromium/public/WebCompositorSoftwareOutputDevice.h: Removed.

Source/WebKit/chromium:

Use WebCompositorSupport to create an OutputSurface.

* WebKit.gypi:
* src/WebViewImpl.cpp:
(WebKit):
* tests/Canvas2DLayerBridgeTest.cpp:
* tests/FakeWebCompositorOutputSurface.h: Removed.
* tests/WebLayerTreeViewTestCommon.h:

Tools:

The classes are now provided through WebCompositorSupport.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::createOutputSurface):
* DumpRenderTree/chromium/WebViewHostOutputSurface.cpp: Removed.
* DumpRenderTree/chromium/WebViewHostOutputSurface.h: Removed.
* DumpRenderTree/chromium/WebViewHostSoftwareOutputDevice.cpp: Removed.
* DumpRenderTree/chromium/WebViewHostSoftwareOutputDevice.h: Removed.

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

8 years ago[WK2] Add a user default to limit the number of web processes
ap@apple.com [Tue, 11 Dec 2012 07:33:01 +0000 (07:33 +0000)]
[WK2] Add a user default to limit the number of web processes
https://bugs.webkit.org/show_bug.cgi?id=104606

Reviewed by Sam Weinig.

When the limit is reached, we'll reuse an existing process with fewest pages.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext): Initialize m_webProcessCountLimit.
(WebKit::WebContext::platformInitialize): Added a hook for reading the preference,
empty implementation on most platforms.
(WebKit::WebContext::createNewWebProcess): Changed to return a raw pointer. The new
process is put into a vector anyway, so there is no ownership transfer.
(WebKit::WebContext::warmInitialProcess): Don't create a new process if that would
exceed the limit.
(WebKit::WebContext::createNewWebProcessRespectingProcessCountLimit): Added a new
function that wither creates a new process, or picks an existing one.
(WebKit::WebContext::createWebPage): Call the above new function instead of
unconditionally creating a process.

* UIProcess/WebContext.h: createNewWebProcess is no private. All clients should
respect the process count limit.

* UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::reattachToWebProcess):
Respect the process count limit.

* UIProcess/mac/WebContextMac.mm:
(WebKit::registerUserDefaultsIfNeeded): Register the new default.
(WebKit::WebContext::platformInitialize): Read the default into a WebContext
member variable.
(WebKit::WebContext::platformInitializeWebProcess): Moved registerUserDefaultsIfNeeded()
from here to platformInitialize(), as that's a better place for it. Also added a
FIXME for an unrelated issue.

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

8 years agoUnreviewed EFL gardening.
christophe.dumez@intel.com [Tue, 11 Dec 2012 07:31:17 +0000 (07:31 +0000)]
Unreviewed EFL gardening.

Rebaseline fast/js/global-constructors.html after r137243.

* platform/efl/fast/js/global-constructors-expected.txt:

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

8 years ago[chromium] Unreviewed gardening
noel.gordon@gmail.com [Tue, 11 Dec 2012 07:20:52 +0000 (07:20 +0000)]
[chromium] Unreviewed gardening

Mark platform/chromium/virtual/deferred/fast/images/pdf-as-image-landscape.html WontFix.

* platform/chromium/TestExpectations:

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

8 years ago[chromium] Unreviewed gardening: rebase fast/repaint/body-background-image.html on...
noel.gordon@gmail.com [Tue, 11 Dec 2012 07:02:55 +0000 (07:02 +0000)]
[chromium] Unreviewed gardening: rebase fast/repaint/body-background-image.html on linux

* platform/chromium/TestExpectations:

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

8 years ago[chromium] Unreviewed gardening: rebase fast/text/font-initial.html on linux
noel.gordon@gmail.com [Tue, 11 Dec 2012 06:57:46 +0000 (06:57 +0000)]
[chromium] Unreviewed gardening: rebase fast/text/font-initial.html on linux

* platform/chromium-linux/fast/text/font-initial-expected.png: Added.
* platform/chromium/TestExpectations:

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

8 years agoREGRESSION (r137006): CSS clip on solid color composited div broken
commit-queue@webkit.org [Tue, 11 Dec 2012 06:44:15 +0000 (06:44 +0000)]
REGRESSION (r137006): CSS clip on solid color composited div broken
https://bugs.webkit.org/show_bug.cgi?id=104604

Patch by No'am Rosenthal <noam@webkit.org> on 2012-12-10
Reviewed by Simon Fraser.

Source/WebCore:

Disable direct compositing of background color for clipping layers.

Test: compositing/geometry/clip-inside.html

* rendering/RenderLayerBacking.cpp:
(WebCore::supportsDirectBoxDecorationsComposition):
    Never allow direct background composition if there is a clip.

LayoutTests:

Added a new test (by Simon Fraser) to make sure background color doesn't break clipping.

* compositing/geometry/clip-inside-expected.txt: Added.
* compositing/geometry/clip-inside.html: Added.
* compositing/geometry/clip-expected:
        New result.

* platform/chromium/compositing/geometry/clip-inside-expected.txt
        Adjust Chromium expected result for new test.

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

8 years ago[chromium] Unreviewed gardening after http://trac.webkit.org/changeset/137243
noel.gordon@gmail.com [Tue, 11 Dec 2012 06:07:15 +0000 (06:07 +0000)]
[chromium] Unreviewed gardening after trac.webkit.org/changeset/137243

* platform/chromium/TestExpectations: Remove animations test.

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

8 years agoSource/WebCore: REGRESSION (r137215): WebKit stretches and shrinks a part of screen...
simon.fraser@apple.com [Tue, 11 Dec 2012 05:54:06 +0000 (05:54 +0000)]
Source/WebCore: REGRESSION (r137215): WebKit stretches and shrinks a part of screen on scroll
https://bugs.webkit.org/show_bug.cgi?id=104626

Reviewed by Beth Dakin.

r137215 removed a compositing layer repaint on size changes. However, there
are cases where the compositing code constrains layer size by clipping
with the viewport and a clipping ancestor. When that happens, we must
invalidate the layer on a size change to avoid showing stretched or
shrunken content.

Test: compositing/repaint/clipped-layer-size-change.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):

LayoutTests: REGRESSION(r137215): WebKit stretches and shrinks a part of screen on scroll
https://bugs.webkit.org/show_bug.cgi?id=104626

Reviewed by Beth Dakin.

Testcase that scrolls an overflow area containing a compositing layer.

* compositing/repaint/clipped-layer-size-change-expected.html: Added.
* compositing/repaint/clipped-layer-size-change.html: Added.

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

8 years agoDon't OSR exit just because a string is a rope
fpizlo@apple.com [Tue, 11 Dec 2012 05:22:49 +0000 (05:22 +0000)]
Don't OSR exit just because a string is a rope
https://bugs.webkit.org/show_bug.cgi?id=104621

Reviewed by Michael Saboff.

Slight SunSpider speed-up at around the 0.7% level. This patch does the obvious
thing of calling a slow path to resolve ropes rather than OSR exiting if the
string is a rope.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGArrayMode.h:
(JSC::DFG::ArrayMode::getIndexedPropertyStorageMayTriggerGC):
(ArrayMode):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::putStructureStoreElimination):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):

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

8 years agoASSERTION failed in Windows: css3/css3-modsel-33.html
commit-queue@webkit.org [Tue, 11 Dec 2012 05:17:49 +0000 (05:17 +0000)]
ASSERTION failed in Windows: css3/css3-modsel-33.html
https://bugs.webkit.org/show_bug.cgi?id=104472

Patch by Xueqing Huang <huangxueqing@baidu.com> on 2012-12-10
Reviewed by Tim Horton.

In WebFrameLoaderClient::dispatchDidLayout, milestones maybe
DidFirstLayout & DidFirstVisualNonEmptyLayout, we should
use seperate COMPtrs for the two cases rather than reuse one.

* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::dispatchDidLayout):

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

8 years agoChange Tab's affiliation in ChangeLog on recent patch.
dino@apple.com [Tue, 11 Dec 2012 04:44:19 +0000 (04:44 +0000)]
Change Tab's affiliation in ChangeLog on recent patch.

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

8 years ago[chromium] fast/dom/HTMLMeterElement/meter-boundary-values.html is flaky
noel.gordon@gmail.com [Tue, 11 Dec 2012 04:31:59 +0000 (04:31 +0000)]
[chromium] fast/dom/HTMLMeterElement/meter-boundary-values.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104625

Unreviewed HTMLMeterElement/meter-boundary-values.html rebaselines.

* platform/chromium-mac-lion/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/chromium-mac/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png:
* platform/efl-wk1/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png: Renamed from LayoutTests/platform/efl/fast/dom/HTMLMeterElement/meter-boundary-values-expected.png.

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

8 years agoRemove old WebKit Animation API code
dino@apple.com [Tue, 11 Dec 2012 04:23:47 +0000 (04:23 +0000)]
Remove old WebKit Animation API code
https://bugs.webkit.org/show_bug.cgi?id=104611

Reviewed by Simon Fraser.

Remove the existing, unused animation API code. We'll look into
implementing the W3C Animation API if/when it is stable.

Source/WebCore:

* CMakeLists.txt: Remove WebKitAnimation and WebKitAnimationList classes.
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseJSC.cmake:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSBindingsAllInOne.cpp: Remove includes.
* bindings/js/JSWebKitAnimationCustom.cpp: Removed.
* bindings/js/JSWebKitAnimationListCustom.cpp: Removed.
* dom/Element.cpp: Remove API.
* dom/Element.h: Ditto.
* dom/Element.idl: Ditto.
* page/DOMWindow.idl: Ditto.
* page/WebKitAnimation.cpp: Removed.
* page/WebKitAnimation.h: Removed.
* page/WebKitAnimation.idl: Removed.
* page/WebKitAnimationList.cpp: Removed.
* page/WebKitAnimationList.h: Removed.
* page/WebKitAnimationList.idl: Removed.
* page/animation/AnimationController.cpp: Remove API.
* page/animation/AnimationController.h: Ditto.
* page/animation/AnimationControllerPrivate.h: Ditto.
* page/animation/CompositeAnimation.cpp: Ditto.
* page/animation/CompositeAnimation.h: Ditto.

LayoutTests:

* animations/animation-api-1-expected.txt: Removed.
* animations/animation-api-1.html: Removed.
* fast/js/global-constructors-expected.txt:

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

8 years ago[Chromium] Re-enable a failing test. Disabling it just seemed to
senorblanco@chromium.org [Tue, 11 Dec 2012 03:53:49 +0000 (03:53 +0000)]
[Chromium] Re-enable a failing test.  Disabling it just seemed to
move the problem to another test.  Unreviewed.

* tests/GraphicsLayerChromiumTest.cpp:

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

8 years agoBuild fix.
jonlee@apple.com [Tue, 11 Dec 2012 03:34:03 +0000 (03:34 +0000)]
Build fix.

* WebProcess/WebCoreSupport/WebPlugInClient.cpp:
(WebKit::WebPlugInClient::WebPlugInClient): Remove unneeded m_page variable.
* WebProcess/WebCoreSupport/WebPlugInClient.h:
(WebPlugInClient):

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

8 years agoFix the Mac build after r137233
jberlin@webkit.org [Tue, 11 Dec 2012 03:10:41 +0000 (03:10 +0000)]
Fix the Mac build after r137233

* html/shadow/HTMLShadowElement.h:
Remove a declaration of a member variable that was moved to the InsertionPoint superclass.

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

8 years ago[EFL] Rebaseline expected results for "visibility:hidden; position: absolute;" cases
commit-queue@webkit.org [Tue, 11 Dec 2012 02:37:23 +0000 (02:37 +0000)]
[EFL] Rebaseline expected results for "visibility:hidden; position: absolute;" cases
https://bugs.webkit.org/show_bug.cgi?id=104620

Unreviewed, EFL gardening.

This is a following rebaseline of BUG 104195.
This patch sets AC ON as a default expected result of EFL.

Patch by Kangil Han <kangil.han@samsung.com> on 2012-12-10

* platform/efl-wk1/editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Copied from LayoutTests/platform/efl/editing/input/caret-at-the-edge-of-contenteditable-expected.txt.
* platform/efl-wk1/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Copied from LayoutTests/platform/efl/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt.
* platform/efl-wk1/fast/block/basic/020-expected.txt: Copied from LayoutTests/platform/efl/fast/block/basic/020-expected.txt.
* platform/efl-wk2/fast/block/basic/020-expected.txt: Removed.
* platform/efl/TestExpectations:
* platform/efl/editing/input/caret-at-the-edge-of-contenteditable-expected.txt:
* platform/efl/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt:
* platform/efl/fast/block/basic/020-expected.txt:

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

8 years agoFix expectations lint errors in r137231
adamk@chromium.org [Tue, 11 Dec 2012 02:06:01 +0000 (02:06 +0000)]
Fix expectations lint errors in r137231
Unreviewed gardening.

* platform/chromium/TestExpectations:

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

8 years agochange --no-launch-safari to --no-show-results in scripts
dpranke@chromium.org [Tue, 11 Dec 2012 02:00:26 +0000 (02:00 +0000)]
change --no-launch-safari to --no-show-results in scripts
https://bugs.webkit.org/show_bug.cgi?id=104298

Reviewed by Eric Seidel.

Since Safari only exists on the Apple ports, NRWT calls the
command line flag --[no-]show-results instead. This updates
the scripts to use the new flag (but not the buildbot config yet).

* Scripts/generate-coverage-data:
* Scripts/webkit-tools-completion.sh:
* Scripts/webkitpy/tool/steps/runtests.py:
(RunTests.run):
* Scripts/webkitpy/tool/steps/runtests_unittest.py:

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

8 years agoBuild fix after r137221
commit-queue@webkit.org [Tue, 11 Dec 2012 01:59:13 +0000 (01:59 +0000)]
Build fix after r137221
https://bugs.webkit.org/show_bug.cgi?id=104617

Unreviewed build fix

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-10

* html/HTMLPropertiesCollection.cpp:
(WebCore::nextNodeWithProperty):

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

8 years agoRewrite last occurrences of "Image" in TestExpectations to "ImageOnlyFailure".
adamk@chromium.org [Tue, 11 Dec 2012 01:54:16 +0000 (01:54 +0000)]
Rewrite last occurrences of "Image" in TestExpectations to "ImageOnlyFailure".
Unreviewed test expectations update.

* platform/chromium/TestExpectations:

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

8 years agonrwt: fix mapping of AUDIO onto FAIL when printing unexpected results
dpranke@chromium.org [Tue, 11 Dec 2012 01:48:10 +0000 (01:48 +0000)]
nrwt: fix mapping of AUDIO onto FAIL when printing unexpected results
https://bugs.webkit.org/show_bug.cgi?id=104597

Reviewed by Ojan Vafai.

This was broken in the recent printer refactoring.

* Scripts/webkitpy/layout_tests/views/buildbot_results.py:
(BuildBotPrinter.print_unexpected_results.add_result.is_expected):
* Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
(BuildBotPrinterTests.get_result):
(BuildBotPrinterTests.test_print_unexpected_results):
(BuildBotPrinterTests.test_print_unexpected_results.get_unexpected_results):
(BuildBotPrinterTests):

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

8 years ago[Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShado...
morrita@google.com [Tue, 11 Dec 2012 01:42:16 +0000 (01:42 +0000)]
[Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShadowRoot should be moved to InsertionPoint
https://bugs.webkit.org/show_bug.cgi?id=104516

Reviewed by Dimitri Glazkov.

This change pulls duplicated code in removedFrom() and
insertedInto() of both both HTMLShadowElement and
HTMLContentElement to their super class InsertionPoint.

This is a part of effor that encapsulate node distribution algorithm to
ContentDistributor and its family.

No new tests, no behavior change.

* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::registerInsertionPoint): Added.
(WebCore::ShadowRoot::unregisterInsertionPoint): Added.
* dom/ShadowRoot.h:
(ShadowRoot):
* html/shadow/ContentDistributor.cpp:
(WebCore::ShadowRootContentDistributionData::regiterInsertionPoint): Generalized two methods for <content> and <shadow>.
(WebCore):
(WebCore::ShadowRootContentDistributionData::unregisterInsertionPoint): Ditto.
* html/shadow/ContentDistributor.h:
(ShadowRootContentDistributionData):
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::HTMLContentElement):
* html/shadow/HTMLContentElement.h:
* html/shadow/HTMLShadowElement.cpp:
(WebCore::HTMLShadowElement::HTMLShadowElement):
* html/shadow/HTMLShadowElement.h:
* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::InsertionPoint):
(WebCore::InsertionPoint::insertedInto): Pulled up from subclasses
(WebCore::InsertionPoint::removedFrom): Pulled up from subclasses
* html/shadow/InsertionPoint.h:
(InsertionPoint):

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

8 years agoExpand flakiness of move-by-line-001.html.
adamk@chromium.org [Tue, 11 Dec 2012 01:40:46 +0000 (01:40 +0000)]
Expand flakiness of move-by-line-001.html.
Unreviewed gardening.

* platform/chromium/TestExpectations:

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

8 years agoTemporarily disable video-media-source-seek.html & video-media-source-state-changes...
acolwell@chromium.org [Tue, 11 Dec 2012 01:35:28 +0000 (01:35 +0000)]
Temporarily disable video-media-source-seek.html & video-media-source-state-changes.html
https://bugs.webkit.org/show_bug.cgi?id=104584

Reviewed by Dirk Pranke.

Changes in Chromium needed for Bug 104581 and Bug 104583 will break these tests so they are
being temporarily disabled until the Chromium & WebKit changes are both landed.

* platform/chromium/TestExpectations:

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

8 years agoKeep track of plug-in snapshots clicked by user
jonlee@apple.com [Tue, 11 Dec 2012 01:33:15 +0000 (01:33 +0000)]
Keep track of plug-in snapshots clicked by user
https://bugs.webkit.org/show_bug.cgi?id=103206
<rdar://problem/12746483>

Reviewed by Anders Carlsson.

Source/WebCore:

* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initially the hash is
unknown. Set to 0. Move the check for whether to snapshot the plugin into the
new function subframeLoaderWillLoadPlugIn.
(WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Rename
setPendingClickEvent to userDidClickSnapshot. In addition to holding onto the
click event used to activate the plug-in, the function now also tells the plug-in
client to add the origin hash as an auto-start origin.
(WebCore::HTMLPlugInImageElement::subframeLoaderWillLoadPlugIn): Calculate the
hash based on the provided URL, which is the URL the plug-in will load. Extend
the check that used to be in the constructor to see if the plug-in should not
automatically load, including checking the plug-in size and whether the hash
is an auto-start origin.
* html/HTMLPlugInImageElement.h: Rename setPendingClickEvent to userDidClickSnapshot
and add a variable for the origin hash.

* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::requestPlugin): When the loader is about to load the
plug-in, pass the URL to the element, so that it can calculate the hash.

* page/Page.cpp:
(WebCore::Page::Page): Take the plugInClient from the page clients.
(WebCore::Page::~Page): If the client exists, tell it that the page is being
destroyed.
(WebCore::Page::PageClients::PageClients): Initialize this optional client to
null.
* page/Page.h: Add PlugInClient to page clients.
(PageClients): Add PlugInClient variable.
(WebCore::Page::plugInClient):
* page/PlugInClient.h: Added.

* rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::handleEvent): Call the renamed function
userDidClickSnapshot().
(WebCore::RenderSnapshottedPlugIn::layout): Move the check of the plug-in size
to subframeLoaderWillLoadPlugIn.

Add PlugInClient.h.
* GNUmakefile.list.am:
* Target.pri:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Create a new provider class for the web context that maintains a mapping of the plug-in origins
allowed to auto-start for a specific page origin.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Create and set WebPlugInClient.

Implement WebCore::PlugInClient.
* WebProcess/WebCoreSupport/WebPlugInClient.cpp: Added.
(WebKit::WebPlugInClient::WebPlugInClient):
(WebKit::WebPlugInClient::~WebPlugInClient):
(WebKit::WebPlugInClient::pageDestroyed):
(WebKit::WebPlugInClient::isAutoStartOrigin): Forward to WebProcess.
(WebKit::WebPlugInClient::addAutoStartOrigin): Forward to WebProcess.
* WebProcess/WebCoreSupport/WebPlugInClient.h: Added.

* WebProcess/WebProcess.cpp: Maintains a copy of the hash set.
(WebKit::WebProcess::isPlugInAutoStartOrigin): Look for the hash in the set.
(WebKit::WebProcess::addPlugInAutoStartOrigin): Tell the UI process to add the hash for the page.
(WebKit::WebProcess::didAddPlugInAutoStartOrigin): Add the hash to the cached set.
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in: Add DidAddPlugInAutoStartOrigin.

Add the auto-start provider.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext): Initialize the provider.
(WebKit::WebContext::addPlugInAutoStartOriginHash): Forward to the provider.
* UIProcess/WebContext.h:
* UIProcess/WebContext.messages.in: Add AddPlugInAutoStartOriginHash.

The provider class maintains a map of page domains to hashes, and a set of all the hashes.
The latter will be used to initialize new web processes without having to crawl through the
whole map.
* UIProcess/Plugins/PlugInAutoStartProvider.cpp: Added.
(WebKit::PlugInAutoStartProvider::PlugInAutoStartProvider):
(WebKit::PlugInAutoStartProvider::addAutoStartOrigin): Add the origin to the map and set. Tell
all processes to add the origin to their local copies.
* UIProcess/Plugins/PlugInAutoStartProvider.h: Added.

Add PlugInAutoStartProvider and WebPlugInClient.
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:

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

8 years agoAdd WKPageSetInvalidMessageFunction stub
andersca@apple.com [Tue, 11 Dec 2012 01:18:03 +0000 (01:18 +0000)]
Add WKPageSetInvalidMessageFunction stub
https://bugs.webkit.org/show_bug.cgi?id=104614
<rdar://problem/12841671>

Reviewed by Mark Rowe.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetInvalidMessageFunction):
* UIProcess/API/C/WKPagePrivate.h:

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

8 years agoold-run-webkit-tests: add --show-results properly
dpranke@chromium.org [Tue, 11 Dec 2012 01:13:19 +0000 (01:13 +0000)]
old-run-webkit-tests: add --show-results properly
https://bugs.webkit.org/show_bug.cgi?id=104608

Reviewed by Eric Seidel.

Rework r137219 / bug 104601 to use the correct perl idiom.

* Scripts/old-run-webkit-tests:

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

8 years agoNot reviewed.
antti@apple.com [Tue, 11 Dec 2012 01:03:08 +0000 (01:03 +0000)]
Not reviewed.

Build fix.

* html/HTMLPropertiesCollection.cpp:
(WebCore::nextNodeWithProperty):
* page/TouchDisambiguation.cpp:
(WebCore::boundingBoxForEventNodes):

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

8 years agoUnreviewed. Adding Aaron Colwell to the contributor list.
acolwell@chromium.org [Tue, 11 Dec 2012 01:02:42 +0000 (01:02 +0000)]
Unreviewed. Adding Aaron Colwell to the contributor list.

* Scripts/webkitpy/common/config/committers.py:

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

8 years agoMark an encrypted media test as failing after http://crrev.com/172175
adamk@chromium.org [Tue, 11 Dec 2012 00:43:37 +0000 (00:43 +0000)]
Mark an encrypted media test as failing after crrev.com/172175
Unreviewed gardening.

* platform/chromium/TestExpectations:

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=104602
bdakin@apple.com [Tue, 11 Dec 2012 00:32:01 +0000 (00:32 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=104602
DidHitRelevantRepaintedObjectsAreaThreshold LayoutMilestone fires too
early on some pages with iframes

Reviewed by Simon Fraser.

This change makes it so that any RenderObjects inside iframes are not
considered relevant.
* page/Page.cpp:
(WebCore::Page::addRelevantRepaintedObject):

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

8 years agoIndexedDB: Propagate more leveldb errors to script
dgrogan@chromium.org [Tue, 11 Dec 2012 00:21:14 +0000 (00:21 +0000)]
IndexedDB: Propagate more leveldb errors to script
https://bugs.webkit.org/show_bug.cgi?id=104422

Reviewed by Tony Chang.

Source/WebCore:

These are the last places that ignore leveldb errors that can get the
usual ok/found treatment.

Nothing called getBool, so it is deleted.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore):
(WebCore::getInt):
(WebCore::isSchemaKnown):
(WebCore::setUpMetadata):
(WebCore::getMaxObjectStoreId):
(WebCore::IDBBackingStore::open):
(WebCore::IDBBackingStore::getIDBDatabaseMetaData):
(WebCore::getNewDatabaseId):
(WebCore::IDBBackingStore::createIDBDatabaseMetaData):
(WebCore::setMaxObjectStoreId):
(WebCore::getNewVersionNumber):
(WebCore::IDBBackingStore::putRecord):
(WebCore::setMaxIndexId):
* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):

Source/WebKit/chromium:

* tests/IDBFakeBackingStore.h:
  Delete method override that doesn't match new signature.

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

8 years agoRemove WebKit2 tests on Windows
andersca@apple.com [Tue, 11 Dec 2012 00:17:53 +0000 (00:17 +0000)]
Remove WebKit2 tests on Windows
https://bugs.webkit.org/show_bug.cgi?id=104607

Reviewed by Tim Horton.

Stop building WebKit2 tests and remove associated files.

* TestWebKitAPI/win/InjectedBundleControllerWin.cpp: Removed.
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp: Removed.
* TestWebKitAPI/win/PlatformWebViewWin.cpp: Removed.
* TestWebKitAPI/win/TestWebKitAPI.sln: Removed.
* TestWebKitAPI/win/TestWebKitAPI.vcproj:
* TestWebKitAPI/win/TestWebKitAPIGenerated.vcproj: Removed.
* TestWebKitAPI/win/TestWebKitAPIGeneratedCommon.vsprops: Removed.
* TestWebKitAPI/win/TestWebKitAPIInjectedBundle.vcproj: Removed.
* TestWebKitAPI/win/WindowMessageObserver.h: Removed.
* TestWebKitAPI/win/copy-resources.cmd: Removed.

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

8 years agoFactor node traversal into standalone functions
antti@apple.com [Tue, 11 Dec 2012 00:13:29 +0000 (00:13 +0000)]
Factor node traversal into standalone functions
https://bugs.webkit.org/show_bug.cgi?id=104507

Source/WebCore:

Reviewed by Eric Seidel.

Node traversal functions are currently Node and ContainerNode members. Their implementations
are confusingly scattered over multiple header and source files. These functions have no particular
reason to be members as they don't require non-public access. They should be made freestanding
function instead and gathered together.

This patch adds NodeTraversal namespace, defined in NodeTraversal.h. It contains freestanding
functions for traversing Nodes. Most popular functions are inlined (as before) and
there are ContainerNode specific specializations (as before).

In client code

    node = node->traverseNextNode();
    node = node->traverseNextSibling();

becomes

    node = NodeTraversal::next(node);
    node = NodeTraversal::nextSkippingChildren(node);

etc.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::addImageMapChildren):
* bindings/js/JSDocumentCustom.cpp:
(WebCore::toJS):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::allVisitedStateChanged):
(WebCore::SelectorChecker::visitedStateChanged):
* css/StyleInvalidationAnalysis.cpp:
(WebCore::StyleInvalidationAnalysis::invalidateStyle):
* dom/ContainerNode.cpp:
(WebCore::dispatchChildInsertionEvents):
(WebCore::dispatchChildRemovalEvents):
* dom/ContainerNode.h:
(ContainerNode):
(WebCore):
* dom/ContainerNodeAlgorithms.h:
(WebCore::ChildFrameDisconnector::collectDescendant):
* dom/Document.cpp:
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::removeAllEventListeners):
(WebCore::Document::updateBaseURL):
(WebCore::Document::processBaseElement):
(WebCore::Document::nodeAbsIndex):
(WebCore::Document::nodeWithAbsIndex):
(WebCore::Document::getFocusableNodes):
* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::markersInRange):
(WebCore::DocumentMarkerController::setMarkersActive):
(WebCore::DocumentMarkerController::hasMarkers):
(WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::get):
* dom/ElementShadow.cpp:
(WebCore::ElementShadow::collectSelectFeatureSetFrom):
* dom/Node.cpp:
(WebCore::Node::normalize):
(WebCore::Node::lazyAttach):
(WebCore):
(WebCore::Node::detach):
(WebCore::traverseTreeAndMark):
* dom/Node.h:
(Node):
* dom/NodeIterator.cpp:
(WebCore::NodeIterator::NodePointer::moveToNext):
(WebCore::NodeIterator::NodePointer::moveToPrevious):
(WebCore::NodeIterator::updateForNodeRemoval):
* dom/NodeTraversal.h: Added.
(WebCore):
(NodeTraversal):
(WebCore::NodeTraversal::traverseNextNodeTemplate):
(WebCore::NodeTraversal::next):
(WebCore::NodeTraversal::traverseNextSiblingTemplate):
(WebCore::NodeTraversal::nextSibling):
* dom/Range.cpp:
(WebCore::Range::toString):
(WebCore::Range::checkDeleteExtract):
(WebCore::Range::firstNode):
(WebCore::Range::pastLastNode):
(WebCore::Range::textRects):
(WebCore::Range::textQuads):
(WebCore::Range::getBorderAndTextQuads):
* dom/TreeScope.cpp:
(WebCore::TreeScope::labelElementForId):
(WebCore::TreeScope::findAnchor):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
(WebCore::TreeScopeAdopter::moveTreeToNewDocument):
* dom/TreeWalker.cpp:
(WebCore::TreeWalker::nextNode):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
(WebCore::containsNonEditableRegion):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
(WebCore::ApplyStyleCommand::removeInlineStyle):
* editing/BreakBlockquoteCommand.cpp:
(WebCore::BreakBlockquoteCommand::doApply):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::deleteInsignificantText):
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
* editing/DeleteSelectionCommand.cpp:
(WebCore::firstEditablePositionInNode):
(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
* editing/EditCommand.cpp:
(WebCore::SimpleEditCommand::addNodeAndDescendants):
* editing/EditingStyle.cpp:
(WebCore::EditingStyle::triStateOfStyle):
(WebCore::EditingStyle::textDirectionForSelection):
* editing/Editor.cpp:
(WebCore::Editor::simplifyMarkup):
* editing/FrameSelection.cpp:
(WebCore::scanForForm):
(WebCore::FrameSelection::setSelectionFromNone):
* editing/InsertParagraphSeparatorCommand.cpp:
(WebCore::InsertParagraphSeparatorCommand::doApply):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplacementFragment::removeUnrenderedNodes):
(WebCore::ReplacementFragment::removeInterchangeNodes):
(WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren):
(WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNode):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::removeHeadContents):
(WebCore::ReplaceSelectionCommand::handleStyleSpans):
* editing/ReplaceSelectionCommand.h:
(WebCore::ReplaceSelectionCommand::InsertedNodes::pastLastLeaf):
* editing/SimplifyMarkupCommand.cpp:
(WebCore::SimplifyMarkupCommand::doApply):
* editing/TextIterator.cpp:
(WebCore::TextIterator::advance):
(WebCore::shouldEmitNewlineAfterNode):
* editing/htmlediting.cpp:
(WebCore::hasARenderedDescendant):
* editing/mac/EditorMac.mm:
(WebCore::Editor::fontForSelection):
* editing/markup.cpp:
(WebCore::completeURLs):
(WebCore::StyledMarkupAccumulator::traverseNodesForSerialization):
(WebCore::findNodesSurroundingContext):
(WebCore::trimFragment):
* editing/visible_units.cpp:
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):
* html/HTMLCollection.cpp:
(WebCore::nextNode):
* html/HTMLElement.cpp:
(WebCore::setHasDirAutoFlagRecursively):
(WebCore::HTMLElement::directionality):
(WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
(WebCore::HTMLElement::getItemRefElements):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::formElementIndex):
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::control):
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::associatedControl):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::mapMouseEvent):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::virtualItemAfter):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::collectOptionInnerText):
* html/HTMLPropertiesCollection.cpp:
(WebCore::nextNodeWithProperty):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::recalcListItems):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::selection):
(WebCore::HTMLTextFormControlElement::innerTextValue):
(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
* html/RadioInputType.cpp:
(WebCore::RadioInputType::handleKeydownEvent):
* html/shadow/ContentDistributor.cpp:
(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::performSearch):
* inspector/InspectorMemoryAgent.cpp:
* page/FocusController.cpp:
(WebCore::FocusController::findFocusCandidateInContainer):
* page/Frame.cpp:
(WebCore::Frame::searchForLabelsAboveCell):
(WebCore::Frame::searchForLabelsBeforeElement):
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::getRanges):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
(WebCore::SVGSVGElement::getElementById):
* svg/SVGUseElement.cpp:
(WebCore::removeDisallowedElementsFromSubtree):
* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
* xml/XPathNodeSet.cpp:
(WebCore::XPath::NodeSet::traversalSort):
* xml/XPathStep.cpp:
(WebCore::XPath::Step::nodesInAxis):
* xml/XPathUtil.cpp:
(WebCore::XPath::stringValue):

Source/WebKit/chromium:

Reviewed by Eric Seidel.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):

Source/WebKit/mac:

Reviewed by Eric Seidel.

* WebView/WebHTMLRepresentation.mm:
(searchForLabelsBeforeElement):

Source/WebKit2:

Reviewed by Eric Seidel.

* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::containsAnyFormElements):

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

8 years agoSending multi-touch events to the same Iframe
commit-queue@webkit.org [Tue, 11 Dec 2012 00:08:09 +0000 (00:08 +0000)]
Sending multi-touch events to the same Iframe
https://bugs.webkit.org/show_bug.cgi?id=97973

Patch by Min Qin <qinmin@chromium.org> on 2012-12-10
Reviewed by Dimitri Glazkov.

Source/WebCore:

Multi-Touch in different iframe can give both documents access to each other.
This could cause cross-origin access. To solve this, all the touch events should
be sent to the iframe where the first touchstart happens.

Test: fast/events/touch/multi-touch-inside-iframes.html
      fast/events/touch/multi-touch-inside-nested-iframes.html

* page/EventHandler.cpp:
(WebCore::EventHandler::handleTouchEvent):
* page/EventHandler.h:

LayoutTests:

Check that all multi-touch events are sent to the same iframe.

* fast/events/touch/multi-touch-inside-iframes-expected.txt: Added.
* fast/events/touch/multi-touch-inside-iframes.html: Added.
* fast/events/touch/resources/multi-touch-inside-iframes2.html: Added.
* fast/events/touch/multi-touch-inside-nested-iframes-expected.txt: Added.
* fast/events/touch/multi-touch-inside-nested-iframes.html: Added.
* fast/events/touch/resources/multi-touch-inside-nested-iframes2.html: Added.
* fast/events/touch/resources/multi-touch-inside-nested-iframes3.html: Added.

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

8 years agoold-run-webkit-tests: support --no-show-results for compatibility w/ NRWT
dpranke@chromium.org [Mon, 10 Dec 2012 23:56:02 +0000 (23:56 +0000)]
old-run-webkit-tests: support --no-show-results for compatibility w/ NRWT
https://bugs.webkit.org/show_bug.cgi?id=104601

Reviewed by Eric Siedel.

This flag is being added so we can move all of the calling scripts
over to using --no-show-results instead of --no-launch-safari.

* Scripts/old-run-webkit-tests:

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

8 years ago[soup] Fix build warning in ResourceHandleSoup.cpp
commit-queue@webkit.org [Mon, 10 Dec 2012 23:55:07 +0000 (23:55 +0000)]
[soup] Fix build warning in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=104605

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-10
Reviewed by Martin Robinson.

The nextMultipartResponsePartCallback has unused parameter 'source',
comment out it to fix 'unused parameter' build warning.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::nextMultipartResponsePartCallback):

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

8 years agoFix frame border painting in tiled drawing mode
simon.fraser@apple.com [Mon, 10 Dec 2012 23:43:55 +0000 (23:43 +0000)]
Fix frame border painting in tiled drawing mode
https://bugs.webkit.org/show_bug.cgi?id=104453
<rdar://problem/11678611>

Reviewed by Dan Bernstein.

Frame borders were not correctly invalidated when in tiled drawing mode, because
RenderFrameSet::layout() invalidated directly on the view, which skips the tile
cache.

Fix by invalidating like all other renderers, via the repaint container.

Also, the layer transform should be updated before the invalidation, and
we make use of RenderObject::updateLayerTransform() which has the same behavior
as the old code.

Attempts to make a layout test failed. Resizing composited framesets repainted
via layer resizing, and an attempt to make a ref test in tiled drawing mode
failed (the test passed without the patch).

* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::layout):

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

8 years agoWhen converting a layer into a tiled layer, ensure that we update the visible rect
simon.fraser@apple.com [Mon, 10 Dec 2012 23:43:50 +0000 (23:43 +0000)]
When converting a layer into a tiled layer, ensure that we update the visible rect
https://bugs.webkit.org/show_bug.cgi?id=104467

Reviewed by Darin Adler.

Source/WebCore:

When a GraphicsLayerCA toggles to use a TileCache, we have to ensure that the
layer's visible rect (which is used to ensure tile coverage) is updated in
the same commit. Otherwise we can get blank layers until something else causes
the visible rect to be updated.

Test: compositing/tiling/tiled-layer-resize.html

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::dumpAdditionalProperties): With the debug flag, dump the TiledBacking
address for ease of debugging.
(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Set the VisibleRectChanged bit in
m_uncommittedChanges if we've just switched to a tiled layer.

LayoutTests:

Test that resizes a layer over the tiled layer threshold, then dumps layer data.

Mac-specific results added because only Mac dumps tile cache info.

* compositing/tiling/tiled-layer-resize-expected.txt: Added.
* compositing/tiling/tiled-layer-resize.html: Added.
* platform/mac/compositing/tiling/tiled-layer-resize-expected.txt: Added.

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

8 years agoDon't unconditionally repaint compositing layers when their size changes
simon.fraser@apple.com [Mon, 10 Dec 2012 23:43:43 +0000 (23:43 +0000)]
Don't unconditionally repaint compositing layers when their size changes
https://bugs.webkit.org/show_bug.cgi?id=104461

Reviewed by Sam Weinig.

Source/WebCore:

RenderLayerBacking always repainted the entire compositing layer when its size
changed. This was done to fix repaint issues when outline widths changes, but
that issue is now solved by repainting in GraphicsLayer::setOffsetFromRenderer(),
add in r134628. I believe this is no longer necessary.

Always repainting when the size changes is terrible for the tile cache when
loading large documents, as all tiles repaint every time the document gets
longer.

Test: compositing/repaint/resize-repaint.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

LayoutTests:

Test that dumps repaint rects after adding content to a compositing layer.

* compositing/repaint/resize-repaint-expected.txt: Added.
* compositing/repaint/resize-repaint.html: Added.

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

8 years agoUnreviewed, rolling out r134150.
ojan@chromium.org [Mon, 10 Dec 2012 23:34:32 +0000 (23:34 +0000)]
Unreviewed, rolling out r134150.
http://trac.webkit.org/changeset/134150
https://bugs.webkit.org/show_bug.cgi?id=99940

Caused JS-based tooltips to remain during scroll on Facebook
and Gmail. Rollout until I have time to experiment with less
aggresive approaches.

Source/WebCore:

* page/EventHandler.cpp:
(WebCore):
(WebCore::MaximumDurationTracker::MaximumDurationTracker):
(WebCore::MaximumDurationTracker::~MaximumDurationTracker):
(MaximumDurationTracker):
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::mouseMoved):
(WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
(WebCore::EventHandler::fakeMouseMoveEventTimerFired):
* page/EventHandler.h:
(EventHandler):
* platform/Timer.h:

LayoutTests:

* fast/scrolling/fake-mouse-event-throttling-expected.txt: Removed.
* fast/scrolling/fake-mouse-event-throttling.html: Removed.
* platform/mac/TestExpectations:

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

8 years agoKeyboard caret movement in textarea with RTL Override Character can make tab unresponsive
commit-queue@webkit.org [Mon, 10 Dec 2012 23:30:36 +0000 (23:30 +0000)]
Keyboard caret movement in textarea with RTL Override Character can make tab unresponsive
https://bugs.webkit.org/show_bug.cgi?id=103067

Patch by Yi Shen <max.hong.shen@gmail.com> on 2012-12-10
Reviewed by Ryosuke Niwa.

Source/WebCore:

For textarea with RTL override character, the line break could be the previous leaf InlineTextBox of
the InlineTextBox for the RTL override text. When overshots the left/right, make sure the
leftVisuallyDistinctCandidate and rightVisuallyDistinctCandidate return the visually distinct
left/right position by ignoring the line break.

Test: editing/selection/move-by-character-crash-test-textarea.html

* editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
(WebCore::VisiblePosition::rightVisuallyDistinctCandidate):

LayoutTests:

New test for moving caret in textarea with RTL override character causes crash.

* editing/selection/move-by-character-crash-test-textarea-expected.txt: Added.
* editing/selection/move-by-character-crash-test-textarea.html: Added.

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

8 years ago[EFL][WebGL] Minor Refactoring in GraphicsContext3DEfl.
commit-queue@webkit.org [Mon, 10 Dec 2012 23:01:20 +0000 (23:01 +0000)]
[EFL][WebGL] Minor Refactoring in GraphicsContext3DEfl.
https://bugs.webkit.org/show_bug.cgi?id=104553.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-10
Reviewed by Kenneth Rohde Christiansen.

We use different FBO for canvas and offscreen surface of our platform layer.
Thus we need to manage any bound buffers while copying contents to the surface. Currently, Surface
always uses double buffering but in future we should be able to configure it to use either
double or single buffer. For these use cases, it would be handy to bind buffers directly to
FBO used by the surface. This patch does the needed changes in GraphicsContext3DEfl and
PlatformSurface. Also, removes some unused code.

Covered by existing tests.

Relevant changes in GraphicsContext3DEfl to obtain FBO id from PlatformSurface.
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):

Renamed createGraphicsSurface to didResizeCanvas.
(WebCore::GraphicsContext3D::createGraphicsSurfaces):
* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::didResizeCanvas):
(GraphicsContext3DPrivate::copyToGraphicsSurface):
* platform/graphics/efl/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):

Header cleanup.
* platform/graphics/opengl/GLDefs.h:
* platform/graphics/opengl/GLPlatformContext.cpp:
(WebCore::GLPlatformContext::createContext):
* platform/graphics/opengl/GLPlatformContext.h:

Added initialize method to expose FBO id of the surface.
Removed unused code.
* platform/graphics/opengl/GLPlatformSurface.cpp:
(WebCore::GLPlatformSurface::initialize):
(WebCore):
(WebCore::GLPlatformSurface::updateContents):
* platform/graphics/opengl/GLPlatformSurface.h:
(GLPlatformSurface):
* platform/graphics/surfaces/glx/GLXSurface.h:

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

8 years ago[BlackBerry] Flash content is being rendered as garbled characters when Flashplayer...
commit-queue@webkit.org [Mon, 10 Dec 2012 22:57:42 +0000 (22:57 +0000)]
[BlackBerry] Flash content is being rendered as garbled characters when Flashplayer is disabled
https://bugs.webkit.org/show_bug.cgi?id=104505

Patch by Max Feil <mfeil@rim.com> on 2012-12-10
Reviewed by Antonio Gomes.

The check to allow video and audio as the source of embed and
object elements is causing a problem when the Flashplayer plugin
is disabled. We have to take Flash content into account in this
check otherwise the swf contents will be rendered as garbled
text characters where there should just be blank space.

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::createPlugin):

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

8 years agoTidy up the tiled scrolling indicator, fix with zooming
simon.fraser@apple.com [Mon, 10 Dec 2012 22:53:45 +0000 (22:53 +0000)]
Tidy up the tiled scrolling indicator, fix with zooming
https://bugs.webkit.org/show_bug.cgi?id=104386

Reviewed by Tim Horton.

Fix the tiled scrolling indicator to not get tiny when zooming,
to not poke out of the bottom of the window, and to not look
so crappy.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::updateTileCoverageMap):
(WebCore::TileCache::drawTileMapContents):

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

8 years agonrwt: use the default logic for skipping platform-specific tests for chromium
dpranke@chromium.org [Mon, 10 Dec 2012 22:42:32 +0000 (22:42 +0000)]
nrwt: use the default logic for skipping platform-specific tests for chromium
https://bugs.webkit.org/show_bug.cgi?id=104403

Reviewed by Stephen White.

Tools:

I thought I had fixed this a while ago, but the chromium port was
using custom logic to figure out which platform/* tests to run (or
skip) and as a result we were getting some odd behavior (like running
tests in chromium-linux on chromium-mac, but only when there was
an expectation listed for the test).

Ports are supposed to only run the tests found under their
baseline_search_path() by default.

Not writing a test for this; theoretically there shouldn't been a
test checking that the behavior for Chromium was *different* than
the other ports before.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort._missing_symbol_to_skipped_tests):

LayoutTests:

Remove a bunch of WONTFIX lines that will now be handled programmatically.

* platform/chromium-android/TestExpectations:
* platform/chromium/TestExpectations:

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

8 years agoUnreviewed, rolling out r136817.
commit-queue@webkit.org [Mon, 10 Dec 2012 22:31:43 +0000 (22:31 +0000)]
Unreviewed, rolling out r136817.
http://trac.webkit.org/changeset/136817
https://bugs.webkit.org/show_bug.cgi?id=104596

This patch was an unnecessarily complex solution to handling
conversion of union types. (Requested by mpruett on #webkit).

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

* bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::convertValue):
* bindings/js/JSDictionary.h:
(WebCore::JSDictionary::tryGetPropertyAndResult):

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

8 years agoDeprecate prefixed linear-gradient and radial-gradient functions
commit-queue@webkit.org [Mon, 10 Dec 2012 22:15:01 +0000 (22:15 +0000)]
Deprecate prefixed linear-gradient and radial-gradient functions
https://bugs.webkit.org/show_bug.cgi?id=104591

Patch by Tab Atkins <jackalmage@gmail.com> on 2012-12-10
Reviewed by Dean Jackson.

Rename the old gradient parsing functions in anticipation of functions that parse the new syntax.

No new tests added - this is a rename and has no functionality change.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseDeprecatedLinearGradient):
(WebCore::CSSParser::parseDeprecatedRadialGradient):
(WebCore::CSSParser::parseGeneratedImage):
* css/CSSParser.h:

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

8 years agofix regression in test-webkitpy after r137189
dpranke@chromium.org [Mon, 10 Dec 2012 22:14:33 +0000 (22:14 +0000)]
fix regression in test-webkitpy after r137189
https://bugs.webkit.org/show_bug.cgi?id=104589

Reviewed by Eric Seidel.

Need to specify full port names.

* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_build_check):

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

8 years agoUnreviewed update to test results after http://trac.webkit.org/changeset/137200.
dino@apple.com [Mon, 10 Dec 2012 22:13:06 +0000 (22:13 +0000)]
Unreviewed update to test results after trac.webkit.org/changeset/137200.
The 'widows' and 'orphans' properties have an initial value of 'auto'.

* editing/pasteboard/onpaste-text-html-expected.txt:
* fast/events/ondrop-text-html-expected.txt:

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

8 years ago[EFL] Change the minimum required EFL version to 1.6
commit-queue@webkit.org [Mon, 10 Dec 2012 21:53:55 +0000 (21:53 +0000)]
[EFL] Change the minimum required EFL version to 1.6
https://bugs.webkit.org/show_bug.cgi?id=104431

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2012-12-10
Reviewed by Kenneth Rohde Christiansen.

.:

Change the minimum required EFL version to 1.6 from 1.7 to enable
building on Tizen.

The elementary EFL package is only required to build MiniBrowser,
so I moved the required only to the Minibrowser CMake file.

* Source/cmake/OptionsEfl.cmake:

Tools:

Change the minimum required EFL version to 1.6 from 1.7.
The elementary EFL package is only required to build MiniBrowser,
so I moved the required only to the Minibrowser CMake file.

* MiniBrowser/efl/CMakeLists.txt: In addition removed
ENABLE_GLIB_SUPPORT as it is obsolete and it was always set to be on.

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

8 years agoUpdating date in Tools/ChangeLog
dino@apple.com [Mon, 10 Dec 2012 21:40:03 +0000 (21:40 +0000)]
Updating date in Tools/ChangeLog

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

8 years ago[Chromium][Win] Remove theme-related functions from PlatformSupport
pilgrim@chromium.org [Mon, 10 Dec 2012 21:33:18 +0000 (21:33 +0000)]
[Chromium][Win] Remove theme-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=102699

Reviewed by Adam Barth.

Call theme engine directly instead of going through
PlatformSupport. Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/chromium/ScrollbarThemeChromiumWin.cpp:
(WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
(WebCore::ScrollbarThemeChromiumWin::paintButton):
* rendering/RenderThemeChromiumWin.cpp:
(WebCore):
(WebCore::RenderThemeChromiumWin::paintButton):
(WebCore::RenderThemeChromiumWin::paintSliderTrack):
(WebCore::RenderThemeChromiumWin::paintSliderThumb):
(WebCore::RenderThemeChromiumWin::paintMenuList):
(WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
(WebCore::RenderThemeChromiumWin::paintInnerSpinButton):
(WebCore::RenderThemeChromiumWin::paintProgressBar):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::pluginScriptableObject):

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

8 years agoSupport for CSS widows and orphans
dino@apple.com [Mon, 10 Dec 2012 21:22:44 +0000 (21:22 +0000)]
Support for CSS widows and orphans
https://bugs.webkit.org/show_bug.cgi?id=9410

Reviewed by Darin Adler.

Source/WebCore:

The CSS 'widow' and 'orphan' properties were supported by the parser and
style system, but were not actually doing anything in layout. Now they do!

In order to not break existing content, I unfortunately had to go against
the specification and change our default value from 2 to auto. A value of
auto means that widows and orphans will not cause any page/column breaks.

Supporting orphans was a small change. During line layout, if we realise
we need to move to a new page in a situation that would create an orphan,
move the entire block to the new page. There was already code to do this.

Support for widows was trickier. When we finish laying out a block, count
the number of hanging lines. If we've created a widow, and there are enough
available lines on the previous page, then steal some and remember the line
to break at. Trigger a relayout. Then notice the line that was marked for
breaking and avoid the widow. This means some blocks go through layout
twice, but as long as the widow value is small it shouldn't be a huge penalty.

Tests: fast/multicol/widows-and-orphans.html (new test)
       printing/page-break-orphans.html
       printing/page-break-orphans-and-widows.html
       printing/page-break-widows.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return CSSValueAuto for widows and orphans if necessary.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): Support "auto" in widow and orphan property parsing.
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder): Change property handler to something that supports auto.
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimation::ensurePropertyMap): Add widows and orphans to the animation map.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlockChild): Detect if we've caused a widow-fixing break, and request relayout evaluation.
(WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Test for a widow-fixing line.
(WebCore::RenderBlock::setBreakAtLineToAvoidWidow): New function to remember where we should break on next layout.
(WebCore::RenderBlock::adjustLinePositionForPagination): Move the entire block to a new page if this would create an orphan.
* rendering/RenderBlock.h:
(WebCore::RenderBlock::shouldBreakAtLineToAvoidWidow): New function to indicate if we are remembering a widow.
(WebCore::RenderBlock::clearShouldBreakAtLineToAvoidWidow): Reset the line breaks.
(WebCore::RenderBlock::lineBreakToAvoidWidow):
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): Add a flag for indicating if we are remembering a line, and the actual line itself.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): The code to detect and fix widows. Explained above.
* rendering/style/RenderStyle.h: New methods for indicating if widows and orphans are non-default values.
* rendering/style/StyleRareInheritedData.cpp: Ditto.
* rendering/style/StyleRareInheritedData.h: Ditto.

LayoutTests:

A new, slightly more comprehensive, test for widows and orphans. We also
now pass the existing widows and orphans tests from printing. And
since the default value of the properties changed, update the
computed style test as well.

* fast/css/getComputedStyle/computed-style-expected.txt: New auto value.
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: New auto value.
* fast/multicol/widows-and-orphans-expected.txt: Added.
* fast/multicol/widows-and-orphans.html: Added.
* printing/page-break-orphans-and-widows-expected.txt:
* printing/page-break-orphans-expected.txt:
* printing/page-break-widows-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt: New auto value.

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

8 years agoUnreviewed. Adding Antoine to the contributor list so his name autocompletes in bugzilla.
dino@apple.com [Mon, 10 Dec 2012 21:21:51 +0000 (21:21 +0000)]
Unreviewed. Adding Antoine to the contributor list so his name autocompletes in bugzilla.

* Scripts/webkitpy/common/config/committers.py:

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