WebKit-https.git
7 years agoChange visual look of placeholder
jonlee@apple.com [Fri, 16 Nov 2012 22:42:59 +0000 (22:42 +0000)]
Change visual look of placeholder
https://bugs.webkit.org/show_bug.cgi?id=102149
<rdar://problem/12695566>

Reviewed by Darin Adler.

Move the button to the lower-right corner. Move the theming into
RenderSnapshottedPlugin for now. Eventually we will want to migrate to using the
shadow DOM instead, and the metrics of the button are needed for click passthrough.

* Resources/startButton.png: Added.
* Resources/startButton@2x.png: Added.
* Resources/startButtonPressed.png: Added.
* Resources/startButtonPressed@2x.png: Added.
* WebCore.xcodeproj/project.pbxproj: Add button images.

Maintain variables to track whether the mouse is over the button, and the rect
for the button. If the user clicks in the rect, we render a pressed button.
* rendering/RenderSnapshottedPlugIn.cpp:
(WebCore): Add named constant for bottom and right padding of the button.
(WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
(WebCore::RenderSnapshottedPlugIn::paintReplaced):
(WebCore::startButtonImage): Returns button image.
(WebCore::startButtonPressedImage): Returns pressed button image.
(WebCore::RenderSnapshottedPlugIn::paintButton): Draw the button image in the
lower right hand corner, but only if we are active or hovered.
(WebCore::RenderSnapshottedPlugIn::repaintButton): Stubbed to call repaint().
(WebCore::RenderSnapshottedPlugIn::handleEvent): Repaint the button if we are
hovering over the plugin rect. With a mouse down event, calculate whether the
mouse position is within the button rect.
(WebCore::RenderSnapshottedPlugIn::layout): Cache the rect representing the button
contents.
* rendering/RenderSnapshottedPlugIn.h:

Remove theming function for now.
* rendering/RenderTheme.h:
(RenderTheme):
* rendering/RenderThemeMacShared.h:
* rendering/RenderThemeMacShared.mm:

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

7 years agoRename applyDefaultDeviceScaleFactorInCompositor to setApplyDeviceScaleFactorInCompositor
commit-queue@webkit.org [Fri, 16 Nov 2012 22:31:19 +0000 (22:31 +0000)]
Rename applyDefaultDeviceScaleFactorInCompositor to setApplyDeviceScaleFactorInCompositor
https://bugs.webkit.org/show_bug.cgi?id=102462

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-11-16
Reviewed by James Robinson.

As we no longer have this "default" device scale factor.

Source/WebKit/chromium:

* public/WebSettings.h:
(WebKit::WebSettings::setApplyDefaultDeviceScaleFactorInCompositor):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::WebSettingsImpl):
(WebKit::WebSettingsImpl::setApplyDeviceScaleFactorInCompositor):
* src/WebSettingsImpl.h:
(WebSettingsImpl):
(WebKit::WebSettingsImpl::applyDeviceScaleFactorInCompositor):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setDeviceScaleFactor):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

Tools:

* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::applyTo):

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

7 years agoDeploy ScriptWrappable to more always-wrapped objects
eric@webkit.org [Fri, 16 Nov 2012 22:02:21 +0000 (22:02 +0000)]
Deploy ScriptWrappable to more always-wrapped objects
https://bugs.webkit.org/show_bug.cgi?id=102539

Reviewed by Adam Barth.

Add the ScriptWrappable baseclass to:
CSSStyleDeclaration (anttik tells me these should only be used from JS, even though some old Editing code used to use them)
ClientRect (element.getBoundingClientRects)
Event (Not all events end up wrapped, but any which live past dispatch do)
NodeList (this covers Static and Dynamic node list types, like document.all)
HTMLCollection (separate from NodeList, for things like table.rows)
Storage (for window.storage, always wrapped)
XMLHttpRequest (always wrapped, created from JS)

This should be a small memory savings as the inline pointer is only 4-8 bytes
instead of the hashmap entry which would be 8-16.  This may also show up
on benchmarks which repeatedly access these objects (like window.storage).

These were found by adding a couple lines of logging-code to
WebCore::createWrapper when we were in the main world, but took the
HashMap (instead of inline) storage path. I used sort and uniq -c
to find the most-frequently wrapped objects (while surfing
a few common sites) and came up with this list.  There are still a few
more complicated objects (like CSSStyleDeclaration) which may benifit
from inline-wrapper-access and will be covered in a later patch.

* css/CSSStyleDeclaration.h:
* dom/ClientRect.h:
* dom/Event.h:
* dom/NodeList.h:
* html/HTMLCollection.h:
* storage/Storage.h:
* xml/XMLHttpRequest.h:

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

7 years agoFix build error on Chromium due to r134995.
jonlee@apple.com [Fri, 16 Nov 2012 21:53:38 +0000 (21:53 +0000)]
Fix build error on Chromium due to r134995.

* src/WebNode.cpp:
(WebKit::WebNode::simulateClick): Pass in NULL pointer instead.

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

7 years ago[Chromium] Remaining bits of Win7 rebaselines.
dglazkov@chromium.org [Fri, 16 Nov 2012 21:52:25 +0000 (21:52 +0000)]
[Chromium] Remaining bits of Win7 rebaselines.

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

7 years ago[Chromium] Massive rebaseline after Win7 came back up.
dglazkov@chromium.org [Fri, 16 Nov 2012 21:43:42 +0000 (21:43 +0000)]
[Chromium] Massive rebaseline after Win7 came back up.

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

7 years agoSimulated events instances do not all have the same underlying event
jonlee@apple.com [Fri, 16 Nov 2012 21:39:26 +0000 (21:39 +0000)]
Simulated events instances do not all have the same underlying event
https://bugs.webkit.org/show_bug.cgi?id=102468
<rdar://problem/12716331>

Reviewed by Alexey Proskuryakov.

The PassRefPtr with the underlying event is included as an argument for the mouse
down, up, and click events. But the PassRefPtr loses its underlying pointer after
the first simulated mouse down event because it gets assigned to that event's
private m_underlyingEvent variable. We therefore send NULL to the other events.

The fix is for this and related functions to pass the raw pointer.

A layout test is not possible to put together because the call sites that use simulated
events with an underlying event do not send mouse events, and those that send mouse
events have a NULL underlying event.

* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchSimulatedClick): Require passing in the raw pointer.
* dom/EventDispatcher.h:
* dom/Node.cpp:
(WebCore::Node::dispatchSimulatedClick): Ditto.
* dom/Node.h:

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

7 years agoBuild fix for WinCE after r134936.
paroga@webkit.org [Fri, 16 Nov 2012 21:33:36 +0000 (21:33 +0000)]
Build fix for WinCE after r134936.

* platform/network/win/CookieJarWin.cpp:
(WebCore::cookieRequestHeaderFieldValue):

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

7 years agoBuild fix for WinCE after r133688.
paroga@webkit.org [Fri, 16 Nov 2012 21:31:17 +0000 (21:31 +0000)]
Build fix for WinCE after r133688.

Use numeric_limits<uint32_t>::max() instead of UINT32_MAX.

* runtime/CodeCache.h:
(JSC::CacheMap::CacheMap):

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

7 years agoUnreviewed, rolling out r134986.
dglazkov@chromium.org [Fri, 16 Nov 2012 21:31:16 +0000 (21:31 +0000)]
Unreviewed, rolling out r134986.
http://trac.webkit.org/changeset/134986
https://bugs.webkit.org/show_bug.cgi?id=102110

Triggered ASSERT in fast/frames/seamless/seamless-inherited-
origin.html.

Source/WebCore:

* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::addAuthorRulesAndCollectUserRulesFromSheets):
(WebCore::collectCSSOMWrappers):
* css/StyleResolver.h:
(StyleResolver):
* dom/Document.cpp:
(WebCore::Document::setCompatibilityMode):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::pageGroupUserSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::clearPageGroupUserSheets):
(WebCore::DocumentStyleSheetCollection::updatePageGroupUserSheets):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):
* dom/DocumentStyleSheetCollection.h:
(DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::documentUserSheets):
* page/PageGroup.cpp:
(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::resetUserStyleCacheInAllFrames):
* page/PageGroup.h:
(PageGroup):

LayoutTests:

