timothy_horton@apple.com [Wed, 24 Dec 2014 00:13:48 +0000 (00:13 +0000)]
Expose ElementBoundingBox on WKHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=139895
<rdar://problem/
19333075>
Reviewed by Dan Bernstein.
* UIProcess/API/C/WKHitTestResult.cpp:
(WKHitTestResultGetElementBoundingBox):
* UIProcess/API/C/WKHitTestResult.h:
Expose the rect.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177704
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Wed, 24 Dec 2014 00:13:16 +0000 (00:13 +0000)]
Simplify building with ASan
https://bugs.webkit.org/show_bug.cgi?id=139916
Reviewed by Mark Rowe.
.:
* Makefile.shared: Invoke set-webkit-configuration to store ASan choice as appropriate.
Tools:
* Scripts/set-webkit-configuration: Store ASan state into a new configuration file.
We could also update Configuration file format, but that's a little scary because
of how many places in code read it.
* Scripts/webkitdirs.pm:
(determineASanIsEnabled): Read it from ASan configuration file.
(argumentsForConfiguration): Added a FIXME.
(asanIsEnabled): A caching wrapper similar to what we have for other configuration options.
(XcodeOptions): Pass the options needed for ASan.
* asan/asan.xcconfig: Use the right toolchains. Made warnings fatal again, as there
no warnings to avoid. Removed explicit linking options, as -fsanitize=address does
that automatically.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177703
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 24 Dec 2014 00:13:03 +0000 (00:13 +0000)]
Remove the custom web page preview code
https://bugs.webkit.org/show_bug.cgi?id=139894
<rdar://problem/
19333074>
Reviewed by Dan Bernstein.
* UIProcess/API/Cocoa/WKViewPrivate.h:
* UIProcess/API/mac/WKView.mm:
(-[WKView _dismissContentRelativeChildWindows]):
(-[WKView _viewForPreviewingURL:initialFrameSize:]): Deleted.
(-[WKView _titleForPreviewOfURL:]): Deleted.
(-[WKView _setPreviewTitle:]): Deleted.
(-[WKView _setPreviewLoading:]): Deleted.
(-[WKView _setPreviewOverrideImage:]): Deleted.
(-[WKView _finishPreviewingURL:withPreviewView:]): Deleted.
(-[WKView _handleClickInPreviewView:URL:]): Deleted.
(-[WKView _shouldUseStandardQuickLookPreview]): Deleted.
* UIProcess/mac/WKImmediateActionController.h:
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _clearImmediateActionState]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController _defaultAnimationController]):
(-[WKImmediateActionController hidePreview]): Deleted.
(-[WKImmediateActionController setPreviewTitle:]): Deleted.
(-[WKImmediateActionController setPreviewLoading:]): Deleted.
(-[WKImmediateActionController setPreviewOverrideImage:]): Deleted.
(-[WKImmediateActionController _animationControllerForCustomPreview]): Deleted.
* UIProcess/mac/WKPagePreviewViewController.h: Removed.
* UIProcess/mac/WKPagePreviewViewController.mm: Removed.
* UIProcess/mac/WKPreviewPopoverAnimationController.h: Removed.
* UIProcess/mac/WKPreviewPopoverAnimationController.mm: Removed.
* WebKit2.xcodeproj/project.pbxproj:
Remove all of the custom web page preview code. Clients that want the custom
preview can implement it by overriding the immediate action.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177702
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 23:58:27 +0000 (23:58 +0000)]
Add WebProcessProxy::transformHandlesToObjects
https://bugs.webkit.org/show_bug.cgi?id=139922
Reviewed by Tim Horton.
This will be used to convert between the handles and their respective UI side objects.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::transformHandlesToObjects):
(WebKit::WebProcessProxy::transformObjectsToHandles):
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles): Deleted.
* UIProcess/WebProcessProxy.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177701
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 23:35:33 +0000 (23:35 +0000)]
Add handle transform functions to WebConnection
https://bugs.webkit.org/show_bug.cgi?id=139920
Reviewed by Sam Weinig.
This will be used by the web connection code to convert between objects and their respective handles.
* Shared/WebConnection.h:
* UIProcess/WebConnectionToWebProcess.cpp:
(WebKit::WebConnectionToWebProcess::transformHandlesToObjects):
(WebKit::WebConnectionToWebProcess::transformObjectsToHandles):
* UIProcess/WebConnectionToWebProcess.h:
* WebProcess/WebConnectionToUIProcess.cpp:
(WebKit::WebConnectionToUIProcess::transformHandlesToObjects):
(WebKit::WebConnectionToUIProcess::transformObjectsToHandles):
* WebProcess/WebConnectionToUIProcess.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177700
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 23 Dec 2014 23:07:40 +0000 (23:07 +0000)]
Rename ImmutableDictionary to API::Dictionary and merge MutableDictionary into it
https://bugs.webkit.org/show_bug.cgi?id=139917
Reviewed by Anders Carlsson.
- Renames ImmutableDictionary -> API::Dictionary
- Merges MutableDictionary into the new API::Dictionary
(as a result WKDictionaryIsMutable() now always returns true)
* File list elided *
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177699
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 23:06:10 +0000 (23:06 +0000)]
Add WebProcess::transformObjectsToHandles
https://bugs.webkit.org/show_bug.cgi?id=139918
Reviewed by Tim Horton.
This function will be used for transforming bundle objects to their respective handle types
when sending messages to the UI process.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::transformHandlesToObjects):
(WebKit::WebProcess::transformObjectsToHandles):
* WebProcess/WebProcess.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::transformHandlesToObjects):
(WebKit::WebProcess::transformObjectsToHandles):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177698
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 22:27:11 +0000 (22:27 +0000)]
Move dynamic_objc_cast to RetainPtr.h
https://bugs.webkit.org/show_bug.cgi?id=139915
Reviewed by Sam Weinig.
Source/WebKit2:
* Shared/mac/ObjCObjectGraph.mm:
(WebKit::dynamic_objc_cast): Deleted.
Source/WTF:
* wtf/RetainPtr.h:
(WTF::dynamic_objc_cast):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177697
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 22:16:46 +0000 (22:16 +0000)]
Re-indent RefPtr.h and RetainPtr.h.
Rubber-stamped by Sam Weinig.
* wtf/RefPtr.h:
* wtf/RetainPtr.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177696
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 22:14:48 +0000 (22:14 +0000)]
Add WebProcess::transformHandlesToObjects
https://bugs.webkit.org/show_bug.cgi?id=139913
Reviewed by Tim Horton.
Rename objectGraphByTransformingObjectsToHandles to transformObjectsToHandles and add
transformHandlesToObjects that will try to convert handles to the actual bundle type objects.
* WebProcess/WebProcess.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::transformHandlesToObjects):
(WebKit::WebProcess::transformObjectsToHandles):
(WebKit::WebProcess::objectGraphByTransformingObjectsToHandles): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177695
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 21:53:07 +0000 (21:53 +0000)]
Add WebProcess::objectGraphByTransformingObjectsToHandles
https://bugs.webkit.org/show_bug.cgi?id=139912
Reviewed by Tim Horton.
This will be used to convert Objective-C object graphs containing bundle types to their handle counterparts.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::transformHandlesToObjects):
(WebKit::WebProcess::apiObjectByConvertingFromHandles): Deleted.
Rename apiObjectByConvertingFromHandles to transformHandlesToObjects.
* WebProcess/WebProcess.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::objectGraphByTransformingObjectsToHandles):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177694
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 20:44:25 +0000 (20:44 +0000)]
Fix UserMessage::transform to only call shouldTransform once
https://bugs.webkit.org/show_bug.cgi?id=139911
Reviewed by Sam Weinig.
Also, make it possible for transformers to return null objects and change the transformers
to return the passed in object when there's no need to do a transform.
* Shared/UserData.cpp:
(WebKit::transformGraph):
(WebKit::UserData::transform):
(WebKit::UserData::encode): Deleted.
(WebKit::UserData::decode): Deleted.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::apiObjectByConvertingFromHandles):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177693
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Tue, 23 Dec 2014 20:29:26 +0000 (20:29 +0000)]
Rename WebContext to WebProcessPool
https://bugs.webkit.org/show_bug.cgi?id=139909
Rubber-stamped by Anders Carlsson.
Source/WebCore:
Merge SessionID and SessionIDHash into one file to make auto-generation of
HashMaps with SessionIDs easier.
* WebCore.xcodeproj/project.pbxproj:
* loader/cache/MemoryCache.h:
* page/SessionID.h:
(WTF::SessionIDHash::hash):
(WTF::SessionIDHash::equal):
(WTF::HashTraits<WebCore::SessionID>::emptyValue):
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue):
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue):
* page/SessionIDHash.h: Removed.
Source/WebKit2:
- Major renames:
WebContext -> WebProcessPool
WebContextConfiguration -> WebProcessPoolConfiguration
API::ContextConfiguration -> API::ProcessPoolConfiguration
* File list elided *
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177692
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 20:15:48 +0000 (20:15 +0000)]
Only call shouldTransformGraph once per graph
https://bugs.webkit.org/show_bug.cgi?id=139910
Reviewed by Sam Weinig.
Don't call shouldTransformGraph for each node in the object graph. Instead, call it once
and then transform the entire graph if needed.
* Shared/mac/ObjCObjectGraph.h:
* Shared/mac/ObjCObjectGraph.mm:
(WebKit::shouldTransformGraph):
(WebKit::transformGraph):
(WebKit::ObjCObjectGraph::transform):
(WebKit::shouldTransform): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177691
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 23 Dec 2014 20:01:42 +0000 (20:01 +0000)]
TestWebKitAPI build is broken when ASan is enabled
https://bugs.webkit.org/show_bug.cgi?id=139902
Reviewed by Darin Adler.
* TestWebKitAPI/Configurations/InjectedBundle.xcconfig:
* TestWebKitAPI/Configurations/TestWebKitAPILibrary.xcconfig:
Inherit linker flags from DebugRelease, which respects ASAN.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177690
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Tue, 23 Dec 2014 19:23:48 +0000 (19:23 +0000)]
platform/mac/editing/input/devanagari-ligature.html is flaky on Yosemite, ligature fails to form
https://bugs.webkit.org/show_bug.cgi?id=138683
Reviewed by Darin Adler.
This patch changes how we check fonts for equality. In particular, this patch adds a
objectForEqualityCheck() to Cocoa's FontPlatformData, and callers should pass this object
to CFEqual() to determine if two platform fonts are equal. This patch also migrates all
call sites to using this function.
I don't want to implement operator==() because there are many cases where the same font
is compared against many others, and this solution is cleaner than caching a comparison
object inside the font object itself.
No new tests because this is covered by platform/mac/editing/input/devanagari-ligature.html.
* platform/graphics/FontPlatformData.h:
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::objectForEqualityCheck):
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
* platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
(WebCore::GlyphPage::fill):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::SimpleFontData::canRenderCombiningCharacterSequence):
* platform/spi/cocoa/CoreTextSPI.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177689
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Tue, 23 Dec 2014 18:45:05 +0000 (18:45 +0000)]
[SVG -> OTF Converter] Make Placeholder a move-only type
https://bugs.webkit.org/show_bug.cgi?id=139870
Reviewed by Anders Carlsson.
No new tests because there is no behavior change.
* svg/SVGToOTFFontConversion.cpp:
(WebCore::SVGToOTFFontConverter::Placeholder::Placeholder):
(WebCore::SVGToOTFFontConverter::Placeholder::populate):
(WebCore::SVGToOTFFontConverter::Placeholder::~Placeholder):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177688
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 23 Dec 2014 18:37:21 +0000 (18:37 +0000)]
Move color CSS properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=139898
Reviewed by Antti Koivisto.
Move color CSS properties to the new StyleBuilder by teaching the
StyleBuilder generator how to handle them.
* css/CSSPropertyNames.in:
- Move color properties to the new StyleBuilder.
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::defaultInitialColor): Deleted.
(WebCore::ApplyPropertyColor::applyInheritValue): Deleted.
(WebCore::ApplyPropertyColor::applyInitialValue): Deleted.
(WebCore::ApplyPropertyColor::applyValue): Deleted.
(WebCore::ApplyPropertyColor::applyColorValue): Deleted.
(WebCore::ApplyPropertyColor::createHandler): Deleted.
- Drop color properties support from the DeprecatedStyleBuilder.
* css/makeprop.pl:
- Teach the StyleBuilder generator how to handle color properties.
- Use a class for StyleBuilderFunctions instead of a namespace so
that it can be made a friend of RenderStyle class.
* rendering/style/RenderStyle.h:
- Mark StyleBuilderFunctions class as friend as its functions
can set RenderStyle members directly. This is similar to what
is already done for StyleBuilderCustom class. The new color
properties handling calls private methods on RenderStyle.
- Mark invalidColor() method as static as it does not require
an instance.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177687
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Tue, 23 Dec 2014 18:04:39 +0000 (18:04 +0000)]
Incorrect dashed and dotted border painting.
https://bugs.webkit.org/show_bug.cgi?id=139872
rdar://problem/
18024205
Reviewed by Simon Fraser.
This patch makes dashed/dotted border painting symmetric and consistent.
It also works with subpixel positioning.
Source/WebCore:
Tests: fast/borders/border-painting-correctness-dashed.html
fast/borders/border-painting-correctness-dotted.html
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawLine):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-painting-correctness-dashed-expected.html: Added.
* fast/borders/border-painting-correctness-dashed.html: Added.
* fast/borders/border-painting-correctness-dotted-expected.html: Added.
* fast/borders/border-painting-correctness-dotted.html: Added.
* fast/borders/resources/border-painting-correctness-dashed-expected.png: Added.
* fast/borders/resources/border-painting-correctness-dotted-expected.png: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177686
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 16:52:54 +0000 (16:52 +0000)]
Use a Transformer for UserData as well, to avoid always copying arrays and dictionaries
https://bugs.webkit.org/show_bug.cgi?id=139896
Reviewed by Darin Adler.
* Shared/UserData.cpp:
(WebKit::shouldTransform):
(WebKit::UserData::transform):
* Shared/UserData.h:
(WebKit::UserData::Transformer::~Transformer):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::apiObjectByConvertingFromHandles):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177685
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Tue, 23 Dec 2014 10:29:14 +0000 (10:29 +0000)]
editing/spelling/grammar-paste.html is flaky in debug after r177682
https://bugs.webkit.org/show_bug.cgi?id=139903
Unreviewed gardening.
* TestExpectations:
Mark it as flaky.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177684
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Tue, 23 Dec 2014 09:36:44 +0000 (09:36 +0000)]
Add proper expectations for two spelling/ tests after r177682
Unreviewed gardening.
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177683
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Tue, 23 Dec 2014 08:26:49 +0000 (08:26 +0000)]
shouldBecomeEqual() behaves as shouldBe() if the testing expression returns the expected value
https://bugs.webkit.org/show_bug.cgi?id=133939
Reviewed by Darin Adler.
First call of eval(expression) inside shouldBecomeEqual was always
made synchronously. If the testing expression returns the same value
as expected one then shouldBecomeEqual() will immediately report PASS,
for example,
shouldBecomeEqual(internals.hasSpellingMarker("wellcome"), false);
in consequence, assuming asynchronous path of spellchecking, spelling markers
may appear after a while.
The bug was caused by checking a condition at the beginning of shouldBecomeEqual(),
before calling a timer. As a result, queued asynchronous events doesn't effect
this checking.
* TestExpectations:
This fix reveals new bugs in execDeleteCommand() behaviour, two tests need
to marked as failure now.
* resources/js-test-pre.js:
(.condition):
(shouldBecomeEqual):
(shouldBecomeDifferent):
* resources/js-test.js:
(.condition):
(shouldBecomeEqual):
(shouldBecomeDifferent):
Always check a condition on timer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177682
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 23 Dec 2014 07:28:53 +0000 (07:28 +0000)]
[iOS] Log which type of resources are commonly loaded using FeatureCounter
https://bugs.webkit.org/show_bug.cgi?id=139890
Reviewed by Darin Adler.
Log which type of resources are commonly loaded using FeatureCounter
(e.g. stylesheets, scripts, fonts, images, ...).
* loader/SubresourceLoader.cpp:
(WebCore::logResourceLoadedUsingFeatureCounter):
(WebCore::SubresourceLoader::didFinishLoading):
* platform/FeatureCounterKeys.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177681
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 23 Dec 2014 07:23:14 +0000 (07:23 +0000)]
[iOS] Log using FeatureCounter when a PacheCache fails due to memory pressure
https://bugs.webkit.org/show_bug.cgi?id=139874
<rdar://problem/
19255690>
Reviewed by Darin Adler.
Log using FeatureCounter when a PacheCache fails due to memory
pressure. To detect this, a flag is added to HistoryItem to mark
items that are no longer in the page becaused they were pruned
(either because of a low memory handling or because the page cache
reached its maximum capacity).
* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
* history/HistoryItem.h:
* history/PageCache.cpp:
(WebCore::PageCache::add):
(WebCore::PageCache::take):
(WebCore::PageCache::get):
(WebCore::PageCache::prune):
* platform/FeatureCounterKeys.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177680
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 23 Dec 2014 07:17:54 +0000 (07:17 +0000)]
platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=139901
* platform/mac-wk2/TestExpectations: Mark it as such.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177679
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 23 Dec 2014 07:15:54 +0000 (07:15 +0000)]
Unreviewed, rolling out r177658.
https://bugs.webkit.org/show_bug.cgi?id=139900
Caused many assertion failures (Requested by ap on #webkit).
Reverted changeset:
"Incorrect dashed and dotted border painting."
https://bugs.webkit.org/show_bug.cgi?id=139872
http://trac.webkit.org/changeset/177658
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177678
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 03:24:06 +0000 (03:24 +0000)]
Make it possible to transform Objective-C object graphs, replacing certain elements with others
https://bugs.webkit.org/show_bug.cgi?id=139893
Reviewed by Sam Weinig.
* Shared/mac/ObjCObjectGraph.h:
(WebKit::ObjCObjectGraph::Transformer::~Transformer):
* Shared/mac/ObjCObjectGraph.mm:
(WebKit::dynamic_objc_cast):
(WebKit::shouldTransform):
(WebKit::ObjCObjectGraph::transform):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177677
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ljaehun.lim@samsung.com [Tue, 23 Dec 2014 03:21:58 +0000 (03:21 +0000)]
Unreviewed build fix after r177661 and r177662
Source/WebCore:
* dom/SecurityOriginPolicy.cpp: Modify #include path.
Source/WebKit2:
* CMakeLists.txt: Add APIPageGroupHandle.cpp to the source list.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177676
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Tue, 23 Dec 2014 02:48:00 +0000 (02:48 +0000)]
Use ctiPatchCallByReturnAddress() in JITOperations.cpp.
<https://webkit.org/b/139892>
Reviewed by Michael Saboff.
The code in JITOperations.cpp sometimes calls RepatchBuffer::relinkCallerToFunction()
directly, and sometimes uses a helper function, ctiPatchCallByReturnAddress().
This patch changes it to use the helper function consistently.
* jit/JITOperations.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177675
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Tue, 23 Dec 2014 02:24:23 +0000 (02:24 +0000)]
[Mac] Engineering builds of WebCore on OS X 10.8 and 10.9 shouldn't build with -gline-tables-only
<https://webkit.org/b/139883> / <rdar://problem/
19297261>
Reviewed by Alexey Proskuryakov.
* Configurations/DebugRelease.xcconfig: Override the setting using conditional settings
so that they take precedence over the conditional settings in Base.xcconfig.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177674
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 01:59:21 +0000 (01:59 +0000)]
Convert pages and page groups to their respective handle objects
https://bugs.webkit.org/show_bug.cgi?id=139891
Reviewed by Tim Horton.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::apiObjectByConvertingFromHandles):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177673
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 23 Dec 2014 01:54:09 +0000 (01:54 +0000)]
[Win] Build fix after r177668.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing export definition
for new symbols.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177672
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 01:32:36 +0000 (01:32 +0000)]
Add a bunch of missing header includes in preparation for making toImpl require the complete type
https://bugs.webkit.org/show_bug.cgi?id=139887
Reviewed by Andreas Kling.
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177671
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Tue, 23 Dec 2014 01:23:41 +0000 (01:23 +0000)]
Unreviewed build fix.
* WebCore.exp.in: Move SQLiteDatabaseTracker::setClient export out of PLATFORM(IOS) section.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177670
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 00:54:18 +0000 (00:54 +0000)]
Remove two functions from SecurityOrigin
https://bugs.webkit.org/show_bug.cgi?id=139885
Reviewed by Andreas Kling.
* page/SecurityOrigin.h:
(WebCore::SecurityOrigin::canAccessPasswordManager): Deleted.
(WebCore::SecurityOrigin::canAccessFileSystem): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177668
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Tue, 23 Dec 2014 00:50:24 +0000 (00:50 +0000)]
Fix some typos in a comment.
<https://webkit.org/b/139882>
Reviewed by Michael Saboff.
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_val):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177667
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 23 Dec 2014 00:48:55 +0000 (00:48 +0000)]
[iOS] Log using FeatureCounter user-triggered zooming
https://bugs.webkit.org/show_bug.cgi?id=139879
<rdar://problem/
19329130>
Reviewed by Benjamin Poulain.
Log using FeatureCounter user-triggered zooming on iOS.
Source/WebCore:
* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/FeatureCounter.h:
* platform/FeatureCounterKeys.h:
Source/WebKit2:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::willStartUserTriggeredZooming):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177666
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Tue, 23 Dec 2014 00:38:52 +0000 (00:38 +0000)]
Form elements should match :valid and :invalid based on their associated elements
https://bugs.webkit.org/show_bug.cgi?id=139850
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-12-22
Reviewed by Darin Adler.
Source/WebCore:
In the latest HTML spec, form elements can match :valid or :invalid based
on their associated element.
The tricky part is that object lifetime is a mess. When elements are associated
with forms by the parser, the form is set by the constructor of HTMLFormControlElement.
At that point, the real object has not been initialized yet which
makes it impossible to find its validity.
To work around the lifetime problem, the code of HTMLFormControlElement::didChangeForm()
uses m_willValidateInitialized and m_willValidate direclty instead
of invoking willValidate(). That way we don't try to validate an incomplete object.
When the object really validates, HTMLFormControlElement::setNeedsWillValidateCheck()
takes care of updating the form.
Tests: fast/css/pseudo-invalid-form-and-fieldset-basics.html
fast/css/pseudo-invalid-form-basics.html
fast/css/pseudo-invalid-form-dynamically-created-basics.html
fast/css/pseudo-invalid-form-invalidation-optimization.html
fast/css/pseudo-valid-form-and-fieldset-basics.html
fast/css/pseudo-valid-form-basics.html
fast/css/pseudo-valid-form-dynamically-created-basics.html
fast/css/pseudo-valid-form-invalidation-optimization.html
fast/selectors/invalid-form-style-update-1.html
fast/selectors/invalid-form-style-update-2.html
fast/selectors/invalid-form-style-update-3.html
fast/selectors/valid-form-style-update-1.html
fast/selectors/valid-form-style-update-2.html
fast/selectors/valid-form-style-update-3.html
* css/StyleResolver.cpp:
(WebCore::StyleResolver::canShareStyleWithControl):
(WebCore::StyleResolver::canShareStyleWithElement):
HTMLFormElement is not a FormControl, we have to generalize the test
for :valid/:invalid with style sharing.
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::~HTMLFormControlElement):
Since we now have willChangeForm(), didChangeForm(), we have to null
the form ourself, as documented by FormAssociatedElement.
(WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):
(WebCore::HTMLFormControlElement::willChangeForm):
(WebCore::HTMLFormControlElement::didChangeForm):
(WebCore::HTMLFormControlElement::updateValidity):
Update the owner form when any of the associated form element changes
to invalid.
* html/HTMLFormControlElement.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::registerInvalidAssociatedFormControl):
(WebCore::HTMLFormElement::removeInvalidAssociatedFormControlIfNeeded):
(WebCore::HTMLFormElement::matchesValidPseudoClass):
(WebCore::HTMLFormElement::matchesInvalidPseudoClass):
This is very similar to the code of fieldset, but we have much weaker
invariants due to the insane way FormAssociatedElement initializes.
* html/HTMLFormElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::initializeInputType):
For completeness, we should always validate when changing the type.
The code was only doing that when the element was inserted into the tree,
that was too fragile.
LayoutTests:
The style update tests are largely based on the fieldset test suite.
The other tests are for various aspects of the patch.
* fast/css/pseudo-invalid-form-and-fieldset-basics-expected.html: Added.
* fast/css/pseudo-invalid-form-and-fieldset-basics.html: Added.
* fast/css/pseudo-invalid-form-basics-expected.html: Added.
* fast/css/pseudo-invalid-form-basics.html: Added.
* fast/css/pseudo-invalid-form-dynamically-created-basics-expected.html: Added.
* fast/css/pseudo-invalid-form-dynamically-created-basics.html: Added.
* fast/css/pseudo-invalid-form-invalidation-optimization-expected.txt: Added.
* fast/css/pseudo-invalid-form-invalidation-optimization.html: Added.
* fast/css/pseudo-valid-form-and-fieldset-basics-expected.html: Added.
* fast/css/pseudo-valid-form-and-fieldset-basics.html: Added.
* fast/css/pseudo-valid-form-basics-expected.html: Added.
* fast/css/pseudo-valid-form-basics.html: Added.
* fast/css/pseudo-valid-form-dynamically-created-basics-expected.html: Added.
* fast/css/pseudo-valid-form-dynamically-created-basics.html: Added.
* fast/css/pseudo-valid-form-invalidation-optimization-expected.txt: Added.
* fast/css/pseudo-valid-form-invalidation-optimization.html: Added.
* fast/selectors/invalid-form-style-update-1-expected.txt: Added.
* fast/selectors/invalid-form-style-update-1.html: Added.
* fast/selectors/invalid-form-style-update-2-expected.txt: Added.
* fast/selectors/invalid-form-style-update-2.html: Added.
* fast/selectors/invalid-form-style-update-3-expected.txt: Added.
* fast/selectors/invalid-form-style-update-3.html: Added.
* fast/selectors/valid-form-style-update-1-expected.txt: Added.
* fast/selectors/valid-form-style-update-1.html: Added.
* fast/selectors/valid-form-style-update-2-expected.txt: Added.
* fast/selectors/valid-form-style-update-2.html: Added.
* fast/selectors/valid-form-style-update-3-expected.txt: Added.
* fast/selectors/valid-form-style-update-3.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177664
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 23 Dec 2014 00:02:45 +0000 (00:02 +0000)]
Try to fix the Windows build.
* dom/DOMAllInOne.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177663
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 22 Dec 2014 23:56:22 +0000 (23:56 +0000)]
Add an API::PageGroupHandle object
https://bugs.webkit.org/show_bug.cgi?id=139881
Reviewed by Sam Weinig.
API::PageGroupHandle won't be exposed to any API, it will only be used to facilitate passing page groups
between the UI and web process inside UserData objects.
* Shared/API/APIObject.h:
* Shared/API/APIPageGroupHandle.cpp: Added.
(API::PageGroupHandle::create):
(API::PageGroupHandle::~PageGroupHandle):
(API::PageGroupHandle::PageGroupHandle):
* Shared/API/APIPageGroupHandle.h: Added.
(API::PageGroupHandle::webPageGroupData):
* Shared/UserData.cpp:
(WebKit::UserData::UserData):
(WebKit::UserData::encode):
(WebKit::UserData::decode):
* Shared/UserData.h:
* UIProcess/WebPageGroup.h:
(WebKit::WebPageGroup::data):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
* WebKit2.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177662
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 22 Dec 2014 23:42:30 +0000 (23:42 +0000)]
Add a SecurityOriginPolicy class
https://bugs.webkit.org/show_bug.cgi?id=139875
Reviewed by Sam Weinig.
This is the first step towards making SecurityOrigin immutable. SecurityOriginPolicy will hold a
SecurityOrigin and will handle things that would otherwise mutate SecurityOrigin.
* CMakeLists.txt:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::createDocument):
(WebCore::DOMImplementation::createHTMLDocument):
* dom/Document.cpp:
(WebCore::Document::create):
(WebCore::Document::open):
(WebCore::Document::cloneDataFromDocument):
(WebCore::Document::initSecurityContext):
* dom/ScriptExecutionContext.h:
* dom/SecurityContext.cpp:
(WebCore::SecurityContext::setSecurityOriginPolicy):
(WebCore::SecurityContext::securityOrigin):
(WebCore::SecurityContext::isSecureTransitionTo):
(WebCore::SecurityContext::enforceSandboxFlags):
(WebCore::SecurityContext::setSecurityOrigin): Deleted.
* dom/SecurityContext.h:
(WebCore::SecurityContext::securityOriginPolicy):
(WebCore::SecurityContext::securityOrigin): Deleted.
* dom/SecurityOriginPolicy.cpp: Added.
(WebCore::SecurityOriginPolicy::create):
(WebCore::SecurityOriginPolicy::SecurityOriginPolicy):
(WebCore::SecurityOriginPolicy::~SecurityOriginPolicy):
* dom/SecurityOriginPolicy.h: Added.
(WebCore::SecurityOriginPolicy::origin):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::begin):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::WorkerGlobalScope):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::responseXML):
* xml/XMLTreeViewer.cpp:
(WebCore::XMLTreeViewer::transformDocumentToTreeView):
* xml/XSLTProcessor.cpp:
(WebCore::XSLTProcessor::createDocumentFromSource):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177661
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 22 Dec 2014 23:30:29 +0000 (23:30 +0000)]
compositing/rtl/rtl-fixed-overflow-scrolled.html had a 1600x1200 expected PNG
accidentally checked in, let's land 800x600 again.
* platform/mac/compositing/rtl/rtl-fixed-overflow-scrolled-expected.png:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177660
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 22 Dec 2014 23:27:49 +0000 (23:27 +0000)]
Sort the Xcode project file.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177659
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Mon, 22 Dec 2014 23:18:59 +0000 (23:18 +0000)]
Incorrect dashed and dotted border painting.
https://bugs.webkit.org/show_bug.cgi?id=139872
rdar://problem/
18024205
Reviewed by Simon Fraser.
This patch makes dashed/dotted border painting symmetric and consistent.
It also works with subpixel positioning.
Source/WebCore:
Tests: fast/borders/border-painting-correctness-dashed.html
fast/borders/border-painting-correctness-dotted.html
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawLine):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
LayoutTests:
* fast/borders/border-painting-correctness-dashed-expected.html: Added.
* fast/borders/border-painting-correctness-dashed.html: Added.
* fast/borders/border-painting-correctness-dotted-expected.html: Added.
* fast/borders/border-painting-correctness-dotted.html: Added.
* fast/borders/resources/border-painting-correctness-dashed-expected.png: Added.
* fast/borders/resources/border-painting-correctness-dotted-expected.png: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177658
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Mon, 22 Dec 2014 23:09:22 +0000 (23:09 +0000)]
Assert that Array elements not copied when changing shape to ArrayStorage type are indeed holes.
<https://webkit.org/b/138118>
Reviewed by Michael Saboff.
* runtime/JSObject.cpp:
(JSC::JSObject::convertInt32ToArrayStorage):
(JSC::JSObject::convertDoubleToArrayStorage):
(JSC::JSObject::convertContiguousToArrayStorage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177657
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 22 Dec 2014 22:17:42 +0000 (22:17 +0000)]
TextIndicatorWindow is larger than it needs to be, especially when not bouncing
https://bugs.webkit.org/show_bug.cgi?id=139876
<rdar://problem/
19311017>
Reviewed by Sam Weinig.
* page/TextIndicator.cpp:
(WebCore::TextIndicator::wantsBounce):
(WebCore::TextIndicator::wantsContentCrossfade):
(WebCore::TextIndicator::wantsFadeIn):
* page/TextIndicator.h:
* page/mac/TextIndicatorWindow.mm:
(-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
(-[WebTextIndicatorView _animationDuration]):
(-[WebTextIndicatorView present]):
(WebCore::TextIndicatorWindow::setTextIndicator):
(-[WebTextIndicatorView _textIndicatorWantsBounce]): Deleted.
(-[WebTextIndicatorView _textIndicatorWantsContentCrossfade]): Deleted.
(-[WebTextIndicatorView _textIndicatorWantsFadeIn]): Deleted.
Move the various switches over TextIndicatorPresentationTransition into TextIndicator.
Adjust the margin; only inflate by the shadow if we're not bouncing.
If we are bouncing, fix the math to more tightly fit the bounce.
Previously we were inflating by way too much, and even when we didn't need to.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177656
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Mon, 22 Dec 2014 21:45:18 +0000 (21:45 +0000)]
Update apple-mac-114 to bot629.
Unreviewed.
* BuildSlaveSupport/build.webkit.org-config/config.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177655
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Mon, 22 Dec 2014 21:37:59 +0000 (21:37 +0000)]
Replace Apple bot104 with bot124.
Unreviewed.
* BuildSlaveSupport/build.webkit.org-config/config.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177654
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 22 Dec 2014 21:20:23 +0000 (21:20 +0000)]
REGRESSION: fast/xmlhttprequest/xmlhttprequest-recursive-sync-event.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=139840
* TestExpectations: Marking as such.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177653
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Mon, 22 Dec 2014 21:12:43 +0000 (21:12 +0000)]
Fix the iOS build after <https://trac.webkit.org/changeset/177639>
(https://bugs.webkit.org/show_bug.cgi?id=139866)
Substitute APISecurityOrigin.h for WebSecurityOrigin.h as the latter was renamed to the former.
* UIProcess/ios/WKGeolocationProviderIOS.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177652
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 22 Dec 2014 20:55:48 +0000 (20:55 +0000)]
URTBF after r177649.
* CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177651
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 22 Dec 2014 20:48:53 +0000 (20:48 +0000)]
Last URTBF after r177639, GTK builds now.
* UIProcess/API/gtk/WebKitJavascriptResult.cpp:
* UIProcess/API/gtk/WebKitUIClient.cpp:
* UIProcess/API/gtk/WebKitUserContentManager.cpp:
* UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp:
(webkitUserMediaPermissionRequestCreate):
* UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewRunJavaScriptCallback):
(webkit_web_view_run_javascript):
(resourcesStreamReadCallback):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177650
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 22 Dec 2014 20:39:02 +0000 (20:39 +0000)]
Move more API classes from Shared to Shared/API.
Rubber-stamped by Sam Weinig.
* Shared/API/APIArray.cpp: Renamed from Source/WebKit2/Shared/APIArray.cpp.
* Shared/API/APIArray.h: Renamed from Source/WebKit2/Shared/APIArray.h.
* Shared/API/APIClient.h: Renamed from Source/WebKit2/Shared/APIClient.h.
* Shared/API/APIData.cpp: Renamed from Source/WebKit2/Shared/APIData.cpp.
* Shared/API/APIData.h: Renamed from Source/WebKit2/Shared/APIData.h.
* Shared/API/APIError.cpp: Renamed from Source/WebKit2/Shared/APIError.cpp.
* Shared/API/APIError.h: Renamed from Source/WebKit2/Shared/APIError.h.
* Shared/API/APIFrameHandle.cpp: Renamed from Source/WebKit2/Shared/APIFrameHandle.cpp.
* Shared/API/APIFrameHandle.h: Renamed from Source/WebKit2/Shared/APIFrameHandle.h.
* Shared/API/APIGeometry.cpp: Renamed from Source/WebKit2/Shared/APIGeometry.cpp.
* Shared/API/APIGeometry.h: Renamed from Source/WebKit2/Shared/APIGeometry.h.
* Shared/API/APINumber.h: Renamed from Source/WebKit2/Shared/APINumber.h.
* Shared/API/APIObject.cpp: Renamed from Source/WebKit2/Shared/APIObject.cpp.
* Shared/API/APIObject.h: Renamed from Source/WebKit2/Shared/APIObject.h.
* Shared/API/APIPageHandle.cpp: Renamed from Source/WebKit2/Shared/APIPageHandle.cpp.
* Shared/API/APIPageHandle.h: Renamed from Source/WebKit2/Shared/APIPageHandle.h.
* Shared/API/APIString.h: Renamed from Source/WebKit2/Shared/APIString.h.
* Shared/API/APIURL.h: Renamed from Source/WebKit2/Shared/APIURL.h.
* Shared/API/APIURLRequest.cpp: Renamed from Source/WebKit2/Shared/APIURLRequest.cpp.
* Shared/API/APIURLRequest.h: Renamed from Source/WebKit2/Shared/APIURLRequest.h.
* Shared/API/APIURLResponse.cpp: Renamed from Source/WebKit2/Shared/APIURLResponse.cpp.
* Shared/API/APIURLResponse.h: Renamed from Source/WebKit2/Shared/APIURLResponse.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177649
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 22 Dec 2014 20:13:12 +0000 (20:13 +0000)]
Update some inspector test expectations for the new timeout detection.
Also, unmarked some tests that appear stable on bots now.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177648
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 22 Dec 2014 20:13:07 +0000 (20:13 +0000)]
[iOS] Log using FeatureCounter when a PacheCache entry is not reused because it expired
https://bugs.webkit.org/show_bug.cgi?id=139869
<rdar://problem/
19255690>
Reviewed by Darin Adler.
Log using FeatureCounter when a PacheCache entry is not reused because
it expired.
* history/PageCache.cpp:
(WebCore::PageCache::take):
(WebCore::PageCache::get):
* history/PageCache.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/HistoryController.cpp:
(WebCore::HistoryController::invalidateCurrentItemCachedPage):
* platform/FeatureCounterKeys.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177647
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 22 Dec 2014 20:13:02 +0000 (20:13 +0000)]
One more URTBF after r177639 to try to make GTK happy.
* UIProcess/API/gtk/WebKitUserContentManager.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177646
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 22 Dec 2014 20:08:08 +0000 (20:08 +0000)]
URTBF after r177639 to try to make GTK happy.
* UIProcess/API/gtk/WebKitJavascriptResult.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177643
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Mon, 22 Dec 2014 20:05:00 +0000 (20:05 +0000)]
Try to fix the windows build.
* platform/graphics/win/SimpleFontDataCGWin.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177642
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Mon, 22 Dec 2014 19:56:38 +0000 (19:56 +0000)]
Adjust TextIndicator shadow parameters
https://bugs.webkit.org/show_bug.cgi?id=139871
<rdar://problem/
19283300>
Reviewed by Sam Weinig.
* page/mac/TextIndicatorWindow.mm:
(-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
Slightly adjust the shadow and bounce size.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177641
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 22 Dec 2014 19:47:32 +0000 (19:47 +0000)]
URTBF after r177639.
* TestWebKitAPI/CMakeLists.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177640
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Mon, 22 Dec 2014 19:27:07 +0000 (19:27 +0000)]
Rename a bunch of API classes and move them to Shared/API
https://bugs.webkit.org/show_bug.cgi?id=139866
Reviewed by Sam Weinig.
* Shared/API/APISecurityOrigin.h: Renamed from Source/WebKit2/Shared/WebSecurityOrigin.h.
(API::SecurityOrigin::createFromString):
(API::SecurityOrigin::create):
(API::SecurityOrigin::securityOrigin):
(API::SecurityOrigin::SecurityOrigin):
* Shared/API/APISerializedScriptValue.h: Renamed from Source/WebKit2/Shared/WebSerializedScriptValue.h.
(API::SerializedScriptValue::create):
(API::SerializedScriptValue::adopt):
(API::SerializedScriptValue::deserialize):
(API::SerializedScriptValue::dataReference):
(API::SerializedScriptValue::internalRepresentation):
(API::SerializedScriptValue::SerializedScriptValue):
* Shared/API/APIUserContentURLPattern.h: Renamed from Source/WebKit2/Shared/WebUserContentURLPattern.h.
(API::UserContentURLPattern::create):
(API::UserContentURLPattern::host):
(API::UserContentURLPattern::scheme):
(API::UserContentURLPattern::isValid):
(API::UserContentURLPattern::matchesURL):
(API::UserContentURLPattern::matchesSubdomains):
(API::UserContentURLPattern::patternString):
(API::UserContentURLPattern::UserContentURLPattern):
* Shared/API/c/WKSecurityOrigin.cpp:
(WKSecurityOriginGetTypeID):
(WKSecurityOriginCreateFromString):
(WKSecurityOriginCreateFromDatabaseIdentifier):
(WKSecurityOriginCreate):
* Shared/API/c/WKSerializedScriptValue.cpp:
(WKSerializedScriptValueGetTypeID):
(WKSerializedScriptValueCreate):
(WKSerializedScriptValueCreateWithInternalRepresentation):
* Shared/API/c/WKSharedAPICast.h:
(WebKit::toCopiedAPI):
* Shared/API/c/WKUserContentURLPattern.cpp:
(WKUserContentURLPatternGetTypeID):
(WKUserContentURLPatternCreate):
* Shared/SecurityOriginData.cpp:
(WebKit::performAPICallbackWithSecurityOriginDataVector):
* Shared/UserData.cpp:
(WebKit::UserData::encode):
(WebKit::UserData::decode):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* UIProcess/API/APIUIClient.h:
(API::UIClient::exceededDatabaseQuota):
(API::UIClient::decidePolicyForGeolocationPermissionRequest):
(API::UIClient::decidePolicyForUserMediaPermissionRequest):
(API::UIClient::decidePolicyForNotificationPermissionRequest):
* UIProcess/API/C/WKNotification.cpp:
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageUIClient):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::UIClient::exceededDatabaseQuota):
* UIProcess/GenericCallback.h:
* UIProcess/Notifications/WebNotification.cpp:
(WebKit::WebNotification::WebNotification):
* UIProcess/Notifications/WebNotification.h:
(WebKit::WebNotification::origin):
* UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies):
* UIProcess/Notifications/WebNotificationManagerProxy.h:
* UIProcess/Notifications/WebNotificationProvider.cpp:
* UIProcess/Notifications/WebNotificationProvider.h:
* UIProcess/PageClient.h:
(WebKit::PageClient::decidePolicyForGeolocationPermissionRequest):
* UIProcess/WebApplicationCacheManagerProxy.cpp:
(WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin):
* UIProcess/WebApplicationCacheManagerProxy.h:
* UIProcess/WebCookieManagerProxy.cpp:
* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManagerProxy::setQuotaForOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyDatabase):
* UIProcess/WebDatabaseManagerProxy.h:
* UIProcess/WebDatabaseManagerProxyClient.cpp:
(WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
(WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):
* UIProcess/WebDatabaseManagerProxyClient.h:
* UIProcess/WebKeyValueStorageManager.cpp:
(WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin):
(WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
* UIProcess/WebKeyValueStorageManager.h:
* UIProcess/WebMediaCacheManagerProxy.cpp:
* UIProcess/WebOriginDataManagerProxy.cpp:
(WebKit::WebOriginDataManagerProxy::didGetOrigins):
(WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin):
* UIProcess/WebOriginDataManagerProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::scriptValueCallback):
(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):
(WebKit::WebPageProxy::requestUserMediaPermissionForFrame):
(WebKit::WebPageProxy::requestNotificationPermission):
* UIProcess/WebPageProxy.h:
* UIProcess/WebResourceCacheManagerProxy.cpp:
(WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin):
* UIProcess/WebResourceCacheManagerProxy.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest):
* UIProcess/ios/WKContentView.h:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
(API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
(API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::exceededDatabaseQuota):
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177639
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 22 Dec 2014 19:21:54 +0000 (19:21 +0000)]
Consistently use "FeatureCounter*Key" naming for FeatureCounter keys
https://bugs.webkit.org/show_bug.cgi?id=139867
Reviewed by Darin Adler.
Consistently use "FeatureCounter*Key" naming for FeatureCounter keys.
* loader/FrameLoader.cpp:
(WebCore::logNavigationWithFeatureCounter):
* platform/FeatureCounterKeys.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177638
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Mon, 22 Dec 2014 19:14:58 +0000 (19:14 +0000)]
Generic font code should not know about SVG font missing glyph
https://bugs.webkit.org/show_bug.cgi?id=139864
Reviewed by Andreas Kling and Myles Maxfield.
The defined missing glyph is an SVG font concept and should be handled in SVG code.
* platform/graphics/FontGlyphs.cpp:
(WebCore::FontGlyphs::glyphDataForSystemFallback):
(WebCore::FontGlyphs::glyphDataForVariant):
Return null glyph instead of the missing glyph (the missing glyph was already a null glyph in all non-svg-font cases).
Use early return style.
* platform/graphics/FontGlyphs.h:
* platform/graphics/SegmentedFontData.cpp:
* platform/graphics/SimpleFontData.cpp:
(WebCore::SimpleFontData::platformGlyphInit):
* platform/graphics/SimpleFontData.h:
Remove the missingGlyph member.
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advanceInternal):
Explicitly skip over null glyphs. Before they had non-null fontData and would get skipped implicitly.
* platform/graphics/mac/SimpleFontDataMac.mm:
* rendering/svg/SVGTextRunRenderingContext.cpp:
(WebCore::missingGlyphForFont):
Get the missing glyph from the SVG font element.
(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):
Return the missing glyph if the normal lookup didn't produce results.
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::initializeFontData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177637
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Mon, 22 Dec 2014 19:04:45 +0000 (19:04 +0000)]
Allow the WebContext's history client to coexist with WKWebView's history delegate
https://bugs.webkit.org/show_bug.cgi?id=139857
Reviewed by Anders Carlsson.
- Renames API::HistoryClient to API::LegacyContextHistoryClient to make it clear what it is for.
- Re-routes the history client functions from the WebProcessProxy to the WebPageProxy.
- Add history client functions to API::LoaderClient and implement them for NavigationState's
LoaderClient subclass. Removes the need for WKProcessPool to have to setup a history client and
forward to the NavigationState.
* UIProcess/API/APIHistoryClient.h: Removed.
* UIProcess/API/APILegacyContextHistoryClient.h: Copied from Source/WebKit2/UIProcess/API/APIHistoryClient.h.
(API::LegacyContextHistoryClient::~LegacyContextHistoryClient):
(API::LegacyContextHistoryClient::didNavigateWithNavigationData):
(API::LegacyContextHistoryClient::didPerformClientRedirect):
(API::LegacyContextHistoryClient::didPerformServerRedirect):
(API::LegacyContextHistoryClient::didUpdateHistoryTitle):
(API::LegacyContextHistoryClient::populateVisitedLinks):
(API::HistoryClient::~HistoryClient): Deleted.
(API::HistoryClient::didNavigateWithNavigationData): Deleted.
(API::HistoryClient::didPerformClientRedirect): Deleted.
(API::HistoryClient::didPerformServerRedirect): Deleted.
(API::HistoryClient::didUpdateHistoryTitle): Deleted.
(API::HistoryClient::populateVisitedLinks): Deleted.
* UIProcess/API/APILoaderClient.h:
(API::LoaderClient::didNavigateWithNavigationData):
(API::LoaderClient::didPerformClientRedirect):
(API::LoaderClient::didPerformServerRedirect):
(API::LoaderClient::didUpdateHistoryTitle):
* UIProcess/API/C/WKContext.cpp:
(WKContextSetHistoryClient):
* UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _initWithConfiguration:]):
* UIProcess/API/mac/WKView.mm:
* UIProcess/Cocoa/HistoryClient.h: Removed.
* UIProcess/Cocoa/HistoryClient.mm: Removed.
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::LoaderClient::didNavigateWithNavigationData):
(WebKit::NavigationState::LoaderClient::didPerformClientRedirect):
(WebKit::NavigationState::LoaderClient::didPerformServerRedirect):
(WebKit::NavigationState::LoaderClient::didUpdateHistoryTitle):
(WebKit::NavigationState::didNavigateWithNavigationData): Deleted.
(WebKit::NavigationState::didPerformClientRedirect): Deleted.
(WebKit::NavigationState::didPerformServerRedirect): Deleted.
(WebKit::NavigationState::didUpdateHistoryTitle): Deleted.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::setHistoryClient):
(WebKit::WebContext::populateVisitedLinks):
* UIProcess/WebContext.h:
(WebKit::WebContext::historyClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didNavigateWithNavigationData):
(WebKit::WebPageProxy::didPerformClientRedirect):
(WebKit::WebPageProxy::didPerformServerRedirect):
(WebKit::WebPageProxy::didUpdateHistoryTitle):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didNavigateWithNavigationData): Deleted.
(WebKit::WebProcessProxy::didPerformClientRedirect): Deleted.
(WebKit::WebProcessProxy::didPerformServerRedirect): Deleted.
(WebKit::WebProcessProxy::didUpdateHistoryTitle): Deleted.
* UIProcess/WebProcessProxy.h:
* UIProcess/WebProcessProxy.messages.in:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::updateGlobalHistory):
(WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebKit::WebFrameLoaderClient::setTitle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177636
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 22 Dec 2014 18:40:17 +0000 (18:40 +0000)]
Remove a Slow expectation for js/promises-tests/promises-tests-2-3-3.html,
as we now skip the test.
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177635
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 22 Dec 2014 18:15:39 +0000 (18:15 +0000)]
[GTK] another outdated comment
https://bugs.webkit.org/show_bug.cgi?id=139863
Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2014-12-22
Reviewed by Darin Adler.
Remove outdated comment. We nowadays block untrusted connections by
default.
* WebProcess/gtk/WebProcessMainGtk.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177634
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 22 Dec 2014 17:39:09 +0000 (17:39 +0000)]
js/promises-tests/promises-tests-2-3-3.html sometimes crashes under DFG::SpeculativeJIT::compile
https://bugs.webkit.org/show_bug.cgi?id=139865
rdar://problem/
19326058
* TestExpectations: Skip it.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177633
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
g.czajkowski@samsung.com [Mon, 22 Dec 2014 15:30:08 +0000 (15:30 +0000)]
[EFL] MiniBrowser steals web view's focus
https://bugs.webkit.org/show_bug.cgi?id=139482
Reviewed by Gyuyoung Kim.
Although we set focus on ewk_view while MiniBrowser initialization
Ecore steals it in a favor of main window. As a result
focused element on web page is unable to receive events.
* MiniBrowser/efl/main.c:
(window_create):
Prevent window from stealing web view's focus on start up.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177632
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Mon, 22 Dec 2014 11:31:47 +0000 (11:31 +0000)]
[CSS Grid Layout] Get rid of legacy WebKitCSSGridLayoutEnabled
https://bugs.webkit.org/show_bug.cgi?id=139860
Reviewed by Sergio Villar Senin.
Remove the missing bits regarding WebKitCSSGridLayoutEnabled.
Most of it was already removed in r168416.
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-ltr.html:
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-rtl.html:
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-ltr.html:
* fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-rtl.html:
* fast/css-grid-layout/grid-shorthand-get-set.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177631
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 22 Dec 2014 10:38:57 +0000 (10:38 +0000)]
Move "Auto" CSS properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=139858
Reviewed by Antti Koivisto.
Move "Auto" CSS properties from DeprecatedStyleBuilder to the new
StyleBuilder, by adding support in the generator for using hasAutoXXX()
/ setHasAutoXXX() methods on RenderStyle.
No new tests, no web-exposed behavior change.
* css/CSSPropertyNames.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyAuto::setValue): Deleted.
(WebCore::ApplyPropertyAuto::value): Deleted.
(WebCore::ApplyPropertyAuto::hasAuto): Deleted.
(WebCore::ApplyPropertyAuto::setAuto): Deleted.
(WebCore::ApplyPropertyAuto::applyInheritValue): Deleted.
(WebCore::ApplyPropertyAuto::applyInitialValue): Deleted.
(WebCore::ApplyPropertyAuto::applyValue): Deleted.
(WebCore::ApplyPropertyAuto::createHandler): Deleted.
* css/StyleBuilderCustom.h:
(WebCore::StyleBuilderCustom::applyInitialColumnGap):
(WebCore::StyleBuilderCustom::applyInheritColumnGap):
(WebCore::StyleBuilderCustom::applyValueColumnGap):
* css/makeprop.pl:
(getNameForMethods):
(getAutoGetter):
(getAutoSetter):
(generateInitialValueSetter):
(generateInheritValueSetter):
(generateValueSetter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177630
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 22 Dec 2014 02:00:04 +0000 (02:00 +0000)]
HTMLSelectElement add() should support adding group of options element (HTMLOptGroupElement).
https://bugs.webkit.org/show_bug.cgi?id=139806
Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-12-21
Reviewed by Darin Adler.
Source/WebCore:
HTMLSelectElement add() should support adding group of options (optgroup) element.
Test: fast/dom/HTMLSelectElement/select-add-optgroup.html
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::add):
LayoutTests:
* fast/dom/HTMLSelectElement/select-add-optgroup-expected.txt: Added.
* fast/dom/HTMLSelectElement/select-add-optgroup.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177629
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 22 Dec 2014 01:52:23 +0000 (01:52 +0000)]
Fix missing assertion in r177623.
https://bugs.webkit.org/show_bug.cgi?id=139334
Reviewed by Darin Adler.
ValueWithCalculation::setCalculation() was meant to include an
"isCalculation()" assertion but I inadvertently omitted the
ASSERT() around the statement.
* css/CSSParser.h:
(WebCore::CSSParser::ValueWithCalculation::setCalculation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177628
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rgabor@webkit.org [Sun, 21 Dec 2014 23:56:55 +0000 (23:56 +0000)]
AX: Hidden aria table crash
https://bugs.webkit.org/show_bug.cgi?id=139856
Reviewed by Chris Fleizach.
Source/WebCore:
Change axCaption to pointer and check it's value because
AXObjectCache::getOrCreate() can return with nullptr.
Test: accessibility/aria-hidden-crash.html
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::addChildren):
LayoutTests:
Add layout test to cover this crash.
* accessibility/aria-hidden-crash-expected.txt: Added.
* accessibility/aria-hidden-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177627
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sun, 21 Dec 2014 22:11:53 +0000 (22:11 +0000)]
Update expectations for two WebGL tests to match what bots see.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177626
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Sun, 21 Dec 2014 17:01:04 +0000 (17:01 +0000)]
[iOS] avoid WebVideoFullscreenManager crash
https://bugs.webkit.org/show_bug.cgi?id=139852
<rdar://problem/
19319302>
Reviewed by Darin Adler.
* WebProcess/ios/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::didExitFullscreen): NULL-check m_layerHostingContext and m_page.
(WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): NULL-check m_layerHostingContext.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177625
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sun, 21 Dec 2014 10:49:50 +0000 (10:49 +0000)]
Fix WebKit2 build with newer clang compiler
Fixes the following build error:
In file included from DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:32:
Source/WebKit2/Platform/IPC/HandleMessage.h:16:25: error: non-const lvalue reference to type 'Vector<[3 * ...]>' cannot bind to a temporary of type 'Vector<[3 * ...]>'
(object->*function)(std::get<ArgsIndex>(std::forward<ArgsTuple>(args))...);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Source/WebKit2/Platform/IPC/HandleMessage.h:22:5: note: in instantiation of function template specialization 'IPC::callMemberFunctionImpl<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, 0>' requested here
callMemberFunctionImpl(object, function, std::forward<ArgsTuple>(args), ArgsIndicies());
^
Source/WebKit2/Platform/IPC/HandleMessage.h:120:5: note: in instantiation of function template specialization 'IPC::callMemberFunction<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, std::make_index_sequence<1> >' requested here
callMemberFunction(WTF::move(arguments), object, function);
^
DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:55:14: note: in instantiation of function template specialization 'IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector, WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &)>' requested here
IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector>(decoder, this, &WebVideoFullscreenManagerProxy::setSeekableRangesVector);
^
* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector):
Make Vector<std::pair<double, double>>& argument const because a
temporary is not allowed to bind to a non-const reference.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177624
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Sun, 21 Dec 2014 02:56:23 +0000 (02:56 +0000)]
Get rid of error-prone ReleaseParsedCalcValueCondition argument in CSSParser
https://bugs.webkit.org/show_bug.cgi?id=139334
Reviewed by Darin Adler.
Get rid of error-prone ReleaseParsedCalcValueCondition argument in
CSSParser that determines the the m_parsedCalculation member should
be released.
Instead, introduce a new ValueWithCalculation type which wraps a
CSSParserValue and an optional parsed calculation value. This way,
the parsed calculation value is now associated with its CSSParserValue.
This makes it very difficult to use a parsed calculation value for the
wrong CSSParserValue. The API is also easier to use as developers no
longer need to explicitly indicate if the calculation value should be
released or not.
No new tests, no web-behavior change.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177623
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Sat, 20 Dec 2014 18:28:37 +0000 (18:28 +0000)]
[iOS] add optimized fullscreen API
https://bugs.webkit.org/show_bug.cgi?id=139833
<rdar://problem/
18844486>
Reviewed by Simon Fraser.
Source/JavaScriptCore:
* Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
Source/WebCore:
* Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::optimizedFullscreenSupported): Deleted.
(WebCore::MediaControlsHost::fullscreenMode): Deleted.
* Modules/mediacontrols/MediaControlsHost.h:
* Modules/mediacontrols/MediaControlsHost.idl:
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.addVideoListeners): Listen for 'webkitpresentationmodechanged'.
(ControllerIOS.prototype.removeVideoListeners): Stop listening for 'webkitpresentationmodechanged'.
(ControllerIOS.prototype.configureInlineControls): Call video element instead of using the now
removed host property.
(ControllerIOS.prototype.updateControls): Ditto.
(ControllerIOS.prototype.presentationMode): New, return webkitPresentationMode when possible.
(ControllerIOS.prototype.handleFullscreenButtonClicked): Use webkitSetPresentationMode when possible.
(ControllerIOS.prototype.handleOptimizedFullscreenButtonClicked): Use video element instead of
using the now removed host method.
(ControllerIOS.prototype.handlePresentationModeChange): New, react to presentation mode changes.
(ControllerIOS.prototype.handleFullscreenChange): Call handlePresentationModeChange.
* dom/EventNames.h: Add webkitpresentationmodechanged.
* html/HTMLAttributeNames.in: Add onwebkitpresentationmodechanged.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::enterFullscreen): Early return when asked to change to the current
mode. Call fullscreenModeChanged() instead of whacking the instance variable directly.
(WebCore::HTMLMediaElement::exitFullscreen): Ditto.
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::fullscreenModeChanged): Make virtual.
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::parseAttribute): Deal with onwebkitpresentationmodechange.
(WebCore::presentationModeFullscreen): New.
(WebCore::presentationModeOptimized): Ditto.
(WebCore::presentationModeInline): Ditto.
(WebCore::HTMLVideoElement::webkitSupportsPresentationMode): Ditto.
(WebCore::HTMLVideoElement::webkitSetPresentationMode): Ditto.
(WebCore::HTMLVideoElement::webkitPresentationMode): Ditto.
(WebCore::HTMLVideoElement::fullscreenModeChanged): Ditto.
* html/HTMLVideoElement.h:
* html/HTMLVideoElement.idl:
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::setIsOptimized): Simplify the logic a bit. Don't report
a mode change when
Source/WebKit/mac:
* Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
Source/WebKit2:
* Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE.
Source/WTF:
* wtf/Platform.h: Define ENABLE_VIDEO_PRESENTATION_MODE.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177622
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Sat, 20 Dec 2014 17:26:56 +0000 (17:26 +0000)]
Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2
<http://webkit.org/b/139463>
Reviewed by Mark Rowe.
Source/JavaScriptCore:
* Configurations/JavaScriptCore.xcconfig:
- Simplify SECTORDER_FLAGS.
Source/WebCore:
Also remove all uses of SQLITE3_HEADER_SEARCH_PATHS and
WEBCORE_SQLITE3_HEADER_SEARCH_PATHS which were phased out in
r132859 and needed for Leopard.
* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
on OS X.
- Set GCC_OPTIMIZATION_LEVEL_normal based on SDK.
- Simplify SQLITE3_HEADER_SEARCH_PATHS.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
* Configurations/Version.xcconfig:
- Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
* Configurations/WebCore.xcconfig:
- Set EXPORTED_SYMBOLS_FILE_i386, EXPORTED_SYMBOLS_FILE_x86_64,
FRAMEWORK_SEARCH_PATHS, INSTALL_PATH, DYLIB_INSTALL_NAME_BASE,
OTHER_LDFLAGS, SECTORDER_FLAGS, NORMAL_WEBCORE_FRAMEWORKS_DIR,
WEBCORE_FRAMEWORKS_DIR, NORMAL_PRODUCTION_FRAMEWORKS_DIR,
PRODUCTION_FRAMEWORKS_DIR,
JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production and
EXCLUDED_SOURCE_FILE_NAMES based on SDK.
- Make sure DYLIB_INSTALL_NAME_BASE and OTHER_LDFLAGS are
overrideable by WebCoreTestSupport.xcconfig.
* Configurations/WebCoreTestSupport.xcconfig:
- Set PRIVATE_HEADERS_FOLDER_PATH_Production and
INSTALL_PATH_Production based on SDK.
- Override SECT_ORDER_FLAGS from WebCore.xcconfig.
Source/WebInspectorUI:
* Configurations/Base.xcconfig:
- Only set TOOLCHAINS on OS X.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
* Configurations/Version.xcconfig:
- Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
* Configurations/WebInspectorUIFramework.xcconfig:
- Set NORMAL_PRODUCTION_FRAMEWORKS_DIR,
PRODUCTION_FRAMEWORKS_DIR and
JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production by SDK.
Source/WebKit/mac:
* Configurations/Base.xcconfig:
- Only set GCC_ENABLE_OBJC_GC, GCC_MODEL_TUNING and TOOLCHAINS
on OS X.
- Set GCC_OPTIMIZATION_LEVEL_normal based on SDK.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
- Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK.
* Configurations/Version.xcconfig:
- Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
* Configurations/WebKitLegacy.xcconfig:
- Set EXCLUDED_SOURCE_FILE_NAMES, EXPORTED_SYMBOLS_FILE_x86_64,
FRAMEWORK_SEARCH_PATHS, OTHER_CFLAGS, INSTALL_PATH,
DYLIB_INSTALL_NAME_BASE, OTHER_LDFLAGS, SECTORDER_FLAGS,
NORMAL_WEBKIT_LEGACY_FRAMEWORKS_DIR,
WEBKIT_LEGACY_FRAMEWORKS_DIR, NORMAL_PRODUCTION_FRAMEWORKS_DIR,
PRODUCTION_FRAMEWORKS_DIR, PRODUCTION_ROOT,
WEBCORE_PRIVATE_HEADERS_DIR_Production and
WEBKITSYSTEMINTERFACE_STATIC_LIBRARY_HEADERS_FOLDER_PATH_engineering
based on SDK.
- Fix PRODUCTION_ROOT to actually be set properly.
- Simplify EXPORTED_SYMBOLS_FILE_i386.
* migrate-headers.sh:
- Get rid of unused WEBKIT2_FRAMEWORKS_DIR variable.
- Change WEBCORE_PRIVATE_HEADERS_DIR_macosx_Production to
WEBCORE_PRIVATE_HEADERS_DIR_Production based on changes to
WebKitLegacy.xcconfig.
Source/WebKit2:
* Configurations/All.xcconfig:
- Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
* Configurations/Base.xcconfig:
- Only set FRAMEWORK_CONTENT_DIRECTORY, GCC_ENABLE_OBJC_GC and
TOOLCHAINS on OS X.
* Configurations/BaseLegacyProcess.xcconfig:
- Only set SKIP_INSTALL on iOS.
* Configurations/BaseTarget.xcconfig:
- Set WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on
SDK, and simply them.
* Configurations/BaseXPCService.xcconfig:
- Set INSTALL_PATH_ACTUAL_Normal based on SDK.
* Configurations/DebugRelease.xcconfig:
- Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X.
- Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK.
* Configurations/NetworkProcess.xcconfig:
- Only set EXCLUDED_SHIM_FILE_NAME and CODE_SIGN_ENTITLEMENTS on
iOS.
* Configurations/NetworkService.Development.xcconfig:
- Set INFOPLIST_FILE based on SDK.
- Simplify CODE_SIGN_ENTITLEMENTS for iOS.
* Configurations/NetworkService.xcconfig:
- Set INFOPLIST_FILE based on SDK.
- Simplify CODE_SIGN_ENTITLEMENTS for iOS.
* Configurations/PluginProcess.xcconfig:
- Only set EXCLUDED_SHIM_FILE_NAME and SKIP_INSTALL on iOS.
* Configurations/PluginProcessShim.xcconfig:
- Set OTHER_LDFLAGS based on SDK.
* Configurations/PluginService.32.xcconfig:
- Only set VALID_ARCHS on OS X.
- Set OTHER_LDFLAGS based on platform-specific values.
- Only set SKIP_INSTALL on iOS.
* Configurations/PluginService.64.xcconfig:
- Set ARCHS based on SDK.
- Set OTHER_LDFLAGS based on platform-specific values.
- Only set SKIP_INSTALL on iOS.
* Configurations/PluginService.Development.xcconfig:
- Only set SKIP_INSTALL on iOS.
- Set OTHER_LDFLAGS based on platform-specific values.
* Configurations/SecItemShim.xcconfig:
- Set OTHER_LDFLAGS based on platform-specific values.
* Configurations/Version.xcconfig:
- Set SYSTEM_VERSION_PREFIX separately for iOS and OS X.
* Configurations/WebContentProcess.xcconfig:
- Only set EXCLUDED_SHIM_FILE_NAME on iOS.
- Only set CODE_SIGN_ENTITLEMENTS on iOS Simulator.
* Configurations/WebContentService.Development.xcconfig:
- Set INFOPLIST_FILE and BUNDLE_LOCALIZATION_KEY based on SDK.
- Only set CODE_SIGN_ENTITLEMENTS on iOS hardware.
- Set OTHER_LDFLAGS based on platform-specific values.
* Configurations/WebContentService.xcconfig: Ditto.
* Configurations/WebKit.xcconfig:
- Set FRAMEWORK_AND_LIBRARY_LDFLAGS, SECTORDER_FLAGS, and
WK_API_AVAILABILITY_ENABLED based on SDK.
- Set OTHER_LDFLAGS based on platform-specific values.
- Only set EXCLUDED_SOURCE_FILE_NAMES on iOS.
* Configurations/WebKit2.xcconfig:
- Set INSTALL_PATH, INSTALL_PATH_ACTUAL, DYLIB_INSTALL_NAME_BASE,
NORMAL_WEBKIT2_FRAMEWORKS_DIR, WEBKIT2_FRAMEWORKS_DIR and
NORMAL_PRODUCTION_FRAMEWORKS_DIR based on SDK.
- Set SKIP_INSTALL on iOS.
* Configurations/WebProcessShim.xcconfig:
- Set OTHER_LDFLAGS based on platform-specific values.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177621
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Sat, 20 Dec 2014 04:41:57 +0000 (04:41 +0000)]
[SVG -> OTF Converter] Make placeholders more robust
https://bugs.webkit.org/show_bug.cgi?id=139836
Reviewed by Dan Bernstein.
This patch creates a Placeholder object which hides the complexity of
populating offsets to subtables.
No new tests because there is no behavior change.
* svg/SVGToOTFFontConversion.cpp:
(WebCore::SVGToOTFFontConverter::Placeholder::Placeholder):
(WebCore::SVGToOTFFontConverter::Placeholder::populate):
(WebCore::SVGToOTFFontConverter::Placeholder::~Placeholder):
(WebCore::SVGToOTFFontConverter::appendArabicReplacementSubtable):
(WebCore::SVGToOTFFontConverter::appendGSUBTable):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177620
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jberlin@webkit.org [Sat, 20 Dec 2014 04:39:03 +0000 (04:39 +0000)]
Build fix.
* UIProcess/mac/WebInspectorProxyMac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177619
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jberlin@webkit.org [Sat, 20 Dec 2014 04:30:19 +0000 (04:30 +0000)]
Simplify the build fixes from r177615 and r177617.
Rubber-stamped by Dan Bernstein.
* UIProcess/mac/WebInspectorProxyMac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177618
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jberlin@webkit.org [Sat, 20 Dec 2014 03:55:04 +0000 (03:55 +0000)]
Another attempt at a speculative build fix.
* UIProcess/mac/WebInspectorProxyMac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177617
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Sat, 20 Dec 2014 03:41:47 +0000 (03:41 +0000)]
Fix initial / inherit support for '-webkit-perspective-origin' CSS property
https://bugs.webkit.org/show_bug.cgi?id=139843
Reviewed by Simon Fraser.
Source/WebCore:
Fix initial / inherit support for '-webkit-perspective-origin' CSS
property. These previously had no effect.
This patch updates the code to be consistent with
'-webkit-transform-origin' and gets rid of the code in
DeprecatedStyleBuilder as it isn't used.
Test: fast/css/perspective-origin-initial-inherit.html
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyPerspectiveOrigin::applyInheritValue): Deleted.
(WebCore::ApplyPropertyPerspectiveOrigin::applyInitialValue): Deleted.
(WebCore::ApplyPropertyPerspectiveOrigin::applyValue): Deleted.
(WebCore::ApplyPropertyPerspectiveOrigin::createHandler): Deleted.
* css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue):
(WebCore::StyleProperties::asText):
* css/StylePropertyShorthand.cpp:
(WebCore::webkitPerspectiveOriginShorthand):
(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):
* css/StylePropertyShorthand.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
LayoutTests:
Add layout test to cover 'initial' / 'inherit' support for
'-webkit-perspective-origin' CSS property.
* fast/css/perspective-origin-initial-inherit-expected.txt: Added.
* fast/css/perspective-origin-initial-inherit.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177616
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jberlin@webkit.org [Sat, 20 Dec 2014 02:39:28 +0000 (02:39 +0000)]
Speculative build fix after r177610.
* UIProcess/mac/WebInspectorProxyMac.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177615
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Sat, 20 Dec 2014 02:38:04 +0000 (02:38 +0000)]
Perf dashboard should support authentication via a slave password
https://bugs.webkit.org/show_bug.cgi?id=139837
Reviewed by Andreas Kling.
For historical reasons, perf dashboard conflated builders and build slaves. As a result we ended up
having to add multiple builders with the same password when a single build slave is shared among them.
This patch introduces the concept of build_slave into the perf dashboard to end this madness.
* init-database.sql: Added build_slave table as well as references to it in builds and reports.
* public/admin/build-slaves.php: Added.
* public/admin/builders.php: Added the support for updating passwords.
* public/include/admin-header.php:
(update_field): Takes an extra argument when a new value needs to be supplied by the caller instead of
being retrieved from $_POST.
(AdministrativePage::render_table): Use array_get to retrieve a value out of the database row since
the raw may not exist (e.g. new_password).
(AdministrativePage::render_form_to_add): Added the support for post_insertion. Don't render the form
control here when this flag evaluates to TRUE.
* public/include/report-processor.php:
(ReportProcessor::process): Added the logic to authenticate with slaveName and slavePassword if those
values are present in the report. In addition, try authenticating builderName with slavePassword if
builderPassword is not specified. When neither password is specified, exit with BuilderNotFound.
Also insert the slave or the builder whichever is missing after we've successfully authenticated.
(ReportProcessor::construct_build_data): Takes a builder ID and an optional slave ID instead of
a builder row.
(ReportProcessor::store_report): Store the slave ID with the report.
(ReportProcessor::resolve_build_id): Exit with MismatchingBuildSlave when the slave associated with
the matching build is different from what's being reported.
* tests/api-report.js: Added a bunch of tests to test the new features of /api/report.
(.addSlave): Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177614
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Sat, 20 Dec 2014 01:21:38 +0000 (01:21 +0000)]
[Win] Revise DRT logic to match Mac.
Rubberstamped by Anders Carlsson.
Update the Windows logic to perform initialization of preferences and WebKit
settings to match Mac. Also make sure that we only ever emit #EOF tokens under
the same circumstances as the Mac version.
* DumpRenderTree/win/DumpRenderTree.cpp:
(dump):
(resetWebPreferencesToConsistentValues):
(setDefaultsToConsistentValuesForTesting):
(resetWebViewToConsistentStateBeforeTesting):
(sizeWebViewForCurrentTest):
(runTest):
(createWebViewAndOffscreenWindow):
(allocateGlobalControllers):
(prepareConsistentTestingEnvironment):
(main):
(resetDefaultsToConsistentValues): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177613
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Sat, 20 Dec 2014 01:11:44 +0000 (01:11 +0000)]
[iOS] Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate
https://bugs.webkit.org/show_bug.cgi?id=139835
<rdar://problem/
19312042>
Reviewed by Anders Carlsson.
Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate
so that they can be implemented in MobileSafari.
* UIProcess/API/APIUIClient.h:
(API::UIClient::didEnterFullscreen):
(API::UIClient::didExitFullscreen):
* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::didEnterFullscreen):
(WebKit::UIDelegate::UIClient::didExitFullscreen):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didEnterFullscreen):
(WebKit::WebPageProxy::didExitFullscreen):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::didExitFullscreen):
(WebKit::WebVideoFullscreenManagerProxy::didEnterFullscreen):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177612
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Sat, 20 Dec 2014 01:02:02 +0000 (01:02 +0000)]
Fix pink background on CoreAnimation plug-ins in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=139845
rdar://problem/
19313075
Reviewed by Tim Horton.
r154078 left in some debugging code that set a pink background on plug-in hosting
layers. Remove it.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPluginLayer]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177611
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 20 Dec 2014 00:57:55 +0000 (00:57 +0000)]
Web Inspector: Inspector does not reopen correctly after Inspector Process crashes
https://bugs.webkit.org/show_bug.cgi?id=139838
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-12-19
Reviewed by Timothy Hatcher.
When the WebContentProcess holding the Inspector Frontend crashes, we
would properly tear down the inspector objects. However, the next time
the inspector is opened, when creating the new page in the Inspector
Page Group, a WebPageProxy is created with a Terminated WebProcessProxy.
That Terminated WebProcessProxy is automatically replaced with the next
load request is given. The newly created process was missing the
message listeners and assumed URL access settings that the
WebInspectorProxy had set on the old process.
So, WebInspectorProxy now listens for and resets the process properties
when the inspector process is recreated.
* UIProcess/WebInspectorProxy.h:
* UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess):
Reset process properties when the process is relaunched.
(WebKit::WebInspectorProxy::createInspectorPage):
(WebKit::WebInspectorProxy::didClose):
Save connection identifier if we need to establish connections later.
* UIProcess/mac/WebInspectorProxyMac.mm:
(-[WKWebInspectorProxyObjCAdapter didRelaunchProcess]):
(-[WKWebInspectorWKView _didRelaunchProcess]):
(WebKit::WebInspectorProxy::closeTimerFired):
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Send WebInspectorProxy a message when the process underlying the
WKView is relaunched.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177610
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 20 Dec 2014 00:52:35 +0000 (00:52 +0000)]
Unreviewed, rolling out r177599.
https://bugs.webkit.org/show_bug.cgi?id=139846
this breaks so many things (Requested by thorton_ on #webkit).
Reverted changeset:
"TextIndicator's window can be pushed down if it intersects
the menu bar"
https://bugs.webkit.org/show_bug.cgi?id=139841
http://trac.webkit.org/changeset/177599
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177609
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 20 Dec 2014 00:46:42 +0000 (00:46 +0000)]
Get rid of the hardcoded set of structs in the message generation script
https://bugs.webkit.org/show_bug.cgi?id=139844
Reviewed by Tim Horton.
Instead, make it possible to use 'struct' in front of the type name to declare that the type is a struct.
* DatabaseProcess/DatabaseProcess.messages.in:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
* NetworkProcess/NetworkProcess.messages.in:
* PluginProcess/PluginProcess.messages.in:
* PluginProcess/WebProcessConnection.messages.in:
* Scripts/webkit/messages.py:
(struct_or_class):
(forward_declarations_for_namespace):
(forward_declarations_and_headers):
* Scripts/webkit/model.py:
(Parameter.__init__):
* Scripts/webkit/parser.py:
(parse_parameters_string):
* UIProcess/Storage/StorageManager.messages.in:
* UIProcess/WebContext.messages.in:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessProxy.messages.in:
* WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
* WebProcess/OriginData/WebOriginDataManager.messages.in:
* WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebProcess.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177608
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Sat, 20 Dec 2014 00:38:56 +0000 (00:38 +0000)]
Unreviewed. Rollout r177605.
* EWSTools/start-queue-win.sh:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177607
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Sat, 20 Dec 2014 00:26:20 +0000 (00:26 +0000)]
Unreviewed. Try running EWS scripts without —no-confirm, since it defaults to true.
* EWSTools/start-queue-win.sh:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177605
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Sat, 20 Dec 2014 00:22:25 +0000 (00:22 +0000)]
Fix the build.
* UIProcess/API/mac/WKView.mm:
(-[WKView _setIgnoresNonWheelEvents:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177604
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Sat, 20 Dec 2014 00:17:37 +0000 (00:17 +0000)]
[iOS] Add WebKitSystemInterface for iOS 8.1
https://bugs.webkit.org/show_bug.cgi?id=139831
Reviewed by Alexey Proskuryakov.
Tools:
Implement support in copy-webkitlibraries-to-product-directory to copy
WebKitSystemInterface for iOS to the product directory and have build-webkit
pass --wksi to copy-webkitlibraries-to-product-directory when building for iOS.
* Scripts/build-webkit:
* Scripts/copy-webkitlibraries-to-product-directory:
WebKitLibraries:
Towards building the iOS WebKit port using the public SDK, add the
WebKitSystemInterface for iOS version 8.1.
* WebKitSystemInterfaceIOS.h: Added.
* libWebKitSystemInterfaceIOSDevice8.1.a: Added.
* libWebKitSystemInterfaceIOSSimulator8.1.a: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177603
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Sat, 20 Dec 2014 00:15:15 +0000 (00:15 +0000)]
[iOS] Add WebKitSystemInterface for iOS 8.1
https://bugs.webkit.org/show_bug.cgi?id=139831
Reviewed by Alexey Proskuryakov.
Implement support in copy-webkitlibraries-to-product-directory to copy
WebKitSystemInterface for iOS to the product directory and have build-webkit
pass --wksi to copy-webkitlibraries-to-product-directory when building for iOS.
* Scripts/build-webkit:
* Scripts/copy-webkitlibraries-to-product-directory:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177602
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Sat, 20 Dec 2014 00:13:14 +0000 (00:13 +0000)]
Preview popovers don't show an arrow for large links
https://bugs.webkit.org/show_bug.cgi?id=139842
-and corresponding-
<rdar://problem/
19301470>
Reviewed by Tim Horton.
This patch addresses the case where the link is so large that there is no
available space on any side once you factor in screen padding. In that case, we
should give up early on not obscuring the link.
* UIProcess/mac/WKPreviewPopoverAnimationController.mm:
(-[WKPreviewPopoverAnimationController _targetSizeForPagePreview]):
(-[WKPreviewPopoverAnimationController _effectivePaddingWithPreviewPadding:]):
(-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnYEdgeForOriginRect:withScreenRect:previewPadding:]):
(-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnXEdgeForOriginRect:withScreenRect:previewPadding:]):
(-[WKPreviewPopoverAnimationController _preferredPopoverSizeWithPreviewPadding:forTargetSize:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177601
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Fri, 19 Dec 2014 23:54:14 +0000 (23:54 +0000)]
WKView's ignoresNonWheelEvents should ignore immediate actions
https://bugs.webkit.org/show_bug.cgi?id=139839
<rdar://problem/
19312111>
Reviewed by Anders Carlsson.
* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:context:configuration:webView:]):
(-[WKView _setIgnoresNonWheelEvents:]):
Install/uninstall the immediate action gesture recognizer when
toggling ignoresNonWheelEvents.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177600
268f45cc-cd09-0410-ab3c-
d52691b4dbfc