run-perf-tests should have a --repeat option
https://bugs.webkit.org/show_bug.cgi?id=100030

Reviewed by Ryosuke Niwa.

Add --repeat option to run-perf-tests, with default value of 1. When greater
than 1, runs test set specified number of times. Note that multiple runs are
not aggregated for statistical purposes.

Incidentally fixed typo: s/suceeds/succeeds/.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args): Add repeat option.
(PerfTestsRunner.run): Add outer repeat loop.
(PerfTestsRunner._generate_results): Split from original _generate_and_show_results.
(PerfTestsRunner._upload_and_show_results): Split from original _generate_and_show_results.
* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
(MainTest._test_run_with_json_output): Add repeat optional argument for generating expected logs. Fix typo.
(MainTest._test_run_with_json_output.mock_upload_json): Fix typo.
(MainTest.test_run_with_json_output): Fix typo.
(MainTest.test_run_with_description): Fix typo.
(MainTest.test_run_respects_no_results): Fix typo.
(MainTest.test_run_with_slave_config_json): Fix typo.
(MainTest.test_run_with_multiple_repositories): Fix typo.
(MainTest.test_run_with_upload_json): Fix typo.
(MainTest.test_run_with_upload_json_should_generate_perf_webkit_json): Fix typo.
(MainTest.test_run_with_repeat): Added new test for repeat count semantics.
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(MainTest.test_parse_args): Add test for repeat option parsing.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding id attribute test for MediaStream
https://bugs.webkit.org/show_bug.cgi?id=111526

Reviewed by Kentaro Hara.

Spec: http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStream-id
The id strings must only use characters in the ranges U+0021, U+0023 to U+0027,
U+002A to U+002B, U+002D to U+002E, U+0030 to U+0039, U+0041 to U+005A,
U+005E to U+007E, and must be 36 characters long.

* fast/mediastream/MediaStreamConstructor-expected.txt:
* fast/mediastream/MediaStreamConstructor.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reduce page cache size on Mac
https://bugs.webkit.org/show_bug.cgi?id=111795

Rubber stamped by Geoff Garen

5 entries is unnecessarily large; research show 3 should suffice.
On a low memory warning we should clear this completely.

Source/WebCore: 

* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::releaseMemory):
    - clear the page cache completely

Source/WebKit2: 

* Shared/CacheModel.cpp:
(WebKit::calculateCacheSizes):
    - reduce maximum to 3.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening.

* platform/chromium-linux/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-paint-phases-expected.txt: Added.
* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-paint-phases-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Need API to draw custom overhang area
https://bugs.webkit.org/show_bug.cgi?id=111679
-and corresponding-
<rdar://problem/13291415>

Reviewed by Simon Fraser.

Source/WebCore: 

This will allow clients to put custom images into the top or bottom overhang area.

New FrameView API takes a bool indicating whether the client wants a top/bottom 
overhang layer. If the bool is true, the overhang layer will be returned. 
* WebCore.exp.in:
* page/FrameView.cpp:
(WebCore::FrameView::setWantsLayerForTopOverHangArea):
(WebCore::FrameView::setWantsLayerForBottomOverHangArea):
* page/FrameView.h:
(FrameView):

Keep member variables for the top and bottom overhang layers. Create them if 
necessary, and update them if the root layer changes.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
(WebCore::RenderLayerCompositor::updateLayerForTopOverhangArea):
(WebCore::RenderLayerCompositor::updateLayerForBottomOverhangArea):
(WebCore::RenderLayerCompositor::reportMemoryUsage):
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):

Source/WebKit2: 

The new API is WKBundlePageSetTopOverhangImage() and 
WKBundlePageSetBottomOverhangImage(). When the API is called, WebPage will get 
GraphicsLayers for the appropriate area from FrameView, and then set the image as 
the contents of the layer.

* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSetTopOverhangImage):
(WKBundlePageSetBottomOverhangImage):
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/WebPage/WebPage.h:
(WebPage):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::setTopOverhangImage):
(WebKit):
(WebKit::WebPage::setBottomOverhangImage):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening.

* platform/chromium/TestExpectations: fast/events/before-unload-adopt-subframe-to-outside.html

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add myself to reviewers.py
https://bugs.webkit.org/show_bug.cgi?id=111757

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-03-07
Reviewed by Eric Seidel.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145158 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Compute WebGL context attributes from DrawingBuffer when it is used
https://bugs.webkit.org/show_bug.cgi?id=111666

Reviewed by James Robinson.

Fixed computation of antialias flag when DrawingBuffer is used.

No new tests; covered by existing tests. Ran WebGL conformance
tests on desktop Linux and Android to test.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::getContextAttributes):
    Query DrawingBuffer, when used, for antialias flag.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Roll out an accidentally committed change I made for local testing.

        * http/tests/misc/empty-file-formdata.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CFNetwork cache partitioning does not work properly on subdomains