* userscripts/user-stylesheet-invalidate-expected.txt: Removed.
* userscripts/user-stylesheet-invalidate.html: Removed.

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=102540
commit-queue@webkit.org [Fri, 16 Nov 2012 21:01:00 +0000 (21:01 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=102540
[BlackBerry] Checkerboard flicker when pinch zooming out on google.com/nwshp

Patch by Adam Treat <atreat@rim.com> on 2012-11-16
Reviewed by George Staikos.
PR 245827

Disable updates to the backingstore tile matrix when backingstore updates
are disabled.  This prevents changes to the tile matrix when we are in the
middle of a pinch zoom which can cause checkebroard flickering.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
(BlackBerry::WebKit::BackingStorePrivate::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::updateTileMatrixIfNeeded):
(BlackBerry::WebKit::BackingStorePrivate::contentsSizeChanged):
(BlackBerry::WebKit::BackingStorePrivate::orientationChanged):
* Api/BackingStore_p.h:
(BlackBerry::WebKit::BackingStorePrivate::setTileMatrixNeedsUpdate):
(BackingStorePrivate):

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

7 years agoIndexedDB: Propagate DOMRequestState to IndexedDB binding utility functions
commit-queue@webkit.org [Fri, 16 Nov 2012 20:56:30 +0000 (20:56 +0000)]
IndexedDB: Propagate DOMRequestState to IndexedDB binding utility functions
https://bugs.webkit.org/show_bug.cgi?id=102430

Patch by Michael Pruett <michael@68k.org> on 2012-11-16
Reviewed by Adam Barth.

DOMRequestState is currently propagated to some but not all of
the IndexedDB binding utility functions. In order to implement
these functions for JSC, this state must be propagated to all
of the utility functions.

Source/WebCore:

Tests: storage/indexeddb/*

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::update):
(WebCore::IDBCursor::setValueReady):
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::generateIndexKeysForValue):
(WebCore::IDBObjectStore::put):
(WebCore):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent):
* Modules/indexeddb/IDBRequest.h:
(WebCore::IDBRequest::requestState):
(IDBRequest):
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::serializeIDBValue):
(WebCore::injectIDBKeyIntoScriptValue):
* bindings/v8/IDBBindingUtilities.h:
(WebCore):

Source/WebKit/chromium:

* tests/IDBBindingUtilitiesTest.cpp:
(WebKit::checkKeyFromValueAndKeyPathInternal):
(WebKit::injectKey):

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

7 years agoRebaselined run-bindings-tests.
commit-queue@webkit.org [Fri, 16 Nov 2012 20:49:41 +0000 (20:49 +0000)]
Rebaselined run-bindings-tests.
https://bugs.webkit.org/show_bug.cgi?id=102523

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Dimitri Glazkov.

Expected results need to be updated after r134931

* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackCallback):

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

7 years agoFor single element arrays use the pointer into the CFDataRef instead of copying data
psolanki@apple.com [Fri, 16 Nov 2012 20:46:59 +0000 (20:46 +0000)]
For single element arrays use the pointer into the CFDataRef instead of copying data
https://bugs.webkit.org/show_bug.cgi?id=102306
<rdar://problem/12267471>

Reviewed by Alexey Proskuryakov.

We generally copy the data received from CFNetwork into our own buffers. But if the
CFArrayRef has exactly one CFDataRef inside it, then we can just hold on to the CFDataRef
and access its memory directly and avoid making a copy.

This also moves the creation of PurgeableBuffer from CachedResource to SharedBuffer.
SharedBuffer::createPurgeableBuffer() will avoid creating PurgeableBuffer when the
SharedBuffer is backed by a NSData/CFDataRef and when we want to optimize and directly use
the memory in the data array.

No new tests because no change in functionality.

* loader/ResourceBuffer.cpp:
(WebCore::ResourceBuffer::createPurgeableBuffer): Added.
* loader/ResourceBuffer.h:
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::makePurgeable):
* platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::createPurgeableBuffer): Added.
(WebCore::SharedBuffer::data):
* platform/SharedBuffer.h:
* platform/cf/SharedBufferCF.cpp:
(WebCore::SharedBuffer::platformData): Use reinterpret_cast instead of C-style cast.
(WebCore::SharedBuffer::maybeTransferPlatformData): Use reinterpret_cast instead of C-style cast.
(WebCore::SharedBuffer::singleDataArrayBuffer): Added.

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

7 years agoREGRESSION(r129644): User StyleSheet not applying
antti@apple.com [Fri, 16 Nov 2012 20:36:03 +0000 (20:36 +0000)]
REGRESSION(r129644): User StyleSheet not applying
https://bugs.webkit.org/show_bug.cgi?id=102110

Reviewed by Andreas Kling.

Source/WebCore:

Injected stylesheets added as UserStyleAuthorLevel fail to apply. r129644 implicitly assumed that
such things don't exists but on Chromium addUserStyleSheet() confusingly uses them.

The patch adds injected author stylesheets to DocumentStyleSheetCollection::activeStyleSheets().
It also generally cleans up the code around injected and user stylesheets.

Tests: userscripts/user-script-and-stylesheet.html
       userscripts/user-stylesheet-invalidate.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore::collectCSSOMWrappers):
* css/StyleResolver.h:
(StyleResolver):
* dom/Document.cpp:
(WebCore::Document::setCompatibilityMode):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::injectedUserStyleSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::injectedAuthorStyleSheets):
(WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):
* dom/DocumentStyleSheetCollection.h:
(WebCore::DocumentStyleSheetCollection::documentUserStyleSheets):
(DocumentStyleSheetCollection):
* page/PageGroup.cpp:
(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::invalidatedInjectedStyleSheetCacheInAllFrames):
* page/PageGroup.h:
(PageGroup):

LayoutTests:

* userscripts/user-stylesheet-invalidate-expected.txt: Added.
* userscripts/user-stylesheet-invalidate.html: Added.

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

7 years agoStyleResolver: Only input elements need equal "readonly" attribute for style sharing.
akling@apple.com [Fri, 16 Nov 2012 20:23:14 +0000 (20:23 +0000)]
StyleResolver: Only input elements need equal "readonly" attribute for style sharing.
<http://webkit.org/b/102536>

Reviewed by Antti Koivisto.

Move the comparison of the "readonly" attribute into canShareStyleWithControl() since it's only
relevant for sharing style between <input> elements.

Also skip attribute comparisons for form control elements that share the same ElementAttributeData.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::canShareStyleWithControl):
(WebCore::haveIdenticalStyleAffectingAttributes):

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

7 years ago[WinCairo] Sync with Windows test expectations.
bfulgham@webkit.org [Fri, 16 Nov 2012 20:21:39 +0000 (20:21 +0000)]
[WinCairo] Sync with Windows test expectations.

* platform/wincairo/TestExpectations: Update to match Windows.

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

7 years ago[Win] key event's location does not work on Windows platform.
bfulgham@webkit.org [Fri, 16 Nov 2012 20:19:08 +0000 (20:19 +0000)]
[Win] key event's location does not work on Windows platform.
https://bugs.webkit.org/show_bug.cgi?id=89742

Patch by Takashi Sakamoto <tasak@google.com> on 2012-11-15
Reviewed by Brent Fulgham.

Modified keyDownCallback to use lparam to specify left-hand keys or
right-hand keys.

* DumpRenderTree/win/EventSender.cpp:
(makeKeyDataForScanCode):
Given a virtual keycode, generate scancode and extended key bit of
lparam.
(keyDownCallback):
Use lparam for left-hand and right-hand keys, because Windows doesn't
directly provide a virtual keycode which distinguishes between
left-hand and right-hand. For example, when control key is pressed,
wparam has VK_CONTROL, neither VK_RCONTROL nor VK_LCONTROL.

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

7 years agoString::fromUTF8() should take advantage of the ASCII check in convertUTF8ToUTF16()
msaboff@apple.com [Fri, 16 Nov 2012 20:18:04 +0000 (20:18 +0000)]
String::fromUTF8() should take advantage of the ASCII check in convertUTF8ToUTF16()
https://bugs.webkit.org/show_bug.cgi?id=100577

Reviewed by Oliver Hunt.

Passed in ASCII flag to convertUTF8ToUTF16() and if try, create an 8 bit string from the original arguments.
Relanding after fix to https://bugs.webkit.org/show_bug.cgi?id=102482.

* wtf/text/WTFString.cpp:
(WTF::String::fromUTF8):

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

7 years ago[BlackBerry] FCC doesn't work in textarea
rwlbuis@webkit.org [Fri, 16 Nov 2012 20:05:35 +0000 (20:05 +0000)]
[BlackBerry] FCC doesn't work in textarea
https://bugs.webkit.org/show_bug.cgi?id=102088

Reviewed by Antonio Gomes.

Remove the cancel button specializations, it was needed at some point but hitting it
works just as well without it. This unbreaks FCC in textarea's.

* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::isElementClickable):

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

7 years agoUnreviewed, rolling out r134867.
commit-queue@webkit.org [Fri, 16 Nov 2012 19:51:38 +0000 (19:51 +0000)]
Unreviewed, rolling out r134867.
http://trac.webkit.org/changeset/134867
https://bugs.webkit.org/show_bug.cgi?id=102544

Broke security fuzzier test (heap-buffer-overflow) (Requested
by bfulgham on #webkit).

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

* platform/audio/Biquad.cpp:
(WebCore::Biquad::process):

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

7 years ago[BlackBerry] Fix regression causing checkerboard flicker after app wake-up
commit-queue@webkit.org [Fri, 16 Nov 2012 19:48:03 +0000 (19:48 +0000)]
[BlackBerry] Fix regression causing checkerboard flicker after app wake-up
https://bugs.webkit.org/show_bug.cgi?id=102526

Patch by Adam Treat <atreat@rim.com> on 2012-11-16
Reviewed by George Staikos.
PR 245027

The webkit patch for 219976 introduced an undesirable behavior change
resulting in a regression where there was checkerboard flickering on
resuming from an inactive application state.  This patch restores the
previous behavior and fixes the regression.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStore::createBackingStoreMemory):
(BlackBerry::WebKit::BackingStore::releaseBackingStoreMemory):

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

7 years ago[Chromium] adjusting expectations for checkerboard.html
dglazkov@chromium.org [Fri, 16 Nov 2012 19:37:46 +0000 (19:37 +0000)]
[Chromium] adjusting expectations for checkerboard.html

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

7 years agoMediaStream API: Update RTCPeerConnection states to match the latest editors draft
tommyw@google.com [Fri, 16 Nov 2012 19:36:26 +0000 (19:36 +0000)]
MediaStream API: Update RTCPeerConnection states to match the latest editors draft
https://bugs.webkit.org/show_bug.cgi?id=102382

Reviewed by Adam Barth.

Source/Platform:

Adding a callback for the new RTCPeerConnection::iceGatheringState.

* chromium/public/WebRTCPeerConnectionHandlerClient.h:
(WebKit::WebRTCPeerConnectionHandlerClient::didChangeICEGatheringState):

Source/WebCore:

Updating readyState & iceState, and adding iceGatheringState.
Also safeguarding the event timer callback.

Patch covered by existing tests.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::RTCPeerConnection):
(WebCore::RTCPeerConnection::createOffer):
(WebCore::RTCPeerConnection::createAnswer):
(WebCore::RTCPeerConnection::setLocalDescription):
(WebCore::RTCPeerConnection::localDescription):
(WebCore::RTCPeerConnection::setRemoteDescription):
(WebCore::RTCPeerConnection::remoteDescription):
(WebCore::RTCPeerConnection::updateIce):
(WebCore::RTCPeerConnection::addIceCandidate):
(WebCore::RTCPeerConnection::readyState):
(WebCore::RTCPeerConnection::iceGatheringState):
(WebCore):
(WebCore::RTCPeerConnection::iceState):
(WebCore::RTCPeerConnection::addStream):
(WebCore::RTCPeerConnection::close):
(WebCore::RTCPeerConnection::didChangeIceGatheringState):
(WebCore::RTCPeerConnection::stop):
(WebCore::RTCPeerConnection::changeReadyState):
(WebCore::RTCPeerConnection::scheduledEventTimerFired):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.idl:
* dom/EventNames.h:
(WebCore):
* platform/mediastream/RTCPeerConnectionHandlerClient.h:
(RTCPeerConnectionHandlerClient):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::didChangeICEGatheringState):
(WebCore):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(RTCPeerConnectionHandlerChromium):

Source/WebKit/chromium:

Updating readyState & iceState, and adding iceGatheringState.

* src/AssertMatchingEnums.cpp:

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

7 years agoUnreviewed, rolling out r134973.
dglazkov@chromium.org [Fri, 16 Nov 2012 19:27:50 +0000 (19:27 +0000)]
Unreviewed, rolling out r134973.
http://trac.webkit.org/changeset/134973
https://bugs.webkit.org/show_bug.cgi?id=99340

Broke compile on at least Mac and Linux.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* loader/CookieJar.cpp:
* loader/chromium/CookieJarChromium.cpp: Renamed from Source/WebKit/chromium/src/FrameNetworkingContextImpl.cpp.
(WebCore):
(WebCore::setCookies):
(WebCore::cookies):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):
* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):
* platform/network/NetworkingContext.h:
* platform/network/chromium/CookieJarChromium.cpp: Removed.

Source/WebKit/chromium:

* WebKit.gyp:
* src/FrameNetworkingContextImpl.h:
* src/PlatformSupport.cpp:
(WebCore::getCookieJar):
(WebCore):
(WebCore::PlatformSupport::setCookies):
(WebCore::PlatformSupport::cookies):
(WebCore::PlatformSupport::cookieRequestHeaderFieldValue):
(WebCore::PlatformSupport::rawCookies):
(WebCore::PlatformSupport::deleteCookie):
(WebCore::PlatformSupport::cookiesEnabled):

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

7 years agoSource/WebCore: [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
mrobinson@webkit.org [Fri, 16 Nov 2012 19:06:44 +0000 (19:06 +0000)]
Source/WebCore: [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Make GtkAuthenticationDialog more general, so that it can be subclassed in
WebKit2. We cannot use the WebCore authentication-related classes directly there.

No new tests. This patch does not change behavior.

* platform/gtk/GtkAuthenticationDialog.cpp:
(WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog): Remove an unused include and reorder
some field initializers.
(WebCore::GtkAuthenticationDialog::authenticate): Now handle both the okay and cancel case here. This
makes it simpler to subclass.
(WebCore::GtkAuthenticationDialog::authenticationDialogResponseCallback): Handle fetching the username
and password here, so that it can be shared with subclasses.
* platform/gtk/GtkAuthenticationDialog.h: Make some methods virtual and protected so they can be
subclasses.

Source/WebKit2: Move authentication dialog to the UIProcess

[GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Move the use of GtkAuthenticationDialog to the UIProcess along with the rest of
the GTK+ widgets. This will allow us to to embed the dialog into the WebView
in the future and to test authentication with the WebKit2 C API.

* GNUmakefile.list.am: Add the new class to the source list and remove the
GTK+-only WebFrameLoader implementation file.
* UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Added. A subclass of GtkAuthenticationDialog
which uses the WebKit2 classes to do the UIProcess-side authentication.
* UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Added.
* UIProcess/API/gtk/WebKitLoaderClient.cpp: Add a callback for didReceiveAuthenticationChallengeInFrame.
(didReceiveAuthenticationChallengeInFrame): Added.
(attachLoaderClientToView): Use the new callback.
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::core): Add this getter for the WebCore class.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Share the implementation
again.
* WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Removed.

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

7 years ago[Chromium] Remove cookie-related functions from PlatformSupport
pilgrim@chromium.org [Fri, 16 Nov 2012 19:02:04 +0000 (19:02 +0000)]
[Chromium] Remove cookie-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=99340

Reviewed by Adam Barth.

Move cookie-related functions out of PlatformSupport and implement
new PlatformCookieJar interface via NetworkContext.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* loader/CookieJar.cpp:
* loader/chromium/CookieJarChromium.cpp: Removed.
* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):
* platform/network/NetworkingContext.h:
(WebKit):
(NetworkingContext):
* platform/network/chromium/CookieJarChromium.cpp: Copied from Source/WebCore/loader/chromium/CookieJarChromium.cpp.
(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

Source/WebKit/chromium:

* WebKit.gyp:
* src/FrameNetworkingContextImpl.cpp: Added.
(WebKit):
(WebKit::FrameNetworkingContextImpl::cookieJar):
* src/FrameNetworkingContextImpl.h:
(FrameNetworkingContextImpl):
* src/PlatformSupport.cpp:

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

7 years agoaudiopannernode-basic.html should cover default value of attribute.
commit-queue@webkit.org [Fri, 16 Nov 2012 18:57:45 +0000 (18:57 +0000)]
audiopannernode-basic.html should cover default value of attribute.
https://bugs.webkit.org/show_bug.cgi?id=102332

Patch by Li Yin <li.yin@intel.com> on 2012-11-16
Reviewed by Chris Rogers.

Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#PannerNode
Currently almost all attributes of PannerNode are specified default value clearly,
the test should cover them.

* webaudio/audiopannernode-basic-expected.txt:
* webaudio/audiopannernode-basic.html:

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

7 years agoFix assertion bug of build fix r134961
rakuco@webkit.org [Fri, 16 Nov 2012 18:55:48 +0000 (18:55 +0000)]
Fix assertion bug of build fix r134961
https://bugs.webkit.org/show_bug.cgi?id=102533

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Assertion condition should be '!d->m_currentWebChallenge.isNull()'

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

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

7 years ago[chromium] MediaStream API: Add missing WebRTCPeerConnectionHandlerClient::didAddRemo...
tommyw@google.com [Fri, 16 Nov 2012 18:39:27 +0000 (18:39 +0000)]
[chromium] MediaStream API: Add missing WebRTCPeerConnectionHandlerClient::didAddRemoteDataChannel
https://bugs.webkit.org/show_bug.cgi?id=102386

Reviewed by Adam Barth.

Source/Platform:

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

Source/WebCore:

Existing tests expanded to cover patch.

* platform/mediastream/RTCDataChannelDescriptor.cpp:
(WebCore::RTCDataChannelDescriptor::RTCDataChannelDescriptor):
(WebCore::RTCDataChannelDescriptor::readyStateChanged):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):
(WebCore):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(WebKit):
(RTCPeerConnectionHandlerChromium):

Tools:

Adding mock data channel functionality.

* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
(MockWebRTCPeerConnectionHandler::openDataChannel):

LayoutTests:

* fast/mediastream/RTCPeerConnection-datachannel.html:
* fast/mediastream/RTCPeerConnection-datachannel-expected.txt:

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

7 years ago[chromium] Copy linux theme related files to default
commit-queue@webkit.org [Fri, 16 Nov 2012 18:37:56 +0000 (18:37 +0000)]
[chromium] Copy linux theme related files to default
https://bugs.webkit.org/show_bug.cgi?id=102403

Patch by Scott Violet <sky@chromium.org> on 2012-11-16
Reviewed by Tony Chang

Transitional patch that copies linux WebThemeEngine to default directory.

No new tests, refactoring only.

Source/Platform:

* Platform.gypi:
* chromium/public/default: Added.
* chromium/public/default/WebThemeEngine.h: Copied from Source/Platform/chromium/public/linux/WebThemeEngine.h.

Source/WebCore:

* WebCore.gyp/WebCore.gyp: Update compile rules when use_default_render_theme is set.
* WebCore.gypi: Adds new files.
* platform/chromium/PlatformSupport.h:
* platform/chromium/PlatformThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.cpp.
* platform/chromium/PlatformThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.h.
* platform/chromium/ScrollbarThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.cpp.
* platform/chromium/ScrollbarThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.h.
* rendering/RenderThemeChromiumDefault.cpp: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.cpp.
* rendering/RenderThemeChromiumDefault.h: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.h.

Source/WebKit/chromium:

* features.gypi:
* public/platform/default: Added.
* public/platform/default/WebThemeEngine.h: Copied from Source/WebKit/chromium/public/platform/linux/WebThemeEngine.h.
* src/PlatformSupport.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.
(WebCore):
* src/WebViewImpl.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.
(WebKit::WebViewImpl::setScrollbarColors): Calls to default theme as necessary.
(WebKit::WebViewImpl::setSelectionColors): Calls to default theme as necessary.

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

7 years agoIndexedDB: add missing 'explicit' and fix backing store release
alecflett@chromium.org [Fri, 16 Nov 2012 18:33:48 +0000 (18:33 +0000)]
IndexedDB: add missing 'explicit' and fix backing store release
https://bugs.webkit.org/show_bug.cgi?id=102450

Reviewed by Tony Chang.

A inconsequential regression was introduced in http://trac.webkit.org/changeset/134129
which resulted in objects sticking around a bit longer than
expected. This makes sure the LevelDBTransaction is released
at the moment of commit/rollback rather than when IDBTransactionBackendImpl
is destroyed.

No new tests, this is just internal state that will affect
some future refactoring.

* Modules/indexeddb/IDBBackingStore.h:
(Cursor):
(Transaction):
(WebCore::IDBBackingStore::Transaction::reset):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):

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

7 years ago[chromium] delete unused testRunner methods
jochen@chromium.org [Fri, 16 Nov 2012 18:30:47 +0000 (18:30 +0000)]
[chromium] delete unused testRunner methods
https://bugs.webkit.org/show_bug.cgi?id=102479

Reviewed by Adam Barth.

These methods aren't used by any layout test. Remove them to avoid bit rot

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):
(WebViewHost::startDragging):
(WebViewHost::enterFullScreenNow):
(WebViewHost::exitFullScreenNow):

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

7 years ago[Chromium] One last tweak to WebCore.gypi to make Win build not sad.
dglazkov@chromium.org [Fri, 16 Nov 2012 18:19:04 +0000 (18:19 +0000)]
[Chromium] One last tweak to WebCore.gypi to make Win build not sad.

* WebCore.gypi: Removed one last mention of accessibility/gtk file.

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

7 years agoHandle gesture events on scrollbars.
commit-queue@webkit.org [Fri, 16 Nov 2012 18:17:30 +0000 (18:17 +0000)]
Handle gesture events on scrollbars.
https://bugs.webkit.org/show_bug.cgi?id=101516

Patch by Robert Flack <flackr@chromium.org> on 2012-11-16
Reviewed by Antonio Gomes.

Adds a gesture event handler to scrollbars and sends gestures beginning
over a scrollbar to this handler to allow touch scrolling scrollbars.

Source/WebCore:

Test: fast/events/touch/gesture/gesture-scrollbar.html

* page/EventHandler.cpp:
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::isScrollbarHandlingGestures):
(WebCore):
* page/EventHandler.h:
(EventHandler):
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::Scrollbar):
(WebCore):
(WebCore::Scrollbar::gestureEvent):
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::mouseUp):
(WebCore::Scrollbar::mouseDown):
* platform/Scrollbar.h:
(WebCore):
(Scrollbar):
* platform/ScrollbarTheme.h:
(WebCore::ScrollbarTheme::hitTest):
* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::hitTest):
* platform/ScrollbarThemeComposite.h:
(ScrollbarThemeComposite):
* platform/qt/ScrollbarThemeQStyle.cpp:
(WebCore::ScrollbarThemeQStyle::hitTest):
* platform/qt/ScrollbarThemeQStyle.h:
(ScrollbarThemeQStyle):

Source/WebKit/chromium:

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

LayoutTests:

* fast/events/touch/gesture/gesture-scrollbar-expected.txt: Added.
* fast/events/touch/gesture/gesture-scrollbar.html: Added.

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

7 years ago[Chromium] Removed incorrect baseline.
dglazkov@chromium.org [Fri, 16 Nov 2012 18:15:33 +0000 (18:15 +0000)]
[Chromium] Removed incorrect baseline.

* platform/chromium-mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Removed.

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

7 years ago[Chromium-Android] Stack overflow in MediaControlsChromiumAndroid.cpp
wangxianzhu@chromium.org [Fri, 16 Nov 2012 18:12:58 +0000 (18:12 +0000)]
[Chromium-Android] Stack overflow in MediaControlsChromiumAndroid.cpp
https://bugs.webkit.org/show_bug.cgi?id=102444

Reviewed by Adam Barth.

No new tests. Have been covered by many existing layout tests.

* html/shadow/MediaControlsChromiumAndroid.cpp:
(WebCore::MediaControls::create): Calls createControls instead of itself.

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

7 years agoStyleResolver: Optimize sharing candidate evaluation for elements with shared attribu...
akling@apple.com [Fri, 16 Nov 2012 17:54:27 +0000 (17:54 +0000)]
StyleResolver: Optimize sharing candidate evaluation for elements with shared attribute data.
<http://webkit.org/b/102507>

Reviewed by Antti Koivisto.

When evaluating two elements as potential style sharing candidate, we have a whole bunch of code
comparing the various attributes that would prevent sharing.

If the two elements both share the same ElementAttributeData, we can skip all those checks
since they are guaranteed to have equal attributes.

Cuts the time spent in canShareStyleWithElement() by 25% on the HTML5 spec at <http://whatwg.org/c>.

* css/StyleResolver.cpp:
(WebCore::haveIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):

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

7 years ago[EFL][GTK] Build fix after r134955
mrobinson@webkit.org [Fri, 16 Nov 2012 17:51:30 +0000 (17:51 +0000)]
[EFL][GTK] Build fix after r134955
https://bugs.webkit.org/show_bug.cgi?id=102527

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Fix the EFL,GTK debug bulid fails after r134955.

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

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

7 years ago Private Browsing is a per-page setting that sets a global value
ap@apple.com [Fri, 16 Nov 2012 17:46:50 +0000 (17:46 +0000)]
    Private Browsing is a per-page setting that sets a global value
        https://bugs.webkit.org/show_bug.cgi?id=67870

        Reviewed by Sam Weinig.

        Make ResourceHandle{Mac,CFNet} use context to access storage session.

        * WebCore.exp.in: We track less session state in WebCore now, so we need fewer
        exports.

        * loader/FrameNetworkingContext.h: Added an OVERRIDE.

        * page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled): WebCore
        no longer keeps track of a globally enabled private CFNetwork storage session.

        * platform/CookiesStrategy.h: Added defaultCookieStorage(). Some cookie jar methods
        don't have a NetworkingContext pointer, and have to use whatever a client expects
        them to do. Perhaps we should move those methods away from WebCore eventually.

        * platform/network/NetworkingContext.h: Added storageSession().

        * platform/network/ResourceHandle.h: Removed sttaic methods for dealing with global
        sessions.

        * platform/network/ResourceHandleInternal.h: Added m_storageSession. We need to
        remember it post-creation to do things in willSendRequest. Alternatively, we could
        keep a reference to NetworkingContext itself.

        * platform/network/cf/CookieJarCFNet.cpp:
        (WebCore::setCookiesFromDOM): currentCFHTTPCookieStorage now needs a context,
        there is no globally current one any more. Also, we don't really expect cookie
        stirage to be 0 when not using NSURLConnection.
        (WebCore::cookiesForDOM): Ditto.
        (WebCore::cookieRequestHeaderFieldValue): Ditto.
        (WebCore::cookiesEnabled): Ditto.
        (WebCore::getRawCookies): Ditto.
        (WebCore::deleteCookie): Ditto.
        (WebCore::getHostnamesWithCookies): Ditto.
        (WebCore::deleteCookiesForHostname): Ditto.
        (WebCore::deleteAllCookies): Ditto.
        * platform/network/cf/CookieStorageCFNet.cpp:
        (WebCore::currentCFHTTPCookieStorage): Use a context.
        (WebCore::defaultCFHTTPCookieStorage): Except for Windows-only override session,
        this is implemented in a strategy.
        (WebCore::overridenCookieStorage): Exposed the override for WebKit use on Windows.

        * platform/network/cf/CookieStorageCFNet.h: Ditto.

        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::willSendRequest): Use storage session from the context, not global one.
        (WebCore::makeFinalRequest): Merged this into the only remaining caller. This
        function didn't really make any sense on its own.
        (WebCore::shouldRelaxThirdPartyCookiePolicy): Factored out of createCFURLConnection
        to match Mac.
        (WebCore::ResourceHandle::createCFURLConnection): While merging makeFinalRequest()
        in, removed some seemingly nonsensical code that was getting and immediately re-applying
        cookie storage accept policy.
        (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willSendRequest): Apply the stored session, not global one.
        (WebCore::ResourceHandle::storageSession): An accessor for static methods that cannot
        access "d".
        (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willLoadFromCache): Don't call makeFinalRequest here.
        It didn't match Mac, and nothing in makeFinalRequest should have affected the result.

        * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
        This function used to apply current storage session to every request for no apparent
        reason.

        * platform/network/mac/CookieJarMac.mm:
        (WebCore::cookiesForDOM): Changed to pass context to currentCFHTTPCookieStorage.
        (WebCore::cookieRequestHeaderFieldValue): Ditto.
        (WebCore::setCookiesFromDOM): Ditto.
        (WebCore::cookiesEnabled): Ditto.
        (WebCore::getRawCookies): Ditto.
        (WebCore::deleteCookie): Ditto.
        (WebCore::getHostnamesWithCookies): Ditto.
        (WebCore::deleteCookiesForHostname): Ditto.
        (WebCore::deleteAllCookies): Ditto.
        * platform/network/mac/ResourceHandleMac.mm:
        (WebCore::shouldRelaxThirdPartyCookiePolicy): There was no need to special case
        null currentCFHTTPCookieStorage, WKSI handles that internally. Added a context
        argument, so that the function can access current session.
        (WebCore::ResourceHandle::createNSURLConnection): Updated for other code changes.
        (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willLoadFromCache): Style fix.
        (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession()
        for use in willSendRequest.
        (WebCore::ResourceHandle::willSendRequest): Use stored session, not global one.

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

7 years ago[Chromium] Land a proper fix for r134939.
dglazkov@chromium.org [Fri, 16 Nov 2012 17:34:53 +0000 (17:34 +0000)]
[Chromium] Land a proper fix for r134939.

* WebCore.gyp/WebCore.gyp: Added exclusion for "atk".
* WebCore.gypi: Put the accessibility/atk directory back into WebCore.gypi.

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

7 years ago[Chromium] Just yank the whole accessibility/atk dir out of WebCore.gypi.
dglazkov@chromium.org [Fri, 16 Nov 2012 17:19:27 +0000 (17:19 +0000)]
[Chromium] Just yank the whole accessibility/atk dir out of WebCore.gypi.

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

7 years ago[BlackBerry] Use proper keycode value for space instead of hardcoded value.
mifenton@rim.com [Fri, 16 Nov 2012 16:57:45 +0000 (16:57 +0000)]
[BlackBerry] Use proper keycode value for space instead of hardcoded value.
https://bugs.webkit.org/show_bug.cgi?id=102518

Reviewed by Rob Buis.

Remove hard coded value for space.

Reviewed Internally by Gen Mak.

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

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

7 years ago[Chromium] Updated WebCore.gypi after r134939.
dglazkov@chromium.org [Fri, 16 Nov 2012 16:56:47 +0000 (16:56 +0000)]
[Chromium] Updated WebCore.gypi after r134939.

* WebCore.gypi: Renamed acessibility/gtk to accessibility/atk.

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

7 years ago[GTK] Move CredentialBackingStore usage from GtkAuthenticationDialog to ResourceHandl...
commit-queue@webkit.org [Fri, 16 Nov 2012 16:40:01 +0000 (16:40 +0000)]
[GTK] Move CredentialBackingStore usage from GtkAuthenticationDialog to ResourceHandleSoup
https://bugs.webkit.org/show_bug.cgi?id=101840

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-11-16
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Make ResourceHandleSoup aware of per-session CredentialStorage and persistent CredentialStorage.
Persistent credential storage interaction is moved from GtkAuthenticationDialog, so that it can
be used whether or not GtkAuthenticationDialog is used or not. We try to properly handle redirects
in the manner that the CFNet backend does.

No new tests. There are tests for this behavior, but they cannot be activated until we finish
plumbing this through to the API layer. Once that patch lands, the tests will be turned on.

* platform/gtk/GtkAuthenticationDialog.cpp: No longer store credentials into the persistent
storage manually, instead rely on ResourceHandleSoup. Also, we no longer get proposed credentials
from the persistent storage here as well. They are pre-loaded by the ResourceHanndle.
* platform/gtk/GtkAuthenticationDialog.h: Remove callbacks and members associated with saving
credentials to the persistent credential store.
* platform/network/ResourceHandle.h:
(ResourceHandle): Add a method which is used to continue asynchronously after looking for
proposed credentials in the persistent credential store.
* platform/network/ResourceHandleInternal.h: Add a member which tracks persistent credentials to be added once we know
an authentication succeeded.
* platform/network/gtk/CredentialBackingStore.cpp:
(CredentialForChallengeAsyncReadyCallbackData): Added this data structure used for asynchronous access
of stored credentials.
(WebCore::credentialForChallengeAsyncReadyCallback): Ditto for this callback.
(WebCore::CredentialBackingStore::credentialForChallenge): Make this method asynchronous.
* platform/network/gtk/CredentialBackingStore.h:
(CredentialBackingStore): Update method signatures for for making credentialForChallenge asynchronous.
* platform/network/soup/AuthenticationChallenge.h:
(WebCore::AuthenticationChallenge::setProposedCredential): Added a setter so that ResourceHandleSoup
can set proposed credentials from the persistent credential store.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::gotHeadersCallback): For GTK+ save any pending credential in the persistent credential storage
if the authentication succeeded.
(WebCore::applyAuthenticationToRequest): Added this method which generically embeds stored credentials
in the request URI. This is the method that Soup uses to override any soup-stored session credential.
(WebCore::restartedCallback): Strip credentials for requests that span a security origin. Handle
authenticating requests from the session store.
(WebCore::createSoupRequestAndMessageForHandle): Make the local request reference mutable.
(WebCore::ResourceHandle::start): Remove some code which is now part of applyAuthenticationToRequest.
Call applyAuthenticationToRequest and clear the user and password members like the CFNet backend does.
(WebCore::getCredentialFromPersistentStoreCallback): Added this callback for getting persistently stored credentials.
(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge): Split out didReceiveAuthenticationChallenge
into this asynchronous bit.
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): For GTK+ continue handling this situation after
first looking in the persistent credential store.
(WebCore::ResourceHandle::receivedCredential): Store session credentials in the session storage, which is
at the moment a redundant version of the Soup session storage and also prepare any persistent credentials
for storage later (see gotHeadersCallback).

Source/WebKit/gtk:

Enable the CredentialStore by default for the WebKit1 GTK+ port. Before this value
didn't have an bearing on whether or not the persistent credential storage was used.
Now is does.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::shouldUseCredentialStorage): Enable credential storage by default.

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

7 years agoUpdate DOMException name: TypeMismatchError
arv@chromium.org [Fri, 16 Nov 2012 16:22:08 +0000 (16:22 +0000)]
Update DOMException name: TypeMismatchError
https://bugs.webkit.org/show_bug.cgi?id=102418

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 17 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

* dom/DOMCoreException.cpp:
(WebCore):
* dom/ExceptionCode.h:

LayoutTests:

Updated tests and expectations.

* editing/selection/extend-expected.txt:
* fast/dom/Element/attr-param-typechecking-expected.txt:
* fast/dom/Geolocation/argument-types-expected.txt:
* fast/dom/Geolocation/not-enough-arguments-expected.txt:
* fast/dom/Geolocation/script-tests/argument-types.js:
(test):
* fast/dom/HTMLSelectElement/select-selectedIndex-expected.txt:
* fast/dom/HTMLSelectElement/select-selectedIndex-multiple-expected.txt:
* fast/js/select-options-add-expected.txt:
* fast/mediastream/RTCIceCandidate-expected.txt:
* fast/mediastream/RTCPeerConnection-expected.txt:
* fast/mediastream/RTCSessionDescription-expected.txt:
* platform/chromium/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/efl/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/gtk/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/mac/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/qt/fast/dynamic/insertAdjacentElement-expected.txt:
* security/crypto-random-values-types-expected.txt:
* svg/dom/SVGTransformList-expected.txt:

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

7 years ago[EFL][WK2] White flicker when scrolling big pages with dark background on slower...
commit-queue@webkit.org [Fri, 16 Nov 2012 16:19:54 +0000 (16:19 +0000)]
[EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.
https://bugs.webkit.org/show_bug.cgi?id=102000

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-16
Reviewed by Kenneth Rohde Christiansen.

Add matching of view background color to the page background. This helps to reduce
visibility of flicker during scrolling/scaling/repainting where page tiles are not
ready. View background color matching is disabled by default and can be enabled
with new API function ewk_view_draws_page_background_set .
View background color can interfere with semi-transparent pages and should be
disabled by default.
Upstreaming changes by Youngtaeck Song(youngtaeck.song@samsung.com).

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::displayTimerFired):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl::setDrawsBackground):
(EwkViewImpl):
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_draws_page_background_set):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
(WebKit::LayerTreeCoordinatorProxy::setBackgroundColor):
(WebKit):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
(LayerTreeCoordinatorProxy):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::paintToCurrentGLContext):
(WebKit::LayerTreeRenderer::paintToGraphicsContext):
(WebKit::LayerTreeRenderer::setBackgroundColor):
(WebKit):
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
(LayerTreeRenderer):
(WebKit::LayerTreeRenderer::setDrawsBackground):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::setBackgroundColor):
(WebKit):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setBackgroundColor):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::mainFrameDidLayout):
* WebProcess/WebPage/WebPage.h:
(WebPage):

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

7 years agoCoordinated Graphics: support the "freeze animations" API
kbalazs@webkit.org [Fri, 16 Nov 2012 16:12:15 +0000 (16:12 +0000)]
Coordinated Graphics: support the "freeze animations" API
https://bugs.webkit.org/show_bug.cgi?id=100703

Reviewed by Noam Rosenthal.

Typo fix after previous patch.

No new tests, it's just a typo that only takes effect in the browser.

* platform/graphics/GraphicsLayerAnimation.cpp:
(WebCore::GraphicsLayerAnimation::GraphicsLayerAnimation):
Initialize members.

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

7 years ago[WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with...
commit-queue@webkit.org [Fri, 16 Nov 2012 16:01:48 +0000 (16:01 +0000)]
[WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with other WebKit ports.
https://bugs.webkit.org/show_bug.cgi?id=101748

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Remove and rename files related to Accessibility from WebPage/gtk to WebPage/atk.

* GNUmakefile.am:
* GNUmakefile.list.am:
* WebProcess/WebPage/atk/WebPageAccessibilityObject.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.h.
(WebKit):
(_WebPageAccessibilityObject):
(_WebPageAccessibilityObjectClass):
* WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp.
(accessibilityRootObjectWrapper):
(webPageAccessibilityObjectInitialize):
(webPageAccessibilityObjectGetIndexInParent):
(webPageAccessibilityObjectGetNChildren):
(webPageAccessibilityObjectRefChild):
(web_page_accessibility_object_init):
(web_page_accessibility_object_class_init):
(webPageAccessibilityObjectNew):
(webPageAccessibilityObjectRefresh):

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

7 years agoadd 7 bit strings capabilities to the v8 binding layer
commit-queue@webkit.org [Fri, 16 Nov 2012 15:47:06 +0000 (15:47 +0000)]
add 7 bit strings capabilities to the v8 binding layer
https://bugs.webkit.org/show_bug.cgi?id=91850

Patch by Dan Carney <dcarney@google.com> on 2012-11-16
Reviewed by Adam Barth.

This change enables the v8 binding layer to make use of webkit's
8 bit string capabilities. Using 8 bit strings leads to certain
benchmark performance improvemnts as can be seen in
https://bug-91850-attachments.webkit.org/attachment.cgi?id=163334.

No new tests.  Test coverage already extensive.

* bindings/v8/V8PerIsolateData.cpp:
(WebCore::V8PerIsolateData::visitExternalStrings):
* bindings/v8/V8StringResource.cpp:
(StringTraits):
(WebCore::false):
(WebCore):
(WebCore::true):
(WebCore::v8StringToWebCoreString):
* bindings/v8/V8ValueCache.cpp:
(WebCore::makeExternalString):
(WebCore::WebCoreStringResourceBase::toWebCoreStringResourceBase):
(WebCore):
(WebCore::WebCoreStringResourceBase::visitStrings):
* bindings/v8/V8ValueCache.h:
(WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::~WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::atomicString):
(WebCore::WebCoreStringResourceBase::memoryConsumption):
(WebCoreStringResource16):
(WebCore::WebCoreStringResource16::WebCoreStringResource16):
(WebCore):
(WebCoreStringResource8):
(WebCore::WebCoreStringResource8::WebCoreStringResource8):

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

7 years agoUpdate DOMException name: InvalidAccessError
arv@chromium.org [Fri, 16 Nov 2012 15:44:12 +0000 (15:44 +0000)]
Update DOMException name: InvalidAccessError
https://bugs.webkit.org/show_bug.cgi?id=102400

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 15 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

* dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

* editing/undomanager/undomanager-reenter-expected.txt:
* editing/undomanager/undomanager-reenter.html:
* editing/undomanager/undoscopehost-use-after-free-expected.txt:
* editing/undomanager/undoscopehost-use-after-free.html:
* fast/css/CSSPrimitiveValue-exceptions-expected.txt:
* fast/css/getFloatValueForUnit-expected.txt:
* fast/css/getFloatValueForUnit.html:
* fast/css/resources/CSSPrimitiveValue-exceptions.js:
* fast/dom/XMLSerializer-doctype2-expected.txt:
* fast/dom/XMLSerializer-doctype2.html:
* fast/dom/setPrimitiveValue-exceptions-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-sync-disabled-expected.txt:
* http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
* http/tests/media/media-source/video-media-source-duration-changed-expected.txt:
* http/tests/websocket/tests/hybi/close-expected.txt:
* http/tests/websocket/tests/hybi/close.html:
* platform/chromium-mac/fast/dom/setPrimitiveValue-exceptions-expected.txt:
* platform/chromium-win/fast/dom/setPrimitiveValue-exceptions-expected.txt:
* webintents/web-intents-api-expected.txt:
* webintents/web-intents-api.html:

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

7 years ago[Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform...
achicu@adobe.com [Fri, 16 Nov 2012 15:39:12 +0000 (15:39 +0000)]
[Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform compiled program
https://bugs.webkit.org/show_bug.cgi?id=102414

Reviewed by Noam Rosenthal.

Source/WebCore:

Added WebCore classes needed for the WebKit2 implementation of Texture Mapper to keep a reference to the
platform compiled custom filter. It is just used to maintain the life-time of the objects. WebKit2 injects a
client in TextureMapperPlatformCompiledProgram and receives a callback when the custom filter program is not
used to render any layer on the page.

Note that CustomFilterValidatedProgram are reused across multiple elements of the same page. Also, the instances
are reused across frames, so animations should reuse the same pre-validated program. In this case, the mechanism is
extended and reused in the platform compositor.

No new tests, existing tests for CSS Custom Filters already cover this path.

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.pri:
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore):
* platform/graphics/filters/CustomFilterValidatedProgram.h:
(WebCore):
(CustomFilterValidatedProgram):
* platform/graphics/filters/texmap/CustomFilterValidatedProgramTextureMapper.cpp: Added.
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram): Platform implementation for creating and deleting the reference.
(WebCore::CustomFilterValidatedProgram::platformInit):
(WebCore::CustomFilterValidatedProgram::platformDestroy):
* platform/graphics/filters/texmap/TextureMapperPlatformCompiledProgram.h: Added.
(WebCore):
(TextureMapperPlatformCompiledProgramClient):
(WebCore::TextureMapperPlatformCompiledProgramClient::ref):
(WebCore::TextureMapperPlatformCompiledProgramClient::deref):
(TextureMapperPlatformCompiledProgram):
Stores a link to a TextureMapperPlatformCompiledProgramClient. It's main purpose is to call unref on the client when
the shader is not needed anymore. WebKit2 can use that to delete the corresponding shader from the compositor side.
(WebCore::TextureMapperPlatformCompiledProgram::create):
(WebCore::TextureMapperPlatformCompiledProgram::setClient): Used by WebKit2 to inject the platform client.
(WebCore::TextureMapperPlatformCompiledProgram::client):
(WebCore::TextureMapperPlatformCompiledProgram::TextureMapperPlatformCompiledProgram):

Source/WebKit2:

This is the first part of shader caching implementation for the Custom Filters in WK2 LayerTreeCoordinator.
In this patch it will just make the LayerTreeCoordinator knowledgeable about the life-time
of the custom filter programs. It can allocate IDs for the filters and it also gets a callback when the
filters are not needed anymore.

The UI process is still recreating the shader every time, but https://bugs.webkit.org/show_bug.cgi?id=101801
will fix that and try to reuse existing custom filters.

* CMakeLists.txt:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
* Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Added.
(WebKit):
(WebKit::WebCustomFilterProgramProxy::~WebCustomFilterProgramProxy):
* Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Added.
(WebKit):
(WebCustomFilterProgramProxyClient):
(WebCustomFilterProgramProxy):
(WebKit::WebCustomFilterProgramProxy::create):
(WebKit::WebCustomFilterProgramProxy::id):
(WebKit::WebCustomFilterProgramProxy::refFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::derefFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::setClient):
(WebKit::WebCustomFilterProgramProxy::client):
(WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
* Target.pri:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::syncLayerFilters):
(WebKit):
(WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
(WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
(WebKit::LayerTreeCoordinator::disconnectCustomFilterPrograms):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):

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

7 years agoShort-circuit Element::hasEquivalentAttributes() if elements share attribute data.
akling@apple.com [Fri, 16 Nov 2012 15:21:40 +0000 (15:21 +0000)]
Short-circuit Element::hasEquivalentAttributes() if elements share attribute data.
<http://webkit.org/b/102498>

Reviewed by Antti Koivisto.

Add a fast path to hasEquivalentAttributes() that checks if both elements are using
the same ElementAttributeData.

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

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

7 years ago[Qt][Mac] Fix the build after r124873
commit-queue@webkit.org [Fri, 16 Nov 2012 14:58:37 +0000 (14:58 +0000)]
[Qt][Mac] Fix the build after r124873
https://bugs.webkit.org/show_bug.cgi?id=102475

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2012-11-16
Reviewed by Noam Rosenthal.

Change the CoordinatedImageBackingID typedef from uintptr_t to uint64_t.

* Shared/WebLayerTreeInfo.h:
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:

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

7 years ago[Qt] Adding a null pointer check for currentContext to GraphicsContext3DQt.
zeno.albisser@digia.com [Fri, 16 Nov 2012 14:55:36 +0000 (14:55 +0000)]
[Qt] Adding a null pointer check for currentContext to GraphicsContext3DQt.
https://bugs.webkit.org/show_bug.cgi?id=102360

QOpenGLContext::currentContext() will return null, in case there is
no current context. Therefore currentContext must be null-checked
before it can be reused.
Making a context current on a null-surface on the other hand is
perfectly possible.

Reviewed by Kenneth Rohde Christiansen.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::blitMultisampleFramebufferAndRestoreContext):

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

7 years agoWeb Inspector: Workaround to show shortcuts for panels that hasn't been loaded.
commit-queue@webkit.org [Fri, 16 Nov 2012 14:38:16 +0000 (14:38 +0000)]
Web Inspector: Workaround to show shortcuts for panels that hasn't been loaded.
https://bugs.webkit.org/show_bug.cgi?id=102488

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-16
Reviewed by Vsevolod Vlasov.

Panels are lazily loaded / instantiated.
Panel constructors register keyboard shortcuts.

When user open shortcuts screen all panel should be loaded.
Otherwise some shortcuts will be missing.

* inspector/front-end/ShortcutsScreen.js: Added callback invokation.
* inspector/front-end/inspector.js:
Provided callback that loads all panels.

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

7 years ago[EFL] Gardening failure cases on EFL build bots
dominik.rottsches@intel.com [Fri, 16 Nov 2012 14:36:48 +0000 (14:36 +0000)]
[EFL] Gardening failure cases on EFL build bots
https://bugs.webkit.org/show_bug.cgi?id=102496

Unreviewed EFL gardening.

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-11-16

* platform/efl-wk1/fast/media/mq-js-media-except-02-expected.png: Removed.
* platform/efl-wk1/fast/media/mq-js-media-except-03-expected.png: Removed.
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:
* platform/efl/fast/media/mq-js-media-except-02-expected.png: Added.
* platform/efl/fast/media/mq-js-media-except-02-expected.txt: Added.
* platform/efl/fast/media/mq-js-media-except-03-expected.png: Added.
* platform/efl/fast/media/mq-js-media-except-03-expected.txt: Added.

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

7 years agoUnreviewed GTK gardening, rebaselining after r134859.
zandobersek@gmail.com [Fri, 16 Nov 2012 14:26:37 +0000 (14:26 +0000)]
Unreviewed GTK gardening, rebaselining after r134859.

* platform/gtk/fast/media/mq-js-media-except-02-expected.txt: Added.
* platform/gtk/fast/media/mq-js-media-except-03-expected.txt: Added.

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

7 years agoUnreviewed. Help bugzilla find me.
yael@webkit.org [Fri, 16 Nov 2012 14:00:12 +0000 (14:00 +0000)]
Unreviewed. Help bugzilla find me.

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

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

7 years ago[V8] Remove IsSubType() from CodeGeneratorV8.pm
haraken@chromium.org [Fri, 16 Nov 2012 13:59:50 +0000 (13:59 +0000)]
[V8] Remove IsSubType() from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102348

Reviewed by Adam Barth.

CodeGenerator.pm has IsStrictSubType(). CodeGeneratorV8.pm should use it.

No tests. No change in behavior.

* bindings/scripts/CodeGenerator.pm:
(IsSubType):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateFunctionCallback):
(GenerateImplementationIndexer):
(GenerateToV8Converters):

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

7 years ago[EFL] Share WebKit-Gtk's Accessibility implementation with others WebKit ports.
mario@webkit.org [Fri, 16 Nov 2012 13:47:03 +0000 (13:47 +0000)]
[EFL] Share WebKit-Gtk's Accessibility implementation with others WebKit ports.
https://bugs.webkit.org/show_bug.cgi?id=99578

Reviewed by Martin Robinson.

Renamed WebCore/accessibility/gtk to WebCore/accessibility/atk.

* GNUmakefile.am:
* GNUmakefile.list.am:
* accessibility/atk/AXObjectCacheAtk.cpp: Renamed from
Source/WebCore/accessibility/gtk/AXObjectCacheAtk.cpp.
* accessibility/atk/AccessibilityObjectAtk.cpp: Renamed from
Source/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp.
* accessibility/atk/WebKitAccessibleHyperlink.cpp: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleHyperlink.cpp.
* accessibility/atk/WebKitAccessibleHyperlink.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleHyperlink.h.
* accessibility/atk/WebKitAccessibleInterfaceAction.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceAction.cpp.
* accessibility/atk/WebKitAccessibleInterfaceAction.h: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceAction.h.
* accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp.
* accessibility/atk/WebKitAccessibleInterfaceComponent.h: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceComponent.h.
* accessibility/atk/WebKitAccessibleInterfaceDocument.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceDocument.cpp.
* accessibility/atk/WebKitAccessibleInterfaceDocument.h: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceDocument.h.
* accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceEditableText.cpp.
* accessibility/atk/WebKitAccessibleInterfaceEditableText.h:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceEditableText.h.
* accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.cpp.
* accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.h:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.h.
* accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHypertext.cpp.
* accessibility/atk/WebKitAccessibleInterfaceHypertext.h: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHypertext.h.
* accessibility/atk/WebKitAccessibleInterfaceImage.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceImage.cpp.
* accessibility/atk/WebKitAccessibleInterfaceImage.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceImage.h.
* accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:
Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceSelection.cpp.
* accessibility/atk/WebKitAccessibleInterfaceSelection.h: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceSelection.h.
* accessibility/atk/WebKitAccessibleInterfaceTable.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceTable.cpp.
* accessibility/atk/WebKitAccessibleInterfaceTable.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceTable.h.
* accessibility/atk/WebKitAccessibleInterfaceText.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceText.cpp.
* accessibility/atk/WebKitAccessibleInterfaceText.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceText.h.
* accessibility/atk/WebKitAccessibleInterfaceValue.cpp: Renamed
from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceValue.cpp.
* accessibility/atk/WebKitAccessibleInterfaceValue.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceValue.h.
* accessibility/atk/WebKitAccessibleUtil.cpp: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleUtil.cpp.
* accessibility/atk/WebKitAccessibleUtil.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleUtil.h.
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleWrapperAtk.cpp.
* accessibility/atk/WebKitAccessibleWrapperAtk.h: Renamed from
Source/WebCore/accessibility/gtk/WebKitAccessibleWrapperAtk.h.

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

7 years agoChanging pseudoClass (:indeterminate) should cause distribution
shinyak@chromium.org [Fri, 16 Nov 2012 13:39:37 +0000 (13:39 +0000)]
Changing pseudoClass (:indeterminate) should cause distribution
https://bugs.webkit.org/show_bug.cgi?id=101903

Reviewed by Dimitri Glazkov.

Source/WebCore:

<progress> and <input type="checkbox"> have 'indeterminate' state. When their state is changed, we have to
invalidate distribution if necessary. To check it, we collect a feature that :invalidate is used in select attributes.

For <input>, we also have to see 'type' is changed. According to the spec, :indeterminate should match only
progress element or <input type="checkbox">. So changing 'type' might also change :indeterminate state.

Tests: fast/dom/shadow/pseudoclass-update-indeterminate-input.html
       fast/dom/shadow/pseudoclass-update-indeterminate-progress.html

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::setIndeterminate):
* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::didElementStateChange):

LayoutTests:

I've used "-webkit-appearance: none" for progress element because of Bug 102459.
It prevents from testing progress element on Windows.

* fast/dom/shadow/pseudoclass-update-indeterminate-input-expected.html: Added.
* fast/dom/shadow/pseudoclass-update-indeterminate-input.html: Added.
* fast/dom/shadow/pseudoclass-update-indeterminate-progress-expected.html: Added.
* fast/dom/shadow/pseudoclass-update-indeterminate-progress.html: Added.

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

7 years agoFactorize the creation of primitive values with a pair into a function.
alexis@webkit.org [Fri, 16 Nov 2012 13:37:16 +0000 (13:37 +0000)]
Factorize the creation of primitive values with a pair into a function.
https://bugs.webkit.org/show_bug.cgi?id=102485

Reviewed by Antti Koivisto.

The pattern is already existing in various call sites inside CSSParser
and more will be added in the future (see bug 102104).

No new tests : It's a refactoring only, the tests should cover it.

* css/CSSParser.cpp:
(WebCore):
(WebCore::createPrimitiveValuePair):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillSize):
(WebCore::CSSParser::parseBorderImageRepeat):
(WebCore::CSSParser::parseBorderRadius):
(WebCore::CSSParser::parseCounter):

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

7 years agoExpand PlatformCookieJar interface to allow for other ports
pilgrim@chromium.org [Fri, 16 Nov 2012 13:35:47 +0000 (13:35 +0000)]
Expand PlatformCookieJar interface to allow for other ports
https://bugs.webkit.org/show_bug.cgi?id=102456

Reviewed by Adam Barth.

Add firstParty and cookieURL arguments to several functions to
prepare for integrating Chromium port into new PlatformCookieJar
interface.

* loader/CookieJar.cpp:
(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
* platform/network/PlatformCookieJar.h:
(WebCore):
* platform/network/cf/CookieJarCFNet.cpp:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
* platform/network/curl/CookieJarCurl.cpp:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
* platform/network/mac/CookieJarMac.mm:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
* platform/network/qt/CookieJarQt.cpp:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
* platform/network/soup/CookieJarSoup.cpp:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
* platform/network/win/CookieJarWin.cpp:
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

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

7 years agoRenderGrid should have a function to resolve grid position
jchaffraix@webkit.org [Fri, 16 Nov 2012 13:32:18 +0000 (13:32 +0000)]
RenderGrid should have a function to resolve grid position
https://bugs.webkit.org/show_bug.cgi?id=102441

Reviewed by Ojan Vafai.

The code was doing this conversion implicitly inside RenderGrid::findChildLogicalPosition.
Also note that we also provided a fallback by returning LayoutPoint() (ie the (0, 0) position
on the grid) if we couldn't handle the value. The explicit conversion is needed in order to
support render areas and add a proper grid model to RenderGrid.

No expected change in behavior.

* rendering/RenderGrid.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::resolveGridPosition):
Added this new function to handle the conversion. We re-use Length but should never see
a lot of the <length> values so I added some ASSERTs to enforce and catch that.

(WebCore::RenderGrid::findChildLogicalPosition):
Simplified the function now that it just use resolveGridPosition.

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

7 years ago[V8] Increment the amount of externally allocated memory for the receiving V8 isolate...
commit-queue@webkit.org [Fri, 16 Nov 2012 13:19:56 +0000 (13:19 +0000)]
[V8] Increment the amount of externally allocated memory for the receiving V8 isolate when transferring ArrayBuffer
https://bugs.webkit.org/show_bug.cgi?id=94463

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-11-16
Reviewed by Kentaro Hara.

Call AdjustAmountOfExternalAllocatedMemory when V8ArrayBuffer is deserialized and transferred.

.:

* ManualTests/typed-array-memory.html:

Source/WebCore:

Test: ManualTests/typed-array-memory.html

* bindings/v8/SerializedScriptValue.cpp:

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

7 years ago[EFL][WK2] Unset the tooltip when the web process has crashed
commit-queue@webkit.org [Fri, 16 Nov 2012 12:53:42 +0000 (12:53 +0000)]
[EFL][WK2] Unset the tooltip when the web process has crashed
https://bugs.webkit.org/show_bug.cgi?id=102232

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-11-16
Reviewed by Gyuyoung Kim.

Emit 'tooltip,text,unset' signal to unset the tooltip
when the web process has crashed.

* UIProcess/efl/PageClientBase.cpp:
(WebKit::PageClientBase::processDidCrash):

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

7 years agoUnreviewed, rolling out r134694.
commit-queue@webkit.org [Fri, 16 Nov 2012 12:37:22 +0000 (12:37 +0000)]
Unreviewed, rolling out r134694.
http://trac.webkit.org/changeset/134694
https://bugs.webkit.org/show_bug.cgi?id=102481

it made API test crash on EFL port (Requested by gyuyoung on
#webkit).

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

Source/WebCore:

* platform/efl/RenderThemeEfl.cpp:
(WebCore::fillColorsFromEdjeClass):
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::RenderThemeEfl):
* platform/efl/RenderThemeEfl.h:
(RenderThemeEfl):

Source/WebKit/efl:

* DefaultTheme/default.edc:

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

7 years agoWeb Inspector: Move call stack generation out of bindings.
mkwst@chromium.org [Fri, 16 Nov 2012 12:32:53 +0000 (12:32 +0000)]
Web Inspector: Move call stack generation out of bindings.
https://bugs.webkit.org/show_bug.cgi?id=101331

Reviewed by Yury Semikhatsky.

Currently, we generate stack traces for console messages at each call
site. Bug 100650 has the end goal of moving all stack trace generation
inside of the Inspector in order to ensure that we never send a console
message without a stack trace if it's possible to generate one. This
also ensures that we never generate unused call stacks.

This patch is the first step in that direction, moving stack trace
generation out of the Console bindings, and into either Console or
InspectorConsoleAgent.

No visible change in behavior should result; this refactoring should
continue to pass all existing inspector tests.

* bindings/js/JSConsoleCustom.cpp:
(WebCore::JSConsole::profile):
(WebCore::JSConsole::profileEnd):
    Adjust custom JSC Console bindings to drop call stack generation.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallWith):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateCallWith):
    Drop call stack generation from JSC and V8 bindings.
* bindings/scripts/CodeGeneratorGObject.pm:
    Skip timeEnd explicitly in these bindings; it used to include
    ScriptArguments, which autoskipped it. Now it doesn't, so it needs
    to be called out on its own.
* bindings/v8/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStackForConsole):
(WebCore::createScriptCallStack):
(WebCore):
* bindings/v8/ScriptCallStackFactory.h:
(WebCore):
    Add 'createScriptCallStack(ScriptState*, size_t)' to V8's
    ScriptCallStackFactory in order to match JCS' implementation.
    It simply delegates to 'createScriptCallStackForConsole', which
    now also accepts a 'maxStackSize' parameter.
* bindings/v8/custom/V8ConsoleCustom.cpp:
(WebCore::V8Console::traceCallback):
(WebCore::V8Console::assertCallback):
(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):
    Adjust custom V8 bindings to drop call stack generation.
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::addMessageToConsole):
    With the eventual goal of getting rid of the call stack parameter
    entirely, this patch drops it from one version of
    'addMessageToConsole' (replacing it with ScriptState*), and creates
    a new version that only accepts a call stack. We should be able to
    migrate most (all?) external call sites over to the arguments
    version in future patches.
(WebCore):
(WebCore::InspectorConsoleAgent::count):
    Count takes 'ScriptState*' instead of a call stack, and generates
    the stack as needed.
* inspector/InspectorConsoleAgent.h:
(InspectorConsoleAgent):
* inspector/InspectorConsoleInstrumentation.h:
(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore):
(WebCore::InspectorInstrumentation::consoleCount):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::consoleCountImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
    Changes the InspectorInstrumentation pipeline to match the
    InspectorConsoleAgent changes.
* page/Console.cpp:
(WebCore::Console::addMessage):
    We now (always) generate one frame of a stack trace in order to
    populate line numbers and caller URLs. If we need to print the whole
    trace here, we generate a full stack.
(WebCore::Console::debug):
(WebCore::Console::error):
(WebCore::Console::info):
(WebCore::Console::log):
(WebCore::Console::warn):
(WebCore::Console::dir):
(WebCore::Console::dirxml):
(WebCore::Console::clear):
(WebCore::Console::trace):
(WebCore::Console::assertCondition):
(WebCore::Console::count):
(WebCore::Console::markTimeline):
(WebCore::Console::timeEnd):
(WebCore::Console::timeStamp):
(WebCore::Console::group):
(WebCore::Console::groupCollapsed):
(WebCore::Console::profile):
(WebCore::Console::profileEnd):
    s/ScriptCallStack/ScriptState*/g. Also, printing the stack trace
    has been moved out of 'trace' and into 'addMessage'.
* page/Console.h:
(Console):
* page/Console.idl:
    Drop the call stack, add the script state.
* workers/WorkerContext.cpp:
(WebCore::WorkerContext::addMessageToWorkerConsole):
    Use the new, explicitly call stacked addMessageToConsole. We'll kill
    this in a future patch.

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

7 years agoAdd initiator to CachedResourceRequest.
commit-queue@webkit.org [Fri, 16 Nov 2012 12:21:57 +0000 (12:21 +0000)]
Add initiator to CachedResourceRequest.
https://bugs.webkit.org/show_bug.cgi?id=101935

Patch by Marja Hölttä <marja@chromium.org> on 2012-11-16
Reviewed by Adam Barth.

Motivation: Chromium needs to know which elements request a
resource (such as an image or a script) (bug 92761). In addition,
for exposing resource timing information (bug 84883) we need to
store the initiator, and this is the first step towards it.

No new tests: No visible change in behavior.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSCursorImageValue.cpp:
(WebCore::CSSCursorImageValue::cachedImage):
* css/CSSFontFaceSrcValue.cpp:
(WebCore::CSSFontFaceSrcValue::cachedFont):
* css/CSSImageSetValue.cpp:
(WebCore::CSSImageSetValue::cachedImageSet):
* css/CSSImageValue.cpp:
(WebCore::CSSImageValue::cachedImage):
* css/CSSImageValue.h:
(WebCore):
(CSSImageValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::loadPendingImage):
* css/StyleRuleImport.cpp:
(WebCore::StyleRuleImport::requestStyleSheet):
* css/WebKitCSSSVGDocumentValue.cpp:
(WebCore::WebKitCSSSVGDocumentValue::load):
* css/WebKitCSSShaderValue.cpp:
(WebCore::WebKitCSSShaderValue::cachedShader):
* dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestScript):
* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::process):
* html/parser/CSSPreloadScanner.cpp:
(WebCore::CSSPreloadScanner::emitRule):
* html/parser/CSSPreloadScanner.h:
(CSSPreloadScanner):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::PreloadTask::preload):
* loader/ImageLoader.cpp:
(WebCore::ImageLoader::updateFromElement):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestImage):
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::determineRevalidationPolicy):
(WebCore):
(WebCore::CachedResourceLoader::preload):
* loader/cache/CachedResourceLoader.h:
(WebCore):
(CachedResourceLoader):
* loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::CachedResourceRequest):
(WebCore):
(WebCore::CachedResourceRequest::~CachedResourceRequest):
(WebCore::CachedResourceRequest::setInitiator):
(WebCore::CachedResourceRequest::initiatorName):
(WebCore::CachedResourceRequest::initiatorDocument):
(WebCore::CachedResourceRequest::initiatorElement):
* loader/cache/CachedResourceRequest.h:
(WebCore):
(WebCore::CachedResourceRequest::setOptions):
(WebCore::CachedResourceRequest::defer):
(WebCore::CachedResourceRequest::setDefer):
(CachedResourceRequest):
* loader/cache/CachedResourceRequestInitiators.cpp: Copied from Source/WebCore/loader/cache/CachedResourceRequest.cpp.
(WebCore):
(WebCore::CachedResourceRequestInitiators::CachedResourceRequestInitiators):
* loader/cache/CachedResourceRequestInitiators.h: Copied from Source/WebCore/loader/cache/CachedResourceRequest.cpp.
(WebCore):
(CachedResourceRequestInitiators):
(WebCore::cachedResourceRequestInitiators):
* loader/icon/IconLoader.cpp:
(WebCore::IconLoader::startLoading):
* platform/ThreadGlobalData.cpp:
(WebCore::ThreadGlobalData::ThreadGlobalData):
* platform/ThreadGlobalData.h:
(WebCore):
(WebCore::ThreadGlobalData::cachedResourceRequestInitiators):
(ThreadGlobalData):
* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::requestImageResource):
* svg/SVGFontFaceUriElement.cpp:
(WebCore::SVGFontFaceUriElement::loadFont):
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::svgAttributeChanged):

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

