WebKit-https.git
5 years agoAdd proper expectations for two spelling/ tests after r177682
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

5 years agoshouldBecomeEqual() behaves as shouldBe() if the testing expression returns the expec...
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

5 years ago[iOS] Log which type of resources are commonly loaded using FeatureCounter
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

5 years ago[iOS] Log using FeatureCounter when a PacheCache fails due to memory pressure
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

5 years agoplatform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html...
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

5 years agoUnreviewed, rolling out r177658.
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

5 years agoMake it possible to transform Objective-C object graphs, replacing certain elements...
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

5 years agoUnreviewed build fix after r177661 and r177662
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

5 years agoUse ctiPatchCallByReturnAddress() in JITOperations.cpp.
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

5 years ago[Mac] Engineering builds of WebCore on OS X 10.8 and 10.9 shouldn't build with -gline...
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

5 years agoConvert pages and page groups to their respective handle objects
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

5 years ago[Win] Build fix after r177668.
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

5 years agoAdd a bunch of missing header includes in preparation for making toImpl require the...
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

5 years agoUnreviewed build fix.
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

5 years agoRemove two functions from SecurityOrigin
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

5 years agoFix some typos in a comment.
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

5 years ago[iOS] Log using FeatureCounter user-triggered zooming
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

5 years agoForm elements should match :valid and :invalid based on their associated elements
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

5 years agoTry to fix the Windows build.
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

5 years agoAdd an API::PageGroupHandle object
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

5 years agoAdd a SecurityOriginPolicy class
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

5 years agocompositing/rtl/rtl-fixed-overflow-scrolled.html had a 1600x1200 expected PNG
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

5 years agoSort the Xcode project file.
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

5 years agoIncorrect dashed and dotted border painting.
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

5 years agoAssert that Array elements not copied when changing shape to ArrayStorage type are...
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

5 years agoTextIndicatorWindow is larger than it needs to be, especially when not bouncing
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

5 years agoUpdate apple-mac-114 to bot629.
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

5 years agoReplace Apple bot104 with bot124.
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

5 years agoREGRESSION: fast/xmlhttprequest/xmlhttprequest-recursive-sync-event.html is flaky
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

5 years agoFix the iOS build after <https://trac.webkit.org/changeset/177639>
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

5 years agoURTBF after r177649.
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

5 years agoLast URTBF after r177639, GTK builds now.
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

5 years agoMove more API classes from Shared to Shared/API.
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

5 years agoUpdate some inspector test expectations for the new timeout detection.
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

5 years ago[iOS] Log using FeatureCounter when a PacheCache entry is not reused because it expired
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

5 years agoOne more URTBF after r177639 to try to make GTK happy.
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

5 years agoURTBF after r177639 to try to make GTK happy.
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

5 years agoTry to fix the windows build.
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

5 years agoAdjust TextIndicator shadow parameters
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

5 years agoURTBF after r177639.
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

5 years agoRename a bunch of API classes and move them to Shared/API
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

5 years agoConsistently use "FeatureCounter*Key" naming for FeatureCounter keys
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

5 years agoGeneric font code should not know about SVG font missing glyph
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

5 years agoAllow the WebContext's history client to coexist with WKWebView's history delegate
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

5 years agoRemove a Slow expectation for js/promises-tests/promises-tests-2-3-3.html,
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

5 years ago[GTK] another outdated comment
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

5 years agojs/promises-tests/promises-tests-2-3-3.html sometimes crashes under DFG::SpeculativeJ...
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

5 years ago[EFL] MiniBrowser steals web view's focus
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

5 years ago[CSS Grid Layout] Get rid of legacy WebKitCSSGridLayoutEnabled
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

5 years agoMove "Auto" CSS properties to the new StyleBuilder
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