https://bugs.webkit.org/show_bug.cgi?id=111772

Reviewed by David Kilzer.

Source/WebCore:

Ensure that the cache partitioning is done over the top privately-controlled domain for the NSURLRequest.

Not possible to test with current automated test tools, must be tested manually.

* loader/cache/MemoryCache.cpp: Remove extraneous calls to partitionName
(WebCore):
(WebCore::MemoryCache::add):
(WebCore::MemoryCache::revalidationSucceeded):
(WebCore::MemoryCache::resourceForRequest):
(WebCore::MemoryCache::evict):
(WebCore::MemoryCache::removeResourcesWithOrigin):
* platform/network/cf/ResourceRequest.h: Put top privately-controlled domain reduction code into ResourceRequest::partitionName
(ResourceRequest):
(WebCore::ResourceRequest::cachePartition):
(WebCore::ResourceRequest::setCachePartition): Pre-process the partition name
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore):
(WebCore::ResourceRequest::partitionName):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest): Use a UTF-8 version of the cache partition name

Source/WebKit2:

Ensure that the CFString is UTF-8 so that WKCFURLCacheCopyAllHostNamesInPersistentStoreForPartition will always work.

* WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:
(WebKit::partitionName): Create a UTF-8 CFString explicitly

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Heap-use-after-free in WebCore::HTMLMediaElement::~HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=110623

Reviewed by Kentaro Hara.

Source/WebCore:

Test: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html

* bindings/v8/V8GCController.cpp: Fix MinorGCWrapperVisitor so it doesn't collect ActiveDOMObjects
                                  that have pending activity.
* html/HTMLAudioElement.h:
(HTMLAudioElement): Removed hasPendingActivity() now that this is handled by the base class.
* html/HTMLAudioElement.idl: Removed ActiveDOMObject annotation since HTMLMediaElement now has it.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::hasPendingActivity): Update implementation to return true if the media
                                                 has audio and is playing. This brings the code into
                                                 compliance with the detached element behavior outlined
                                                 in the HTML5 spec.
* html/HTMLMediaElement.idl: Added ActiveDOMObject annotation so that all derived classes are
                             considered ActiveDOMObjects.

LayoutTests:

* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal-expected.txt: Added.
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html: Added.
* http/tests/misc/resources/delete-frame-during-readystatechange-frame-with-gc-after-video-removal.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] RefCounting ParsedCookie to avoid SegFaults
https://bugs.webkit.org/show_bug.cgi?id=111761

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-03-07
Reviewed by Rob Buis.

Source/WebCore:

Making necessary changes to ref count the ParsedCookie object.

Tested using the opera cookie test suite and the BB Browser cookie test suite.
Tested using the browser, visiting popular sites such as facebook, reddit, google etc
to ensure cookie functionality isn't changed.

* loader/blackberry/CookieJarBlackBerry.cpp:
(WebCore::getRawCookies):
* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
(WebCore::CookieDatabaseBackingStore::insert):
(WebCore::CookieDatabaseBackingStore::update):
(WebCore::CookieDatabaseBackingStore::remove):
(WebCore::CookieDatabaseBackingStore::getCookiesFromDatabase):
(WebCore::CookieDatabaseBackingStore::invokeGetCookiesWithLimit):
(WebCore::CookieDatabaseBackingStore::invokeSendChangesToDatabase):
(WebCore::CookieDatabaseBackingStore::addToChangeQueue):
* platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
(CookieDatabaseBackingStore):
* platform/blackberry/CookieManager.cpp:
(WebCore::cookieSorter):
(WebCore::CookieManager::setCookies):
(WebCore::CookieManager::getCookie):
(WebCore::CookieManager::generateHtmlFragmentForCookies):
(WebCore::CookieManager::getRawCookies):
(WebCore::CookieManager::checkAndTreatCookie):
(WebCore::CookieManager::addCookieToMap):
(WebCore::CookieManager::getBackingStoreCookies):
(WebCore::CookieManager::findOrCreateCookieMap):
(WebCore::CookieManager::removeCookieWithName):
(WebCore::CookieManager::cookieLimitCleanUp):
* platform/blackberry/CookieManager.h:
* platform/blackberry/CookieMap.cpp:
(WebCore::CookieMap::addOrReplaceCookie):
(WebCore::CookieMap::removeCookieAtIndex):
(WebCore::CookieMap::removeCookie):
(WebCore::CookieMap::getAllCookies):
(WebCore::CookieMap::removeOldestCookie):
(WebCore::CookieMap::deleteAllCookiesAndDomains):
(WebCore::CookieMap::getAllChildCookies):
* platform/blackberry/CookieMap.h:
(CookieMap):
* platform/blackberry/CookieParser.cpp:
(WebCore):
(WebCore::CookieParser::parse):
(WebCore::CookieParser::parseOneCookie):
* platform/blackberry/CookieParser.h:
(CookieParser):
* platform/blackberry/ParsedCookie.cpp:
* platform/blackberry/ParsedCookie.h:
(ParsedCookie):
(WebCore::ParsedCookie::create):