7 years ago[chromium] Unreviewed gardening.
mkwst@chromium.org [Fri, 16 Nov 2012 12:19:12 +0000 (12:19 +0000)]
[chromium] Unreviewed gardening.

http/tests/security/sandboxed-iframe-form-top.html is leaking state into
the next test, and should have been skipped for Chromium as well as mac
in r134789. This patch remedies that oversight.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: don't show an Error when evaluating a watch expression results in...
yurys@chromium.org [Fri, 16 Nov 2012 12:04:52 +0000 (12:04 +0000)]
Web Inspector: don't show an Error when evaluating a watch expression results in an exception
https://bugs.webkit.org/show_bug.cgi?id=102470

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Dim watch expression and show "<not available>" as its value in cases when it evaluates
into an exception.

* English.lproj/localizedStrings.js:
* inspector/front-end/WatchExpressionsSidebarPane.js:
(WebInspector.WatchExpressionTreeElement.prototype.update):
* inspector/front-end/inspector.css:

LayoutTests:

Check that watch expression has value "<not available>" in case of exception
during its evaluation instead of a special style class tha has been removed.

* inspector/debugger/error-in-watch-expressions.html:

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

7 years agoWeb Inspector: Rollout 134404 134548 134552 Temporarily rolling out to ease merging.
vsevik@chromium.org [Fri, 16 Nov 2012 12:00:23 +0000 (12:00 +0000)]
Web Inspector: Rollout 134404 134548 134552 Temporarily rolling out to ease merging.
https://bugs.webkit.org/show_bug.cgi?id=102476

