Timeline



Sep 2, 2014:

11:04 PM Changeset in webkit [173200] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/win

[WinCairo] Memory cache capacity is not set.
https://bugs.webkit.org/show_bug.cgi?id=136432

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-02
Reviewed by Alex Christensen.

Reuse code from AppleWin to set memory and disk cache capacity.

  • WebKitSystemBits.cpp:

(WebVolumeFreeSize):

  • WebKitSystemBits.h:
  • WebView.cpp:

(WebView::setCacheModel):

9:58 PM Changeset in webkit [173199] by Brian Burg
  • 21 edits in trunk

LegacyProfiler: remove redundant ProfileNode members and other cleanup
https://bugs.webkit.org/show_bug.cgi?id=136380

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

ProfileNode's selfTime and totalTime members are redundant and only used
for dumping profile data from debug-only code. Remove the members and compute
the same data on-demand when necessary using a postorder traversal functor.

Remove ProfileNode.head since it is only used to calculate percentages for
dumped profile data. This can be explicitly passed around when needed.

Rename Profile.head to Profile.rootNode, and other various renamings.

Rearrange some header includes so that touching LegacyProfiler-related headers
will no longer cause a full rebuild.

  • inspector/JSConsoleClient.cpp: Add header include.
  • inspector/agents/InspectorProfilerAgent.cpp:

(Inspector::InspectorProfilerAgent::buildProfileInspectorObject):

  • inspector/protocol/Profiler.json: Remove unused Profile.idleTime member.
  • jit/JIT.h: Remove header include.
  • jit/JITCode.h: Remove header include.
  • jit/JITOperations.cpp: Sort and add header include.
  • llint/LLIntSlowPaths.cpp: Sort and add header include.
  • profiler/Profile.cpp: Rename the debug dumping functions. Move the node

postorder traversal code to ProfileNode so we can traverse any subtree.
(JSC::Profile::Profile):
(JSC::Profile::debugPrint):
(JSC::Profile::debugPrintSampleStyle):
(JSC::Profile::forEach): Deleted.
(JSC::Profile::debugPrintData): Deleted.
(JSC::Profile::debugPrintDataSampleStyle): Deleted.

  • profiler/Profile.h:
  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::ProfileGenerator):
(JSC::AddParentForConsoleStartFunctor::AddParentForConsoleStartFunctor):
(JSC::AddParentForConsoleStartFunctor::operator()):
(JSC::ProfileGenerator::addParentForConsoleStart):
(JSC::ProfileGenerator::didExecute):
(JSC::StopProfilingFunctor::operator()):
(JSC::ProfileGenerator::stopProfiling):
(JSC::ProfileGenerator::removeProfileStart):
(JSC::ProfileGenerator::removeProfileEnd):

  • profiler/ProfileGenerator.h:
  • profiler/ProfileNode.cpp:

(JSC::ProfileNode::ProfileNode):
(JSC::ProfileNode::willExecute):
(JSC::ProfileNode::removeChild):
(JSC::ProfileNode::stopProfiling):
(JSC::ProfileNode::endAndRecordCall):
(JSC::ProfileNode::debugPrint):
(JSC::ProfileNode::debugPrintSampleStyle):
(JSC::ProfileNode::debugPrintRecursively):
(JSC::ProfileNode::debugPrintSampleStyleRecursively):
(JSC::ProfileNode::debugPrintData): Deleted.
(JSC::ProfileNode::debugPrintDataSampleStyle): Deleted.

  • profiler/ProfileNode.h: Calculate per-node self and total times using a postorder traversal.

The forEachNodePostorder functor traverses the subtree rooted at |this|.
(JSC::ProfileNode::create):
(JSC::ProfileNode::calls):
(JSC::ProfileNode::forEachNodePostorder):
(JSC::CalculateProfileSubtreeDataFunctor::returnValue):
(JSC::CalculateProfileSubtreeDataFunctor::operator()):
(JSC::ProfileNode::head): Deleted.
(JSC::ProfileNode::setHead): Deleted.
(JSC::ProfileNode::totalTime): Deleted.
(JSC::ProfileNode::setTotalTime): Deleted.
(JSC::ProfileNode::selfTime): Deleted.
(JSC::ProfileNode::setSelfTime): Deleted.
(JSC::ProfileNode::totalPercent): Deleted.
(JSC::ProfileNode::selfPercent): Deleted.

  • runtime/ConsoleClient.h: Remove header include.

Source/WebCore:

Remove Profile.idleTime, rename head to rootNode, and remove ProfileNode members.

Covered by existing tests.

  • inspector/ScriptProfile.idl:
  • inspector/ScriptProfileNode.idl:
  • inspector/TimelineRecordFactory.cpp:

Source/WebInspectorUI:

Remove unused Profile.idleTime member.

  • UserInterface/Models/Profile.js:

(WebInspector.Profile.prototype.get idleTime): Deleted.

  • UserInterface/Models/ScriptTimelineRecord.js:

(WebInspector.ScriptTimelineRecord.prototype._initializeProfileFromPayload):

LayoutTests:

Renamed Profile.head to Profile.rootNode.

  • fast/profiler/resources/profiler-test-JS-resources.js:

(printHeavyProfilesDataWithoutTime):
(printProfilesDataWithoutTime):

8:17 PM Changeset in webkit [173198] by Brian Burg
  • 30 edits
    25 deletes in trunk/Source

Web Inspector: remove ProfilerAgent and legacy profiler files in the frontend
https://bugs.webkit.org/show_bug.cgi?id=136462

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

It's not used by the frontend anymore.

  • inspector/JSConsoleClient.cpp:

(Inspector::JSConsoleClient::JSConsoleClient): Stub out console.profile/profileEnd
methods since they didn't work for JSContexts anyway.
(Inspector::JSConsoleClient::profile):
(Inspector::JSConsoleClient::profileEnd):

  • inspector/JSConsoleClient.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):

  • inspector/agents/InspectorProfilerAgent.cpp: Removed.
  • inspector/agents/InspectorProfilerAgent.h: Removed.
  • inspector/agents/JSGlobalObjectProfilerAgent.cpp: Removed.
  • inspector/agents/JSGlobalObjectProfilerAgent.h: Removed.
  • inspector/protocol/Profiler.json: Removed.

Source/WebCore:

It's not used by the frontend anymore.

No new tests, no behavior changed.

  • CMakeLists.txt:
  • ForwardingHeaders/inspector/agents/InspectorProfilerAgent.h: Removed.
  • WebCore.order:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorController.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didCommitLoadImpl):

  • inspector/InstrumentingAgents.cpp:

(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):

  • inspector/InstrumentingAgents.h:

(WebCore::InstrumentingAgents::inspectorProfilerAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorProfilerAgent): Deleted.

  • inspector/PageProfilerAgent.cpp: Removed.
  • inspector/PageProfilerAgent.h: Removed.
  • inspector/TimelineRecordFactory.cpp: Moved these builders to their only callsite.

(WebCore::buildInspectorObject):
(WebCore::buildProfileInspectorObject):
(WebCore::TimelineRecordFactory::appendProfile):

  • inspector/WebProfilerAgent.cpp: Removed.
  • inspector/WebProfilerAgent.h: Removed.
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/WorkerProfilerAgent.cpp: Removed.
  • inspector/WorkerProfilerAgent.h: Removed.
  • inspector/protocol/Timeline.json:

Source/WebInspectorUI:

The legacy profiler manager didn't do anything, and its views and models
have been superseded by new views and models based on the Timeline classes.

  • .eslintrc:
  • UserInterface/Base/Main.js:

(WebInspector.loaded):
(WebInspector.openURL): Remove profile URL handling code.

  • UserInterface/Controllers/LegacyProfileManager.js: Removed.
  • UserInterface/Main.html:
  • UserInterface/Protocol/ConsoleObserver.js:

(WebInspector.ConsoleObserver.prototype.messageAdded):

  • UserInterface/Protocol/InspectorFrontendAPI.js:

(InspectorFrontendAPI.isProfilingJavaScript): Deleted.
(InspectorFrontendAPI.startProfilingJavaScript): Deleted.
(InspectorFrontendAPI.stopProfilingJavaScript): Deleted.

  • UserInterface/Protocol/LegacyProfilerObserver.js: Removed.
  • UserInterface/Views/LegacyBottomUpProfileDataGridTree.js: Removed.
  • UserInterface/Views/LegacyJavaScriptProfileObject.js: Removed.
  • UserInterface/Views/LegacyJavaScriptProfileType.js: Removed.
  • UserInterface/Views/LegacyJavaScriptProfileView.css: Removed.
  • UserInterface/Views/LegacyJavaScriptProfileView.js: Removed.
  • UserInterface/Views/LegacyProfileDataGridTree.js: Removed.
  • UserInterface/Views/LegacyProfileObject.js: Removed.
  • UserInterface/Views/LegacyProfileType.js: Removed.
  • UserInterface/Views/LegacyProfileView.css: Removed.
  • UserInterface/Views/LegacyProfileView.js: Removed.
  • UserInterface/Views/LegacyTopDownProfileDataGridTree.js: Removed.
6:28 PM Changeset in webkit [173197] by jer.noble@apple.com
  • 16 edits
    1 copy
    1 add in trunk/Source/WebCore

[EME][Mac] Refactor CDMPrivateMediaSourceAVFObjC to allow sessions to be created without being attached to an AVStreamDataParser.
https://bugs.webkit.org/show_bug.cgi?id=136016

Reviewed by Eric Carlson.

The CDMPrivateMediaPlayer class will delegate creation of CDMSession instances to the current MediaPlayer. This
of course requires the MediaKeys object owning the CDM to be attached to a HTMLMediaElement, and specifically to
one with a valid src attribute or source node which has sucessfully begun loading. For certain CDM operations,
it would be better if a given MediaKeys could create a session without actually being connected to a
HTMLMediaElement (yet).

To facilitate this for CDMSessionPrivateMediaSourceAVFObjC, add a new class, CDMPrivateMediaSourceAVFObjC, which
is the primary factory for CDMSessionPrivateMediaSOurceAVFObjC. Disclaim responsibility for creating these sessions
in MediaPlayerPrivateMediaSourceAVFObjC by not passing the "supportsKeySystem" method when registering itself.

Add methods to CDMSessionPrivateMediaSourceAVFObjC to allow SourceBuffers to be added and removed from the session,
to support adding the session to the HTMLMediaElement after the session has been created.

Since MediaPlayerPrivate instance and CDMSession instances must be able to communicate with one another, add a type()
enum and virtual method to allow CDMSession instnaces to be distinguisted from (and casted to) one another.

  • Modules/encryptedmedia/CDM.cpp:

(WebCore::installedCDMFactories): Register CDMPrivateMediaSourceAVFObjC.
(WebCore::CDM::createSession): Notify the MediaPlayer of the new CDMSession.

  • Modules/encryptedmedia/MediaKeySession.h:
  • Modules/encryptedmedia/MediaKeys.cpp:

(WebCore::MediaKeys::setMediaElement): Notify the HTMLMediaElement of any existing sessions.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/CDMSession.h:

(WebCore::CDMSession::type): Added.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::setCDMSession): Pass through to the MediaPlayerPrivate.

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h:

(WebCore::MediaPlayerPrivateInterface::setCDMSession): Added. Default no-op.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.h: Added.

