profile/ivi/webkit-efl.git
12 years agoSimplify checking for whether we should rubberband or not when at the edge
andersca@apple.com [Thu, 26 Jan 2012 20:46:15 +0000 (20:46 +0000)]
Simplify checking for whether we should rubberband or not when at the edge
https://bugs.webkit.org/show_bug.cgi?id=77131

Reviewed by Beth Dakin.

We only need to check once if we're pinned at either edge whether we should rubber-band
or not. Do this when the wheel event phase is PlatformWheelEventPhaseBegan. This lets us
remove a bunch of code that would keep track of the current horizontal scroll direction.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::handleWheelEvent):
(WebCore::ScrollAnimatorMac::beginScrollGesture):

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

12 years ago[JSC] Inspector instrumentation for JavaScript calls.
efidler@rim.com [Thu, 26 Jan 2012 20:39:06 +0000 (20:39 +0000)]
[JSC] Inspector instrumentation for JavaScript calls.
https://bugs.webkit.org/show_bug.cgi?id=40119

Reviewed by Geoffrey Garen.

Source/WebCore:

Covered by existing Chromium inspector tests

* bindings/js/JSCallbackData.cpp:
(WebCore::JSCallbackData::invokeCallback):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/JSMainThreadExecState.h:
(WebCore::JSMainThreadExecState::instrumentedCall):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):

LayoutTests:

* inspector/timeline/timeline-injected-script-eval-expected.txt: expectation is now valid cross-platform
* inspector/timeline/timeline-receive-response-event-expected.txt: ditto
* platform/chromium/inspector/timeline/timeline-injected-script-eval-expected.txt: Removed.
* platform/chromium/inspector/timeline/timeline-receive-response-event-expected.txt: Removed.

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

12 years agoSignal to skia to force A8 text from LCD output, but only when we have to disable...
vangelis@chromium.org [Thu, 26 Jan 2012 20:30:40 +0000 (20:30 +0000)]
Signal to skia to force A8 text from LCD output, but only when we have to disable LCD because we're in a layer
https://bugs.webkit.org/show_bug.cgi?id=76547

Patch by Mike Reed <reed@google.com> on 2012-01-26
Reviewed by Stephen White.

Existing tests should confirm nothing is broken. Antialiased text
is disabled in layouttests, so they should be unaffected by the
difference in antialiasing quality.

* platform/graphics/skia/SkiaFontWin.cpp:
(WebCore::setupPaintForFont):

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

12 years ago[Qt][WK2] fast/loader tests failed after r94178
commit-queue@webkit.org [Thu, 26 Jan 2012 20:19:05 +0000 (20:19 +0000)]
[Qt][WK2] fast/loader tests failed after r94178
https://bugs.webkit.org/show_bug.cgi?id=67388

Patch by Luciano Wolf <luciano.wolf@openbossa.org> on 2012-01-26
Reviewed by Simon Hausmann.

Tools:

Applying the same fix used for Qt-WebKit1 from bug #67254 -
[Qt][DRT] Normalize file:///tmp/LayoutTests in LayoutTestController::pathToLocalResource()
https://bugs.webkit.org/show_bug.cgi?id=67254
Translate file:///tmp/LayoutTests/* urls into the repository LayoutTests directory, which is
derived from the running location of DumpRenderTree binary.

* WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
(WTR::LayoutTestController::pathToLocalResource):

LayoutTests:

Removing the following tests from skipped list:
fast/loader/local-CSS-from-local.html
fast/loader/local-JavaScript-from-local.html
fast/loader/local-image-from-local.html

* platform/qt-wk2/Skipped:

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

12 years agoUpdating skipped tests after r105997.
jesus@webkit.org [Thu, 26 Jan 2012 20:15:50 +0000 (20:15 +0000)]
Updating skipped tests after r105997.

Unreviewed gardening.

* platform/qt-4.8/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

12 years agoUse PlatformWheelEvent::phase() to determine if a scroll gesture begins or ends
andersca@apple.com [Thu, 26 Jan 2012 20:13:39 +0000 (20:13 +0000)]
Use PlatformWheelEvent::phase() to determine if a scroll gesture begins or ends
https://bugs.webkit.org/show_bug.cgi?id=77127

Reviewed by Beth Dakin.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
Remove handleGestureEvent.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
Look at the event phase to determine when to call didBeginGesture and didEndGesture.

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

12 years agoUsing strncmp() for comparing scheme and port numbers is inefficient
benjamin@webkit.org [Thu, 26 Jan 2012 20:09:40 +0000 (20:09 +0000)]
Using strncmp() for comparing scheme and port numbers is inefficient
https://bugs.webkit.org/show_bug.cgi?id=75821

Reviewed by Darin Adler.

Replace the equal() function comparing 2 arbitrary strings by a template
comparing the string to an array, character by character.

This is only used for small strings: the schemes and the ports.

* platform/KURL.cpp:
(WebCore::equal):
(WebCore::isDefaultPortForScheme):
(WebCore::isNonFileHierarchicalScheme):
(WebCore::isCanonicalHostnameLowercaseForScheme):

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

12 years ago[chromium] Unreviewed, rebaseline after http://trac.webkit.org/changeset/105613.
knorton@google.com [Thu, 26 Jan 2012 20:02:54 +0000 (20:02 +0000)]
[chromium] Unreviewed, rebaseline after trac.webkit.org/changeset/105613.

* platform/chromium-linux/svg/custom/relative-sized-image-expected.png: Added.
* platform/chromium-linux/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium-win/svg/custom/relative-sized-image-expected.png: Added.
* platform/chromium-win/svg/custom/relative-sized-image-expected.txt: Added.
* platform/chromium-win/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

12 years ago[Qt][WK2] REGRESSION(102228): lot of test failures after enabled page cache
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 19:56:43 +0000 (19:56 +0000)]
[Qt][WK2] REGRESSION(102228): lot of test failures after enabled page cache
https://bugs.webkit.org/show_bug.cgi?id=73999

Reviewed by Kenneth Rohde Christiansen.

Those tests were failing because PageCache was enabled for WTR and they depend on
it being disable: they rely on onload being called after navigating back to a page.

WTR should run without PageCache enabled. This was fixed in r106005, so we can
unskip these now.

* platform/qt-wk2/Skipped:

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

12 years ago[Qt][WK2] Add the componentComplete method to WebView
abecsi@webkit.org [Thu, 26 Jan 2012 19:47:53 +0000 (19:47 +0000)]
[Qt][WK2] Add the componentComplete method to WebView
https://bugs.webkit.org/show_bug.cgi?id=77111

Reviewed by Kenneth Rohde Christiansen.

Move the touch/desktop initialization to componentComplete.
Also return valid default values in the viewport info functions
if the interaction engine is not yet initialized because the
viewport info component could finish initialization earlier
than the WebView, which results in QML warnings during MiniBrowser
startup.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebView::geometryChanged):
(QQuickWebView::componentComplete):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):

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

12 years agoWebWheelEvent::Phase and PlatformWheelEvent::Phase declarations should match AppKit
andersca@apple.com [Thu, 26 Jan 2012 19:28:38 +0000 (19:28 +0000)]
WebWheelEvent::Phase and PlatformWheelEvent::Phase declarations should match AppKit
https://bugs.webkit.org/show_bug.cgi?id=77123

Reviewed by Beth Dakin.

Source/WebCore:

* platform/PlatformWheelEvent.h:
():
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::phaseForEvent):

Source/WebKit2:

* Shared/WebEvent.h:
():
* Shared/mac/WebEventFactory.mm:
(WebKit::phaseForEvent):

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

12 years agoString::latin1() should take advantage of 8 bit strings
msaboff@apple.com [Thu, 26 Jan 2012 19:26:15 +0000 (19:26 +0000)]
String::latin1() should take advantage of 8 bit strings
https://bugs.webkit.org/show_bug.cgi?id=76646

Reviewed by Geoffrey Garen.

* wtf/text/WTFString.cpp:
(WTF::String::latin1): For 8 bit strings, use existing buffer
without conversion.

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

12 years agoDromaeo tests usage of StringImpl find routines cause 8->16 bit conversions
msaboff@apple.com [Thu, 26 Jan 2012 19:23:50 +0000 (19:23 +0000)]
Dromaeo tests usage of StringImpl find routines cause 8->16 bit conversions
https://bugs.webkit.org/show_bug.cgi?id=76645

Reviewed by Geoffrey Garen.

* wtf/text/StringImpl.cpp:
(WTF::equalIgnoringCase): New LChar version.
(WTF::findInner): New helper function.
(WTF::StringImpl::find): Added 8 bit path.
(WTF::reverseFindInner): New helper funciton.
(WTF::StringImpl::reverseFind): Added 8 bit path.
(WTF::StringImpl::reverseFindIgnoringCase): Added 8 bit path.
* wtf/text/StringImpl.h:
(WTF):

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

12 years agoRevert code changes from r105800
dcheng@chromium.org [Thu, 26 Jan 2012 19:23:42 +0000 (19:23 +0000)]
Revert code changes from r105800
https://bugs.webkit.org/show_bug.cgi?id=77071

The strings are already lowercased in EventHandler.cpp:findDropZone() so there's
no need to call lower() again.

Reviewed by Tony Chang.

Covered by existing tests.

* dom/Clipboard.cpp:
(WebCore::Clipboard::hasDropZoneType):

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

12 years ago[Chromium]: rebaseline after r105878
commit-queue@webkit.org [Thu, 26 Jan 2012 19:20:27 +0000 (19:20 +0000)]
[Chromium]: rebaseline after r105878
https://bugs.webkit.org/show_bug.cgi?id=77017

Unreviewed Chromium expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-26

* platform/chromium/svg/stroke/zero-length-path-linecap-rendering-expected.txt: Added.
* platform/chromium/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt: Added.
* platform/chromium/test_expectations.txt:

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

12 years agoREGRESSION (r91125): Polyline tool in google docs is broken
commit-queue@webkit.org [Thu, 26 Jan 2012 19:18:18 +0000 (19:18 +0000)]
REGRESSION (r91125): Polyline tool in google docs is broken
https://bugs.webkit.org/show_bug.cgi?id=65796

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-26
Reviewed by Nikolas Zimmermann.