Unreviewed rolling out.

* English.lproj/localizedStrings.js:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/AdvancedSearchController.js:
* inspector/front-end/CallStackSidebarPane.js:
(WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleView.prototype._registerShortcuts):
* inspector/front-end/ElementsPanel.js:
(WebInspector.ElementsPanel):
(WebInspector.ElementsPanel.prototype._registerShortcuts):
* inspector/front-end/ElementsPanelDescriptor.js:
* inspector/front-end/GoToLineDialog.js:
(WebInspector.GoToLineDialog.install):
* inspector/front-end/KeyboardShortcut.js:
(WebInspector.KeyboardShortcut._keyName):
* inspector/front-end/Panel.js:
(WebInspector.Panel.prototype.registerShortcut):
(WebInspector.Panel.prototype.unregisterShortcut):
(WebInspector.PanelDescriptor.prototype.panel):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype._createDebugToolbar):
(WebInspector.ScriptsPanel.prototype._createButtonAndRegisterShortcuts):
* inspector/front-end/ScriptsPanelDescriptor.js:
* inspector/front-end/ShortcutsScreen.js:
(WebInspector.ShortcutsScreen):
(WebInspector.ShortcutsSection):
(WebInspector.ShortcutsSection.prototype._renderKey):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype.registerShortcuts):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._registerShortcuts):
* inspector/front-end/TimelinePanelDescriptor.js: Removed.
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._panelDescriptors):
(WebInspector._registerShortcuts):

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