(WebCore::CDMPrivateMediaSourceAVFObjC::CDMPrivateMediaSourceAVFObjC): Simple constructor.
(WebCore::CDMPrivateMediaSourceAVFObjC::~CDMPrivateMediaSourceAVFObjC): Simple destructor.
(WebCore::CDMPrivateMediaSourceAVFObjC::create): Simple factory.
(WebCore::CDMPrivateMediaSourceAVFObjC::cdm): Simple accessor.

  • platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:

(WebCore::CDMPrivateMediaSourceAVFObjC::supportsKeySystem): Moved from MediaPlayerPrivateMediaSourceAVFObjC.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsKeySystemAndMimeType): Ditto.
(WebCore::CDMPrivateMediaSourceAVFObjC::supportsMIMEType): Ditto.
(WebCore::CDMPrivateMediaSourceAVFObjC::createSession): Returns new CDMSessionMediaSourceAVFObjC.

  • platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:

(WebCore::CDMSessionAVFoundationObjC::type): Added.

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:

(WebCore::CDMSessionMediaSourceAVFObjC::type): Added.
(WebCore::toCDMSessionMediaSourceAVFObjC): Throw assertion if type() is not correct.

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:

(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC): Removed m_parent ivar.
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Ditto.
(WebCore::CDMSessionMediaSourceAVFObjC::update): Determing which SourceBuffer is protected.
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer): Added.
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer): Added.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine): Remove supportsKeyType parameter.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType): Remove keyType check.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCDMSession): Tell the CDMSession about outstanding SourceBuffers.

  • platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
5:51 PM Changeset in webkit [173196] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

[Win] Attempt to fix the Windows build after <http://trac.webkit.org/changeset/173192>
(https://bugs.webkit.org/show_bug.cgi?id=136467)

Declare ResourceHandleClient::connectionProperties() when building for iOS or when USE(CFNETWORK).

  • platform/network/ResourceHandleClient.h:
5:46 PM Changeset in webkit [173195] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.4.11-branch/Source

Versioning.

5:43 PM Changeset in webkit [173194] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.11.4

New tag.

5:25 PM Changeset in webkit [173193] by Gustavo Noronha Silva
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

[GTK] Updated German translation
https://bugs.webkit.org/show_bug.cgi?id=135956

Patch by Christian Stadelmann <gnome-de@genodeftest.de> on 2014-09-02
Reviewed by Gustavo Noronha.

  • de.po: updated.
5:14 PM Changeset in webkit [173192] by dbates@webkit.org
  • 14 edits
    2 copies in trunk/Source

[iOS] Support using Foundation networking code
https://bugs.webkit.org/show_bug.cgi?id=136467

Reviewed by Pratik Solanki.

Source/WebCore:

We should support building iOS WebKit with the Foundation networking code
(i.e. !USE(CFNETWORK)).

Additionally, disable USE(CFNETWORK) and use the Foundation networking code
by default when building iOS WebKit without the Apple Internal SDK.

  • Configurations/WebCore.xcconfig: Remove file WebCoreURLResponse.mm from the list of excluded files

so that we compile an implementation for function WebCore::synthesizeRedirectResponseIfNecessary when
building without USE(CFNETWORK).

  • WebCore.exp.in: Add symbols for WebCore::synthesizeRedirectResponseIfNecessary() and WebCore::ResourceHandleClient::willCacheResponseAsync().
  • WebCore.xcodeproj/project.pbxproj: Add new files CFNetworkConnectionCacheSPI.h and CFURLRequestSPI.h.

Also move group platform/spi such that it appears in alphabetical order in the platform group.

  • platform/cf/URLCF.cpp: Remove unnecessary header <CoreFoundation/CFPriv.h>.
  • platform/network/ResourceHandle.h: Declare iOS-specific variant of ResourceHandle::createNSURLConnection().
  • platform/network/ResourceHandleClient.h: Always include header <wtf/RetainPtr.h> when building for iOS.

(WebCore::ResourceHandleClient::connectionProperties): Add PLATFORM(IOS)-guard around declaration.

  • platform/network/cf/ResourceRequestCFNet.cpp: Substitute header CFNetworkConnectionCacheSPI.h for

<CFNetwork/CFNetworkConnectionCachePriv.h>.

  • platform/network/mac/CredentialStorageMac.mm:

(WebCore::CredentialStorage::saveToPersistentStorage): Use Credential::nsCredential() and ProtectionSpace::nsSpace()
instead of WebCore::mac(const {Credential, ProtectionSpace}&) as the latter were removed in <http://trac.webkit.org/changeset/171801>
and <http://trac.webkit.org/changeset/171540>, respectively.

  • platform/network/mac/ResourceErrorMac.mm: Add USE(CFNETWORK)-guard around <CFNetwork/CFSocketStreamPriv.h>.
  • platform/network/mac/ResourceHandleMac.mm: Substitute header CFURLRequestSPI.h for <CFNetwork/CFURLRequest.h>.

(WebCore::ResourceHandle::start): Modified to use ResourceHandle::makeDelegate() instead of d->m_proxy, which
was removed in <http://trac.webkit.org/changeset/147476>.
(WebCore::ResourceHandle::platformLoadResourceSynchronously): Ditto.

  • platform/network/mac/WebCoreURLResponse.mm:

(WebCore::synthesizeRedirectResponseIfNecessary): Add !USE(CFNETWORK)- and PLATFORM(IOS)- guards.

  • platform/spi/cf/CFNetworkConnectionCacheSPI.h: Added.
  • platform/spi/cf/CFURLRequestSPI.h: Added.

Source/WTF:

Disable USE(CFNETWORK) and use the Foundation networking code by default when building
iOS WebKit without the Apple Internal SDK.

  • wtf/Platform.h:
4:09 PM Changeset in webkit [173191] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Pass the resource identifier in willSendRequest callback.
https://bugs.webkit.org/show_bug.cgi?id=136325

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2014-09-02
Reviewed by Dan Bernstein.

Add two new delegate methods webProcessPlugInBrowserContextController:frame:willSendRequestForResource:request:redirectResponse:
and webProcessPlugInBrowserContextController:frame:didInitiateLoadForResource:request:pageIsProvisionallyLoading:. We will remove
the old willSendRequest and didInitiateLoadForResource when clients adopt the new methods.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(willSendRequestForFrame):
(didInitiateLoadForResource):

3:47 PM Changeset in webkit [173190] by mmaxfield@apple.com
  • 5 edits in trunk/Source/WebCore

Use references in public EventSender functions
https://bugs.webkit.org/show_bug.cgi?id=136463

Reviewed by Dan Bates.

Passing nullptr to EventSender shouldn't be allowed.

No new tests because there is no behavior change.

  • dom/EventSender.h:

(WebCore::EventSender::hasPendingEvents):
(WebCore::EventSender<T>::dispatchEventSoon):
(WebCore::EventSender<T>::cancelEvent):
(WebCore::EventSender<T>::dispatchPendingEvents):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::~HTMLLinkElement):
(WebCore::HTMLLinkElement::notifyLoadedSheetAndAllCriticalSubresources):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::~HTMLStyleElement):
(WebCore::HTMLStyleElement::notifyLoadedSheetAndAllCriticalSubresources):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::~ImageLoader):
(WebCore::ImageLoader::setImageWithoutConsideringPendingLoadEvent):
(WebCore::ImageLoader::updateFromElement):
(WebCore::ImageLoader::notifyFinished):
(WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):

3:45 PM Changeset in webkit [173189] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

[iOS] Exclude touch and gesture files when building without ENABLE_TOUCH_EVENTS
and ENABLE_IOS_GESTURE_EVENTS, respectively
https://bugs.webkit.org/show_bug.cgi?id=136456

Reviewed by Andy Estes.

It's sufficient to exclude the touch and gesture files when building without
ENABLE_TOUCH_EVENTS and ENABLE_IOS_GESTURE_EVENTS, respectively. Currently we
exclude these files when building without the Apple Internal SDK, which is
heavy handed.

  • Configurations/WebCore.xcconfig:
3:29 PM Changeset in webkit [173188] by akling@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Optimize own property GetByVals with rope string subscripts.
<https://webkit.org/b/136458>

For simple JSObjects that don't override getOwnPropertySlot to implement
custom properties, we have a fast path that grabs directly at the object
property storage.

Make this fast path even faster when the property name is an unresolved
rope string by using JSString::toExistingAtomicString(). This is faster
because it avoids allocating a new StringImpl if the string is already
a known Identifier, which is guaranteed to be the case if it's present
as an own property on the object.)

~10% speed-up on Dromaeo/dom-attr.html

Reviewed by Geoffrey Garen.

  • dfg/DFGOperations.cpp:
  • jit/JITOperations.cpp:

(JSC::getByVal):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::getByVal):

When using the fastGetOwnProperty() optimization, get the String
out of JSString by using toExistingAtomicString(). This avoids
StringImpl allocation and lets us bypass the PropertyTable lookup
entirely if no AtomicString is found.

  • runtime/JSCell.h:
  • runtime/JSCellInlines.h:

(JSC::JSCell::fastGetOwnProperty):

Make fastGetOwnProperty() take a PropertyName instead of a String.
This avoids churning the ref count, since we don't need to create
a temporary wrapper around the AtomicStringImpl* found in GetByVal.

  • runtime/PropertyName.h:

(JSC::PropertyName::PropertyName):

Add constructor: PropertyName(AtomicStringImpl*)

  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::get):
(JSC::PropertyTable::findWithString): Deleted.

  • runtime/Structure.h:
  • runtime/StructureInlines.h:

(JSC::Structure::get):

Remove code for querying a PropertyTable with an unhashed string key
since the only client is now gone.

2:33 PM Changeset in webkit [173187] by Simon Fraser
  • 2 edits in trunk/Tools

Make sure WK1 prefs are initialized in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=136465

Reviewed by Tim Horton.

Call -didChangeSettings from -awakeFromNib for WK1 windows just as we do
for WK2 windows, to make sure that WebPreferences are updated (to get
layer borders to work consistently).

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController awakeFromNib]):

2:25 PM Changeset in webkit [173186] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix an assertion sometimes seen under RenderLayerCompositor::detachRootLayer()
https://bugs.webkit.org/show_bug.cgi?id=136464

Reviewed by Tim Horton.

Don't try to call RenderLayer::isVisuallyNonEmpty() under RenderLayerCompositor::detachRootLayer()
when layout might be stale; there's not point trying to update the backing store state
when detaching, only when attaching.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::rootLayerAttachmentChanged):

2:18 PM Changeset in webkit [173185] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.11-branch/Source/WTF

Merged r173036. <rdar://problem/18203609>

1:20 PM Changeset in webkit [173184] by Simon Fraser
  • 3 edits
    4 adds in trunk

Avoid backing store allocation with some combinations of replaced elements, masking and visibility:hidden
https://bugs.webkit.org/show_bug.cgi?id=136400

Reviewed by Tim Horton.
Source/WebCore:

RenderLayer::isVisuallyNonEmpty() would return true for replaced elements (e.g. images)
with visibility:hidden, and for layers with a mask, and both would cause additional
backing store in some cases.

