WebKit-https.git
7 years agoFinal preparations for GStreamer on Windows.
commit-queue@webkit.org [Thu, 19 Dec 2013 21:38:12 +0000 (21:38 +0000)]
Final preparations for GStreamer on Windows.
https://bugs.webkit.org/show_bug.cgi?id=125958

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-19
Reviewed by Benjamin Poulain.

Source/WTF:

* WTF.vcxproj/WTFDebugWinCairo.props:
* WTF.vcxproj/WTFReleaseWinCairo.props:
Include WinCairo.props.
* wtf/Platform.h:
Use GLib and GStreamer on WinCairo with video.

WebKitLibraries:

* win/tools/vsprops/FeatureDefinesCairo.props:
Removed duplicate ENABLE_VIDEO_TRACK definition.

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

7 years ago[WK2] Rename WebURLResponse to API::URLResponse
weinig@apple.com [Thu, 19 Dec 2013 21:32:15 +0000 (21:32 +0000)]
[WK2] Rename WebURLResponse to API::URLResponse
https://bugs.webkit.org/show_bug.cgi?id=125910

Reviewed by Andreas Kling.

* Shared/API/c/WKSharedAPICast.h:
(WebKit::toAPI):
* Shared/API/c/WKURLResponse.cpp:
(WKURLResponseGetTypeID):
* Shared/API/c/mac/WKURLResponseNS.mm:
(WKURLResponseCreateWithNSURLResponse):
* Shared/APIURLRequest.cpp:
* Shared/APIURLResponse.cpp: Copied from Source/WebKit2/Shared/WebURLResponse.cpp.
(API::URLResponse::URLResponse):
(API::URLResponse::encode):
(API::URLResponse::decode):
* Shared/APIURLResponse.h: Copied from Source/WebKit2/Shared/WebURLResponse.h.
(API::URLResponse::create):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebURLResponse.cpp: Removed.
* Shared/WebURLResponse.h: Removed.
* UIProcess/WebDownloadClient.cpp:
(WebKit::WebDownloadClient::didReceiveResponse):
* UIProcess/WebPolicyClient.cpp:
(WebKit::WebPolicyClient::decidePolicyForResponse):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):

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

7 years agoUse CascadedProperties for page and keyframe style resolution as well.
akling@apple.com [Thu, 19 Dec 2013 21:15:12 +0000 (21:15 +0000)]
Use CascadedProperties for page and keyframe style resolution as well.
<https://webkit.org/b/125997>

Port StyleResolver's styleForKeyframe() and styleForPage() over to
the new property cascading code. Neither of them care about !important
or matched properties caches, so the code is very simple.

Removed the old applyMatchedProperties and applyProperties code with
low/high priority passes.

Reviewed by Antti Koivisto.

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

7 years agoAdd a failing test expectation to fast/dynamic/paused-event-dispatch.html
rniwa@webkit.org [Thu, 19 Dec 2013 20:42:07 +0000 (20:42 +0000)]
Add a failing test expectation to fast/dynamic/paused-event-dispatch.html
while I investigate.

* TestExpectations:

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

7 years agoUnreviewed, rolling out r160842.
commit-queue@webkit.org [Thu, 19 Dec 2013 19:49:35 +0000 (19:49 +0000)]
Unreviewed, rolling out r160842.
http://trac.webkit.org/changeset/160842
https://bugs.webkit.org/show_bug.cgi?id=126003

broke accessibility/loading-iframe-updates-axtree.html
(Requested by ap on #webkit).

Tools:

* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::makeJSAccessibilityUIElement):
* DumpRenderTree/AccessibilityUIElement.h:
(AccessibilityUIElement::platformUIElement):

LayoutTests:

* accessibility/deleting-iframe-destroys-axcache.html:
* accessibility/loading-iframe-updates-axtree-expected.txt:
* accessibility/loading-iframe-updates-axtree.html:
* accessibility/non-data-table-cell-title-ui-element.html:
* platform/gtk/accessibility/roles-exposed-expected.txt:
* platform/gtk/accessibility/roles-exposed.html:
* platform/mac-wk2/TestExpectations:
* platform/mac/accessibility/search-predicate-expected.txt:
* platform/mac/accessibility/search-predicate.html:
* platform/mac/accessibility/search-when-element-starts-in-table-expected.txt:
* platform/mac/accessibility/search-when-element-starts-in-table.html:

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

7 years agotryAddEventListener uses local PassRefPtr<>
eric.carlson@apple.com [Thu, 19 Dec 2013 19:42:22 +0000 (19:42 +0000)]
tryAddEventListener uses local PassRefPtr<>
https://bugs.webkit.org/show_bug.cgi?id=126001

Reviewed by Daniel Bates.

* dom/Node.cpp:
(WebCore::tryAddEventListener): Put PassRefPtr<EventListener> parameter into a local RefPtr
    because it is sometimes used twice.

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

7 years agoget_test_baseline should get Host from test_config
commit-queue@webkit.org [Thu, 19 Dec 2013 19:32:02 +0000 (19:32 +0000)]
get_test_baseline should get Host from test_config
https://bugs.webkit.org/show_bug.cgi?id=125989

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2013-12-19
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/tool/commands/rebaselineserver.py:
(TestConfig.__init__):
(RebaselineServer._prepare_config):
* Scripts/webkitpy/tool/servers/rebaselineserver.py:
(get_test_baselines):
* Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
(get_test_config):

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

7 years agooverflowchanged event could cause a crash
rniwa@webkit.org [Thu, 19 Dec 2013 19:10:31 +0000 (19:10 +0000)]
overflowchanged event could cause a crash
https://bugs.webkit.org/show_bug.cgi?id=125978

Reviewed by Tim Horton.

Source/WebCore:

Made the event asynchrnous by re-using Document's event queuing ability. Also removed
the infrastructure to queue up events in FrameView.

Test: fast/events/overflowchanged-inside-selection-collapse-crash.html

* dom/Document.cpp:
(WebCore::Document::recalcStyle):
(WebCore::Document::enqueueOverflowEvent):
* dom/Document.h:
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::~FrameView):
(WebCore::FrameView::layout):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::updateOverflowStatus):
* page/FrameView.h:
* rendering/RenderBlock.cpp:
(WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::start):

LayoutTests:

Add a regression test.

* fast/events/overflowchanged-inside-selection-collapse-crash-expected.txt: Added.
* fast/events/overflowchanged-inside-selection-collapse-crash.html: Added.

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

7 years agoDon't check VSINSTALLDIR when looking for Visual Studio install directory.
roger_fong@apple.com [Thu, 19 Dec 2013 19:10:01 +0000 (19:10 +0000)]
Don't check VSINSTALLDIR when looking for Visual Studio install directory.
https://bugs.webkit.org/show_bug.cgi?id=125998.

Reviewed by Alexey Proskuryakov.

* Scripts/webkitdirs.pm:
(visualStudioInstallDir):
Get rid of the VSINSTALLDIR check. We can't build on anything besides VS2013 now anyways.

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

7 years agoFix the Windows build after <http://trac.webkit.org/changeset/160841>
dbates@webkit.org [Thu, 19 Dec 2013 18:58:26 +0000 (18:58 +0000)]
Fix the Windows build after <trac.webkit.org/changeset/160841>
(https://bugs.webkit.org/show_bug.cgi?id=125879)

Add ENABLE(CACHE_PARTITIONING)-guard around call to ResourceRequest::setCachePartition()
as this function is only compiled when building with cache partitioning enabled.

* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::addImageToCache):

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

7 years ago[iOS] Upstream WebCore/accessibility changes
dbates@webkit.org [Thu, 19 Dec 2013 18:46:06 +0000 (18:46 +0000)]
[iOS] Upstream WebCore/accessibility changes
https://bugs.webkit.org/show_bug.cgi?id=125925

Reviewed by Chris Fleizach.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::visiblePositionForPoint): Opt out of code when building for iOS.

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

7 years ago[WinCairo] Compile fix for VS2013 when using ACCELERATED_COMPOSITING.
commit-queue@webkit.org [Thu, 19 Dec 2013 18:25:17 +0000 (18:25 +0000)]
[WinCairo] Compile fix for VS2013 when using ACCELERATED_COMPOSITING.
https://bugs.webkit.org/show_bug.cgi?id=124866

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-19
Reviewed by Darin Adler.

* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore):
* platform/graphics/TiledBackingStore.h:
Added constructor overload to avoid compile errors
from using MSVC's make_unique as a default parameter.

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

7 years ago[ATK] [WK2] platform/gtk/accessibility/roles-exposed.html is failing
mario.prada@samsung.com [Thu, 19 Dec 2013 18:14:32 +0000 (18:14 +0000)]
[ATK] [WK2] platform/gtk/accessibility/roles-exposed.html is failing
https://bugs.webkit.org/show_bug.cgi?id=125854

Reviewed by Chris Fleizach.

Tools:

Ensure we don't ever create instances of AccessibilityUIElement
wrapping invalid platform-specific accessibility objects in DRT,
both for consistency with what WKTR does (so we avoid situations
where some tests fail in WK2 and not in WK1) and also to avoid
overlooking tests that might not be checking the right thing.

* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::makeJSAccessibilityUIElement): Return a
nullPtr if the platformUIElement() is not a valid one.
* DumpRenderTree/AccessibilityUIElement.h:
(AccessibilityUIElement::platformUIElement): Added const modifier.

LayoutTests:

Updated tests and expectations to keep them passing after the
change done in DRT, without changing their actual purpose.

* platform/gtk/accessibility/roles-exposed.html: Make sure we
print "AXRole: (no element)" when accessibilityElementByID() does
not return a valid object, not to confuse it with cases where the
returned string for the role is an empty string.
* platform/gtk/accessibility/roles-exposed-expected.txt: Update
test expectations to reflect the "AXRole: (no element)" string
that is now being exposed. Also, replace the (wrongly added) PASS
expectations with FAIL for rowgroups, which are currently not
being exposed for ATK either.

* accessibility/deleting-iframe-destroys-axcache.html: Just
consider the first and third sons of the accessibility object for
the body (instead of the grandsons), so the test can run both in
Mac, where sons and grandsons are exposed, and ATK, where only
sons are exposed (no StaticText objects exposed there).

* accessibility/non-data-table-cell-title-ui-element.html: Use
accessibilityElementById() to get the accessibility object for the
"skip" table header instead of navigating with childAtIndex(),
since the hierarchy is not the same for Mac and ATK based ports.

* accessibility/loading-iframe-updates-axtree.html: Use the new
web area inside the iframe to compare against the old one, instead
of doing it the other way around, to avoid calling isEqual for an
undefined value (the old web area).
* accessibility/loading-iframe-updates-axtree-expected.txt:
Removed line comparing the old and new web areas inside the iframe.

* platform/mac/accessibility/search-predicate.html: Do not rely on
shouldBe() together with the string "AXRole: " when asking for the
role of objects that should no longer be in the accessibility
tree, and use shouldBeUndefined() instead.
* platform/mac/accessibility/search-when-element-starts-in-table.html: Ditto.

* platform/mac/accessibility/search-predicate-expected.txt: Update
expectations according to the usage of shouldBeUndefined().
* platform/mac/accessibility/search-when-element-starts-in-table-expected.txt: Ditto.

* platform/mac-wk2/TestExpectations: Add search-when-element-starts-in-table.html
here, since it does not return an undefined object in WebKit2 when
the search query should return no results (see bug 125996).

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

7 years ago[iOS] Upstream WebCore/loader changes
dbates@webkit.org [Thu, 19 Dec 2013 18:10:07 +0000 (18:10 +0000)]
[iOS] Upstream WebCore/loader changes
https://bugs.webkit.org/show_bug.cgi?id=125879

Reviewed by Darin Adler.