7 years agoWeb Inspector: Memory Timeline Crash
commit-queue@webkit.org [Fri, 16 Nov 2012 11:35:19 +0000 (11:35 +0000)]
Web Inspector: Memory Timeline Crash
https://bugs.webkit.org/show_bug.cgi?id=102390

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-16
Reviewed by Vsevolod Vlasov.

Crash seems to be caused by IPC overflow.
Messages "ParsedScriptSource" are routed to
ResourceScriptMapping.prototype.addScript that process them in time
linear to number of already registered non-anonymous non-inline scripts.

Fixed this with replacing repreated filtering with "on-line" bucketing.

* inspector/front-end/ResourceScriptMapping.js:
(WebInspector.ResourceScriptMapping):
Removed duplicating initialization code.
(WebInspector.ResourceScriptMapping.prototype.addScript):
Added script bucketing by sourceURL/isInline parameters.
(WebInspector.ResourceScriptMapping.prototype._scriptsForSourceURL):
Avoid filterfig.
(WebInspector.ResourceScriptMapping.prototype._createUISourceCode):
Added outgoing muatable array safeguard.
(WebInspector.ResourceScriptMapping.prototype._reset):
Added type information and added two new maps.

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

7 years agoREGRESSION (r134774-r134779): fast/frames/detached-shadow-frame.html failing on Apple...
commit-queue@webkit.org [Fri, 16 Nov 2012 11:30:23 +0000 (11:30 +0000)]
REGRESSION (r134774-r134779): fast/frames/detached-shadow-frame.html failing on Apple Win 7 Release (Tests)
https://bugs.webkit.org/show_bug.cgi?id=102433

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-16
Reviewed by Dimitri Glazkov.

