Timeline
Apr 3, 2014:
- 11:52 PM Changeset in webkit [166769] by
-
- 5 edits in trunk/Source/WebKit2
AX: iOS does not need to spin the run loop on synchronous message calls
https://bugs.webkit.org/show_bug.cgi?id=131195
Reviewed by Dan Bernstein.
On the Mac platform, we need to spin the run loop while making synchronous calls to avoid VoiceOver hanging.
On iOS, this not needed due to architectural differences.
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::synchronousMessagesShouldSpinRunLoop):
- WebProcess/WebPage/WebPage.h:
- 11:26 PM Changeset in webkit [166768] by
-
- 3 edits in trunk/Source/WebKit/efl
[EFL] Should flush and render layers after the root layer is changed.
https://bugs.webkit.org/show_bug.cgi?id=131108
Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-03
Reviewed by Gyuyoung Kim.
If there is no update event after root layer is changed, old webview can be shown.
Because the syncTimer is not being triggered by root layer change.
We should flush and render layers by starting syncTimer when the root layer is changed.
- WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer): Add m_syncTimer.startOneShot(0);
- WebCoreSupport/AcceleratedCompositingContextEfl.h:
(WebCore::AcceleratedCompositingContext::setRootGraphicsLayer): Move implementation from header to source.
- 10:23 PM Changeset in webkit [166767] by
-
- 6 edits in trunk/Source/WebKit2
[Cocoa] Add additional WKWebView SPI for clients that interact with PDFs
https://bugs.webkit.org/show_bug.cgi?id=131206
Reviewed by Dan Bernstein.
Add _dataForDisplayedPDF and _suggestedFilenameForDisplayedPDF to
support clients that wish to save a copy of the currently displayed PDF
to disk. Ultimately we should support this use case by exposing something
like WKWebViewContentProvider, but for now let's do something simple.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didFinishLoadingDataForCustomContentProviderWithSuggestedFilename:data:]):
(-[WKWebView _dataForDisplayedPDF]):
(-[WKWebView _suggestedFilenameForDisplayedPDF]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/Cocoa/WKWebViewContentProvider.h:
- UIProcess/ios/WKPDFView.h:
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView documentData]):
(-[WKPDFView suggestedFilename]):
(-[WKPDFView web_setContentProviderData:suggestedFilename:]):
- 10:04 PM Changeset in webkit [166766] by
-
- 6 edits in trunk/Source/WebKit2
[EFL][WK2] Add API to get contents size of current web page.
https://bugs.webkit.org/show_bug.cgi?id=131148
Reviewed by Gyuyoung Kim.
Application can want to get contents size of current web page without
monitoring "contents,size,changed" signal, so I add API to get contents
size directly.
- UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
(WKViewGetContentsSize): WK API to get contents size from WebView.
- UIProcess/API/C/CoordinatedGraphics/WKView.h:
- UIProcess/API/efl/ewk_view.cpp:
(ewk_view_contents_size_get): new API to get contents size.
- UIProcess/API/efl/ewk_view.h:
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
- 9:42 PM Changeset in webkit [166765] by
-
- 6 edits1 add in trunk/Source/WebCore
Fast-path for casting JS wrappers to JSElement.
<https://webkit.org/b/131210>
Add an extended JSType for Element wrappers so we can avoid walking
the ClassInfo chain in those bindings as well.
Generalized the code to select a casting helper in the bindings
generator into a function (GetCastingHelperForThisObject.)
Updated all the jsDynamicCast call sites to go through this, in case
there's an optimized cast available for the desired type.
Reviewed by Benjamin Poulain.
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMWrapper.h:
- bindings/js/JSElementCustom.h: Added.
(WebCore::jsElementCast):
- bindings/js/JSNodeCustom.h:
(WebCore::jsNodeCast):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GetCastingHelperForThisObject):
(GenerateImplementation):
- dom/Element.idl:
- 9:23 PM Changeset in webkit [166764] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed build fix.
- WebKit.vcxproj/WebKit.sln: Make sure we don't generate the
WebInspectorUI before the generated JS is ready.
- 9:11 PM Changeset in webkit [166763] by
-
- 3 edits1 delete in trunk/Source/WebKit2
[WK2][EFL] Use template method in creating NativeWebMouseEvent
https://bugs.webkit.org/show_bug.cgi?id=131152
Reviewed by Anders Carlsson.
There are three EFL mouse events, such as Evas_Event_Mouse_Down, Evas_Event_Mouse_Up,
and Evas_Event_Mouse_Move. They can be defined as a template method.
- PlatformEfl.cmake: Remove NativeWebMouseEventEfl.cpp
- Shared/NativeWebMouseEvent.h:
(WebKit::NativeWebMouseEvent::NativeWebMouseEvent): Add a template method.
- Shared/efl/NativeWebMouseEventEfl.cpp: Removed.
- 9:08 PM Changeset in webkit [166762] by
-
- 3 edits in trunk/LayoutTests
compositing/tiling/rotated-tiled-* tests failing on bots
https://bugs.webkit.org/show_bug.cgi?id=131207
Unreviewed rebaseline of tests after r166748.
- platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
- platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
- 8:24 PM Changeset in webkit [166761] by
-
- 2 edits in trunk/Source/WebCore
Rebaseline a bindings test.
- bindings/scripts/test/JS/JSTestNode.h:
(WebCore::JSTestNode::createStructure):
- 7:29 PM Changeset in webkit [166760] by
-
- 7 edits in trunk/Source
Fast-path for casting JS wrappers to JSNode.
<https://webkit.org/b/131196>
Source/JavaScriptCore:
Allow code outside of JSC (well, WebCore) to extend the JSType spectrum
a little bit. We do this by exposing a LastJSCObjectType constant so
WebCore can encode its own wrapper types after that.
Reviewed by Mark Hahnenberg and Geoff Garen.
- runtime/JSType.h:
Added LastJSCObjectType for use by WebCore.
- runtime/JSObject.h:
(JSC::JSObject::isVariableObject):
Updated since this can no longer assume that types >= VariableObjectType
are all variable objects.
Source/WebCore:
Add a way to quickly determine that a given JSObject is a JSNode.
This lets us avoid walking the ClassInfo chain in the DOM bindings
for WebCore::Node.
Reviewed by Mark Hahnenberg and Geoff Garen.
- bindings/js/JSDOMWrapper.h:
Added a JSNodeType constant that extends beyond JSC::JSType.
- bindings/js/JSNodeCustom.h:
(WebCore::jsNodeCast):
Added. Fast cast from JSValue to JSNode.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
Generate code that uses jsNodeCast in Node interfaces.
- 7:24 PM Changeset in webkit [166759] by
-
- 5 edits in trunk/Source/JavaScriptCore
All Heap::writeBarriers should be inline
https://bugs.webkit.org/show_bug.cgi?id=131197
Reviewed by Mark Lam.
One is in a JSCellInlines.h, another is in Heap.cpp. These are all critical
enough and small enough to belong in HeapInlines.h. Also added the proper
ENABLE(GGC) ifdefs to minimize the cost of C++ barriers for !ENABLE(GGC) builds.
- heap/Heap.cpp:
(JSC::Heap::writeBarrier): Deleted.
- heap/Heap.h:
- heap/HeapInlines.h:
(JSC::Heap::writeBarrier):
- runtime/JSCellInlines.h:
(JSC::Heap::writeBarrier): Deleted.
- 6:56 PM Changeset in webkit [166758] by
-
- 3 edits in trunk/Tools
check-webkit-style: Improve warnings on Objective-C @property syntax
https://bugs.webkit.org/show_bug.cgi?id=131200
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-03
Reviewed by Dan Bernstein.
- Scripts/webkitpy/style/checkers/cpp.py:
(check_spacing):
(CppChecker):
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_spacing_in_objective_c_properties):
- 6:24 PM Changeset in webkit [166757] by
-
- 7 edits in trunk/LayoutTests
Rebaseline some tests after r166748. These tests now correctly
report a contentsScale.
- platform/mac-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt:
- platform/mac-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
- platform/mac-wk2/compositing/tiling/tile-cache-zoomed-expected.txt:
- platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:
- platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-expected.txt:
- platform/mac-wk2/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
- 5:50 PM Changeset in webkit [166756] by
-
- 7 edits in trunk/Source/JavaScriptCore
Web Inspector: JSContext inspection provide a way to opt-out of including Native Call Stacks in Exception traces reported to Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=131186
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-03
Reviewed by Geoffrey Garen.
- API/JSContextPrivate.h:
- API/JSContext.mm:
(-[JSContext _includesNativeCallStackWhenReportingExceptions]):
(-[JSContext _setIncludesNativeCallStackWhenReportingExceptions:]):
JSContext ObjC SPI to opt-out of including native call stacks in exceptions.
- API/JSContextRefPrivate.h:
- API/JSContextRef.cpp:
(JSGlobalContextGetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextSetIncludesNativeCallStackWhenReportingExceptions):
JSContext C SPI to opt-out of including native call stacks in exceptions.
- inspector/JSGlobalObjectInspectorController.h:
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::reportAPIException):
Only include the native call stack if the setting is enabled. It is enabled by default.
- 4:55 PM Changeset in webkit [166755] by
-
- 4 edits in trunk/Source/WebKit2
Add WKWebView documentation
https://bugs.webkit.org/show_bug.cgi?id=131190
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKBackForwardListItem.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKWebView.h:
- 4:51 PM Changeset in webkit [166754] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION: PCE.js is 20x slower in WebKit2 because timers are throttled
https://bugs.webkit.org/show_bug.cgi?id=131189
Reviewed by Geoffrey Garen.
Elevate the priority of all WebKit2 service processes on iOS, not just the network process.
- UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
- 4:28 PM Changeset in webkit [166753] by
-
- 2 edits in trunk/Source/WebKit2
ASSERT(m_children.isEmpty()) in PlatformCALayerRemote::removeAllSublayers() on time.com
https://bugs.webkit.org/show_bug.cgi?id=131187
Reviewed by Maciej Stachowiak.
After a call to PlatformCALayerRemote::adoptSublayers() when a layer
toggles between tiled and non-tiled, we'd assert in PlatformCALayerRemote::removeAllSublayers()
that not all sublayers had been removed (there was one with a null superlayer).
Fix by ensuring that we don't copy over custom subviews when adoptSublayers()
is called; they'll get added as we update children anyway.
- WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::adoptSublayers):
- 4:04 PM Changeset in webkit [166752] by
-
- 7 edits2 deletes in trunk/Source/WebCore
Merge ShapeInfo & ShapeOutsideInfo now that ShapeInsideInfo is no more
https://bugs.webkit.org/show_bug.cgi?id=131180
Reviewed by Andreas Kling.
Now that ShapeInsideInfo is gone, having a class hiearachy and
templates doesn't make any sense. As a first step to cleaning up the
code, this remove ShapeInfo and puts all of its functionality into
ShapeOutsideInfo.
No new tests, no behavior change.
- CMakeLists.txt:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- rendering/shapes/ShapeInfo.cpp: Removed.
- rendering/shapes/ShapeInfo.h: Removed.
- rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::computedShapePhysicalBoundingBox):
(WebCore::ShapeOutsideInfo::shapeToRendererPoint):
(WebCore::ShapeOutsideInfo::shapeToRendererSize):
(WebCore::referenceBox):
(WebCore::ShapeOutsideInfo::setReferenceBoxLogicalSize):
(WebCore::checkShapeImageOrigin):
(WebCore::getShapeImageAndRect):
(WebCore::getShapeImageMarginRect):
(WebCore::ShapeOutsideInfo::computedShape):
(WebCore::borderBeforeInWritingMode):
(WebCore::borderAndPaddingBeforeInWritingMode):
(WebCore::ShapeOutsideInfo::logicalTopOffset):
(WebCore::borderStartWithStyleForWritingMode):
(WebCore::borderAndPaddingStartWithStyleForWritingMode):
(WebCore::ShapeOutsideInfo::logicalLeftOffset):
(WebCore::ShapeOutsideInfo::computeSegmentsForLine):
(WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine):
(WebCore::ShapeOutsideInfo::shapeValue): Deleted.
(WebCore::ShapeOutsideInfo::styleForWritingMode): Deleted.
- rendering/shapes/ShapeOutsideInfo.h:
- 3:56 PM Changeset in webkit [166751] by
-
- 2 edits in trunk/Source/WebCore
Fix over-retain in SharedBufferCF's createCFData().
<https://webkit.org/b/131139>
Constructing the return type (RetainPtr<CFDataRef>) will also retain
the pointee, so this would end up leaking.
Reviewed by Anders Carlsson.
- platform/cf/SharedBufferCF.cpp:
(WebCore::SharedBuffer::createCFData):
- 3:55 PM Changeset in webkit [166750] by
-
- 3 edits in trunk/Source/WebKit2
[iOS][WK2] Add SPI to handle animated resize
https://bugs.webkit.org/show_bug.cgi?id=131141
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-03
Reviewed by Simon Fraser.
Set up a basic API to handle animated resize. The code does not do much at the moment,
it is mostly to have an interface we can implement later.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView setFrame:]):
(-[WKWebView setBounds:]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _frameOrBoundsChangedFrom:]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):
(-[WKWebView _endAnimatedResize]):
(-[WKWebView _frameOrBoundsChanged]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- 3:47 PM Changeset in webkit [166749] by
-
- 5 edits in trunk
Source/WebCore: [Win] Turn on ENABLE_CSS_GRID_LAYOUT
https://bugs.webkit.org/show_bug.cgi?id=131147
Reviewed by Simon Fraser.
Covered by existing fast/css/getComputedStyle tests.
- css/CSSAllInOne.cpp: Add CSSGridLineNamesValue.cpp when building
with ENABLE(CSS_GRID_LAYOUT)
WebKitLibraries: [Win] Enable the CSS_GRID_LAYOUT feature.
https://bugs.webkit.org/show_bug.cgi?id=131147
Reviewed by Simon Fraser.
Just like the CANVAS_PATH feature, this seems to have been
overlooked when it was turned on for other ports.
- win/tools/vsprops/FeatureDefines.props:
- win/tools/vsprops/FeatureDefinesCairo.props:
- 3:44 PM Changeset in webkit [166748] by
-
- 7 edits in trunk/Source
Source/WebCore: Pixelated WebView when display is changed from hiDPI to regularDPI
https://bugs.webkit.org/show_bug.cgi?id=131185
Reviewed by Tim Horton.
r166309 added a short circuit in GraphicsLayerCA::updateContentsScale()
when the scale didn't change. This broke layers which expected to
unconditionally receive a setContentsScale(), namely the WebTiledBackingLayer
which owns the TileController. WebTiledBackingLayer overrode -setContentsScale:
to pass the scale down to the TileController; however, it didn't override
-contentsScale, and it mucked with the scale passed in.
Fix by having setting and fetching contentsScale on a WebTiledBackingLayer
work as expected. Also rename the TileController functions to mirror the
CALayer functions better.
- WebCore.exp.in:
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateContentsScale):
- platform/graphics/ca/mac/TileController.h:
- platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::TileController):
(WebCore::TileController::contentsScale):
(WebCore::TileController::setContentsScale):
(WebCore::TileController::scale): Deleted.
(WebCore::TileController::setScale): Deleted.
- platform/graphics/ca/mac/WebTiledBackingLayer.mm:
(-[WebTiledBackingLayer setContentsScale:]):
(-[WebTiledBackingLayer contentsScale]):
Source/WebKit2: Pixelated WebView when display is changed from hiDPI to regularDPI
https://bugs.webkit.org/show_bug.cgi?id=131185
<rdar://problem/16512184&16503714>
Reviewed by Tim Horton.
TileController function was renamed.
- WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
(WebKit::PlatformCALayerRemoteTiledBacking::setContentsScale):
- 3:34 PM Changeset in webkit [166747] by
-
- 2 edits in trunk/Source/WebCore
[CSS Shapes] LineSegment logicalLeft and logicalRight members should be floats
https://bugs.webkit.org/show_bug.cgi?id=116160
Reviewed by Andreas Kling.
LineSegment edges should not have been changed to LayoutUnit. These are
used only as floats. I modified them back to floats.
No new tests are needed, no behavior change.
- rendering/shapes/Shape.h:
- 2:44 PM Changeset in webkit [166746] by
-
- 3 edits3 adds in trunk
[CG] Canvas lineDashOffset does not handle negative numbers correctly
https://bugs.webkit.org/show_bug.cgi?id=80560
Reviewed by Dean Jackson.
Source/WebCore:
CG ignores negative dash array offsets. Check if we have a negative offset, if yes
then calculate the length of the dash array and modulo the dash array offset with
the dash array length.
Test: fast/canvas/canvas-negative-lineDashOffset.html
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setLineDash):
LayoutTests:
Test correct rendering of negative offset for Canvas dash arrays.
- fast/canvas/canvas-negative-lineDashOffset-expected.txt: Added.
- fast/canvas/canvas-negative-lineDashOffset.html: Added.
- fast/canvas/script-tests/canvas-negative-lineDashOffset.js: Added.
(dataToArray):
(getPixel):
(pixelShouldBe):
- 2:40 PM Changeset in webkit [166745] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION: fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic.html broken
https://bugs.webkit.org/show_bug.cgi?id=131183
Reviewed by Simon Fraser.
Revert the loop to continue rather than breaking when an invalid block is encountered.
This is what it used to do if it encountered a non-continuation block.
- rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
- 2:36 PM Changeset in webkit [166744] by
-
- 9 edits7 moves in trunk/Source
[WebKit2] Promote user script SPI to API
https://bugs.webkit.org/show_bug.cgi?id=131181
Reviewed by Anders Carlsson.
Source/WebKit/mac:
- MigrateHeaders.make:
Source/WebKit2:
- UIProcess/API/Cocoa/WKScriptMessage.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessage.h.
- UIProcess/API/Cocoa/WKScriptMessage.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessage.mm.
(-[WKScriptMessage scriptWorld]):
(-[_WKScriptMessage scriptWorld]): Deleted.
- UIProcess/API/Cocoa/WKScriptMessageHandler.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptMessageHandler.h.
- UIProcess/API/Cocoa/WKScriptWorld.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.h.
- UIProcess/API/Cocoa/WKScriptWorld.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKScriptWorld.mm.
(+[WKScriptWorld defaultWorld]):
(+[_WKScriptWorld defaultWorld]): Deleted.
- UIProcess/API/Cocoa/WKUserContentController.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKUserContentController.h.
- UIProcess/API/Cocoa/WKUserContentController.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/_WKUserContentController.mm.
(-[WKUserContentController addScriptMessageHandler:name:world:]):
(-[WKUserContentController removeScriptMessageHandlerForName:world:]):
(-[_WKUserContentController addScriptMessageHandler:name:world:]): Deleted.
(-[_WKUserContentController removeScriptMessageHandlerForName:world:]): Deleted.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
- UIProcess/API/Cocoa/WKWebViewConfiguration.h:
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration userContentController]):
(-[WKWebViewConfiguration setUserContentController:]):
(-[WKWebViewConfiguration _userContentController]): Deleted.
(-[WKWebViewConfiguration _setUserContentController:]): Deleted.
- UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/API/Cocoa/_WKScriptMessage.h: Removed.
- UIProcess/API/Cocoa/_WKScriptMessage.mm: Removed.
- UIProcess/API/Cocoa/_WKScriptMessageHandler.h: Removed.
- UIProcess/API/Cocoa/_WKScriptWorld.h: Removed.
- UIProcess/API/Cocoa/_WKScriptWorld.mm: Removed.
- UIProcess/API/Cocoa/_WKUserContentController.h: Removed.
- UIProcess/API/Cocoa/_WKUserContentController.mm: Removed.
- WebKit2.xcodeproj/project.pbxproj:
- 2:11 PM Changeset in webkit [166743] by
-
- 2 edits in trunk/Tools
Unreviewed. Moving my name to committer section accidently
added in reviewer section.
- Scripts/webkitpy/common/config/contributors.json:
- 2:03 PM Changeset in webkit [166742] by
-
- 5 edits in trunk
Make download policy decisions SPI for now
https://bugs.webkit.org/show_bug.cgi?id=131179
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKNavigationDelegate.h:
(NS_ENUM):
- UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
(NS_ENUM):
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):
- 1:57 PM Changeset in webkit [166741] by
-
- 14 edits in trunk/Source
Harden FilterOperation type casting
https://bugs.webkit.org/show_bug.cgi?id=131142
Reviewed by Sam Weinig.
DefaultFilterOperation had an error-prone behavior where it set the base class
OperationType to the type of some other filter class, but overrode isDefault().
This made it very easy to write incorrect code that casted incorrectly based on type().
Fix by making adding a DEFAULT filter operation type, and storing the represented
type on DefaultFilterOperation().
Also remove the OperationType argument for constructors of FilterOperations that
can only be of one type, to avoid possible mistakes.
Make the type cast macros a bit more normal, and use them in a few places.
Fixed PlatformCAFiltersMac to handle the default filter case more cleanly.
Source/WebCore:
- WebCore.exp.in:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForFilter):
- css/StyleResolver.cpp:
(WebCore::StyleResolver::createFilterOperations):
- platform/graphics/ca/PlatformCAFilters.h:
- platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
(PlatformCAFilters::filterValueForOperation):
(PlatformCAFilters::colorMatrixValueForFilter):
- platform/graphics/filters/FilterOperation.cpp:
(WebCore::DefaultFilterOperation::operator==):
(WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
(WebCore::ReferenceFilterOperation::operator==):
(WebCore::BlurFilterOperation::operator==):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::blend):
- platform/graphics/filters/FilterOperation.h:
(WebCore::FilterOperation::blend):
(WebCore::FilterOperation::type):
(WebCore::FilterOperation::isBasicColorMatrixFilterOperation):
(WebCore::FilterOperation::isBasicComponentTransferFilterOperation):
(WebCore::FilterOperation::isSameType):
(WebCore::DefaultFilterOperation::create):
(WebCore::DefaultFilterOperation::representedType):
(WebCore::DefaultFilterOperation::DefaultFilterOperation):
(WebCore::ReferenceFilterOperation::create):
(WebCore::BlurFilterOperation::create):
(WebCore::BlurFilterOperation::BlurFilterOperation):
(WebCore::DropShadowFilterOperation::create):
(WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
(WebCore::FilterOperation::isDefault): Deleted.
- platform/graphics/filters/FilterOperations.cpp:
(WebCore::FilterOperations::outsets):
- rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):
- rendering/RenderLayerFilterInfo.cpp:
(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
Source/WebKit2:
- Shared/WebCoreArgumentCoders.cpp:
(IPC::encodeFilterOperation):
(IPC::decodeFilterOperation):
- Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):
- 1:56 PM Changeset in webkit [166740] by
-
- 4 edits in trunk/Source/WebCore
Stop throwing away the Document's StyleResolver on a timer.
<https://webkit.org/b/131168>
<rdar://problem/15227045>
This was causing some unfortunate pauses when returning to idle pages
after a long-ish time. There's already a mechanism in place that will
throw these away if the system comes under memory pressure.
Reviewed by Sam Weinig.
- css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::styleForPage):
- dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::didAccessStyleResolver): Deleted.
(WebCore::Document::styleResolverThrowawayTimerFired): Deleted.
- dom/Document.h:
- 1:46 PM Changeset in webkit [166739] by
-
- 2 edits in trunk/Source/WebCore
Assertion under RenderLayerCompositor::updateScrollCoordinatedLayer on time.com on iOS
https://bugs.webkit.org/show_bug.cgi?id=131150
Reviewed by Beth Dakin.
When calling updateScrollCoordinatedLayer() under styleChanged, we haven't done
layout yet so our composting layers haven't been hooked together. Don't try
to add a zero nodeID to the map in this case.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
- 1:14 PM Changeset in webkit [166738] by
-
- 2 edits in trunk/Tools
- 1:04 PM ASanWebKit edited by
- Add Step 11 for filing security bugs. Added nice descriptions for raw … (diff)
- 12:37 PM ASanWebKit edited by
- (diff)
- 12:24 PM Changeset in webkit [166737] by
-
- 2 edits in tags/Safari-538.26.2/Source/WebKit2
Merged r166735.
- 12:22 PM Changeset in webkit [166736] by
-
- 3 edits2 adds in trunk
Continuations casting issue.
https://bugs.webkit.org/show_bug.cgi?id=130057
<rdar://problem/16283406>
Reviewed by Simon Fraser.
Source/WebCore:
The code to update relative positioned anonymous block continuations should not
have assumed that all siblings were RenderBlocks. Make the code smarter and
make it bail when it hits something that isn't part of the block continuation
chain.
Added fast/block/continuation-crash.html
- rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
LayoutTests:
- fast/block/continuation-crash-expected.txt: Added.
- fast/block/continuation-crash.html: Added.
- 12:17 PM ASanWebKit created by
- Initial pass of instructions (UNTESTED) for building WebKit with clang …
- 12:01 PM Changeset in webkit [166735] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (Async text input): Controls become unresponsive to mouse events
https://bugs.webkit.org/show_bug.cgi?id=131176
<rdar://problem/16507932>
Reviewed by Tim Horton.
- UIProcess/API/mac/WKView.mm: (NATIVE_MOUSE_EVENT_HANDLER):
Don't confuse event handling machinery by sending events to WebProcess twice.
- 11:59 AM Changeset in webkit [166734] by
-
- 2 edits in tags/Safari-538.26.2/Source/WebCore
Merged r166714.
- 11:34 AM Changeset in webkit [166733] by
-
- 5 edits in trunk/Source/WebKit2
WKWebView should always have a UIDelegate, even when closed
https://bugs.webkit.org/show_bug.cgi?id=131174
<rdar://problem/16389248>
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView UIDelegate]):
(-[WKWebView setUIDelegate:]):
- UIProcess/Cocoa/UIDelegate.h:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::UIDelegate):
(WebKit::UIDelegate::~UIDelegate):
(WebKit::UIDelegate::createUIClient):
(WebKit::UIDelegate::delegate):
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::UIClient):
(WebKit::UIDelegate::UIClient::~UIClient):
(WebKit::UIDelegate::UIClient::createNewPage):
(WebKit::UIDelegate::UIClient::runJavaScriptAlert):
(WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
(WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
(WebKit::UIDelegate::UIClient::actionsForElement):
(WebKit::UIClient::UIClient): Deleted.
(WebKit::UIClient::~UIClient): Deleted.
(WebKit::UIClient::delegate): Deleted.
(WebKit::UIClient::setDelegate): Deleted.
(WebKit::UIClient::createNewPage): Deleted.
(WebKit::UIClient::runJavaScriptAlert): Deleted.
(WebKit::UIClient::runJavaScriptConfirm): Deleted.
(WebKit::UIClient::runJavaScriptPrompt): Deleted.
(WebKit::UIClient::actionsForElement): Deleted.
- UIProcess/ios/WKActionSheetAssistant.mm:
- 11:25 AM Changeset in webkit [166732] by
-
- 3 edits in trunk/Source/JavaScriptCore
Fix bit rot in ARMv7 JIT probe mechanism.
<https://webkit.org/b/131167>
Reviewed by Geoffrey Garen.
- The macro assembler does not support pushing the SP register. Worked around this by pushing the LR register as a placeholder, and then writing the original SP value to that slot.
- The CPUState field in the ProbeContext needs to be aligned on a 4 byte boundary, not an 8 byte boundary.
- assembler/MacroAssemblerARMv7.cpp:
(JSC::MacroAssemblerARMv7::probe):
- jit/JITStubsARMv7.h:
- 11:06 AM Changeset in webkit [166731] by
-
- 4 edits in trunk/Source/WebKit2
Document WKNavigationAction and WKNavigationResponse
https://bugs.webkit.org/show_bug.cgi?id=131138
Reviewed by Sam Weinig.
- UIProcess/API/Cocoa/WKFrameInfo.h:
- UIProcess/API/Cocoa/WKNavigationAction.h:
- UIProcess/API/Cocoa/WKNavigationResponse.h:
- 10:56 AM Changeset in webkit [166730] by
-
- 5 edits in trunk/Source/WebKit2
Make actionsForElement a proper API::UIClient member function
https://bugs.webkit.org/show_bug.cgi?id=131171
Reviewed by Sam Weinig.
- UIProcess/API/APIUIClient.h:
(API::UIClient::actionsForElement):
- UIProcess/Cocoa/UIDelegate.h:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIClient::actionsForElement):
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
- 10:54 AM Changeset in webkit [166729] by
-
- 1 edit in trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json
config.json fix.
- 10:31 AM WebKitGTK/StartHacking edited by
- Updated the disk space used for a complete epiphany build (diff)
- 10:29 AM WikiStart edited by
- Add link to page about WebKit and the Clang Address Sanitizer (ASan) (diff)
- 9:55 AM Changeset in webkit [166728] by
-
- 4 edits in trunk/Source/WebKit2
[WK2] Fix !ENABLE(BLOB) build
https://bugs.webkit.org/show_bug.cgi?id=131164
Patch by Martin Hodovan <mhodovan@inf.u-szeged.hu> on 2014-04-03
Reviewed by Alexey Proskuryakov.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didClose):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- 9:49 AM Changeset in webkit [166727] by
-
- 4 edits in trunk/LayoutTests
[WebInspector] inspector/dom/highlight-shape-outside-margin.html is failing
https://bugs.webkit.org/show_bug.cgi?id=131126
Reviewed by Timothy Hatcher.
I updated the test, so it works with the new testing framework. I included the shape path results in the test,
so we won't run into rounding problems, and we don't have that big test set, which would require an expected
result generation. We can add it later, if we extend the test set. The logic is similar to the non margin test case.
- TestExpectations:
- inspector/dom/highlight-shape-outside-margin-expected.txt:
- inspector/dom/highlight-shape-outside-margin.html:
- 9:48 AM Changeset in webkit [166726] by
-
- 3 edits2 adds in trunk
[CSS Shapes] CRASH with calc() value args in inset round
https://bugs.webkit.org/show_bug.cgi?id=129816
Reviewed by Andreas Kling.
Source/WebCore:
The code to parse the inset rounded corners was adding the parser
value arguments to a temporary CSSParserValueList. Unfortunately,
CSSParserValueList expects to own the values it contains, and it frees
the values it contains when the list is destroyed. This was a problem
because the values are owned by the CSSParserValueList passed in to
parseInsetRoundedCorners, and thus the calc's argument list would get
double freed, resulting in a crash. This patch fixes this by using a
Vector to hold the pointers instead.
Test: fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash.html
- css/CSSParser.cpp:
(WebCore::CSSParser::parseInsetRoundedCorners):
LayoutTests:
Simple test to make sure that using calc in the round argument of an
inset doesn't cause a crash.
- fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash-expected.txt: Added.
- fast/shapes/shape-outside-floats/shape-outside-inset-round-calc-crash.html: Added.
- 9:47 AM Changeset in webkit [166725] by
-
- 2 edits in trunk/Source/WebKit2
Fix iOS build.
- UIProcess/ios/WKActionSheetAssistant.mm:
- 9:39 AM Changeset in webkit [166724] by
-
- 2 edits in trunk/Websites/perf.webkit.org
WebKitPerfMonitor: There should be a way to add all metrics of a suite without also adding subtests
https://bugs.webkit.org/show_bug.cgi?id=131157
Reviewed by Andreas Kling.
Split "all metrics" into all metrics of a test suite and all subtests of the suite.
This allows, for example, adding all metrics such as Arithmetic and Geometric for
a given test suite without also adding its subtests.
- public/index.html:
(init.showCharts):
(init):
- 9:36 AM Changeset in webkit [166723] by
-
- 2 edits in trunk/Websites/perf.webkit.org
WebKitPerfMonitor: Tooltips cannot be pinned after using browser's back button
https://bugs.webkit.org/show_bug.cgi?id=131155
Reviewed by Andreas Kling.
The bug was caused by Chart.attach binding event listeners on plot container on each call.
This resulted in the click event handler toggling the visiblity of the tooltip twice upon
click when attach() has been called even number of times, keeping the tooltip invisible.
Fixed the bug by extracting the code to bind event listeners outside of Chart.attach as
a separate function, bindPlotEventHandlers, and calling it exactly once when Chart.attach
is called for the first time.
- public/index.html:
(Chart.attach):
(Chart..bindPlotEventHandlers):
- 9:29 AM Changeset in webkit [166722] by
-
- 2 edits in trunk/Source/WebCore
Leaving a streaming movie by going "Back" keeps playing the audio
https://bugs.webkit.org/show_bug.cgi?id=131149
Reviewed by Eric Carlson.
When stopping a HTMLMediaElement, call userCancelledLoad() (which clears the
MediaPlayer) only after calling setPausedInternal() (which pauses the MediaPlayer).
Previously, and in the reverse order, the MediaPlayer would never get a chance to pause
before being cleared. There is an underlying error with the QTKit media engine which
is causing it to continue playing even after its last reference is released, but this
does fix the symptom of playback continuing even after stopping.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::stop):
- 9:26 AM Changeset in webkit [166721] by
-
- 2 edits in trunk/Source/WebCore
[EME] Crash when passing a NULL initData to MediaKeys.createSession()
https://bugs.webkit.org/show_bug.cgi?id=131156
Reviewed by Eric Carlson.
Update the checks at the start of createSession() to match the current spec, notably
bailing early if the initData parameter is NULL or empty.
- Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::createSession):
- 9:03 AM Changeset in webkit [166720] by
-
- 3 edits2 moves in trunk/Source/WebKit2
Rename UIClient.{h, mm} to UIDelegate.{h, mm}.
Rubber-stamped by Dan Bernstein.
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/Cocoa/UIDelegate.h: Renamed from Source/WebKit2/UIProcess/Cocoa/UIClient.h.
- UIProcess/Cocoa/UIDelegate.mm: Renamed from Source/WebKit2/UIProcess/Cocoa/UIClient.mm.
- WebKit2.xcodeproj/project.pbxproj:
- 8:46 AM Changeset in webkit [166719] by
-
- 10 edits1 move in trunk/Source/WebCore
[iOS] add missing QuickTime plug-in replacement API
https://bugs.webkit.org/show_bug.cgi?id=131042
Reviewed by Dean Jackson.
Rename QuickTimePluginReplacement.cpp to QuickTimePluginReplacement.mm to make it possible
to use the ObjC JSC API.
- Modules/plugins/QuickTimePluginReplacement.cpp:
- Modules/plugins/QuickTimePluginReplacement.h:
(WebCore::QuickTimePluginReplacement::parentElement):
- Modules/plugins/QuickTimePluginReplacement.idl:
- Modules/plugins/QuickTimePluginReplacement.js:
(Replacement.prototype.timedMetadataUpdates): Implement.
(Replacement.prototype.accessLog): Ditto.
(Replacement.prototype.errorLog): Ditto.
Use the JSC ObjC API to create a JavaScript object from an array of AVMetadataItems. The
JSC ObjC API supports basic NSTypes, but an AVMetadataItem can also contain NSData which
the existing plug-in returns as base-64 encoded data, so create wrappers for NSDictionary
and NSArray.
- Modules/plugins/QuickTimePluginReplacement.mm: Copied from Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp.
(WebCore::QuickTimePluginReplacement::ensureReplacementScriptInjected): Disambiguate with "JSC::"
(WebCore::QuickTimePluginReplacement::installReplacement): Ditto.
(WebCore::jsValueWithDataInContext): Create JSValue* from NSData.
(WebCore::jsValueWithArrayInContext): Create JSValue* from NSArray.
(WebCore::jsValueWithDictionaryInContext): Create JSValue* from NSDictionary.
(WebCore::jsValueWithValueInContext): Create JSValue* from basic NSTypes plus AVMetadataItem
and NSData.
(WebCore::jsValueWithAVMetadataItemInContext): Create JSValue* from AVMetadataItem.
(WebCore::JSQuickTimePluginReplacement::timedMetaData): Script interface.
(WebCore::JSQuickTimePluginReplacement::accessLog): Ditto.
(WebCore::JSQuickTimePluginReplacement::errorLog): Ditto.
- WebCore.xcodeproj/project.pbxproj: QuickTimePluginReplacement.cpp -> QuickTimePluginReplacement.mm.
- platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::timedMetadata): iOS only accessor.
(WebCore::MediaPlayer::accessLog): Ditto.
(WebCore::MediaPlayer::errorLog): Ditto.
- platform/graphics/MediaPlayer.h:
- platform/graphics/MediaPlayerPrivate.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::timedMetadata):
(WebCore::MediaPlayerPrivateAVFoundationObjC::accessLog):
(WebCore::MediaPlayerPrivateAVFoundationObjC::errorLog):
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
(WebCore::itemKVOProperties):
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):
- 8:33 AM Changeset in webkit [166718] by
-
- 6 edits in trunk
[EFL][WK2] Replacing zoom functionality of MiniBrowser from scale_set to page_zoom_set.
https://bugs.webkit.org/show_bug.cgi?id=130391
Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-04-03
Reviewed by Gyuyoung Kim.
Source/WebKit2:
Change the implementation of the zoom functionality from ewk_view_scale_set
to ewk_view_page_zoom_set. Adding to the API functions: ewk_view_page_zoom_set and
ewk_view_page_zoom_get to call appropriate WK functions.
- UIProcess/API/efl/ewk_view.cpp:
(ewk_view_page_zoom_set):
(ewk_view_page_zoom_get):
- UIProcess/API/efl/ewk_view.h:
- UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
Tools:
Change the implementation of the zoom functionality from ewk_view_scale_set
to ewk_view_page_zoom_set.
- MiniBrowser/efl/main.c:
- 7:50 AM Changeset in webkit [166717] by
-
- 1 edit2 adds in trunk/LayoutTests
[CSS Grid Layout] Make sure grid element's shrink-to-fit behavior is correct
https://bugs.webkit.org/show_bug.cgi?id=103473
Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-03
Reviewed by Sergio Villar Senin.
Added a new Layout Test to verify the shrink-to-fit behavior works as expected
for out-of-flow positioned grid elements.
- fast/css-grid-layout/grid-element-shrink-to-fit-expected.html: Added.
- fast/css-grid-layout/grid-element-shrink-to-fit.html: Added.
- 7:37 AM Changeset in webkit [166716] by
-
- 2 edits in trunk/Source/JavaScriptCore
ARMv7 compare32() should not use TST to do CMP's job.
<https://webkit.org/b/131146>
Reviewed by Geoffrey Garen.
The ARMv7 implementation of "compare32(RegisterID left, TrustedImm32 right)"
was using "tst reg, reg" to implement "cmp reg, #0". Unfortunately, the tst
instruction doesn't set the Overflow (V) flag and this results in random
results depending on whether there was a preceeding instruction that did set
the Overflow (V) flag. This issue was causing emscripten-cube2hash to run
with a lot of OSR exits where not expected as well as producing wrong results.
The fix is to use "cmp reg, #0" to do the job properly.
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::compare32):
- 6:27 AM Changeset in webkit [166715] by
-
- 5 edits in trunk/Source/WebCore
[CSS Regions] Include region range information when printing the render tree
https://bugs.webkit.org/show_bug.cgi?id=131159
Reviewed by Mihnea Ovidenie.
With this change showRenderObject() will print the region range for objects inside
a flow thread. The format is:
Rs: <startRegion> Re: <endRegion>
Because this can be called anytime during debugging, it's necessary to disable the
current flow thread caching to prevent using the wrong flow thread for an object.
Tests: No new tests, no functional change.
- rendering/RenderFlowThread.cpp:
(WebCore::CurrentRenderFlowThreadDisabler::CurrentRenderFlowThreadDisabler):
(WebCore::CurrentRenderFlowThreadDisabler::~CurrentRenderFlowThreadDisabler):
- rendering/RenderFlowThread.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::showRegionsInformation): Added.
(WebCore::RenderObject::showRenderObject):
- rendering/RenderObject.h:
- 3:46 AM Changeset in webkit [166714] by
-
- 2 edits in trunk/Source/WebCore
RenderSnapshottedPlugIn::paint should use iterator for traversal.
https://bugs.webkit.org/show_bug.cgi?id=131158
Reviewed by Dean Jackson.
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paint):
- 3:28 AM Changeset in webkit [166713] by
-
- 2 edits in trunk/Source/WTF
[EFL] Enable CSS JIT again, it works fine after r166666.
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.
- wtf/Platform.h:
- 3:15 AM Changeset in webkit [166712] by
-
- 19 edits2 adds in trunk
[CSS Grid Layout] <string> not allowed in grid-{area | row | column} syntax
https://bugs.webkit.org/show_bug.cgi?id=129713
Reviewed by Darin Adler.
Source/WebCore:
Grid positioning properties no longer accept <string> values for
named grid lines as they did in previous versions of the specs. They
were first replaced by <ident> and since the beginning of 2014 they
should only accept <custom-ident>.
Updated the parser and the style resolver to this new syntax. Also
updated the tests accordingly.
Test: fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html
- css/CSSParser.cpp:
(WebCore::isValidCustomIdent): New function that checks that the
<custom-ident> is valid.
(WebCore::CSSParser::parseIntegerOrCustomIdentFromGridPosition):
(WebCore::CSSParser::parseGridPosition):
(WebCore::CSSParser::parseIntegerOrStringFromGridPosition):
Replaced by WebCore::CSSParser::parseIntegerOrCustomIdentFromGridPosition.
- css/CSSParser.h:
- css/StyleResolver.cpp:
(WebCore::createGridPosition):
LayoutTests:
Replaced <string> by <custom-ident> in the tests. Also added a new
one to check that children are properly layed out after changes in
the grid line names.
- fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child-expected.txt: Added.
- fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html: Added.
- fast/css-grid-layout/grid-item-area-get-set.html:
- fast/css-grid-layout/grid-item-bad-named-area-auto-placement.html:
- fast/css-grid-layout/grid-item-bad-resolution-double-span.html:
- fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
- fast/css-grid-layout/grid-item-column-row-get-set.html:
- fast/css-grid-layout/grid-item-end-after-get-set-expected.txt:
- fast/css-grid-layout/grid-item-end-after-get-set.html:
- fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
- fast/css-grid-layout/grid-item-named-grid-line-resolution-expected.txt:
- fast/css-grid-layout/grid-item-named-grid-line-resolution.html:
- fast/css-grid-layout/grid-item-negative-position-resolution.html:
- fast/css-grid-layout/grid-item-position-changed-dynamic.html:
- fast/css-grid-layout/grid-item-start-before-get-set-expected.txt:
- fast/css-grid-layout/grid-item-start-before-get-set.html:
- 2:55 AM Changeset in webkit [166711] by
-
- 3 edits in trunk/Tools
[webkitpy] perf profiler does not understand --call-graph argument
https://bugs.webkit.org/show_bug.cgi?id=131132
Reviewed by Ryosuke Niwa.
New versions of perf profiler have changed the argument from --call-graph to -g.
- Scripts/webkitpy/common/system/profiler.py:
(Perf.wrapper_arguments): Use -g instead of --call-graph.
- Scripts/webkitpy/port/driver_unittest.py:
(DriverTest.test_profiler_as_wrapper): Update test accordingly.
- 2:39 AM Changeset in webkit [166710] by
-
- 2 edits in trunk/Tools
Add EFL WK2 performance bot to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=131034
Fix after r166707, use "Perf" instead of "perf" for consistency.
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- 2:24 AM Changeset in webkit [166709] by
-
- 5 edits in tags/Safari-538.26.2/Source
Versioning.
- 2:23 AM Changeset in webkit [166708] by
-
- 2 edits in trunk/Source/WTF
[GTK][Cmake] Enable CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=131022
Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-04-03
Reviewed by Martin Robinson.
- wtf/Platform.h: Enable CSS JIT for GTK port.
- 2:19 AM Changeset in webkit [166707] by
-
- 2 edits in trunk/Tools
Add EFL WK2 performance bot to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=131034
Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-03
Reviewed by Csaba Osztrogonác.
- BuildSlaveSupport/build.webkit.org-config/config.json:
- 1:51 AM Changeset in webkit [166706] by
-
- 3 edits2 adds in trunk
Crash after mutating after pseudo style
https://bugs.webkit.org/show_bug.cgi?id=130881
Reviewed by Andreas Kling.
Source/WebCore:
Test: fast/css/pseudo-after-crash.html
- style/StyleResolveTree.cpp:
(WebCore::Style::updateBeforeOrAfterPseudoElement):
Invalidate the cached renderer for pseudo elements too.
(WebCore::Style::needsPseudeElement): Deleted.
Fix spelling.
LayoutTests:
- fast/css/pseudo-after-crash-expected.txt: Added.
- fast/css/pseudo-after-crash.html: Added.
- 1:34 AM Changeset in webkit [166705] by
-
- 5 edits in tags/Safari-538.20/Source
Versioning.
- 1:30 AM Changeset in webkit [166704] by
-
- 1 copy in tags/Safari-538.26.2
New Tag.
- 1:17 AM Changeset in webkit [166703] by
-
- 6 edits in trunk
AX: AccessibilityObject::children() returns invalid results sometimes
https://bugs.webkit.org/show_bug.cgi?id=130563
Reviewed by Joseph Pecoraro.
Source/WebCore:
Allow the DOM inspector to handle AX objects that do not have Node equivalents
(e.g. anonymous renderers).
- inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::processAccessibilityChildren):
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
- inspector/InspectorDOMAgent.h:
LayoutTests:
- inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
- 12:27 AM Changeset in webkit [166702] by
-
- 2 edits in trunk
[GTK][CMake] Look for glx.h in OPENGL_INCLUDE_DIR.
https://bugs.webkit.org/show_bug.cgi?id=131095
Reviewed by Martin Robinson.
One needs to take into account OpenGL's include directory found via
find_package() when looking for glx.h, since if the former is a
non-standard location the latter will also be. If this is not it is
possible that OpenGL is found but GLX support is not properly detected.
- Source/cmake/OptionsGTK.cmake:
- 12:08 AM Changeset in webkit [166701] by
-
- 4 edits in trunk/Websites/perf.webkit.org
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.
- 12:07 AM Changeset in webkit [166700] by
-
- 3 edits in trunk/Websites/perf.webkit.org
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:
- Two standard deviations can be too small to show the confidence interval for results.
- 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.
Apr 2, 2014:
- 11:21 PM Changeset in webkit [166699] by
-
- 2 edits in trunk/LayoutTests
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.
- 11:15 PM Changeset in webkit [166698] by
-
- 5 edits in trunk
[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):
- 10:59 PM Changeset in webkit [166697] by
-
- 6 edits in trunk/Source
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.
- 10:45 PM Changeset in webkit [166696] by
-
- 5 edits in trunk/Source/WebCore
[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):
- 10:28 PM Changeset in webkit [166695] by
-
- 3 edits2 adds in trunk
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.
- 10:05 PM Changeset in webkit [166694] by
-
- 5 edits in trunk/Source
Versioning.
- 10:02 PM Changeset in webkit [166693] by
-
- 1 copy in tags/Safari-538.27
New tag.
- 9:57 PM Changeset in webkit [166692] by
-
- 3 edits in trunk/Source/WebKit2
[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):
- 7:38 PM Changeset in webkit [166691] by
-
- 6 edits2 deletes in trunk/Source/WebKit
[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:
- 6:38 PM Changeset in webkit [166690] by
-
- 2 edits in trunk/Source/WebKit2
Remove a FIXME that happened.
- Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::display):
- 6:37 PM Changeset in webkit [166689] by
-
- 2 edits in trunk/Source/WebCore
Speculative build fix for Windows.
- DerivedSources.make: Make sure we generate our media control
scripts for Apple Windows (but not WinCairo)
- 6:36 PM Changeset in webkit [166688] by
-
- 4 edits in trunk/Source/WebKit
Build fix after r166684.
Source/WebKit/ios:
- WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):
Source/WebKit/win:
- WebCoreSupport/WebContextMenuClient.cpp:
(WebContextMenuClient::searchWithGoogle):
- 6:34 PM Changeset in webkit [166687] by
-
- 2 edits in trunk/Source/WebKit2
Fix the !USE(IOSURFACE) build... again.
- UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
- 6:09 PM Changeset in webkit [166686] by
-
- 2 edits in trunk/Source/WebCore
Fix the !USE(IOSURFACE) iOS build.
- platform/ios/MemoryPressureHandlerIOS.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
- 5:56 PM Changeset in webkit [166685] by
-
- 4 edits in trunk/Source/WebCore
<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.
- 5:51 PM Changeset in webkit [166684] by
-
- 25 edits in trunk/Source
<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):
- 5:44 PM Changeset in webkit [166683] by
-
- 3 edits in trunk/WebKitLibraries
Update WKSI.
<rdar://problem/16321286>
- libWebKitSystemInterfaceMavericks.a:
- libWebKitSystemInterfaceMountainLion.a:
- 5:33 PM Changeset in webkit [166682] by
-
- 12 edits2 adds2 deletes in trunk/Source
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.
- 5:07 PM Changeset in webkit [166681] by
-
- 2 edits in trunk/Source/WebKit2
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.
- 4:53 PM Changeset in webkit [166680] by
-
- 21 edits in trunk
Source/WebCore: 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.
- 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:
- 4:51 PM Changeset in webkit [166679] by
-
- 7 edits in trunk/Source/WebCore
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:
- 4:50 PM Changeset in webkit [166678] by
-
- 9 edits in trunk/Source/JavaScriptCore
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.
- 4:41 PM Changeset in webkit [166677] by
-
- 3 edits in trunk/Source/WebKit2
[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:
- 4:40 PM Changeset in webkit [166676] by
-
- 5 edits in trunk/Source/WebCore
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):
- 4:29 PM Changeset in webkit [166675] by
-
- 2 edits in trunk/Source/WebKit2
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).
- 4:09 PM Changeset in webkit [166674] by
-
- 2 edits in trunk/Tools
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.
- 4:06 PM Changeset in webkit [166673] by
-
- 5 edits in trunk/LayoutTests
[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.):
- 3:48 PM Changeset in webkit [166672] by
-
- 4 edits in trunk/Source/WebKit2
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:
- 3:32 PM Changeset in webkit [166671] by
-
- 1 edit1 add in trunk/LayoutTests
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.
- 2:50 PM Changeset in webkit [166670] by
-
- 2 edits in trunk/PerformanceTests
Unreviewed.
Try to ignore some Xcode shmutz in MallocBench.
- MallocBench/MallocBench.xcodeproj: Added property svn:ignore.
- 2:42 PM Changeset in webkit [166669] by
-
- 9 edits in trunk
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:
- 2:40 PM Changeset in webkit [166668] by
-
- 11 edits2 adds in trunk
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.
- 2:38 PM Changeset in webkit [166667] by
-
- 1 edit37 adds in trunk/PerformanceTests
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.
- 2:27 PM Changeset in webkit [166666] by
-
- 3 edits in trunk/Source/WebCore
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):
- 2:06 PM Changeset in webkit [166665] by
-
- 14 edits2 deletes in trunk
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.
- 2:02 PM Changeset in webkit [166664] by
-
- 4 edits in trunk/Source/WebKit2
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:
- 1:59 PM Changeset in webkit [166663] by
-
- 4 edits in trunk/Source/WebKit2
[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.
- 1:49 PM Changeset in webkit [166662] by
-
- 5 edits in trunk/Source/JavaScriptCore
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:
- 1:28 PM WikiStart edited by
- (diff)
- 1:07 PM Changeset in webkit [166661] by
-
- 39 edits1 copy in trunk
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):
- 12:58 PM Changeset in webkit [166660] by
-
- 3 edits in trunk/WebKitLibraries
[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.
- 12:52 PM Changeset in webkit [166659] by
-
- 2 edits in trunk/Source/WebCore
Try to fix test failures.
- platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::TileGrid): Initialize a field.
- 12:51 PM Changeset in webkit [166658] by
-
- 10 edits4 adds in trunk/Source/WebKit2
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:
- 12:34 PM Changeset in webkit [166657] by
-
- 12 edits4 deletes in trunk
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.
- 12:29 PM April 2014 Meeting edited by
- (diff)
- 12:28 PM April 2014 Meeting created by
- 12:27 PM Changeset in webkit [166656] by
-
- 3 edits in trunk/Source/WebKit2
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.
- 12:25 PM WikiStart edited by
- (diff)
- 11:57 AM Changeset in webkit [166655] by
-
- 2 edits in trunk/Source/WebKit
[Win] Unreviewed build fix for full Debug rebuild.
- WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export JSC symbol needed by testing infrastructure.
- 11:16 AM Changeset in webkit [166654] by
-
- 10 edits1 copy1 add in trunk/Source
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:
- 11:11 AM Changeset in webkit [166653] by
-
- 3 edits in trunk/Source/WebCore
[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:
- 10:54 AM Changeset in webkit [166652] by
-
- 2 edits in trunk/Source/WebCore
[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):
- 10:27 AM Changeset in webkit [166651] by
-
- 2 edits in trunk/Source/WebKit2
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:]):
- 10:21 AM Changeset in webkit [166650] by
-
- 6 edits2 adds in trunk
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.
- 9:31 AM Changeset in webkit [166649] by
-
- 12 edits1 add in trunk
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.
- 8:38 AM Changeset in webkit [166648] by
-
- 11 edits in trunk
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.
- 8:29 AM Changeset in webkit [166647] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix after r166642.
(WinCairo should really turn subpixel layout on.)
- platform/graphics/LayoutSize.h:
(WebCore::flooredForPainting):
- 8:10 AM Changeset in webkit [166646] by
-
- 3 edits in trunk/Tools
[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):
- 7:52 AM Changeset in webkit [166645] by
-
- 1 edit2 adds in trunk/LayoutTests
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.
- 7:37 AM Changeset in webkit [166644] by
-
- 3 edits in trunk/Source/WebCore
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:
- 7:27 AM Changeset in webkit [166643] by
-
- 7 edits in trunk/Source/WebCore
[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.
- 7:18 AM Changeset in webkit [166642] by
-
- 29 edits1 add in trunk/Source/WebCore
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:
- 6:53 AM Changeset in webkit [166641] by
-
- 2 edits in trunk/Source/WebCore
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):
- 6:01 AM Changeset in webkit [166640] by
-
- 8 edits in trunk/Source
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.
- 4:22 AM Changeset in webkit [166639] by
-
- 2 edits in trunk/Tools
[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):
- 2:58 AM Changeset in webkit [166638] by
-
- 3 edits1 move in trunk
[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.
- 2:23 AM Changeset in webkit [166637] by
-
- 5 edits in trunk/Source/WebKit/efl
[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:
- 2:14 AM Changeset in webkit [166636] by
-
- 3 edits in trunk/Source/WTF
[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.
- 12:38 AM Changeset in webkit [166635] by
-
- 2 edits in trunk
[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.
- 12:30 AM Changeset in webkit [166634] by
-
- 6 edits4 adds in trunk
[CSS Blending] Compositing requirements for blending are not computed correctly
https://bugs.webkit.org/show_bug.cgi?id=130664
Patch by Ion Rosca <Ion Rosca> 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.
- 12:05 AM Changeset in webkit [166633] by
-
- 9 edits2 adds in trunk/Source/WebCore
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):