* WebCore.exp.in: Added symbols for MemoryCache::{addImageToCache, removeImageFromCache}().
* loader/DocumentLoader.cpp:
(WebCore::areAllLoadersPageCacheAcceptable): Added.
(WebCore::DocumentLoader::DocumentLoader): Initialize m_subresourceLoadersArePageCacheAcceptable.
(WebCore::DocumentLoader::stopLoading): Modified to conditionally call areAllLoadersPageCacheAcceptable().
(WebCore::DocumentLoader::handleSubstituteDataLoadSoon): Modified to query FrameLoader::loadsSynchronously()
whether to load substitute data immediately or to schedule a load.
(WebCore::DocumentLoader::responseReceived): Modified to create a content filer when the response protocol
is either HTTP or HTTPS, assuming content filtering is enabled.
(WebCore::DocumentLoader::dataReceived): Modified to call DocumentLoader::setContentFilterForBlockedLoad()
as appropriate.
(WebCore::DocumentLoader::clearMainResourceLoader): Added PLATFORM(IOS)-guarded code. Also added a
FIXME comment to remove the PLATFORM(IOS)-guard once we upstream the iOS changes to ResourceRequest.h.
(WebCore::DocumentLoader::setResponseMIMEType): Added; guard by PLATFORM(IOS). Also added FIXME comment.
(WebCore::DocumentLoader::startLoadingMainResource): Added PLATFORM(IOS)-guarded code. Also added a
FIXME comment to remove the PLATFORM(IOS)-guard once we upstream the iOS changes to ResourceRequest.h.
I also substituted static NeverDestroyed<> for DEFINE_STATIC_LOCAL.
(WebCore::DocumentLoader::setContentFilterForBlockedLoad): Added; guarded by USE(CONTENT_FILTERING).
(WebCore::DocumentLoader::handleContentFilterRequest): Added; guarded by USE(CONTENT_FILTERING) and PLATFORM(IOS).
Also added a FIXME comment to remove the PLATFORM(IOS) guard inside its function body once we upstream
file ContentFilterIOS.mm and implement ContentFilter::requestUnblockAndDispatchIfSuccessful() for Mac.
* loader/DocumentLoader.h:
(WebCore::DocumentLoader::setResponse): Added; guard by PLATFORM(IOS). Also added a FIXME comment as
this method seems to violate the encapsulation of DocumentLoader.
(WebCore::DocumentLoader::subresourceLoadersArePageCacheAcceptable): Added.
(WebCore::DocumentLoader::documentURL): Added; returns the URL of the document resulting from the DocumentLoader.
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::createDocument): Added iOS-specific code to create a PDF document.
* loader/EmptyClients.cpp:
(WebCore::EmptyChromeClient::openDateTimeChooser): Opt out of compiling this code for iOS. Also substituted
nullptr for 0.
* loader/EmptyClients.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
(WebCore::FrameLoader::FrameLoader): Initialize m_loadsSynchronously.
(WebCore::FrameLoader::initForSynthesizedDocument): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::FrameLoader::checkCompleted): Added iOS-specific code with FIXME comment.
(WebCore::FrameLoader::willLoadMediaElementURL): Added iOS-specific code.
(WebCore::FrameLoader::stopForUserCancel): Added iOS-specific code and FIXME comment.
(WebCore::FrameLoader::commitProvisionalLoad): Added iOS-specific code and FIXME comment.
(WebCore::FrameLoader::transitionToCommitted): Opt out of ENABLE(TOUCH_EVENTS) logic when building for iOS.
(WebCore::FrameLoader::didFirstLayout): Added iOS-specific code.
(WebCore::FrameLoader::connectionProperties): Added; guarded by PLATFORM(IOS).
(WebCore::createWindow): Added iOS-specific code and FIXME comment.
* loader/FrameLoader.h:
(WebCore::FrameLoader::setLoadsSynchronously): Added.
(WebCore::FrameLoader::loadsSynchronously): Added.
* loader/FrameLoaderClient.h:
* loader/HistoryController.cpp:
(WebCore::HistoryController::restoreScrollPositionAndViewState): Opt out of scroll position logic when building for iOS.
(WebCore::HistoryController::replaceCurrentItem): Added.
* loader/HistoryController.h:
* loader/PlaceholderDocument.h: Changed access control of constructor from private to protected and removed the FINAL
keyword from the class so that we can subclass PlaceholderDocument on iOS.
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy): Added USE(QUICK_LOOK)- and USE(CONTENT_FILTERING)-guarded code.
* loader/ResourceBuffer.cpp:
(WebCore::ResourceBuffer::shouldUsePurgeableMemory): Added; guarded by PLATFORM(IOS).
* loader/ResourceBuffer.h:
* loader/ResourceLoadNotifier.cpp:
(WebCore::ResourceLoadNotifier::dispatchWillSendRequest): Added USE(QUICK_LOOK)-guarded code.
* loader/ResourceLoadScheduler.cpp:
(WebCore::ResourceLoadScheduler::scheduleSubresourceLoad): Added iOS-specific code.
(WebCore::ResourceLoadScheduler::scheduleLoad): Ditto.
(WebCore::ResourceLoadScheduler::remove): Added iOS-specific code with FIXME comment.
(WebCore::ResourceLoadScheduler::crossOriginRedirectReceived): Added null-check for variable oldHost. Also added
iOS-specific code.
(WebCore::ResourceLoadScheduler::servePendingRequests): Added iOS-specific code.
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::init): Ditto.
(WebCore::ResourceLoader::willSendRequest): Ditto.
(WebCore::ResourceLoader::connectionProperties): Added; guarded by PLATFORM(IOS).
* loader/ResourceLoader.h:
(WebCore::ResourceLoader::startLoading): Added; guarded by PLATFORM(IOS).
(WebCore::ResourceLoader::iOSOriginalRequest): Added; iOS-specific.
* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadPlugin): Added iOS-specific code.
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::create): Ditto.
(WebCore::SubresourceLoader::startLoading): Added; guarded by PLATFORM(IOS).
(WebCore::SubresourceLoader::didFinishLoading): Added iOS-specific code.
(WebCore::SubresourceLoader::willCancel): Ditto.
(WebCore::SubresourceLoader::notifyDone): Ditto.
(WebCore::SubresourceLoader::releaseResources): Ditto.
* loader/SubresourceLoader.h:
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::loadCacheGroup): Added iOS-specific code.
(WebCore::ApplicationCacheStorage::loadManifestHostHashes): Ditto.
(WebCore::ApplicationCacheStorage::cacheGroupForURL): Ditto.
(WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
(WebCore::ApplicationCacheStorage::calculateQuotaForOrigin): Ditto.
(WebCore::ApplicationCacheStorage::calculateUsageForOrigin): Ditto.
(WebCore::ApplicationCacheStorage::calculateRemainingSizeForOriginExcludingCache): Ditto.
(WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): Ditto.
(WebCore::ApplicationCacheStorage::executeSQLCommand): Ditto.
(WebCore::ApplicationCacheStorage::verifySchemaVersion): Ditto.
(WebCore::ApplicationCacheStorage::openDatabase): Ditto.
(WebCore::ApplicationCacheStorage::executeStatement): Ditto.
(WebCore::ApplicationCacheStorage::store): Ditto.
(WebCore::ApplicationCacheStorage::storeUpdatedType): Ditto.
(WebCore::ApplicationCacheStorage::ensureOriginRecord): Ditto.
(WebCore::ApplicationCacheStorage::loadCache): Ditto.
(WebCore::ApplicationCacheStorage::remove): Ditto.
(WebCore::ApplicationCacheStorage::empty): Ditto.
(WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
(WebCore::ApplicationCacheStorage::manifestURLs): Ditto.
(WebCore::ApplicationCacheStorage::cacheGroupSize): Ditto.
(WebCore::ApplicationCacheStorage::deleteCacheGroup): Ditto.
(WebCore::ApplicationCacheStorage::vacuumDatabaseFile): Ditto.
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::CachedImage): Added.
(WebCore::CachedImage::imageSizeForRenderer): Added iOS-specific code.
(WebCore::CachedImageManual::CachedImageManual): Added; guarded by USE(CF). Also added FIXME comment to incorporate
the functionality of this class into CachedImage and to remove the USE(CF)-guard once we make MemoryCache::addImageToCache()
platform-independent.
(WebCore::CachedImageManual::mustRevalidateDueToCacheHeaders): Added; guarded by USE(CF).
* loader/cache/CachedImage.h: Removed FINAL keyword from class so that we can define derived class CachedImageManual.
(WebCore::CachedImage::isManual): Added; guarded by USE(CF). Also added FIXME comment.
(WebCore::CachedImageManual::addFakeClient): Added; guarded by USE(CF).
(WebCore::CachedImageManual::removeFakeClient): Added; guarded by USE(CF).
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load): Added iOS-specific code.
* loader/cache/CachedResource.h:
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::loadDone): Added argument shouldPerformPostLoadActions, defaults to true. Modified
to conditionally call performPostLoadActions() with respect to the argument shouldPerformPostLoadActions.
(WebCore::CachedResourceLoader::preload): Added iOS-specific code.
(WebCore::CachedResourceLoader::checkForPendingPreloads): Ditto.
* loader/cache/CachedResourceLoader.h:
* loader/cache/MemoryCache.cpp:
(WebCore::memoryCache):
(WebCore::MemoryCache::add): Added iOS-specific code.
(WebCore::MemoryCache::revalidationFailed): Ditto.
(WebCore::MemoryCache::resourceForRequest): Ditto.
(WebCore::MemoryCache::addImageToCache): Added; guarded by USE(CF). Also added FIXME comment.
(WebCore::MemoryCache::removeImageFromCache): Added; guarded by USE(CF). Also added FIXME comment.
(WebCore::MemoryCache::pruneLiveResources): Modified to take argument shouldDestroyDecodedDataForAllLiveResources.
(WebCore::MemoryCache::pruneLiveResourcesToSize): Modified to take argument shouldDestroyDecodedDataForAllLiveResources,
defaults to false. When this argument is true we destroy the decoded data for all live resources from the memory cache.
Such functionality is useful when the system is running low on memory.
(WebCore::MemoryCache::evict): Added iOS-specific code.
* loader/cache/MemoryCache.h:
* loader/cf/SubresourceLoaderCF.cpp:
(WebCore::SubresourceLoader::didReceiveDataArray): Actually make this code compile. In particular, there is no
method called sendDataToResource on SubresourceLoader or in its class hierarchy.
* loader/mac/DocumentLoaderMac.cpp:
(WebCore::DocumentLoader::schedule): This method has an empty implementation when building for iOS.
(WebCore::DocumentLoader::unschedule): Ditto.
* platform/graphics/BitmapImage.h: Exposed decodedSize() to access the decoded size of the bitmap image.
This functionality is used in MemoryCache::addImageToCache().

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

7 years agoplatform/mac/editing/attributed-string tests all flakily assert
ap@apple.com [Thu, 19 Dec 2013 18:03:29 +0000 (18:03 +0000)]
platform/mac/editing/attributed-string tests all flakily assert
https://bugs.webkit.org/show_bug.cgi?id=123029

* platform/mac/TestExpectations: Marked as flakily asserting.

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

7 years agoBuild fix for platforms which do not define -[AVSampleBufferAudioRenderer muted].
jer.noble@apple.com [Thu, 19 Dec 2013 17:51:04 +0000 (17:51 +0000)]
Build fix for platforms which do not define -[AVSampleBufferAudioRenderer muted].
Rubber-stamped by Eric Carlson.

To work around platforms with broken AVSampleBufferAudioRenderer headers, just
declare only those functions we need, and update isAvalable to bail out early if
those methods are not present.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

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

7 years agoWTF, JavaScriptCore fails to build with trunk clang: operators new, new[],
dbates@webkit.org [Thu, 19 Dec 2013 17:50:01 +0000 (17:50 +0000)]
WTF, JavaScriptCore fails to build with trunk clang: operators new, new[],
delete, delete[] cannot be declared inline
https://bugs.webkit.org/show_bug.cgi?id=124186
<rdar://problem/15644039>

Reviewed by Geoffrey Garen and Anders Carlsson.