5 years agoHTMLSelectElement add() should support adding group of options element (HTMLOptGroupE...
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

5 years agoFix missing assertion in r177623.
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

5 years agoAX: Hidden aria table crash
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

5 years agoUpdate expectations for two WebGL tests to match what bots see.
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

5 years ago[iOS] avoid WebVideoFullscreenManager crash
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

5 years agoFix WebKit2 build with newer clang compiler
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

5 years agoGet rid of error-prone ReleaseParsedCalcValueCondition argument in CSSParser
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

5 years ago[iOS] add optimized fullscreen API
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

5 years agoSwitch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit...
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

5 years ago[SVG -> OTF Converter] Make placeholders more robust
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

5 years agoBuild fix.
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

5 years agoSimplify the build fixes from r177615 and r177617.
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

5 years agoAnother attempt at a speculative build fix.
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

5 years agoFix initial / inherit support for '-webkit-perspective-origin' CSS property
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

5 years agoSpeculative build fix after r177610.
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

5 years agoPerf dashboard should support authentication via a slave password
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

5 years ago[Win] Revise DRT logic to match Mac.
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

5 years ago[iOS] Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate
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

5 years agoFix pink background on CoreAnimation plug-ins in WebKit1
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

5 years agoWeb Inspector: Inspector does not reopen correctly after Inspector Process crashes
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

5 years agoUnreviewed, rolling out r177599.
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

5 years agoGet rid of the hardcoded set of structs in the message generation script
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

5 years agoUnreviewed. Rollout r177605.
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

5 years agoUnreviewed. Try running EWS scripts without —no-confirm, since it defaults to true.
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

5 years agoFix the build.
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

5 years ago[iOS] Add WebKitSystemInterface for iOS 8.1
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

5 years ago[iOS] Add WebKitSystemInterface for iOS 8.1
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

5 years agoPreview popovers don't show an arrow for large links
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

5 years agoWKView's ignoresNonWheelEvents should ignore immediate actions
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

5 years agoTextIndicator's window can be pushed down if it intersects the menu bar
timothy_horton@apple.com [Fri, 19 Dec 2014 23:53:37 +0000 (23:53 +0000)]
TextIndicator's window can be pushed down if it intersects the menu bar
https://bugs.webkit.org/show_bug.cgi?id=139841
<rdar://problem/19311017>

Reviewed by Anders Carlsson.

* page/mac/TextIndicatorWindow.mm:
(WebCore::TextIndicatorWindow::setTextIndicator):
Ensure that the textIndicatorWindow sits above the menubar, and re-set
its frame so that it moves under the menubar if required.

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

5 years agoREGRESSION (177368): Some tests started to immediately time out
ap@apple.com [Fri, 19 Dec 2014 23:25:46 +0000 (23:25 +0000)]
REGRESSION (177368): Some tests started to immediately time out
https://bugs.webkit.org/show_bug.cgi?id=139826

Reviewed by Daniel Bates.

Tools:

* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: (WTR::InjectedBundle::done):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::InjectedBundlePage::dump):
Move invalidateWaitToDumpWatchdogTimer() call from dump() to done(). When a test
ends in a load failure, we don't dump, so we used to leak the timer.

* WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::notifyDone):
Added a comment.

LayoutTests:

* platform/wk2/TestExpectations: The culprit was this test that I unskipped to see
whether it passes. It in fact does pass, so let's remove the expectation entirely.

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

5 years agoPlug leak below LLVMCopyStringRepOfTargetData().
akling@apple.com [Fri, 19 Dec 2014 22:14:20 +0000 (22:14 +0000)]
Plug leak below LLVMCopyStringRepOfTargetData().
<https://webkit.org/b/139832>

Reviewed by Michael Saboff.

LLVMCopyStringRepOfTargetData() returns a strdup()'ed string, so make sure
to free() it after we're done using it.

* ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):

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

5 years agoURTBF after r177593.
ossy@webkit.org [Fri, 19 Dec 2014 22:09:58 +0000 (22:09 +0000)]
URTBF after r177593.

* PluginProcess/PluginProcess.h:
* PluginProcess/unix/PluginProcessUnix.cpp:
(WebKit::PluginProcess::platformInitializePluginProcess):
* Shared/WebProcessCreationParameters.h:
* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
* WebProcess/WebProcess.h:
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):

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