It turns out that the CG problem is a design decision. The bounding code
returns CGRectNull for cases where a bound is ill-defined, rather than the
empty bound as expected.

I'm also removing the workaround for isEmpty to get correct zero length paths.
It is no longer necessary.

Tested by existing layout tests.

* platform/graphics/cg/PathCG.cpp: Removed path empty and path bound testing classes.
(WebCore::Path::boundingRect): Added check for CGRectNull
(WebCore::Path::fastBoundingRect): Added check for CGRectNull
(WebCore::Path::strokeBoundingRect): Added check for CGRectNull
(WebCore::Path::isEmpty): Reverted to former behavior, just using CGPathIsEmpty.
(WebCore::Path::hasCurrentPoint): Reverted to former behavior, using isEmpty.
(WebCore::Path::transform): Reverted to former behavior, using isEmpty.

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

12 years agoRefactor application of additional style attributes for table elements.
kling@webkit.org [Thu, 26 Jan 2012 19:02:27 +0000 (19:02 +0000)]
Refactor application of additional style attributes for table elements.
<http://webkit.org/b/77095>

Reviewed by Darin Adler.

The primary purpose of this change is to reduce usage of CSSMappedAttributeDeclaration.
Instead of using the mapped attribute decl table for additional table style, just use
regular CSSMutableStyleDeclarations. We cache them all globally, except for the style
that's shared between a table's cells. That one is cached per-table since it depends
on the table's border and padding.

* dom/CSSMappedAttributeDeclaration.cpp:
(WebCore::CSSMappedAttributeDeclaration::~CSSMappedAttributeDeclaration):
* dom/MappedAttributeEntry.h:

    Remove the concept of persistent CSSMappedAttributeDeclarations. The hunk in
    ~CSSMappedAttributeDeclaration was wildly wrong since it would leave stale pointers
    in the decl table, but unreachable since we always leaked one ref to those decls.

* dom/StyledElement.h:
(WebCore::StyledElement::additionalAttributeStyle):
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::additionalAttributeStyle):
* html/HTMLTableCellElement.h:
(HTMLTableCellElement):
* html/HTMLTableColElement.cpp:
(WebCore::HTMLTableColElement::additionalAttributeStyle):
* html/HTMLTableColElement.h:
(HTMLTableColElement):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::parseMappedAttribute):
(WebCore::leakBorderStyle):
(WebCore::HTMLTableElement::additionalAttributeStyle):
(WebCore::HTMLTableElement::createSharedCellStyle):
(WebCore::HTMLTableElement::additionalCellStyle):
(WebCore::leakGroupBorderStyle):
(WebCore::HTMLTableElement::additionalGroupStyle):
* html/HTMLTableElement.h:
(HTMLTableElement):
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::additionalAttributeStyle):
* html/HTMLTableSectionElement.h:
(HTMLTableSectionElement):

    Instead of collecting additional style decls into a vector, switch over to a
    "PassRefPtr<CSSMutableStyleDeclaration> additionalAttributeStyle()".
    All style declarations that can be reused for all elements are cached at the return
    sites, leaving only the shared table cell style which we cache on HTMLTableElement.
    Also removed the canHaveAdditionalAttributeStyleDecls() virtual since the default
    additionalAttributeStyle() will just return 0.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::matchAllRules):

    Updated for the new additional style conventions.

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

12 years agoASSERT(!m_overlay) reached in TapHighlightController.cpp:73
abecsi@webkit.org [Thu, 26 Jan 2012 18:46:55 +0000 (18:46 +0000)]
ASSERT(!m_overlay) reached in TapHighlightController.cpp:73
https://bugs.webkit.org/show_bug.cgi?id=77117

Reviewed by Tor Arne Vestbø.

The PageOverlay does only get uninstalled after the fade-out animation finishes,
so do not assert on !m_overlay after the uninstallPageOverlay call.

* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::hideHighlight):

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

12 years agoWeb Inspector: Scripts panel editor container should be based on UISourceCode objects...
vsevik@chromium.org [Thu, 26 Jan 2012 18:45:10 +0000 (18:45 +0000)]
Web Inspector: Scripts panel editor container should be based on UISourceCode objects, not SourceFrames.
https://bugs.webkit.org/show_bug.cgi?id=77098

Reviewed by Pavel Feldman.

* inspector/front-end/ScriptsNavigator.js:
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
(WebInspector.ScriptsPanel.prototype.get visibleView):
(WebInspector.ScriptsPanel.prototype.viewForFile):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
(WebInspector.EditorContainer):
(WebInspector.EditorContainer.prototype.get visibleView):
(WebInspector.EditorContainer.prototype.showFile):
(WebInspector.EditorContainer.prototype.setFileIsDirty):
(WebInspector.EditorContainer.prototype.replaceFiles):
(WebInspector.EditorContainer.prototype.reset):
(WebInspector.EditorContainerDelegate):
(WebInspector.EditorContainerDelegate.prototype.viewForFile):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
(WebInspector.ScriptsPanel.SingleFileEditorContainer):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get visibleView):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showFile):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setFileIsDirty):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceFiles):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
* inspector/front-end/TabbedEditorContainer.js:
(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype.get visibleView):
(WebInspector.TabbedEditorContainer.prototype._titleForFile):
(WebInspector.TabbedEditorContainer.prototype._tooltipForFile):
(WebInspector.TabbedEditorContainer.prototype._appendFileTab):
(WebInspector.TabbedEditorContainer.prototype._tabClosed):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):
(WebInspector.TabbedEditorContainer.prototype.replaceFiles.get if):
(WebInspector.TabbedEditorContainer.prototype.replaceFiles):
(WebInspector.TabbedEditorContainer.prototype.setFileIsDirty.get if):
(WebInspector.TabbedEditorContainer.prototype.setFileIsDirty):
(WebInspector.TabbedEditorContainer.prototype.reset):

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

12 years agoWebPreferencesStore: use DEFINE_STATIC_LOCAL for overrides HashMap
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 17:54:08 +0000 (17:54 +0000)]
WebPreferencesStore: use DEFINE_STATIC_LOCAL for overrides HashMap
https://bugs.webkit.org/show_bug.cgi?id=77109

Reviewed by Andreas Kling.

Fix build for Clang.

* Shared/WebPreferencesStore.cpp:
(WebKit):
(WebKit::boolTestRunnerOverridesMap):
(WebKit::WebPreferencesStore::overrideBoolValueForKey):
(WebKit::WebPreferencesStore::removeTestRunnerOverrides):
(WebKit::WebPreferencesStore::getBoolValueForKey):

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

12 years agoLayout Test accessibility/loading-iframe-sends-notification.html occasionally exceeds...
leviw@chromium.org [Thu, 26 Jan 2012 17:52:50 +0000 (17:52 +0000)]
Layout Test accessibility/loading-iframe-sends-notification.html occasionally exceeds the Chromium Windows callstack
https://bugs.webkit.org/show_bug.cgi?id=77110

Unreviewed gardening. Marking accessibility/loading-iframe-sends-notification.html as flaky on the Chromium
Windows Debug bot.

* platform/chromium/test_expectations.txt:

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

12 years agoAdding platform expectations after r105978.
leviw@chromium.org [Thu, 26 Jan 2012 17:42:49 +0000 (17:42 +0000)]
Adding platform expectations after r105978.

Unreviewed gardening.

* platform/chromium-linux/svg/wicd/sizing-flakiness-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/wicd/sizing-flakiness-expected.png: Added.
* platform/chromium-win/svg/wicd/sizing-flakiness-expected.png: Added.

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

12 years agoImplement overridePreference for boolean preferences in WebKitTestRunner
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 17:10:28 +0000 (17:10 +0000)]
Implement overridePreference for boolean preferences in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=77033

Reviewed by Alexey Proskuryakov.

Source/WebKit2:

Implement a way to WebKitTestRunner override preferences for the pages
loaded. Follows the same approach taken by
overrideXSSAuditorEnabledForTestRunner() from r66551, but generalizing to many
preferences.

Preferences are stored in the UI process using WebPreferencesStore, and when
there's a change, this data is sent to Web process, triggering
WebPage::preferencesDidChange(), which take a WebPreferencesStore and apply it's
data to the WebCore::Settings object.

The overridePreference() is executed on the Web process, and set the preferences
without communicating to the UI process. The overriden preferences are stored in
a static map and WebPreferencesStore query this map before returning the values
of each preference. This static map is used only on the Web process.

To clear the overrides we need to clear the map. Since WTR only sets preferences
when resetting the page, we hook the clearing at WebPage::preferencesDidChange().
A WKPreferences private function was exposed to WTR force the update, in case
there's no effective change at UI process (all the properties remains the same).

This clearing could be improved by creating a proper message instead of hooking
at WebPage::preferencesDidChange().

* Shared/WebPreferencesStore.cpp:
(WebKit::WebPreferencesStore::decode):
(WebKit::WebPreferencesStore::overrideBoolValueForKey):
(WebKit::WebPreferencesStore::removeTestRunnerOverrides):
(WebKit::WebPreferencesStore::getBoolValueForKey):
* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesResetTestRunnerOverrides):
* UIProcess/API/C/WKPreferencesPrivate.h:
* UIProcess/WebPreferences.h:
(WebKit::WebPreferences::forceUpdate):
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleOverrideBoolPreferenceForTestRunner):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
(WebKit::InjectedBundle::overrideXSSAuditorEnabledForTestRunner):
* WebProcess/InjectedBundle/InjectedBundle.h:

Tools:

For now overridePreference supports boolean values.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setXSSAuditorEnabled):
(WTR::LayoutTestController::overridePreference):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues): Reset the overrides
explicitly and properly disable the use of PageCache when resetting the
state. Tests that use PageCache can now enable it via overridePreference.

LayoutTests:

* platform/wk2/Skipped:

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