Source/WebKit/blackberry:

Making necessary changes to ref-count the ParsedCookie object.

* Api/WebCookieJar.cpp:
(BlackBerry::WebKit::WebCookieJar::cookies):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebPageProxy::exceededDatabaseQuota() needs to be serialized.
https://bugs.webkit.org/show_bug.cgi?id=111631.

Reviewed by Geoffrey Garen.

Previously, WebPageProxy::exceededDatabaseQuota() is called synchronously
with script execution in the WebProcess. Hence, it is never called in a
recursive manner.

In webkit2, we can have multiple WebProcesses concurrently triggering a
call to this function. While the function is waiting on feedback from a
UI dialog, the wait loop may re-enter the function to service a second
request to call this function from another WebProcess. This results in
problems where some of the WebProcesses will not get a proper reply, and
therefore hangs perpetually waiting for a non-forthcoming reply.

This changeset changes the function to queue the requests and ensure
that we do not recursively callback to the UI client.

* Platform/CoreIPC/HandleMessage.h:
(CoreIPC::callMemberFunction):
* UIProcess/WebPageProxy.cpp:
(ExceededDatabaseQuotaRecords):
(Record):
(WebKit::ExceededDatabaseQuotaRecords::areBeingProcessed):
(WebKit::ExceededDatabaseQuotaRecords::ExceededDatabaseQuotaRecords):
(WebKit::ExceededDatabaseQuotaRecords::~ExceededDatabaseQuotaRecords):
(WebKit::ExceededDatabaseQuotaRecords::shared):
(WebKit::ExceededDatabaseQuotaRecords::createRecord):
(WebKit::ExceededDatabaseQuotaRecords::add):
(WebKit::ExceededDatabaseQuotaRecords::next):
(WebKit::WebPageProxy::exceededDatabaseQuota):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix commented out code in LayoutTests/http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html
https://bugs.webkit.org/show_bug.cgi?id=111800

Unreviewed.

* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145165 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Use WeakPtr for Factory-to-BackingStore reference
https://bugs.webkit.org/show_bug.cgi?id=111459

Reviewed by Adam Barth.

Source/WebCore:

IDBFactoryBackendImpl maintains a map of backing stores - if another database in the same
origin is opened, the backing store instance must be re-used). This was a map to raw
pointers so that the backing store can be collected when all database references are
dropped. The map was maintained manually by passing the factory to the IDBBackingStore which
would add/remove itself on creation/destruction.

Replace this with a HashMap<WeakPtr<>>. This simplifies the plumbing; map entries
"leak" but are purged on subsequent opens.

Added webkit_unit_test (Chromium port) to verify refcounts.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore): No need to notify factory of lifetime.
(WebCore::IDBBackingStore::~IDBBackingStore): Ditto.
(WebCore::IDBBackingStore::open): Ditto.
* Modules/indexeddb/IDBBackingStore.h: No reference to the factory, but...
(WebCore::IDBBackingStore::createWeakPtr): Do need to expose weak pointers for the factory to hold.
* Modules/indexeddb/IDBFactoryBackendImpl.cpp:
(WebCore::cleanWeakMap): Helper function to scrub a HashMap<WeakPtr<T>> of empty pointers.
May move to WTF when we've learned how general it is, or come up with a dedicated WeakPtrHashMap type.
(WebCore::IDBFactoryBackendImpl::openBackingStore): WeakPtr fu.
* Modules/indexeddb/IDBFactoryBackendImpl.h:
(IDBFactoryBackendImpl): Remove plumbing methods.

Source/WebKit/chromium:

Added tests to verify refcounts on backing stores, update method signatures.

* tests/IDBBackingStoreTest.cpp:
(WebCore::IDBBackingStoreTest::SetUp): No dummy factory needed.
(MockIDBFactoryBackend): Expose protected method to tests.
(WebCore::TEST): Added BackingStoreLifetime test.
* tests/IDBCleanupOnIOErrorTest.cpp: No dummy factory needed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't try to create a sandbox extension when path is empty
https://bugs.webkit.org/show_bug.cgi?id=111788

Reviewed by Anders Carlsson.

* Shared/FileAPI/BlobRegistrationData.cpp:
(WebKit::BlobRegistrationData::BlobRegistrationData): Skip File objects with empty
paths to avoid logging an error to console.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove desktop version of -webkit-text-size-adjust property.
<http://webkit.org/b/56543>
<rdar://problem/9150203>

Reviewed by Simon Fraser.