5 years ago[WinCairo] Crash after failing to create GL context in accelerated compositing mode.
commit-queue@webkit.org [Fri, 19 Dec 2014 22:06:14 +0000 (22:06 +0000)]
[WinCairo] Crash after failing to create GL context in accelerated compositing mode.
https://bugs.webkit.org/show_bug.cgi?id=139830

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-12-19
Reviewed by Alex Christensen.

There is missing a null pointer check.

* WebCoreSupport/AcceleratedCompositingContext.cpp:
(AcceleratedCompositingContext::initialize):

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

5 years ago[Win] Build fix after r177588.
bfulgham@apple.com [Fri, 19 Dec 2014 21:51:39 +0000 (21:51 +0000)]
[Win] Build fix after r177588.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Fix
symbol declaration.

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

5 years agoUse WebCore::MachSendRights for the compositing render server port
andersca@apple.com [Fri, 19 Dec 2014 21:48:38 +0000 (21:48 +0000)]
Use WebCore::MachSendRights for the compositing render server port
https://bugs.webkit.org/show_bug.cgi?id=139834

Reviewed by Tim Horton.

Source/WebCore:

* WebCore.exp.in:

Source/WebKit2:

* Platform/IPC/HandleMessage.h:
(IPC::callMemberFunctionImpl):
* Platform/mac/LayerHostingContext.h:
* Platform/mac/LayerHostingContext.mm:
(WebKit::LayerHostingContext::createForPort):
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::PluginProcess):
(WebKit::PluginProcess::initializePluginProcess):
* PluginProcess/PluginProcess.h:
(WebKit::PluginProcess::compositingRenderServerPort):
* PluginProcess/mac/PluginControllerProxyMac.mm:
(WebKit::PluginControllerProxy::compositingRenderServerPort):
* PluginProcess/mac/PluginProcessMac.mm:
(WebKit::PluginProcess::platformInitializePluginProcess):
* Shared/Plugins/PluginProcessCreationParameters.cpp:
* Shared/Plugins/PluginProcessCreationParameters.h:
* Shared/WebCoreArgumentCoders.h:
* Shared/WebProcessCreationParameters.h:
* Shared/mac/WebCoreArgumentCodersMac.mm:
(IPC::ArgumentCoder<MachSendRight>::encode):
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformInitializePluginProcess):
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
* WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::NetscapePlugin::compositingRenderServerPort):
(WebKit::NetscapePlugin::setLayerHostingMode):
* WebProcess/Plugins/PluginController.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::compositingRenderServerPort):
* WebProcess/Plugins/PluginView.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
* WebProcess/WebProcess.h:
(WebKit::WebProcess::compositingRenderServerPort):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

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

5 years ago[Win] Unreviewed gardening.
bfulgham@apple.com [Fri, 19 Dec 2014 21:26:07 +0000 (21:26 +0000)]
[Win] Unreviewed gardening.

Unskip a test that started working after r177542. Also clear up some
lint warnings about the TestExpectations file.

* platform/win/TestExpectations:

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

5 years ago[iOS] Log how often media element playback happens using FeatureCounter
cdumez@apple.com [Fri, 19 Dec 2014 21:07:35 +0000 (21:07 +0000)]
[iOS] Log how often media element playback happens using FeatureCounter
https://bugs.webkit.org/show_bug.cgi?id=139819
<rdar://problem/19309988>

Reviewed by Eric Carlson.

Log using FeatureCounter how often we start loading for audio / video
elements, and how often they end up being played.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):
Add flag to identify when a media element starts playing for the first
time.

(WebCore::HTMLMediaElement::loadResource):
Log when a media element starts loading.

(WebCore::HTMLMediaElement::updatePlayState):
Log when a media element starts playing for the first time.

* html/HTMLMediaElement.h:
Add flag to identify when a media element starts playing for the first
time.

* platform/FeatureCounterKeys.h:
Add FeatureCounter keys for HTMLMediaElement loading / playback.

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

5 years agomedia/video-seek-past-end-paused.html frequently times out on Mavericks
ap@apple.com [Fri, 19 Dec 2014 19:50:57 +0000 (19:50 +0000)]
media/video-seek-past-end-paused.html frequently times out on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=139825