12 years ago[Qt] Support opening multiple URL's from the command line in the Qt MiniBrowser
commit-queue@webkit.org [Thu, 26 Jan 2012 16:07:53 +0000 (16:07 +0000)]
[Qt] Support opening multiple URL's from the command line in the Qt MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=77100

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-26
Reviewed by Simon Hausmann.

This patch makes the MiniBrowser read multiple URL's from the command
line such that there will be one browser window opened for each URL.

* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::handleUserOptions):

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

12 years ago[Qt] The Qt MiniBrowser crashes when given multiple URL's
commit-queue@webkit.org [Thu, 26 Jan 2012 15:28:29 +0000 (15:28 +0000)]
[Qt] The Qt MiniBrowser crashes when given multiple URL's
https://bugs.webkit.org/show_bug.cgi?id=77009

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-26
Reviewed by Simon Hausmann.

This patch fixes a crash in BrowserWindow::newWindow() where a
BrowserWindow-object is constructed with a 0 pointer as the
WindowOptions parameter which leads to a crash.

* MiniBrowser/qt/BrowserWindow.cpp:
(BrowserWindow::BrowserWindow):
(BrowserWindow::newWindow):
* MiniBrowser/qt/BrowserWindow.h:

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

12 years ago[Qt][WK2] Still failing tests after moving to ICU
kbalazs@webkit.org [Thu, 26 Jan 2012 15:20:29 +0000 (15:20 +0000)]
[Qt][WK2] Still failing tests after moving to ICU
https://bugs.webkit.org/show_bug.cgi?id=77102

Unreviewed gardening.

* platform/qt-wk2/Skipped: Skip failing tests for now.

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

12 years agoSVG + <object> tests are flakey
zimmermann@webkit.org [Thu, 26 Jan 2012 15:04:55 +0000 (15:04 +0000)]
SVG + <object> tests are flakey
https://bugs.webkit.org/show_bug.cgi?id=77099

Reviewed by Andreas Kling.

Source/WebCore:

Bug 76447 changed the way RenderSVGRoot figures out its size. Previously RenderSVGRoot directly called out to the
ownerRenderer (RenderEmbeddedObject) to compute its replaced size when embedded through eg. <object> element,
which was quite hacky. It now relies on the ownerRenderers availableLogicalWidth/Height to be correctly set,
which requires that the ownerRenderer is always laid out before the RenderSVGRoot and not the other way round.

This is the source of current flakiness bugs.

In trunk FrameView contains several special hacks, to layout the ownerRenderers view, after the RenderSVGRoots view
finished layout. This worked without flakiness as RenderSVGRoot used to directly call computeReplacedLogicalWidth/Height
on the ownerRenderer, which is now gone. Fortunately we can keep the new design, and can remove all hacks out of
RenderSVGRoot/FrameView, if we can guarantee that the ownerRenderer FrameView is laid out before the RenderSVGRoot FrameView.

This is a much less error-prone approach as the previous one. This lets us run nrwt --tolerance 0 -p svg -g again,
without 100% reproducable failing svg/wicd tests. (There's still one unrelated error, before guard malloc mode passes fully).

Test: svg/wicd/sizing-flakiness.html (Adjusted version of the rightsizing test, made to fail with trunk w/o this patch.)

* page/FrameView.cpp: Remove m_inLayoutParentView.
(WebCore::FrameView::FrameView): Remove no longer needed m_inLayoutParentView.
(WebCore::FrameView::forceLayoutParentViewIfNeeded): Simplify, no need to call updateWidgetPositions anymore, nor to clear/query flags in RenderSVGRoot.
(WebCore::FrameView::layout): Call forceLayoutParentViewIfNeeded() before laying out the embedded document, to guarantee the correct order.
* page/FrameView.h:
(FrameView): Remove m_inLayoutParentView.
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument.
(WebCore::resolveLengthAttributeForSVG): Remove outcommented code, that went in by accident.
(WebCore::RenderSVGRoot::layout): Remove m_needsSizeNegotiationWithHostDocument handling which is now incorrect and no longer needed.
* rendering/svg/RenderSVGRoot.h:
(RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument + accessors.

LayoutTests:

Introduce a testcase that fails reproducibly w/o needed guard malloc, if we ever regress <object> sizing again.

* platform/mac/svg/wicd/sizing-flakiness-expected.png:
* platform/mac/svg/wicd/sizing-flakiness-expected.txt:
* svg/wicd/sizing-flakiness.html: Adjusted version of the rightsizing test, made to fail with trunk w/o this patch.

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

12 years ago[GTK][WK2] Primary clipboard should be updated with the current selection in X11...
carlosgc@webkit.org [Thu, 26 Jan 2012 15:03:50 +0000 (15:03 +0000)]
[GTK][WK2] Primary clipboard should be updated with the current selection in X11 platforms
https://bugs.webkit.org/show_bug.cgi?id=77097

Reviewed by Martin Robinson.

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::respondToChangedSelection): Call
setSelectionPrimaryClipboardIfNeeded() to update primary clipboard
in X11 platforms.
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::collapseSelection): Callback called when clearing
clipboard contents.
(WebKit::WebEditorClient::setSelectionPrimaryClipboardIfNeeded):
Updaye primary clipboard with the current selection.

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

12 years agoMake elements that don't have attributes smaller.
kling@webkit.org [Thu, 26 Jan 2012 14:56:34 +0000 (14:56 +0000)]
Make elements that don't have attributes smaller.
<http://webkit.org/b/76876>

Reviewed by Antti Koivisto.

Move the inline style declaration from StyledElement to NamedNodeMap, since having
an inline style declaration also implies having a style attribute on the element.
This saves one CPU word per element that has no attributes.

This reduces memory consumption by 412 kB (on 64-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>.

* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::ensureInlineStyleDecl):
(WebCore::NamedNodeMap::destroyInlineStyleDecl):
(WebCore::NamedNodeMap::createInlineStyleDecl):
* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::inlineStyleDecl):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
(WebCore::StyledElement::addSubresourceAttributeURLs):
* dom/StyledElement.h:
(WebCore::StyledElement::inlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
(WebCore::StyledElement::destroyInlineStyleDecl):

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

12 years agoAnother unreviewed rebaseline.
antonm@chromium.org [Thu, 26 Jan 2012 14:14:40 +0000 (14:14 +0000)]
Another unreviewed rebaseline.

* platform/chromium-mac-snowleopard/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.

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

12 years ago[Qt] Use ICU if available
commit-queue@webkit.org [Thu, 26 Jan 2012 14:07:36 +0000 (14:07 +0000)]
[Qt] Use ICU if available
https://bugs.webkit.org/show_bug.cgi?id=76821

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-01-26
Reviewed by Simon Hausmann.

Source/WebCore:

Adding correct sources to a Qt 5 based build.

No new tests, it's just a build dependency change.

* Target.pri:

Source/WTF:

Adding libicu dependencies for a Qt5 based build.

* WTF.pri:

Tools:

Adding unicode defines for a Qt 5 based build.

* qmake/mkspecs/features/features.prf:

LayoutTests:

Unskipping ICU related tests for Qt 5 and skipping for
Qt 4.

* platform/qt-4.8/Skipped:
* platform/qt-arm/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

12 years ago[EFL] Added missing NETSCAPE_PLUGIN_API macro.
commit-queue@webkit.org [Thu, 26 Jan 2012 13:53:13 +0000 (13:53 +0000)]
[EFL] Added missing NETSCAPE_PLUGIN_API macro.
https://bugs.webkit.org/show_bug.cgi?id=77093

Patch by Tomasz Morawski <t.morawski@samsung.com> on 2012-01-26
Reviewed by Andreas Kling.

The ewk_view_js_window_object_clear function should be inside ENABLE(NETSCAPE_PLUGIN_API) macro.

* ewk/ewk_view.cpp:

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

12 years ago[Qt][Win] One more speculative buildfix after r105970.
ossy@webkit.org [Thu, 26 Jan 2012 13:43:26 +0000 (13:43 +0000)]
[Qt][Win] One more speculative buildfix after r105970.

Source/JavaScriptCore:

* JavaScriptCore.pri:

Source/WTF:

* WTF.pri:

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 12:58:00 +0000 (12:58 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix mac build after r105988.

        * WebCore.exp.in:

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

12 years ago[Qt][Win] Speculative buildfix after r105970.
ossy@webkit.org [Thu, 26 Jan 2012 12:46:03 +0000 (12:46 +0000)]
[Qt][Win] Speculative buildfix after r105970.

* JavaScriptCore.pri: Link lgdi for DeleteObject() and DeleteDC().

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

12 years agosvg/webarchive tests are flakey under guard malloc
zimmermann@webkit.org [Thu, 26 Jan 2012 12:42:06 +0000 (12:42 +0000)]
svg/webarchive tests are flakey under guard malloc
https://bugs.webkit.org/show_bug.cgi?id=77092

Reviewed by Zoltan Herczeg.

Fix flakey tests, by moving the <script> that dumps the test as webarchive, after the actual content.

* svg/webarchive/svg-cursor-subresources-expected.webarchive:
* svg/webarchive/svg-cursor-subresources.svg:
* svg/webarchive/svg-feimage-subresources-expected.webarchive:
* svg/webarchive/svg-feimage-subresources.svg:

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

12 years ago[Qt][WK2] Use QVariant for payload data in application URL schemes.
zeno.albisser@nokia.com [Thu, 26 Jan 2012 12:28:03 +0000 (12:28 +0000)]
[Qt][WK2] Use QVariant for payload data in application URL schemes.
https://bugs.webkit.org/show_bug.cgi?id=77007

Make application schemes use QVariant for payload data.
This allows passing QByteArrays as well as simple String data.

Remove unneeded http header parts that were exposed in
QQuickNetworkReply.

Add ByteArrayTestData class to allow injecting QByteArray
data into an application scheme handler for testing.

Reviewed by Simon Hausmann.

* Shared/qt/QtNetworkReplyData.cpp:
(WebKit::QtNetworkReplyData::QtNetworkReplyData):
(WebKit::QtNetworkReplyData::encode):
(WebKit::QtNetworkReplyData::decode):
* Shared/qt/QtNetworkReplyData.h:
* UIProcess/API/qt/qquicknetworkreply.cpp:
(QQuickNetworkReply::QQuickNetworkReply):
(QQuickNetworkReply::data):
(QQuickNetworkReply::setData):
(QQuickNetworkReply::send):
* UIProcess/API/qt/qquicknetworkreply_p.h:
* UIProcess/API/qt/tests/bytearraytestdata.cpp: Added.
(ByteArrayTestData::ByteArrayTestData):
(ByteArrayTestData::latin1Data):
(ByteArrayTestData::utf8Data):
* UIProcess/API/qt/tests/bytearraytestdata.h: Added.
* UIProcess/API/qt/tests/qmltests/WebView/tst_applicationScheme.qml:
* UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
(main):
* UIProcess/API/qt/tests/tests.pri:
* WebProcess/qt/QtNetworkReply.cpp:
(WebKit::QtNetworkReply::setReplyData):
* WebProcess/qt/QtNetworkReply.h:

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

12 years ago[Qt] Fixed build when using force_static_libs_as_shared
commit-queue@webkit.org [Thu, 26 Jan 2012 12:18:59 +0000 (12:18 +0000)]
[Qt] Fixed build when using force_static_libs_as_shared
https://bugs.webkit.org/attachment.cgi?bugid=77082

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-26
Reviewed by Simon Hausmann.

* Target.pri:

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

12 years agoUnreviewed rebaseline after http://trac.webkit.org/changeset/105977.
antonm@chromium.org [Thu, 26 Jan 2012 12:17:39 +0000 (12:17 +0000)]
Unreviewed rebaseline after trac.webkit.org/changeset/105977.

* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt: Added.
* platform/chromium-mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Removed.
* platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Removed.
* platform/chromium/svg/W3C-SVG-1.1-SE: Added.
* platform/chromium/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
* platform/chromium/svg/stroke: Added.
* platform/chromium/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.
* platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Removed.
* platform/gtk/svg/stroke: Removed.
* platform/gtk/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Removed.
* platform/qt/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Removed.
* svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
* svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.

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

12 years ago[WK2] WebKitTestRunner needs layoutTestController.setGeolocationPermission
commit-queue@webkit.org [Thu, 26 Jan 2012 12:16:25 +0000 (12:16 +0000)]
[WK2] WebKitTestRunner needs layoutTestController.setGeolocationPermission
https://bugs.webkit.org/show_bug.cgi?id=42545

Patch by Nándor Huszka <huszka.nandor@stud.u-szeged.hu> on 2012-01-26
Reviewed by Zoltan Herczeg.

Source/WebCore:

No need for new tests, there is no behavior change.

Added a line to file which copies the forwarding headers.

* WebCore.vcproj/copyForwardingHeaders.cmd:

Source/WebKit2:

Implement the setGeolocationPermission method.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetGeolocationPermission):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setGeoLocationPermission):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