Following <http://llvm.org/viewvc/llvm-project?view=revision&revision=193044>
(http://llvm.org/bugs/show_bug.cgi?id=17591>), Clang emits warnings when
operator new, delete are inlined. Such definitions cannot be inline per
replacement.functions (17.6.4.6/3) of the C++ standard. For now,
disable these warnings instead of exporting these functions.

* wtf/FastMalloc.h:

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

7 years agoImprove "bad parent" and "bad child list" assertions in line boxes
darin@apple.com [Thu, 19 Dec 2013 17:40:53 +0000 (17:40 +0000)]
Improve "bad parent" and "bad child list" assertions in line boxes
https://bugs.webkit.org/show_bug.cgi?id=125656

Reviewed by Sam Weinig.

* rendering/InlineBox.cpp:
(WebCore::InlineBox::root): Use parent() function with assertions rather than
using m_parent function, which skips the assertions.
* rendering/RenderText.cpp:
(WebCore::RenderText::removeAndDestroyTextBoxes): Call invalidateParentChildLists
if we are in the optimized document-destruction code path and destroying children
without removing them from their parents.
* rendering/RenderTextLineBoxes.cpp:
(WebCore::RenderTextLineBoxes::invalidateParentChildLists): Added.
* rendering/RenderTextLineBoxes.h: Added invalidateParentChildLists.

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

7 years ago<rdar://problem/15696824> [CFNetwork] Loading stops at server redirects
mitz@apple.com [Thu, 19 Dec 2013 17:32:49 +0000 (17:32 +0000)]
<rdar://problem/15696824> [CFNetwork] Loading stops at server redirects
https://bugs.webkit.org/show_bug.cgi?id=125984

Reviewed by Anders Carlsson.

* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::willSendRequest): If the client uses async callbacks, call its
willSendRequestAsync callback instead if willSendRequest.

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

7 years agoWTF fails to compile with gcc 4.8.2 and -Werror=array-bounds
hugo.lima@openbossa.org [Thu, 19 Dec 2013 17:11:35 +0000 (17:11 +0000)]
WTF fails to compile with gcc 4.8.2 and -Werror=array-bounds
https://bugs.webkit.org/show_bug.cgi?id=125936

Reviewed by Anders Carlsson.

* wtf/dtoa/double-conversion.cc: Use a unsigned instead of int on buffer_pos type.

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

7 years ago[CoordinatedGraphics] Regressions in WebView's contentScaleFactor/contentPosition
commit-queue@webkit.org [Thu, 19 Dec 2013 16:30:51 +0000 (16:30 +0000)]
[CoordinatedGraphics] Regressions in WebView's contentScaleFactor/contentPosition
https://bugs.webkit.org/show_bug.cgi?id=125943

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-12-19
Reviewed by Noam Rosenthal.

When WebView::pageDidRequestScroll is called it is scaling position requested
to scroll before store it as contentPosition, that is not necessary since WebView
already stores the requested contentScaleFactor so it's able to do that internally
when needed, what simplifies the API and improves the readability of webview's code.
This patch reverts changes from https://bugs.webkit.org/show_bug.cgi?id=118548, which
was causing some regressions in contentScaleFactor/contentPosition related stuff.
Besides that WebView::pageDidRequestScroll calls viewClient callback with the wrong
position (different from the position stored in WebView).

* UIProcess/API/efl/EwkView.cpp:
(EwkView::scrollBy):
* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::transformToScene):
(WebKit::WebView::updateViewportSize):
(WebKit::WebView::pageDidRequestScroll):
* UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setViewportPosition):

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

7 years agoDelete RVCT related code parts.
ossy@webkit.org [Thu, 19 Dec 2013 16:21:47 +0000 (16:21 +0000)]
Delete RVCT related code parts.
https://bugs.webkit.org/show_bug.cgi?id=125626

Patch by Peter Szanka <h868064@stud.u-szeged.hu> on 2013-12-19
Reviewed by Csaba Osztrogonác.

* wtf/Compiler.h: follow-up fix for r160648, remove an unnecessary comment.

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

7 years agoCascadedProperties: Deferred properties should have inline capacity.
akling@apple.com [Thu, 19 Dec 2013 15:24:10 +0000 (15:24 +0000)]
CascadedProperties: Deferred properties should have inline capacity.
<https://webkit.org/b/125994>

Give CascadedProperties::m_deferredProperties an inline capacity
of 8 to sidestep malloc churn (0.2% of HTML5-8266 profile.)

Reviewed by Antti Koivisto.

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

7 years agoTwo small refinements to matched properties cache.
akling@apple.com [Thu, 19 Dec 2013 13:59:11 +0000 (13:59 +0000)]
Two small refinements to matched properties cache.
<https://webkit.org/b/125992>

- Avoid computing the matched properties hash if we're banned from
  using the cache anyway.

- When adding a new entry to the cache, use move semantics to avoid
  creating a transient copy of all the data.

Reviewed by Antti Koivisto.

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

7 years agoCascadedProperties should use a bitset to track property presence.
akling@apple.com [Thu, 19 Dec 2013 12:15:44 +0000 (12:15 +0000)]
CascadedProperties should use a bitset to track property presence.
<https://webkit.org/b/125991>

Avoid zeroing out a bunch of memory in the CascadedProperties ctor
by using a bitset to track whether each property is present in the
cascaded set.

Reviewed by Antti Koivisto.

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

7 years agoWeb Inspector: Fix description of parameters in Page.setGeolocationOverride
seokju@webkit.org [Thu, 19 Dec 2013 09:20:36 +0000 (09:20 +0000)]
Web Inspector: Fix description of parameters in Page.setGeolocationOverride
https://bugs.webkit.org/show_bug.cgi?id=125983

Reviewed by Joseph Pecoraro.

No new tests, no changes in behavior.

* inspector/protocol/Page.json:

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

7 years agoRebaseline the test I added in r160819.
rniwa@webkit.org [Thu, 19 Dec 2013 07:19:02 +0000 (07:19 +0000)]
Rebaseline the test I added in r160819.

* svg/text/select-text-inside-non-static-position-expected.txt:

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

7 years ago[MSE][Mac] Add AVSampleBufferRendererSynchronizer support.
jer.noble@apple.com [Thu, 19 Dec 2013 07:01:59 +0000 (07:01 +0000)]
[MSE][Mac] Add AVSampleBufferRendererSynchronizer support.
https://bugs.webkit.org/show_bug.cgi?id=125954

Reviewed by NOBODY (OOPS!).

Instead of slaving all the various renderer's CMTimebases to one master timebase,
use AVSampleBufferRenderSynchronizer, which essentially does the same thing.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::CMTimebaseEffectiveRateChangedCallback): Added; call effectiveRateChanged().
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): Set up
    the synchronizer and all the observers.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC): Tear down
    the same.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable): Require the
    AVSampleBufferRenderSynchronizer class.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal): Convert Clock -> Synchronizer.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pauseInternal): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paused): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::destroyLayer): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::effectiveRateChanged): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addDisplayLayer): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeDisplayLayer): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeAudioRenderer): Ditto.

Drive-by fix; audio samples can't be subdivided, and video samples are
rarely combined, so remove the call to CMSampleBufferCallForEachSample:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didProvideMediaDataForTrackID):

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

7 years ago[WinCairo] Unreviewed build fix after r160798.
alex.christensen@flexsim.com [Thu, 19 Dec 2013 04:47:16 +0000 (04:47 +0000)]
[WinCairo] Unreviewed build fix after r160798.

* win/tools/vsprops/FeatureDefinesCairo.props:
Removed ENABLE_MEDIA_CONTROLS_SCRIPT definition for now.

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

7 years agoDelayedReleaseScope is in the wrong place
mhahnenberg@apple.com [Thu, 19 Dec 2013 04:30:02 +0000 (04:30 +0000)]
DelayedReleaseScope is in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=125876

Reviewed by Geoffrey Garen.

The DelayedReleaseScope needs to be around the free list sweeping in MarkedAllocator::tryAllocateHelper.
This location gives us a good safe point between getting ready to allocate  (i.e. identifying a non-empty
free list) and doing the actual allocation (popping the free list).

* heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::tryAllocateHelper):
(JSC::MarkedAllocator::allocateSlowCase):
(JSC::MarkedAllocator::addBlock):
* runtime/JSCellInlines.h:
(JSC::allocateCell):

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

7 years agoCSS: Fall back to cache-less cascade when encountering explicitly inherited value.
akling@apple.com [Thu, 19 Dec 2013 03:13:18 +0000 (03:13 +0000)]
CSS: Fall back to cache-less cascade when encountering explicitly inherited value.
<https://webkit.org/b/125968>

When encountering an explicitly inherited value for a property that's not
"statically inherited", drop out of the matched properties cache path
immediately instead of waiting for some coincidence to trigger it later on.

Fixes 3 asserting table tests:

- fast/table/border-collapsing/cached-69296.html
- tables/mozilla/bugs/bug27038-3.html
- tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html

Reviewed by Antti Koivisto.

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

7 years agoCrash in WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches
rniwa@webkit.org [Thu, 19 Dec 2013 03:09:56 +0000 (03:09 +0000)]
Crash in WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches
https://bugs.webkit.org/show_bug.cgi?id=125970

Reviewed by Antti Koivisto.

Source/WebCore:

The bug was caused by containingBlockForAbsolutePosition returning a non-RenderBlock render object.
Fixed the bug by obtaining its containg block.

Also changed the return type of containingBlockForFixedPosition, containingBlockForAbsolutePosition,
containingBlockForObjectInFlow from RenderElement to RenderBlock as all callers of these functions
had assumed the return value to be an instance of RenderBlock.

Test: svg/text/select-text-inside-non-static-position.html

* rendering/LogicalSelectionOffsetCaches.h:
(WebCore::containingBlockForFixedPosition):
(WebCore::containingBlockForAbsolutePosition):
(WebCore::containingBlockForObjectInFlow):
(WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):

LayoutTests:

Added a regression test.

* svg/text/select-text-inside-non-static-position-expected.txt: Added.
* svg/text/select-text-inside-non-static-position.html: Added.

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

7 years agoWebKit2 View Gestures: Move WebProcess-side geometry collection into its own class
timothy_horton@apple.com [Thu, 19 Dec 2013 02:33:33 +0000 (02:33 +0000)]
WebKit2 View Gestures: Move WebProcess-side geometry collection into its own class
https://bugs.webkit.org/show_bug.cgi?id=125967

Reviewed by Anders Carlsson.

Move the messages dispatched by ViewGestureController that grab geometry
from the WebProcess out of the DrawingArea and into ViewGestureGeometryCollector.
This class will grow when smart magnification is implemented.

* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
Remove BeginTransientZoom() message.

* DerivedSources.make:
* UIProcess/DrawingAreaProxy.h:

* UIProcess/mac/ViewGestureController.cpp:
(WebKit::ViewGestureController::didCollectGeometryForMagnificationGesture):
(WebKit::ViewGestureController::handleMagnificationGesture):
* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/ViewGestureController.messages.in:
Make use of ViewGestureGeometryCollector and rename didBeginTransientZoom to didCollectGeometryForMagnificationGesture.

* WebKit2.xcodeproj/project.pbxproj:
Add new files.