* platform/mac/TestExpectations: Added an expectation.

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

5 years agoRef-ify TextIterator API.
akling@apple.com [Fri, 19 Dec 2014 19:48:06 +0000 (19:48 +0000)]
Ref-ify TextIterator API.
<https://webkit.org/b/139823>

Reviewed by Antti Koivisto.

Source/WebCore:

Change TextIterator functions that always return Range objects to return
Ref<Range> instead of PassRefPtr<Range>.

One API (rangeFromLocationAndLength) may return nullptr, so its return type
is now RefPtr<Range>.

* editing/TextIterator.cpp:
(WebCore::TextIterator::range):
(WebCore::TextIterator::node):
(WebCore::SimplifiedBackwardsTextIterator::range):
(WebCore::CharacterIterator::range):
(WebCore::characterSubrange):
(WebCore::BackwardsCharacterIterator::range):
(WebCore::TextIterator::subrange):
(WebCore::TextIterator::rangeFromLocationAndLength):
(WebCore::TextIterator::getLocationAndLengthFromRange):
(WebCore::collapsedToBoundary):
(WebCore::findPlainText):
* editing/TextIterator.h:

Source/WebKit/mac:

* WebView/WebTextIterator.mm:
(-[WebTextIterator currentRange]):

Source/WebKit2:

* WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
(-[WKDOMTextIterator currentRange]):

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

5 years agoWeb Inspector: CRASH in inspector-protocol/debugger/terminate-dedicated-worker-while...
commit-queue@webkit.org [Fri, 19 Dec 2014 19:42:24 +0000 (19:42 +0000)]
Web Inspector: CRASH in inspector-protocol/debugger/terminate-dedicated-worker-while-paused.html
https://bugs.webkit.org/show_bug.cgi?id=139792

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-12-19
Reviewed by Timothy Hatcher.

* bindings/js/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::removeListener):
When removing listeners, we could be during WorkerGlobalObject shutdown
and WorkerGlobalObject::script may be null.

* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector):
This postTask may happen after m_pageInspector has been cleared, so
only execute it if m_pageInspector is still valid.

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

5 years agoDrop useless HTMLMediaElement::m_previousProgress member
cdumez@apple.com [Fri, 19 Dec 2014 19:37:59 +0000 (19:37 +0000)]
Drop useless HTMLMediaElement::m_previousProgress member
https://bugs.webkit.org/show_bug.cgi?id=139822

Reviewed by Eric Carlson.

Drop HTMLMediaElement::m_previousProgress member and it is not used or
even initialized.

* html/HTMLMediaElement.h:

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

5 years agoWeb Inspector: CRASH inspector-protocol/debugger/breakpoint-action-detach.html
commit-queue@webkit.org [Fri, 19 Dec 2014 19:37:19 +0000 (19:37 +0000)]
Web Inspector: CRASH inspector-protocol/debugger/breakpoint-action-detach.html
https://bugs.webkit.org/show_bug.cgi?id=139797

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-12-19
Reviewed by Mark Lam.

Source/JavaScriptCore:

* debugger/Debugger.h:
* debugger/Debugger.cpp:
(JSC::Debugger::isAttached):
Check if we are the debugger for a particular global object.
(JSC::Debugger::pauseIfNeeded):
Pass the global object on when hitting a brekapoint.

* inspector/ScriptDebugServer.h:
* inspector/ScriptDebugServer.cpp:
(Inspector::ScriptDebugServer::handleBreakpointHit):
Stop evaluting breakpoint actions if a previous action caused the
debugger to detach from this global object.
(Inspector::ScriptDebugServer::handlePause):
Standardize on passing JSGlobalObject parameter first.

Source/WebKit/mac:

* WebView/WebScriptDebugger.h:
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::handlePause):
Standardize on passing JSGlobalObject parameter first.

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

5 years agofast/speechsynthesis/speech-synthesis-cancel.html times out very frequently
ap@apple.com [Fri, 19 Dec 2014 19:34:19 +0000 (19:34 +0000)]
fast/speechsynthesis/speech-synthesis-cancel.html times out very frequently
https://bugs.webkit.org/show_bug.cgi?id=139824

