<rdar://problem/16319722> [Cocoa] WKHistoryDelegate is being called for subframes
https://bugs.webkit.org/show_bug.cgi?id=130228

Reviewed by Mark Rowe.

* UIProcess/Cocoa/HistoryClient.mm:
(WebKit::HistoryClient::didNavigateWithNavigationData): Bail out if the frame is not the
main frame.
(WebKit::HistoryClient::didPerformClientRedirect): Ditto.
(WebKit::HistoryClient::didPerformServerRedirect): Ditto.
(WebKit::HistoryClient::didUpdateHistoryTitle): Ditto.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use override keyword in BatteryManager
https://bugs.webkit.org/show_bug.cgi?id=130225

Reviewed by Daniel Bates.

* Modules/battery/BatteryManager.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165605 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reduce memory use for static property maps
https://bugs.webkit.org/show_bug.cgi?id=129986

Unreviewed Windows build fix / update bindings test results following r165603.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHashTable):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjAttrWithGetterException):
(WebCore::jsTestObjStringAttrWithGetterException):
(WebCore::jsTestObjWithScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::jsTestObjNullableStringValue):
(WebCore::jsTestObjPrototypeFunctionByteMethod):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethod):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethod):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethod):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
(WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
(WebCore::jsTestObjConstructorFunctionClassMethodWithOptional):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionStrictFunction):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithSequence):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithArray):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::jsTestTypedefsAttrWithGetterException):
(WebCore::jsTestTypedefsStringAttrWithGetterException):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSreadonly.cpp:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165606 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename DEFINE_STATIC_LOCAL to DEPRECATED_DEFINE_STATIC_LOCAL
https://bugs.webkit.org/show_bug.cgi?id=129612

Reviewed by Darin Adler.

For new code use static NeverDestroyed<T> instead.

Source/JavaScriptCore:

* API/JSAPIWrapperObject.mm:
(jsAPIWrapperObjectHandleOwner):
* API/JSManagedValue.mm:
(managedValueHandleOwner):
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::objectGroupForBreakpointAction):
* inspector/scripts/CodeGeneratorInspectorStrings.py:
* interpreter/JSStack.cpp:
(JSC::stackStatisticsMutex):
* jit/ExecutableAllocator.cpp:
(JSC::DemandExecutableAllocator::allocators):

Source/WebCore:

Removed the list of changed files as it was huge.

Source/WebKit/efl:

* WebCoreSupport/PlatformStrategiesEfl.cpp:
(PlatformStrategiesEfl::initialize):
* ewk/ewk_main.cpp:
(trackerClient):

Source/WebKit/ios:

* Misc/EmojiFallbackFontSelector.cpp:
(EmojiFallbackFontSelector::getFallbackFontData):
* WebCoreSupport/WebFixedPositionContent.mm:
(WebFixedPositionContentDataLock):

Source/WebKit/mac:

* History/WebBackForwardList.mm:
(backForwardLists):
* History/WebHistoryItem.mm:
(historyItemWrappers):
* Misc/WebNSPasteboardExtras.mm:
(+[NSPasteboard _web_writableTypesForURL]):
(_writableTypesForImageWithoutArchive):
(_writableTypesForImageWithArchive):
* Misc/WebStringTruncator.mm:
(fontFromNSFont):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::shared):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::pluginProxyMap):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::globalExceptionString):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::proxyClass):
* Plugins/WebNetscapePluginStream.mm:
(streams):
* Storage/WebDatabaseManager.mm:
(transactionBackgroundTaskIdentifierLock):
* WebCoreSupport/WebUserMediaClient.mm:
(userMediaRequestsMap):
* WebView/WebHTMLRepresentation.mm:
(regExpForLabels):
* WebView/WebView.mm:
(aeDescFromJSValue):

Source/WebKit/win:

* WebCoreSupport/WebPlatformStrategies.cpp:
(WebPlatformStrategies::initialize):
* WebHistory.cpp:
(sharedHistoryStorage):
* WebLocalizableStrings.cpp:
(mainBundleLocStrings):
(frameworkLocStringsMutex):
(frameworkLocStrings):
* WebView.cpp:
(WebView::standardUserAgentWithApplicationName):

Source/WebKit/wince:

* WebCoreSupport/FrameLoaderClientWinCE.cpp:
(WebKit::FrameLoaderClientWinCE::userAgent):
* WebCoreSupport/PlatformStrategiesWinCE.cpp:
(PlatformStrategiesWinCE::initialize):

Source/WebKit2:

* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
(WebKit::getIndexStatement):
(WebKit::getObjectStoreStatement):
* Shared/linux/SeccompFilters/SeccompBroker.cpp:
(WebKit::SeccompBrokerClient::shared):
* UIProcess/InspectorServer/WebInspectorServer.cpp:
(WebKit::WebInspectorServer::didReceiveWebSocketUpgradeHTTPRequest):

Source/WTF:

* wtf/RunLoop.cpp:
(WTF::RunLoop::current):
* wtf/StdLibExtras.h:
* wtf/ThreadingPthreads.cpp:
(WTF::threadMapMutex):
(WTF::threadMap):
* wtf/efl/MainThreadEfl.cpp:
(WTF::pipeObject):
* wtf/text/StringStatics.cpp:
(WTF::StringImpl::empty):

Tools:

* DumpRenderTree/JavaScriptThreading.cpp:
(javaScriptThreadsMutex):
(javaScriptThreads):
* DumpRenderTree/efl/EventSender.cpp:
(touchPointList):
(delayedEventQueue):
* DumpRenderTree/win/FrameLoadDelegate.cpp:
(delegatesWithDelayedWork):
* Scripts/check-for-exit-time-destructors:
* TestWebKitAPI/Tests/WebKit2/SeccompFilters.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(testsMap):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165607 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Migrate the MathML stretchy code from UChar to Glyph.
https://bugs.webkit.org/show_bug.cgi?id=128907

Reviewed by Chris Fleizach.

This prepares the MathML stretchy code for future support for the MATH
table. In particular, this uses the glyph index for measuring and
drawing instead of Unicode code point since the MATH table uses glyph
indices. Also, this merges the preferred width and stretchy character
selection into one common path since they will also have to share the
size variants measuring/selection. Finally, we expose a drawGlyphs()
method so that we can draw a glyph by index.

No new tests. This should not change the behavior of the stretchy code.

* platform/graphics/Font.h:
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawGlyphs):
* platform/graphics/GraphicsContext.h:
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::boundsForGlyph):
(WebCore::RenderMathMLOperator::heightForGlyph):
(WebCore::RenderMathMLOperator::advanceForGlyph):
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
(WebCore::RenderMathMLOperator::findStretchyData):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::firstLineBaseline):
(WebCore::RenderMathMLOperator::computeLogicalHeight):
(WebCore::RenderMathMLOperator::paintGlyph):
(WebCore::RenderMathMLOperator::fillWithExtensionGlyph):
(WebCore::RenderMathMLOperator::paint):
(WebCore::RenderMathMLOperator::paintChildren):
* rendering/mathml/RenderMathMLOperator.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@165608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix after r165607. There were two missing replaces.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* dom/Element.cpp:
(WebCore::attrNodeListMap):

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