* WebProcess/WebPage/ViewGestureGeometryCollector.cpp: Added.
(WebKit::ViewGestureGeometryCollector::ViewGestureGeometryCollector):
(WebKit::ViewGestureGeometryCollector::~ViewGestureGeometryCollector):
(WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
* WebProcess/WebPage/ViewGestureGeometryCollector.h: Added.
* WebProcess/WebPage/ViewGestureGeometryCollector.messages.in: Added.
Move the code to collect the visible content rect and return it to the ViewGestureController into its own class.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebPage/WebPage.h:
Move m_pageID to the top of WebPage's initialization list so that
it can be safely used from other members' constructors.

Add a ViewGestureGeometryCollector member and construct it.

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

7 years agoDon't waste cycles on zeroing every CascadedProperties::Property.
akling@apple.com [Thu, 19 Dec 2013 02:29:41 +0000 (02:29 +0000)]
Don't waste cycles on zeroing every CascadedProperties::Property.
<https://webkit.org/b/125966>

The CascadedProperties constructor already zeroes out the whole
property array. Move the memset() to setDeferred() which is the only
other place we create a Property.

Brought to you by Instruments.app. Profile your code today!

Reviewed by Antti Koivisto.

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

7 years agoUnreviewed cmake build fix for GTK+.
gns@gnome.org [Thu, 19 Dec 2013 02:22:32 +0000 (02:22 +0000)]
Unreviewed cmake build fix for GTK+.

Source/WebKit:

* PlatformGTK.cmake: add missing include directory.

Source/WebKit2:

* PlatformGTK.cmake: fix paths for files that were moved.

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

7 years ago[CSS Shapes] Simplify the BoxShape implementation
hmuller@adobe.com [Thu, 19 Dec 2013 01:55:46 +0000 (01:55 +0000)]
[CSS Shapes] Simplify the BoxShape implementation
https://bugs.webkit.org/show_bug.cgi?id=125548

Reviewed by Andreas Kling.

Reduce BoxShape's footprint by about 2/3rds. Instead of caching the
FloatRoundedRects which represent a BoxShape's shape-padding and shape-margin
boundaries, compute them as needed.

No new tests, this is just an internal refactoring.

* rendering/shapes/BoxShape.cpp:
(WebCore::BoxShape::shapeMarginLogicalBoundingBox): Now just computes the bounding box rect.
(WebCore::BoxShape::shapePaddingLogicalBoundingBox): Ditto.
(WebCore::BoxShape::shapeMarginBounds): Removed the caching logic.
(WebCore::BoxShape::shapePaddingBounds): Ditto.
(WebCore::BoxShape::getExcludedIntervals): Use the computed margin bounds, instead of the cached one.
(WebCore::BoxShape::getIncludedIntervals): Ditto (padding bounds).
* rendering/shapes/BoxShape.h:
(WebCore::BoxShape::BoxShape): Simplified the constructor.
* rendering/shapes/Shape.cpp:
(WebCore::createBoxShape):
(WebCore::Shape::createShape):

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

7 years agoMessageReceiverMap::addMessageReceiver should assert that destinationID is not zero
andersca@apple.com [Thu, 19 Dec 2013 01:39:03 +0000 (01:39 +0000)]
MessageReceiverMap::addMessageReceiver should assert that destinationID is not zero
https://bugs.webkit.org/show_bug.cgi?id=125965

Reviewed by Tim Horton.

* Platform/CoreIPC/MessageReceiverMap.cpp:
(CoreIPC::MessageReceiverMap::addMessageReceiver):

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

7 years ago[GTK][CMake] make libjavascriptcoregtk a public shared library again
gns@gnome.org [Thu, 19 Dec 2013 01:35:02 +0000 (01:35 +0000)]
[GTK][CMake] make libjavascriptcoregtk a public shared library again
https://bugs.webkit.org/show_bug.cgi?id=125512

Reviewed by Martin Robinson.

.:

* CMakeLists.txt: make JavaScriptCore always be a shared library for the GTK+ port.
* Source/cmake/WebKitHelpers.cmake: make -fvisibility=hidden not be applied for GTK+,
visibility of some symbols is required for threading to be initialized properly by
WebKit2 processes, and we will rely on a linker script that will be added later on,
for production builds.

Source/JavaScriptCore:

* CMakeLists.txt: use target type instead of SHARED_CORE to decide whether
JavaScriptCore is a shared library, since it's always shared for GTK+ regardless
of SHARED_CORE.

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

7 years agoDeprecate some WKMutableDictionary functions
andersca@apple.com [Thu, 19 Dec 2013 01:22:56 +0000 (01:22 +0000)]
Deprecate some WKMutableDictionary functions
https://bugs.webkit.org/show_bug.cgi?id=125962

Reviewed by Tim Horton.

Source/WebKit2:

* Shared/API/c/WKDeprecatedFunctions.cpp:
(WKDictionaryIsMutable):
(WKDictionaryAddItem):
(WKDictionaryRemoveItem):
* Shared/API/c/WKMutableDictionary.cpp:
* Shared/API/c/WKMutableDictionary.h:

Tools:

* TestWebKitAPI/PlatformUtilities.cpp:
(TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
* TestWebKitAPI/Tests/WebKit2/DidAssociateFormControls_Bundle.cpp:
(TestWebKitAPI::didAssociateFormControls):
* TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp:
(TestWebKitAPI::WillLoadTest::willLoadURLRequest):
(TestWebKitAPI::WillLoadTest::willLoadDataRequest):
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::createMouseMessageBody):
(WTR::EventSendingController::mouseMoveTo):
(WTR::EventSendingController::leapForward):
(WTR::createKeyDownMessageBody):
(WTR::EventSendingController::mouseScrollBy):
(WTR::EventSendingController::continuousMouseScrollBy):
(WTR::EventSendingController::addTouchPoint):
(WTR::EventSendingController::updateTouchPoint):
(WTR::EventSendingController::setTouchModifier):
(WTR::EventSendingController::setTouchPointRadius):
(WTR::EventSendingController::touchStart):
(WTR::EventSendingController::touchMove):
(WTR::EventSendingController::touchEnd):
(WTR::EventSendingController::touchCancel):
(WTR::EventSendingController::clearTouchPoints):
(WTR::EventSendingController::releaseTouchPoint):
(WTR::EventSendingController::cancelTouchPoint):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::done):
(WTR::InjectedBundle::setMockGeolocationPosition):
(WTR::InjectedBundle::setCustomPolicyDelegate):
(WTR::InjectedBundle::setVisibilityState):
(WTR::InjectedBundle::queueLoad):
(WTR::InjectedBundle::queueLoadHTMLString):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
(WTR::TestController::resetStateToConsistentValues):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::updateThreadedScrollingForCurrentTest):
(WTR::updateLayoutType):
(WTR::TestInvocation::invoke):

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

7 years ago[MSE][Mac] Add AVSampleBufferAudioRenderer support.
jer.noble@apple.com [Thu, 19 Dec 2013 01:14:26 +0000 (01:14 +0000)]
[MSE][Mac] Add AVSampleBufferAudioRenderer support.
https://bugs.webkit.org/show_bug.cgi?id=125905

Reviewed by Eric Carlson.

On platforms which support AVSampleBufferAudioRenderer, add support
for playback of audio CMSampleBufferRefs generated by AVStreamDataParser.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable): Require AVSampleBufferAudioRenderer.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setVolume): Pass through to every audio renderer.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setMuted): Ditto.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer): Slave the renderer's
    timebase to the master clock.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeAudioRenderer):
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC): Drive by fix; initialize
    m_enabledVideoTrackID.
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC): Call destroyRenderers().
(WebCore::callProcessCodedFrameForEachSample): Drive by fix; convert the bool return to an OSErr.
(WebCore::SourceBufferPrivateAVFObjC::destroyRenderers): Added; flush and destroy the audio
    renderers.
(WebCore::SourceBufferPrivateAVFObjC::removedFromMediaSource): Call destroyRenderers().
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled): Enable or disable the audio
    renderer in response.
(WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples): Added audio
    specific version.
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::didBecomeReadyForMoreSamples): Ditto.
(WebCore::SourceBufferPrivateAVFObjC::notifyClientWhenReadyForMoreSamples): Ditto.

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

7 years ago[Cocoa] Allow the web process plug-in to intercept resource requests
mitz@apple.com [Thu, 19 Dec 2013 00:52:47 +0000 (00:52 +0000)]
[Cocoa] Allow the web process plug-in to intercept resource requests
https://bugs.webkit.org/show_bug.cgi?id=125959

Reviewed by Anders Carlsson.

* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Declared new
delegate method.
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(willSendRequestForFrame): Implemented this WKBundlePageResourceClient callback by calling
the load delegate.
(setUpResourceLoadClient): Added. Initializes the resource load client with the above
function.
(-[WKWebProcessPlugInBrowserContextController setLoadDelegate:]): Added calls to initialize
and clear the resource load client.

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

7 years agoWeb Inspector: Remove leftover code from InspectorController after r108965
seokju@webkit.org [Thu, 19 Dec 2013 00:42:51 +0000 (00:42 +0000)]
Web Inspector: Remove leftover code from InspectorController after r108965
https://bugs.webkit.org/show_bug.cgi?id=125956

Reviewed by Joseph Pecoraro.

No new tests, no changes in behavior.

* inspector/InspectorController.h: PostWorkerNotificationToFrontendTask was removed in r108965.

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

7 years agoCSS: Add a property cascading pass to style application.
akling@apple.com [Thu, 19 Dec 2013 00:33:25 +0000 (00:33 +0000)]
CSS: Add a property cascading pass to style application.
<https://webkit.org/b/125213>

Add an intermediate pass to style application where we cascade all
style properties to figure out their final values before starting
to build RenderStyles.

This opens up various opportunities for further optimization.

Reviewed by Antti Koivisto.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::CascadedProperties::Property::Property):
(WebCore::StyleResolver::CascadedProperties::CascadedProperties):
(WebCore::StyleResolver::CascadedProperties::property):
(WebCore::StyleResolver::CascadedProperties::set):
(WebCore::StyleResolver::CascadedProperties::addStyleProperties):
(WebCore::StyleResolver::CascadedProperties::addMatches):
(WebCore::StyleResolver::CascadedProperties::Property::apply):

    Added. CascadedProperties is something of a container class
    that takes CSS property/value/linkMatchType as input and boils
    them down to the final values that will actually be used.

    Most properties are poked into an unfancy array where latest
    is greatest (unless !important, of course.) Some properties are
    queued up to be applied in parse order, more on that below.

(WebCore::StyleResolver::applyCascadedProperties):
(WebCore::StyleResolver::applyMatchedProperties):

    The brains of this patch. applyMatchedProperties() now creates
    a CascadedProperties and uses it to figure out the final values
    and uses applyCascadedProperties() to apply them. Deferred
    properties (parse order) are applied last.

    We may discover during property application that we won't be
    able to use a matched properties cache item. This happens if
    the effective zoom or font changes. If that happens, we start
    the process over, now with the cache disabled. This may need
    some optimization work.

(WebCore::extractDirectionAndWritingMode):

    Directional properties ending in e.g -before or -after depend on
    the direction and writing mode in effect, so we must begin with
    resolving those properties before doing the full cascade.

    This is done by simply walking the set of matched properties and
    manually applying '-webkit-writing-mode' and 'direction'.

    If this starts showing up in profiles, we can easily cache some
    of the information in e.g RuleData to avoid the traversal here.

(WebCore::elementTypeHasAppearanceFromUAStyle):

    To determine whether a form element is styled beyond the default
    UA style sheet, StyleResolver caches the border and background
    values from RenderStyle after applying the UA style sheet.

    Those values are then compared against after all style is applied
    and if some (platform-dependent) values differ, the element is
    considered "styled."

    This really only affects elements with -webkit-appearance values
    in the default UA style sheet, so this function determines if an
    element should take the goofy slow path for this.

(WebCore::shouldApplyPropertyInParseOrder):
(WebCore::StyleResolver::CascadedProperties::setDeferred):
(WebCore::StyleResolver::CascadedProperties::applyDeferredProperties):

    Some CSS properties will write to the same RenderStyle fields when
    applied, so in order to maintain previous behavior, we must apply
    them in the order they were parsed.

    We accomplish this by keeping an ordered queue of such properties
    to apply separately after all the other properties.

(WebCore::StyleResolver::CascadedProperties::setPropertyInternal):

    Helper for poking values into a CascadedProperties::Property.

* css/StyleResolver.h:
(WebCore::StyleResolver::state):

    Expose the StyleResolver::State so CascadedProperties can access it.

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

7 years ago[GTK] [CMake] Add support for building GtkLauncher
mrobinson@webkit.org [Thu, 19 Dec 2013 00:10:15 +0000 (00:10 +0000)]
[GTK] [CMake] Add support for building GtkLauncher
https://bugs.webkit.org/show_bug.cgi?id=125766

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Add the GtkLauncher subdirectory for the GTK port.
* GtkLauncher/CMakeLists.txt: Added.
* GtkLauncher/main.c: Support including the CMake config file.

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

7 years ago[GTK] [CMake] Add support for building WebKit1
mrobinson@webkit.org [Thu, 19 Dec 2013 00:04:47 +0000 (00:04 +0000)]
[GTK] [CMake] Add support for building WebKit1
https://bugs.webkit.org/show_bug.cgi?id=116377

Reviewed by Gustavo Noronha Silva.

.:

* Source/cmake/OptionsGTK.cmake: Turn off some features that do not build properly
for WebKit1 and stop using the version script which we haven't implemented yet. Turn
on WebKit1.

Source/WebCore:

* PlatformGTK.cmake: Add a missing source required by WebKit1 to
the WebCore build.

