WebKit-https.git
8 years ago[Qt] Broken controls rendering when transform is applied.
commit-queue@webkit.org [Fri, 25 May 2012 12:18:04 +0000 (12:18 +0000)]
[Qt] Broken controls rendering when transform is applied.
https://bugs.webkit.org/show_bug.cgi?id=87483

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-25
Reviewed by Simon Hausmann.

.:

* ManualTests/qt/control_paiting_with_transforms.html: Added.

Source/WebCore:

Use only the scaling transform value to determine the size of
the control to be drawn. When other transforms present such as
rotate or skew, ignore them, unless scaling also involved. In
that case, calculate the scaling value out of the transformation.

* ManualTests/qt/control_paiting_with_transforms.html: Added.

* platform/qt/RenderThemeQtMobile.cpp:
(WebCore::painterScale):
(WebCore):
(WebCore::StylePainterMobile::sizeForPainterScale):

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

8 years ago[chromium] add instrumentation for compositing
caseq@chromium.org [Fri, 25 May 2012 12:05:41 +0000 (12:05 +0000)]
[chromium] add instrumentation for compositing
https://bugs.webkit.org/show_bug.cgi?id=83928

Reviewed by James Robinson.

Source/Platform:

- added willCommit() and didBeginFrame() methods for instrumentation of compositing.

* chromium/public/WebLayerTreeViewClient.h:
(WebLayerTreeViewClient):

Source/WebCore:

- plumb willCommit() and didBeginFrame() from CCSingleThreadProxy and CCThreadProxy to inspector instrumentation;
- note for threaded case, didBeginFrame() is invoked upon unblocking of main thread;

* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHostClient):
(WebCore::CCLayerTreeHost::didBeginFrame):
(WebCore::CCLayerTreeHost::willCommit):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::commitAndComposite):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::beginFrame):

Source/WebKit/chromium:

- plumb willCommit() and didComposite() to inspector instrumentation via WebViewImpl.

* WebKit.gypi: Added WebLayerTreeViewTest
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::didBeginFrame):
(WebKit):
(WebKit::WebLayerTreeViewImpl::willCommit):
* src/WebLayerTreeViewImpl.h:
(WebLayerTreeViewImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::didBeginFrame):
(WebKit):
(WebKit::WebViewImpl::willCommit):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/CCLayerTreeHostTest.cpp:
* tests/FakeCCLayerTreeHostClient.h:
* tests/WebLayerTest.cpp:
* tests/WebLayerTreeViewTest.cpp: Added.

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

8 years ago[Qt] Gardening. Skip a new test: fast/events/domactivate-sets-underlying-click-event...
ossy@webkit.org [Fri, 25 May 2012 11:20:20 +0000 (11:20 +0000)]
[Qt] Gardening. Skip a new test: fast/events/domactivate-sets-underlying-click-event-as-handled.html
because it times out on Qt and GTK platforms.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-25
Reviewed by Csaba Osztrogonác.

* platform/qt/Skipped:

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

8 years ago[Qt] Buildfix for newer Qt5
ossy@webkit.org [Fri, 25 May 2012 10:34:47 +0000 (10:34 +0000)]
[Qt] Buildfix for newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=87257

Reviewed by Simon Hausmann.

Source/WebKit/qt:

* Api/qgraphicswebview.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
* Api/qwebframe.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
* Api/qwebhistory.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
* Api/qwebsettings.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
* Api/qwebview.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
* WebCoreSupport/FrameLoaderClientQt.cpp: Adjust QCoreApplication::translate() parameter list to newer Qt 5.
(WebCore::FrameLoaderClientQt::cancelledError):
(WebCore::FrameLoaderClientQt::blockedError):
(WebCore::FrameLoaderClientQt::cannotShowURLError):
(WebCore::FrameLoaderClientQt::interruptedForPolicyChangeError):
(WebCore::FrameLoaderClientQt::cannotShowMIMETypeError):
(WebCore::FrameLoaderClientQt::fileDoesNotExistError):
(WebCore::FrameLoaderClientQt::pluginWillHandleLoadError):
* declarative/experimental/plugin.cpp: QDeclarativeExtensionPlugin -> QQmlExtensionPlugin renaming.
* declarative/plugin.cpp: QDeclarativeExtensionPlugin -> QQmlExtensionPlugin renaming.
(WebKitQmlPlugin):

Tools:

* MiniBrowser/qt/MiniBrowserApplication.h: QtDeclarative -> QtQml renaming.

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

8 years agoWeb Inspector: Drop InspectorFileSystemInstrumentation
vsevik@chromium.org [Fri, 25 May 2012 10:23:29 +0000 (10:23 +0000)]
Web Inspector: Drop InspectorFileSystemInstrumentation
https://bugs.webkit.org/show_bug.cgi?id=87460

Inspector does not need to track DOMFileSystem object now. So we can
drop InspectorFileSystemInstrumentation.

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-05-25
Reviewed by Vsevolod Vlasov.

* GNUmakefile.list.am:
* Modules/filesystem/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::create):
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorFileSystemAgent.cpp:
(WebCore::InspectorFileSystemAgent::enable):
* inspector/InspectorFileSystemAgent.h:
(InspectorFileSystemAgent):
* inspector/InspectorFileSystemInstrumentation.h: Removed.
* inspector/InspectorInstrumentation.cpp:
(WebCore):
* inspector/InspectorInstrumentation.h:
(WebCore):
(InspectorInstrumentation):

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

8 years agoWeb Inspector: HeapProfiler: speed-up _calculateClassesRetainedSize and _buildAggregates.
loislo@chromium.org [Fri, 25 May 2012 10:15:57 +0000 (10:15 +0000)]
Web Inspector: HeapProfiler: speed-up _calculateClassesRetainedSize and _buildAggregates.
https://bugs.webkit.org/show_bug.cgi?id=87482

Engine didn't inline node's classIndex method because the switch statement in it wasn't inlineable.

Reviewed by Yury Semikhatsky.

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotNode.prototype.classIndex):

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

8 years agoDodge style recalc when id attribute is overwritten with same value.
kling@webkit.org [Fri, 25 May 2012 10:09:21 +0000 (10:09 +0000)]
Dodge style recalc when id attribute is overwritten with same value.
<http://webkit.org/b/87211>

Reviewed by Eric Seidel.

Don't force style recalc when the id attribute is set to the same value it already had.
~3.5% improvement on Dromaeo's "dom-attr" locally.

* dom/Element.cpp:
(WebCore::Element::attributeChanged):

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

8 years ago[WK2] Fix client interface size for WKPageContextMenuClient.
g.czajkowski@samsung.com [Fri, 25 May 2012 10:05:12 +0000 (10:05 +0000)]
[WK2] Fix client interface size for WKPageContextMenuClient.
https://bugs.webkit.org/show_bug.cgi?id=87472

Reviewed by Carlos Garcia Campos.

Add correct offset for version 1 and 2 of WKPageContextMenuClient.
Revision 109750 introduces a new API and increases size of interfaceSizesByVersion
but the table is not properly initialized for newly introduced version 2.

* Shared/APIClientTraits.cpp:
(WebKit):

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

8 years agoMac bots crashing under PluginInfo destructor.
kling@webkit.org [Fri, 25 May 2012 10:02:28 +0000 (10:02 +0000)]
Mac bots crashing under PluginInfo destructor.
<http://webkit.org/b/87414>
<rdar://problem/11527172>

Reviewed by Darin Adler.

We can't safely pass WTF::String to another thread without a deref() race,
so pass the PluginInfo vector by pointer instead of by value.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::sendDidGetPlugins):
(WebKit::WebContext::handleGetPlugins):
* UIProcess/WebContext.h:

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

8 years agoWeb Inspector: add profile type for native memory snapshots
yurys@chromium.org [Fri, 25 May 2012 09:49:55 +0000 (09:49 +0000)]
Web Inspector: add profile type for native memory snapshots
https://bugs.webkit.org/show_bug.cgi?id=87400

Reviewed by Vsevolod Vlasov.

Introduced new profile type and view classes for native memory snapshots.
All the stuff is hidden behind an experimental setting.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/NativeMemorySnapshotView.js: Added.
(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeMemorySnapshotView.prototype.dispose):
(WebInspector.NativeMemorySnapshotView.prototype.get statusBarItems):
(WebInspector.NativeMemorySnapshotView.prototype.get profile):
(WebInspector.NativeMemoryProfileType):
(WebInspector.NativeMemoryProfileType.prototype.get buttonTooltip):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
(WebInspector.NativeMemoryProfileType.prototype.get treeItemTitle):
(WebInspector.NativeMemoryProfileType.prototype.get description):
(WebInspector.NativeMemoryProfileType.prototype.createTemporaryProfile):
(WebInspector.NativeMemoryProfileType.prototype.createProfile):
(WebInspector.NativeMemoryProfileHeader):
(WebInspector.NativeMemoryProfileHeader.prototype.createSidebarTreeElement):
(WebInspector.NativeMemoryProfileHeader.prototype.createView):
* inspector/front-end/ProfilesPanel.js:
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:

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

8 years agoWeb Inspector: make some profiler methods private
yurys@chromium.org [Fri, 25 May 2012 09:44:42 +0000 (09:44 +0000)]
Web Inspector: make some profiler methods private
https://bugs.webkit.org/show_bug.cgi?id=87479

Reviewed by Vsevolod Vlasov.

- Removed unused methods.
- Renamed private methods so that their names start with underscore.
- ProfileLauncherView methods are called directly from ProfilesPanel instead
  of sending events.

* inspector/front-end/CPUProfileView.js:
* inspector/front-end/CSSSelectorProfileView.js:
(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype.createTemporaryProfile):
* inspector/front-end/ProfileLauncherView.js:
(WebInspector.ProfileLauncherView.prototype.profileStarted):
(WebInspector.ProfileLauncherView.prototype.profileFinished):
* inspector/front-end/ProfilesPanel.js:
(WebInspector.ProfileType.prototype.createProfile):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype._reset):
(WebInspector.ProfilesPanel.prototype._populateProfiles.populateCallback.var):
(WebInspector.ProfilesPanel.prototype._populateProfiles.populateCallback):
(WebInspector.ProfilesPanel.prototype._populateProfiles):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot.done):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):

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

8 years ago[EFL][DRT] Gardening. fast/events/option-tab.html does not pass
commit-queue@webkit.org [Fri, 25 May 2012 09:41:17 +0000 (09:41 +0000)]
[EFL][DRT] Gardening. fast/events/option-tab.html does not pass
https://bugs.webkit.org/show_bug.cgi?id=87471

Unreviewed. fast/events/option-tab.html should not pass as the
EFL port uses different keyboard accelerators than Safari (via Chromium).

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-25

* platform/efl/test_expectations.txt:

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

8 years agoBad checkValidity result on recently "enabled" form fields
keishi@webkit.org [Fri, 25 May 2012 09:30:49 +0000 (09:30 +0000)]
Bad checkValidity result on recently "enabled" form fields
https://bugs.webkit.org/show_bug.cgi?id=85704