We can move the hasVisibleContent() to the top of the function, since visibility:hidden
will always hide any content of this layer. The hasMask() check can also be removed;
a mask can only mask content that is already visible; it never contributes additional
pixels.

Tests: compositing/backing/masked-child-no-backing.html

compositing/backing/replaced-child-no-backing.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

  • compositing/backing/masked-child-no-backing-expected.txt: Added.
  • compositing/backing/masked-child-no-backing.html: Added.
  • compositing/backing/replaced-child-no-backing-expected.txt: Added.
  • compositing/backing/replaced-child-no-backing.html: Added.
1:14 PM Changeset in webkit [173183] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Use jsNontrivialString for strings we know are more than a single character
https://bugs.webkit.org/show_bug.cgi?id=136393

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-02
Reviewed by Geoffrey Garen.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::addUsagesToJSON):

12:07 PM Changeset in webkit [173182] by achristensen@apple.com
  • 53 edits in trunk/Source/WebCore

Fix bindings tests after r173176.
https://bugs.webkit.org/show_bug.cgi?id=136460

Reviewed by Simon Fraser.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.h:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.h:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:
  • bindings/scripts/test/JS/JSreadonly.h:
  • bindings/scripts/test/ObjC/DOMFloat64ArrayInternal.h:
  • bindings/scripts/test/ObjC/DOMTestActiveDOMObjectInternal.h:
  • bindings/scripts/test/ObjC/DOMTestCallbackInternal.h:
  • bindings/scripts/test/ObjC/DOMTestCustomNamedGetterInternal.h:
  • bindings/scripts/test/ObjC/DOMTestEventConstructorInternal.h:
  • bindings/scripts/test/ObjC/DOMTestEventTargetInternal.h:
  • bindings/scripts/test/ObjC/DOMTestExceptionInternal.h:
  • bindings/scripts/test/ObjC/DOMTestGenerateIsReachableInternal.h:
  • bindings/scripts/test/ObjC/DOMTestInterfaceInternal.h:
  • bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h:
  • bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h:
  • bindings/scripts/test/ObjC/DOMTestNodeInternal.h:
  • bindings/scripts/test/ObjC/DOMTestNondeterministicInternal.h:
  • bindings/scripts/test/ObjC/DOMTestObjInternal.h:
  • bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h:
  • bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h:
  • bindings/scripts/test/ObjC/DOMTestTypedefsInternal.h:
  • bindings/scripts/test/ObjC/DOMattributeInternal.h:
  • bindings/scripts/test/ObjC/DOMreadonlyInternal.h:

Added new WEBCORE_EXPORT macros.

11:30 AM Changeset in webkit [173181] by Simon Fraser
  • 4 edits
    2 adds in trunk

Non-composited child RenderLayers cause allocation of unncessary backing store
https://bugs.webkit.org/show_bug.cgi?id=136375

Reviewed by David Hyatt.

Source/WebCore:

A composited element that has non-composited descendant elements that fall into
RenderLayers was getting backing store when none was required. descendentLayerPaintsIntoAncestor()
was simply checking the "visibility:visible" bit on descendant non-composited layers,
instead of actually asking them if they have any visual content.

Added a couple of FIXME comments.

Test: compositing/backing/child-layer-no-backing.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayerBacking.cpp:

(WebCore::descendentLayerPaintsIntoAncestor):

LayoutTests:

Test with a composited div with various configurations of non-composited child layers.

  • compositing/backing/child-layer-no-backing-expected.txt: Added.
  • compositing/backing/child-layer-no-backing.html: Added.
11:25 AM Changeset in webkit [173180] by saambarati1@gmail.com
  • 13 edits
    5 adds in trunk/Source/WebInspectorUI

Web Inspector: Create a UI for displaying JavaScript type information
https://bugs.webkit.org/show_bug.cgi?id=135142

Reviewed by Joseph Pecoraro.

JavaScriptCore now has a type profiler. This patch provides a frontend
user interface for displaying this type information in the Web Inspector.
The user interface works by placing inline "type tokens" next to important
JavaScript expressions: function arguments, function return types, and
variable declarations. Type information can also be seen for almost every
JavaScipt expression just by hovering over it while viewing a JavaScript file.

Currently, turning on the type profiler is expensive, so the inspector
ensures to never turn on type profiling until the user specifically asks
for type information to be turned on.

  • UserInterface/Base/Main.js:

(WebInspector.loaded):

  • UserInterface/Controllers/CodeMirrorTokenTrackingController.js:

(WebInspector.CodeMirrorTokenTrackingController.prototype._startTracking):
(WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
Added a new type profiling mode.

  • UserInterface/Controllers/FormatterSourceMap.js:

(WebInspector.FormatterSourceMap.prototype.originalToFormatted):
(WebInspector.FormatterSourceMap.prototype.originalPositionToFormatted):
(WebInspector.FormatterSourceMap.prototype.formattedToOriginal):
(WebInspector.FormatterSourceMap.prototype.formattedToOriginalOffset):

  • UserInterface/Controllers/TypeTokenAnnotator.js: Added.

(WebInspector.TypeTokenAnnotator):
(WebInspector.TypeTokenAnnotator.prototype.get isActive):
(WebInspector.TypeTokenAnnotator.prototype.get sourceCodeTextEditor):
(WebInspector.TypeTokenAnnotator.prototype.pause):
(WebInspector.TypeTokenAnnotator.prototype.resume):
(WebInspector.TypeTokenAnnotator.prototype.refresh):
(WebInspector.TypeTokenAnnotator.prototype.reset):
(WebInspector.TypeTokenAnnotator.prototype.toggleTypeAnnotations):
(WebInspector.TypeTokenAnnotator.prototype._insertAnnotations.):
(WebInspector.TypeTokenAnnotator.prototype._insertTypeTokensForEachNode):
(WebInspector.TypeTokenAnnotator.prototype._insertToken):
(WebInspector.TypeTokenAnnotator.prototype.isLineTerminator):
(WebInspector.TypeTokenAnnotator.prototype._translateToOffsetAfterFunctionParameterList):
(WebInspector.TypeTokenAnnotator.prototype._clearTimeoutIfNeeded):
This class is responsible for producing the inline "type token" annotations.

  • UserInterface/Images/NavigationItemTypes.svg: Added.
  • UserInterface/Main.html:
  • UserInterface/Models/Script.js:

(WebInspector.Script.prototype.get scriptSyntaxTree):

  • UserInterface/Models/ScriptSyntaxTree.js:

(WebInspector.ScriptSyntaxTree.prototype.containsNonEmptyReturnStatement):
(WebInspector.ScriptSyntaxTree.prototype.):
(WebInspector.ScriptSyntaxTree.prototype.updateTypes):
(WebInspector.ScriptSyntaxTree.prototype._createInternalSyntaxTree):

  • UserInterface/Views/ScriptContentView.js:

(WebInspector.ScriptContentView):
(WebInspector.ScriptContentView.prototype.get navigationItems):
(WebInspector.ScriptContentView.prototype._contentDidPopulate):
(WebInspector.ScriptContentView.prototype._toggleTypeAnnotations):
(WebInspector.ScriptContentView.prototype._showJavaScriptTypeInformationSettingChanged):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor):
(WebInspector.SourceCodeTextEditor.prototype.shown):
(WebInspector.SourceCodeTextEditor.prototype.hidden):
(WebInspector.SourceCodeTextEditor.prototype.canShowTypeAnnotations):
(WebInspector.SourceCodeTextEditor.prototype.toggleTypeAnnotations):
(WebInspector.SourceCodeTextEditor.prototype.showPopoverForTypes):
(WebInspector.SourceCodeTextEditor.prototype.prettyPrint):
(WebInspector.SourceCodeTextEditor.prototype._populateWithContent):
(WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause):
(WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume):
(WebInspector.SourceCodeTextEditor.prototype._updateTokenTrackingControllerState):
(WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation.handler):
(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedJavaScriptTypeInformation):
(WebInspector.SourceCodeTextEditor.prototype._showPopover):
(WebInspector.SourceCodeTextEditor.prototype.editingControllerDidFinishEditing):
(WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenAnnotator):
(WebInspector.SourceCodeTextEditor.prototype._enableScrollEventsForTypeTokenAnnotator):
(WebInspector.SourceCodeTextEditor.prototype._disableScrollEventsForTypeTokenAnnotator):
(WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler.scrollHandler):
(WebInspector.SourceCodeTextEditor.prototype._makeTypeTokenScrollEventHandler):

  • UserInterface/Views/TextContentView.js:

(WebInspector.TextContentView.prototype.get navigationItems):

  • UserInterface/Views/TextEditor.js:

(WebInspector.TextEditor.prototype.set formatted):
(WebInspector.TextEditor.prototype.canShowTypeAnnotations):
(WebInspector.TextEditor.prototype.visibleRangeOffsets):
(WebInspector.TextEditor.prototype.originalOffsetToCurrentPosition):
(WebInspector.TextEditor.prototype.currentOffsetToCurrentPosition):
(WebInspector.TextEditor.prototype.currentPositionToOriginalOffset):
(WebInspector.TextEditor.prototype.currentPositionToCurrentOffset):
(WebInspector.TextEditor.prototype.setInlineWidget):
(WebInspector.TextEditor.prototype.addScrollHandler):
(WebInspector.TextEditor.prototype.removeScrollHandler):
(WebInspector.TextEditor.prototype._scrollIntoViewCentered):

  • UserInterface/Views/TextResourceContentView.js:

(WebInspector.TextResourceContentView):
(WebInspector.TextResourceContentView.prototype.get navigationItems):
(WebInspector.TextResourceContentView.prototype._contentDidPopulate):
(WebInspector.TextResourceContentView.prototype._toggleTypeAnnotations):
(WebInspector.TextResourceContentView.prototype._showJavaScriptTypeInformationSettingChanged):

  • UserInterface/Views/TypePropertiesSection.js: Added.

(WebInspector.TypePropertiesSection):
(WebInspector.TypePropertiesSection.prototype.onpopulate):
(WebInspector.TypePropertiesSection.PropertyComparator):
(WebInspector.TypePropertyTreeElement):
(WebInspector.TypePropertyTreeElement.prototype.onpopulate):

  • UserInterface/Views/TypeTokenView.css: Added.

(.type-token):
(.type-token-left-spacing):
(.type-token-right-spacing):
(.type-token-function, .type-token-boolean):
(.type-token-number):
(.type-token-string):
(.type-token-default):
(.type-token-empty):
(.type-token-many):

  • UserInterface/Views/TypeTokenView.js: Added.

(WebInspector.TypeTokenView):
(WebInspector.TypeTokenView.titleForPopover):
(WebInspector.TypeTokenView.prototype.update):
(WebInspector.TypeTokenView.prototype._setUpMouseoverHandlers):
(WebInspector.TypeTokenView.prototype._shouldShowPopover):
The inline "type token" view.

10:01 AM Changeset in webkit [173179] by Dániel Bátyai
  • 2 edits in trunk/Source/JavaScriptCore

[ARM] MacroAssembler generating incorrect code on ARM32 Traditional
https://bugs.webkit.org/show_bug.cgi?id=136429

Reviewed by Csaba Osztrogonác.

Changed test32 to use tst to check if reg is zero, instead of cmp.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::test32):

