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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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