Source/WebCore:

This property existed to support a number of Apple-internal clients of WebKit.
We no longer need this property, and since it's clashing with a mobile version of the
same property with different meaning, let's remove it altogether from the desktop build.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLengthDouble):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/StyleBuilder.cpp:
(WebCore::ApplyPropertyLineHeight::applyValue):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::updateFont):
(WebCore::StyleResolver::applyProperties):
(WebCore::StyleResolver::applyProperty):
* css/StyleResolver.h:
(StyleResolver):
* css/svg.css:
* editing/EditingStyle.cpp:
* inspector/front-end/inspector.css:
(#console-messages):
* inspector/front-end/resourcesPanel.css:
(.storage-view.query):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
* rendering/style/StyleRareInheritedData.h:
(StyleRareInheritedData):

LayoutTests:

* editing/pasteboard/5078739.html:
* editing/pasteboard/data-transfer-items-expected.txt:
* editing/pasteboard/onpaste-text-html-expected.txt:
* fast/css/font-size-nan.svg:
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/resources/property-names.js:
* fast/css/ignore-text-zoom.html: Removed.
* fast/css/text-rendering-priority.html:
* fast/events/ondrop-text-html-expected.txt:
* platform/chromium-linux/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/chromium-mac-lion/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/chromium-mac/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/chromium-win/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/chromium-win/fast/css/ignore-text-zoom-expected.txt: Removed.
* platform/chromium/fast/css/ignore-text-zoom-expected.txt: Removed.
* platform/efl/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/efl/fast/css/ignore-text-zoom-expected.txt: Removed.
* platform/gtk/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/gtk/fast/css/ignore-text-zoom-expected.txt: Removed.
* platform/mac/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/mac/fast/css/ignore-text-zoom-expected.txt: Removed.
* platform/qt/fast/css/ignore-text-zoom-expected.png: Removed.
* platform/qt/fast/css/ignore-text-zoom-expected.txt: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145168 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Resizing Cappuccino is very laggy on WebKit since Safari 5.1
<http://webkit.org/b/71354>
<rdar://problem/10565998>

Reviewed by Anders Carlsson.

Source/WebCore:

* WebCore.exp.in: Export FloatPoint(const NSPoint&)

Source/WebKit2:

On Mac, we already cache the window rect through the WindowAndViewFramesChanged
message, so simply return that in WebChromeClient::windowRect() instead of
sending a synchronous query to the UIProcess.

If a programmatic resize is requested, we bypass the cache until we've received
a new WindowAndViewFramesChanged message. This compromise allows us to return
cached rects in the common case, and handles creating a new window and immediately
resizing it gracefully.

Changed WindowAndViewFramesChanged to pass FloatRect/FloatPoint rather than
IntRect/IntPoint to match the ChromeClient::windowRect() return type.

* UIProcess/API/mac/WKView.mm:
(-[WKView _updateWindowAndViewFrames]):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::windowAndViewFramesChanged):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::windowAndViewFramesChanged):
* WebProcess/Plugins/PluginView.h:
(PluginView):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::setWindowRect):
(WebKit::WebChromeClient::windowRect):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::sendSetWindowFrame):
(WebKit::WebPage::windowAndViewFramesChanged):
* WebProcess/WebPage/WebPage.h:
(WebPage):
(WebKit::WebPage::windowFrameInScreenCoordinates):
(WebKit::WebPage::viewFrameInWindowCoordinates):
(WebKit::WebPage::hasCachedWindowFrame):
(WebKit::WebPage::accessibilityPosition):
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add didFocusTextField:inFrame to WebFormDelegate
https://bugs.webkit.org/show_bug.cgi?id=111804

Reviewed by Dan Bernstein.

* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::focusedNodeChanged):
* WebView/WebFormDelegate.h:
* WebView/WebFormDelegate.m:
(-[WebFormDelegate didFocusTextField:inFrame:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r143759): 40% JSBench regression, 20% Octane/closure regression, 40% Octane/jquery regression, 2% Octane regression
https://bugs.webkit.org/show_bug.cgi?id=111797

Reviewed by Oliver Hunt.

The bot's testing configuration stresses the cache's starting guess
of 1MB.

This patch removes any starting guess, and just uses wall clock time
to discover the initial working set size of an app, in code size.

* runtime/CodeCache.cpp:
(JSC::CodeCacheMap::pruneSlowCase): Update our timer as we go.

Also fixed a bug where pruning from 0 to 0 would hang -- that case is
a possibility now that we start with a capacity of 0.

* runtime/CodeCache.h:
(CodeCacheMap):
(JSC::CodeCacheMap::CodeCacheMap):
(JSC::CodeCacheMap::add):
(JSC::CodeCacheMap::prune): Don't prune if we're in the middle of
discovering the working set size of an app, in code size.


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