9:52 AM Changeset in webkit [173178] by msaboff@apple.com
  • 5 edits
    2 adds in trunk

Out of bounds write in vmEntryToJavaScript / JSC::JITCode::execute
https://bugs.webkit.org/show_bug.cgi?id=136305

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

While preparing the callee's CallFrame, ProtoCallFrame fixes any arity mismatch
and then JITCode::execute() calls the normal entrypoint. This is incompatible
with the expectation of FTL generated functions. Changed ProtoCallFrame to not
perform the arity fix, but just flag an arity mismatch. now JITCode::execute()
uses that arity mismatch condition to select the normal or arity check
entrypoint. The entrypoint selection is only done for functions, programs
and eval always have one parameter.

  • interpreter/ProtoCallFrame.cpp:

(JSC::ProtoCallFrame::init): Changed to flag arity mismatch instead of fixing it.

  • interpreter/ProtoCallFrame.h:

(JSC::ProtoCallFrame::needArityCheck): New boolean to signify what entrypoint
should be called.

  • jit/JITCode.cpp:

(JSC::JITCode::execute): Select normal or arity check entrypoint as appropriate.

LayoutTests:

  • js/arity-mismatch-at-vmentry-expected.txt: Added.
  • js/arity-mismatch-at-vmentry.html: Added.
9:47 AM Changeset in webkit [173177] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r173175.
https://bugs.webkit.org/show_bug.cgi?id=136454

it broke debug builds (Requested by jessieberlin on #webkit).

Reverted changeset:

"Introduce CSS_BASIC_TYPE_CASTS, and use it"
https://bugs.webkit.org/show_bug.cgi?id=136403
http://trac.webkit.org/changeset/173175

9:28 AM Changeset in webkit [173176] by Darin Adler
  • 56 edits in trunk/Source/WebCore

2014-09-02 Alex Christensen <achristensen@webkit.org>

More use of WEBCORE_EXPORT.

Reviewed by Darin Adler.

These changes from a patch attached to https://bugs.webkit.org/show_bug.cgi?id=136172
contain more deployment of the WEBCORE_EXPORT macro. As of this writing, the macro is
defined to do nothing, so landing these is a harmless way to get closer to be the point
where we can throw the switch to use these instead of explicit export files on OS X,
iOS, and Windows.

  • bindings/js/JSDOMBinding.h:
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowBase.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

  • bindings/scripts/CodeGeneratorObjC.pm:

(GenerateHeader):

  • bridge/runtime_method.cpp:
  • bridge/runtime_object.cpp:
  • dom/Document.h:
  • dom/Element.h:
  • dom/Position.h:
  • dom/Range.h:
  • dom/StaticNodeList.h:
  • dom/make_names.pl:

(printInit):
(printNamesCppFile):

  • editing/Editor.h:
  • editing/FrameSelection.h:
  • editing/TextIterator.h:
  • inspector/InspectorFrontendClient.h:
  • inspector/InspectorFrontendClientLocal.h:
  • loader/DocumentLoader.h:
  • loader/FrameLoader.h:
  • loader/cache/MemoryCache.h:
  • loader/cocoa/DiskCacheMonitorCocoa.h:
  • loader/mac/LoaderNSURLExtras.h:
  • page/Page.h:
  • page/PageGroup.h:
  • page/SecurityPolicy.h:
  • page/Settings.h:
  • page/make_settings.pl:

(printGetterAndSetter):

  • page/scrolling/ScrollingStateScrollingNode.h:
  • platform/CrossThreadCopier.h:
  • platform/LocalizedStrings.h:
  • platform/MemoryPressureHandler.cpp:
  • platform/PlatformScreen.h:
  • platform/PublicSuffix.h:
  • platform/graphics/Gradient.h:
  • platform/graphics/cocoa/WebActionDisablingCALayerDelegate.h:
  • platform/graphics/filters/FilterOperation.h:
  • platform/ios/WebVideoFullscreenControllerAVKit.h:
  • platform/mac/PlatformEventFactoryMac.h:
  • platform/mac/WebCoreFullScreenPlaceholderView.h:
  • platform/mac/WebCoreFullScreenWindow.h:
  • platform/mac/WebCoreNSStringExtras.h:
  • platform/mac/WebCoreObjCExtras.h:
  • platform/mac/WebFontCache.h:
  • platform/mac/WebVideoFullscreenController.h:
  • platform/mac/WebWindowAnimation.h:
  • platform/network/BlobRegistryImpl.h:
  • platform/network/CredentialStorage.h:
  • platform/network/PlatformCookieJar.h:
  • platform/network/ProxyServer.h:
  • platform/sql/SQLiteStatement.h:
  • platform/text/TextEncoding.h:
  • rendering/HitTestResult.h:
  • rendering/RenderTreeAsText.h:
  • testing/Internals.h:

Add many more correct uses of WEBCORE_EXPORT; remove a few incorrect ones.

9:06 AM Changeset in webkit [173175] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Introduce CSS_BASIC_TYPE_CASTS, and use it
https://bugs.webkit.org/show_bug.cgi?id=136403

Reviewed by Darin Adler.

toCSSBasicFoo() will help to detect wrong type casting. So this patch generates it, and use it
instead of static_cast<const CSSBasicFoo*>().

No new tests no behavior changes.

  • css/BasicShapeFunctions.cpp:

(WebCore::basicShapeForValue):

  • css/CSSBasicShapes.cpp:

(WebCore::CSSBasicShapeCircle::equals):
(WebCore::CSSBasicShapeEllipse::equals):
(WebCore::CSSBasicShapePolygon::equals):
(WebCore::CSSBasicShapeInset::equals):

  • css/CSSBasicShapes.h:
9:03 AM Changeset in webkit [173174] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style should complain about C++ comments in Platform.h
https://bugs.webkit.org/show_bug.cgi?id=133802

Patch by Renato Nagy <rnagy@inf.u-szeged.hu> on 2014-09-02
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_platformh_comments):
(_process_lines):
(CppChecker):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_platformh_comment):

9:00 AM Changeset in webkit [173173] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

CachedResourceLoader should check redirections to reuse or not cached resources
https://bugs.webkit.org/show_bug.cgi?id=131757

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-09-02
Reviewed by Antti Koivisto.

Source/WebCore:

Added cache-control redirection check to properly determine revalidation policy.
Tightened redirection cache-control header check by testing for no-cache and must-revalidate directives.
Added redirection freshness check.

Test: http/tests/cache/cache-redirections.html

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::canReuse): Removed redirection check (now handled by CachedResource::redirectChainAllowsReuse).

  • loader/cache/CachedResource.cpp:

(WebCore::currentAge): Moved from WebCore::CachedResource::currentAge method to static function. Added response and responseTimestamp as parameters.
(WebCore::CachedResource::CachedResource): Initialized redirection chain status (no redirection and expiracy date set to never).
(WebCore::CachedResource::isExpired): Updated according new currentAge/freshnessLifetime method parameters.
(WebCore::CachedResource::freshnessLifetime): Added response as parameter.
(WebCore::CachedResource::willSendRequest): Computes whether a redirection can be cached, and if cached for how long it will remain fresh.
(WebCore::CachedResource::redirectChainAllowsReuse): Return false if any of the redirection in the redirection chain cannot be cached or expired.

  • loader/cache/CachedResource.h: Added cache chain member that stores whether the redirection chain can be cached and if so when it will be expired.
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::determineRevalidationPolicy): Added check of the redirection chain.

LayoutTests:

Added test checks that fresh redirections allow reuse of cached resoure and expired or not cacheable redirections trigger reloading of resources.

  • http/tests/cache/cache-redirections-expected.txt: Added.
  • http/tests/cache/cache-redirections.html: Added.
  • http/tests/cache/resources/cache-control-redirect.php: Added.
  • http/tests/cache/resources/cacheable-random-text.php: Added.
8:54 AM Changeset in webkit [173172] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Prevent decoded images from being destroyed when they're in use.
https://bugs.webkit.org/show_bug.cgi?id=136259.

Patch by Daewoong Jang <daewoong.jang@navercorp.com> on 2014-09-02
Reviewed by Darin Adler.

Try to fix a regression introduced by r172790. Before the patch,
CachedImage does not release its Image object if it still has clients.
However this behavior was changed due to removal of CachedResource::isSafeToMakePurgeable(),
which implied a call to CachedResource::hasClients(). This patch restores
the behavior by adding a check to hasClients() in CachedImage::destroyDecodedData().

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::destroyDecodedData):

8:51 AM Changeset in webkit [173171] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[WinCairo] testapi.exe is not built.
https://bugs.webkit.org/show_bug.cgi?id=136369

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-09-02
Reviewed by Alex Christensen.

The testapi project should be of type Application.

  • JavaScriptCore.vcxproj/jsc/jscLauncher.vcxproj: Change project type to Application.
  • JavaScriptCore.vcxproj/testRegExp/testRegExpLauncher.vcxproj: Ditto.
  • JavaScriptCore.vcxproj/testapi/testapiCommonCFLite.props: Compile and link fix.
  • JavaScriptCore.vcxproj/testapi/testapiLauncher.vcxproj: Change project type to Application.
3:59 AM Changeset in webkit [173170] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Gtk] Make install-dependencies work on Arch Linux
https://bugs.webkit.org/show_bug.cgi?id=136374

Patch by Brendan Long <self@brendanlong.com> on 2014-09-02
Reviewed by Philippe Normand.

  • gtk/install-dependencies: Add dependencies for pacman (Arch Linux).
1:36 AM Changeset in webkit [173169] by Manuel Rego Casasnovas
  • 1 edit
    4 adds in trunk/LayoutTests

[CSS Grid Layout] Test coverage for first-line pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=135770

Reviewed by Zoltan Horvath.

According to the spec the ::first-line pseudo-element do not apply to
grid containers.

This was already working as expected but we were missing some tests
checking it, so we are adding new tests to have coverage.

  • fast/css-grid-layout/grid-container-ignore-first-line-expected.txt: Added.
  • fast/css-grid-layout/grid-container-ignore-first-line.html: Added.
  • fast/css-grid-layout/grid-item-first-line-valid-expected.txt: Added.
  • fast/css-grid-layout/grid-item-first-line-valid.html: Added.
1:06 AM Changeset in webkit [173168] by Philippe Normand
  • 4 edits in trunk/Source/WebKit2

Unreviewed, GTK build fix after r173163.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::createDrawingAreaProxy):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::update):
(WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
(WebKit::DrawingAreaProxyImpl::incorporateUpdate):
(WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
(WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::updateAcceleratedCompositingMode):

  • UIProcess/DrawingAreaProxyImpl.h:

Sep 1, 2014:

9:43 PM Changeset in webkit [173167] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the iOS build.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _createDrawingAreaProxy]):
Whoops.

7:05 PM Changeset in webkit [173166] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit2

Build break on the EFL port since r173163
https://bugs.webkit.org/show_bug.cgi?id=136443

Unreviewed build fix.

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2014-09-01

  • UIProcess/BackingStore.cpp:

(WebKit::BackingStore::BackingStore):

  • UIProcess/BackingStore.h:
  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:

(WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy):
(WebKit::CoordinatedDrawingAreaProxy::updateViewport):
(WebKit::CoordinatedDrawingAreaProxy::contentsRect):
(WebKit::CoordinatedDrawingAreaProxy::update):
(WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState):
(WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate):
(WebKit::CoordinatedDrawingAreaProxy::sendUpdateBackingStoreState):
(WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
(WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingAreaProxy::updateAcceleratedCompositingMode):

  • UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:

(WebKit::CoordinatedDrawingAreaProxy::page):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
(WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
(WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
(WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
(WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::createDrawingAreaProxy):

  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit::BackingStore::incorporateUpdate):

5:12 PM Changeset in webkit [173165] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove two unused WebKit2 PDF-related preferences
https://bugs.webkit.org/show_bug.cgi?id=136441

Reviewed by Dan Bernstein.

  • Shared/WebPreferencesDefinitions.h:

Move the macro arguments comment down near where the macros are being used.
No need to check both PLATFORM(IOS) and PLATFORM(IOS_SIMULATOR); the second can't be true without the first.
These two PDF preferences are long-unused; if we bring back their functionality,
we'll bring back the preferences.

4:15 PM Changeset in webkit [173164] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[CMAKE] Add missing offlineasm dependencies
https://bugs.webkit.org/show_bug.cgi?id=136437

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-09-01
Reviewed by Csaba Osztrogonác.

Add the ARM64, MIPS and SH4 backends to the dependencies.

  • CMakeLists.txt:
4:04 PM Changeset in webkit [173163] by timothy_horton@apple.com
  • 8 edits in trunk/Source/WebKit2

DrawingAreaProxy and friends can hold on to WebPageProxy by reference
https://bugs.webkit.org/show_bug.cgi?id=136440

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _createDrawingAreaProxy]):

  • UIProcess/DrawingAreaProxy.cpp:

(WebKit::DrawingAreaProxy::DrawingAreaProxy):
(WebKit::DrawingAreaProxy::~DrawingAreaProxy):
(WebKit::DrawingAreaProxy::setExposedRect):
(WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):

  • UIProcess/DrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
(WebKit::RemoteLayerTreeDrawingAreaProxy::deviceScaleFactorDidChange):
(WebKit::RemoteLayerTreeDrawingAreaProxy::scaledExposedRect):
(WebKit::RemoteLayerTreeDrawingAreaProxy::sendUpdateGeometry):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidStart):
(WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidEnd):
(WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
(WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorScale):
(WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
(WebKit::RemoteLayerTreeDrawingAreaProxy::didRefreshDisplay):
(WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
(WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
(WebKit::TiledCoreAnimationDrawingAreaProxy::deviceScaleFactorDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
(WebKit::TiledCoreAnimationDrawingAreaProxy::colorSpaceDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::minimumLayoutSizeDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::enterAcceleratedCompositingMode):
(WebKit::TiledCoreAnimationDrawingAreaProxy::updateAcceleratedCompositingMode):
(WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
(WebKit::TiledCoreAnimationDrawingAreaProxy::intrinsicContentSizeDidChange):
(WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
(WebKit::TiledCoreAnimationDrawingAreaProxy::adjustTransientZoom):
(WebKit::TiledCoreAnimationDrawingAreaProxy::commitTransientZoom):

2:15 PM Changeset in webkit [173162] by Brian Burg
  • 5 edits
    2 adds in trunk

Provide column numbers to DTrace willExecute/didExecute probes
https://bugs.webkit.org/show_bug.cgi?id=136434

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

Provide the columnNumber and update stubs for !HAVE(DTRACE).

  • profiler/ProfileGenerator.cpp:

(JSC::ProfileGenerator::willExecute):
(JSC::ProfileGenerator::didExecute):

  • runtime/Tracing.d:
  • runtime/Tracing.h:

Tools:

Create a directory for DTrace scripts. Add an example script that
shows how to use static probes provided by JavaScriptCore's profiler.

  • Scripts/dtrace/jsc-trace-profiler-events.d: Added.
12:16 PM Changeset in webkit [173161] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

RenderThemeMac::paintProgressBar creates a buffer without respecting the destination's acceleration setting
https://bugs.webkit.org/show_bug.cgi?id=136427

Reviewed by Dan Bernstein.

No new tests, just a performance improvement.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintProgressBar):

12:15 PM Changeset in webkit [173160] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Remove an unnecessary local in GraphicsLayerCA::ensureStructuralLayer
https://bugs.webkit.org/show_bug.cgi?id=136426

Reviewed by Dan Bernstein.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::ensureStructuralLayer):
This was here so that we could call PlatformCALayerClient::platformLayerChanged,
but that no longer exists!

11:10 AM Changeset in webkit [173159] by clopez@igalia.com
  • 2 edits in trunk/Tools

[GTK] [JHBuild] Cyclic dependency between cairo and librsvg.
https://bugs.webkit.org/show_bug.cgi?id=136431

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules: Disable cairo SVG testsuite.

Add missing dependencies for librsvg (glib and cairo).

11:06 AM Changeset in webkit [173158] by clopez@igalia.com
  • 2 edits in trunk/Tools

[GTK] install-dependencies don't installs dbus-launch that is needed for the API tests.
https://bugs.webkit.org/show_bug.cgi?id=136425

Reviewed by Martin Robinson.

  • gtk/install-dependencies: Add dbus-x11 to the list of packages needed for running the tests.
3:33 AM Changeset in webkit [173157] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

Update my list of email addresses in contributors.json
https://bugs.webkit.org/show_bug.cgi?id=136424

Reviewed by Gyuyoung Kim.

  • Scripts/webkitpy/common/config/contributors.json:
2:33 AM Changeset in webkit [173156] by svillar@igalia.com
  • 6 edits in trunk

[CSS Grid Layout] Resolved value of grid-template-* must include every track listed
https://bugs.webkit.org/show_bug.cgi?id=136362

Reviewed by Darin Adler.

Source/WebCore:

Section 5.1.5 of the specs clearly states that the resolved value
for grid-template-* must include every listed track, whether
explicitly or implicitly created. We were only listing the
explicit grid tracks.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridTrackList):

LayoutTests:

Added new test cases to verify that both explicit and implicit
tracks are listed in grid-template-* resolved values. Also
refactored a testing function to improve the readability of the test.

  • fast/css-grid-layout/grid-auto-columns-rows-get-set-expected.txt:
  • fast/css-grid-layout/grid-auto-columns-rows-get-set.html:
  • fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:

(testGridAutoDefinitionsValues):

2:28 AM Changeset in webkit [173155] by gyuyoung.kim@samsung.com
  • 8 edits in trunk

[CMAKE] Build warning by INTERFACE_LINK_LIBRARIES
https://bugs.webkit.org/show_bug.cgi?id=136194

Reviewed by Csaba Osztrogonác.

Set the LINK_INTERFACE_LIBRARIES target property on the top level CMakeLists.txt.

  • CMakeLists.txt:
1:35 AM Changeset in webkit [173154] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[SOUP] WebKitDownload cannot overwrite existing file
https://bugs.webkit.org/show_bug.cgi?id=136322

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-09-01
Reviewed by Carlos Garcia Campos.

  • Shared/Downloads/soup/DownloadSoup.cpp:

(WebKit::DownloadClient::didReceiveResponse): pass a member variable
to Download::decideDestinationWithSuggestedFilename instead of a
temporary bool, so we can use the result in didFinishLoading.
(WebKit::DownloadClient::didFinishLoading): overwrite the destination
if Download::decideDestinationWithSuggestedFilename determined we
should do so.

Aug 31, 2014:

10:10 PM Changeset in webkit [173153] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, fix build break on EFL and GTK since r173152.

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::platformInit): Remove a bool parameter because it was removed from function's declaration.

6:53 PM Changeset in webkit [173152] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebCore

Remove GraphicsContext constructor that takes shouldUseContextColors
https://bugs.webkit.org/show_bug.cgi?id=136421

Reviewed by Dan Bernstein.

  • WebCore.exp.in:
  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::GraphicsContext):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContextState::GraphicsContextState):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):
(WebCore::GraphicsContext::drawLinesForText):
As far as I can tell, the last user of this constructor died with WebNSStringDrawing.
Adjust all code to assume shouldUseContextColors=true.

6:11 PM Changeset in webkit [173151] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Remove unused ARMv6-specific #if branches in WebCore::canHyphenate
https://bugs.webkit.org/show_bug.cgi?id=136420

Reviewed by Dan Bernstein.

  • platform/text/cf/HyphenationCF.cpp:

(WebCore::AtomicStringKeyedMRUCache<RetainPtr<CFLocaleRef>>::createValueForNullKey):
Use kCFAllocatorDefault instead of 0.

(WebCore::canHyphenate):
Remove ARMv6-specific code.

3:06 PM Changeset in webkit [173150] by timothy_horton@apple.com
  • 9 edits in trunk/Source

Remove unnecessary (and unnecessarily iOS-specific) setStrokeAndFillColor
https://bugs.webkit.org/show_bug.cgi?id=136416

Reviewed by Dan Bernstein.

  • WebCore.exp.in:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::setStrokeAndFillColor): Deleted.
Remove.

  • WebView/WebFrameView.mm:

(-[WebFrameView drawRect:]):
We only end up filling, so only set the fill color.

  • WebView/WebPDFViewIOS.mm:

(-[WebPDFView drawPage:]):
(-[WebPDFView drawRect:]):

  • WebView/WebPlainWhiteView.mm:

We only end up filling, so only set the fill color.

3:03 PM Changeset in webkit [173149] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebCore

Remove duplicate implementation of drawEllipse and some related PLATFORM(IOS) ifdefs
https://bugs.webkit.org/show_bug.cgi?id=136413

Reviewed by Dan Bernstein.

No new tests, just cleanup.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawRaisedEllipse):
There's nothing iOS specific about this function.

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::drawEllipse):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::drawEllipse):
Un-ifdef drawRaisedEllipse; delete the reimplementation of drawEllipse that takes
a FloatRect and make the normal one take a FloatRect instead.

(WebCore::GraphicsContext::platformInit):
Make sure that the CGContext's line width starts out in sync with GraphicsContext's.
By default, CGContext has a line width of 1 and GraphicsContext 0, so they could previously
have been out of sync until someone set the width explicitly.

3:02 PM Changeset in webkit [173148] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Fix a harmless mismerge in BitmapImage::destroyDecodedDataIfNecessary
https://bugs.webkit.org/show_bug.cgi?id=136412

Reviewed by Alexey Proskuryakov.

No new tests, just cleanup.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::destroyDecodedDataIfNecessary):
Drop the leading 'c' and the 'static' on the cutoff parameter.
Remove the duplicated early return (seems like it happened in the merge).
Remove reference to the exact size in the comment, since it's different on iOS.

3:01 PM Changeset in webkit [173147] by timothy_horton@apple.com
  • 3 edits
    1 delete in trunk/Source/WebCore

Use SinkDocument instead of PDFDocument; get rid of PDFDocument
https://bugs.webkit.org/show_bug.cgi?id=136414

Reviewed by Alexey Proskuryakov.

  • WebCore.xcodeproj/project.pbxproj:
  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::createDocument):

  • pdf/ios/PDFDocument.cpp: Removed.
  • pdf/ios/PDFDocument.h: Removed.

Use the generic SinkDocument, which ignores all incoming data just like PDFDocument.
Delete the unnecessary and iOS-specific PDFDocument.cpp/h