Source/WebKit:

* CMakeLists.txt: Updated WebCore include directory list for WebKitGTK+ and
added BUILDING_WEBKIT to the list of defines.
* PlatformGTK.cmake: Added.

Source/WebKit/gtk:

* GNUmakefile.am: Switch to using the templates for building the GObject enums.
* webkit/webkitenumtypes.cpp.template: Added.
* webkit/webkitenumtypes.h.template: Added.

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=125941
commit-queue@webkit.org [Wed, 18 Dec 2013 23:50:19 +0000 (23:50 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=125941
Add Obj C API for injected bundle PageGroup class.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2013-12-18
Reviewed by Dan Bernstein.

Add Obj C API (WKWebProcessPlugInPageGroup) for injected bundle PageGroup class. And add APIs to
expose the main frame and page group from WKWebProcessPlugInBrowsingContextController.

* Shared/Cocoa/APIObject.mm:
(API::Object::newObject): Create wrapper object for InjectedPageGroup object.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.h: Added.
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.mm: Added.
(-[WKWebProcessPlugInPageGroup identifier]):
(-[WKWebProcessPlugInPageGroup dealloc]):
(-[WKWebProcessPlugInPageGroup API::]):
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroupInternal.h: Added.
(WebKit::wrapper):
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h: Add API to expose the main frame and page group
    for WKWebPocessPlugInBrowserContextController.
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController mainFrame]):
(-[WKWebProcessPlugInBrowserContextController pageGroup]):

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

7 years ago[CSS Shapes] Simplify RectangleShape implementation
hmuller@adobe.com [Wed, 18 Dec 2013 23:33:59 +0000 (23:33 +0000)]
[CSS Shapes] Simplify RectangleShape implementation
https://bugs.webkit.org/show_bug.cgi?id=125536

Reviewed by Andreas Kling.

Instead of caching an instance of a private FloatRoundedRect (ish) class for
RectangleShape's shape-margin and shape-padding bounds, we just compute
the FloatRect and radii as needed. This reduces the classes footprint a little
and it simplifies the implementation.

Removed the private RectangleShape::ShapeBounds class and made its
cornerInterceptForWidth() method a static function. Added members for
the RectangleShape constructor args, and private getters for their properties.

There are no new tests because this is just an internal refactoring.

* rendering/shapes/RectangleShape.cpp:
(WebCore::RectangleShape::shapePaddingBounds):
(WebCore::RectangleShape::shapeMarginBounds):
(WebCore::ellipseXIntercept):
(WebCore::ellipseYIntercept):
(WebCore::RectangleShape::getExcludedIntervals):
(WebCore::RectangleShape::getIncludedIntervals):
(WebCore::cornerInterceptForWidth):
(WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
(WebCore::RectangleShape::buildPath):
* rendering/shapes/RectangleShape.h:
(WebCore::RectangleShape::RectangleShape):
(WebCore::RectangleShape::rx):
(WebCore::RectangleShape::ry):
(WebCore::RectangleShape::x):
(WebCore::RectangleShape::y):
(WebCore::RectangleShape::width):
(WebCore::RectangleShape::height):
* rendering/shapes/Shape.cpp:
(WebCore::createCircleShape): Renamed this internal function (it was createShapeCircle) because it was inconsistent.
(WebCore::createEllipseShape): Ditto.
(WebCore::Shape::createShape):

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

7 years agoPDFPlugin: Never make a NSEventType = 0
timothy_horton@apple.com [Wed, 18 Dec 2013 23:25:56 +0000 (23:25 +0000)]
PDFPlugin: Never make a NSEventType = 0
https://bugs.webkit.org/show_bug.cgi?id=125955

Reviewed by Dan Bernstein.

* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::getEventTypeFromWebEvent):
Make getEventTypeFromWebEvent return its NSEventType as an out arg, and
make the return value represent whether or not we set it.

(WebKit::PDFPlugin::nsEventForWebMouseEvent):
(WebKit::PDFPlugin::handleKeyboardEvent):
Make use of getEventTypeFromWebEvent.

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

7 years agoAdd a simple stack abstraction for x86_64
benjamin@webkit.org [Wed, 18 Dec 2013 23:23:53 +0000 (23:23 +0000)]
Add a simple stack abstraction for x86_64
https://bugs.webkit.org/show_bug.cgi?id=125908

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::addPtrNoFlags):
Add an explicit abstraction for the "lea" instruction. This is needed
by the experimental JIT to have add and substract without changing the flags.

This is useful for function calls to test the return value, restore the registers,
then branch on the flags from the return value.

Source/WebCore:

StackAllocator provides an abstraction to make it hard to make mistakes and protects from obvious
issues at runtime.

The key roles of StackAllocators are:
-Provide the necessary stack alignment for function calls (only x86_64 stack for now).
-Provide ways to save registers on the stack, restore or discard them as needed.
-Crash at runtime if an operation would obviously cause a stack inconsistency.

The way simple inconsistencies are detected is through the StackReference object
returned whenever something is added on the stack.
The object keeps a reference to the offset of what has been pushed. When the StackReference
is used to recover the register, if the offset is different, there is a missmatch between
push() and pop() after the object was pushed.

* cssjit/StackAllocator.h: Added.
(WebCore::StackAllocator::StackReference::StackReference):
(WebCore::StackAllocator::StackReference::operator unsigned):
(WebCore::StackAllocator::StackAllocator):
(WebCore::StackAllocator::~StackAllocator):
(WebCore::StackAllocator::push):
(WebCore::StackAllocator::pop):

(WebCore::StackAllocator::alignStackPreFunctionCall):
(WebCore::StackAllocator::unalignStackPostFunctionCall):
Those helpers provide a simple way to have a valid stack prior to a function call.
Since StackAllocator knows the offset and the platform rules, it can adjust the stack
if needed for x86_64.

(WebCore::StackAllocator::discard): Discard a single register or the full stack.

(WebCore::StackAllocator::combine): combining stacks is the way to solve branches
where the stack is used differently in each case.
To do that, the stack is first copied to A and B. Each branch works on its own
StackAllocator copy, then the two copies are linked together to the original stack.

The copies ensure the local consistency in each branch, linking the copies ensure global
consistencies and that both branches end in the same stack state.

(WebCore::StackAllocator::offsetToStackReference): Helper function to access the stack by address
through its StackReference.

(WebCore::StackAllocator::reset):

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

7 years ago[GTK][CMake] Use thin archives if building on Linux, only way to get non-shared-core...
gns@gnome.org [Wed, 18 Dec 2013 23:12:02 +0000 (23:12 +0000)]
[GTK][CMake] Use thin archives if building on Linux, only way to get non-shared-core debug builds
https://bugs.webkit.org/show_bug.cgi?id=125951

Reviewed by Martin Robinson.

* Source/cmake/OptionsGTK.cmake: append T for thin archives to the flags passed to ar,
also use u, which is used in the autotools build (it avoids adding a file twice).

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

7 years ago[WinCairo] Preparation for GStreamer on Windows.
commit-queue@webkit.org [Wed, 18 Dec 2013 23:11:02 +0000 (23:11 +0000)]
[WinCairo] Preparation for GStreamer on Windows.
https://bugs.webkit.org/show_bug.cgi?id=125946

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-18
Reviewed by Brent Fulgham.

Source/WebCore:

* WebCore.vcxproj/WebCore.vcxproj:
Use new GStreamer property sheets for WinCairo.
* WebCore.vcxproj/WebCoreCairo.props:
Include GStreamer directory.

Source/WebKit:

* WebKit.vcxproj/WebKit/WebKit.vcxproj:
Use new GStreamer property sheets for WinCairo.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Fixed 64-bit symbols, added GStreamer symbol.

Source/WTF:

* WTF.vcxproj/WTF.vcxproj:
Use new GStreamer property sheets for WinCairo.

Tools:

* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
Use new GStreamer property sheets for WinCairo.
* win/DLLLauncher/DLLLauncherMain.cpp:
(modifyPath):
(wWinMain):
Prepend GStreamer bin directory to path if it exists.

WebKitLibraries:

* win/tools/vsprops/FeatureDefinesCairo.props:
Added ENABLE_MEDIA_CONTROLS_SCRIPT and ENABLE_VIDEO_TRACK for DerivedSources.make.
* win/tools/vsprops/GStreamer32.props: Added.
* win/tools/vsprops/GStreamer64.props: Added.
* win/tools/vsprops/GStreamerCommon.props: Added.

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

7 years ago[GTK][CMake] Remove binary size optimizations we do not use in the autotools build
gns@gnome.org [Wed, 18 Dec 2013 23:05:09 +0000 (23:05 +0000)]
[GTK][CMake] Remove binary size optimizations we do not use in the autotools build
https://bugs.webkit.org/show_bug.cgi?id=125947

Reviewed by Martin Robinson.

* Source/cmake/OptionsGTK.cmake: remove the relevant flags.

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

7 years agoDFG should have a separate StoreBarrier node
mhahnenberg@apple.com [Wed, 18 Dec 2013 22:50:40 +0000 (22:50 +0000)]
DFG should have a separate StoreBarrier node
https://bugs.webkit.org/show_bug.cgi?id=125530

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

This is in preparation for GenGC. We use a separate StoreBarrier node instead of making them implicitly
part of other nodes so that it's easier to run analyses on them, e.g. for the StoreBarrierElisionPhase.
They are inserted during the fixup phase. Initially they do not generate any code.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGAbstractHeap.h:
* dfg/DFGAbstractInterpreter.h:
(JSC::DFG::AbstractInterpreter::isKnownNotCell):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberizeForAllocation):
(JSC::DFG::clobberize):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants): Whenever we insert new nodes that require StoreBarriers,
we have to add those new StoreBarriers too. It's important to note that AllocatePropertyStorage and
ReallocatePropertyStorage nodes require their StoreBarriers to come after them since they allocate first,
which could cause a GC, and then store the resulting buffer into their JSCell, which requires the barrier.
If we ever require that write barriers occur before stores, we'll have to split these nodes into
AllocatePropertyStorage + StoreBarrier + PutPropertyStorage.
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertStoreBarrier):
* dfg/DFGNode.h:
(JSC::DFG::Node::isStoreBarrier):
* dfg/DFGNodeType.h:
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThreadImpl):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileStoreBarrier):
(JSC::DFG::SpeculativeJIT::genericWriteBarrier): The fast path write barrier check. It loads the
byte that contains the mark bit of the object.
(JSC::DFG::SpeculativeJIT::storeToWriteBarrierBuffer): If the fast path check fails we try to store the
cell in the WriteBarrierBuffer so as to avoid frequently flushing all registers in order to make a C call.
(JSC::DFG::SpeculativeJIT::writeBarrier):
(JSC::DFG::SpeculativeJIT::osrWriteBarrier): More barebones version of the write barrier to be executed
during an OSR exit into baseline code. We must do this so that the baseline JIT object and array profiles
are properly cleared during GC.
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compileBaseValueStoreBarrier):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::writeBarrier):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compileBaseValueStoreBarrier):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::writeBarrier):
* dfg/DFGStoreBarrierElisionPhase.cpp: Added. New DFG phase that does block-local elision of redundant
StoreBarriers. Every time a StoreBarrier on a particular object is executed, a bit is set indicating that
that object doesn't need any more StoreBarriers.
(JSC::DFG::StoreBarrierElisionPhase::StoreBarrierElisionPhase):
(JSC::DFG::StoreBarrierElisionPhase::couldCauseGC): Nodes that could cause a GC reset the bits for all of the
objects known in the current block.
(JSC::DFG::StoreBarrierElisionPhase::allocatesFreshObject): A node that creates a new object automatically
sets the bit for that object since if a GC occurred as the result of that object's allocation then that
object would not need a barrier since it would be guaranteed to be a young generation object until the
next GC point.
(JSC::DFG::StoreBarrierElisionPhase::noticeFreshObject):
(JSC::DFG::StoreBarrierElisionPhase::getBaseOfStore):
(JSC::DFG::StoreBarrierElisionPhase::shouldBeElided):
(JSC::DFG::StoreBarrierElisionPhase::elideBarrier):
(JSC::DFG::StoreBarrierElisionPhase::handleNode):
(JSC::DFG::StoreBarrierElisionPhase::handleBlock):
(JSC::DFG::StoreBarrierElisionPhase::run):
(JSC::DFG::performStoreBarrierElision):
* dfg/DFGStoreBarrierElisionPhase.h: Added.
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::flushWriteBarrierBuffer):
* heap/Heap.h:
(JSC::Heap::writeBarrier):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::offsetOfMarks):
* heap/WriteBarrierBuffer.cpp: Added. The WriteBarrierBuffer buffers a set of JSCells that are awaiting
a pending WriteBarrier. This buffer is used by the DFG to avoid the overhead of calling out to C repeatedly
to invoke a write barrier on a single JSCell. Instead the DFG has inline code to fill the WriteBarrier buffer
until its full, and then to call out to C to flush it. The WriteBarrierBuffer will also be flushed prior to
each EdenCollection.
(JSC::WriteBarrierBuffer::WriteBarrierBuffer):
(JSC::WriteBarrierBuffer::~WriteBarrierBuffer):
(JSC::WriteBarrierBuffer::flush):
(JSC::WriteBarrierBuffer::reset):
(JSC::WriteBarrierBuffer::add):
* heap/WriteBarrierBuffer.h: Added.
(JSC::WriteBarrierBuffer::currentIndexOffset):
(JSC::WriteBarrierBuffer::capacityOffset):
(JSC::WriteBarrierBuffer::bufferOffset):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* runtime/VM.h:

Source/WTF:

* wtf/Platform.h: Added an #define for ENABLE(GGC) which will be used for landing things related to GenGC.

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

7 years agoWKRemoteObjectRegistry should invoke invocations
andersca@apple.com [Wed, 18 Dec 2013 22:02:15 +0000 (22:02 +0000)]
WKRemoteObjectRegistry should invoke invocations
https://bugs.webkit.org/show_bug.cgi?id=125945

Reviewed by Tim Horton.

* Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
(-[WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]):

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

7 years agoRemove now useless test.
andersca@apple.com [Wed, 18 Dec 2013 21:36:19 +0000 (21:36 +0000)]
Remove now useless test.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2ObjC/WKRemoteObjectRegistry.mm: Removed.
* TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Bundle.mm: Removed.
* TestWebKitAPI/Tests/mac/WKRemoteObjectRegistry_Shared.h: Removed.

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

7 years agoRefactor CodeGeneratorJS - Move attribute function creation out of getOwnPropertyName...
oliver@apple.com [Wed, 18 Dec 2013 21:08:35 +0000 (21:08 +0000)]
Refactor CodeGeneratorJS - Move attribute function creation out of getOwnPropertyName guard
https://bugs.webkit.org/show_bug.cgi?id=125940

Reviewed by Simon Fraser.

This is just a huge block move of code out from behind the
ImplementationOverridesGetOwnProperty guard.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):

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

7 years ago[iOS] Frequent ASSERT(hasOneRef()) in SharedBuffer::releasePurgeableBuffer
timothy_horton@apple.com [Wed, 18 Dec 2013 21:03:14 +0000 (21:03 +0000)]
[iOS] Frequent ASSERT(hasOneRef()) in SharedBuffer::releasePurgeableBuffer
https://bugs.webkit.org/show_bug.cgi?id=125939

Reviewed by Simon Fraser.

r146082 fixed these assertions by not making a purgeable buffer if a SharedBuffer
has multiple refs, but the check was put in ResourceBuffer::createPurgeableBuffer
instead of down in SharedBuffer::createPurgeableBuffer.

This is fine for most WebKit ports, because ResourceBuffer::createPurgeableBuffer
is the only caller of SharedBuffer::createPurgeableBuffer, but causes trouble for
not-quite-yet-upstreamed iOS SharedBuffer code, which adds another caller
of SharedBuffer::createPurgeableBuffer.

Push the early-return down into SharedBuffer::createPurgeableBuffer to ensure
that all callers are protected from creating a purgeable buffer if the SharedBuffer
has previously been vended elsewhere.

No new tests, has no effect on the current Open Source tree.

* loader/ResourceBuffer.cpp:
(WebCore::ResourceBuffer::createPurgeableBuffer):
* platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::createPurgeableBuffer):

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

7 years agoStarting a momentum scroll while rubber banding can cause scrolling to jump back
bdakin@apple.com [Wed, 18 Dec 2013 20:58:53 +0000 (20:58 +0000)]
Starting a momentum scroll while rubber banding can cause scrolling to jump back
when the rubberband snaps
https://bugs.webkit.org/show_bug.cgi?id=119507
-and corresponding-
<rdar://problem/14655893>

Reviewed by Simon Fraser.

This line of code was added with the very first implementation of rubber-banding.
As far as I can tell, it was always a belt-and-suspenders line of code that is a
no-op in all normal rubber-banding. In this J-shaped scrolling case, this line of
code is what causes the bug to occur because this line of code assumes that your
rubber-band is always trying to take you back to the origin.
* platform/mac/ScrollElasticityController.mm:
(WebCore::ScrollElasticityController::snapRubberBandTimerFired):

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

7 years agoFix page visibility api test, initialization in WebKit2
barraclough@apple.com [Wed, 18 Dec 2013 20:50:26 +0000 (20:50 +0000)]
Fix page visibility api test, initialization in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=125933

Reviewed by Anders Carlsson.

The API test for page visibility is broken, fix this. This revealed a recent regression in WebKit2
(introduced in https://bugs.webkit.org/show_bug.cgi?id=123379), caused by a typo removing a '!'.

Source/WebKit2:

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setVisibilityState):
    - Fix regression, accidentally removed a '!'.

Tools:

* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(TestWebKitAPI::TEST_F):
    - Running a test on WebKit1 twice is not the same as running it on WebKit2!

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

7 years agoAX: make aria-hidden=false work with subtrees
cfleizach@apple.com [Wed, 18 Dec 2013 20:40:26 +0000 (20:40 +0000)]
AX: make aria-hidden=false work with subtrees
https://bugs.webkit.org/show_bug.cgi?id=125592

Reviewed by Mario Sanchez Prada.

Source/WebCore:

When a hidden object uses aria-hidden=false, that needs to apply to
the entire sub-tree (not just the object with aria-hidden on it as it does now).

Enabling this had the side effect of exposing non-rendered text nodes, so there's
some extra checks to ensure we don't include those elements in this cases.

Test: accessibility/aria-hidden-false-works-in-subtrees.html

* accessibility/AXObjectCache.cpp:
(WebCore::isNodeAriaVisible):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::computeAccessibilityIsIgnored):

LayoutTests:

* platform/mac/accessibility/aria-hidden-false-works-in-subtrees-expected.txt: Added.
* accessibility/aria-hidden-false-works-in-subtrees.html: Added.

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

7 years agoFix 32-bit build.
andersca@apple.com [Wed, 18 Dec 2013 20:37:31 +0000 (20:37 +0000)]
Fix 32-bit build.

* Shared/API/Cocoa/RemoteObjectRegistry.mm:
(WebKit::RemoteObjectRegistry::invokeMethod):

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

7 years agoMake WKObjectRegistry objects be per page
andersca@apple.com [Wed, 18 Dec 2013 20:20:55 +0000 (20:20 +0000)]
Make WKObjectRegistry objects be per page
https://bugs.webkit.org/show_bug.cgi?id=125937

Reviewed by Andreas Kling.

Remove WKObjectRegistry from WKConnection. Also, add a C++ object that is in charge
of actually sending and receiving messages.

* DerivedSources.make:
* Shared/API/Cocoa/RemoteObjectRegistry.h: Added.
* Shared/API/Cocoa/RemoteObjectRegistry.messages.in: Added.
* Shared/API/Cocoa/RemoteObjectRegistry.mm: Added.
(WebKit::RemoteObjectRegistry::RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::~RemoteObjectRegistry):
(WebKit::RemoteObjectRegistry::sendInvocation):
(WebKit::RemoteObjectRegistry::invokeMethod):
* Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
(-[WKRemoteObjectRegistry _initWithMessageSender:IPC::]):
(-[WKRemoteObjectRegistry _invalidate]):
(-[WKRemoteObjectRegistry _sendInvocation:interface:]):
(-[WKRemoteObjectRegistry WebKit::]):
(-[WKRemoteObjectRegistry _invokeMethod:]):
* Shared/API/Cocoa/WKRemoteObjectRegistryInternal.h:
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController dealloc]):
(-[WKBrowsingContextController remoteObjectRegistry]):
* UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h:
* UIProcess/API/Cocoa/WKConnection.h:
* UIProcess/API/Cocoa/WKConnection.mm:
(didReceiveMessage):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController remoteObjectRegistry]):
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:

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

7 years agoSimplify bindings codegen for adding getOwnPropertySlot overrides
oliver@apple.com [Wed, 18 Dec 2013 20:12:41 +0000 (20:12 +0000)]
Simplify bindings codegen for adding getOwnPropertySlot overrides
https://bugs.webkit.org/show_bug.cgi?id=125934

Reviewed by Alexey Proskuryakov.

Simple refactoring no change in behavior.

* bindings/scripts/CodeGeneratorJS.pm:
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateHeader):
(GenerateImplementation):

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

7 years agoFlaky Test: media/video-buffered.html
ap@apple.com [Wed, 18 Dec 2013 20:05:07 +0000 (20:05 +0000)]
Flaky Test: media/video-buffered.html
https://bugs.webkit.org/show_bug.cgi?id=116277

* platform/mac/TestExpectations: Mark it as such.

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

7 years agoAudioSessionManagerMac.cpp: kLowPowerVideoBufferSize unused before OS X 10.9
commit-queue@webkit.org [Wed, 18 Dec 2013 19:42:51 +0000 (19:42 +0000)]
AudioSessionManagerMac.cpp: kLowPowerVideoBufferSize unused before OS X 10.9
https://bugs.webkit.org/show_bug.cgi?id=125935

Patch by Conrad Shultz <conrad_shultz@apple.com> on 2013-12-18
Reviewed by Jer Noble.

* platform/audio/mac/AudioSessionManagerMac.cpp:
Add __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090 guard.

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

7 years agoAPI to set a favicon
commit-queue@webkit.org [Wed, 18 Dec 2013 19:41:36 +0000 (19:41 +0000)]
API to set a favicon
https://bugs.webkit.org/show_bug.cgi?id=125892

Patch by Conrad Shultz <conrad_shultz@apple.com> on 2013-12-18
Reviewed by Brian Weinstein.

* UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseSetIconDataForIconURL):
Call WebIconDatabase::setIconDataForIconURL().

* UIProcess/API/C/WKIconDatabase.h:
Declare WKIconDatabaseSetIconDataForIconURL().

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

7 years agoWeb Inspector: Some basic DebuggerAgent cleanup
commit-queue@webkit.org [Wed, 18 Dec 2013 19:26:13 +0000 (19:26 +0000)]
Web Inspector: Some basic DebuggerAgent cleanup
https://bugs.webkit.org/show_bug.cgi?id=125901

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

* inspector/InspectorDebuggerAgent.h:
Remove virtual from not really virtual method.

* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::enable):
(WebCore::InspectorDebuggerAgent::disable):
Use member variable instead of private function.

(WebCore::InspectorDebuggerAgent::setPauseOnExceptions):
Inline the three lines from the private function.

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

7 years agoREGRESSION (r155536): Broken error recovery in @media at-rule
commit-queue@webkit.org [Wed, 18 Dec 2013 18:59:06 +0000 (18:59 +0000)]
REGRESSION (r155536): Broken error recovery in @media at-rule
https://bugs.webkit.org/show_bug.cgi?id=125637

Patch by Martin Hodovan <mhodovan@inf.u-szeged.hu> on 2013-12-18
Reviewed by Darin Adler.

Source/WebCore:

Error recovery in @media is broken if any of its rules misses the opening '{'.
The problem is that when the parser recognises the mistake it removes only the last
WHITESPACE token instead of the whole selector and tries to recover the selector again.
it swallows everything until it finds the next opening bracket. thats why the '}' brackets
of both subrules and even the @media rule are ignored, and the whole @media will be
considered invalid. By joining the selector and its trailing whitespace the error recovery
ignores the bad selector only and keep the @media rule.