Reviewed by Kent Tamura.

Source/WebCore:

Test: fast/forms/disabled-attr-checkvalidity.html

We were tripping on the assertion m_isValid == validity()->valid()
inside HTMLFormControlElement::isValidFormControlElement.
m_isValid was becoming stale because setNeedsValidityCheck wasn't called
after m_willValidate changed.

* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::willValidate): We used const_cast
because it was too difficult to remove const. We are checking if the
value from willValidate has changed to avoid an infinite loop.
(WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):

LayoutTests:

* fast/forms/disabled-attr-checkvalidity-expected.txt: Added.
* fast/forms/disabled-attr-checkvalidity.html: Added.

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

8 years ago[Qt] Unreviewed gardening after r118448. Added rebaseline to 2 tests on Qt platform...
ossy@webkit.org [Fri, 25 May 2012 09:28:44 +0000 (09:28 +0000)]
[Qt] Unreviewed gardening after r118448. Added rebaseline to 2 tests on Qt platform that
had 1 pixel differences because of rounding mistakes.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-25

* platform/qt/fast/html/details-position-expected.txt:
* platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:

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

8 years agoPasting text in input field is not available if <body> has visibility:hidden
rniwa@webkit.org [Fri, 25 May 2012 09:21:45 +0000 (09:21 +0000)]
Pasting text in input field is not available if <body> has visibility:hidden
https://bugs.webkit.org/show_bug.cgi?id=66754

Reviewed by Kent Tamura.

Add a regression test since this bug has been fixed by r99076.

* editing/pasteboard/input-with-visibility-hidden-expected.txt: Copied from input-with-display-none-div-expected.txt.
* editing/pasteboard/input-with-visibility-hidden.html: Copied from input-with-display-none-div.html.

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

8 years ago[Chromium] Pull in Android tools from Chromium's repo through the DEPS file
peter@chromium.org [Fri, 25 May 2012 09:21:39 +0000 (09:21 +0000)]
[Chromium] Pull in Android tools from Chromium's repo through the DEPS file
https://bugs.webkit.org/show_bug.cgi?id=87478

Reviewed by Kent Tamura.

Chromium's r122048 added the forwarder tool, which forwards a TCP port
listening on the device to a port on the host. This now is a required
dependency of DumpRenderTree, so pull it in.

Since it's likely that more tools will be required, pull in the entire
tools/android/ directory in case the Chromium port for Android is being
checked out or updated.

* DEPS: Added Android-specific dependency on tools/android/

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

8 years ago[chromium] DataTransferItem.webkitGetAsEntry() shouldn't be exposed without flag yet
kinuko@chromium.org [Fri, 25 May 2012 09:13:39 +0000 (09:13 +0000)]
[chromium] DataTransferItem.webkitGetAsEntry() shouldn't be exposed without flag yet
https://bugs.webkit.org/show_bug.cgi?id=87457

Reviewed by Kent Tamura.

Source/WebCore:

No new tests, marking some tests SKIP as we stop exposing this by default.

* Modules/filesystem/DataTransferItemFileSystem.idl: Removed webkitGetAsEntry

LayoutTests:

* platform/chromium/test_expectations.txt: Marking tests using webkitGetAsEntry SKIP

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

8 years agoWeb Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th...
loislo@chromium.org [Fri, 25 May 2012 09:01:29 +0000 (09:01 +0000)]
Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
https://bugs.webkit.org/show_bug.cgi?id=87476

The time tracking wrappers were attaching on each run.

Reviewed by Yury Semikhatsky.

* inspector/heap-snapshot.html:

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

8 years agoRadioNodeList does not include a object element
commit-queue@webkit.org [Fri, 25 May 2012 08:51:07 +0000 (08:51 +0000)]
RadioNodeList does not include a object element
https://bugs.webkit.org/show_bug.cgi?id=87371

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-05-25
Reviewed by Kent Tamura.

Source/WebCore:

As per spec http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#category-listed
Object element should also be listed in RadioNodeList object.

Updated existing test.

* html/RadioNodeList.cpp:
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
Compares if test element's name/id  and form matches that of the RadioNodeList filter.
(WebCore::RadioNodeList::nodeMatches):
Added support for Object element, check if object elements name/id matches the RadioNodeList filter.
* html/RadioNodeList.h:
(RadioNodeList): Ditto

LayoutTests:

* fast/forms/form-collection-radio-node-list-expected.txt:
* fast/forms/form-collection-radio-node-list.html:
Updated test to include test for object element.

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

8 years ago[Qt] Unreviewed fix after r118484.
ossy@webkit.org [Fri, 25 May 2012 08:41:45 +0000 (08:41 +0000)]
[Qt] Unreviewed fix after r118484.

Enable CSS_EXCLUSIONS and CSS_REGIONS.
They were enabled uncoditinally before r118484.

* qmake/mkspecs/features/features.pri:

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

8 years ago[Qt][WK2] Fix failing qmltests::FitToView::test_basic()
commit-queue@webkit.org [Fri, 25 May 2012 08:29:31 +0000 (08:29 +0000)]
[Qt][WK2] Fix failing qmltests::FitToView::test_basic()
https://bugs.webkit.org/show_bug.cgi?id=87236

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-25
Reviewed by Kenneth Rohde Christiansen.

Rename contentViewportChanged to informVisibleContentChange() to
reflect its functionality better. Centralize m_hadUserInteraction flag
setting and add assertions on it to ensure that designated
functions are called only on user interaction.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewFlickablePrivate::onComponentComplete):
(QQuickWebViewFlickablePrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::_q_onInformVisibleContentChange):
(QQuickWebViewFlickablePrivate::_q_resume):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate::_q_onInformVisibleContentChange):
(QQuickWebViewFlickablePrivate):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
(WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
(WebKit::QtViewportInteractionEngine::pagePositionRequest):
(WebKit::QtViewportInteractionEngine::touchBegin):
(WebKit::QtViewportInteractionEngine::focusEditableArea):
(WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
(WebKit::QtViewportInteractionEngine::panGestureStarted):
(WebKit::QtViewportInteractionEngine::pinchGestureStarted):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):

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

8 years agoWeb Inspector: Resource object has no methods getContent and setContent
caseq@chromium.org [Fri, 25 May 2012 08:09:51 +0000 (08:09 +0000)]
Web Inspector: Resource object has no methods getContent and setContent
https://bugs.webkit.org/show_bug.cgi?id=87424

Source/WebCore:

This fixes the extension API so that it uses the `new Resource()`
constructor, which adds the missing `getContent` and `setContent`
methods to a `Resource` object.

Patch by Jan Keromnes <janx@linux.com> on 2012-05-25
Reviewed by Vsevolod Vlasov.

The tests were fixed accordingly in:
LayoutTests/inspector/extensions/extensions-resources-expected.txt

* inspector/front-end/ExtensionAPI.js:
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):

LayoutTests:

This fixes the expected test result for `handleOpenResource()`, see fix
for bug #87424 in Source/WebCore/inspector/front-end/ExtensionAPI.js.

Patch by Jan Keromnes <janx@linux.com> on 2012-05-25
Reviewed by Vsevolod Vlasov.

* inspector/extensions/extensions-resources-expected.txt:

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

8 years ago[EFL] API for PageGroup visited links hash populating
commit-queue@webkit.org [Fri, 25 May 2012 08:00:35 +0000 (08:00 +0000)]
[EFL] API for PageGroup visited links hash populating
https://bugs.webkit.org/show_bug.cgi?id=86370

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

Added "populate,visited,links" ewk_view signal that tells to the client managing
persistent history storage to fill the visited links cache.
Added API for the PageGroup visited links hash populating.

* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::populateVisitedLinks): Implementation added (sends notification).
(WebCore):
* WebCoreSupport/ChromeClientEfl.h:
(ChromeClientEfl):
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(ewk_view_visited_link_add): PageGroup visited links hash populating.
* ewk/ewk_view.h:

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

8 years agoUnreviewed, rolling out r118461.
vsevik@chromium.org [Fri, 25 May 2012 07:56:41 +0000 (07:56 +0000)]
Unreviewed, rolling out r118461.
http://trac.webkit.org/changeset/118461
https://bugs.webkit.org/show_bug.cgi?id=87468

Breaks two chromium browser_tests. (Requested by vsevik on
#webkit).

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

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::resize):

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

8 years agoUnreviewed chromium test expectations rebaseline.
vsevik@chromium.org [Fri, 25 May 2012 07:41:19 +0000 (07:41 +0000)]
Unreviewed chromium test expectations rebaseline.

* platform/chromium-mac-leopard/editing/spelling/grammar-markers-expected.png: Added.
* platform/chromium-mac-snowleopard/editing/spelling/grammar-markers-expected.png: Added.
* platform/chromium-mac/editing/spelling/grammar-markers-expected.png: Added.
* platform/chromium-win/editing/spelling/grammar-markers-expected.png: Added.

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

8 years ago[Qt] Unreviewed gardening, unskip now passing tests.
ossy@webkit.org [Fri, 25 May 2012 07:31:12 +0000 (07:31 +0000)]
[Qt] Unreviewed gardening, unskip now passing tests.

* platform/qt/Skipped:

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

8 years agoAdd tests for JPEG and PNG images with a non-generic RGB color profile
commit-queue@webkit.org [Fri, 25 May 2012 07:26:24 +0000 (07:26 +0000)]
Add tests for JPEG and PNG images with a non-generic RGB color profile
https://bugs.webkit.org/show_bug.cgi?id=87437

No layout test currently covers a color transform except for the no-op case of a
Generic RGB profile (image) -> Generic RGB profile (screen) color transform. Add
tests for JPEG and PNG images with a non-identity color correction transform, in
particular, use test images with a (non-generic) RGB color profile.

Patch by Tony Payne <tpayne@chromium.org> on 2012-05-25
Reviewed by Kent Tamura.

* fast/images/jpeg-with-color-profile-expected.txt: Added.
* fast/images/jpeg-with-color-profile.html: Added.
* fast/images/png-with-color-profile-expected.txt: Added.
* fast/images/png-with-color-profile.html: Added.
* fast/images/resources/red-at-12-oclock-with-color-profile.jpg: Added. The image
has an RGB color profile (non-generic). If color correction is correctly applied,
the image red sector appears at the 12 o'clock position. If color correction fails,
the red sector appears at 4 o'clock.
* fast/images/resources/red-at-12-oclock-with-color-profile.png: Added, and ditto
for the expected image red sector position and image color profile type.
* platform/chromium/test_expectations.txt: Add MISSING expectations.
* platform/mac-snowleopard/fast/images/jpeg-with-color-profile-expected.png: Added.
* platform/mac-snowleopard/fast/images/png-with-color-profile-expected.png: Added.

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

8 years ago[Qt] Unreviewed gardening, unskip a now passing test.
ossy@webkit.org [Fri, 25 May 2012 07:22:23 +0000 (07:22 +0000)]
[Qt] Unreviewed gardening, unskip a now passing test.