Implement the setGeolocationPermission method.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setGeolocationPermission):
(WTR):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
(LayoutTestController):

LayoutTests:

Unskip a test which does not fail now and move tests to the appropriate label.

* platform/wk2/Skipped:

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

12 years agoUnreviewed, rolling out r105982.
zimmermann@webkit.org [Thu, 26 Jan 2012 11:58:40 +0000 (11:58 +0000)]
Unreviewed, rolling out r105982.
http://trac.webkit.org/changeset/105982
https://bugs.webkit.org/show_bug.cgi?id=77090

breaks the world (Requested by WildFox on #webkit).

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

* wtf/MainThread.cpp:
(WTF):
* wtf/Platform.h:
* wtf/mac/MainThreadMac.mm:
(WTF):
(WTF::registerGCThread):
(WTF::isMainThreadOrGCThread):

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 11:08:26 +0000 (11:08 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix Qt build after r105978.

        * rendering/svg/RenderSVGResourceClipper.cpp: Add missing Frame/FrameView includes.
        * rendering/svg/RenderSVGResourceSolidColor.cpp: Ditto.
        * rendering/svg/SVGInlineTextBox.cpp: Ditto.
        * rendering/svg/SVGRenderSupport.cpp: Ditto.

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 10:41:52 +0000 (10:41 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix non-AllInOne builds after r105978.

        * rendering/svg/RenderSVGResource.cpp:

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

12 years agoUnreviewed inspector closure compilation fix.
vsevik@chromium.org [Thu, 26 Jan 2012 10:29:09 +0000 (10:29 +0000)]
Unreviewed inspector closure compilation fix.

* inspector/front-end/externs.js:
(WebInspector.closeDrawerView):

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 10:26:13 +0000 (10:26 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix release builds after r105978.

        * rendering/svg/SVGInlineTextBox.cpp:
        (WebCore::SVGInlineTextBox::paintSelectionBackground): Remove unused variable.

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

12 years ago[Qt] GC should be parallel on Qt platform
commit-queue@webkit.org [Thu, 26 Jan 2012 10:22:25 +0000 (10:22 +0000)]
[Qt] GC should be parallel on Qt platform
https://bugs.webkit.org/show_bug.cgi?id=73309

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-26
Reviewed by Zoltan Herczeg.

These changes made the parallel gc feature available for Qt port.
The implementation of "registerGCThread" and "isMainThreadOrGCThread"
is moved from MainThreadMac.mm to the common MainThread.cpp to make
them available for other platforms.

Measurement results:
V8           speed-up:  1.071x as fast  [From: 746.1ms  To: 696.4ms ]
WindScorpion speed-up:  1.082x as fast  [From: 3490.4ms To: 3226.7ms]
V8 Splay     speed-up:  1.158x as fast  [From: 145.8ms  To: 125.9ms ]

Tested on Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz with 4-core.

* wtf/MainThread.cpp:
(WTF):
(WTF::registerGCThread):
(WTF::isMainThreadOrGCThread):
* wtf/Platform.h:
* wtf/mac/MainThreadMac.mm:

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

12 years ago[NRWT] Support --ignore-metrics
kbalazs@webkit.org [Thu, 26 Jan 2012 10:10:22 +0000 (10:10 +0000)]
[NRWT] Support --ignore-metrics
https://bugs.webkit.org/show_bug.cgi?id=76278

Reviewed by Tony Chang.

Port the feature from ORWT.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_compare_test):
* Scripts/webkitpy/layout_tests/port/driver.py:
(DriverOutput):
(DriverOutput.strip_metrics):
* Scripts/webkitpy/layout_tests/port/driver_unittest.py:
(DriverOutputTest):
(DriverOutputTest.test_strip_metrics):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):

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

12 years agoUnreviewed, rolling out r105968.
tkent@chromium.org [Thu, 26 Jan 2012 10:07:12 +0000 (10:07 +0000)]
Unreviewed, rolling out r105968.
http://trac.webkit.org/changeset/105968
https://bugs.webkit.org/show_bug.cgi?id=76995

Incorrect behavior change

Source/WebCore:

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate):

LayoutTests:

* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:

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

12 years agoUnreviewed, rolling out r105935 and r105954.
commit-queue@webkit.org [Thu, 26 Jan 2012 09:51:20 +0000 (09:51 +0000)]
Unreviewed, rolling out r105935 and r105954.
http://trac.webkit.org/changeset/105935
http://trac.webkit.org/changeset/105954
https://bugs.webkit.org/show_bug.cgi?id=77080

test-webkitpy is still broken (Requested by abarth on
#webkit).

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

* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(never_ending_command):
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
* Scripts/webkitpy/common/system/fileutils.py:
(make_stdout_binary):
* Scripts/webkitpy/test/cat.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/cat_unittest.py:
(CatTest):
(CatTest.assert_cat):
(CatTest.test_basic):
(CatTest.test_no_newline):
(CatTest.test_unicode):
(CatTest.test_as_command):
* Scripts/webkitpy/test/echo.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/echo_unittest.py:
(EchoTest):
(EchoTest.test_basic):
(EchoTest.test_no_newline):
(EchoTest.test_unicode):
(EchoTest.test_argument_order):
(EchoTest.test_empty_arguments):
(EchoTest.test_no_arguments):
(EchoTest.test_as_command):

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

12 years agocrash in WebCore::RenderSVGContainer::paint
zimmermann@webkit.org [Thu, 26 Jan 2012 09:50:47 +0000 (09:50 +0000)]
crash in WebCore::RenderSVGContainer::paint
https://bugs.webkit.org/show_bug.cgi?id=69714

Reviewed by Dirk Schulze.

Source/WebCore:

When RenderSVGResourceClipper draws its children to a mask, it requires some special constraints:
- fill-opacity/stroke-opacity/opacity forced to 1
- masker/filter resources shouldn't be applied to the children
- fill must be set to the initial fill paint server for all children (solid black)
- stroke must be set to the initial stroke paint server for all children (none)

This was achieved before by mutating the style of the children, which made them need a relayout.
SVGImageBufferTools:renderSubtreeToImageBuffer thus needed to layout the children, if needed, before painting.

This can be completly avoided, when changing RenderSVGResourceClipper to avoid style mutations.
Introduce a new "PaintBehaviorRenderingSVGMask", and set the current FrameViews paintBehaviour to this
state, before painting the subtree. This way we can detect that we're rendering a clip mask, without
having to mutate the style of the children and without having to relayout.

We can now ASSERT(!item->needsLayout()) in renderSubtreeToImageBuffer.

Tests: svg/clip-path/clip-path-tspan-and-stroke.svg
       svg/custom/layout-loop.svg

* rendering/PaintPhase.h:
* rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
(WebCore::RenderSVGResourceClipper::removeClientFromCache):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceMasker.h:
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::createTileImage):
* rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
* rendering/svg/SVGImageBufferTools.cpp:
(WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::paint):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::prepareToRenderSVGContent):

LayoutTests:

Added a new test covering the clipper specific demands when rendering its children to a mask.
(fill/stroke-opacity=1, opacity=1, don't apply masker/filter to children)

All cases are covered by existing tests, I'm adding a new combination of <tspan> within a <text>,
that tries to apply a stroke paint server, which is supposed to be ignored.

* platform/chromium/test_expectations.txt:
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Added.
* svg/clip-path/clip-path-tspan-and-stroke.svg: Added.
* svg/custom/layout-loop-expected.txt: Added.
* svg/custom/layout-loop.svg: Added.

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:40:26 +0000 (09:40 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Regenerated some new SVG results using a Lion machine, to make the baseline pass with --tolerance 0 -p on a vanilla iMac again.

        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:
        * platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt:
        * platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.txt:
        * platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt:
        * platform/mac/test_expectations.txt

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:28:11 +0000 (09:28 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix win build, by disabling ENABLE_SHADOW_DOM by default.

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

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:09:35 +0000 (09:09 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Try to fix Qt/Win build by building OwnPtrWin.cpp into the WTF library.

        * WTF.pro:

2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Try to fix Gtk build - JSShadowRoot.cpp can't be found, fix by looking for it in the derived sources.

        * GNUmakefile.list.am:

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

12 years ago[GTK] Detect cross-compilation in webkitdirs.pm to not generate gtkdoc
rgabor@webkit.org [Thu, 26 Jan 2012 09:01:21 +0000 (09:01 +0000)]
[GTK] Detect cross-compilation in webkitdirs.pm to not generate gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Martin Robinson.

* Scripts/webkitdirs.pm:
(isCrossCompilation):
(buildAutotoolsProject):

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

12 years ago[Qt] Unreviewed gardening after r105917.
ossy@webkit.org [Thu, 26 Jan 2012 08:56:21 +0000 (08:56 +0000)]
[Qt] Unreviewed gardening after r105917.

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

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

12 years agoPort Mozilla's Graph Server
rniwa@webkit.org [Thu, 26 Jan 2012 08:28:57 +0000 (08:28 +0000)]
Port Mozilla's Graph Server
https://bugs.webkit.org/show_bug.cgi?id=76312

Reviewed by Adam Barth.

Add the app engine backend for the Mozilla's graph server used on perf-webkit.appspot.com.

To deploy webkit-perf.appspot.com, you also need to pull index.html, embed.html, graph.html, jq,
js (except config.js), and css (except title.png) from https://github.com/mozilla/graphs.

* Websites/perf-webkit.appspot.com: Added.
* Websites/perf-webkit.appspot.com/app.yaml: Added.
* Websites/perf-webkit.appspot.com/create_handler.py: Added.
(CreateHandler):
(CreateHandler.post):
(CreateHandler._createBuilder):
(CreateHandler._createBuilder.execute):
(CreateHandler._createBranch):
(CreateHandler._createBranch.execute):
(CreateHandler._createPlatform):
(CreateHandler._createPlatform.execute):
* Websites/perf-webkit.appspot.com/dashboard_handler.py: Added.
(DashboardHandler):
(DashboardHandler.get):
* Websites/perf-webkit.appspot.com/index.yaml: Added.
* Websites/perf-webkit.appspot.com/main.py: Added.
(main):
* Websites/perf-webkit.appspot.com/manifest_handler.py: Added.
(ManifestHandler):
(ManifestHandler.get):
* Websites/perf-webkit.appspot.com/models.py: Added.
(NumericIdHolder):
(NumericIdHolder.whose):
(createInTransactionWithNumericIdHolder):
(modelFromNumericId):
(Branch):
(Platform):
(Builder):
(Builder.authenticate):
(Builder.hashedPassword):
(Build):
(Test):
(TestResult):
(ReportLog):
* Websites/perf-webkit.appspot.com/report_handler.py: Added.
(ReportHandler):
(ReportHandler.post):
(ReportHandler._modelByKeyNameInBodyOrError):
(ReportHandler._integerInBody):
(ReportHandler._timestampInBody):
(ReportHandler._output):
(ReportHandler._resultsAreValid):
(ReportHandler._createBuildIfPossible):
(ReportHandler._createBuildIfPossible.execute):
(ReportHandler._addTestIfNeeded):
(ReportHandler._addTestIfNeeded.execute):
* Websites/perf-webkit.appspot.com/runs_handler.py: Added.
(RunsHandler):
(RunsHandler.get):
* Websites/perf-webkit.appspot.com/static: Added.
* Websites/perf-webkit.appspot.com/static/create-models.html: Added.
* Websites/perf-webkit.appspot.com/static/manual-submit.html: Added.

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

12 years agoREGRESSION (r105555): Incorrect use of OS() macro breaks OwnPtr when used with Win32...
aestes@apple.com [Thu, 26 Jan 2012 08:17:47 +0000 (08:17 +0000)]
REGRESSION (r105555): Incorrect use of OS() macro breaks OwnPtr when used with Win32 data types
https://bugs.webkit.org/show_bug.cgi?id=77073

Reviewed by Ryosuke Niwa.

r105555 changed PLATFORM(WIN) to OS(WIN), but WTF_OS_WIN isn't defined.
This should have been changed to OS(WINDOWS). This causes the
preprocessor to strip out Win32 data type overrides for deleteOwnedPtr,
causing allocations made by Win32 to be deleted by fastmalloc.

* wtf/OwnPtrCommon.h:
(WTF): Use OS(WINDOWS) instead of OS(WIN).

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

12 years agoWeb Inspector: Improve user experience of advanced search panel closing.
vsevik@chromium.org [Thu, 26 Jan 2012 08:16:01 +0000 (08:16 +0000)]
Web Inspector: Improve user experience of advanced search panel closing.
https://bugs.webkit.org/show_bug.cgi?id=76983

Reviewed by Pavel Feldman.

Added close button to search panel.
Esc now closes the panel even when search filed has focus.

* English.lproj/localizedStrings.js:
* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.close):
(WebInspector.SearchView):
(WebInspector.SearchView.prototype._onKeyDown):
(WebInspector.SearchView.prototype._closeButtonPressed):
* inspector/front-end/inspector.css:
(.search-view .search-panel):
(.search-view .search-panel button.search-close-button):
* inspector/front-end/inspector.js:
(WebInspector._escPressed):
(WebInspector.closeDrawerView):

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

12 years agohttps://bugs.webkit.org/show_bug.cgi?id=76995.
commit-queue@webkit.org [Thu, 26 Jan 2012 08:06:16 +0000 (08:06 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=76995.
WebKit fails IETC :indeterminate and input type=radio test.

As per the HTML spec http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#dom-input-indeterminate,
only checkbox input type should respect the indeterminate state.
Removed the support for indeterminate state for radio input types.

Source/WebCore:

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.

Modified the existing test cases.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate): Indeterminate state is supported only for checkbox input type.

LayoutTests:

Modified the existing test cases.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.

* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:

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

12 years agoKentaro is a reviewer now. Yay!
abarth@webkit.org [Thu, 26 Jan 2012 07:50:33 +0000 (07:50 +0000)]
Kentaro is a reviewer now.  Yay!

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

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

12 years agoAdd IntentRequest include for FrameLoaderClientImpl.
commit-queue@webkit.org [Thu, 26 Jan 2012 05:56:59 +0000 (05:56 +0000)]
Add IntentRequest include for FrameLoaderClientImpl.
https://bugs.webkit.org/show_bug.cgi?id=77039

Patch by Greg Billock <gbillock@google.com> on 2012-01-25
Reviewed by Darin Fisher.

* src/FrameLoaderClientImpl.cpp:

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

12 years agoLayout Test fast/js/dfg-uint32array-overflow-values.html is slow on Chromium Debug...
leviw@chromium.org [Thu, 26 Jan 2012 05:12:31 +0000 (05:12 +0000)]
Layout Test fast/js/dfg-uint32array-overflow-values.html is slow on Chromium Debug bots
https://bugs.webkit.org/show_bug.cgi?id=77069

Marking fast/js/dfg-uint32array-overflow-values.html slow for Debug Chromium bots.

* platform/chromium/test_expectations.txt:

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

12 years ago[chromium] Fix ClipboardChromium::validateFilename to actually operate on extensions
dcheng@chromium.org [Thu, 26 Jan 2012 05:02:12 +0000 (05:02 +0000)]
[chromium] Fix ClipboardChromium::validateFilename to actually operate on extensions
https://bugs.webkit.org/show_bug.cgi?id=76996

Source/WebCore:

As it turns out, we were always calling validateFilename on a data object with an empty
extension. Now we call it on an actual extension so that it's sanitized.

Reviewed by Tony Chang.

Unit test: webkit_unit_tests --gtest_filter=ClipboardChromium.*

* WebCore.gypi:
* platform/chromium/ClipboardChromium.cpp:
(WebCore::writeImageToDataObject):
* platform/chromium/ClipboardChromium.h:
(ClipboardChromium):
* platform/chromium/ClipboardChromiumLinux.cpp: Removed.
* platform/chromium/ClipboardChromiumPosix.cpp: Renamed from Source/WebCore/platform/chromium/ClipboardChromiumMac.cpp.
(WebCore):
(WebCore::isInvalidFileCharacter):
(WebCore::ClipboardChromium::validateFilename):
* platform/chromium/ClipboardChromiumWin.cpp:
(WebCore):
(WebCore::ClipboardChromium::validateFilename):

Source/WebKit/chromium:

Reviewed by Tony Chang.

* WebKit.gypi:
* tests/ClipboardChromiumTest.cpp: Added.
(WebCore):
(WebCore::TEST):

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

12 years ago[chromium] Rollout r100751, this mechanism does not work and is very slow
commit-queue@webkit.org [Thu, 26 Jan 2012 03:08:22 +0000 (03:08 +0000)]
[chromium] Rollout r100751, this mechanism does not work and is very slow
https://bugs.webkit.org/show_bug.cgi?id=77055

Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
but it still triggers a very slow codepath and triggers races on some platforms.

Patch by James Robinson <jamesr@chromium.org> on 2012-01-25

Source/WebCore:

* platform/PlatformScreen.h:
(WebCore):
* platform/chromium/PlatformScreenChromium.cpp:
* platform/chromium/PlatformSupport.h:
(PlatformSupport):
():
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):
(CCSettings):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeImplOnImplThread):

Source/WebKit/chromium:

* public/WebScreenInfo.h:
(WebScreenInfo):
(WebKit::WebScreenInfo::WebScreenInfo):
* src/PlatformSupport.cpp:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::runTest):

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

12 years agoUnreviewed. Reverting the addition of storage/indexeddb/prefetch-bugfix-108071.html
leviw@chromium.org [Thu, 26 Jan 2012 02:27:32 +0000 (02:27 +0000)]
Unreviewed. Reverting the addition of storage/indexeddb/prefetch-bugfix-108071.html
to Chromium's test_expectations. The proper place for this test to be disabled was
in Chromium, since it failed in test_shell.

* platform/chromium/test_expectations.txt:

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

12 years agonrwt: running w/ no arguments fails
dpranke@chromium.org [Thu, 26 Jan 2012 01:59:39 +0000 (01:59 +0000)]
nrwt: running w/ no arguments fails
https://bugs.webkit.org/show_bug.cgi?id=77064

Unreviewed, build fix.

This change fixes a regression introduced in r105944
where running without --platform <foo> or one of the other
platform switches would cause a null deref :(.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):

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

12 years agoAutomatically CC someone from Apple on any changes to Obj-C public API
eric@webkit.org [Thu, 26 Jan 2012 01:56:11 +0000 (01:56 +0000)]
Automatically CC someone from Apple on any changes to Obj-C public API
https://bugs.webkit.org/show_bug.cgi?id=77053

Reviewed by Timothy Hatcher.

This has long been de-facto practice, seems now that we have
fancy watchlist support, we should just make the tools
do this automatically.

* Scripts/webkitpy/common/config/watchlist:

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

12 years agoUpdating status in committers.py.
piman@chromium.org [Thu, 26 Jan 2012 01:53:50 +0000 (01:53 +0000)]
Updating status in committers.py.

Unreviewed.

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

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

12 years agotest-webkitpy: executive_unittest fails if PYTHONPATH isn't set
dpranke@chromium.org [Thu, 26 Jan 2012 01:47:43 +0000 (01:47 +0000)]
test-webkitpy: executive_unittest fails if PYTHONPATH isn't set
https://bugs.webkit.org/show_bug.cgi?id=77058

Reviewed by Eric Seidel.

r105935 broke executive_unittest by changing which script we
were running and not ensuring that the PYTHONPATH was set up
properly.

This change also fixes a regression introduced recently where
test-webkitpy wasn't figuring out the path to Tools/Scripts
right, either (so running ./test-webkitpy would fail).

* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(script_dir):
(ExecutiveTest.setUp):
(ExecutiveTest):
(ExecutiveTest.tearDown):

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

12 years agoDisable tests on the mac-ews while we sort out hte stability issues.
abarth@webkit.org [Thu, 26 Jan 2012 01:30:26 +0000 (01:30 +0000)]
Disable tests on the mac-ews while we sort out hte stability issues.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(MacEWS):

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

12 years agoinvestigate use of 'mac' and 'win' as fully-specified port names for the apple ports
dpranke@chromium.org [Thu, 26 Jan 2012 01:29:12 +0000 (01:29 +0000)]
investigate use of 'mac' and 'win' as fully-specified port names for the apple ports
https://bugs.webkit.org/show_bug.cgi?id=76475

Reviewed by Eric Seidel.

This patch cleans up the internal usage of port names for the
Apple mac and Apple win ports so that 'mac' and 'win are never
considered "fully specified" port names: they are still legal
input to the PortFactory.get() routine, but only if run on the given
platform (i.e. trying to PortFactory.get('mac') on windows or
linux will return an error, since we don't know which version of
the port is desired.

This also cleans up handling of the webkit2 variants, so that
the full port names consistently follow the
<operating_system>-<version>[-<wk2>] convention.

Lastly this patch adds some assertions and removes some
try/catch logic to catch more programming and usage errors;
previously mac-tiger might've been allowed -- and it would've
translated into using just the baselines in platform/mac -- but
now it should fail.

* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort.determine_full_port_name):
(ApplePort.__init__):
(ApplePort):
(ApplePort._port_name_with_version):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_mac):
(FactoryTest.test_win):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(MacTest.test_versions):
* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/win_unittest.py:
(WinTest.test_versions):

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