Test: fast/css/media-error-recovery.html

* css/CSSGrammar.y.in:

LayoutTests:

Test with broken @media rule.

* fast/css/media-error-recovery-expected.txt: Added.
* fast/css/media-error-recovery.html: Added.

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

7 years agoAX: WebKit not sending AXMenuClosed notification
cfleizach@apple.com [Wed, 18 Dec 2013 18:50:47 +0000 (18:50 +0000)]
AX: WebKit not sending AXMenuClosed notification
https://bugs.webkit.org/show_bug.cgi?id=125783

Reviewed by Mario Sanchez Prada.

Source/WebCore:

When an object with a role=menu is removed, we need to send out a notification informing that the menu has closed.
This means detecting the right kind of destruction event for an element, because we do not want to
send this notification when the entire cache is being torn down.

Test: platform/mac/accessibility/aria-menu-closed-notification.html

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::~AXObjectCache):
(WebCore::AXObjectCache::remove):
* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::document):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::detach):
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::detach):
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::detach):
* accessibility/AccessibilityRenderObject.h:
* accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::detach):
* accessibility/AccessibilityScrollView.h:
* accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postPlatformNotification):

LayoutTests:

* platform/mac/accessibility/aria-menu-closed-notification-expected.txt: Added.
* platform/mac/accessibility/aria-menu-closed-notification.html: Added.

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

7 years agoDo not create cue subtree just to delete it
eric.carlson@apple.com [Wed, 18 Dec 2013 18:32:55 +0000 (18:32 +0000)]
Do not create cue subtree just to delete it
https://bugs.webkit.org/show_bug.cgi?id=125904

Reviewed by Jer Noble.

No new tests, covered by existing tests.

* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::setIsActive): Return early if display tree is NULL.
(WebCore::TextTrackCue::removeDisplayTree): Ditto.

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

7 years agoFix Dictionary encoding
andersca@apple.com [Wed, 18 Dec 2013 18:30:07 +0000 (18:30 +0000)]
Fix Dictionary encoding
https://bugs.webkit.org/show_bug.cgi?id=125930

Reviewed by Andreas Kling.

Encode the HashMap size as a 64-bit unsigned integer.

* Shared/UserData.cpp:
(WebKit::UserData::encode):

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

7 years agoRemove JSInlineGetOwnPropertySlot attribute as it is no longer necessary
oliver@apple.com [Wed, 18 Dec 2013 18:26:09 +0000 (18:26 +0000)]
Remove JSInlineGetOwnPropertySlot attribute as it is no longer necessary
https://bugs.webkit.org/show_bug.cgi?id=125875

Reviewed by Brady Eidson.

Tested this on dromaeo and acid3 (the original reason for this attribute)
and it no longer provided any benefit. This makes it easier to reason about
creation of getOwnPropertySlot during binding generation.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* dom/Document.idl:
* dom/Element.idl:
* dom/Node.idl:

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

7 years agoFix ASSERTION FAILED in WebCore::SVGLengthContext::determineViewport
commit-queue@webkit.org [Wed, 18 Dec 2013 18:14:12 +0000 (18:14 +0000)]
Fix ASSERTION FAILED in WebCore::SVGLengthContext::determineViewport
https://bugs.webkit.org/show_bug.cgi?id=120284

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-18
Reviewed by Philip Rogers.

Source/WebCore:

Added handling of root <svg> elements.
Blink merge: https://chromium.googlesource.com/chromium/blink/+/a7dedf81eb7008276bb6854f0e46465e039788f8

SVGLengthContext::determineViewport() currently asserts that we're not
resolving lengths for the topmost element, but there's nothing to
prevent such calls.

The patch updates determineViewport() to handle root elements geracefully
(using their current viewport). It also changes the signature slightly
to operate directly on a FloatSize, reducing some of the boiler-plate
client code.

Tests: svg/custom/svg-length-value-handled.svg
       svg/dom/svg-root-lengths.html

* svg/SVGLengthContext.cpp:
(WebCore::SVGLengthContext::convertValueFromUserUnitsToPercentage):
(WebCore::SVGLengthContext::convertValueFromPercentageToUserUnits):
(WebCore::SVGLengthContext::determineViewport):
* svg/SVGLengthContext.h:
* svg/graphics/filters/SVGFEImage.cpp:
(WebCore::FEImage::platformApplySoftware):

LayoutTests:

Added tests of handling root <svg> elements.
Blink merge: https://chromium.googlesource.com/chromium/blink/+/a7dedf81eb7008276bb6854f0e46465e039788f8

* svg/custom/svg-length-value-handled-expected.txt: Added.
* svg/custom/svg-length-value-handled.svg: Added.
    Tests whether root svg elements sizes are handled.
* svg/dom/svg-root-lengths-expected.txt: Added.
* svg/dom/svg-root-lengths.html: Added.
    Tests the correct handling of root svg elements sizes.

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

7 years agoShould not have identifiers with underscores in them, especially not leading underscores.
commit-queue@webkit.org [Wed, 18 Dec 2013 18:07:01 +0000 (18:07 +0000)]
Should not have identifiers with underscores in them, especially not leading underscores.
https://bugs.webkit.org/show_bug.cgi?id=125847

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-18
Reviewed by Darin Adler.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_runtime_selfinit):
(WebKitStyleTest.test_names):

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

7 years agoFalse webkit-check-style warnings on *.
commit-queue@webkit.org [Wed, 18 Dec 2013 18:06:13 +0000 (18:06 +0000)]
False webkit-check-style warnings on *.
https://bugs.webkit.org/show_bug.cgi?id=125915

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-18
Reviewed by Darin Adler.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_spacing):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_pointer_reference_marker_location):

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

7 years agoAdditional refinement in MathMLSelectElement toggle implementation
darin@apple.com [Wed, 18 Dec 2013 18:02:14 +0000 (18:02 +0000)]
Additional refinement in MathMLSelectElement toggle implementation
https://bugs.webkit.org/show_bug.cgi?id=125785

Reviewed by Andreas Kling.

Source/WebCore:

* mathml/MathMLSelectElement.cpp:
(WebCore::MathMLSelectElement::defaultEventHandler): Call setDefaultHandled
so this will be handled by only one element.
(WebCore::MathMLSelectElement::willRespondToMouseClickEvents): Return true
only when action is set to toggle, since other select elements will not
respond to mouse click events.
(WebCore::MathMLSelectElement::toggle): Simplified code a bit and gave
local a clearer variable name.

LayoutTests:

* mathml/presentation/maction-toggle-expected.html: Updated incorrect expected
result, which expected an already-handled event to be re-handled by a parent
element during the bubbling process.
* mathml/presentation/maction-toggle.html: Ditto.

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

7 years ago2013-12-18 Rob Buis <rob.buis@samsung.com>
rwlbuis@webkit.org [Wed, 18 Dec 2013 17:27:58 +0000 (17:27 +0000)]
2013-12-18  Rob Buis  <rob.buis@samsung.com>

        [CSS Shapes] Implement interpolation between keywords in basic shapes
        https://bugs.webkit.org/show_bug.cgi?id=125108

        Reviewed by Simon Fraser.

        Allow blending for all center coordinates since top/left and bottom/right default to correct
        Length values of 0% and 100%. For mixed keyword and value positions compute the length's used
        for blending to percentages. This is possible since we compute the reference box bounds given the
        renderer.

        * page/animation/CSSPropertyAnimation.cpp:
        (WebCore::blendFunc): Pass additional RenderBox parameter.
        * rendering/style/BasicShapes.cpp:
        (WebCore::BasicShape::canBlend): Don't check circle/ellipse center anymore, but do check that both
        shapes use the same reference box.
        (WebCore::BasicShape::referenceBoxSize): Compute box dimension depending on reference box.
        (WebCore::BasicShapeCenterCoordinate::lengthForBlending): Convert to percentage for Bottom/Right.
        (WebCore::BasicShapeRectangle::blend):
        (WebCore::DeprecatedBasicShapeCircle::blend):
        (WebCore::BasicShapeCircle::blend):
        (WebCore::DeprecatedBasicShapeEllipse::blend):
        (WebCore::BasicShapeEllipse::blend):
        (WebCore::BasicShapePolygon::blend):
        (WebCore::BasicShapeInsetRectangle::blend):
        (WebCore::BasicShapeInset::blend):
        * rendering/style/BasicShapes.h:
        (WebCore::BasicShapeCenterCoordinate::blend): Use new lengthForBlending.

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

7 years agoprepare-ChangeLog doesn't handle templates properly
commit-queue@webkit.org [Wed, 18 Dec 2013 17:26:21 +0000 (17:26 +0000)]
prepare-ChangeLog doesn't handle templates properly
https://bugs.webkit.org/show_bug.cgi?id=125853

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2013-12-18
Reviewed by Daniel Bates.

* Scripts/prepare-ChangeLog:
(get_function_line_ranges_for_cpp):
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests-expected.txt:
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests.cpp:
(Class110<TemplateClass>::func36):

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

7 years agoCSS: Null-pointer dereference with negative 'orphans' value.
commit-queue@webkit.org [Wed, 18 Dec 2013 15:51:55 +0000 (15:51 +0000)]
CSS: Null-pointer dereference with negative 'orphans' value.
https://bugs.webkit.org/show_bug.cgi?id=125924

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2013-12-18
Reviewed by Andreas Kling.

Source/WebCore:

orphans and widows should be positive integer.

spec link:
http://www.w3.org/TR/CSS2/page.html#propdef-orphans

Blink: https://codereview.chromium.org/108663009
Test: fast/css/negative-orphans-crash.html

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):

LayoutTests:

Test with negative orphans value.

* fast/css/negative-orphans-crash-expected.txt: Added.
* fast/css/negative-orphans-crash.html: Added.

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

7 years agoMake more computed style helpers return values by PassRef.
akling@apple.com [Wed, 18 Dec 2013 15:05:49 +0000 (15:05 +0000)]
Make more computed style helpers return values by PassRef.
<https://webkit.org/b/125923>

Tighten yet another handful of CSS computed style helper functions
to return their CSSValues by PassRef where we never return null.

Reviewed by Antti Koivisto.

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

7 years agoUse range for syntax in Frame and FrameView.
akling@apple.com [Wed, 18 Dec 2013 15:04:42 +0000 (15:04 +0000)]
Use range for syntax in Frame and FrameView.
<https://webkit.org/b/125922>

Convert code in Frame and FrameView to use C++11's range for syntax.

Reviewed by Antti Koivisto.

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

7 years agoRenderElement-ize adjustForAbsoluteZoom() and friends.
akling@apple.com [Wed, 18 Dec 2013 15:02:45 +0000 (15:02 +0000)]
RenderElement-ize adjustForAbsoluteZoom() and friends.
<https://webkit.org/b/125921>

Make adjustForAbsoluteZoom() take a const RenderElement& instead
of a RenderObject* so we can avoid the extra branch in style().
All call sites already had RenderElements.

Reviewed by Antti Koivisto.

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

7 years agoAX: HTML spec change indicates @aria-required should trump @required on any element
cfleizach@apple.com [Wed, 18 Dec 2013 14:18:41 +0000 (14:18 +0000)]
AX: HTML spec change indicates @aria-required should trump @required on any element
https://bugs.webkit.org/show_bug.cgi?id=122145

Reviewed by Mario Sanchez Prada.

Source/WebCore:

aria-required should win over the native "required" attribute.

Updated tests: accessibility/aria-required.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isRequired):

LayoutTests:

* accessibility/aria-required-expected.txt:
* accessibility/aria-required.html:

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

7 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Wed, 18 Dec 2013 13:23:14 +0000 (13:23 +0000)]
Unreviewed EFL gardening

Rebaseline tests after r160715.

* platform/efl/css2.1/t0905-c414-flt-wrap-00-e-expected.png:
* platform/efl/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
* platform/efl/fast/backgrounds/background-position-parsing-expected.png:
* platform/efl/fast/backgrounds/background-position-parsing-expected.txt:
* platform/efl/fast/backgrounds/size/contain-and-cover-zoomed-expected.png:
* platform/efl/fast/backgrounds/size/contain-and-cover-zoomed-expected.txt:
* platform/efl/fast/block/float/016-expected.png:
* platform/efl/fast/block/float/016-expected.txt:

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