* platform/qt/Skipped:

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

8 years ago[Qt] Unreviewed gardening. Unskip a passing test and mark it as SLOW.
ossy@webkit.org [Fri, 25 May 2012 07:10:27 +0000 (07:10 +0000)]
[Qt] Unreviewed gardening. Unskip a passing test and mark it as SLOW.

* platform/qt/Skipped:
* platform/qt/test_expectations.txt:

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

8 years agoAdd feature defines for web-facing parts of CSS Regions and Exclusions
timothy_horton@apple.com [Fri, 25 May 2012 06:53:27 +0000 (06:53 +0000)]
Add feature defines for web-facing parts of CSS Regions and Exclusions
https://bugs.webkit.org/show_bug.cgi?id=87442
<rdar://problem/10887709>

Reviewed by Dan Bernstein.

* configure.ac:

* Configurations/FeatureDefines.xcconfig:

* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* bindings/generic/RuntimeEnabledFeatures.cpp:
* bindings/generic/RuntimeEnabledFeatures.h:
(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::setCSSExclusionsEnabled):
(WebCore::RuntimeEnabledFeatures::cssExclusionsEnabled):
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJS):
* bindings/objc/DOMCSS.mm:
(kitClass):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::isSimpleLengthPropertyID):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::detectAtToken):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSRule.cpp:
(WebCore::CSSRule::cssText):
(WebCore::CSSRule::destroy):
(WebCore::CSSRule::reattach):
* css/CSSRule.h:
(WebCore::CSSRule::isRegionRule):
* css/CSSRule.idl:
* css/StyleBuilder.cpp:
(WebCore::StyleBuilder::StyleBuilder):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::asText):
* css/StylePropertyShorthand.cpp:
(WebCore::shorthandForProperty):
* css/StylePropertyShorthand.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):
* css/WebKitCSSRegionRule.cpp:
* css/WebKitCSSRegionRule.h:
* css/WebKitCSSRegionRule.idl:
* dom/Document.cpp:
* dom/Document.h:
* dom/Document.idl:
* page/DOMWindow.idl:
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setCSSRegionsEnabled):
(WebCore::Settings::cssRegionsEnabled):

* features.gypi:

* Configurations/FeatureDefines.xcconfig:

* Configurations/FeatureDefines.xcconfig:

* Scripts/webkitperl/FeatureList.pm:

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

8 years agoWebKit should be lazy-finalization-safe (esp. the DOM)
ggaren@apple.com [Fri, 25 May 2012 06:52:00 +0000 (06:52 +0000)]
WebKit should be lazy-finalization-safe (esp. the DOM)
https://bugs.webkit.org/show_bug.cgi?id=87456

Reviewed by Filip Pizlo.

../JavaScriptCore:

Lazy finalization adds one twist to weak pointer use:

        A HashMap of weak pointers may contain logically null entries.
        (Weak pointers behave as-if null once their payloads die.)
        Insertion must not assume that a pre-existing entry is
        necessarily valid, and iteration must not assume that all
        entries can be dereferenced.

(Previously, I thought that it also added a second twist:

        A demand-allocated weak pointer may replace a dead payload
        before the payload's finalizer runs. In that case, when the
        payload's finalizer runs, the payload has already been
        overwritten, and the finalizer should not clear the payload,
        which now points to something new.

But that's not the case here, since we cancel the old payload's
finalizer when we over-write it. I've added ASSERTs to verify this
assumption, in case it ever changes.)

* API/JSClassRef.cpp:
(OpaqueJSClass::prototype): No need to specify null; that's the default.

* API/JSWeakObjectMapRefPrivate.cpp: Use remove, since take() is gone.

* heap/PassWeak.h:
(WeakImplAccessor::was): This is no longer a debug-only function, since
it's required to reason about lazily finalized pointers.

* heap/Weak.h:
(JSC::weakAdd):
(JSC::weakRemove):
(JSC::weakClear): Added these helper functions for the common idioms of
what clients want to do in their weak pointer finalizers.

* jit/JITStubs.cpp:
(JSC::JITThunks::hostFunctionStub): Use the new idioms. Otherwise, we
would return NULL for a "zombie" executable weak pointer that was waiting
for finalization (item (2)), and finalizing a dead executable weak pointer
would potentially destroy a new, live one (item (1)).

* runtime/RegExpCache.cpp:
(JSC::RegExpCache::lookupOrCreate):
(JSC::RegExpCache::finalize): Ditto.

(JSC::RegExpCache::invalidateCode): Check for null while iterating. (See
item (2).)

* runtime/Structure.cpp:
(JSC::StructureTransitionTable::contains):
(JSC::StructureTransitionTable::add): Use get and set instead of add and
contains, since add and contains are not compatible with lazy finalization.

* runtime/WeakGCMap.h:
(WeakGCMap):
(JSC::WeakGCMap::clear):
(JSC::WeakGCMap::remove): Removed a bunch of code that was incompatible with
lazy finalization because I didn't feel like making it compatible, and I had
no way to test it.

../WebCore:

* bindings/js/DOMWrapperWorld.cpp:
(WebCore::JSStringOwner::finalize):
* bindings/js/JSDOMBinding.cpp:
(WebCore::jsStringSlowCase):
* bindings/js/JSDOMBinding.h:
(WebCore::cacheWrapper):
(WebCore::uncacheWrapper): Use the new idioms.

(WebCore::jsString): Use get instead of find because get is simpler in
the case of entries that are logically null.

(WebCore::domObjectWrapperMapFor): Removed, since it was unused.

* bindings/js/ScriptWrappable.h:
(WebCore::ScriptWrappable::clearWrapper): Use the new idioms.

* bridge/runtime_root.cpp:
(JSC::Bindings::RootObject::invalidate): Check for null while iterating,
since that's possible now.

(JSC::Bindings::RootObject::addRuntimeObject):
(JSC::Bindings::RootObject::removeRuntimeObject):
(JSC::Bindings::RootObject::finalize): Use the new idioms.

* bridge/runtime_root.h:
(RootObject): Clarified the word "need".

../WebKit2:

* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::getOrCreateJSObject): Use the new idioms.

(WebKit::NPRuntimeObjectMap::invalidate): Check for null while iterating,
since that's possible now.

(WebKit::NPRuntimeObjectMap::finalize): Use the new idioms.

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

8 years agoPAGE_POPUP: window.setValueAndClosePopup should be moved to a
tkent@chromium.org [Fri, 25 May 2012 06:50:38 +0000 (06:50 +0000)]
PAGE_POPUP: window.setValueAndClosePopup should be moved to a
per-context property of DOMWindow.
https://bugs.webkit.org/show_bug.cgi?id=87086

Reviewed by Adam Barth.

.:

* ManualTests/forms/calendar-picker.html:
Introduce pseudo window.pagePopupController.

Source/WebCore:

- Introduce window.pagePagePopupController property as V8EnabledPerContext.
- Move window.setValueAndClosePopup() to window.pagePopupController.
So, we can remove ad-hoc ScriptController::installFunctionsForPagePopup().

No behavior change.

Test: fast/forms/date/no-page-popup-controller.html

* Resources/calendarPicker.js:
(submitValue): Use window.pagePopupController.
(handleCancel): ditto.
* WebCore.gypi: Add new files.
* bindings/generic/ContextEnabledFeatures.cpp:
(WebCore::ContextEnabledFeatures::pagePopupEnabled): Added.
* bindings/generic/ContextEnabledFeatures.h:
(ContextEnabledFeatures): Added.
* bindings/v8/ScriptController.cpp: Remove installFunctionsForPagePopup().
* bindings/v8/ScriptController.h: ditto.
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::allowPagePopup): Added.
* page/DOMWindowPagePopup.cpp:
(WebCore::DOMWindowPagePopup::DOMWindowPagePopup):
Creates a PagePopupController object for the specified PagePopupClient.
(WebCore::DOMWindowPagePopup::~DOMWindowPagePopup):
Empty destructor to generate the RefPtr<PagePopupController> destructor.
(WebCore::DOMWindowPagePopup::pagePopupController):
* page/DOMWindowPagePopup.h:
(DOMWindowPagePopup):
 - Remove setValueAndClosePopup()
 - Add pagePopupController()
 - Change the data member from PagePopupClient to PagePopupController.
* page/DOMWindowPagePopup.idl: Supply per-context window.pagePopupController.
* page/PagePopupController.cpp: Added. This object is attached to window.
* page/PagePopupController.h: ditto.
* page/PagePopupController.idl: ditto.

Source/WebKit/chromium:

* src/WebPagePopupImpl.cpp:
(WebKit): Add PagePopupFrameLoaderClient, which allows window.pagePopupController.
(WebKit::WebPagePopupImpl::initPage):
 - Use PagePopupFrameLoaderClient
 - Remove the call of ScriptController::installFunctionsForPagePopup().
 - Call DOMWindowPagePopup::install() to inform m_popupClient to a
   DOMWindowPagePopup object for the DOMWindow.

LayoutTests:

* fast/forms/date/no-page-popup-controller-expected.txt: Added.
* fast/forms/date/no-page-popup-controller.html: Added.

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

8 years agoCleanup: add a file system call which captures the file metadata at once.
kinuko@chromium.org [Fri, 25 May 2012 06:40:17 +0000 (06:40 +0000)]
Cleanup: add a file system call which captures the file metadata at once.
https://bugs.webkit.org/show_bug.cgi?id=86995

Reviewed by David Levin.

Source/Platform:

* Platform.gypi: Added an entry for WebFileInfo.h.
* chromium/public/WebFileInfo.h: Renamed from Source/WebKit/chromium/public/WebFileInfo.h.
(WebKit::WebFileInfo::WebFileInfo):
* chromium/public/WebFileUtilities.h:
(WebKit):
(WebKit::WebFileUtilities::getFileInfo): Added.

Source/WebCore:

Current File.slice() (webkitSlice()) implementation calls two separate platform calls,
getFileSize() and getFileModificationTime() [both are defined in platform/FileSystem.h],
to capture the file metadata, but we should have a single file system call to get them at once
for two reasons: 1. save additional system call costs, and 2.  atomically obtain the file metadata.