12 years agoReapply Daniel Bates's build fix from r105847 after the exact same issue was reintrod...
mrowe@apple.com [Thu, 26 Jan 2012 01:24:42 +0000 (01:24 +0000)]
Reapply Daniel Bates's build fix from r105847 after the exact same issue was reintroduced in r105930.

Attempt to fix Mac build after changeset <http://trac.webkit.org/changeset/105930>.
(https://bugs.webkit.org/show_bug.cgi?id=75049)

Don't include NotImplemented.h in KURL.h since NotImplemented.h includes Logging.h, which defines
LOG_CHANNEL_PREFIX to be "Log". And this conflicts with the inclusion of WebKitLogging.h in
WebHTMLView.mm (which would have defined LOG_CHANNEL_PREFIX to be "WebKitLog").

* platform/KURL.h:
(WebCore::KURL::innerURL):

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

12 years agoUnreviewed. Marking svg/custom/object-sizing-explicit-width.xhtml and
leviw@chromium.org [Thu, 26 Jan 2012 01:15:23 +0000 (01:15 +0000)]
Unreviewed. Marking svg/custom/object-sizing-explicit-width.xhtml and
storage/indexeddb/prefetch-bugfix-108071.html as flaky on Chromium.

* platform/chromium/test_expectations.txt:

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

12 years agowebkitpy: print nicer errors while linting expectations files, remove redundant tests
dpranke@chromium.org [Thu, 26 Jan 2012 01:11:27 +0000 (01:11 +0000)]
webkitpy: print nicer errors while linting expectations files, remove redundant tests
https://bugs.webkit.org/show_bug.cgi?id=76955

Reviewed by Adam Barth.

This change cleans up the errors that are printed so that the
are more "quickfix" compatible (path:lineno).

Also, there were a bunch of redundant tests between
layout_tests.models.test_expectations_unittest and
style.checkers.test_expectations_unittest. The latter should
just expect the former to do most of the testing.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._parse_modifiers):
(TestExpectations._report_errors):
(TestExpectations._add_skipped_tests):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(test_parse_error_nonfatal):
(SemanticTests.test_bad_bugid):
* Scripts/webkitpy/style/checkers/test_expectations.py:
(TestExpectationsChecker.__init__):
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase.assert_lines_lint):
(TestExpectationsTestCase.test_valid_expectations):
(TestExpectationsTestCase.test_invalid_expectations):
(TestExpectationsTestCase.test_tab):

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

12 years agoUnreviewed, rolling out r105940.
eric@webkit.org [Thu, 26 Jan 2012 01:09:06 +0000 (01:09 +0000)]
Unreviewed, rolling out r105940.
http://trac.webkit.org/changeset/105940
https://bugs.webkit.org/show_bug.cgi?id=76095

Only half this change landed

* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:

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

12 years agowebkit-patch apply-* should always continue after failures
eric@webkit.org [Thu, 26 Jan 2012 00:54:44 +0000 (00:54 +0000)]
webkit-patch apply-* should always continue after failures
https://bugs.webkit.org/show_bug.cgi?id=77057

Reviewed by Adam Barth.

As far as I can tell there is only one potential drawback to always
forcing: that if you're somehow in the wrong directory it will create new
directories for new files.  Since webkit-patch always cd's to the root
it seems that's not a drawback.  The drawback of not using --force for
svn-apply, is that it will stop after the first failure, which is rarely
(if ever) the desired behavior.  This just removes the force option
(which was strangely hidden behind --non-interactive).  This should
make for a better user experiance.

* Scripts/webkitpy/common/checkout/checkout.py:
(Checkout.apply_patch):
* Scripts/webkitpy/common/checkout/checkout_mock.py:
(MockCheckout.apply_patch):
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
(CheckoutTest.test_chromium_deps):
(CheckoutTest):
(CheckoutTest.test_apply_patch):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(DownloadCommandsTest._default_options):
* Scripts/webkitpy/tool/steps/applypatch.py:
(ApplyPatch.options):
(ApplyPatch.run):
* Scripts/webkitpy/tool/steps/options.py:
(Options):

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

12 years agonrwt: should be able to run --platform test interactively
dpranke@chromium.org [Thu, 26 Jan 2012 00:52:40 +0000 (00:52 +0000)]
nrwt: should be able to run --platform test interactively
https://bugs.webkit.org/show_bug.cgi?id=76959

Reviewed by Adam Barth.

As part of refactoring the Port interfaces, in r103254 I made
passing a Host object to the Port mandatory; previously TestPort
objects would create their own (mock) hosts. However,
new-run-webkit-tests always passed a real Host, not a MockHost,
and so you couldn't run new-run-webkit-tests --platform test
interactively to debug test failures.

This change fixes that by creating a MockHost instead of a real
host if you say --platform test*.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):

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

12 years agoAttempted Mac build fix after r105939.
mrowe@apple.com [Thu, 26 Jan 2012 00:48:04 +0000 (00:48 +0000)]
Attempted Mac build fix after r105939.

* runtime/DatePrototype.cpp: Don't #include unicode/udat.h on Mac or iOS.
It isn't used on these platforms and isn't available in the ICU headers
for Mac.

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

12 years agoBuild in to an alternate location when USE_STAGING_INSTALL_PATH is set.
mrowe@apple.com [Thu, 26 Jan 2012 00:34:15 +0000 (00:34 +0000)]
Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.

<rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH

Reviewed by David Kilzer.

Source/JavaScriptCore:

* Configurations/Base.xcconfig: Define NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR, which contains
the path where JavaScriptCore is normally installed. Update JAVASCRIPTCORE_FRAMEWORKS_DIR
to point to the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
* Configurations/JavaScriptCore.xcconfig: Always set the framework's install name based on
the normal framework location. This prevents an incorrect install name from being used when
installing in to the staged frameworks directory.

Source/ThirdParty:

* gtest/xcode/Config/ProductionProject.xcconfig: Ensure that the staged frameworks path
is in the framework search path when USE_STAGING_INSTALL_PATH is set. Look for the WebCore
framework in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.

Source/WebCore:

* Configurations/WebCore.xcconfig: Define NORMAL_WEBCORE_FRAMEWORKS_DIR, which contains
the path where WebCore is normally installed. Update WEBCORE_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.

Source/WebKit/mac:

* Configurations/WebKit.xcconfig: Define NORMAL_WEBKIT_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
WEBCORE_PRIVATE_HEADERS_DIR to find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.

Source/WebKit2:

* Configurations/BaseTarget.xcconfig: Define NORMAL_WEBKIT2_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT2_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
UMBRELLA_FRAMEWORKS_DIR so we can find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.
* Configurations/PluginProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
* Configurations/WebKit2.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
Always set the framework's install name based on the normal framework location. This prevents
an incorrect install name from being used when installing in to the staged frameworks directory.
* Configurations/WebProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.

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

12 years ago"text" and "URL" legacy clipboard types should not be case sensitive
eric@webkit.org [Thu, 26 Jan 2012 00:27:03 +0000 (00:27 +0000)]
"text" and "URL" legacy clipboard types should not be case sensitive
https://bugs.webkit.org/show_bug.cgi?id=76947

Reviewed by Adam Barth.

Source/WebCore:

This matches the HTML5 spec which says the first thing to do is to lowercase
the type before comparing.
I also removed the stripping of whitespace since that is not part of the modern spec (and no tests failed as a result of removal).
Turns out we already had a test for case sensitivity, but it was disabled on Mac
so I just re-enabled it and have added failing expectations for the parts
of the test we still fail.

* platform/mac/ClipboardMac.mm:
(WebCore::cocoaTypeFromHTMLClipboardType):
(WebCore::ClipboardMac::getData):

LayoutTests:

This test has been disabled on Mac since it was added 2 years ago.
But we actually need to fix at least one of the bugs covered by this
test, so I'm unskipping it and adding failing expectations for the
parts Mac doens't yet pass.

* platform/mac/Skipped:
* platform/mac/editing/pasteboard/dataTransfer-setData-getData-expected.txt: Added.

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

12 years agoHTMLIsIndexElement should not expose HTMLInputElement properties
eric@webkit.org [Thu, 26 Jan 2012 00:17:59 +0000 (00:17 +0000)]
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095

Reviewed by Adam Barth.

Source/WebCore:

document.createElement("isindex") should produce an HTMLUnknownElement
per the HTML5 spec.  The parser automagically translates <isindex> into
a whole dom tree roughly representing what <isindex> used to do 15 years ago. :)

This patch just removes our support for HTMLIsIndexElement.  The parser
support was already in.  Having support for HTMLIsIndexElement was causing
one of the IE TestCenter tests to fail.

Test: fast/dom/HTMLIsIndexElement/prototype-chain.html

* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
(WebKit::createHTMLElementWrapper):
* bindings/objc/DOM.mm:
(WebCore::createElementClassMap):
* bindings/objc/DOMHTML.h:
* bindings/objc/PublicDOMInterfaces.h:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLIsIndexElement.cpp: Removed.
* html/HTMLIsIndexElement.h: Removed.
* html/HTMLIsIndexElement.idl: Removed.
* html/HTMLTagNames.in:
* page/DOMWindow.idl:

Source/WebKit/mac:

* MigrateHeaders.make:

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

12 years agoImplement Date.toLocaleString() using ICU
efidler@rim.com [Thu, 26 Jan 2012 00:11:34 +0000 (00:11 +0000)]
Implement Date.toLocaleString() using ICU
https://bugs.webkit.org/show_bug.cgi?id=76714

Reviewed by Darin Adler.

* runtime/DatePrototype.cpp:
(JSC::formatLocaleDate):

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

12 years agoHTMLEmbedObject should match HTMLObjectElement by stopping any load when it is remove...
eric@webkit.org [Thu, 26 Jan 2012 00:00:03 +0000 (00:00 +0000)]
HTMLEmbedObject should match HTMLObjectElement by stopping any load when it is removed from beforeload
https://bugs.webkit.org/show_bug.cgi?id=74360

Reviewed by Adam Barth.

Source/WebCore:

Neither of these !renderer() checks is strictly necessary since requestObject()
makes the same check.  However requestObject() asserts before it makes that
check, so it makes sense to add the check to HTMLEmebedObject instead of
removing the check from HTMLObjectElement.
I also moved the protect RefPtr to before the beforeload dispatch since
beforeload can remove the whole DOM element (as this test does) and
thus I beleive the renderer() check could be checking free'd memory.

Updated fast/dom/beforeload/remove-flash-in-beforeload-listener.html to test
<embed> as well as <object>.

* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::updateWidget):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateWidget):

LayoutTests:

Test <embed> as well as <object> in this test.

* fast/dom/beforeload/remove-flash-in-beforeload-listener.html:

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

12 years agoMove focus/blur handling code of HTMLInputElement to InputType
tkent@chromium.org [Wed, 25 Jan 2012 23:56:30 +0000 (23:56 +0000)]
Move focus/blur handling code of HTMLInputElement to InputType
https://bugs.webkit.org/show_bug.cgi?id=76984

Reviewed by Dimitri Glazkov.

No new tests. Just a refactoring.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::handleFocusEvent):
Move the code to PasswordInputType::handleFocusEvent().
(WebCore::HTMLInputElement::handleBlurEvent):
Move the code to TextFieldInputType::handleBlurEvent() and
PasswordInputType::handleBlurEvent().
* html/InputType.cpp:
(WebCore::InputType::handleFocusEvent):
* html/InputType.h:
(InputType): Add handleFocusEvent().
* html/PasswordInputType.cpp:
(WebCore::PasswordInputType::handleFocusEvent):
Move the code for type=password from HTMLInputElement::handleFocusEvent().
(WebCore::PasswordInputType::handleBlurEvent):
Move the code for tyep=password from HTMLInputElement::handleBlurEvent().
* html/PasswordInputType.h:
(PasswordInputType): Add handleFocusEvent() and handleBlurEvent().
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::handleBlurEvent):
Move the code for text field types from HTMLInputElement::handleBlurEvent().
* html/TextFieldInputType.h:
(TextFieldInputType): Add handleBlurEvent().

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

12 years agorun-webkit-tests --lint-test-files should lint all the ports by default
dpranke@chromium.org [Wed, 25 Jan 2012 23:52:52 +0000 (23:52 +0000)]
run-webkit-tests --lint-test-files should lint all the ports by default
https://bugs.webkit.org/show_bug.cgi?id=76749

Reviewed by Ojan Vafai.

Currently run-webkit-tests --lint-test-files will only lint the
test_expectations for the single port determined by the command
line options. This is not obvious and can produce unintended results
if you want to lint the chromium port (probably the normal case
for using --lint-test-files) but don't specify a port name or
--chromium.

I think we should probably lint *all* of the ports if no port
name is supplied. This change implements that, and also moves
the linting logic out of the Manager class, since this really
has nothing to do with Managers. It has little to do with
run-webkit-tests, but splitting it into a different script would
introduce compatibility issues. It might make sense to do that
anyway, in a separate patch and combining that with cleaning up
the style checker to share more code.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._strip_test_dir_prefix):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(lint):
(run):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(LintTest.test_all_configurations): added.
(LintTest.test_lint_test_files): added.
(LintTest.test_lint_test_files__errors): added.
(MainTest.test_lint_test_files): removed.
(MainTest.test_lint_test_files__errors): removed.

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

12 years agowebkitpy: clean up a bunch of test scaffolding
dpranke@chromium.org [Wed, 25 Jan 2012 23:46:02 +0000 (23:46 +0000)]
webkitpy: clean up a bunch of test scaffolding
https://bugs.webkit.org/show_bug.cgi?id=76973

Reviewed by Eric Seidel.

There were several helper modules in the webkitpy.test package
that appear to only be used by executive_unittest.py. I am
rolling them all into that file to make that clearer.

* Scripts/webkitpy/common/system/executive_unittest.py:
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
(command_line):
(main):
* Scripts/webkitpy/common/system/fileutils.py: Removed.
* Scripts/webkitpy/test/cat.py: Removed.
* Scripts/webkitpy/test/cat_unittest.py: Removed.
* Scripts/webkitpy/test/echo.py: Removed.
* Scripts/webkitpy/test/echo_unittest.py: Removed.

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

12 years ago[WK2][Qt] REGRESSION: Pages with transform animations sometimes omit some of the...
noam.rosenthal@nokia.com [Wed, 25 Jan 2012 23:40:41 +0000 (23:40 +0000)]
[WK2][Qt] REGRESSION: Pages with transform animations sometimes omit some of the layers since r105413
https://bugs.webkit.org/show_bug.cgi?id=76886

Reviewed by Kenneth Rohde Christiansen.

We now render the whole layer if it or one if its ancestors has an active transform
animations. It's possible to optimize further in the future, but not currently necessary.
Also, we make sure that when a WebGraphicsLayer's property that affects transformation is
changed, all its descandants layers are marked as modified so that we re-adjust their
visible rect in the next pass.

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::notifyChangeRecursively):
(WebCore):
(WebCore::WebGraphicsLayer::setPosition):
(WebCore::WebGraphicsLayer::setAnchorPoint):
(WebCore::WebGraphicsLayer::setSize):
(WebCore::WebGraphicsLayer::setTransform):
(WebCore::WebGraphicsLayer::setChildrenTransform):
(WebCore::WebGraphicsLayer::setPreserves3D):
(WebCore::WebGraphicsLayer::setMasksToBounds):
(WebCore::WebGraphicsLayer::addAnimation):
(WebCore::WebGraphicsLayer::removeAnimation):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::selfOrAncestorHasActiveTransformAnimations):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
(WebGraphicsLayer):

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

12 years agoNode.cpp shouldn't duplicate QualifiedName parsing logic
abarth@webkit.org [Wed, 25 Jan 2012 23:31:26 +0000 (23:31 +0000)]
Node.cpp shouldn't duplicate QualifiedName parsing logic
https://bugs.webkit.org/show_bug.cgi?id=76672