Need to include the Shadow DOM polyfill.js since not all ports
web expose the WebkitShadowRoot constructor.

* fast/frames/detached-shadow-frame.html:

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

7 years agoRunning TestWebKitAPI and webkit_unit_tests for Chromium Android should defer to...
peter@chromium.org [Fri, 16 Nov 2012 11:23:11 +0000 (11:23 +0000)]
Running TestWebKitAPI and webkit_unit_tests for Chromium Android should defer to the Chromium-sided test runner
https://bugs.webkit.org/show_bug.cgi?id=102245

Reviewed by Tony Chang.

When running TestWebKitAPI and webkit_unit_test for Chromium Android, defer
the actual running part to the test runner which lives on the Chromium side.
Re-implementing or even generalizing the device-interaction part in WebKit
is error prone and not worth the effort.

* Scripts/run-api-tests:
* Scripts/run-chromium-webkit-unit-tests:

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

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Fri, 16 Nov 2012 11:11:07 +0000 (11:11 +0000)]
[Qt] Unreviewed gardening.

* http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars-expected.txt: Updated after r134859.
* platform/qt/TestExpectations: Skip fast/frames/detached-shadow-frame.html, because ENABLE(SHADOW_DOM) is disabled.
* platform/qt/fast/media/mq-js-media-except-02-expected.txt: Updated after r134859.
* platform/qt/fast/media/mq-js-media-except-03-expected.txt: Updated after r134859.
* platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Revert r134754, because r134649 was reverted.
* platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Revert r134754, because r134649 was reverted.
* platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Revert r134754, because r134649 was reverted.

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