No new tests: existing tests (http/tests/local/fileapi/* and fast/files/*) should pass.

* fileapi/File.cpp:
(WebCore::File::captureSnapshot):
* platform/FileMetadata.h:
* platform/FileSystem.h:
* platform/chromium/FileSystemChromium.cpp:
(WebCore::getFileMetadata): Added.
* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/gtk/FileSystemGtk.cpp:
(WebCore::getFileMetadata): Added.
* platform/posix/FileSystemPOSIX.cpp:
(WebCore::getFileMetadata): Added.
* platform/qt/FileSystemQt.cpp:
(WebCore::getFileMetadata): Added.
* platform/win/FileSystemWin.cpp:
(WebCore::getFileSizeFromFindData):
(WebCore::getFileModificationTimeFromFindData):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata): Added.
* platform/wince/FileSystemWinCE.cpp:
(WebCore::getFileSizeFromFileInfo):
(WebCore::getFileModificationTimeFromFileInfo):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata): Added.
* platform/wx/FileSystemWx.cpp:
(WebCore::getFileMetadata): Added.
(WebCore):

Source/WebKit/chromium:

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

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

8 years agoUnreviewed GTK gardening, rebaselining fast/multicol/span/clone-flexbox.html.
zandobersek@gmail.com [Fri, 25 May 2012 06:36:50 +0000 (06:36 +0000)]
Unreviewed GTK gardening, rebaselining fast/multicol/span/clone-flexbox.html.

* platform/gtk/fast/multicol/span/clone-flexbox-expected.txt:

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

8 years agoSource/WebCore: Enable grammar checking on Chromium when we paste text (Take 2)
hbono@chromium.org [Fri, 25 May 2012 06:21:58 +0000 (06:21 +0000)]
Source/WebCore: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

Test: editing/spelling/grammar-markers.html

* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContext::drawLineForDocumentMarker): render grammar markers in gray on Windows and Linux or in green on Mac.

Source/WebKit/chromium: Enable grammar checking on Chromium when we paste text  (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

* src/ContextMenuClientImpl.cpp:
(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): Show suggestions when we right-click grammatically-misspelled words.
* src/EditorClientImpl.cpp:
(WebKit::EditorClientImpl::isGrammarCheckingEnabled): Enable grammar checking when we enable asynchronous spellchecking.
(WebKit::EditorClientImpl::checkGrammarOfString): set badGrammarLocation to -1 to avoid an assertion error.
* src/WebTextCheckingResult.cpp:
(WebKit::WebTextCheckingResult::operator TextCheckingResult): Fill GrammarDetails for grammatical errors.

Tools: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/MockGrammarCheck.cpp: Added.
(MockGrammarCheck::checkGrammarOfString):
* DumpRenderTree/chromium/MockGrammarCheck.h: Added.
(WebKit):
(MockGrammarCheck):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::finishLastTextCheck): Call MockGrammarCheck::checkGrammarOfString to check grammatical errors.

LayoutTests: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

* editing/spelling/grammar-markers-expected.txt: Added.
* editing/spelling/grammar-markers.html: Added.
* platform/chromium-linux/editing/spelling/grammar-markers-expected.png: Added.
* platform/chromium/test_expectations.txt:
* platform/mac/editing/spelling/grammar-markers-expected.png: Added.

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

8 years agoCrash in WebCore::AccessibilityTable::isDataTable
dmazzoni@google.com [Fri, 25 May 2012 05:56:43 +0000 (05:56 +0000)]
Crash in WebCore::AccessibilityTable::isDataTable
https://bugs.webkit.org/show_bug.cgi?id=87409

Reviewed by Abhishek Arya.

Source/WebCore:

Use Node::rendererIsEditable everywhere rather than
Node::isContentEditable because the latter can trigger a layout
and destroy the renderer. New test covers the change to
AccessibilityTable.cpp, changes to AccessibilityRenderObject.cpp
are covered by existing tests.

Test: accessibility/contenteditable-table-check-causes-crash.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::contentChanged):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):

LayoutTests:

* accessibility/contenteditable-table-check-causes-crash-expected.txt: Added.
* accessibility/contenteditable-table-check-causes-crash.html: Added.

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

8 years ago[Forms][TextArea] Too long validation message doesn't count LF as CRLF
yosin@chromium.org [Fri, 25 May 2012 05:46:54 +0000 (05:46 +0000)]
[Forms][TextArea] Too long validation message doesn't count LF as CRLF
https://bugs.webkit.org/show_bug.cgi?id=87458

Reviewed by Kent Tamura.

This patch changes current number of characters in "too long" validation message
parameter to counting newline as 2 characters (CR and LF) as submission data.

No new tests. To have test for this change, we need to change localization
text handling during DRT. We'll try.

* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::validationMessage): Use computeLengthForSubmission instead of numGraphmeClusters.

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

8 years agoREGRESSION (r118013-r118031): Loops/Reloads under www.yahoo.com, quits after three...
fpizlo@apple.com [Fri, 25 May 2012 05:41:03 +0000 (05:41 +0000)]
REGRESSION (r118013-r118031): Loops/Reloads under yahoo.com, quits after three tries with error
https://bugs.webkit.org/show_bug.cgi?id=87327

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

If you use AbstractValue::filter(StructureSet) to test subset relationships between TOP and a
set containing >=2 elements, you're going to have a bad time.

That's because AbstractValue considers a set with >=2 elements to be equivalent to TOP, in order
to save space and speed up convergence. So filtering has no effect in this case, which made
the code think that the abstract value was proving that the structure check was unnecessary.
The correct thing to do is to use isSubsetOf() on the StructureAbstractValue, which does the
right thingies for TOP and >=2 elements.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Geoffrey Garen.

* fast/js/dfg-check-two-structures-expected.txt: Added.
* fast/js/dfg-check-two-structures.html: Added.
* fast/js/script-tests/dfg-check-two-structures.js: Added.
(foo):

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

8 years ago[EFL] [DRT] Add support for WebKitOfflineWebApplicationCacheEnabled preference
commit-queue@webkit.org [Fri, 25 May 2012 05:08:36 +0000 (05:08 +0000)]
[EFL] [DRT] Add support for WebKitOfflineWebApplicationCacheEnabled preference
https://bugs.webkit.org/show_bug.cgi?id=86842

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-24
Reviewed by Antonio Gomes.

Tools:

Add support for overriding the application cache support preference
through EFL's LayoutTestController.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::overridePreference):

LayoutTests:

Unskip passing test http/tests/appcache/disabled.html

* platform/efl/Skipped:

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

8 years ago[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
zandobersek@gmail.com [Fri, 25 May 2012 05:00:31 +0000 (05:00 +0000)]
[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Reviewed by Philippe Normand.

Remove CRASH text expectations for plenty of tests that have been
consistently passing on all the Gtk builders.

* platform/gtk/test_expectations.txt:

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

8 years ago[EFL] Remove unnecessary extra call to set developer extras setting on the test startup
commit-queue@webkit.org [Fri, 25 May 2012 05:00:16 +0000 (05:00 +0000)]
[EFL] Remove unnecessary extra call to set developer extras setting on the test startup
https://bugs.webkit.org/show_bug.cgi?id=85209

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-24
Reviewed by Antonio Gomes.

Set developer extras setting called twice on the test startup. Hence, removing
an unnecessary extra call which set wrong value.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

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

8 years ago[Chromium] Unreviewed gardening, add expectation for new failure.
jsbell@chromium.org [Fri, 25 May 2012 04:56:50 +0000 (04:56 +0000)]
[Chromium] Unreviewed gardening, add expectation for new failure.

* platform/chromium/test_expectations.txt:

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

8 years agoFix crashes caused by a DOMCharacterDataModified event on a text node.
hayato@chromium.org [Fri, 25 May 2012 04:38:30 +0000 (04:38 +0000)]
Fix crashes caused by a DOMCharacterDataModified event on a text node.
https://bugs.webkit.org/show_bug.cgi?id=86953

Reviewed by Dimitri Glazkov.

Source/WebCore:

TextNode can be released while CharacterData::setData() will dispatch a mutation event.
So protect it.

Mutation event itself should not be dispatched on the test case.
This is being tracked by webkit bug https://bugs.webkit.org/show_bug.cgi?id=87372.

Test: fast/events/dom-character-data-modified-textarea-crash.html

* dom/CharacterData.cpp:
(WebCore::CharacterData::setData):

LayoutTests:

* fast/events/dom-character-data-modified-textarea-crash-expected.txt: Added.
* fast/events/dom-character-data-modified-textarea-crash.html: Added.

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

8 years ago[GTK] Add --enable-css3-flexbox configure option after r118304.
commit-queue@webkit.org [Fri, 25 May 2012 04:00:42 +0000 (04:00 +0000)]
[GTK] Add --enable-css3-flexbox configure option after r118304.
https://bugs.webkit.org/show_bug.cgi?id=87455

Patch by Philippe Normand <pnormand@igalia.com> on 2012-05-24
Reviewed by Xan Lopez.

.:

* configure.ac:

Source/WebCore:

* GNUmakefile.am:

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

8 years agoUnreviewed, GTK rebaselines after r118448 and r118353.
philn@webkit.org [Fri, 25 May 2012 03:55:12 +0000 (03:55 +0000)]
Unreviewed, GTK rebaselines after r118448 and r118353.

* platform/gtk/fast/forms/001-expected.txt:
* platform/gtk/fast/html/details-position-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/multicol/span/clone-flexbox-expected.txt:
* platform/gtk/fast/replaced/width100percent-checkbox-expected.txt:
* platform/gtk/fast/replaced/width100percent-radio-expected.txt:
* platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:

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

8 years agonew test fast/js/dfg-arguments-mixed-alias.html fails on JSVALUE32_64
fpizlo@apple.com [Fri, 25 May 2012 03:29:18 +0000 (03:29 +0000)]
new test fast/js/dfg-arguments-mixed-alias.html fails on JSVALUE32_64
https://bugs.webkit.org/show_bug.cgi?id=87378

Reviewed by Gavin Barraclough.

- Captured variable tracking forgot did not consistently handle arguments, leading to OSR
  badness.

- Nodes capable of exiting were tracked in a non-monotonic way, leading to compiler errors.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::CSEPhase):
(CSEPhase):
(JSC::DFG::performCSE):
* dfg/DFGCSEPhase.h:
(DFG):
* dfg/DFGCommon.h:
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::resetExitStates):
(DFG):
* dfg/DFGGraph.h:
(Graph):
* dfg/DFGPhase.h:
(DFG):
(JSC::DFG::runPhase):

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

8 years ago[Chromium] Widen expectations for a couple of tests to include LEOPARD.
jsbell@chromium.org [Fri, 25 May 2012 03:27:04 +0000 (03:27 +0000)]
[Chromium] Widen expectations for a couple of tests to include LEOPARD.
https://bugs.webkit.org/show_bug.cgi?id=81638
https://bugs.webkit.org/show_bug.cgi?id=81931

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

8 years ago[Chromium] More rebaselines following r118448.
jsbell@chromium.org [Fri, 25 May 2012 03:08:55 +0000 (03:08 +0000)]
[Chromium] More rebaselines following r118448.

Unreviewed gardening (but I talked to eae about it).

* platform/chromium-mac-leopard/fast/forms/001-expected.png:
* platform/chromium-mac-leopard/fast/replaced/width100percent-checkbox-expected.png:
* platform/chromium-mac-leopard/fast/replaced/width100percent-radio-expected.png:
* platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.png:
* platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.png:

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

8 years agoDisable all the shadow dom tests on Windows, since the feature isn't enabled there.
jberlin@webkit.org [Fri, 25 May 2012 02:53:00 +0000 (02:53 +0000)]
Disable all the shadow dom tests on Windows, since the feature isn't enabled there.

* platform/win/Skipped:

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

8 years ago[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes in
jberlin@webkit.org [Fri, 25 May 2012 02:33:43 +0000 (02:33 +0000)]
[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes in
ScrollView::delegatesScrolling
https://bugs.webkit.org/show_bug.cgi?id=87431

Add another affected test to the Windows Skipped list.

* platform/win/Skipped:

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

8 years ago[Chromium] Re-enable some layout tests that now pass reliably
commit-queue@webkit.org [Fri, 25 May 2012 02:18:18 +0000 (02:18 +0000)]
[Chromium] Re-enable some layout tests that now pass reliably
https://bugs.webkit.org/show_bug.cgi?id=87064

Patch by Pete Williamson <petewil@google.com> on 2012-05-24
Reviewed by Dmitry Titov.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Support mobile device rotation resizing
commit-queue@webkit.org [Fri, 25 May 2012 01:56:09 +0000 (01:56 +0000)]
[chromium] Support mobile device rotation resizing
https://bugs.webkit.org/show_bug.cgi?id=86819

Patch by Alexandre Elias <aelias@google.com> on 2012-05-24
Reviewed by Adam Barth.

Resizes on a mobile device are caused either by rotation or
on-screen-keyboard bringup, and need different treatment to remain
naturally laid out, scaled and scrolled without disorienting the user.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::resize):

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

8 years agoScoped stylesheet should be per-document-configurable.
morrita@google.com [Fri, 25 May 2012 01:55:45 +0000 (01:55 +0000)]
Scoped stylesheet should be per-document-configurable.
https://bugs.webkit.org/show_bug.cgi?id=86985

Reviewed by Kent Tamura.

This change replaced RuntimeEnabledFeatures::styleScopedEnabled() callsites
with newly introduced ContextEnabledFeatures::styleScopedEnabled().
Clients can override the decision by implementing FrameLoaderClient::allowStyleScoped().

No new tests. This isn't testable on DRT.

* bindings/generic/ContextEnabledFeatures.cpp:
(WebCore):
(WebCore::ContextEnabledFeatures::styleScopedEnabled):
* bindings/generic/ContextEnabledFeatures.h:
(WebCore):
(ContextEnabledFeatures):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::determineScope):
* css/StyleResolver.h:
(StyleResolver):
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::allowStyleScoped):

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

8 years agoUnreviewed, rolling out r118452.
commit-queue@webkit.org [Fri, 25 May 2012 01:49:40 +0000 (01:49 +0000)]
Unreviewed, rolling out r118452.
http://trac.webkit.org/changeset/118452
https://bugs.webkit.org/show_bug.cgi?id=87446

Causes many tests to assert on Mac, NRWT bails out (Requested
by sundiamonde on #webkit).

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

* rendering/RenderObject.cpp:
(WebCore::RenderObject::~RenderObject):
(WebCore::RenderObject::clearLayoutRootIfNeeded):

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

8 years agoietestcenter/css3/valuesandunits/units-000.htm asserts
jberlin@webkit.org [Fri, 25 May 2012 01:42:10 +0000 (01:42 +0000)]
ietestcenter/css3/valuesandunits/units-000.htm asserts
https://bugs.webkit.org/show_bug.cgi?id=86176

Add it to the Windows Skipped list to get the bots green.

* platform/win/Skipped:

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

8 years agowebkit crashes on debug builds when running IETC flexbox-ordinal-group-001.htm
jberlin@webkit.org [Fri, 25 May 2012 01:36:35 +0000 (01:36 +0000)]
webkit crashes on debug builds when running IETC flexbox-ordinal-group-001.htm
https://bugs.webkit.org/show_bug.cgi?id=85832

Add it to the Windows Skipped list to get the bots green.

* platform/win/Skipped:

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

8 years ago[wx] Unreviewed build fix. Add contextMenuItemVector stub.
kevino@webkit.org [Fri, 25 May 2012 01:31:36 +0000 (01:31 +0000)]
[wx] Unreviewed build fix. Add contextMenuItemVector stub.

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

8 years agoUse 32-byte alignment in AudioArray if using WEBAUDIO_FFMPEG
commit-queue@webkit.org [Fri, 25 May 2012 01:07:14 +0000 (01:07 +0000)]
Use 32-byte alignment in AudioArray if using WEBAUDIO_FFMPEG
https://bugs.webkit.org/show_bug.cgi?id=87430

Patch by Raymond Toy <rtoy@google.com> on 2012-05-24
Reviewed by Chris Rogers.

Covered by existing tests.

* platform/audio/AudioArray.h:
(WebCore::AudioArray::allocate):

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

8 years ago[chromium] Add a setForceRenderSurface to WebLayer for test/bench purpose
piman@chromium.org [Fri, 25 May 2012 01:01:49 +0000 (01:01 +0000)]
[chromium] Add a setForceRenderSurface to WebLayer for test/bench purpose
https://bugs.webkit.org/show_bug.cgi?id=87436

Reviewed by James Robinson.

Source/Platform:

* chromium/public/WebLayer.h:
(WebLayer):

Source/WebCore:

Tested by CCLayerTreeHostCommonTest.verifyForceRenderSurface

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setForceRenderSurface):
(WebCore):
(WebCore::LayerChromium::pushPropertiesTo):
* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::forceRenderSurface):
(LayerChromium):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::forceRenderSurface):
(WebCore::CCLayerImpl::setForceRenderSurface):
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::subtreeShouldRenderToSeparateSurface):

Source/WebKit/chromium:

* src/WebLayer.cpp:
(WebKit::WebLayer::setForceRenderSurface):
(WebKit):
(WebKit::WebLayer::forceRenderSurface):
* tests/CCLayerTreeHostCommonTest.cpp:
(WebKitTests::TEST):
(WebKitTests):
* tests/LayerChromiumTest.cpp:

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

8 years ago[Chromium] Rebaselines following r118448.
jsbell@chromium.org [Fri, 25 May 2012 00:56:01 +0000 (00:56 +0000)]
[Chromium] Rebaselines following r118448.

Unreviewed gardening (but I talked to eae about it).

* platform/chromium-mac-snowleopard/fast/forms/001-expected.png:
* platform/chromium-mac-snowleopard/fast/replaced/width100percent-checkbox-expected.png:
* platform/chromium-mac-snowleopard/fast/replaced/width100percent-radio-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug1318-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-mac/fast/forms/001-expected.png:
* platform/chromium-mac/fast/forms/001-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:

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

8 years agoLayout root not getting cleared for anonymous renderers geting destroyed
kenrb@chromium.org [Fri, 25 May 2012 00:46:41 +0000 (00:46 +0000)]
Layout root not getting cleared for anonymous renderers geting destroyed
https://bugs.webkit.org/show_bug.cgi?id=84002

Reviewed by Abhishek Arya.

This is a follow-up to r109406, which added a check to clear layout
roots when they point to a renderer that is being destroyed. The
thinking was that layout roots would never be anonymous renderers,
but there are some cases where this is not true (in particular,
generated content containers with overflow clips can be layout roots).

As in r109406, this patch has no layout test. This is because any test
that exercises this behavior is caused by an existing layout bug where
a child is not properly getting layout (or a renderer is getting dirtied
out of order during layout) and will fail multiple ASSERTs:
in particular, ASSERT(!m_layoutRoot->container() || !m_layoutRoot->
container()->needsLayout()) in FrameView::scheduleRelayoutOfSubtree(),
and ASSERT_NOT_REACHED() in RenderObject::clearLayoutRootIfNeeded().
We are preventing those bugs from manifesting as security issues with
this patch.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::~RenderObject):
(WebCore::RenderObject::willBeDestroyed):

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

8 years ago[Chromium] Update test expectation pathnames following r118418.
jsbell@chromium.org [Fri, 25 May 2012 00:33:06 +0000 (00:33 +0000)]
[Chromium] Update test expectation pathnames following r118418.

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

8 years agoCorrupted pages rendering when images are zoomed on Google+
andersca@apple.com [Fri, 25 May 2012 00:30:28 +0000 (00:30 +0000)]
Corrupted pages rendering when images are zoomed on Google+
https://bugs.webkit.org/show_bug.cgi?id=87439
<rdar://problem/11503078>

Reviewed by Beth Dakin.

The rect that's given to scrollContentsSlowPath is in frame view coordinates, but if we end up
passing them to RenderLayer::setBackingNeedsRepaintInRect we need to account for the frame scale factor.

* page/FrameView.cpp:
(WebCore::FrameView::scrollContentsSlowPath):

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

8 years agoREGRESSION (r112399): insertHTML doesn't respect current selection range and inserts...
rniwa@webkit.org [Fri, 25 May 2012 00:28:53 +0000 (00:28 +0000)]
REGRESSION (r112399): insertHTML doesn't respect current selection range and inserts HTML to incorrect position
https://bugs.webkit.org/show_bug.cgi?id=87195

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by our passing insertionPos.anchorNode() to splitTreeToNode's start node even when
the position's type was an offset in a container. Fixed the bug by passing the node after the insert position
or the container node if the position is at the end of the container.

Test: editing/pasteboard/paste-at-end-of-node-followed-by-inline-element.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply):

LayoutTests:

Add a regression test.

* editing/pasteboard/paste-at-end-of-node-followed-by-inline-element-expected.txt: Added.
* editing/pasteboard/paste-at-end-of-node-followed-by-inline-element.html: Added.

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

8 years agoREGRESSION (115573): Incorrect rounding of margins for floats
eae@chromium.org [Fri, 25 May 2012 00:15:34 +0000 (00:15 +0000)]
REGRESSION (115573): Incorrect rounding of margins for floats
https://bugs.webkit.org/show_bug.cgi?id=87319

Reviewed by Eric Seidel.

Source/WebCore:

In RenderBlock::computeInlinePreferredLogicalWidths we used a float to
accumulate margins for floating children while the children themselves
represent their margins as LayoutUnits. Due to lack of rounding this can
cause the block to be too small at certain certain zoom levels, causing
unwanted wrapping.

This patch changes computeInlinePreferredLogicalWidths to use a
LayoutUnit to accumulate the margins and thus ensures that the margin
values are rounded the same way.

Test: fast/block/float/floats-with-margin-should-not-wrap.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):

LayoutTests:

Add new test ensuring that using margins with floats doesn't cause
undesired wrapping.

* fast/block/float/floats-with-margin-should-not-wrap-expected.txt: Added.
* fast/block/float/floats-with-margin-should-not-wrap.html: Added.
* platform/mac/fast/forms/001-expected.txt:
* platform/mac/fast/html/details-position-expected.txt:
* platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
* platform/mac/fast/replaced/width100percent-radio-expected.txt:
* platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/mac/tables/mozilla/bugs/bug4527-expected.txt:

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

8 years agogarden-o-matic should not fetch from debug bots if it also knows about the release...
dpranke@chromium.org [Fri, 25 May 2012 00:03:14 +0000 (00:03 +0000)]
garden-o-matic should not fetch from debug bots if it also knows about the release bots
https://bugs.webkit.org/show_bug.cgi?id=86916

Reviewed by Adam Barth.

Note that if release and debug are failing differently, debug
will be ignored ...

Note: also change the use of a fake port name from
"mock-port-name" to "test-mac-leopard" to make it more friendly
to the port factory ("mock" actually is a real port).

* Scripts/webkitpy/tool/servers/gardeningserver.py:
(GardeningHTTPRequestHandler._builders_to_fetch_from):
(GardeningHTTPRequestHandler.rebaselineall):
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
(GardeningServerTest.test_rebaselineall):
(GardeningServerTest.test_rebaseline_new_port):

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

8 years agopostMessage and webkitPostMessage should behave the same way
commit-queue@webkit.org [Thu, 24 May 2012 23:55:55 +0000 (23:55 +0000)]
postMessage and webkitPostMessage should behave the same way
https://bugs.webkit.org/show_bug.cgi?id=87384

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-24
Reviewed by Adam Barth.

Source/WebCore:

Make postMessage behave the same way as webkitPostMessage, meaning
that it supports transfer of MessagePorts and ArrayBuffers as per
the spec. Both V8 and JSC implementations have been updated.

Test: fast/dom/Window/window-postmessage-args.html

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::handlePostMessage):
(WebCore::JSDOMWindow::postMessage):
(WebCore::JSDOMWindow::webkitPostMessage):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8DOMWindow::postMessageCallback):
(WebCore::V8DOMWindow::webkitPostMessageCallback):
* bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8DedicatedWorkerContext::postMessageCallback):
(WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
* bindings/v8/custom/V8MessagePortCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8MessagePort::postMessageCallback):
(WebCore::V8MessagePort::webkitPostMessageCallback):
* bindings/v8/custom/V8WorkerCustom.cpp:
(WebCore::handlePostMessageCallback):
(WebCore::V8Worker::postMessageCallback):
(WebCore::V8Worker::webkitPostMessageCallback):

LayoutTests:

Update global test expectation for
fast/dom/Window/window-postmessage-args.html now that JSC's
postMessage implementation supports transfer of MessagePorts.

* fast/dom/Window/window-postmessage-args-expected.txt:

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

8 years agoFix the build after http://trac.webkit.org/changeset/118441
beidson@apple.com [Thu, 24 May 2012 23:47:29 +0000 (23:47 +0000)]
Fix the build after trac.webkit.org/changeset/118441
Also fix a glaring bug with the new code, will run it by original reviewer retroactively.

* UIProcess/cf/WebBackForwardListCF.cpp:
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Fix up the types of the ? operands
  to appease super-strict compilers. Don't allow negative indexes (besides the -1 "No index" index).

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

8 years agoSubmit button doesn't submit the form if the form is wrapped by an anchor tag
commit-queue@webkit.org [Thu, 24 May 2012 23:36:12 +0000 (23:36 +0000)]
Submit button doesn't submit the form if the form is wrapped by an anchor tag
https://bugs.webkit.org/show_bug.cgi?id=86719

Patch by Pablo Flouret <pablof@motorola.com> on 2012-05-24
Reviewed by Ryosuke Niwa.

Source/WebCore:

When a form's button is clicked or activated with the keyboard a
DOMActivate event is dispatched internally and the default handler for
it takes care of processing the form submission, but the underlying
event that prompted it is not set as handled and so it ends up
navigating the anchor, thereby cancelling the form submission.

This patch sets the original click event as handled if the DOMActivate
event was handled. This matches the rest of the browsers for form
controls that submit a form (input type=submit, button type=submit,
input type=image, etc), and matches IE for the rest of the controls
(basically, IE never activates the anchor when clicking on form
controls, Presto and Gecko mostly don't either, except in a few cases.

Test: fast/forms/form-in-anchor-controls-activation.html

* dom/Node.cpp:
(WebCore::Node::dispatchDOMActivateEvent):
(WebCore::Node::defaultEventHandler):
* dom/Node.h:
(Node):
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::defaultEventHandler):

LayoutTests:

* fast/forms/form-in-anchor-controls-activation-expected.txt: Added.
* fast/forms/form-in-anchor-controls-activation.html: Added.

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

8 years ago<rdar://problem/10090764> and https://bugs.webkit.org/show_bug.cgi?id=87417
beidson@apple.com [Thu, 24 May 2012 23:16:13 +0000 (23:16 +0000)]
<rdar://problem/10090764> and https://bugs.webkit.org/show_bug.cgi?id=87417
(Unrepro) Crashes saving session state in WebBackForwardList

Reviewed by Darin Adler.

* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::addItem): Null check the proposed item and also m_page, to make
  sure the page hasn't been closed making this list inactive. Be more aggressive about
  clearing the current entries out if there is no current item index.
(WebKit::WebBackForwardList::itemAtIndex): Early null return if there is no current index.
(WebKit::WebBackForwardList::clear): Don't put the current item back in the array if there was
  no current item.

* UIProcess/cf/WebBackForwardListCF.cpp:
(WebKit::WebBackForwardList::createCFDictionaryRepresentation): Don't create a meaningless WebURL.
  Don't successfully return a dictionary if any of the entries were null. Be more aggressive about
  validating the current index we plan to return in the dictionary.
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): More aggressively validate the
  current index read from disk. Replace a meaningless sanity check with our typical ASSERT.

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

8 years agoAssertion failure in replaySavedEvents() when running editing/selection/drag-in-ifram...
jberlin@webkit.org [Thu, 24 May 2012 22:46:34 +0000 (22:46 +0000)]
Assertion failure in replaySavedEvents() when running editing/selection/drag-in-iframe.html
and editing/pasteboard/drop-text-events.html and fast/events/dragging-mouse-moves.html
https://bugs.webkit.org/show_bug.cgi?id=21796

Add yet another affected test to the Windows Skipped list to get the bots green.

* platform/win/Skipped:

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

8 years agoMake sure that the layer hosting mode is up-to-date when reconnecting to a new web...
andersca@apple.com [Thu, 24 May 2012 22:39:42 +0000 (22:39 +0000)]
Make sure that the layer hosting mode is up-to-date when reconnecting to a new web process
https://bugs.webkit.org/show_bug.cgi?id=87421
<rdar://problem/11510337>

Reviewed by Beth Dakin.

Send over the layer hosting mode as part of the web page creation parameters and create the right
layer hosting context based on the mode.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
(WebPageCreationParameters):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
(TiledCoreAnimationDrawingArea):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
(WebKit):
(WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):

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

8 years ago[BlackBerry] InputHandler can hold a ref on an object when document is cleared.
mifenton@rim.com [Thu, 24 May 2012 22:37:45 +0000 (22:37 +0000)]
[BlackBerry] InputHandler can hold a ref on an object when document is cleared.
https://bugs.webkit.org/show_bug.cgi?id=87412

Reviewed by Rob Buis.

PR 145234.

When the document data is cleared, notify the InputHandler
of the associated frame being unloaded.

Reviewed Internally by Nima Ghanavatian.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::clearDocumentData):

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

8 years ago[BlackBerry] Implement select popup and remove old hook to air popup
commit-queue@webkit.org [Thu, 24 May 2012 22:33:13 +0000 (22:33 +0000)]
[BlackBerry] Implement select popup and remove old hook to air popup
https://bugs.webkit.org/show_bug.cgi?id=87419

Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-24
Reviewed by Rob Buis.

Source/WebCore:

Add new files to make file, add css file for select popup.

* PlatformBlackBerry.cmake:
* Resources/blackberry/popupControlBlackBerry.css: Added.
(html):
(body):
(.bottombuttonOK):
(.bottombuttonCancel):
(.tablebutton):

Source/WebKit:

Add new files to make file.

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Introduce new html select popup client, remove the old hook to air popup.

* Api/WebPageClient.h:
* WebCoreSupport/SelectPopupClient.cpp: Added.
(WebCore):
(WebCore::SelectPopupClient::SelectPopupClient):
(WebCore::SelectPopupClient::~SelectPopupClient):
(WebCore::SelectPopupClient::update):
(WebCore::SelectPopupClient::generateHTML):
(WebCore::SelectPopupClient::closePopup):
(WebCore::SelectPopupClient::contentSize):
(WebCore::SelectPopupClient::htmlSource):
(WebCore::SelectPopupClient::setValueAndClosePopup):
(WebCore::SelectPopupClient::didClosePopup):
(WebCore::SelectPopupClient::writeDocument):
* WebCoreSupport/SelectPopupClient.h: Added.
(WebKit):
(WebCore):
(SelectPopupClient):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::openSelectPopup):
* WebKitSupport/InputHandler.h:
(WebCore):
(InputHandler):
* WebKitSupport/WebPopupType.h: Added.
(BlackBerry):
(WebKit):

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

8 years ago[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes
jberlin@webkit.org [Thu, 24 May 2012 22:31:50 +0000 (22:31 +0000)]
[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes
https://bugs.webkit.org/show_bug.cgi?id=87431

Add it to the Windows Skipped list to get the bots green.

* platform/win/Skipped:

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

8 years agoFix the chromium-android build.
abarth@webkit.org [Thu, 24 May 2012 22:30:52 +0000 (22:30 +0000)]
Fix the chromium-android build.

* features.gypi:

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

8 years agonrwt: fix baseline search path for official chrome builders
dpranke@chromium.org [Thu, 24 May 2012 22:21:47 +0000 (22:21 +0000)]
nrwt: fix baseline search path for official chrome builders
https://bugs.webkit.org/show_bug.cgi?id=87432

Reviewed by Tony Chang.

The official chrome builders need to use the win7 and SL
baseline paths, not the XP and Leopard paths. Linux is correct.

* Scripts/webkitpy/layout_tests/port/google_chrome.py:
(GoogleChromeMacPort.determine_full_port_name):
(GoogleChromeWinPort.determine_full_port_name):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(TestGoogleChromePort._verify_baseline_search_path_startswith):
(TestGoogleChromePort.test_get_google_chrome_port):

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

8 years agoTest case for focusing readonly elements
jpfau@apple.com [Thu, 24 May 2012 22:21:06 +0000 (22:21 +0000)]
Test case for focusing readonly elements
https://bugs.webkit.org/show_bug.cgi?id=87429

Reviewed by Joseph Pecoraro.

* fast/forms/input-readonly-focus-expected.txt: Added.
* fast/forms/input-readonly-focus.html: Added.

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

8 years ago[NRWT] REGRESSION(r116021): Assertion when running with --no-http
commit-queue@webkit.org [Thu, 24 May 2012 22:03:33 +0000 (22:03 +0000)]
[NRWT] REGRESSION(r116021): Assertion when running with --no-http
https://bugs.webkit.org/show_bug.cgi?id=86800

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-24
Reviewed by Dirk Pranke.

Don't launch a HTTP server with lock based only on the existence of
locked shards since we now run perf on locked shards too.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._run_tests):

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

8 years agoAvoid creating InlineBoxes for floating and positioned objects in isolates.
leviw@chromium.org [Thu, 24 May 2012 21:47:47 +0000 (21:47 +0000)]
Avoid creating InlineBoxes for floating and positioned objects in isolates.
https://bugs.webkit.org/show_bug.cgi?id=87277

Reviewed by Eric Seidel.

Source/WebCore:

We currently will create a placeholder run for the first object we encounter inside an isolate. Then
in RenderBlockLineLayout's constructBidiRuns, we replace that run with the contents of the Isolate.
We run into problems when there are no valid contents in the Isolate. We can't simply remove the
placeholder if there's nothing to replace it with since it may be the logically last run, which we
track but can't rebuild by the time we're handling isolates (we've already shuffled the BidiRuns around).

With this change, we avoid creating a placeholder altogether until we hit contents in the isolate
that would warrant a BidiRun in the first place.

Test: fast/text/international/float-as-only-child-of-isolate-crash.html

* rendering/InlineIterator.h:
(WebCore::IsolateTracker::addFakeRunIfNecessary):
* rendering/RenderBlock.h:
(RenderBlock):
(WebCore::RenderBlock::shouldSkipCreatingRunsForObject):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::appendRunsForObject):

LayoutTests:

* fast/text/international/float-as-only-child-of-isolate-crash-expected.txt: Added.
* fast/text/international/float-as-only-child-of-isolate-crash.html: Added.

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

8 years agoDOM ClipboardData.setData does not allow writes during clipboard events
jberlin@webkit.org [Thu, 24 May 2012 21:44:36 +0000 (21:44 +0000)]
DOM ClipboardData.setData does not allow writes during clipboard events
https://bugs.webkit.org/show_bug.cgi?id=17645

Add the more affected tests to the Windows Skipped list in order to get the bots green and
clean up the entry in the Skipped list to reference the bugs.webkit.org URL instead of the
Radar URL.

* platform/win/Skipped:

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

8 years agoMove format independent Media Source tests to http/tests/media/media-source
commit-queue@webkit.org [Thu, 24 May 2012 21:28:46 +0000 (21:28 +0000)]
Move format independent Media Source tests to http/tests/media/media-source
https://bugs.webkit.org/show_bug.cgi?id=86688

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-05-24
Reviewed by Eric Carlson.

* http/tests/media/media-source/media-source.js: Added. Replaces webm/webm-media-source.js.
(MediaSourceTest.SegmentHelper): Helper class for loading & managing segment data.
(MediaSourceTest.SegmentHelper.prototype.init.getDataCallback):
(MediaSourceTest.SegmentHelper.prototype.init): Initializes helper and starts loading segment data into memory.
(MediaSourceTest.SegmentHelper.prototype.getInitSegmentDone_): Called when the initialization segment has been loaded.
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegment_.getDataCallback):
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegment_): Downloads the i'th media segment.
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegmentDone_): Called when the media segment is download. Initiates downloading of the next segment if we don't have them all yet.
(MediaSourceTest.SegmentHelper.prototype.getData_.request.onload):
(MediaSourceTest.SegmentHelper.prototype.getData_): Private helper function that downloads data with XHR.
(MediaSourceTest.SegmentHelper.prototype.addSourceId): Helper function that adds a SourceID using the type specified in the segmentInfo.
(MediaSourceTest.SegmentHelper.prototype.appendInitSegment): Append the initialization segment using webkitSourceAppend().
(MediaSourceTest.SegmentHelper.prototype.appendMediaSegment): Appends the i'th media segment using webkitSourceAppend().
(MediaSourceTest.SegmentHelper.prototype.appendUntilEndOfStream): Starts appending at the i'th media segment and continues appending segments until it has appended the last one.
(MediaSourceTest.SegmentHelper.prototype.getTimeForMediaSegment): Gets the starting timestamp for the i'th media segment.
(MediaSourceTest.SegmentHelper.prototype.getMediaSegmentIndexForTimestamp): Gets the media segment index number for the specified timestamp.
(MediaSourceTest.setSrcToMediaSourceTestURL): Helper function that sets src to webkitMediaSourceURL.
(MediaSourceTest.mediaErrorString): Helper function that converts a MediaError code to a string.
(MediaSourceTest.defaultOnErrorChecks): Default event handler for error events.
(MediaSourceTest.runNext_.runNextFunction): Function passed to a test case to trigger moving on to the next test.
(MediaSourceTest.runNext_.errorEventHandler): Error event handler to use for a test case. This allows moving on to the next test if we get an unexpected error.
(MediaSourceTest.runNext_): Private helper function for running a single test case.
(MediaSourceTest.startTesting): Runs the test case harness.
(MediaSourceTest.startSourceOpenTesting.testWrapperFunction): Wraps test case functions so that they will get called when webkitsourceopen event fires.
(MediaSourceTest.startSourceOpenTesting): Runs the test case harness where test case functions are run from the webkitsourceopen event handler.
(MediaSourceTest.runOnSourceOpen.eventHandlerFunction):
(MediaSourceTest.runOnSourceOpen): Helper function that enable Media Source and calls a function when the webkitsourceopen fires.
(MediaSourceTest.logSourceState): Logs the current webkitSourceState to the console.
(MediaSourceTest.expectSourceState): Helper function that verifies a webkitSourceState expectatation.
(MediaSourceTest.getSourceStateName): Converts a sourcestate value into a string.
(MediaSourceTest.expectReadyState): Helper function that verifies a readyState expectation.
(MediaSourceTest.getReadyStateName): Converts a readyState value into a string.
* http/tests/media/media-source/video-media-source-abort-expected.txt: Added.
* http/tests/media/media-source/video-media-source-abort.html: Added.
* http/tests/media/media-source/video-media-source-add-and-remove-ids-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-add-and-remove-ids-expected.txt.
* http/tests/media/media-source/video-media-source-add-and-remove-ids.html: Added.
* http/tests/media/media-source/video-media-source-errors-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-errors-expected.txt.
* http/tests/media/media-source/video-media-source-errors.html: Added.
* http/tests/media/media-source/video-media-source-event-attributes.html:
* http/tests/media/media-source/video-media-source-play-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-play-expected.txt.
* http/tests/media/media-source/video-media-source-play.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-play.html.
* http/tests/media/media-source/video-media-source-seek-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-seek-expected.txt.
* http/tests/media/media-source/video-media-source-seek.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-seek.html.
* http/tests/media/media-source/video-media-source-state-changes-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-state-changes-expected.txt.
* http/tests/media/media-source/video-media-source-state-changes.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-state-changes.html.
* http/tests/media/media-source/webm/video-media-source-abort-expected.txt: Removed.
* http/tests/media/media-source/webm/video-media-source-abort.html: Removed.
* http/tests/media/media-source/webm/video-media-source-add-and-remove-ids.html: Removed.
* http/tests/media/media-source/webm/video-media-source-errors.html: Removed.
* http/tests/media/media-source/webm/webm-media-source.js: Removed.
* http/tests/media/resources/media-source/webm/segment-info.js: Added. Contains segment information for test.webm.
* http/tests/media/resources/media-source/webm/test.webm.cluster-0: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-1: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-10: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-11: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-12: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-13: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-14: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-15: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-2: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-3: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-4: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-5: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-6: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-7: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-8: Removed.
* http/tests/media/resources/media-source/webm/test.webm.cluster-9: Removed.
* http/tests/media/resources/media-source/webm/test.webm.headers: Removed.

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

8 years ago[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
jberlin@webkit.org [Thu, 24 May 2012 21:21:30 +0000 (21:21 +0000)]
[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
https://bugs.webkit.org/show_bug.cgi?id=87426

Add the affected tests to the Windows Skipped list in order to get the bots green.

* platform/win/Skipped:

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

8 years agoMade WeakSet per-block instead of per-heap
ggaren@apple.com [Thu, 24 May 2012 21:18:10 +0000 (21:18 +0000)]
Made WeakSet per-block instead of per-heap
https://bugs.webkit.org/show_bug.cgi?id=87401

Reviewed by Oliver Hunt.

This allows us fast access to the set of all weak pointers for a block,
which is a step toward lazy finalization.

No performance change.

* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::lastChanceToFinalize): Removed the per-heap weak set, since
it's per-block now.

(JSC::Heap::markRoots): Delegate weak set visiting to the marked space,
since it knows how to iterate all blocks.

(JSC::Heap::collect): Moved the reaping outside of markRoots, since it
doesn't mark anything.

Make sure to reset allocators after shrinking, since shrinking may
deallocate the current allocator.

* heap/Heap.h:
(Heap): No more per-heap weak set, since it's per-block now.

* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedBlock.h:
(MarkedBlock):
(JSC::MarkedBlock::lastChanceToFinalize): Migrated finalization logic
here from the heap, so the heap doesn't need to know about our internal
data structures like our weak set.

(JSC::MarkedBlock::heap):
(JSC::MarkedBlock::weakSet):
(JSC::MarkedBlock::shrink):
(JSC::MarkedBlock::resetAllocator):
(JSC::MarkedBlock::visitWeakSet):
(JSC::MarkedBlock::reapWeakSet):
(JSC::MarkedBlock::sweepWeakSet):
* heap/MarkedSpace.cpp:
(JSC::VisitWeakSet::VisitWeakSet):
(JSC::VisitWeakSet::operator()):
(VisitWeakSet):
(JSC):
(JSC::ReapWeakSet::operator()):
(JSC::SweepWeakSet::operator()):
(JSC::LastChanceToFinalize::operator()):
(JSC::MarkedSpace::lastChanceToFinalize):
(JSC::ResetAllocator::operator()):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::visitWeakSets):
(JSC::MarkedSpace::reapWeakSets):
(JSC::MarkedSpace::sweepWeakSets):
(JSC::Shrink::operator()):
(JSC::MarkedSpace::shrink):
* heap/MarkedSpace.h:
(MarkedSpace): Make sure to account for our weak sets when sweeping,
shrinking, etc.

* heap/WeakSet.cpp:
(JSC):
* heap/WeakSet.h:
(WeakSet):
(JSC::WeakSet::heap):
(JSC):
(JSC::WeakSet::lastChanceToFinalize):
(JSC::WeakSet::visit):
(JSC::WeakSet::reap):
(JSC::WeakSet::shrink):
(JSC::WeakSet::resetAllocator): Inlined some things since they're called
once per block now instead of once per heap.

* heap/WeakSetInlines.h:
(JSC::WeakSet::allocate): Use the per-block weak set since there is no
per-heap weak set anymore.

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

8 years agoFix arm build
barraclough@apple.com [Thu, 24 May 2012 21:17:38 +0000 (21:17 +0000)]
Fix arm build

Rubber stamped by Geoff Garen

* dfg/DFGGPRInfo.h:
(GPRInfo):

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

8 years agoThere are too many poorly named functions to create a fragment from markup
rniwa@webkit.org [Thu, 24 May 2012 21:15:17 +0000 (21:15 +0000)]
There are too many poorly named functions to create a fragment from markup
https://bugs.webkit.org/show_bug.cgi?id=87339

Reviewed by Eric Seidel.

Source/WebCore:

Moved all functions that create a fragment from markup to markup.h/cpp.
There should be no behavioral change.

* dom/Range.cpp:
(WebCore::Range::createContextualFragment):
* dom/Range.h: Removed createDocumentFragmentForElement.
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::setInnerHTML):
* editing/markup.cpp:
(WebCore::createFragmentFromMarkup):
(WebCore::createFragmentForInnerOuterHTML): Renamed from createFragmentFromSource.
(WebCore::createFragmentForTransformToFragment): Moved from XSLTProcessor.
(WebCore::removeElementPreservingChildren): Moved from Range.
(WebCore::createContextualFragment): Ditto.
* editing/markup.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::setInnerHTML):
(WebCore::HTMLElement::setOuterHTML):
(WebCore::HTMLElement::insertAdjacentHTML):
* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::patchNode): Added a FIXME since this code should be using
one of the functions listed in markup.h
* xml/XSLTProcessor.cpp:
(WebCore::XSLTProcessor::transformToFragment):

Source/WebKit/qt:

Replace calls to Range::createDocumentFragmentForElement by calls to
createContextualDocumentFragment.

* Api/qwebelement.cpp:
(QWebElement::appendInside):
(QWebElement::prependInside):
(QWebElement::prependOutside):
(QWebElement::appendOutside):
(QWebElement::encloseContentsWith):
(QWebElement::encloseWith):

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

8 years agoMove cacheFlush from ExecutableAllocator to Assembler classes
barraclough@apple.com [Thu, 24 May 2012 21:14:07 +0000 (21:14 +0000)]
Move cacheFlush from ExecutableAllocator to Assembler classes
https://bugs.webkit.org/show_bug.cgi?id=87420

Reviewed by Oliver Hunt.

Makes more sense there, & remove a pile of #ifdefs.

* assembler/ARMAssembler.cpp:
(JSC):
(JSC::ARMAssembler::cacheFlush):
* assembler/ARMAssembler.h:
(ARMAssembler):
(JSC::ARMAssembler::cacheFlush):
* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::relinkJump):
(JSC::ARMv7Assembler::cacheFlush):
(ARMv7Assembler):
(JSC::ARMv7Assembler::setInt32):
(JSC::ARMv7Assembler::setUInt7ForLoad):
* assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::cacheFlush):
* assembler/LinkBuffer.h:
(JSC::LinkBuffer::performFinalization):
* assembler/MIPSAssembler.h:
(JSC::MIPSAssembler::relinkJump):
(JSC::MIPSAssembler::relinkCall):
(JSC::MIPSAssembler::repatchInt32):
(JSC::MIPSAssembler::cacheFlush):
(MIPSAssembler):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::repatchCompact):
(JSC::SH4Assembler::cacheFlush):
(SH4Assembler):
* assembler/X86Assembler.h:
(X86Assembler):
(JSC::X86Assembler::cacheFlush):
* jit/ExecutableAllocator.cpp:
(JSC):
* jit/ExecutableAllocator.h:
(ExecutableAllocator):

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

8 years ago[Chromium] Update test expectation for fast/js/string-replace-2.html on debug
jsbell@chromium.org [Thu, 24 May 2012 20:54:16 +0000 (20:54 +0000)]
[Chromium] Update test expectation for fast/js/string-replace-2.html on debug
https://bugs.webkit.org/show_bug.cgi?id=87423

* platform/chromium/test_expectations.txt:

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

8 years agoMediaControlTimelineElement is adjusting time 3 times per click
jer.noble@apple.com [Thu, 24 May 2012 20:41:59 +0000 (20:41 +0000)]
MediaControlTimelineElement is adjusting time 3 times per click
https://bugs.webkit.org/show_bug.cgi?id=58160

Reviewed by Eric Carlson.

No new tests; we intentionally throttle timeupdate events for the same
movie time, so there is no way to write a layout test for this case.

Only call setCurrentTime() on mousedown or mousemove events.

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTimelineElement::defaultEventHandler):

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

8 years ago[Win] Crash under DocumentLoader::didTellClientAboutLoad when running
jberlin@webkit.org [Thu, 24 May 2012 20:12:50 +0000 (20:12 +0000)]
[Win] Crash under DocumentLoader::didTellClientAboutLoad when running
fast/dom/Window/Location/window-override-location-using-defineGetter.html
fast/dom/Window/Location/set-location-after-close.html

Skip set-location-after-close.html on Windows.

* platform/win/Skipped:

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

8 years agoAdd --driver-name option to run_webkit_tests.py to allow for selecting alternative...
jochen@chromium.org [Thu, 24 May 2012 20:08:59 +0000 (20:08 +0000)]
Add --driver-name option to run_webkit_tests.py to allow for selecting alternative DRT binaries
https://bugs.webkit.org/show_bug.cgi?id=87128

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.driver_name):
* Scripts/webkitpy/layout_tests/port/chromium_linux.py:
(ChromiumLinuxPort._path_to_driver):
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumPortTest.test_driver_name_option):
* Scripts/webkitpy/layout_tests/port/chromium_win.py:
(ChromiumWinPort._path_to_driver):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):

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

8 years agoFont Boosting: Add compile flag and runtime setting
commit-queue@webkit.org [Thu, 24 May 2012 20:01:53 +0000 (20:01 +0000)]
Font Boosting: Add compile flag and runtime setting
https://bugs.webkit.org/show_bug.cgi?id=87394

Patch by John Mellor <johnme@chromium.org> on 2012-05-24
Reviewed by Adam Barth.

.:

Add ENABLE_FONT_BOOSTING.

* configure.ac:

Source/JavaScriptCore:

Add ENABLE_FONT_BOOSTING.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add ENABLE_FONT_BOOSTING compile flag and fontBoostingEnabled runtime setting.

No functionality yet, so no new tests.

* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* Target.pri:
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setFontBoostingEnabled):
(WebCore):
* page/Settings.h:
(Settings):
(WebCore::Settings::fontBoostingEnabled):

Source/WebKit/chromium:

Expose fontBoostingEnabled runtime setting via WebSettings.

* features.gypi:
* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setFontBoostingEnabled):
(WebKit):
* src/WebSettingsImpl.h:
(WebSettingsImpl):

Source/WebKit/mac:

Add ENABLE_FONT_BOOSTING.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Add ENABLE_FONT_BOOSTING.

* Configurations/FeatureDefines.xcconfig:

Tools:

Add ENABLE_FONT_BOOSTING.

* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:

WebKitLibraries:

Add ENABLE_FONT_BOOSTING.

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

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

8 years ago[EFL] Unreviewed, unbreak `make install' after r117046.
rakuco@webkit.org [Thu, 24 May 2012 19:48:48 +0000 (19:48 +0000)]
[EFL] Unreviewed, unbreak `make install' after r117046.

* PlatformEfl.cmake: Remove ewk_auth_soup.h from the list of
installed headers, since it has been made private and renamed.

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

8 years agoPossible missing layout in Iris browser after hiding VKB
tonikitoo@webkit.org [Thu, 24 May 2012 19:40:09 +0000 (19:40 +0000)]
Possible missing layout in Iris browser after hiding VKB
https://bugs.webkit.org/show_bug.cgi?id=87408
PR #153056 / MKS_3674963

Reviewed by Adam Treat.
Patch by Antonio Gomes <agomes@rim.com>

Also informally reviewed by Mike Fenton.

If we are not rotating and we've started a viewport resize with
the Render tree in dirty state (i.e. it needs layout), lets
reset the needsLayout flag for now but set our own 'needsLayout'.

Reason: calls like ScrollView::setFixedLayoutSize can trigger a layout
if the render tree needs it. We want to avoid it till the viewport resize
is actually done (i.e. ScrollView::setViewportSize gets called
further down the method) so we do not get render artifacts.

Since our WebPage::setViewportSize calls rely on async Virtual
Keyboard responses, we were getting it called with the render
tree sometimes in a dirty state, sometimes not. It was flaky!
Patch ensures a clear render tree state, and sets it as dirty
afterwards as needed, so layout happens at the proper time.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

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

8 years ago[EFL] [DRT] keyboard-related tests do not pass
commit-queue@webkit.org [Thu, 24 May 2012 19:38:10 +0000 (19:38 +0000)]
[EFL] [DRT] keyboard-related tests do not pass
https://bugs.webkit.org/show_bug.cgi?id=85369

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-24
Reviewed by Gustavo Noronha Silva.

Tools:

Add SHIFT modifier for capital letters as VK_
codes do not distinguish between lows and caps and also to be consistent
with other ports which send caps as lowercase letters with the shift key down.

* DumpRenderTree/efl/EventSender.cpp:
(keyNameFromJSValue):

LayoutTests:

* platform/efl/Skipped: Unskipped keyboard-related tests.

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

8 years ago[BlackBerry] Padding adjustment for determining the relative distance for a point...
mifenton@rim.com [Thu, 24 May 2012 19:29:19 +0000 (19:29 +0000)]
[BlackBerry] Padding adjustment for determining the relative distance for a point was backwards.
https://bugs.webkit.org/show_bug.cgi?id=87404

Reviewed by Rob Buis.

Fix padding calculation for handle adjustment.

Reviewed Internally by Mike Lattanzio.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::directionOfPointRelativeToRect):

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

8 years agoMHTML files should be loadable from all schemes considered local,
commit-queue@webkit.org [Thu, 24 May 2012 19:27:36 +0000 (19:27 +0000)]
MHTML files should be loadable from all schemes considered local,
not just "file:"

https://bugs.webkit.org/show_bug.cgi?id=86540

Patch by Greg Spencer <gspencer@chromium.org> on 2012-05-24
Reviewed by Adam Barth.

Existing tests should verify correct function.

* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::continueAfterContentPolicy):
* loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::create):

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

8 years ago[Chromium] Widen test suppressions to include linux crash.
jsbell@chromium.org [Thu, 24 May 2012 19:09:05 +0000 (19:09 +0000)]
[Chromium] Widen test suppressions to include linux crash.
https://bugs.webkit.org/show_bug.cgi?id=87160

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Remove some leftover references to LayerTilerChromium
danakj@chromium.org [Thu, 24 May 2012 19:03:05 +0000 (19:03 +0000)]
[chromium] Remove some leftover references to LayerTilerChromium
https://bugs.webkit.org/show_bug.cgi?id=87405

Reviewed by James Robinson.

* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/SolidColorLayerChromium.h:

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

8 years agoREGRESSION(r109663) All the the dom/html/level2/html/HTMLFrameElement* tests crash...
jberlin@webkit.org [Thu, 24 May 2012 18:57:14 +0000 (18:57 +0000)]
REGRESSION(r109663) All the the dom/html/level2/html/HTMLFrameElement* tests crash on Windows
https://bugs.webkit.org/show_bug.cgi?id=87410

Reviewed by Anders Carlsson.

Do not pass a reference type to va_start (see r75435).

* platform/LocalizedStrings.cpp:
(WebCore::formatLocalizedString):

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