Reviewed by Eric Seidel.

I added this code out of ignorance that this logic already existed in
Document.cpp.  In a future patch, we should consider moving it to
QualifiedName.cpp.

* dom/Node.cpp:
(WebCore):
(WebCore::Node::checkSetPrefix):

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

12 years agoShare more code between updateWidget implementations in HTMLEmbedElement and HTMLObje...
eric@webkit.org [Wed, 25 Jan 2012 23:29:53 +0000 (23:29 +0000)]
Share more code between updateWidget implementations in HTMLEmbedElement and HTMLObjectElement
https://bugs.webkit.org/show_bug.cgi?id=74340

Reviewed by Adam Barth.

I'm preparing to unify these two methods, and starting by sharing more code between them.

* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::updateWidget):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateWidget):
* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::guardedDispatchBeforeLoadEvent):
* html/HTMLPlugInElement.h:

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

12 years agoRemove Python 2.5 support from WebKit
eric@webkit.org [Wed, 25 Jan 2012 23:11:46 +0000 (23:11 +0000)]
Remove Python 2.5 support from WebKit
https://bugs.webkit.org/show_bug.cgi?id=71593

Reviewed by Adam Barth.

Just removing support from this one core file.
I'll commit the rest of the (large) change once we've
gone 24 hours and seen that no bots have exploded.
We can roll out this one change if we break bots
and then roll in the rest once those bots are fixed.

* Scripts/webkitpy/common/system/executive.py:
(Executive.cpu_count):

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

12 years agoAdd full support for filesystem URLs.
ericu@chromium.org [Wed, 25 Jan 2012 22:43:19 +0000 (22:43 +0000)]
Add full support for filesystem URLs.
https://bugs.webkit.org/show_bug.cgi?id=75049

Reviewed by Adam Barth.

No new tests; existing layout tests cover the basic functionality, and
the new functionality won't be there until Chromium adds it.  This patch
merely enables that, without changing behavior.

Source/WebCore:

* fileapi/EntryBase.cpp:
(WebCore::EntryBase::toURL): Add missing escaping of URL path.

* page/SecurityOrigin.cpp:
(WebCore::extractInnerURL): Use innerURL member, if it's populated.

* platform/KURL.h:
(WebCore::KURL::innerURL): Add innerURL member.

* platform/KURLGoogle.cpp:
(WebCore::KURLGooglePrivate::KURLGooglePrivate):
(WebCore::KURLGooglePrivate::operator=):
Add copy constructor and operator=, which are now needed since
m_innerURL needs special handling.
(WebCore::KURLGooglePrivate::setUtf8):
(WebCore::KURLGooglePrivate::setAscii):
Add calls to initInnerURL.
(WebCore::KURLGooglePrivate::initInnerURL):
Add method to init/copy m_innerURL.
(WebCore::KURLGooglePrivate::copyTo):
Handle m_innerURL during copies.
(WebCore::encodeWithURLEscapeSequences):
Unescape %2F ['/'] in paths; it's much more readable, and it's safe.

* platform/KURLGooglePrivate.h:
(WebCore::KURLGooglePrivate::innerURL): Add accessor for new m_innerURL.

Source/WebKit/chromium:

* tests/KURLTest.cpp:
TEST(KURLTest, Encode): Update expectation that '/' sails through unescaped.

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

12 years ago[Chromium] Layout Test fast/canvas/webgl/invalid-passed-params.html is failing
noel.gordon@gmail.com [Wed, 25 Jan 2012 22:40:03 +0000 (22:40 +0000)]
[Chromium] Layout Test fast/canvas/webgl/invalid-passed-params.html is failing
https://bugs.webkit.org/show_bug.cgi?id=75784

Reviewed by Kenneth Russell.

Passing on ToT chromium.org, webkit.org (GPU and non-GPU), rebaseline this test.

* platform/chromium/test_expectations.txt:

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

12 years ago[chromium] Refactor Clipboard invalidate for DataTransferItem/DataTransferItemList...
dcheng@chromium.org [Wed, 25 Jan 2012 22:33:33 +0000 (22:33 +0000)]
[chromium] Refactor Clipboard invalidate for DataTransferItem/DataTransferItemList into a wrapper
https://bugs.webkit.org/show_bug.cgi?id=76993

We want to unify the backing data store for ClipboardChromium and DataTransferItems. For
that, we want use a similar representation to DataTransferItem list inside
ChromiumDataObject.  However, since ChromiumDataObject should be valid in scopes where
Clipboard is not (e.g. default drag processing), we need to separate the clipboard
invalidation logic into a wrapper class.

Reviewed by Tony Chang.

Covered by existing tests.

* platform/chromium/ClipboardChromium.cpp:
():
(WebCore::ClipboardChromium::items):
* platform/chromium/DataTransferItemChromium.cpp:
(WebCore::DataTransferItemChromium::getAsString):
* platform/chromium/DataTransferItemListChromium.cpp:
(WebCore::DataTransferItemListChromium::length):
(WebCore::DataTransferItemListChromium::item):
(WebCore::DataTransferItemListChromium::deleteItem):
(WebCore::DataTransferItemListChromium::clear):
(WebCore::DataTransferItemListChromium::add):

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

12 years agohtml5-full-render.html fails due to a log
rniwa@webkit.org [Wed, 25 Jan 2012 22:25:10 +0000 (22:25 +0000)]
html5-full-render.html fails due to a log
https://bugs.webkit.org/show_bug.cgi?id=77046

Reviewed by Adam Barth.

Replace the call to log() in html5-full-render.html by a call to newly added logInfo(),
which doesn't print anything inside DRT.

* Parser/html5-full-render.html:
* resources/runner.js:
(logInfo):

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

12 years ago[Texmap] Divide TextureMapperNode.cpp to 3 files.
noam.rosenthal@nokia.com [Wed, 25 Jan 2012 22:13:29 +0000 (22:13 +0000)]
[Texmap] Divide TextureMapperNode.cpp to 3 files.
https://bugs.webkit.org/show_bug.cgi?id=76660

 Reviewed by Kenneth Rohde Christiansen.

 Split the animation part of TextureMapperNode out to a separate file, called
 TextureMapperAnimation.
 Provide a clean interface for that class, that allows separating the internals of the scene
 painting from the internals of the animation interpolation.

 No new tests. Existing animation tests cover this.

 * GNUmakefile.list.am:

* Target.pri:
* WebCore.gypi:
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::addAnimation):
(WebCore::GraphicsLayerTextureMapper::pauseAnimation):
(WebCore::GraphicsLayerTextureMapper::removeAnimation):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(GraphicsLayerTextureMapper):
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::syncCompositingStateSelf):
(WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
(WebCore::TextureMapperNode::syncAnimations):
(WebCore::TextureMapperNode::syncAnimationsRecursively):
(WebCore::TextureMapperNode::syncCompositingState):
* platform/graphics/texmap/TextureMapperNode.h:
(TextureMapperNode):

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

12 years agoLayout Test http/tests/workers/terminate-during-sync-operation.html times out frequen...
leviw@chromium.org [Wed, 25 Jan 2012 22:11:40 +0000 (22:11 +0000)]
Layout Test http/tests/workers/terminate-during-sync-operation.html times out frequently on Win DBG
https://bugs.webkit.org/show_bug.cgi?id=77047

Unreviewed. Marking http/tests/workers/terminate-during-sync-operation.html as flaky (timeout) on Chromium Win DBG

* platform/chromium/test_expectations.txt:

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

12 years ago[chromium] Unreviewed expectation update after r105613.
knorton@google.com [Wed, 25 Jan 2012 22:00:53 +0000 (22:00 +0000)]
[chromium] Unreviewed expectation update after r105613.

* platform/chromium-mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.png:

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

12 years agoENABLE_SHADOW_DOM should be available via build-webkit --shadow-dom
commit-queue@webkit.org [Wed, 25 Jan 2012 21:46:47 +0000 (21:46 +0000)]
ENABLE_SHADOW_DOM should be available via build-webkit --shadow-dom
https://bugs.webkit.org/show_bug.cgi?id=76863

.:

Patch by Hajime Morita <morrita@google.com>> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* configure.ac:

Source/JavaScriptCore:

Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

No tests, it's a behid flag configuration change.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

Source/WebKit/mac:

Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

* Configurations/FeatureDefines.xcconfig:

Tools:

Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

* Scripts/build-webkit:
* qmake/mkspecs/features/features.prf:

WebKitLibraries:

Patch by Hajime Morita <morrita@google.com>> on 2012-01-25
Reviewed by Dimitri Glazkov.

Added a feature flag.

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

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

12 years ago[Chromium]: rebaseline after r105878
leviw@chromium.org [Wed, 25 Jan 2012 21:09:10 +0000 (21:09 +0000)]
[Chromium]: rebaseline after r105878
https://bugs.webkit.org/show_bug.cgi?id=77017

Unreviewed Chromium image expectations update.

Not updating test_expectations because I am not sure that the rebaselining tool did
the right thing.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-25

* platform/chromium-linux-x86/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-linux/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-linux/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-linux/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/custom/zero-path-square-cap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-mac/svg/custom/zero-path-square-cap-rendering-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win-xp/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering-expected.png: Added.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-win/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.

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

12 years agoUnreviewed, rolling out r105906.
leviw@chromium.org [Wed, 25 Jan 2012 21:06:51 +0000 (21:06 +0000)]
Unreviewed, rolling out r105906.
http://trac.webkit.org/changeset/105906
https://bugs.webkit.org/show_bug.cgi?id=77038

Breaks compositing/visibility/layer-visible-content.html and
compositing/visibility/visibility-image-layers-dynamic.html
(Requested by leviw|gardening on #webkit).

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

Source/WebCore:

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

LayoutTests:

* compositing/visibility/layer-visible-content-expected.txt:
* compositing/visibility/visibility-image-layers-dynamic-expected.txt:
* platform/chromium/test_expectations.txt:

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