7 years agoUnreviewed. Rebaselined pixel results.
haraken@chromium.org [Fri, 16 Nov 2012 10:57:51 +0000 (10:57 +0000)]
Unreviewed. Rebaselined pixel results.

* platform/chromium-mac/fast/text/international/combining-marks-position-expected.txt: Removed.

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

7 years ago[Qt][WK1] Gardening after r134816. Skipped a newly added failing test.
ossy@webkit.org [Fri, 16 Nov 2012 10:56:22 +0000 (10:56 +0000)]
[Qt][WK1] Gardening after r134816. Skipped a newly added failing test.
https://bugs.webkit.org/show_bug.cgi?id=102471

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

* platform/qt-5.0-wk1/TestExpectations:

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

7 years agoUnreviewed. Rolled DEPS.
peter@chromium.org [Fri, 16 Nov 2012 10:47:21 +0000 (10:47 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

7 years ago[CoordGfx] Follow coding style on explicit constructors
commit-queue@webkit.org [Fri, 16 Nov 2012 10:31:10 +0000 (10:31 +0000)]
[CoordGfx] Follow coding style on explicit constructors
https://bugs.webkit.org/show_bug.cgi?id=102451

Patch by Helder Correia <helder.correia@nokia.com> on 2012-11-16
Reviewed by Noam Rosenthal.

Use the explicit keyword on single argument constructors.

No new tests needed.

Source/WebCore:

* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(GraphicsLayerTextureMapper):
* platform/graphics/texmap/TextureMapper.h:
(TextureMapper):
* platform/graphics/texmap/TextureMapperBackingStore.h:
(WebCore::TextureMapperTile::TextureMapperTile):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
(WebCore::TextureMapperGLData::TextureMapperGLData):
* platform/graphics/texmap/TextureMapperGL.h:
(BitmapTextureGL):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(TextureMapperShaderManager):

Source/WebKit2:

* UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
(WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
(CoordinatedTileBackend):

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

7 years agoAdd DeviceController base-class to remove duplication of DeviceXXXControler
kihong.kwon@samsung.com [Fri, 16 Nov 2012 10:19:41 +0000 (10:19 +0000)]
Add DeviceController base-class to remove duplication of DeviceXXXControler
https://bugs.webkit.org/show_bug.cgi?id=96894

Reviewed by Hajime Morita.

Source/WebCore:

Add DeviceController which is extracted from DeviceOrientationController to remove duplication.
And soon-to-be-added DeviceMotionController and ProximityController.

Covered by existing tests.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/DeviceOrientationClient.h:
* dom/DeviceOrientationController.cpp:
Remove member functions to move to DeviceController.
- addListener(), removeListener(), removeAllListeners(), isActive()
(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
(WebCore::DeviceOrientationController::client):
(WebCore::DeviceOrientationController::hasLastData):
(WebCore::DeviceOrientationController::getLastEvent):
(WebCore::DeviceOrientationController::from):
(WebCore):
* dom/DeviceOrientationController.h:
(WebCore):
(WebCore::DeviceOrientationController::~DeviceOrientationController):
(DeviceOrientationController):
* dom/Document.cpp:
Remove suspendEventsForAllListeners() and resumeEventsForAllListeners() function calls.
These calls can be made by checking activeDOMObjectsAreSuspended() and activeDOMObjectsAreStopped() before dispatchEvent.
(WebCore::Document::suspendActiveDOMObjects):
(WebCore::Document::resumeActiveDOMObjects):
* loader/EmptyClients.h:
(EmptyDeviceClient):
(WebCore::EmptyDeviceClient::startUpdating):
(WebCore::EmptyDeviceClient::stopUpdating):
(WebCore):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::removeEventListener):
(WebCore::DOMWindow::removeAllEventListeners):
* page/DeviceClient.h: Added.
(WebCore):
(DeviceClient):
(WebCore::DeviceClient::~DeviceClient):
* page/DeviceController.cpp: Added.
DeviceController has extracted functions from DeviceOrientationController and DeviceMotionController.
- addDeviceEventListener(), removeDeviceEventlistener(), removeAllDeviceEventListeners(), dispatchDeviceEvent()
All kind of device event controller which has DeviceClient can be inherited from DeviceController.
(WebCore):
(WebCore::DeviceController::DeviceController):
(WebCore::DeviceController::addDeviceEventListener):
(WebCore::DeviceController::removeDeviceEventListener):
(WebCore::DeviceController::removeAllDeviceEventListeners):
(WebCore::DeviceController::dispatchDeviceEvent):
(WebCore::DeviceController::fireDeviceEvent):
* page/DeviceController.h: Added.
(WebCore):
(DeviceController):
(WebCore::DeviceController::~DeviceController):
(WebCore::DeviceController::isActive):
(WebCore::DeviceController::client):
(WebCore::DeviceController::hasLastData):
(WebCore::DeviceController::getLastEvent):

Source/WebKit/qt:

Change client() to deviceOrientationClient() to get DeviceOrientationClient*.

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setMockDeviceOrientation):

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

7 years agoWeb Inspector: [Overrides] Device metrics get reset on navigation, yet remain in...
apavlov@chromium.org [Fri, 16 Nov 2012 09:22:10 +0000 (09:22 +0000)]
Web Inspector: [Overrides] Device metrics get reset on navigation, yet remain in the Overrides view
https://bugs.webkit.org/show_bug.cgi?id=102467

Reviewed by Pavel Feldman.

Restore the device metrics overrides from the inspector cookie in InspectorPageAgent::restore().
Drive-by: move the script execution and FPS counter display state restoration from enable() into restore(),
so that they will get restored only upon page navigation, not upon any agent enablement.

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::restore): Restore device metrics overrides, script execution and FPS counter display state.
(WebCore::InspectorPageAgent::enable): Don't restore script execution and FPS counter display state on any enablement.

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

7 years agoUnreviewed, rolling out r134908.
commit-queue@webkit.org [Fri, 16 Nov 2012 09:19:19 +0000 (09:19 +0000)]
Unreviewed, rolling out r134908.
http://trac.webkit.org/changeset/134908
https://bugs.webkit.org/show_bug.cgi?id=102473

Broke the Apple Windows Debug build. (Requested by dydx on
#webkit).

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

.:

* Source/autotools/symbols.filter:

Source/WebCore:

* WebCore.exp.in:
* dom/ViewportArguments.cpp:
(WebCore::computeViewportAttributes):
* dom/ViewportArguments.h:
(WebCore):

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years agoUnreviewed, rolling out r134913.
commit-queue@webkit.org [Fri, 16 Nov 2012 09:08:52 +0000 (09:08 +0000)]
Unreviewed, rolling out r134913.
http://trac.webkit.org/changeset/134913
https://bugs.webkit.org/show_bug.cgi?id=102472

Incorrect fix. (Requested by dydx on #webkit).

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

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years agoWeb Inspector: show internal properties in inspector frontend
commit-queue@webkit.org [Fri, 16 Nov 2012 09:06:31 +0000 (09:06 +0000)]
Web Inspector: show internal properties in inspector frontend
https://bugs.webkit.org/show_bug.cgi?id=100021

Patch by Peter Rybin <prybin@chromium.org> on 2012-11-16
Reviewed by Yury Semikhatsky.

Source/WebCore:

New field 'internalProperties' is parsed and passed via all callbacks to Object Properties section.

Test: inspector/debugger/properties-special.html

* inspector/front-end/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection.prototype.update.callback):
(WebInspector.ObjectPropertiesSection.prototype.update):
(.callback):
(WebInspector.ObjectPropertyTreeElement.populate):
(.processProperties):
(WebInspector.ArrayGroupingTreeElement._populateAsFragment):
(WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties):
* inspector/front-end/RemoteObject.js:
(WebInspector.RemoteObject.prototype.set else):

LayoutTests:

A new test is added. InspectorTest.dumpObjectPropertySectionDeep function is added.

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.dumpObjectPropertySectionDeep):
(initialize_ElementTest.InspectorTest.dumpObjectPropertySectionDeep.dumpTreeElement):
* inspector/debugger/properties-special-expected.txt: Added.
* inspector/debugger/properties-special.html: Added.
* platform/chromium/inspector/debugger/properties-special-expected.txt: Added.

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

7 years agoAttempt to fix the Apple Windows Debug build after http://trac.webkit.org/changeset...
dbates@webkit.org [Fri, 16 Nov 2012 08:37:20 +0000 (08:37 +0000)]
Attempt to fix the Apple Windows Debug build after trac.webkit.org/changeset/134908
(https://bugs.webkit.org/show_bug.cgi?id=102354).

Add symbol.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years ago[WK2] Bug on ASSERT code in CoordinatedBackingStore.cpp
ossy@webkit.org [Fri, 16 Nov 2012 08:23:03 +0000 (08:23 +0000)]
[WK2] Bug on ASSERT code in CoordinatedBackingStore.cpp
https://bugs.webkit.org/show_bug.cgi?id=102465

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-11-16
Reviewed by Noam Rosenthal.

The ASSERT code should be fixed because the 'operator>=' is not defined for WebCore::IntSize.

* UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
(WebKit::CoordinatedBackingStoreTile::swapBuffers):

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

7 years agoWeb Inspector: metrics, geolocation, orientation overrides do not belong to the setti...
apavlov@chromium.org [Fri, 16 Nov 2012 08:16:52 +0000 (08:16 +0000)]
Web Inspector: metrics, geolocation, orientation overrides do not belong to the settings panel
https://bugs.webkit.org/show_bug.cgi?id=93691

Reviewed by Vsevolod Vlasov.

- The Overrides tab contents have been moved from the Settings dialog into a brand new Overrides drawer view,
both receiving a new, more light-weight design.
- The Cog button now brings up a popup menu with the "Overrides" and "Settings" items.

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/ContextMenu.js:
(WebInspector.ContextMenu.prototype.showSoftMenu): Display the ContextMenu as a soft menu.
* inspector/front-end/OverridesView.js: Copied from Source/WebCore/inspector/front-end/SettingsScreen.js.
(WebInspector.OverridesView.appendBlockTo):
(WebInspector.OverridesView):
(WebInspector.OverridesView.showInDrawer):
(WebInspector.OverridesView.prototype.get listener):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.get const):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.textDoubleClicked):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.textChanged):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.set checkboxClicked):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement):
(WebInspector.OverridesView.prototype._createInput):
(WebInspector.OverridesView.prototype._onMetricsCheckboxClicked):
(WebInspector.OverridesView.prototype._applyDeviceMetricsUserInput):
(WebInspector.OverridesView.prototype.):
(WebInspector.OverridesView.prototype.set if):
(WebInspector.OverridesView.prototype._createDeviceMetricsElement.swapDimensionsClicked):
(WebInspector.OverridesView.prototype._createDeviceMetricsElement):
(WebInspector.OverridesView.prototype._onGeolocationOverrideCheckboxClicked):
(WebInspector.OverridesView.prototype._applyGeolocationUserInput):
(WebInspector.OverridesView.prototype._setGeolocationPosition):
(WebInspector.OverridesView.prototype._createGeolocationOverrideElement):
(WebInspector.OverridesView.prototype._onDeviceOrientationOverrideCheckboxClicked):
(WebInspector.OverridesView.prototype._applyDeviceOrientationUserInput):
(WebInspector.OverridesView.prototype._setDeviceOrientation):
(WebInspector.OverridesView.prototype._createDeviceOrientationOverrideElement):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel): Fix the "DOM Breakpoints" pane move upon the panel creation.
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsTab):
(WebInspector.SettingsTab.prototype._appendSection):
(WebInspector.GenericSettingsTab):
(WebInspector.ExperimentsSettingsTab):
(WebInspector.SettingsController): Implement the popup menu upon the button click.
(WebInspector.SettingsController.prototype.showOverrides):
(WebInspector.SettingsController.prototype.showSettings):
(WebInspector.SettingsController.prototype.appendApplicableItems):
(WebInspector.SettingsController.prototype._buttonPressed):
(WebInspector.SettingsController.prototype._onHideSettingsScreen):
(WebInspector.SettingsController.prototype.showSettingsScreen):
* inspector/front-end/ShortcutsScreen.js: Add "Shortcuts" header.
(WebInspector.ShortcutsScreen.prototype.createShortcutsTabView):
* inspector/front-end/SoftContextMenu.js: Enable in all cases, implement the alignToCurrentTarget mode in show().
(WebInspector.SoftContextMenu.prototype.show):
* inspector/front-end/TabbedPane.js: Implement vertical tab layout (skipping the tab width computations).
(WebInspector.TabbedPane.prototype.set verticalTabLayout):
(WebInspector.TabbedPane.prototype._updateWidths):
(WebInspector.TabbedPaneTab.prototype.setWidth):
(WebInspector.TabbedPaneTab.prototype._createTabElement):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/helpScreen.css: Update styles for the new Settings and Overrides look-and-feel.
* inspector/front-end/inspector.css: Drive-by fix small artifacts in the soft menu and drawer view statusbar item label.
(.soft-context-menu-item):
(.drawer-header):
* inspector/front-end/inspector.html:

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

