rniwa@webkit.org [Thu, 3 Apr 2014 07:08:32 +0000 (07:08 +0000)]
WebKitPerfMonitor: Tooltips can be cut off at the top
https://bugs.webkit.org/show_bug.cgi?id=130960
Reviewed by Andreas Kling.
* public/common.css:
(#title): Removed the gradients, box shadows, and border from the header.
(#title h1): Reduce the font size.
(#title ul): Use line-height to vertically align the navigation bar instead of specifying a padding atop.
* public/index.html:
(.tooltop:before): Added. Identical to .tooltop:after except it's upside down (arrow facing up).
(.tooltip.inverted:before): Show the arrow facing up when .inverted is set.
(.tooltip.inverted:before): Hide the arrow facing down when .inverted is set.
* public/js/helper-classes.js:
(Tooltip.show): Show the tooltip below the point if placing it above the point results in the top of the
tooltip extending above y=0.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166701
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Thu, 3 Apr 2014 07:07:02 +0000 (07:07 +0000)]
WebKitPerfMonitor: Y-axis adjustment is too aggressive
https://bugs.webkit.org/show_bug.cgi?id=130937
Reviewed by Andreas Kling.
Previously, adjusted min. and max. were defined as the two standards deviations away from EWMA of measured
results. This had two major problems:
1. Two standard deviations can be too small to show the confidence interval for results.
2. Sometimes baseline and target can be more than two standards deviations away.
Fixed the bug by completely rewriting the algorithm to compute the interval. Instead of blindly using two
standard deviations as margins, we keep adding quarter the standard deviation on each side until more than 90%
of points lie in the interval or we've expanded 4 standard deviations. Once this condition is met, we reduce
the margin on each side separately to reduce the empty space on either side.
A more rigorous approach would involve computing least squared value of results with respect to intervals
but that seems like an overkill for a simple UI problem; it's also computationally expensive.
* public/index.html:
(Chart..adjustedIntervalForRun): Extracted from computeYAxisBoundsToFitLines.
(Chart..computeYAxisBoundsToFitLines): Compute the min. and max. adjusted intervals out of adjusted intervals
for each runs (current, baseline, and target) so that at least one point from each set of results is shown.
We wouldn't see the difference between measured values versus baseline and target values otherwise.
* public/js/helper-classes.js:
(PerfTestResult.unscaledConfidenceIntervalDelta): Returns the default value if the confidence
interval delta cannot be computed.
(PerfTestResult.isInUnscaledInterval): Added. Returns true iff the confidence intervals lies
within the given interval.
(PerfTestRuns..filteredResults): Extracted from unscaledMeansForAllResults now that PerfTestRuns.min and
PerfTestRuns.max need to use both mean and confidence interval delta for each result.
(PerfTestRuns..unscaledMeansForAllResults):
(PerfTestRuns.min): Take the confidence interval delta into account.
(PerfTestRuns.max): Ditto.
(PerfTestRuns.countResults): Returns the number of results in the given time frame (> minTime).
(PerfTestRuns.countResultsInInterval): Returns the number of results whose confidence interval lie within the
given interval.
(PerfTestRuns.exponentialMovingArithmeticMean): Fixed the typo so that it actually computes the EWMA.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166700
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 3 Apr 2014 06:21:27 +0000 (06:21 +0000)]
REGRESSION (r166144): fast/preloader/document-write.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=130942
* platform/mac/TestExpectations: Removing test expectation, because the offending
revision was rolled out.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166699
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Thu, 3 Apr 2014 06:15:51 +0000 (06:15 +0000)]
[EFL][WK1] Use Evas_Touch_Point_State instead of Ewk_Touch_Point_Type
https://bugs.webkit.org/show_bug.cgi?id=131151
Reviewed by Gyuyoung Kim.
Source/WebKit/efl:
Like ewebkit2, we'd beter to use EFL type instead of WebKit specific type
In addition, changed type of id as int to match with ewebkit2.
* ewk/ewk_frame.h: Replace Ewk_Touch_Point_Type to Evas_Touch_Point_State.
* ewk/ewk_touch_event.cpp:
(toPlatformTouchPointState):
Tools:
* DumpRenderTree/efl/EventSender.cpp: Replace Ewk_Touch_Point_Type to Evas_Touch_Point_State.
(TouchEventInfo::TouchEventInfo):
(sendTouchEvent):
(addTouchPointCallback):
(updateTouchPointCallback):
(cancelTouchPointCallback):
(releaseTouchPointCallback):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166698
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 3 Apr 2014 05:59:30 +0000 (05:59 +0000)]
Sandbox violation in NetworkProcess when uploading a bundle
https://bugs.webkit.org/show_bug.cgi?id=131133
Reviewed by Brady Eidson.
Source/WebCore:
Track generated file ownership explicitly, so that each copy of FormData would know
whether to delete the file.
This part is needed to prevent asserting in FormData destructor in NetworkProcess,
because it doesn't delete the files. Also, some cleanup.
* WebCore.exp.in: Don't export FormData::removeGeneratedFilesIfNeeded(), WebKit2
doesn't need it any more.
* platform/network/FormData.cpp: Removed m_hasGeneratedFiles. There is no problem
iterating over FormDataElements to compute it, and that's more robust when FormDatas
are passed or stored on disk permanently.
Updated touched functions to use C++ iteration, and renamed "e" to "element".
(WebCore::FormData::encode): Keep encoding a boolean for hasGeneratedFiles, because
the encoded FormData can be stored persitently, and we can't change the format.
* platform/network/FormData.h: (WebCore::FormDataElement::FormDataElement):
Added m_ownsGeneratedFile. FormData will only delete files it owns. Since files
are generated immediately before form submission, it's always the FormData being
submitted that owns the generated files.
Source/WebKit2:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
Don't delete the files. It can't work.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166697
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihnea@adobe.com [Thu, 3 Apr 2014 05:45:24 +0000 (05:45 +0000)]
[CSSRegions] Use RenderStyle::hasFlowInto when needed
https://bugs.webkit.org/show_bug.cgi?id=131092
Reviewed by Andrei Bucur.
Add hasFlowInto() helper method on RenderStyle to be used
instead of directly checking the presence or absence of flowThread value.
No new functionality, no new tests.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* dom/Element.cpp:
(WebCore::Element::shouldMoveToFlowThread):
* rendering/style/RenderStyle.h:
* style/StyleResolveTree.cpp:
(WebCore::Style::isRendererReparented):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166696
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 3 Apr 2014 05:28:43 +0000 (05:28 +0000)]
CSS JIT: the adjacent position is never reset
https://bugs.webkit.org/show_bug.cgi?id=131145
Reviewed by Andreas Kling.
Source/WebCore:
Corresponding radar: <rdar://problem/
16440036>. The backtracking action would use a tail
when not needed.
Test: fast/selectors/multiple-adjacent-chain-without-adjacent-tail.html
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::updateChainStates):
LayoutTests:
* fast/selectors/multiple-adjacent-chain-without-adjacent-tail-expected.txt: Added.
* fast/selectors/multiple-adjacent-chain-without-adjacent-tail.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166695
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bshafiei@apple.com [Thu, 3 Apr 2014 05:05:25 +0000 (05:05 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166694
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jinwoo7.song@samsung.com [Thu, 3 Apr 2014 04:57:29 +0000 (04:57 +0000)]
[WK2][EFL] Remove unnecessary reinterpret_cast<> in unit testcase
https://bugs.webkit.org/show_bug.cgi?id=131143
Reviewed by Gyuyoung Kim.
Ecore_Timer callback requires *Eina_Bool* return type instead of *bool*.
Also, WebKit/EFL port coding style recommends to use *Eina_Bool* in the
callback function for EFL event handler. Additionally, replaced 0 to nullptr.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::CallbackDataTimer::CallbackDataTimer):
(EWK2UnitTest::CallbackDataTimer::setDone):
(EWK2UnitTest::CallbackDataTimer::timeOutCallback):
(EWK2UnitTest::CallbackDataTimer::setTimedOut):
* UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
(EWK2StorageManagerTest::timerCallback):
(TEST_F):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166692
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 3 Apr 2014 02:38:24 +0000 (02:38 +0000)]
[iOS] Remove the legacy string drawing code
https://bugs.webkit.org/show_bug.cgi?id=131088
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-02
Reviewed by Sam Weinig.
Source/WebKit:
* WebKit.xcodeproj/project.pbxproj:
Source/WebKit/ios:
* Misc/WebNSStringDrawing.h: Removed.
* Misc/WebNSStringDrawing.mm: Removed.
* Misc/WebUIKitSupport.h:
Source/WebKit/mac:
* Configurations/WebKit.xcconfig:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166691
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 3 Apr 2014 01:38:53 +0000 (01:38 +0000)]
Remove a FIXME that happened.
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166690
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Thu, 3 Apr 2014 01:37:24 +0000 (01:37 +0000)]
Speculative build fix for Windows.
* DerivedSources.make: Make sure we generate our media control
scripts for Apple Windows (but not WinCairo)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166689
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 3 Apr 2014 01:36:58 +0000 (01:36 +0000)]
Build fix after r166684.
Source/WebKit/ios:
* WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
Source/WebKit/win:
* WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::searchWithGoogle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166688
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 3 Apr 2014 01:34:57 +0000 (01:34 +0000)]
Fix the !USE(IOSURFACE) build... again.
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166687
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 3 Apr 2014 01:09:40 +0000 (01:09 +0000)]
Fix the !USE(IOSURFACE) iOS build.
* platform/ios/MemoryPressureHandlerIOS.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166686
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 3 Apr 2014 00:56:09 +0000 (00:56 +0000)]
<https://webkit.org/b/131136> Remove FrameLoadRequest's m_lockHistory member since it's always false.
Reviewed by Andreas Kling.
* loader/FrameLoadRequest.cpp:
(WebCore::FrameLoadRequest::FrameLoadRequest):
* loader/FrameLoadRequest.h:
(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::lockHistory): Deleted.
(WebCore::FrameLoadRequest::setLockHistory): Deleted.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::load): Remove an if whose body was never executed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166685
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 3 Apr 2014 00:51:04 +0000 (00:51 +0000)]
<https://webkit.org/b/131135> Introduce LockHistory and LockBackForwardList enums to use in place of bools.
These arguments are often passed using literals at the call site, where the use of bools severely hinders
the readability of the code.
Reviewed by Andreas Kling.
Source/WebCore:
* WebCore.exp.in:
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::handleClick):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::submit):
* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::openURL):
(WebCore::HTMLFrameElementBase::setLocation):
* html/HTMLFrameElementBase.h:
* inspector/InspectorFrontendClientLocal.cpp:
(WebCore::InspectorFrontendClientLocal::openInNewTab):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::navigate):
* loader/FormSubmission.cpp:
(WebCore::FormSubmission::FormSubmission):
(WebCore::FormSubmission::create):
* loader/FormSubmission.h:
(WebCore::FormSubmission::lockHistory):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::changeLocation):
(WebCore::FrameLoader::urlSelected):
(WebCore::FrameLoader::loadURLIntoChildFrame):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::clientRedirected):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/FrameLoader.h:
* loader/FrameLoaderTypes.h:
* loader/NavigationScheduler.cpp:
(WebCore::ScheduledNavigation::ScheduledNavigation):
(WebCore::ScheduledNavigation::lockHistory):
(WebCore::ScheduledNavigation::lockBackForwardList):
(WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
(WebCore::ScheduledRedirect::ScheduledRedirect):
(WebCore::ScheduledLocationChange::ScheduledLocationChange):
(WebCore::ScheduledRefresh::ScheduledRefresh):
(WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
(WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
(WebCore::NavigationScheduler::scheduleRedirect):
(WebCore::NavigationScheduler::mustLockBackForwardList):
(WebCore::NavigationScheduler::scheduleLocationChange):
(WebCore::NavigationScheduler::scheduleFormSubmission):
* loader/NavigationScheduler.h:
* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::requestFrame):
(WebCore::SubframeLoader::requestObject):
(WebCore::SubframeLoader::loadOrRedirectSubframe):
* loader/SubframeLoader.h:
* page/ContextMenuController.cpp:
(WebCore::openNewWindow):
(WebCore::ContextMenuController::contextMenuItemSelected):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::setLocation):
(WebCore::DOMWindow::createWindow):
(WebCore::DOMWindow::open):
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::defaultEventHandler):
Source/WebKit/mac:
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
Source/WebKit2:
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::clickedLink):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166684
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Thu, 3 Apr 2014 00:44:19 +0000 (00:44 +0000)]
Update WKSI.
<rdar://problem/
16321286>
* libWebKitSystemInterfaceMavericks.a:
* libWebKitSystemInterfaceMountainLion.a:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166683
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 3 Apr 2014 00:33:02 +0000 (00:33 +0000)]
Pool IOSurfaces to help with allocation cost
https://bugs.webkit.org/show_bug.cgi?id=131096
<rdar://problem/
15373942>
Reviewed by Simon Fraser.
* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/Timer.h:
(WebCore::TimerBase::startRepeating): Add a std::chrono startRepeating.
* platform/graphics/cg/IOSurfacePool.h: Added.
(WebCore::IOSurfacePool::CachedSurfaceDetails::CachedSurfaceDetails):
(WebCore::IOSurfacePool::CachedSurfaceDetails::resetLastUseTime):
* platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Removed.
* platform/graphics/cg/ImageBufferBackingStoreCache.h: Removed.
* platform/graphics/cg/IOSurfacePool.cpp: Added.
(WebCore::IOSurfacePool::IOSurfacePool):
(WebCore::IOSurfacePool::sharedPool):
(WebCore::surfaceMatchesParameters):
(WebCore::IOSurfacePool::willAddSurface):
(WebCore::IOSurfacePool::didRemoveSurface):
(WebCore::IOSurfacePool::didUseSurfaceOfSize):
(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::insertSurfaceIntoPool):
(WebCore::IOSurfacePool::setPoolSize):
(WebCore::IOSurfacePool::tryEvictInUseSurface):
(WebCore::IOSurfacePool::tryEvictOldestCachedSurface):
(WebCore::IOSurfacePool::evict):
(WebCore::IOSurfacePool::collectInUseSurfaces):
(WebCore::IOSurfacePool::markOlderSurfacesPurgeable):
(WebCore::IOSurfacePool::collectionTimerFired):
(WebCore::IOSurfacePool::scheduleCollectionTimer):
(WebCore::IOSurfacePool::discardAllSurfaces):
(WebCore::IOSurfacePool::showPoolStatistics):
Add a pool of IOSurfaces. It behaves as such:
- Keeps up to 64MB of surfaces.
- Keeps unused and in-use surfaces (but never gets more than 1/2 full with the latter)
- Marks surfaces purgeable after they've been unused for 2 seconds.
- Tries to move surfaces from the in-use pool to the unused pool every 500ms.
- Evicts in an LRU-ish fashion, interleaving eviction of the oldest
surfaces and the in-use surfaces (since in-use surfaces are not immediately
useful for the pool, but they are desirous because they were recently used).
- Throws everything away under memory pressure.
* platform/graphics/cocoa/IOSurface.mm:
(IOSurface::create):
Try to grab a surface from the IOSurfacePool.
* platform/ios/MemoryPressureHandlerIOS.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::install):
(WebCore::MemoryPressureHandler::platformReleaseMemory):
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
Fix some includes, and throw away all surfaces when we're under memory pressure.
* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::~RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::clearBackingStore):
(WebKit::RemoteLayerBackingStore::display):
When RemoteLayerBackingStore discards a layer, throw it into the pool.
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
Disable the pool in the UI process.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166682
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alice.liu@apple.com [Thu, 3 Apr 2014 00:07:03 +0000 (00:07 +0000)]
Fix a typo causing TestWebKitAPI to timeout when testing Find.
Reviewed by Dan Bernstein.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageFindClient): Test for !functionPointer like
all the other implementations do.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166681
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
slewis@apple.com [Wed, 2 Apr 2014 23:53:30 +0000 (23:53 +0000)]
Source/WebCore: Roll out trac.webkit.org/changeset/166144
<rdar://problem/
16481284> PLT stops loading on news.google.com
Unreviewed rollout.
Rollout 166144 since it prevents the PLT from completing.
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::suspendPostAttachCallbacks):
(WebCore::ContainerNode::resumePostAttachCallbacks):
(WebCore::ContainerNode::queuePostAttachCallback):
(WebCore::ContainerNode::postAttachCallbacksAreSuspended):
(WebCore::ContainerNode::dispatchPostAttachCallbacks):
* dom/ContainerNode.h:
* dom/Document.cpp:
(WebCore::Document::recalcStyle):
* dom/Element.h:
(WebCore::PostAttachCallbackDisabler::PostAttachCallbackDisabler):
(WebCore::PostAttachCallbackDisabler::~PostAttachCallbackDisabler):
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::parseAttribute):
* html/HTMLFormControlElement.cpp:
(WebCore::focusPostAttach):
(WebCore::HTMLFormControlElement::didAttachRenderers):
(WebCore::updateFromElementCallback):
(WebCore::HTMLFormControlElement::didRecalcStyle):
* html/HTMLFrameOwnerElement.cpp:
(WebCore::needsStyleRecalcCallback):
(WebCore::HTMLFrameOwnerElement::scheduleSetNeedsStyleRecalc):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::parseAttribute):
(WebCore::HTMLObjectElement::shouldAllowQuickTimeClassIdQuirk):
(WebCore::HTMLObjectElement::hasValidClassId):
(WebCore::HTMLObjectElement::renderFallbackContent):
* html/HTMLObjectElement.h:
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::createElementRenderer):
(WebCore::HTMLPlugInImageElement::didAttachRenderers):
(WebCore::HTMLPlugInImageElement::willDetachRenderers):
(WebCore::HTMLPlugInImageElement::updateWidgetIfNecessary):
(WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
(WebCore::HTMLPlugInImageElement::updateWidgetCallback):
(WebCore::HTMLPlugInImageElement::startLoadingImage):
(WebCore::HTMLPlugInImageElement::startLoadingImageCallback):
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree):
(WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
(WebCore::HTMLPlugInImageElement::didRecalcStyle): Deleted.
(WebCore::HTMLPlugInImageElement::scheduleUpdateForAfterStyleResolution): Deleted.
(WebCore::HTMLPlugInImageElement::updateAfterStyleResolution): Deleted.
(WebCore::HTMLPlugInImageElement::removedFrom): Deleted.
(WebCore::is100Percent): Deleted.
(WebCore::HTMLPlugInImageElement::setNeedsImageReload): Deleted.
* html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement::imageLoader): Deleted.
(WebCore::HTMLPlugInImageElement::updateImageLoaderWithNewURLSoon): Deleted.
* style/StyleResolveTree.cpp:
(WebCore::Style::needsPseudeElement):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::needsPseudoElement): Deleted.
(WebCore::Style::postResolutionCallbackQueue): Deleted.
(WebCore::Style::queuePostResolutionCallback): Deleted.
(WebCore::Style::suspendMemoryCacheClientCalls): Deleted.
(WebCore::Style::PostResolutionCallbackDisabler::PostResolutionCallbackDisabler): Deleted.
(WebCore::Style::PostResolutionCallbackDisabler::~PostResolutionCallbackDisabler): Deleted.
(WebCore::Style::postResolutionCallbacksAreSuspended): Deleted.
* style/StyleResolveTree.h:
Source/WebKit/mac: Roll out http://trac.webkit.org/changeset/166144
<rdar://problem/
16481284> PLT stops loading on news.google.com
Unreviewed rollout.
Rollout 166144 since it prevents the PLT from completing.
* WebCoreSupport/WebFrameLoaderClient.mm:
LayoutTests: Roll out http://trac.webkit.org/changeset/166144
<rdar://problem/
16481284> PLT stops loading on news.google.com
Unreviewed rollout.
Rollout 166144 since it prevents the PLT from completing.
* plugins/plugin-remove-readystatechange-expected.txt:
* plugins/plugin-remove-readystatechange.html:
* svg/custom/object-no-size-attributes-expected.txt:
* svg/custom/object-no-size-attributes.xhtml:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166680
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jinwoo7.song@samsung.com [Wed, 2 Apr 2014 23:51:37 +0000 (23:51 +0000)]
Page should use std::unique_ptr for PointerLockController
https://bugs.webkit.org/show_bug.cgi?id=131098
Reviewed by Anders Carlsson.
Make Page keep a std::unique_ptr to PointerLockController. Store page
references and return controller references where possible.
* dom/Document.cpp:
(WebCore::Document::prepareForDestruction):
(WebCore::Document::webkitExitPointerLock):
(WebCore::Document::webkitPointerLockElement):
* dom/Element.cpp:
(WebCore::Element::removedFrom):
(WebCore::Element::webkitRequestPointerLock):
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::pointerLockController):
* page/PointerLockController.cpp:
(WebCore::PointerLockController::PointerLockController):
(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::requestPointerUnlock):
(WebCore::PointerLockController::create): Deleted.
* page/PointerLockController.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166679
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Wed, 2 Apr 2014 23:50:25 +0000 (23:50 +0000)]
CodeBlockSet should be generational
https://bugs.webkit.org/show_bug.cgi?id=127152
Reviewed by Geoffrey Garen.
During EdenCollections we now only visit those CodeBlocks that:
a) Are new since the last collection if they were somehow otherwise reachable.
b) Are reachable from an Executable that is part of the remembered set.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock): Initialize uninitialized variables.
(JSC::CodeBlock::visitAggregate): Move the addition of the weak reference harvester after the
shouldImmediatelyAssumeLivenessDuringScan check since it's redundant if we assume liveness.
* bytecode/CodeBlock.h:
(JSC::CodeBlock::forEachRelatedCodeBlock): Executes a functor for each CodeBlock reachable from the current CodeBlock (including this).
We use this to clear marks for the CodeBlocks of remembered Executables (see: CodeBlockSet::clearMarksForEdenCollection).
(JSC::CodeBlockSet::mark): Also check the set of new CodeBlocks for memebership when doing conservative scanning.
(JSC::ScriptExecutable::forEachCodeBlock): Executes a functor for each of this Executable's CodeBlocks.
* heap/CodeBlockSet.cpp:
(JSC::CodeBlockSet::~CodeBlockSet):
(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::promoteYoungCodeBlocks): Moves all CodeBlocks currently in the set of new CodeBlocks into
the set of old CodeBlocks.
(JSC::CodeBlockSet::clearMarksForFullCollection): Clears the marks for all CodeBlocks.
(JSC::CodeBlockSet::clearMarksForEdenCollection): Clears the marks for CodeBlocks owned by Executables in the
remembered set. When an Executable is added to the remembered set it's typically because we need to do something
with its CodeBlock.
(JSC::CodeBlockSet::clearMarks):
(JSC::CodeBlockSet::deleteUnmarkedAndUnreferenced): Fixpoints over either just the new CodeBlocks or all CodeBlocks
to determine which CodeBlocks are dead and eagerly finalizes/deletes them.
(JSC::CodeBlockSet::remove):
(JSC::CodeBlockSet::traceMarked): Iterate only the currently executing CodeBlocks instead of all CodeBlocks.
(JSC::CodeBlockSet::rememberCurrentlyExecutingCodeBlocks): Clear m_mayBeExecuting for all currently executing
CodeBlocks because we no longer always do this at the beginning of EdenCollections.
* heap/CodeBlockSet.h:
(JSC::CodeBlockSet::iterate):
* heap/Heap.cpp:
(JSC::Heap::markRoots):
(JSC::Heap::deleteAllCompiledCode):
(JSC::Heap::deleteUnmarkedCompiledCode):
* runtime/Executable.cpp:
(JSC::ScriptExecutable::installCode): Write barrier code on installation. We do this due to the following situation:
a) A CodeBlock is created and is compiled on a DFG worker thread.
b) No GC happens.
c) The CodeBlock has finished being compiled and is installed in the Executable.
d) The function never executes before the next GC.
e) The next GC needs needs to visit the new CodeBlock but the Executable won't be revisited unless
it's added to the remembered set.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166678
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 2 Apr 2014 23:41:04 +0000 (23:41 +0000)]
[iOS] Expose geolocation provider on the process pool
https://bugs.webkit.org/show_bug.cgi?id=131125
Reviewed by Dan Bernstein.
Followup comments from Dan Bernstein. Use a class
extension rather than a new category.
* UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _geolocationProvider]):
* UIProcess/API/Cocoa/WKProcessPoolInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166677
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 2 Apr 2014 23:40:41 +0000 (23:40 +0000)]
Load Media Controls js/css from bundle
https://bugs.webkit.org/show_bug.cgi?id=131086
Followup comments from Eric Carlson.
Remove the booleans that were guarding loading the resources.
* rendering/RenderThemeIOS.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::mediaControlsStyleSheet):
(WebCore::RenderThemeIOS::mediaControlsScript):
(WebCore::RenderThemeIOS::RenderThemeIOS):
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::RenderThemeMac):
(WebCore::RenderThemeMac::mediaControlsStyleSheet):
(WebCore::RenderThemeMac::mediaControlsScript):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166676
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 2 Apr 2014 23:29:12 +0000 (23:29 +0000)]
RemoteLayerBackingStore doesn't need to clear opaque layers
https://bugs.webkit.org/show_bug.cgi?id=131134
Reviewed by Simon Fraser.
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display):
We don't need to clear opaque layers, because we'll paint
over the whole area. In addition, we should fill opaque layers
with a bright color in debug builds to make it very clear
that we've made a mistake (similar to what FrameView does).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166675
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 2 Apr 2014 23:09:01 +0000 (23:09 +0000)]
filter-build-webkit: Ignore xcodebuild warnings when compiling with newer builds of clang
<http://webkit.org/b/131045>
Reviewed by Daniel Bates.
* Scripts/filter-build-webkit:
(shouldIgnoreLine): Ignore DVTAssertions related to new builds
of clang, plus debug data for all DVTAssertions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166674
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Wed, 2 Apr 2014 23:06:36 +0000 (23:06 +0000)]
[WebInspector] inspector-protocol/model/highlight-shape-outside.html is failing
https://bugs.webkit.org/show_bug.cgi?id=124660
Reviewed by Timothy Hatcher.
I updated the tests syntax to CR, CSS Shapes specification. It's also needed to be updated
to the latest WebInspector testing methods. I added some addidional test cases for the highlighting,
and also fixed some expected test case in the script, and updated the expected file.
* TestExpectations:
* inspector/dom/highlight-shape-outside-expected.txt:
* inspector/dom/highlight-shape-outside.html:
* inspector/dom/shapes-test.js:
(InspectorTestProxy.registerInitializer.):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166673
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 2 Apr 2014 22:48:08 +0000 (22:48 +0000)]
Document WKBackForwardList, WKBackForwardListItem and WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=131131
Reviewed by Dan Bernstein.
* UIProcess/API/Cocoa/WKBackForwardList.h:
* UIProcess/API/Cocoa/WKBackForwardListItem.h:
* UIProcess/API/Cocoa/WKWebViewConfiguration.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166672
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Wed, 2 Apr 2014 22:32:37 +0000 (22:32 +0000)]
AX: Improve ARIA live region reliability by sending notifications when live regions are created/shown and hidden/destroyed
https://bugs.webkit.org/show_bug.cgi?id=124381
Unreviewed. Forgot to add test expectation.
* platform/mac/accessibility/live-region-creation-notification-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166671
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 2 Apr 2014 21:50:52 +0000 (21:50 +0000)]
Unreviewed.
Try to ignore some Xcode shmutz in MallocBench.
* MallocBench/MallocBench.xcodeproj: Added property svn:ignore.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166670
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 2 Apr 2014 21:42:30 +0000 (21:42 +0000)]
Load Media Controls js/css from bundle
https://bugs.webkit.org/show_bug.cgi?id=131086
Reviewed by Eric Carlson.
Source/WebCore:
Rather than embed encoded versions of the JS and CSS files
into C++ source, just load the files directly from the bundle.
* DerivedSources.make: Removed now unnecessary rules.
* WebCore.xcodeproj/project.pbxproj: Copy mediaControls files to the bundle.
* rendering/RenderThemeIOS.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::RenderThemeIOS):
(WebCore::RenderThemeIOS::mediaControlsStyleSheet): Load from the bundle.
(WebCore::RenderThemeIOS::mediaControlsScript): Ditto.
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::RenderThemeMac):
(WebCore::RenderThemeMac::mediaControlsStyleSheet):
(WebCore::RenderThemeMac::mediaControlsScript):
Tools:
We're now putting CSS files into the bundle, so remove the test for them.
* Scripts/check-for-inappropriate-files-in-framework:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166669
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Wed, 2 Apr 2014 21:40:26 +0000 (21:40 +0000)]
Move focus management API from HTMLDocument to Document
https://bugs.webkit.org/show_bug.cgi?id=131079
<rdar://problem/
16220103>
Reviewed by Timothy Hatcher.
Source/WebCore:
Merged from Blink (patch by Christophe Dumez):
https://src.chromium.org/viewvc/blink?view=rev&revision=165515
Move hasFocus() and attribute activeElement from interface HTMLDocument
to DOMDocument as per section Focus management APIs of the HTML5 standard:
<http://www.whatwg.org/specs/web-apps/current-work/#focus-management-apis> (1 April 2014).
Test: fast/dom/Document/xml-document-focus.xml
* bindings/objc/PublicDOMInterfaces.h: Moved hasFocus() and property activeElement from
interface DOMHTMLDocument to DOMDocument.
* dom/Document.cpp:
(WebCore::Document::activeElement): Added.
(WebCore::Document::hasFocus): Added.
* dom/Document.h:
* dom/Document.idl:
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::activeElement): Deleted.
(WebCore::HTMLDocument::hasFocus): Deleted.
* html/HTMLDocument.h:
* html/HTMLDocument.idl:
LayoutTests:
Derived from a Blink patch by Christophe Dumez:
https://src.chromium.org/viewvc/blink?view=rev&revision=165515
Made the test in <https://src.chromium.org/viewvc/blink?view=rev&revision=165515> a valid XHTML
document. Additionally taught LayoutTests/resources/{js-test, js-test-pre}.js to create actual
HTML elements so that these scripts can be used to write DRT tests in XML documents.
* fast/dom/Document/xml-document-focus-expected.txt: Added.
* fast/dom/Document/xml-document-focus.xml: Added.
* resources/js-test-pre.js: Added function createHTMLElement() and modified code to use it
instead of document.createElement() so as to work around <https://bugs.webkit.org/show_bug.cgi?id=131074>.
* resources/js-test.js: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166668
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren@apple.com [Wed, 2 Apr 2014 21:38:49 +0000 (21:38 +0000)]
Let's benchmark malloc
https://bugs.webkit.org/show_bug.cgi?id=131118
Reviewed by Mark Hahnenberg.
I want to replace fastMalloc with something faster (fasterMalloc?).
I wrote these benchmarks to test / drive development.
* MallocBench: Added.
* MallocBench/MallocBench: Added.
* MallocBench/MallocBench.xcodeproj: Added.
* MallocBench/MallocBench.xcodeproj/project.pbxproj: Added.
* MallocBench/MallocBench/Benchmark.cpp: Added.
(allocateHeap):
(deallocateHeap):
(Benchmark::Benchmark):
(Benchmark::printBenchmarks):
(Benchmark::runOnce):
(Benchmark::run):
(Benchmark::printReport):
(Benchmark::currentTimeMS):
(Benchmark::currentMemoryBytes):
* MallocBench/MallocBench/Benchmark.h: Added.
(Benchmark::Memory::Memory):
(Benchmark::Memory::operator-):
(Benchmark::isValid):
* MallocBench/MallocBench/CPUCount.cpp: Added.
(cpuCount):
* MallocBench/MallocBench/CPUCount.h: Added.
* MallocBench/MallocBench/CommandLine.cpp: Added.
(CommandLine::printUsage):
* MallocBench/MallocBench/CommandLine.h: Added.
(CommandLine::isValid):
(CommandLine::benchmarkName):
(CommandLine::isParallel):
(CommandLine::heapSize):
(CommandLine::measureHeap):
* MallocBench/MallocBench/Interpreter.cpp: Added.
(Interpreter::Interpreter):
(Interpreter::~Interpreter):
(Interpreter::run):
* MallocBench/MallocBench/Interpreter.h: Added.
* MallocBench/MallocBench/balloon.cpp: Added.
(benchmark_balloon):
* MallocBench/MallocBench/balloon.h: Added.
* MallocBench/MallocBench/big.cpp: Added.
(benchmark_big):
* MallocBench/MallocBench/big.h: Added.
* MallocBench/MallocBench/churn.cpp: Added.
(HeapDouble::operator new):
(HeapDouble::operator delete):
(HeapDouble::HeapDouble):
(HeapDouble::operator+=):
(benchmark_churn):
* MallocBench/MallocBench/churn.h: Added.
* MallocBench/MallocBench/crash.ops: Added.
* MallocBench/MallocBench/facebook.cpp: Added.
(benchmark_facebook):
* MallocBench/MallocBench/facebook.h: Added.
* MallocBench/MallocBench/facebook.ops: Added.
* MallocBench/MallocBench/fragment.cpp: Added.
(validate):
(benchmark_fragment):
(benchmark_fragment_iterate):
* MallocBench/MallocBench/fragment.h: Added.
* MallocBench/MallocBench/list.cpp: Added.
(benchmark_list_allocate):
(benchmark_list_traverse):
* MallocBench/MallocBench/list.h: Added.
* MallocBench/MallocBench/main.cpp: Added.
(main):
* MallocBench/MallocBench/mbmalloc.cpp: Added.
* MallocBench/MallocBench/mbmalloc.h: Added.
* MallocBench/MallocBench/medium.cpp: Added.
(benchmark_medium):
* MallocBench/MallocBench/medium.h: Added.
* MallocBench/MallocBench/message.cpp: Added.
(benchmark_message_one):
(benchmark_message_many):
* MallocBench/MallocBench/message.h: Added.
* MallocBench/MallocBench/realloc.cpp: Added.
(benchmark_realloc):
* MallocBench/MallocBench/realloc.h: Added.
* MallocBench/MallocBench/tree.cpp: Added.
(benchmark_tree_allocate):
(benchmark_tree_traverse):
(benchmark_tree_churn):
* MallocBench/MallocBench/tree.h: Added.
* MallocBench/run-malloc-benchmarks: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166667
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Wed, 2 Apr 2014 21:27:31 +0000 (21:27 +0000)]
Refactor the function call generator to take the arguments by value
https://bugs.webkit.org/show_bug.cgi?id=131129
Reviewed by Andreas Kling.
Nothing forces the pointed address to stay alive between setOneArgument/setTwoArguments
and prepareAndCall.
This patch changes FunctionCall to:
-Keep the register by value instead of using pointers.
-Crash at compile time if a register is invalid.
* cssjit/FunctionCall.h:
(WebCore::FunctionCall::FunctionCall):
(WebCore::FunctionCall::setOneArgument):
(WebCore::FunctionCall::setTwoArguments):
(WebCore::FunctionCall::swapArguments):
(WebCore::FunctionCall::prepareAndCall):
* cssjit/RegisterAllocator.h:
(WebCore::RegisterAllocator::isValidRegister):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166666
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Wed, 2 Apr 2014 21:06:33 +0000 (21:06 +0000)]
Remove Settings::maximumDecodedImageSize()
https://bugs.webkit.org/show_bug.cgi?id=131057
<rdar://problem/
15626368>
Source/WebCore:
Reviewed by Darin Adler.
The setting Settings::maximumDecodedImageSize() and its related logic have various
shortcomings, including the inability to cancel an image load when the estimated
decoded image size exceeds the maximum decoded image size. In the iOS port, this
setting is less useful given image subsampling support. For now, we remove this
setting and its related logic. Should it turn out that such a setting is useful
then we can implement it again taking care to address the shortcomings in the
original design.
* html/HTMLCanvasElement.cpp: For the iOS port, define MaxCanvasArea to be 4580 * 1145
pixels such that the maximum size of the image buffer is 20 MB (assumes 4 bytes per pixel).
(WebCore::HTMLCanvasElement::HTMLCanvasElement):
(WebCore::HTMLCanvasElement::createImageBuffer):
* html/HTMLCanvasElement.h:
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::createImageData):
(WebCore::CanvasRenderingContext2D::getImageData):
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::addIncrementalDataBuffer):
(WebCore::CachedImage::finishLoading):
* loader/cache/CachedImage.h:
* page/Settings.in:
Source/WebKit/mac:
Reviewed by Darin Adler.
Remove preferences key WebKitMaximumImageSize.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences _maximumImageSize:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
LayoutTests:
Reviewed by Darin Adler.
Remove test LayoutTests/fast/images/decoded-size-exceeds-max-decoded-size.html as it
isn't applicable following the removal of the setting Settings::maximumDecodedImageSize().
Additionally update the test fast/images/bag-png.html to ensure that we dispatch
a DOM Error event when we fail to decode a malformed image.
* fast/images/bad-png.html:
* fast/images/decoded-size-exceeds-max-decoded-size-expected.txt: Removed.
* fast/images/decoded-size-exceeds-max-decoded-size.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166665
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 2 Apr 2014 21:02:22 +0000 (21:02 +0000)]
Document WKUIDelegate and WKWindowFeatures
https://bugs.webkit.org/show_bug.cgi?id=131124
Reviewed by Dan Bernstein.
* UIProcess/API/Cocoa/WKProcessPool.h:
* UIProcess/API/Cocoa/WKUIDelegate.h:
* UIProcess/API/Cocoa/WKWindowFeatures.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166664
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 2 Apr 2014 20:59:19 +0000 (20:59 +0000)]
[iOS] Expose geolocation provider on the process pool
https://bugs.webkit.org/show_bug.cgi?id=131125
Patch by Sam Weinig.
Reviewed by Dean Jackson.
* UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _geolocationProvider]): Create and initialize WKGeolocationProviderIOS if necessary.
* UIProcess/API/Cocoa/WKProcessPoolInternal.h: Expose _geolocationProvider.
* UIProcess/ios/WKContentView.mm:
(-[WKContentView _decidePolicyForGeolocationRequestFromOrigin:frame:request:]): Call into WKProcessPool.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166663
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Wed, 2 Apr 2014 20:49:27 +0000 (20:49 +0000)]
Added some more dataLog info for OSR exits.
<https://webkit.org/b/131120>
Reviewed by Michael Saboff.
Adding info about the OSR exit index, the bytecode index of the bytecode
that is OSR exiting, and the reason for the OSR exit. This change is
for debugging code which only comes into play when we use the
--printEachOSRExit option.
* dfg/DFGOSRExit.h:
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOperations.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166662
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhock@apple.com [Wed, 2 Apr 2014 20:07:33 +0000 (20:07 +0000)]
Unify private browsing with sessions.
https://bugs.webkit.org/show_bug.cgi?id=130099
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Unless otherwise noted, the following consists solely of mechanical changes to replace querying WebCore::Settings::privateBrowsingEnabled() with Page::usesEphemeralSession().
* Modules/webdatabase/DatabaseContext.cpp:
(WebCore::DatabaseContext::allowDatabaseAccess):
* WebCore.exp.in: Remove Settings::setPrivateBrowsingEnabled, add Page::legacyPrivateBrowsingEnabled.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
* loader/HistoryController.cpp:
(WebCore::HistoryController::updateForStandardLoad):
(WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
(WebCore::HistoryController::updateForClientRedirect):
(WebCore::HistoryController::updateForSameDocumentNavigation):
(WebCore::HistoryController::pushState):
(WebCore::HistoryController::replaceState):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::cacheForMainRequest):
(WebCore::ApplicationCacheGroup::selectCache):
(WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
(WebCore::ApplicationCacheGroup::update):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
* loader/icon/IconController.cpp:
(WebCore::IconController::continueLoadWithDecision):
* page/Page.cpp:
(WebCore::Page::Page): Initialize with defaultSessionID.
(WebCore::Page::legacyPrivateBrowsingEnabled): Legacy setting for private browsing.
(WebCore::Page::privateBrowsingStateChanged): Move implementation to setSessionID.
(WebCore::Page::sessionID): Simplify to just return m_sessionID.
(WebCore::Page::setSessionID): Also perform privateBrowsingStateChanged action.a
(WebCore::Page::privateBrowsingStateChanged): Deleted.
(WebCore::Page::checkSubframeCountConsistency): Deleted.
* page/Page.h:
* page/PageConsole.cpp:
(WebCore::PageConsole::addMessage):
(WebCore::PageConsole::messageWithTypeAndLevel):
* page/Settings.cpp: Remove privateBrowsingEnabled setting.
(WebCore::Settings::Settings):
(WebCore::Settings::setPrivateBrowsingEnabled): Page reflects setting using session.
* page/Settings.h:
* plugins/PluginView.cpp:
(WebCore::PluginView::getValue):
* rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::addSearchResult):
* storage/Storage.cpp:
(WebCore::Storage::isDisabledByPrivateBrowsing):
Source/WebKit/efl:
* ewk/ewk_view.cpp:
(_ewk_view_priv_new): Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().
(ewk_view_setting_private_browsing_set): Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().
Source/WebKit/gtk:
* WebCoreSupport/FrameLoaderClientGtk.cpp: Change WebCore::Settings::privateBrowsingEnabled() to Page:usesEphemeralSession().
(WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
* webkit/webkitwebview.cpp: Change Settings::setPrivateBrowsingEnabled() to Page::enablePrivateBrowsing().
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):
Source/WebKit/mac:
* WebCoreSupport/WebFrameLoaderClient.mm: Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().
(WebFrameLoaderClient::updateGlobalHistoryItemForPage):
* WebCoreSupport/WebFrameNetworkingContext.mm: Ditto.
(WebFrameNetworkingContext::storageSession):
* WebView/WebView.mm: Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().
(-[WebView _preferencesChanged:]):
Source/WebKit/win:
* WebCoreSupport/WebFrameLoaderClient.cpp: Change WebCore::Settings::privateBrowsingEnabled() to Page::sessionID().isEphemeral().
(WebFrameLoaderClient::updateGlobalHistoryItemForPage):
* WebCoreSupport/WebFrameNetworkingContext.cpp: Ditto.
(WebFrameNetworkingContext::storageSession):
* WebView.cpp: Change WebCore::Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().
(WebView::notifyPreferencesChanged):
Source/WebKit2:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Change WebPage::isUsingEphemeralSession() to WebPage::usesEphemeralSession().
(WKBundlePageIsUsingEphemeralSession):
* WebProcess/InjectedBundle/InjectedBundle.cpp: Change Settings::setPrivateBrowsingEnabled() to Page::enableLegacyPrivateBrowsing().
(WebKit::InjectedBundle::setPrivateBrowsingEnabled):
* WebProcess/Plugins/PluginView.cpp: Change Settings::privateBrowsingEnabled() to Page::usesEphemeralSession().
(WebKit::PluginView::isPrivateBrowsingEnabled):
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp: Ditto.
(WebKit::WebFrameNetworkingContext::storageSession):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::usesEphemeralSession): Renamed from isUsingEphemeralSession.
(WebKit::WebPage::setSessionID): Ensure session before setting.
(WebKit::WebPage::updatePreferences): Set session to legacy private session if needed.
(WebKit::WebPage::sessionID): Moved to header.
(WebKit::WebPage::isUsingEphemeralSession): Renamed to usesEphemeralSession.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::sessionID): Just call down to m_page.
Tools:
Add an API test for ephemeral sessions similar to PrivateBrowsingPushStateNoHistoryCallback.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/EphemeralSessionPushStateNoHistoryCallback.cpp:
(TestWebKitAPI::didNavigateWithNavigationData):
(TestWebKitAPI::didSameDocumentNavigationForFrame):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.cpp: Also test to make sure private browsing can be disabled.
(TestWebKitAPI::didNavigateWithoutNavigationData):
(TestWebKitAPI::didNavigateWithNavigationData):
(TestWebKitAPI::didSameDocumentNavigationForFrame):
(TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166661
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 2 Apr 2014 19:58:44 +0000 (19:58 +0000)]
[Win] Enable the CANVAS_PATH feature.
https://bugs.webkit.org/show_bug.cgi?id=131114
Reviewed by Dean Jackson.
This code build and runs on Windows just fine. It was overlooked when the feature
was activated on other platforms.
* win/tools/vsprops/FeatureDefines.props: Turn on the feature.
* win/tools/vsprops/FeatureDefinesCairo.props: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166660
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Wed, 2 Apr 2014 19:52:26 +0000 (19:52 +0000)]
Try to fix test failures.
* platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::TileGrid): Initialize a field.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166659
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alice.liu@apple.com [Wed, 2 Apr 2014 19:51:43 +0000 (19:51 +0000)]
Adding Objective-C SPI for Find in Page.
https://bugs.webkit.org/show_bug.cgi?id=131000 Need an Objective-C API or SPI for Find in Page
Patch by Alice Barraclough <alice.liu@apple.com> on 2014-04-02
Reviewed by Dan Bernstein.
Find-on-page SPI added to WKWebView, which funnels the messages through the WebPageProxy.
Returning messages are designated by _WKFindDelegate protocol.
Also provide FindDelegate access on WKWebView.
WebPageProxy gets a new-style API::FindClient.
Also had to replicate WKFindOptions as _WKFindOptions in Cocoa SPI. This is unfortunate, but it
does follow the pattern of other options & enums related to classes that are SPI-for-now.
PageClientImplIOS handles setFindIndicator function by forwarding to its WKContentView,
but WKContentView _setFindIndicator remains unimplemented for now.
* UIProcess/API/APIFindClient.h: Added.
(API::FindClient::~FindClient):
(API::FindClient::didCountStringMatches):
(API::FindClient::didFindString):
(API::FindClient::didFailToFindString):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageFindClient):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _findDelegate]):
(-[WKWebView _setFindDelegate:]):
(toFindOptions):
(-[WKWebView _countStringMatches:options:maxCount:]):
(-[WKWebView _findString:options:maxCount:]):
(-[WKWebView _hideFindUI]):
(-[WKWebView _hostForFindUI]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
(NS_OPTIONS):
* UIProcess/API/Cocoa/_WKFindDelegate.h: Added.
* UIProcess/Cocoa/FindClient.h: Added.
* UIProcess/Cocoa/FindClient.mm: Added.
(WebKit::FindClient::FindClient):
(WebKit::FindClient::delegate):
(WebKit::FindClient::setDelegate):
(WebKit::FindClient::didCountStringMatches):
(WebKit::FindClient::didFindString):
(WebKit::FindClient::didFailToFindString):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setFindClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::didCountStringMatches):
(WebKit::WebPageProxy::didFindString):
(WebKit::WebPageProxy::didFailToFindString):
(WebKit::WebPageProxy::initializeFindClient): Deleted.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::findClient):
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::setFindIndicator):
* UIProcess/ios/WKContentView.h:
* UIProcess/ios/WKContentView.mm:
(-[WKContentView _setFindIndicator:WebKit::fadeOut:animate:]):
* WebKit2.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166658
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Wed, 2 Apr 2014 19:34:17 +0000 (19:34 +0000)]
Remove Input domain from the Web Inspector protocol.
https://bugs.webkit.org/show_bug.cgi?id=131073
Reviewed by Joseph Pecoraro.
Source/WebCore:
* CMakeLists.txt:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorInputAgent.cpp: Removed.
* inspector/InspectorInputAgent.h: Removed.
* inspector/protocol/Input.json: Removed.
Source/WebInspectorUI:
* UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Updated.
* Versions/Inspector-iOS-7.0.json: Removed Input domain.
LayoutTests:
* inspector-protocol/input/dispatchKeyEvent-expected.txt: Removed.
* inspector-protocol/input/dispatchKeyEvent.html: Removed.
* inspector-protocol/input/dispatchMouseEvent-expected.txt: Removed.
* inspector-protocol/input/dispatchMouseEvent.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166657
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 2 Apr 2014 19:27:30 +0000 (19:27 +0000)]
Rename -[WKBackForwardListItem originalURL] to -[WKBackForwardListItem initialURL]
https://bugs.webkit.org/show_bug.cgi?id=131116
Reviewed by Antti Koivisto.
* UIProcess/API/Cocoa/WKBackForwardListItem.h:
* UIProcess/API/Cocoa/WKBackForwardListItem.mm:
(-[WKBackForwardListItem initialURL]):
(-[WKBackForwardListItem originalURL]): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166656
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 2 Apr 2014 18:57:37 +0000 (18:57 +0000)]
[Win] Unreviewed build fix for full Debug rebuild.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export JSC symbol needed by testing infrastructure.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166655
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Wed, 2 Apr 2014 18:16:13 +0000 (18:16 +0000)]
Split tile grid out from TileController
https://bugs.webkit.org/show_bug.cgi?id=131102
Reviewed by Simon Fraser.
Source/WebCore:
Add a TileGrid class that encapsulates tiles, zoom level and the related metadata.
This will make it possible to have multiple grids per TileController later.
Source/WebKit2:
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
(WebKit::PlatformCALayerRemoteTiledBacking::PlatformCALayerRemoteTiledBacking):
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166654
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 2 Apr 2014 18:11:22 +0000 (18:11 +0000)]
[Win] Correct media controls for test harness
https://bugs.webkit.org/show_bug.cgi?id=131008
Reviewed by Eric Carlson.
* rendering/RenderThemeSafari.cpp: Revise to match RenderThemeWin logic.
(WebCore::RenderThemeSafari::systemFont):
(WebCore::RenderThemeSafari::paintMenuList):
(WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
(WebCore::RenderThemeSafari::mediaControlsStyleSheet):
(WebCore::RenderThemeSafari::mediaControlsScript):
(WebCore::RenderThemeSafari::paintMediaFullscreenButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaMuteButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaPlayButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSeekBackButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSeekForwardButton): Deleted.
(WebCore::RenderThemeSafari::paintMediaSliderTrack): Deleted.
(WebCore::RenderThemeSafari::paintMediaSliderThumb): Deleted.
* rendering/RenderThemeSafari.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166653
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 17:54:48 +0000 (17:54 +0000)]
[WinCairo] Compile error.
https://bugs.webkit.org/show_bug.cgi?id=131110
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-02
Reviewed by Simon Fraser.
Image::size() now returns a FloatSize instead of an IntSize.
* platform/win/DragImageCairoWin.cpp:
(WebCore::createDragImageFromImage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166652
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Wed, 2 Apr 2014 17:27:50 +0000 (17:27 +0000)]
Try a workaround for a crash
https://bugs.webkit.org/show_bug.cgi?id=131112
Reviewed by Sam Weinig.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView UIDelegate]):
(-[WKWebView setUIDelegate:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166651
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 2 Apr 2014 17:21:09 +0000 (17:21 +0000)]
Use outermost containing isolate when constructing bidi runs
<http://webkit.org/b/131107>
<rdar://problem/
15690021>
Reviewed by Darin Adler.
Merged from Blink (patch by jww@chromium.org):
https://src.chromium.org/viewvc/blink?revision=157268&view=revision
http://crbug.com/279277
Update containingIsolate to go back all the way to top
isolate from current root, rather than stopping at the first
isolate it finds. This works because the current root is
always updated with each isolate run.
Source/WebCore:
Tests: fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html
fast/text/international/unicode-bidi-isolate-nested-with-removes.html
* rendering/InlineIterator.h:
(WebCore::highestContainingIsolateWithinRoot):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForSegment):
LayoutTests:
* fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Updated.
* fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent-expected.txt: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Updated.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166650
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Wed, 2 Apr 2014 16:31:15 +0000 (16:31 +0000)]
AX: Improve ARIA live region reliability by sending notifications when live regions are created/shown and hidden/destroyed
https://bugs.webkit.org/show_bug.cgi?id=124381
Reviewed by Mario Sanchez Prada.
Source/WebCore:
Re-organize some code so that when we detect a new node has been created, we can safely determine its live region status.
If it is a live region, we fire off a live region created notification.
Test: platform/mac/accessibility/live-region-creation-notification.html
* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleLiveRegionCreated):
(WebCore::AXObjectCache::childrenChanged):
(WebCore::AXObjectCache::handleAttributeChanged):
* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::childrenChanged):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::defaultLiveRegionStatusForRole):
(WebCore::AccessibilityObject::liveRegionStatusIsEnabled):
(WebCore::AccessibilityObject::supportsARIALiveRegion):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::ariaLiveRegionStatus):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::ariaLiveRegionStatus):
* accessibility/AccessibilityRenderObject.h:
* accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::postPlatformNotification):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper postLiveRegionCreatedNotification]):
* accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postPlatformNotification):
LayoutTests:
* platform/mac/accessibility/live-region-creation-notification.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166649
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 15:38:40 +0000 (15:38 +0000)]
REGRESSION(r165704): [GTK] Inspector resources not correctly generated
https://bugs.webkit.org/show_bug.cgi?id=130343
Patch by Martin Robinson <mrobinson@igalia.com> on 2014-04-02
Reviewed by Gustavo Noronha Silva.
.:
* CMakeLists.txt: Add a variable which points to the directory to store WebInspectorUI
derived sources.
* Source/cmake/WebKitFS.cmake: Generate WebInspectorUI derived sources directories.
Source/JavaScriptCore:
* CMakeLists.txt: We generate the inspector JavaScript file into a directory like the one
in which it should be distributed. This allows us to more easily package it for GTK+.
Source/WebCore:
* CMakeLists.txt: Generate the web inspector JS file into the new WebInspectorUI derived sources
directory.
Source/WebKit2:
* PlatformGTK.cmake: Pass all appropriate directories to the
GResources XML generation script.
Tools:
* gtk/generate-inspector-gresource-manifest.py: Instead of hard-coding the file list, accept a list
of directories on the command line and look for all appropriate files in those directories for the
GResource archive. Also make archive paths relative to those directories.
(find_all_files_in_directory): This helper looks for all the appropriate files in a given directory.
(find_all_files_in_directory.select_file): Whether or not to add the file to the archive.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166648
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Wed, 2 Apr 2014 15:29:20 +0000 (15:29 +0000)]
Unreviewed build fix after r166642.
(WinCairo should really turn subpixel layout on.)
* platform/graphics/LayoutSize.h:
(WebCore::flooredForPainting):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166647
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 15:10:02 +0000 (15:10 +0000)]
[webkitpy] Avoid multiple "Preparing rollout for bug" log messages
https://bugs.webkit.org/show_bug.cgi?id=131106
Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-02
Reviewed by Csaba Osztrogonác.
* Scripts/webkitpy/tool/commands/download.py:
(AbstractRolloutPrepCommand._prepare_state):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(test_prepare_rollout):
(test_create_rollout):
(test_create_rollout_resolved):
(test_rollout):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166646
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 2 Apr 2014 14:52:23 +0000 (14:52 +0000)]
Add LayoutTest for crash with bidi isolates
Merged from Blink (patch by jww@chromium.org):
https://src.chromium.org/viewvc/blink?revision=156580&view=revision
http://crbug.com/265838
See Bug 120504: Fix nested unicode-bidi: isolate
<https://bugs.webkit.org/show_bug.cgi?id=120504>
<http://trac.webkit.org/changeset/155554>
* fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166645
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Wed, 2 Apr 2014 14:37:22 +0000 (14:37 +0000)]
Subpixel rendering: Make GraphicsContext::drawTiledImage* functions float based.
https://bugs.webkit.org/show_bug.cgi?id=131062
Reviewed by Simon Fraser.
This is in preparation to support subpixel positioned/sized background images. Generated images
need to be able to sized on device pixels.
No change in behavior.
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
* platform/graphics/GraphicsContext.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166644
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 14:27:43 +0000 (14:27 +0000)]
[WinCairo] Build fix after r166496.
https://bugs.webkit.org/show_bug.cgi?id=131006
Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-02
Reviewed by Carlos Garcia Campos.
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::streamChanged):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
(WebCore::MediaPlayerPrivateGStreamer::videoChanged):
(WebCore::MediaPlayerPrivateGStreamer::videoCapsChanged):
(WebCore::MediaPlayerPrivateGStreamer::audioChanged):
(WebCore::MediaPlayerPrivateGStreamer::textChanged):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::volumeChanged):
(WebCore::MediaPlayerPrivateGStreamerBase::muteChanged):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::activeChanged):
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkRender):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcChangeState):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekDataCb):
Added std::function<void()> constructors to help Visual Studio decide which version of
GMainLoopSource::schedule or GMainLoopSource::scheduleAfterDelay to use.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166643
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Wed, 2 Apr 2014 14:18:58 +0000 (14:18 +0000)]
Subpixel rendering: Transition class CSSImageGeneratorValue/class StyleImage (and its dependencies) from
IntSize to FloatSize to enable subpixel sized (generated)images.
https://bugs.webkit.org/show_bug.cgi?id=130659
Reviewed by Simon Fraser and Andreas Kling.
This is in preparation to support subpixel positioned/sized background images. Generated images
needs to be able to sized on device pixels.
No change in behavior.
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSCanvasValue.cpp:
(WebCore::CSSCanvasValue::fixedSize):
(WebCore::CSSCanvasValue::image):
* css/CSSCanvasValue.h:
* css/CSSCrossfadeValue.cpp:
(WebCore::CSSCrossfadeValue::fixedSize):
(WebCore::CSSCrossfadeValue::image):
* css/CSSCrossfadeValue.h:
* css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::fixedSize):
(WebCore::CSSFilterImageValue::image):
* css/CSSFilterImageValue.h:
* css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::image):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::computeEndPoint):
(WebCore::endPointsFromAngle):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::createGradient):
* css/CSSGradientValue.h:
(WebCore::CSSGradientValue::fixedSize):
* css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::cachedImageForSize):
(WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
(WebCore::CSSImageGeneratorValue::evictCachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::image):
(WebCore::CSSImageGeneratorValue::fixedSize):
* css/CSSImageGeneratorValue.h:
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::setContainerSizeForRenderer):
* loader/cache/CachedImage.h:
* platform/graphics/FloatSizeHash.h: Added.
(WTF::FloatHash<WebCore::FloatSize>::hash):
(WTF::FloatHash<WebCore::FloatSize>::equal):
(WTF::HashTraits<WebCore::FloatSize>::constructDeletedValue):
(WTF::HashTraits<WebCore::FloatSize>::isDeletedValue):
* platform/graphics/LayoutSize.h:
(WebCore::flooredForPainting):
* rendering/RenderImageResourceStyleImage.h:
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::computePreferredLogicalWidths):
* rendering/style/StyleCachedImage.cpp:
(WebCore::StyleCachedImage::imageSize):
(WebCore::StyleCachedImage::setContainerSizeForRenderer):
(WebCore::StyleCachedImage::image):
* rendering/style/StyleCachedImage.h:
* rendering/style/StyleCachedImageSet.cpp:
(WebCore::StyleCachedImageSet::imageSize):
(WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
(WebCore::StyleCachedImageSet::image):
* rendering/style/StyleCachedImageSet.h:
* rendering/style/StyleGeneratedImage.cpp:
(WebCore::StyleGeneratedImage::imageSize):
(WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
(WebCore::StyleGeneratedImage::image):
* rendering/style/StyleGeneratedImage.h:
* rendering/style/StyleImage.h:
* rendering/style/StylePendingImage.h:
* svg/graphics/SVGImageCache.cpp:
(WebCore::SVGImageCache::setContainerSizeForRenderer):
* svg/graphics/SVGImageCache.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166642
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 13:53:32 +0000 (13:53 +0000)]
Warning fix for RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=131090
Patch by Gergo Balogh <gbalogh.u-szeged@partner.samsung.com> on 2014-04-02
Reviewed by Csaba Osztrogonác.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateDescendantDependentFlags):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166641
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fred.wang@free.fr [Wed, 2 Apr 2014 13:01:34 +0000 (13:01 +0000)]
Operator stretching: read the Open Type MATH table
https://bugs.webkit.org/show_bug.cgi?id=130324
Reviewed by Chris Fleizach.
Source/WebCore:
We parse and expose some data from the OpenType MATH table that will be
be relevant for at least the MathML operator stretching (bug 130322):
math constants, italic corrections and size variants / glyph assembly.
This will be tested when the MathML code uses the data.
* WebCore.xcodeproj/project.pbxproj: Add OpenTypeTypes.h to the Mac build.
* platform/graphics/opentype/OpenTypeMathData.cpp: We implement the low-level parsing of the MATH table.
(WebCore::OpenType::MathItalicsCorrectionInfo::getItalicCorrection):
(WebCore::OpenType::MathGlyphInfo::mathItalicsCorrectionInfo):
(WebCore::OpenType::GlyphAssembly::getAssemblyParts):
(WebCore::OpenType::MathGlyphConstruction::getSizeVariants):
(WebCore::OpenType::MathGlyphConstruction::getAssemblyParts):
(WebCore::OpenType::MathVariants::mathGlyphConstruction):
(WebCore::OpenType::MATHTable::mathConstants):
(WebCore::OpenType::MATHTable::mathGlyphInfo):
(WebCore::OpenType::MATHTable::mathVariants):
(WebCore::OpenTypeMathData::OpenTypeMathData): We load the MATH table.
(WebCore::OpenTypeMathData::getMathConstant): We add a function to get values from the MathConstant subtable.
(WebCore::OpenTypeMathData::getItalicCorrection): We add a function to get italic correction from the MathGlyphInfo subtable.
(WebCore::OpenTypeMathData::getMathVariants): We add a function to get size variants / glyph assembly from the MathVariants subtable.
* platform/graphics/opentype/OpenTypeMathData.h: We expose three new functions to get math data.
* platform/graphics/opentype/OpenTypeTypes.h: We share the coverage tables that are common to vertical and math data.
(WebCore::OpenType::TableWithCoverage::getCoverageIndex): We add a function to get the coverage index from a given glyph.
* platform/graphics/opentype/OpenTypeVerticalData.cpp: We move the coverage tables to OpenTypeTypes.h.
Source/WTF:
* wtf/Platform.h: enable OPENTYPE_MATH on platforms that can read OpenType tables.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166640
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 11:22:33 +0000 (11:22 +0000)]
[EFL] Add option to use separate web process for new window in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=130190
Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-04-02
Reviewed by Gyuyoung Kim.
New created window (CTRL + n) will be open in separated web process.
This option is enabled by adding a flag (S/separate-process) with launching
MiniBrowser.
* MiniBrowser/efl/main.c:
(elm_main):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166639
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Wed, 2 Apr 2014 09:58:39 +0000 (09:58 +0000)]
[GTK] Move NEWS file to a new location
https://bugs.webkit.org/show_bug.cgi?id=130901
Reviewed by Brent Fulgham.
Source/WebKit2:
* gtk/NEWS: Renamed from Source/WebKit/gtk/NEWS.
Tools:
* gtk/manifest.txt: Update the NEWS file path.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166638
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 09:23:10 +0000 (09:23 +0000)]
[EFL] Composite all layers into one evas_object using TextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=130969
Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-02
Reviewed by Gyuyoung Kim.
The EFL port uses two evas_objects to render the entire webpage: backing_store and compositingObject.
backing_store is used to paint a non-composited layer with ewk functions,
whereas compositingObject is used to paint other layers with TextureMapper.
These evas_objects are eventually composited into the window buffer by Evas.
This patch moves to use only one evas_object by integrating these two evas_objects,
and makes that TextureMapper handles all rendering paths like WebKit2.
* WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
(WebCore::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebCore::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebCore::AcceleratedCompositingContext::resize):
(WebCore::AcceleratedCompositingContext::flushAndRenderLayers):
(WebCore::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebCore::AcceleratedCompositingContext::paintToGraphicsContext):
(WebCore::AcceleratedCompositingContext::paintToCurrentGLContext):
(WebCore::AcceleratedCompositingContext::compositeLayers):
(WebCore::AcceleratedCompositingContext::initialize): Deleted.
(WebCore::AcceleratedCompositingContext::canComposite): Deleted.
(WebCore::AcceleratedCompositingContext::compositeLayersToContext): Deleted.
(WebCore::AcceleratedCompositingContext::attachRootGraphicsLayer): Deleted.
* WebCoreSupport/AcceleratedCompositingContextEfl.h:
(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer):
* ewk/ewk_view.cpp:
(_ewk_view_priv_new):
(_ewk_view_accelerated_compositing_cb):
(_ewk_view_smart_add):
(_ewk_view_smart_resize):
(_ewk_view_smart_calculate):
(_ewk_view_smart_show):
(_ewk_view_smart_hide):
(_ewk_view_smart_flush):
(_ewk_view_smart_zoom_weak_set):
(_ewk_view_smart_zoom_weak_smooth_scale_set):
(ewk_view_bg_color_set):
(ewk_view_scroll):
(ewk_view_root_graphics_layer_set):
(ewk_view_mark_for_sync):
(_ewk_view_scrolls_flush): Deleted.
(_ewk_view_scroll_process): Deleted.
(_ewk_view_smart_scrolls_process): Deleted.
(_ewk_view_smart_repaints_process): Deleted.
(ewk_view_scrolls_process): Deleted.
(_ewk_view_accelerated_compositing_context_create_if_needed): Deleted.
(_ewk_view_accelerated_compositing_object_create_if_needed): Deleted.
* ewk/ewk_view.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166637
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 09:14:36 +0000 (09:14 +0000)]
[WinCairo] Build fix with GMainLoopSource.
https://bugs.webkit.org/show_bug.cgi?id=131089
Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-02
Reviewed by Carlos Garcia Campos.
* wtf/gobject/GMainLoopSource.cpp:
Only compile if glib is used, which fixes compile errors with video disabled in WinCairo.
* wtf/gobject/GMainLoopSource.h:
Export the GMainLoopSource functions to WTF.dll to link with where they are called in the GStreamer code.
Also removed spaces to appease style bot.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166636
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rakuco@webkit.org [Wed, 2 Apr 2014 07:38:02 +0000 (07:38 +0000)]
[CMake] Drop port check from FindEGL.cmake.
https://bugs.webkit.org/show_bug.cgi?id=131091
Reviewed by Gyuyoung Kim.
There is no reason to mark some variables as advanced only for the
GTK+ port.
* Source/cmake/FindEGL.cmake: Mark EGL_INCLUDE_DIR and EGL_LIBRARY
as advanced regardless of the port.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166635
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 2 Apr 2014 07:30:52 +0000 (07:30 +0000)]
[CSS Blending] Compositing requirements for blending are not computed correctly
https://bugs.webkit.org/show_bug.cgi?id=130664
Patch by Ion Rosca <rosca@adobe.com> on 2014-04-02
Reviewed by Dean Jackson.
Source/WebCore:
Tests: css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts.html
css3/compositing/blend-mode-with-accelerated-sibling.html
Compositing requirements for blending: if a layer having blend mode
other than normal is composited for any reason, its closest stacking
context ancestor should be composited as well.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
* rendering/RenderLayer.h: added a new field,
m_hasUnisolatedCompositedBlendingDescendants, which is true if the layer
has composited blending descendants not isolated by any stacking context child;
added a new method: isolatesCompositedBlending(), which is true if we should
accelerate that layer in order to perform isolation correctly.
* rendering/RenderLayerCompositor.cpp:
(WebCore::CompositingState::CompositingState): m_subtreeHasBlending was renamed
m_hasUnisolatedCompositedBlendingDescendants in order to be more self-explanatory.
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
computes the isolation requirements for composited blending by
(re)setting RenderLayer::m_hasUnisolatedCompositedBlendingDescendants flag.
(WebCore::RenderLayerCompositor::reasonsForCompositing):
fixed the reason of compositing: isolation instead of blending.
(WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):
* rendering/RenderLayerCompositor.h:
LayoutTests:
* css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts-expected.txt: Added.
* css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts.html: Added.
* css3/compositing/blend-mode-with-accelerated-sibling-expected.txt: Added.
* css3/compositing/blend-mode-with-accelerated-sibling.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166634
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fred.wang@free.fr [Wed, 2 Apr 2014 07:05:14 +0000 (07:05 +0000)]
Operator stretching: expose a math data API
https://bugs.webkit.org/show_bug.cgi?id=130572
Reviewed by Chris Fleizach.
We expose a new SimpleFontData API to give access to the data from the
OpenType MATH table. The class OpenTypeMathData will
be implemented in bug 130324. On Darwin platform, we also implement the
missing FontPlatformData::openTypeTable function which will be necessary
to load the OpenType MATH table. The changes are intended to be used
for MathML operator stretching (bug 130322) so tests are not added yet.
* CMakeLists.txt: add new OpenTypeMathData files.
* WebCore.vcxproj/WebCore.vcxproj: ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.
* platform/graphics/FontPlatformData.cpp:
(WebCore::FontPlatformData::openTypeTable): We implement openTypeTable() on Darwin platform.
* platform/graphics/FontPlatformData.h: We expose openTypeTable() on Darwin platform.
* platform/graphics/SimpleFontData.cpp:
(WebCore::SimpleFontData::SimpleFontData):
(WebCore::SimpleFontData::mathData): Initialize and return the math data.
* platform/graphics/SimpleFontData.h: We expose a mathData() function to access the MATH data.
* platform/graphics/opentype/OpenTypeMathData.cpp: Added. This is a new class that will be used to parse the data from the OpenType MATH table.
(WebCore::OpenTypeMathData::OpenTypeMathData):
* platform/graphics/opentype/OpenTypeMathData.h: Added.
(WebCore::OpenTypeMathData::create):
(WebCore::OpenTypeMathData::hasMathData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166633
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mihnea@adobe.com [Wed, 2 Apr 2014 06:29:38 +0000 (06:29 +0000)]
[CSSRegions] Displaying region's children in another region not supported
https://bugs.webkit.org/show_bug.cgi?id=130735
Reviewed by David Hyatt.
Source/WebCore:
With http://trac.webkit.org/changeset/166353, we disabled the possibility
of collecting the region's children into another flow and displaying them
in another region.
I added a new test for this and also changed the plain ASSERT in Element dtor
to ASSERT_WITH_SECURITY_IMPLICATION to better reflect the meaning of the assertion.
Test: fast/regions/region-child-not-flowed.html
* dom/Element.cpp:
(WebCore::Element::~Element):
LayoutTests:
With http://trac.webkit.org/changeset/166353, we disabled the possibility
of collecting the region's children into another flow and displaying them
in another region. With that change, we also skipped the existing tests.
Add a dedicated test that passes if a region child cannot be painted in another region,
in order to complete the skipped tests. This test should be removed when support for
this functionality will be added again.
* fast/regions/region-child-not-flowed-expected.html: Added.
* fast/regions/region-child-not-flowed.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166632
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abucur@adobe.com [Wed, 2 Apr 2014 05:36:54 +0000 (05:36 +0000)]
[CSS Regions] Simplify the RenderFlowThread state pusher
https://bugs.webkit.org/show_bug.cgi?id=131035
Reviewed by David Hyatt.
The RenderFlowThread state pusher is desynchronized from the RenderView layout state pusher
by one renderer. This patch fixes the anomaly by correctly ordering the push and pop operations
between the two systems.
Tests: no functional change, no new tests.
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::pushFlowThreadLayoutState):
(WebCore::RenderFlowThread::popFlowThreadLayoutState):
(WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstRegion):
* rendering/RenderView.cpp:
(WebCore::RenderView::pushLayoutState):
* rendering/RenderView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166631
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Wed, 2 Apr 2014 04:49:28 +0000 (04:49 +0000)]
willReveal edge events should be hooked up for overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=131071
-and corresponding-
<rdar://problem/
16190392>
Reviewed by Sam Weinig.
Source/WebCore:
This patch moves the will reveal logic from FrameView to Document so that it can
be shared for RenderLayers.
This is mostly just a moved function, but now the function takes an Element* that
represents the target of the event if the target is not the window.
* dom/Document.cpp:
(WebCore::Document::sendWillRevealEdgeEventsIfNeeded):
* dom/Document.h:
No longer implement sendWillRevealEdgeEventsIfNeeded() on FrameView or
ScrollableArea at all. Call into Document instead.
* page/FrameView.cpp:
(WebCore::FrameView::scrollPositionChanged):
(WebCore::FrameView::sendWillRevealEdgeEventsIfNeeded): Deleted.
* page/FrameView.h:
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::sendWillRevealEdgeEventsIfNeeded): Deleted.
Call sendWillRevealEdgeEventsIfNeeded() after sending scroll events.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo):
LayoutTests:
* fast/events/will-reveal-edge-on-div-expected.txt: Added.
* fast/events/will-reveal-edge-on-div.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166630
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Wed, 2 Apr 2014 03:36:29 +0000 (03:36 +0000)]
<rdar://problem/
16294704> Remove _pageExtendedBackgroundColor entirely
https://bugs.webkit.org/show_bug.cgi?id=131075
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-01
Reviewed by Beth Dakin.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _pageExtendedBackgroundColor]): Deleted.
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166629
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jhoneycutt@apple.com [Wed, 2 Apr 2014 02:48:14 +0000 (02:48 +0000)]
Crash in WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients
<https://bugs.webkit.org/show_bug.cgi?id=121887>
<rdar://problem/
15073043>
Reviewed by Dean Jackson.
Source/WebCore:
Test: svg/filters/first-letter-crash.html
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::buildReferenceFilter):
Added a null check to prevent crashes for anonymous RenderObjects.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::filterNeedsRepaint):
Get the enclosing element, if there is one, and recalculate its style.
We use the enclosing element so that we recalculate style for the
ancestor of an anonymous RenderElement.
(WebCore::RenderLayer::enclosingElement):
Remove an assertion; we may now reach this condition if loading a
cached SVG document results in RenderLayer::filterNeedsRepaint() being
called before the object has been inserted into the render tree.
* rendering/RenderLayerFilterInfo.cpp:
(WebCore::RenderLayer::FilterInfo::notifyFinished):
Tell the RenderLayer that the filter needs repainting.
(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
Get the Element from the renderer rather than asking the renderer's
Element, which will be null for anonymous RenderObjects.
* rendering/RenderLayerFilterInfo.h:
Removed declaration for the old workaround function, layerElement().
LayoutTests:
* svg/filters/first-letter-crash-expected.txt: Added.
* svg/filters/first-letter-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166628
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ryuan.choi@samsung.com [Wed, 2 Apr 2014 02:41:12 +0000 (02:41 +0000)]
Build break when disabled VIDEO since r166261
https://bugs.webkit.org/show_bug.cgi?id=131087
Reviewed by Gyuyoung Kim.
* testing/Internals.cpp: Added ENABLE(VIDEO) guards
(WebCore::Internals::simulateSystemSleep):
(WebCore::Internals::simulateSystemWake):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166627
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Wed, 2 Apr 2014 00:43:20 +0000 (00:43 +0000)]
Add Scheduler for 32-bit JSC bot.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166626
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 23:54:44 +0000 (23:54 +0000)]
Stub out more WKNavigation properties
https://bugs.webkit.org/show_bug.cgi?id=131080
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/WKNavigation.h:
* UIProcess/API/Cocoa/WKNavigation.mm:
(-[WKNavigation initialRequest]):
(-[WKNavigation response]):
(-[WKNavigation error]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166625
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 23:45:12 +0000 (23:45 +0000)]
Fix build.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController awakeFromNib]):
(-[WK2BrowserWindowController dealloc]):
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166624
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 23:37:58 +0000 (23:37 +0000)]
Rename -[WKWebView activeURL] to -[WKWebView URL]
https://bugs.webkit.org/show_bug.cgi?id=131077
Reviewed by Tim Horton.
Keep -[WKWebView activeURL] as SPI until no clients depend on it.
* UIProcess/API/Cocoa/WKWebView.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView URL]):
(-[WKWebView activeURL]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::willChangeActiveURL):
(WebKit::NavigationState::didChangeActiveURL):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166623
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 1 Apr 2014 23:20:06 +0000 (23:20 +0000)]
Remove HeapProfiler from the Web Inspector protocol.
https://bugs.webkit.org/show_bug.cgi?id=131070
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
* inspector/agents/InspectorConsoleAgent.h:
* inspector/agents/JSGlobalObjectConsoleAgent.cpp:
(Inspector::JSGlobalObjectConsoleAgent::addInspectedHeapObject): Deleted.
* inspector/agents/JSGlobalObjectConsoleAgent.h:
* inspector/protocol/Console.json:
Source/WebCore:
* CMakeLists.txt:
* DerivedSources.make:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/ScriptHeapSnapshot.h: Removed.
* bindings/js/ScriptProfiler.h:
(WebCore::ScriptProfiler::takeHeapSnapshot): Deleted.
(WebCore::ScriptProfiler::isSampling): Deleted.
(WebCore::ScriptProfiler::hasHeapProfiler): Deleted.
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorHeapProfilerAgent.cpp: Removed.
* inspector/InspectorHeapProfilerAgent.h: Removed.
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
* inspector/InspectorProfilerAgent.cpp:
(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::getProfileHeaders):
(WebCore::InspectorProfilerAgent::removeProfile):
(WebCore::InspectorProfilerAgent::resetState): The CommandLineAPIHost call to
clear inspected objects should have not been here. It was only needed by the
HeapProfilerAgent.
(WebCore::InspectorProfilerAgent::resetFrontendProfiles):
(WebCore::InspectorProfilerAgent::collectGarbage): Deleted.
(WebCore::InspectorProfilerAgent::createSnapshotHeader): Deleted.
(WebCore::InspectorProfilerAgent::isSampling): Deleted.
(WebCore::InspectorProfilerAgent::hasHeapProfiler): Deleted.
(WebCore::InspectorProfilerAgent::getHeapSnapshot): Deleted.
(WebCore::InspectorProfilerAgent::takeHeapSnapshot): Deleted.
(WebCore::InspectorProfilerAgent::getObjectByHeapObjectId): Deleted.
(WebCore::InspectorProfilerAgent::getHeapObjectId): Deleted.
* inspector/InspectorProfilerAgent.h:
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::inspectorHeapProfilerAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorHeapProfilerAgent): Deleted.
* inspector/WebConsoleAgent.cpp:
(WebCore::WebConsoleAgent::addInspectedHeapObject): Deleted.
* inspector/WebConsoleAgent.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
* inspector/protocol/HeapProfiler.json: Removed.
* inspector/protocol/Profiler.json:
Source/WebInspectorUI:
* UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js: Updated.
* UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Ditto.
* Versions/Inspector-iOS-6.0.json: Removed heap related stuff.
* Versions/Inspector-iOS-7.0.json: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166622
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 23:00:54 +0000 (23:00 +0000)]
Move -[WKWebView stopLoading:] back to WKIBActions
https://bugs.webkit.org/show_bug.cgi?id=131072
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/WKWebView.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView stopLoading:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166621
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 1 Apr 2014 22:18:07 +0000 (22:18 +0000)]
Web Inspector: Remove stale localStorage deletion transition code
https://bugs.webkit.org/show_bug.cgi?id=131061
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-04-01
Reviewed by Timothy Hatcher.
* UserInterface/Base/ImageUtilities.js:
This code has been in for a while. We have transitioned to Web SQL.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166620
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 1 Apr 2014 22:18:06 +0000 (22:18 +0000)]
Unreviewed test gardening.
* Scripts/webkitpy/port/base_unittest.py:
(PortTest.test_build_path): Handle the Debug case so we don't get webkitpy-test failures on our test bots.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166619
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Tue, 1 Apr 2014 22:13:34 +0000 (22:13 +0000)]
[CSS Exclusions] Remove exclusions parsing support
https://bugs.webkit.org/show_bug.cgi?id=131046
Reviewed by David Hyatt.
Source/WebCore:
CSS Exclusions specification [1] needs some evolution before the actual implementation happens.
We have only the parsing code in WebKit for -webkit-wrap-flow and -webkit-wrap-through.
This patch removes the code from the trunk for now, it doesn't make sense to keep it around.
[1] http://www.w3.org/TR/css3-exclusions/
Removed existing parsing tests.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Deleted.
(WebCore::CSSPrimitiveValue::operator WrapFlow): Deleted.
(WebCore::CSSPrimitiveValue::operator WrapThrough): Deleted.
* css/CSSPropertyNames.in:
* css/CSSValueKeywords.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresLayout):
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:
Source/WebInspectorUI:
* UserInterface/Models/CSSKeywordCompletions.js:
Tools:
* Scripts/webkitperl/FeatureList.pm:
LayoutTests:
* fast/exclusions/css-exclusions-disabled-expected.txt: Removed.
* fast/exclusions/css-exclusions-disabled.html: Removed.
* fast/exclusions/css-exclusions-enabled-expected.txt: Removed.
* fast/exclusions/css-exclusions-enabled.html: Removed.
* fast/exclusions/parsing/parsing-wrap-flow-expected.txt: Removed.
* fast/exclusions/parsing/parsing-wrap-flow.html: Removed.
* fast/exclusions/parsing/parsing-wrap-through-expected.txt: Removed.
* fast/exclusions/parsing/parsing-wrap-through.html: Removed.
* fast/exclusions/parsing/script-tests/parsing-test-utils.js: Removed.
* fast/exclusions/parsing/script-tests/parsing-wrap-flow.js: Removed.
* fast/exclusions/parsing/script-tests/parsing-wrap-through.js: Removed.
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166618
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 22:03:31 +0000 (22:03 +0000)]
Migrate more headers
https://bugs.webkit.org/show_bug.cgi?id=131068
Reviewed by Tim Horton.
Source/WebKit/mac:
* MigrateHeaders.make:
Source/WebKit2:
* UIProcess/API/Cocoa/WKBackForwardList.h:
Remove a newline.
* WebKit2.xcodeproj/project.pbxproj:
Move files from the "Deprecated" group.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166617
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy@apple.com [Tue, 1 Apr 2014 22:02:15 +0000 (22:02 +0000)]
Remove the rest of the old Canvas inspection support.
https://bugs.webkit.org/show_bug.cgi?id=131066
Reviewed by Joseph Pecoraro.
Source/WebCore:
* CMakeLists.txt: Removed Canvas.json.
* DerivedSources.make: Ditto.
* inspector/InjectedScriptCanvasModuleSource.js: Removed.
* inspector/protocol/Canvas.json: Removed.
Source/WebInspectorUI:
* UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js: Updated.
* Versions/Inspector-iOS-7.0.json: Removed Canvas domain.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166616
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 1 Apr 2014 21:57:15 +0000 (21:57 +0000)]
Eliminate HTMLFormElement::m_shouldSubmit
https://bugs.webkit.org/show_bug.cgi?id=131055
Reviewed by Tim Horton.
m_shouldSubmit was used for two purposes:
- as a return value in a function whose return value is ignored by all callers;
- to make a decision that's local to a function.
There is no need for it to be an instance variable.
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::HTMLFormElement):
(WebCore::HTMLFormElement::prepareForSubmission):
(WebCore::HTMLFormElement::submit):
* html/HTMLFormElement.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166615
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Tue, 1 Apr 2014 21:57:12 +0000 (21:57 +0000)]
[CSS Grid Layout] Enable runtime feature if feature flag is enabled
https://bugs.webkit.org/show_bug.cgi?id=130013
Reviewed by Simon Fraser.
Source/WebKit/mac:
Enable CSS Grid Layout runtime feature when ENABLE_CSS_GRID_LAYOUT flag is true.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
Source/WebKit2:
Enable CSS Grid Layout runtime feature when ENABLE_CSS_GRID_LAYOUT flag is true.
* Shared/WebPreferencesStore.h:
LayoutTests:
Modify layout test as feature is not disabled by default in WK2.
The test now checks that the runtime feature can be disabled.
* fast/css-grid-layout/grid-disabled-expected.txt: Renamed from LayoutTests/fast/css-grid-layout/grid-disabled-by-default-expected.txt.
* fast/css-grid-layout/grid-disabled.html: Renamed from LayoutTests/fast/css-grid-layout/grid-disabled-by-default.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166614
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 21:35:54 +0000 (21:35 +0000)]
Demote WKBackForwardListDidChangeNotification to SPI
https://bugs.webkit.org/show_bug.cgi?id=131059
Reviewed by Dan Bernstein.
* UIProcess/API/Cocoa/WKBackForwardList.h:
* UIProcess/API/Cocoa/WKBackForwardList.mm:
* UIProcess/API/Cocoa/WKBackForwardListInternal.h:
* UIProcess/API/Cocoa/WKBackForwardListPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKBackForwardListInternal.h.
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::LoaderClient::didChangeBackForwardList):
* WebKit2.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166613
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Tue, 1 Apr 2014 21:29:48 +0000 (21:29 +0000)]
[Cocoa] Add SPI to determine if a WKWebView is displaying a PDF
https://bugs.webkit.org/show_bug.cgi?id=131063
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isDisplayingPDF]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166612
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Tue, 1 Apr 2014 21:27:35 +0000 (21:27 +0000)]
Remove some explicit template instantiations from logging code
https://bugs.webkit.org/show_bug.cgi?id=131065
Reviewed by Tim Horton.
No need to explicitly state template types.
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::dumpChangedLayers):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166611
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 1 Apr 2014 21:22:56 +0000 (21:22 +0000)]
[CSS Grid Layout] Make the grid-item-margin-auto-columns-rows.html test a reftest
https://bugs.webkit.org/show_bug.cgi?id=130935
Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-01
Reviewed by Darin Adler.
Removed the 'checkLayout' script references from the test.
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.html: Added.
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.txt: Removed.
* fast/css-grid-layout/grid-item-margin-auto-columns-rows.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166610
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Tue, 1 Apr 2014 21:21:41 +0000 (21:21 +0000)]
[GTK] Remove last reference to GTK+ WK1 EWS
https://bugs.webkit.org/show_bug.cgi?id=131058
Reviewed by Martin Robinson.
In r166427 WK1 GTK+ bots and EWS where removed, but this file was missing.
* QueueStatusServer/config/queues.py: Remove reference to GTK+ WK1 EWS.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166609
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Tue, 1 Apr 2014 21:09:04 +0000 (21:09 +0000)]
Add a 32bit JSC builder/tester.
https://bugs.webkit.org/show_bug.cgi?id=131054
Reviewed by Michael Saboff.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(Compile32bitJSC):
(Run32bitJSCTests):
(Run32bitJSCTests.countFailures):
(BuildAndTest32bitJSCFactory):
(BuildAndTest32bitJSCFactory.__init__):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166608
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Tue, 1 Apr 2014 20:47:18 +0000 (20:47 +0000)]
[iOS WebKit2] Partial repaint is broken
https://bugs.webkit.org/show_bug.cgi?id=131056
Reviewed by Dean Jackson.
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display):
We need to check if the repaint rects themselves cover the whole
layer's surface, not just their bounds. Otherwise, we'll optimize
out the back->front copy and end up not painting the whole layer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166607
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 20:35:47 +0000 (20:35 +0000)]
Pass a WKNavigationAction to the create UIDelegate method
https://bugs.webkit.org/show_bug.cgi?id=131053
Reviewed by Sam Weinig.
* UIProcess/API/Cocoa/WKUIDelegate.h:
* UIProcess/Cocoa/UIClient.h:
* UIProcess/Cocoa/UIClient.mm:
(WebKit::UIClient::setDelegate):
(WebKit::UIClient::createNewPage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166606
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Tue, 1 Apr 2014 20:33:13 +0000 (20:33 +0000)]
[iOS][WK2] Remove the two finger pan gesture recognizer until it is actually implemented
https://bugs.webkit.org/show_bug.cgi?id=131009
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-01
Reviewed by Sam Weinig.
The two finger pan should not block the pinch gesture recognizer.
* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView gestureRecognizerShouldBegin:]):
(-[WKContentView _twoFingerPanRecognized:]): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166605
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Tue, 1 Apr 2014 20:32:33 +0000 (20:32 +0000)]
Remove a couple of useless static strings
https://bugs.webkit.org/show_bug.cgi?id=131003
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-01
Reviewed by David Kilzer.
There is zero value in keeping those strings alive.
* css/StyleProperties.cpp:
(WebCore::isInitialOrInherit):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166604
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Tue, 1 Apr 2014 20:05:08 +0000 (20:05 +0000)]
svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures.html and svg/css/font-face-crash.html frequently assert in ComplexTextController::offsetForPosition
https://bugs.webkit.org/show_bug.cgi?id=119747
Reviewed by Simon Fraser.
Source/WebCore:
Even though kerning and ligatures currently don't work with the
simple text path, messing those up is better than creating null
CTRun and CTLine objects.
Rather than calling the badly-named renderingContext() function on TextRun objects
to determine if they are drawn with an SVG font, this patch creates a wrapper function
with a better name and uses that instead.
Test: svg/text/svg-font-hittest.html
* platform/graphics/Font.cpp:
(WebCore::isDrawnWithSVGFont): Wrapper around renderingContext()
(WebCore::Font::drawText): Use wrapper function
(WebCore::Font::drawEmphasisMarks): Use wrapper function
(WebCore::Font::width): Use wrapper function
(WebCore::Font::selectionRectForText): Use wrapper function
(WebCore::Font::offsetForPosition): If we are using an SVG font, use the simple path
instead of the complex one
(WebCore::Font::codePath): Use wrapper function
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::ctFont):
LayoutTests:
Clicking on SVG text used to cause a ComplexTextController to be built
around the SVG text (which is incorrect and would crash). This test
does just that and makes sure there is no crash.
* svg/text/resources/Litherum.svg: Added.
* svg/text/svg-font-hittest-expected.txt: Added.
* svg/text/svg-font-hittest.html: Added.
* LayoutTests/platform/mac/TestExpectations: Unskipped tests
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166603
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 1 Apr 2014 19:53:04 +0000 (19:53 +0000)]
Remove limits from WKBackForwardList getters
https://bugs.webkit.org/show_bug.cgi?id=131052
Reviewed by Beth Dakin.
* UIProcess/API/Cocoa/WKBackForwardList.h:
* UIProcess/API/Cocoa/WKBackForwardList.mm:
(-[WKBackForwardList backList]):
(-[WKBackForwardList forwardList]):
(-[WKBackForwardList backListCount]): Deleted.
(-[WKBackForwardList forwardListCount]): Deleted.
(-[WKBackForwardList backListWithLimit:]): Deleted.
(-[WKBackForwardList forwardListWithLimit:]): Deleted.
* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::backList):
(WebKit::WebBackForwardList::forwardList):
* UIProcess/WebBackForwardList.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166602
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Tue, 1 Apr 2014 19:38:13 +0000 (19:38 +0000)]
RenderQuote must destroy remaining text renderer before first letter renderer
https://bugs.webkit.org/show_bug.cgi?id=78023
<rdar://problem/
10830009>
Reviewed by Brent Fulgham.
Merged from Blink (patch by Abhishek Arya):
https://src.chromium.org/viewvc/blink?view=rev&revision=151270
Source/WebCore:
Following the fix for <https://bugs.webkit.org/show_bug.cgi?id=114586>, a
RenderQuote may have child render objects for the first letter of its text
and everything following the first letter so as to support the CSS first-
letter property. The latter renderer is responsible for destroying the former
on destruction. It's sufficient to reverse the destruction of the children of
RenderQuote to ensure that we destroy the remaining text renderer before we
destroy the first letter renderer.
Test: fast/css-generated-content/quote-first-letter-crash.html
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::updateText):
LayoutTests:
* fast/css-generated-content/quote-first-letter-crash-expected.txt: Added.
* fast/css-generated-content/quote-first-letter-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166601
268f45cc-cd09-0410-ab3c-
d52691b4dbfc