11:14 AM Changeset in webkit [173146] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.18

New tag.

1:06 AM Changeset in webkit [173145] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Adjust an antique comment in Image::drawPattern
https://bugs.webkit.org/show_bug.cgi?id=136411

Reviewed by Dan Bernstein.

  • platform/graphics/cg/ImageCG.cpp:

(WebCore::Image::drawPattern):
Reword the comment.

1:04 AM Changeset in webkit [173144] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Occasional crashes (null deref) under ViewGestureController::endMagnificationGesture
https://bugs.webkit.org/show_bug.cgi?id=136409
<rdar://problem/18104748>

Reviewed by Dan Bernstein.

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::endMagnificationGesture):
Null-check DrawingArea.

12:41 AM Changeset in webkit [173143] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

SVGImage::drawPatternForContainer creates a buffer without respecting the destination's acceleration setting
https://bugs.webkit.org/show_bug.cgi?id=136408
<rdar://problem/12013317>

Reviewed by Dan Bernstein.

No new tests required, just a performance improvement.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):
Use ImageBuffer::createCompatibleBuffer, which passes the destination's
acceleration setting through to the ImageBuffer constructor.

I didn't use GraphicsContext::createCompatibleBuffer because adjusting
how this function applies the destination's CTM is outside the scope of this patch.

Aug 30, 2014:

4:19 PM Changeset in webkit [173142] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Convert string literals to character literals in makeString usage
https://bugs.webkit.org/show_bug.cgi?id=136394

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-30
Reviewed by Sam Weinig.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::evaluateInOverlay):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::setOriginalURLForDownloadRequest):

  • loader/MixedContentChecker.cpp:

(WebCore::MixedContentChecker::logWarning):

  • page/ContentSecurityPolicy.cpp:

(WebCore::CSPDirectiveList::checkMediaTypeAndReportViolation):
(WebCore::ContentSecurityPolicy::reportUnsupportedDirective):
(WebCore::ContentSecurityPolicy::reportInvalidPathCharacter):
Also reorder some code to ensure single string creation.

3:43 PM Changeset in webkit [173141] by mjs@apple.com
  • 12 edits in trunk/Source

Use RetainPtr::autorelease in some places where it seems appropriate
https://bugs.webkit.org/show_bug.cgi?id=136280

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • API/JSContext.mm:

(-[JSContext name]): Use RetainPtr::autorelease() in place of ObjC autorelease.

  • API/JSValue.mm:

(valueToString): Make appropriate use of RetainPtr

Source/WebCore:

  • platform/mac/URLMac.mm:

(WebCore::URL::operator NSURL *): Use autorelease() instead of
CFBridgingRelease(leakRef())

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(imageFromRect): Use RetainPtr in this function.

  • WebView/WebPDFRepresentation.mm:

(-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Use RetainPtr
in this method.

Source/WebKit2:

  • Shared/Cocoa/WKNSURLExtras.mm:

(urlWithWTFString): Use autorelease() instead of CFBridgingRelease(leakRef())

Source/WTF:

  • wtf/text/mac/StringImplMac.mm:

(WTF::StringImpl::operator NSString *): Use autorelease() instead of
CFBridgingRelease(leakRef())

11:22 AM Changeset in webkit [173140] by fpizlo@apple.com
  • 2 edits in trunk/Tools

[RJST] eager-no-cjit should really mean eager
https://bugs.webkit.org/show_bug.cgi?id=136407

Reviewed by Mark Hahnenberg.

At some point we made NO_CJIT_OPTIONS force threshold settings to something reasonable
and well-known. But the way we appended options was such that NO_CJIT_OPTIONS came in
after EAGER_OPTIONS. The whole point of "eager" was to use eager tier-up thresholds. This
all meant that NO_CJIT_OPTIONS was overriding the eagerness of EAGER_OPTIONS, for the one
threshold setting that NO_CJIT_OPTIONS was currently setting
(thresholdForJITAfterWarmUp). The solution is to make sure that we always append
NO_CJIT_OPTIONS before we append EAGER_OPTIONS.

Luckily, no tests regressed during the time that we lost eager-no-cjit coverage.

  • Scripts/run-jsc-stress-tests:
9:20 AM Changeset in webkit [173139] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening. Mark some compositing tests as "failure" since r172999

  • platform/efl/TestExpectations:
6:42 AM Changeset in webkit [173138] by Yusuke Suzuki
  • 7 edits
    10 adds in trunk

CSS: Refactor :visited handling in SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=135639

Reviewed by Benjamin Poulain.

Source/WebCore:

:visited is specially handled in the SelectorChecker and style resolution
because of security issues. That is nested links and adjacent combinators.
Since we propagate linkState from the ancestors,

  1. linkStates of ancestors from the target node are only used to calculate the linkState of the current node. This is why adjacent combinators disable :visited.
  1. linkState is overrides by the closest link element in the ancestors. This is why :visited is effective on the closest link element.

In this patch, we fix 3 things.

  1. Simplify SelectorChecker. Move m_mode to CheckingContext and it makes CheckingContext more similar to SelectorCompiler::CheckingContext in CSS JIT. And hide visitedMatchType parameter from the caller of SelectorChecker.
  1. Disable :visited inside :-webkit-any. Currently, :-webkit-any provides MatchAll link match type. So considering visited match type in the matching phase of :visited provides inconsistency. In this patch, :-webkit-any(:visited) never matches. And :-webkit-any(:link) acts like a :-webkit-any(:any-link). This behavior represents that visited match type is always considered as disabled inside :-webkit-any. This behavior may be changed when Selector Level4 is implemented.
  1. Fix the issue when traversing the descendant element, first encountered link check is missing.

Tests: fast/history/link-inside-any.html

fast/history/link-inside-not.html
fast/history/nested-visited-test-override.html
fast/history/visited-inside-any.html
fast/history/visited-inside-not.html

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::ruleMatches):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::SelectorChecker):
(WebCore::SelectorChecker::match):
(WebCore::hasScrollbarPseudoElement):
(WebCore::checkingContextForParent):
(WebCore::SelectorChecker::matchRecursively):
(WebCore::SelectorChecker::checkOne):

  • css/SelectorChecker.h:

(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):

  • css/StyleResolver.h:

(WebCore::checkRegionSelector):

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::selectorMatches):

LayoutTests:

  • fast/history/link-inside-any-expected.txt: Added.
  • fast/history/link-inside-any.html: Added.
  • fast/history/link-inside-not-expected.txt: Added.
  • fast/history/link-inside-not.html: Added.
  • fast/history/nested-visited-test-override-expected.txt: Added.
  • fast/history/nested-visited-test-override.html: Added.
  • fast/history/visited-inside-any-expected.txt: Added.
  • fast/history/visited-inside-any.html: Added.
  • fast/history/visited-inside-not-expected.txt: Added.
  • fast/history/visited-inside-not.html: Added.

Aug 29, 2014:

8:16 PM Changeset in webkit [173137] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.1-branch/Source

Versioning.

8:15 PM Changeset in webkit [173136] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-600.1.17

New Tag.

7:55 PM Changeset in webkit [173135] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Subpixel layout: Remove LayoutUnit's kEffectiveFixedPointDenominator.
https://bugs.webkit.org/show_bug.cgi?id=136383.

Reviewed by Simon Fraser.

There's only one subpixel denominator now.

No change in functionality.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::LayoutUnit):
(WebCore::LayoutUnit::fromFloatCeil):
(WebCore::LayoutUnit::fromFloatFloor):
(WebCore::LayoutUnit::toInt):
(WebCore::LayoutUnit::toFloat):
(WebCore::LayoutUnit::toDouble):
(WebCore::LayoutUnit::operator++):
(WebCore::LayoutUnit::ceil):
(WebCore::LayoutUnit::round):
(WebCore::LayoutUnit::floor):
(WebCore::LayoutUnit::ceilToFloat):
(WebCore::LayoutUnit::fraction):
(WebCore::LayoutUnit::epsilon):
(WebCore::LayoutUnit::nearlyMax):
(WebCore::LayoutUnit::nearlyMin):
(WebCore::LayoutUnit::isInBounds):
(WebCore::LayoutUnit::setValue):
(WebCore::boundedMultiply):
(WebCore::operator*):
(WebCore::operator/):
(WebCore::operator%):
(WebCore::roundToDevicePixel):
(WebCore::floorToDevicePixel):
(WebCore::ceilToDevicePixel):

7:55 PM Changeset in webkit [173134] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Rename updatePreferredWidth to make it more explicit.
https://bugs.webkit.org/show_bug.cgi?id=136389

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderBlock.cpp:

(WebCore::preferredWidth):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::updatePreferredWidth): Deleted.

6:33 PM Changeset in webkit [173133] by barraclough@apple.com
  • 4 edits in trunk/Source/WebCore

Make timerNestingLevel threadsafe
https://bugs.webkit.org/show_bug.cgi?id=136401

Reviewed by Tim Horton.

timerNestingLevel, used by DOMTimer to determine whether a timer is 'nested'
(repeating, possible due to a timer rescheduling itself) is a global. Since
worker threads can set timers too this is not thread safe.

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::ScriptExecutionContext):

  • added initialize m_timerNestingLevel
  • dom/ScriptExecutionContext.h:

(WebCore::ScriptExecutionContext::timerNestingLevel):
(WebCore::ScriptExecutionContext::setTimerNestingLevel):

  • added accessors
  • page/DOMTimer.cpp:

(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::fired):

  • move timerNestingLevel to the context
6:11 PM Changeset in webkit [173132] by barraclough@apple.com
  • 2 edits in trunk/Source/WebCore

DOMTimer::m_nestingLevel is prone to overflow
https://bugs.webkit.org/show_bug.cgi?id=136399

Reviewed by Alexey Proskuryakov.

Since this would happen after the 2 billionth timer fire this is unlikely,
and consequences aren't severe (breaks throttling).

This change has the following consequences.

  • m_nestingLevel saturates to its max value.
  • unnested timers are indicated by a nesting level of 0.
  • repeat timers update m_nestingLevel on every fire, not just those that should have been throttled.

The last point is subtle, but ultimately should be inconsequential. Timers
whose requested timeout is less that the minimum interval will saturate quickly
anyway; timers with an original interval greater than the minimum previously
wouldn't have incremented m_nestingLevel, but doing so now doesn't hurt since
they won't be throttled when they hit the threshold. This simplifies things
conceptually a little & reduces the test performed on each timer fire.

  • page/DOMTimer.cpp:

(WebCore::shouldForwardUserGesture):

  • unnested timers are indicated by a nesting level of 0

(WebCore::DOMTimer::DOMTimer):

  • don't increment nesting level on construction

(WebCore::DOMTimer::fired):

  • saturating increments

(WebCore::DOMTimer::adjustMinimumTimerInterval):
(WebCore::DOMTimer::intervalClampedToMinimum):

  • added ASSERTs
5:19 PM Changeset in webkit [173131] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Ensure that the call frame passed from doVMEntry to the called function always contains the valid scope chain.
https://bugs.webkit.org/show_bug.cgi?id=136391

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-29
Reviewed by Michael Saboff.