7 years agoUnreviewed, rolling out r134865.
commit-queue@webkit.org [Fri, 16 Nov 2012 08:08:37 +0000 (08:08 +0000)]
Unreviewed, rolling out r134865.
http://trac.webkit.org/changeset/134865
https://bugs.webkit.org/show_bug.cgi?id=102466

Broke the Apple Windows Debug build. (Requested by dydx on
#webkit).

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

.:

* Source/autotools/symbols.filter:

Source/WebCore:

* WebCore.exp.in:
* bindings/js/SerializedScriptValue.h:
* testing/Internals.cpp:
* testing/Internals.h:
(WebCore):
* testing/Internals.idl:

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

LayoutTests:

* platform/chromium/fast/storage/serialized-script-value-expected.txt: Removed.
* platform/chromium/fast/storage/serialized-script-value.html: Removed.

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

7 years agoASSERT_NOT_REACHED() when building a CSSOM wrapper for StyleRuleHost
tasak@google.com [Fri, 16 Nov 2012 08:06:06 +0000 (08:06 +0000)]
ASSERT_NOT_REACHED() when building a CSSOM wrapper for StyleRuleHost
https://bugs.webkit.org/show_bug.cgi?id=102116

Reviewed by Alexander Pavlov.

Source/WebCore:

Provide a CSSUnknownRule instance as a CSSOM wrapper for StyleRuleHost
rules. Since there is no CSSOM wrapper for @host @-rules and
ASSERT_NOT_REACHED is used when a CSSOM wrapper is requested,
this crash occurs.

Tests: fast/css/at-host-cssom-crash.html
       inspector/styles/styles-include-host-rules-crash.html

* css/StyleRule.cpp:
(WebCore::StyleRuleBase::createCSSOMWrapper):
Return a CSSUnknownRule instance for StyleRuleHost rules instead of
calling ASSERT_NOT_REACHED().

LayoutTests:

* fast/css/at-host-cssom-crash-expected.txt: Added.
* fast/css/at-host-cssom-crash.html: Added.
* inspector/styles/styles-include-host-rules-crash-expected.txt: Added.
* inspector/styles/styles-include-host-rules-crash.html: Added.

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

7 years agoAvoid copying of ViewportArguments in computeViewportAttributes function
commit-queue@webkit.org [Fri, 16 Nov 2012 08:02:55 +0000 (08:02 +0000)]
Avoid copying of ViewportArguments in computeViewportAttributes function
https://bugs.webkit.org/show_bug.cgi?id=102354

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

.:

Updated exported symbols for GTK.

* Source/autotools/symbols.filter:

Source/WebCore:

Since r134749 we do not need copying of ViewportArguments parameter in
computeViewportAttributes() as it is not modified any more.

Tested by existing tests fast/viewport.

* WebCore.exp.in: Updated exported symbols for MAC.
* dom/ViewportArguments.cpp:
(WebCore::computeViewportAttributes):
* dom/ViewportArguments.h:
(WebCore):

Source/WebKit2:

Update exported symbols.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years agoUnreviewed, rolling out r134880.
haraken@chromium.org [Fri, 16 Nov 2012 07:34:04 +0000 (07:34 +0000)]
Unreviewed, rolling out r134880.
http://trac.webkit.org/changeset/134880
https://bugs.webkit.org/show_bug.cgi?id=102339

it broke Chromium Windows build

* WebKit.gyp:
* WebKit.gypi:
* public/WebNode.h:
(WebKit):
* public/WebPluginContainer.h:
(WebKit):
(WebPluginContainer):
* src/WebFrameImpl.cpp:
(WebKit::pluginContainerFromNode):
(WebKit):
(WebKit::WebFrameImpl::executeCommand):
(WebKit::WebFrameImpl::printBegin):
(WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):
* src/WebNode.cpp:
* src/WebPluginContainerImpl.cpp:
* src/WebPluginContainerImpl.h:
(WebPluginContainerImpl):
* tests/FakeWebPlugin.cpp: Removed.
* tests/FakeWebPlugin.h: Removed.
* tests/WebPluginContainerTest.cpp: Removed.
* tests/data/plugin_container.html: Removed.

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

7 years agoMemory instrumentation: add code for reporting stack traces of unknown instrumented...
yurys@chromium.org [Fri, 16 Nov 2012 07:30:01 +0000 (07:30 +0000)]
Memory instrumentation: add code for reporting stack traces of unknown instrumented objects
https://bugs.webkit.org/show_bug.cgi?id=102384

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/InspectorMemoryAgent.cpp:
(WebCore::MemoryInstrumentationClientImpl::checkCountedObject): return false
if the check fails.
* inspector/MemoryInstrumentationImpl.h:
(MemoryInstrumentationClientImpl):

Source/WTF:

Added an option to collect stack traces for instrumented pointers so that they
can be printed in case the check failed for the pointer. This code is hidden
behind a define.

* wtf/MemoryInstrumentation.h:
(MemoryInstrumentationClient):
(WTF::MemoryInstrumentation::checkCountedObject): the method now returns false
in case the check has failed.
(InstrumentedPointer):
(WTF::::InstrumentedPointer):
(WTF):
(WTF::::process):

Tools:

Updated return type in accord with the changes in MemoryInstrumentationClient.

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

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

7 years agoUnreviewed test update.
bashi@chromium.org [Fri, 16 Nov 2012 07:10:47 +0000 (07:10 +0000)]
Unreviewed test update.

* fast/text/international/combining-marks-position.html:
Ignore a slight diff of widths between the reference and target.

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

7 years agoUnreviewed. Rebaselined pixel results.
haraken@chromium.org [Fri, 16 Nov 2012 06:47:28 +0000 (06:47 +0000)]
Unreviewed. Rebaselined pixel results.

* platform/chromium-mac/fast/text/international/combining-marks-position-expected.txt: Added.

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

7 years agoCrash at WebCore::PluginData::pluginFileForMimeType const + 38
jer.noble@apple.com [Fri, 16 Nov 2012 06:36:21 +0000 (06:36 +0000)]
Crash at WebCore::PluginData::pluginFileForMimeType const + 38
https://bugs.webkit.org/show_bug.cgi?id=102454

Reviewed by Dan Bernstein.

NULL-check the return value of Page::pluginData().

* loader/SubframeLoader.cpp:
(WebCore::logPluginRequest):

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

7 years ago[Chromium] Unreviewed build fix attempt on win
bashi@chromium.org [Fri, 16 Nov 2012 06:34:48 +0000 (06:34 +0000)]
[Chromium] Unreviewed build fix attempt on win

Include OpenTypeVerticalData.h

* platform/graphics/chromium/FontPlatformDataChromiumWin.h:
(WebCore):

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

7 years agoUnreviewed. Marked fast/images/webgl-teximage2d.html as Slow.
haraken@chromium.org [Fri, 16 Nov 2012 06:34:24 +0000 (06:34 +0000)]
Unreviewed. Marked fast/images/webgl-teximage2d.html as Slow.

* platform/chromium/TestExpectations:

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

7 years agoFix embarrassing mispelling in the ChangeLog (chuld -> child)
fpizlo@apple.com [Fri, 16 Nov 2012 06:25:34 +0000 (06:25 +0000)]
Fix embarrassing mispelling in the ChangeLog (chuld -> child)

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