* platform/mac-wk2/TestExpectations: Added an expectation.

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

5 years agoMove some entries for tests that are slow in debug to root TestExpectations file.
ap@apple.com [Fri, 19 Dec 2014 19:26:50 +0000 (19:26 +0000)]
Move some entries for tests that are slow in debug to root TestExpectations file.

* TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:

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

5 years ago[Win] Endless compiler warnings created by DFGEdge.h.
mark.lam@apple.com [Fri, 19 Dec 2014 19:26:36 +0000 (19:26 +0000)]
[Win] Endless compiler warnings created by DFGEdge.h.
<https://webkit.org/b/139801>

Reviewed by Brent Fulgham.

Add a cast to fix the type just the way the 64-bit version does.

* dfg/DFGEdge.h:
(JSC::DFG::Edge::makeWord):

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

5 years ago[iOS] Log how successful the memory cache is using FeatureCounter
cdumez@apple.com [Fri, 19 Dec 2014 19:15:36 +0000 (19:15 +0000)]
[iOS] Log how successful the memory cache is using FeatureCounter
https://bugs.webkit.org/show_bug.cgi?id=139802

Reviewed by Andreas Kling.

Log how successful the memory cache is using FeatureCounter and why we
choose not to use the resource in the memory cache when it is present.

* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::determineRevalidationPolicy):
* platform/FeatureCounterKeys.h:

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

5 years agoUnreviewed, rolling out r177574.
commit-queue@webkit.org [Fri, 19 Dec 2014 19:07:41 +0000 (19:07 +0000)]
Unreviewed, rolling out r177574.
https://bugs.webkit.org/show_bug.cgi?id=139821

"Broke Production builds by installing
libWebCoreTestSupport.dylib in the wrong directory" (Requested
by ddkilzer on #webkit).

Reverted changeset:

"Switch from using PLATFORM_NAME to SDK selectors in WebCore,
WebInspectorUI, WebKit, WebKit2"
https://bugs.webkit.org/show_bug.cgi?id=139463
http://trac.webkit.org/changeset/177574

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

5 years agoSource/WebKit/win:
bfulgham@apple.com [Fri, 19 Dec 2014 18:58:55 +0000 (18:58 +0000)]
Source/WebKit/win:
[Win] Add accessor for serializing HTTP loads.
https://bugs.webkit.org/show_bug.cgi?id=139817

Reviewed by Mark Lam.

* Interfaces/IWebViewPrivate.idl: Add new method.
* WebView.cpp:
(WebView::setLoadResourcesSerially): Provide implementation.
* WebView.h:

Tools:
[Win] Add accessor for serializing HTTP loads
https://bugs.webkit.org/show_bug.cgi?id=139817

Reviewed by Mark Lam.

* DumpRenderTree/win/DumpRenderTree.cpp: Reset serialized HTTP loads in our reset method.
* DumpRenderTree/win/TestRunnerWin.cpp: Provide implementation for serializing HTTP. Also
remove some redundant code from the destructor.

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

5 years agoREGRESSION(174226): Captured arguments in a using function compiled by the DFG have...
msaboff@apple.com [Fri, 19 Dec 2014 18:48:25 +0000 (18:48 +0000)]
REGRESSION(174226): Captured arguments in a using function compiled by the DFG have the initial value when the closure was invoked
https://bugs.webkit.org/show_bug.cgi?id=139808

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

There are three changes here.
1) Create a VariableWatchpointSet for captured arguments variables.
2) Properly use the VariableWatchpointSet* found in op_put_to_scope in the 64 bit LLInt code.
3) Add the same putLocalClosureVar path to the 32 bit LLInt code that exists in the 64 bit version.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

LayoutTests:

New regression test.

* js/regress-139808-expected.txt: Added.
* js/regress-139808.html: Added.
* js/script-tests/regress-139808.js: Added.
(theClosureFunction.rot13):
(theClosureFunction):

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