Do not rely on calling conventions to fill in the CallerFrame component
of the ExecState* parameter of the called function.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
5:01 PM Changeset in webkit [173130] by jhoneycutt@apple.com
  • 2 edits in branches/safari-600.1-branch/LayoutTests

2014-08-29 Jon Honeycutt <jhoneycutt@apple.com>

Skip some tests that test features disabled on the branch.

Rubber-stamped by Andreas Kling.

  • platform/mac/TestExpectations:
4:34 PM Changeset in webkit [173129] by dbates@webkit.org
  • 1 edit
    1 add in trunk/Tools

[iOS] Configure Xcode to build a command line tool for the iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=136388

Reviewed by David Kilzer.

Add a script, called configure-xcode-for-ios-development, to configure Xcode to
support building a command line tool for the iOS Simulator. You must run this
script as root.

The script uses the xcspec files in the OS X SDK to create xcspec files in the
iOS Simulator SDK with the product- and package- type definitions to build a
command line tool, if applicable.

  • Scripts/configure-xcode-for-ios-development: Added.
4:24 PM Changeset in webkit [173128] by jhoneycutt@apple.com
  • 2 edits in branches/safari-600.1-branch/LayoutTests

2014-08-29 Jon Honeycutt <jhoneycutt@apple.com>

Merge r171595, which updates a media test's expected result.

Rubber-stamped by Andreas Kling.

2014-07-25 Zalan Bujtas <Alan Bujtas>

Unreviewed media test gardening after r171593.

  • platform/mac/http/tests/media/hls/video-controls-live-stream-expected.txt:
4:17 PM Changeset in webkit [173127] by jhoneycutt@apple.com
  • 2 edits in branches/safari-600.1-branch/LayoutTests

2014-08-29 Jon Honeycutt <jhoneycutt@apple.com>

Add an expected failure for a test that relies on a feature disabled on
the branch.

Rubber-stamped by Andreas Kling.

3:55 PM Changeset in webkit [173126] by timothy_horton@apple.com
  • 6 edits
    1 delete in trunk/Tools

Remove Windows WebKit2 code from TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=136385

Reviewed by Alexey Proskuryakov.

  • TestWebKitAPI/PlatformUtilities.h:
  • TestWebKitAPI/PlatformWebView.h:

(TestWebKitAPI::PlatformWebView::setParentWindowMessageObserver): Deleted.

  • TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:

(TestWebKitAPI::TEST): Deleted.

  • TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/DoNotCopyANullCFURLResponse.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/HideFindIndicator.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/ResizeViewWhileHidden.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/TranslateMessageGeneratesWMChar.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp: Removed.
  • TestWebKitAPI/Tests/WebKit2/win/WMPrint.cpp: Removed.
3:52 PM Changeset in webkit [173125] by saambarati1@gmail.com
  • 2 edits in trunk/Source/JavaScriptCore

emit op_profile_type for deconstruction assignments
https://bugs.webkit.org/show_bug.cgi?id=136274

Reviewed by Filip Pizlo.

Enable type profiling for ES6 deconstruction expressions.

  • bytecompiler/NodesCodegen.cpp:

(JSC::BindingNode::bindValue):

3:21 PM Changeset in webkit [173124] by jhoneycutt@apple.com
  • 2 edits in branches/safari-600.1-branch/LayoutTests

2014-08-28 Jon Honeycutt <jhoneycutt@apple.com>

Merge r172800, which just updates TestExpectations to fix a failing
test on the branch.

Rubber-stamped by Andreas Kling.

2014-08-20 Alexey Proskuryakov <ap@apple.com>

fast/multicol/mixed-opacity-fixed-test.html fails in compositing mode
https://bugs.webkit.org/show_bug.cgi?id=136109

  • platform/mac-wk2/TestExpectations: Updated test expectations to a non-flaky failure, and to point to the new bug.
2:58 PM Changeset in webkit [173123] by Lucas Forschler
  • 8 edits in branches/safari-600.1-branch/Source/WebKit2

Merged r173121. rdar://problem/16991213

2:55 PM Changeset in webkit [173122] by Lucas Forschler
  • 3 edits in branches/safari-600.1-branch/Source/WebKit2

Merged r173118. rdar://problem/16991213

2:38 PM Changeset in webkit [173121] by ap@apple.com
  • 8 edits in trunk/Source/WebKit2

More occasional crashes in ServicesController::resfreshExistingServices
https://bugs.webkit.org/show_bug.cgi?id=136387
<rdar://problem/18167200>

Patch by Tim Horton <timothy_horton@apple.com> on 2014-08-29
Reviewed by Dan Bernstein.

  • UIProcess/mac/ServicesController.mm:

(WebKit::ServicesController::ServicesController):
Speculative fix; if this block is called synchronously, we'll end up
calling back into ::shared() before the NeverDestroyed is initialized,
ending up with two ServicesControllers.

2:33 PM Changeset in webkit [173120] by commit-queue@webkit.org
  • 31 edits in trunk/Source

JavaScriptCore: Use ASCIILiteral where possible
https://bugs.webkit.org/show_bug.cgi?id=136179

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-08-29
Reviewed by Michael Saboff.

Source/JavaScriptCore:

General string / character related changes. Use ASCIILiteral where
possible, jsNontrivialString where possible, and replace string
literals with character literals in some places.

No new tests, no changes to functionality.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::nameForRegister):

  • bytecompiler/NodesCodegen.cpp:

(JSC::PostfixNode::emitBytecode):
(JSC::PrefixNode::emitBytecode):
(JSC::AssignErrorNode::emitBytecode):
(JSC::ForInNode::emitMultiLoopBytecode):
(JSC::ForOfNode::emitBytecode):
(JSC::ObjectPatternNode::toString):

  • dfg/DFGFunctionWhitelist.cpp:

(JSC::DFG::FunctionWhitelist::contains):

  • dfg/DFGOperations.cpp:

(JSC::DFG::newTypedArrayWithSize):
(JSC::DFG::newTypedArrayWithOneArgument):

  • inspector/ConsoleMessage.cpp:

(Inspector::ConsoleMessage::addToFrontend):

  • inspector/InspectorBackendDispatcher.cpp:

(Inspector::InspectorBackendDispatcher::dispatch):

  • inspector/ScriptCallStackFactory.cpp:

(Inspector::extractSourceInformationFromException):

  • inspector/scripts/codegen/generator_templates.py:
  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::functionName):
(JSC::StackVisitor::Frame::sourceURL):

  • jit/JITOperations.cpp:
  • jsc.cpp:

(functionDescribeArray):
(functionRun):
(functionLoad):
(functionReadFile):
(functionCheckSyntax):
(functionTransferArrayBuffer):
(runWithScripts):
(runInteractive):

  • parser/Lexer.cpp:

(JSC::Lexer<T>::invalidCharacterMessage):
(JSC::Lexer<T>::parseString):
(JSC::Lexer<T>::parseStringSlowCase):
(JSC::Lexer<T>::lex):

  • profiler/Profile.cpp:

(JSC::Profile::Profile):

  • runtime/Arguments.cpp:

(JSC::argumentsFuncIterator):

  • runtime/ArrayPrototype.cpp:

(JSC::performSlowSort):
(JSC::arrayProtoFuncSort):

  • runtime/ExceptionHelpers.cpp:

(JSC::createError):
(JSC::createInvalidParameterError):
(JSC::createNotAConstructorError):
(JSC::createNotAFunctionError):
(JSC::createNotAnObjectError):
(JSC::createErrorForInvalidGlobalAssignment):

  • runtime/FunctionPrototype.cpp:

(JSC::insertSemicolonIfNeeded):

  • runtime/JSArray.cpp:

(JSC::JSArray::defineOwnProperty):
(JSC::JSArray::pop):
(JSC::JSArray::push):

  • runtime/JSArrayBufferConstructor.cpp:

(JSC::JSArrayBufferConstructor::finishCreation):

  • runtime/JSArrayBufferPrototype.cpp:

(JSC::arrayBufferProtoFuncSlice):

  • runtime/JSDataView.cpp:

(JSC::JSDataView::create):

  • runtime/JSDataViewPrototype.cpp:

(JSC::getData):
(JSC::setData):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncProtoSetter):

  • runtime/JSPromiseConstructor.cpp:

(JSC::JSPromiseConstructor::finishCreation):

  • runtime/LiteralParser.cpp:

(JSC::LiteralParser<CharType>::Lexer::lex):
(JSC::LiteralParser<CharType>::Lexer::lexString):
(JSC::LiteralParser<CharType>::parse):

  • runtime/LiteralParser.h:

(JSC::LiteralParser::getErrorMessage):

  • runtime/TypeSet.cpp:

(JSC::TypeSet::seenTypes):
(JSC::TypeSet::displayName):
(JSC::TypeSet::allPrimitiveTypeNames):
(JSC::StructureShape::propertyHash):
(JSC::StructureShape::stringRepresentation):

Source/WTF:

  • wtf/text/WTFString.cpp:

(asciiDebug):

2:32 PM Changeset in webkit [173119] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

More occasional crashes in ServicesController::resfreshExistingServices
https://bugs.webkit.org/show_bug.cgi?id=136387
<rdar://problem/18167200>

Reviewed by Dan Bernstein.

  • UIProcess/mac/ServicesController.mm:

(WebKit::ServicesController::ServicesController):
Speculative fix; if this block is called synchronously, we'll end up
calling back into ::shared() before the NeverDestroyed is initialized,
ending up with two ServicesControllers.

2:23 PM Changeset in webkit [173118] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

WebPageProxy::close() is a no-op for terminated processes
https://bugs.webkit.org/show_bug.cgi?id=136378
Related to <rdar://problem/16991213> and to <rdar://problem/17095600>

Reviewed by Brady Eidson.

Also fixes issues that got uncovered after making close() work.

  • UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::invalidate): Don't

close the page, because it makes no sense, and causes an assertion now. Previosly,
this was OK because the page was invalid already, and close() was a no-op.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::~WebPageProxy): Added some assertions to catch invalidation
issues earlier.
(WebKit::WebPageProxy::reattachToWebProcess): Make it an invariant that a page's
process always has a message receiver for it, until close() removes it.
(WebKit::WebPageProxy::close): Make this function work for all open pages, whether
they have a page or not.
(WebKit::WebPageProxy::processDidFinishLaunching): Added an asserion that process
agrees about its state.
(WebKit::WebPageProxy::resetStateAfterProcessExited): Don't remove a message receiver,
we now only do this in reattach or close.

1:10 PM Changeset in webkit [173117] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Fix how Popover animates
https://bugs.webkit.org/show_bug.cgi?id=136353

Patch by Saam Barati <sbarati@apple.com> on 2014-08-29
Reviewed by Timothy Hatcher.

Popovers currently don't animate properly because they use
window.requestAnimationFrame which won't fire its callback
while the inspector is paused in the debugger. This patches
switches the callback mechanism to setTimeout and also changes
how a Popover's anchor animates to prevent visual glitches.

Popover also has a new function that allows a new target
frame and new content to be set simultaneously and to
animate to show the new content while changing the
location of the popover frame.

SourceCodeTextEditor uses Popover's new API for animating
between popovers when paused in the debugger. SourceCodeTextEditor
also now ensures proper balancing of popover tracking event
listeners.

  • UserInterface/Views/Popover.js:

(WebInspector.Popover.prototype.present):
(WebInspector.Popover.prototype.presentNewContentWithFrame):
(WebInspector.Popover.prototype.dismiss):
(WebInspector.Popover.prototype._update):
(WebInspector.Popover.prototype.drawBackground):
(WebInspector.Popover.prototype._animateFrame):
(WebInspector.Popover.prototype._drawFrame):
(WebInspector.Popover.prototype._addListenersIfNeeded):
(WebInspector.Popover.prototype._animateFrame.drawBackground): Deleted.

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype._showPopover):
(WebInspector.SourceCodeTextEditor.prototype._dismissPopover):
(WebInspector.SourceCodeTextEditor.prototype._trackPopoverEvents):

11:15 AM Changeset in webkit [173116] by clopez@igalia.com
  • 2 edits in trunk/Tools

[JSC] Some JSC tests are dependent on the machine time zone.
https://bugs.webkit.org/show_bug.cgi?id=136363

Reviewed by Filip Pizlo.

  • Scripts/run-javascriptcore-tests: Export TZ environment variable to US/Pacific.

Unskip the tests that were skipped on r99580.

11:15 AM Changeset in webkit [173115] by Antti Koivisto
  • 5 edits
    5 deletes in trunk/Source/WebKit2

Remove NetworkResourceLoaderClient and subclasses.
https://bugs.webkit.org/show_bug.cgi?id=136370

Reviewed by Darin Adler.

This code is needlessly abstract. Move what logic these classes have to NetworkResourceLoader.

  • NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Removed.
  • NetworkProcess/AsynchronousNetworkLoaderClient.h: Removed.
  • NetworkProcess/NetworkLoaderClient.h: Removed.
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::~NetworkResourceLoader):
(WebKit::NetworkResourceLoader::isSynchronous):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
(WebKit::NetworkResourceLoader::didReceiveBuffer):
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::didFail):
(WebKit::NetworkResourceLoader::willSendRequestAsync):
(WebKit::NetworkResourceLoader::didSendData):
(WebKit::NetworkResourceLoader::sendBuffer):
(WebKit::NetworkResourceLoader::sendReplyToSynchronousRequest):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):

  • NetworkProcess/NetworkResourceLoader.h:

(WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):

  • NetworkProcess/SynchronousNetworkLoaderClient.cpp: Removed.
  • NetworkProcess/SynchronousNetworkLoaderClient.h: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
10:55 AM Changeset in webkit [173114] by Alan Bujtas
  • 14 edits in trunk/Source/WebCore

Improve showRenderTree() output.
https://bugs.webkit.org/show_bug.cgi?id=136244

Reviewed by Darin Adler.

Add more debugging information to showRenderTree().

Not testable.

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::showLineTreeForThis):
(WebCore::InlineBox::showLineTreeAndMark):
(WebCore::InlineBox::showLineBox):
(showNodeTree):
(showLineTree):
(WebCore::InlineBox::showBox): Deleted.

  • rendering/InlineBox.h:
  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::showLineTreeAndMark):

  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::showLineBox):
(WebCore::InlineTextBox::showBox): Deleted.

  • rendering/InlineTextBox.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::showLineTreeAndMark): Deleted.

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::showLineTreeAndMark):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderObject.cpp:

(WebCore::showRenderTreeLegend):
(WebCore::RenderObject::showNodeTreeForThis):
(WebCore::RenderObject::showRenderTreeForThis):
(WebCore::RenderObject::showLineTreeForThis):
(WebCore::RenderObject::showRegionsInformation):
(WebCore::RenderObject::showRenderObject):
(WebCore::RenderObject::showRenderSubTreeAndMark):
(showNodeTree):
(showLineTree):
(showRenderTree):
(WebCore::RenderObject::showRenderTreeAndMark): Deleted.

  • rendering/RenderObject.h:
  • rendering/RootInlineBox.h:
8:55 AM Changeset in webkit [173113] by Csaba Osztrogonác
  • 6 edits
    35 deletes in trunk/Source

Unreviwed, remove empty directories.

Source/JavaScriptCore:

  • qt: Removed.

Source/ThirdParty/ANGLE:

  • src/compiler/depgraph: Removed.
  • src/compiler/timing: Removed.
  • src/libGLESv2/renderer/shaders: Removed.
  • src/libGLESv2/renderer/shaders/compiled: Removed.

Source/WebCore:

  • Modules/networkinfo: Removed.
  • inspector/front-end: Removed.
  • inspector/front-end/Images: Removed.
  • inspector/front-end/UglifyJS: Removed.
  • inspector/front-end/ace: Removed.
  • inspector/front-end/cm: Removed.
  • platform/audio/ffmpeg: Removed.
  • platform/audio/ipp: Removed.
  • platform/graphics/gpu/opencl: Removed.

Source/WebKit:

  • efl: Removed.
  • efl/DefaultTheme: Removed.
  • efl/DefaultTheme/widget: Removed.
  • efl/WebCoreSupport: Removed.
  • efl/ewk: Removed.
  • efl/tests: Removed.
  • efl/tests/UnitTestUtils: Removed.
  • efl/tests/resources: Removed.
  • gtk: Removed.
  • gtk/WebCoreSupport: Removed.
  • gtk/docs: Removed.
  • gtk/gdom: Removed.
  • gtk/resources: Removed.
  • gtk/webkit: Removed.

Source/WebKit/mac:

  • ForwardingHeaders/wtf: Removed.

Source/WebKit2:

  • PluginProcess/qt: Removed.
  • Shared/API/c/qt: Removed.
  • Shared/Downloads/qt: Removed.
  • Shared/FileAPI: Removed.
  • Shared/qt: Removed.
  • UIProcess/API/C/qt: Removed.
  • UIProcess/API/cpp/qt: Removed.
  • UIProcess/API/qt: Removed.
  • UIProcess/API/qt/raw: Removed.
  • UIProcess/API/qt/tests: Removed.
  • UIProcess/API/qt/tests/html: Removed.
  • UIProcess/API/qt/tests/html/resources: Removed.
  • UIProcess/API/qt/tests/inspectorserver: Removed.
  • UIProcess/API/qt/tests/publicapi: Removed.
  • UIProcess/API/qt/tests/qmltests: Removed.
  • UIProcess/API/qt/tests/qmltests/DesktopBehavior: Removed.
  • UIProcess/API/qt/tests/qmltests/WebView: Removed.
  • UIProcess/API/qt/tests/qmltests/common: Removed.
  • UIProcess/API/qt/tests/qquickwebview: Removed.
  • UIProcess/API/qt/tests/qrawwebview: Removed.
  • UIProcess/InspectorServer/qt: Removed.
  • UIProcess/Launcher/qt: Removed.
  • UIProcess/Plugins/qt: Removed.
  • UIProcess/SharedWorkers: Removed.
  • UIProcess/qt: Removed.
  • WebProcess/Cookies/qt: Removed.
  • WebProcess/Downloads: Removed.
  • WebProcess/IndexedDB: Removed.
  • WebProcess/InjectedBundle/qt: Removed.
  • WebProcess/NetworkInfo: Removed.
  • WebProcess/Plugins/Netscape/qt: Removed.
  • WebProcess/WebCoreSupport/qt: Removed.
  • WebProcess/WebPage/qt: Removed.
  • WebProcess/qt: Removed.
  • qt: Removed.
3:05 AM Changeset in webkit [173112] by commit-queue@webkit.org
  • 10 edits in trunk

[EFL] Remove non Coordinated Graphics code path from cmake build system after r142169
https://bugs.webkit.org/show_bug.cgi?id=135560

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-08-29
Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/OptionsEfl.cmake: Removed TILED_BACKING_STORE guard.

Source/WebCore:

No new tests required, no new functionality.

  • PlatformEfl.cmake: Removed TEXTURE_MAPPER and 3D_GRAPHICS guards.
  • platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.

(WebCore::GraphicsContext3D::platformLayer):
(WebCore::GraphicsContext3D::createGraphicsSurfaces):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.

(WebCore::GraphicsContext3DPrivate::initialize):
(WebCore::GraphicsContext3DPrivate::releaseResources):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
(WebCore::GraphicsContext3DPrivate::graphicsSurfaceFlags):

  • platform/graphics/efl/GraphicsContext3DPrivate.h: Removed TEXTURE_MAPPER_GL and GRAPHICS_SURFACE guards.
  • platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp: Removed GRAPHICS_SURFACE guard.

Tools:

  • Scripts/webkitperl/FeatureList.pm: Removed TILED_BACKING_STORE guard.
1:06 AM Changeset in webkit [173111] by Carlos Garcia Campos
  • 2 edits
    1 move in trunk/Source/WebCore

RenderThemeGtk depends on classes outside of platform
https://bugs.webkit.org/show_bug.cgi?id=22176

Reviewed by Martin Robinson.

Move RenderThemeGtk.cpp from platform to rendering.

  • PlatformGTK.cmake:
  • rendering/RenderThemeGtk.cpp: Renamed from Source/WebCore/platform/gtk/RenderThemeGtk.cpp.
12:42 AM Changeset in webkit [173110] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebCore

[GTK] ScrollbarThemeGtk should not depend on RenderThemeGtk
https://bugs.webkit.org/show_bug.cgi?id=136338

Reviewed by Philippe Normand.

Remove the dependency by creating the GtkStyleContext for the
scrollbars in ScrollbarThemeGtk.

  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::gtkStyleChangedCallback): Call ScrollbarThemeGtk::themeChanged().
(WebCore::getStyleContext): Remove the scrollbar style context support.

  • platform/gtk/RenderThemeGtk.h: Remove gtkScrollbarStyle().
  • platform/gtk/ScrollbarThemeGtk.cpp:

(WebCore::ScrollbarStyleContext::ScrollbarStyleContext): Helper
class to create the global GtkStyleContext for scrollbars.
(WebCore::ScrollbarStyleContext::~ScrollbarStyleContext):
(WebCore::ScrollbarStyleContext::context):
(WebCore::gtkScrollbarStyleContext):
(WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Remove m_context initialization.
(WebCore::ScrollbarThemeGtk::themeChanged): Invalidate the
GtkStylecontext and call updateThemeProperties().
(WebCore::ScrollbarThemeGtk::updateThemeProperties): Use the
global style context.
(WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
(WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
(WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
(WebCore::ScrollbarThemeGtk::paintButton): Ditto.

  • platform/gtk/ScrollbarThemeGtk.h:
12:39 AM Changeset in webkit [173109] by Carlos Garcia Campos
  • 5 edits
    2 deletes in trunk/Source/WebCore

[GTK] Merge RenderThemeGtk3.cpp into RenderThemeGtk.cpp and ScrollbarThemeGtk3.cpp intoScrollbarThemeGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=136336

Reviewed by Philippe Normand.

There's no reason to have two files now that there's no GTK+2
support. Also fix coding style issues and compile warnings.

  • PlatformGTK.cmake:
  • platform/gtk/RenderThemeGtk.cpp:
  • platform/gtk/RenderThemeGtk.h:
  • platform/gtk/RenderThemeGtk3.cpp: Removed.
  • platform/gtk/ScrollbarThemeGtk.cpp:
  • platform/gtk/ScrollbarThemeGtk3.cpp: Removed.
Note: See TracTimeline for information about the timeline view.