7 years agoUnreviewed. Update NEWS and Versions.m4 for 2.3.3 release.
carlosgc@webkit.org [Wed, 18 Dec 2013 12:27:43 +0000 (12:27 +0000)]
Unreviewed. Update NEWS and Versions.m4 for 2.3.3 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.3.

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

7 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Wed, 18 Dec 2013 12:24:46 +0000 (12:24 +0000)]
Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

* GNUmakefile.am:

Source/ThirdParty/ANGLE:

* GNUmakefile.am:

Source/WebCore:

* GNUmakefile.am:
* GNUmakefile.list.am:

Source/WebKit2:

* GNUmakefile.list.am:

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

7 years ago[soup] Fix unused parameter warnings in ResourceHandleSoup.
commit-queue@webkit.org [Wed, 18 Dec 2013 12:01:29 +0000 (12:01 +0000)]
[soup] Fix unused parameter warnings in ResourceHandleSoup.
https://bugs.webkit.org/show_bug.cgi?id=125918

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2013-12-18
Reviewed by Martin Robinson.

Comment out the method parameters to avoid the warnings.

No tests required.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::WebCoreSynchronousLoader::didReceiveData):

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

7 years agoMove expectation parsing out of the constructor of TestExpectations
commit-queue@webkit.org [Wed, 18 Dec 2013 11:41:08 +0000 (11:41 +0000)]
Move expectation parsing out of the constructor of TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=125439

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-18
Reviewed by Csaba Osztrogonác.

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
(LayoutTestRunnerTests._run_tests):
(LayoutTestRunnerTests.test_interrupt_if_at_failure_limits):
(LayoutTestRunnerTests.test_update_summary_with_result):
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run):
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_look_for_new_crash_logs):
* Scripts/webkitpy/layout_tests/lint_test_expectations.py:
(lint):
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.suffixes_for_expectations):
(TestExpectations.__init__):
(TestExpectations):
(TestExpectations.parse_generic_expectations):
(TestExpectations.parse_default_port_expectations):
(TestExpectations.parse_override_expectations):
(TestExpectations.parse_all_expectations):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(parse_exp):
(SkippedTests.check):
(SkippedTests.test_skipped_entry_dont_exist):
* Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
(run_results):
* Scripts/webkitpy/tool/commands/queries.py:
(PrintExpectations._model):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest._update_expectations_file):
(RebaselineExpectations._update_expectations_files):
(RebaselineExpectations._tests_to_rebaseline):

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

7 years ago[MSE] Periodically monitor source buffers.
jer.noble@apple.com [Wed, 18 Dec 2013 07:37:08 +0000 (07:37 +0000)]
[MSE] Periodically monitor source buffers.
https://bugs.webkit.org/show_bug.cgi?id=125898

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-monitor-source-buffers.html

The MSE spec requires that the SourceBuffer Monitoring step is run
periodically during playback. No specific update interval is specified
so we will re-use the existing HTMLMediaElement playback progress
timer to signal the media source monitoring.

* html/HTMLMediaElement.cpp:
(HTMLMediaElement::playbackProgressTimerFired):

LayoutTests:

* media/media-source/media-source-monitor-source-buffers-expected.txt: Added.
* media/media-source/media-source-monitor-source-buffers.html: Added.

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

7 years ago[MSE] Add per-track signalling between SourceBuffer and SourceBufferPrivate.
jer.noble@apple.com [Wed, 18 Dec 2013 06:49:50 +0000 (06:49 +0000)]
[MSE] Add per-track signalling between SourceBuffer and SourceBufferPrivate.
https://bugs.webkit.org/show_bug.cgi?id=125899

Reviewed by Eric Carlson.

To accommodate the future addition of audio support to MSE in the Mac
port, add the concept of trackIDs to the communication between
SourceBuffer and SourceBufferPrivate.

The following virtual methods  now take a trackID parameter:
* platform/graphics/SourceBufferPrivate.h:
(WebCore::SourceBufferPrivate::isReadyForMoreSamples):
(WebCore::SourceBufferPrivate::stopAskingForMoreSamples):
(WebCore::SourceBufferPrivate::notifyClientWhenReadyForMoreSamples):
* platform/graphics/SourceBufferPrivateClient.h:
(WebCore::SourceBufferPrivateClient::sourceBufferPrivateDidBecomeReadyForMoreSamples):

Update overridden methods in subclasses:
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidBecomeReadyForMoreSamples):
* Modules/mediasource/SourceBuffer.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
* platform/mock/mediasource/MockSourceBufferPrivate.h:

Change the logic in provideMediaData to update a single TrackBuffer
rather than iterating over all of them:
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateSeekToTime):
(WebCore::SourceBuffer::appendBufferTimerFired):
(WebCore::SourceBuffer::provideMediaData):

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

7 years agoWeb Inspector: Remove InspectorAgent::hasFrontend
commit-queue@webkit.org [Wed, 18 Dec 2013 06:27:44 +0000 (06:27 +0000)]
Web Inspector: Remove InspectorAgent::hasFrontend
https://bugs.webkit.org/show_bug.cgi?id=125907

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

Remove InspectorAgent::hasFrontend only used by
InspectorInstrumentation::collectingHTMLParseErrors. However,
following the single callers of that, the result is unused
in the HTMLDocumentParser and HTMLTreeBuilder. So remove
more stale / unused code.

* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::createParser):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
* html/parser/HTMLDocumentParser.h:
(WebCore::HTMLDocumentParser::create):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
* html/parser/HTMLTreeBuilder.h:
(WebCore::HTMLTreeBuilder::create):
* html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::TextDocumentParser):
* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::patchDocument):
* inspector/InspectorAgent.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:

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

7 years agoWeb Inspector: Some basic InjectedScriptHost cleanup
commit-queue@webkit.org [Wed, 18 Dec 2013 06:24:10 +0000 (06:24 +0000)]
Web Inspector: Some basic InjectedScriptHost cleanup
https://bugs.webkit.org/show_bug.cgi?id=125902

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

Remove InjectedScriptHost::scriptDebugServer. Nobody accesses
the ScriptDebugServer through the injected script host. This
also lets us remove the reference to the DebuggerAgent.

* inspector/InjectedScriptHost.cpp:
* inspector/InjectedScriptHost.h:
(WebCore::InjectedScriptHost::init):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):

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

7 years agoWeb Inspector: Remove InspectorFrontendHost.setInjectedScriptForOrigin
commit-queue@webkit.org [Wed, 18 Dec 2013 06:22:58 +0000 (06:22 +0000)]
Web Inspector: Remove InspectorFrontendHost.setInjectedScriptForOrigin
https://bugs.webkit.org/show_bug.cgi?id=125906

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

Source/WebCore:

Remove stale code related to a since removed feature,
Inspector extensions. This allows us to remove a number
of entry points into InspectorAgent.

* inspector/InspectorAgent.cpp:
(WebCore::InspectorAgent::InspectorAgent):
(WebCore::InspectorAgent::willDestroyFrontendAndBackend):
* inspector/InspectorAgent.h:
(WebCore::InspectorAgent::create):
Remove setInjectedScriptForOrigin and InjectedScript management.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorController.h:
* inspector/InspectorFrontendHost.cpp:
* inspector/InspectorFrontendHost.h:
* inspector/InspectorFrontendHost.idl:
Remove the API and calling through InspectorController.

* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
(WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
Remove now unnecessary calls into InspectorAgent.

LayoutTests:

* http/tests/inspector/injected-script-for-origin-expected.txt: Removed.
* http/tests/inspector/injected-script-for-origin.html: Removed.
* http/tests/inspector/resources/injected-script-for-origin-frame.html: Removed.

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

7 years ago[GTK] Build fix after r160737
jae.park@company100.net [Wed, 18 Dec 2013 06:04:51 +0000 (06:04 +0000)]
[GTK] Build fix after r160737

Unreviewed.

Rename WebURLRequest to API::URLRequest

* GNUmakefile.list.am:
* UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
(didReceiveWebViewMessageFromInjectedBundle):
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
(webkitNavigationPolicyDecisionCreate):
* UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
(webkitResponsePolicyDecisionCreate):
* UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_load_request):
* UIProcess/API/gtk/WebKitWindowProperties.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame):

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

7 years agoFix TimeRanges::intersectWith
jer.noble@apple.com [Wed, 18 Dec 2013 05:37:02 +0000 (05:37 +0000)]
Fix TimeRanges::intersectWith
https://bugs.webkit.org/show_bug.cgi?id=118802

Source/WebCore:

Test: TestWebKitAPI/Tests/WebCore/TimeRanges.cpp.

Reviewed by Eric Carlson.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* html/TimeRanges.cpp:
(TimeRanges::invert):
(TimeRanges::intersectWith):

Merge
https://chromium.googlesource.com/chromium/blink/+/f557582b6c6283a8b165514f52d01cfd98130e85

Tools:

Reviewed by Eric Carlson.

Add unit tests for WebCore/TimeRanges.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/TimeRanges.cpp: Added.
(TestWebKitAPI::ToString):
(TestWebKitAPI::TEST):

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

7 years agoASSERT setting pseudoID with registered DOMSubtreeModified listener
eric.carlson@apple.com [Wed, 18 Dec 2013 04:32:23 +0000 (04:32 +0000)]
ASSERT setting pseudoID with registered DOMSubtreeModified listener
https://bugs.webkit.org/show_bug.cgi?id=125900

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/attribute-set-before-element-in-tree.html

* dom/Node.cpp:
(WebCore::Node::dispatchSubtreeModifiedEvent): Return early if the node does not have a
    parent and does not have a DOMSubtreeModified listener.

LayoutTests:

* fast/dom/attribute-set-before-element-in-tree-expected.txt: Added.
* fast/dom/attribute-set-before-element-in-tree.html: Added.

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

7 years agoRemove dead code for reflected attributes from audio, video, and track elements
rniwa@webkit.org [Wed, 18 Dec 2013 04:18:02 +0000 (04:18 +0000)]
Remove dead code for reflected attributes from audio, video, and track elements
https://bugs.webkit.org/show_bug.cgi?id=125838

Reviewed by Eric Carlson.

Merge https://chromium.googlesource.com/chromium/blink/+/310514e2f0fd934975b841d463bad0cd62e6fd64

Where [Reflect] is used in the IDL, the getters and setters in C++ are
only for internal convenience, and these were unused.

* html/HTMLMediaElement.cpp:
* html/HTMLMediaElement.h:
* html/HTMLTrackElement.cpp:
* html/HTMLTrackElement.h:
* html/HTMLVideoElement.cpp:
* html/HTMLVideoElement.h:

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

7 years agoBotwatcher's dashboard ceases to update itself after a while
ap@apple.com [Wed, 18 Dec 2013 03:25:51 +0000 (03:25 +0000)]
Botwatcher's dashboard ceases to update itself after a while
https://bugs.webkit.org/show_bug.cgi?id=125885

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
Removed code that checked for the view being hidden. It's none of model's business.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView): Find out what platform the view is for. Initlialize update timer.
(BuildbotQueueView.prototype._updateHiddenState): Start or stop update timer as appropriate.
We now stop the timer for hidden views.
(BuildbotQueueView.prototype._updateQueues): Removed the logic for ignoring some updates.

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

7 years agoUnreviewed build fix on EFL port after r160737
ryuan.choi@samsung.com [Wed, 18 Dec 2013 02:16:15 +0000 (02:16 +0000)]
Unreviewed build fix on EFL port after r160737

Rename WebURLRequest to API::URLRequest

* CMakeLists.txt:
* UIProcess/API/efl/ewk_url_request_private.h:

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

7 years agoRename "canRubberBands" to "canRubberBand"
simon.fraser@apple.com [Wed, 18 Dec 2013 02:00:45 +0000 (02:00 +0000)]
Rename "canRubberBands" to "canRubberBand"
https://bugs.webkit.org/show_bug.cgi?id=125897

Reviewed by Anders Carlsson.

Rename "canRubberBands" to "canRubberBand" in various places.

Source/WebCore:

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::setCanRubberBandState):
* page/scrolling/ScrollingTree.h:

Source/WebKit2:

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/WebPage/EventDispatcher.messages.in:

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