- 29 Jan, 2013 40 commits
-
-
oliver@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108253 Reviewed by Mark Hahnenberg. When accessing methodTable() we now always make sure that our structure _could_ be valid. Added a separate method to get a classes methodTable during destruction as it's not possible to validate the structure at that point. This separation might also make it possible to improve the performance of methodTable access more generally in future. * heap/MarkedBlock.cpp: (JSC::MarkedBlock::callDestructor): * runtime/JSCell.h: (JSCell): * runtime/JSCellInlines.h: (JSC::JSCell::methodTableForDestruction): (JSC): (JSC::JSCell::methodTable): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141190 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108261 Reviewed by Oliver Hunt. Backends shouldn't override each other's methods. That's not cool. * offlineasm/mips.rb: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
aelias@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108232 Unreviewed, gardening. After https://codereview.chromium.org/12045002/, these tests are expected to fail. Disabling and creating bugs for follow-up. * platform/chromium/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
timothy_horton@apple.com authored
Reviewed by Simon Fraser. Only do the work if the tiled scrolling indicator/map is enabled. * platform/graphics/ca/mac/TileCache.mm: (WebCore::TileCache::setScrollingModeIndication): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141187 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
cfleizach@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108228 Reviewed by Ryosuke Niwa. Source/WebCore: Comboboxes behave much like textfields, and so they need to respond like text controls. Test: platform/mac/accessibility/combox-box-value.html * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isTextControl): (WebCore): * accessibility/AccessibilityObject.h: (AccessibilityObject): LayoutTests: * platform/mac/accessibility/combox-box-value-expected.txt: Added. * platform/mac/accessibility/combox-box-value.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108251 Reviewed by Mark Hahnenberg. Revert http://trac.webkit.org/changeset/141178 and rename 'dump' to 'clDump'. Also made trivial build fixes for !ENABLE(JIT). * offlineasm/cloop.rb: * runtime/Executable.h: (ExecutableBase): (JSC::ExecutableBase::intrinsicFor): * runtime/JSGlobalData.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
thakis@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108218 Reviewed by Adam Barth. Requested by darin in https://bugs.webkit.org/show_bug.cgi?id=107845 This also allows enabling -Wreturn-type-c-linkage again, but I'd like to wait for the next clang roll (which tweaks this warning) before undoing r140800 (which removed that warning). No behavior change. * bindings/v8/npruntime.cpp: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141184 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108258 Reviewed by Beth Dakin. * Platform/CoreIPC/Connection.h: (CoreIPC::Connection::send): (CoreIPC::Connection::sendSync): (CoreIPC::Connection::waitForAndDispatchImmediately): * Platform/CoreIPC/MessageSender.h: (CoreIPC::MessageSender::send): * Scripts/webkit2/messages.py: (surround_in_condition): (message_to_struct_declaration): (generate_messages_header): * Scripts/webkit2/messages_unittest.py: * Scripts/webkit2/model.py: (Message.__init__): * Shared/ChildProcessProxy.h: (WebKit::ChildProcessProxy::send): * Shared/WebConnection.cpp: (WebKit::WebConnection::postMessage): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141183 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108240 Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-29 Reviewed by Dirk Pranke. Added the ability to have MockWeb serve mock web data. * Scripts/webkitpy/common/host_mock.py: (MockHost.__init__): * Scripts/webkitpy/common/net/web_mock.py: (MockWeb.__init__): (MockWeb.get_binary): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
roger_fong@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108249 * platform/win/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141181 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108241 Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-29 Reviewed by Anders Carlsson. * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::addExistingWebPage): Remove erroneous semicolon following the if condition. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141180 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
ggaren@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108245 Reviewed by Filip Pizlo. ../JavaScriptCore: * GNUmakefile.list.am: * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: * JavaScriptCore.xcodeproj/project.pbxproj: * dfg/DFGRepatch.cpp: (JSC::DFG::emitPutReplaceStub): (JSC::DFG::emitPutTransitionStub): * dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::writeBarrier): * dfg/DFGSpeculativeJIT.h: (SpeculativeJIT): * dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::compile): * dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * heap/CardSet.h: Removed. * heap/Heap.cpp: (JSC::Heap::markRoots): (JSC::Heap::collect): * heap/Heap.h: (Heap): (JSC::Heap::shouldCollect): (JSC::Heap::isWriteBarrierEnabled): (JSC): (JSC::Heap::writeBarrier): * heap/MarkedBlock.h: (MarkedBlock): (JSC): * heap/MarkedSpace.cpp: (JSC): * jit/JITPropertyAccess.cpp: (JSC::JIT::emitWriteBarrier): ../WebCore: * ForwardingHeaders/heap/CardSet.h: Removed. * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141179 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
fpizlo@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108247 Reviewed by Oliver Hunt. Makes offlineasm dumping easier to read and less likely to cause assertion failures. Also fixes the strange situation where cloop.rb and ast.rb both defined dump methods, but cloop.rb was winning. * offlineasm/cloop.rb: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108244 Reviewed by Beth Dakin. * Platform/CoreIPC/MessageID.h: (CoreIPC::MessageID::MessageID): * Platform/CoreIPC/mac/ConnectionMac.cpp: (CoreIPC): (CoreIPC::Connection::sendOutgoingMessage): (CoreIPC::createMessageDecoder): (CoreIPC::Connection::receiveSourceEventHandler): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mhahnenberg@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=107839 Reviewed by Oliver Hunt. JSContext has a JSWrapperMap, which has an NSMutableDictionary m_classMap, which has values that are JSObjCClassInfo objects, which have strong references to two JSValue *'s, m_prototype and m_constructor, which in turn have strong references to the JSContext, creating a reference cycle. We should make m_prototype and m_constructor Weak<JSObject>. This gets rid of the strong reference to the JSContext and also prevents clients from accidentally creating reference cycles by assigning to the prototype of the constructor. If Weak<JSObject> fields are ever garbage collected, we will reallocate them. * API/JSContext.mm: (-[JSContext wrapperMap]): * API/JSContextInternal.h: * API/JSWrapperMap.mm: (-[JSObjCClassInfo initWithContext:forClass:superClassInfo:]): (-[JSObjCClassInfo dealloc]): (-[JSObjCClassInfo allocateConstructorAndPrototypeWithSuperClassInfo:]): (-[JSObjCClassInfo allocateConstructorAndPrototype]): (-[JSObjCClassInfo wrapperForObject:]): (-[JSObjCClassInfo constructor]): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
esprehn@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108209 Reviewed by Dimitri Glazkov. Source/WebCore: Many of the exception cases for ShadowRoot are actually impossible and should be asserts instead. We can also move the one case of exception logic, for elements that don't allow author shadows into Element::createShadowRoot instead of having it all over the ShadowRoot and ElementShadow classes. This is the first step in centralizing all ShadowRoot creation inside ElementShadow. No new tests, covered by existing tests. * WebCore.exp.in: * dom/Element.cpp: (WebCore::Element::createShadowRoot): Be explicit about what kind of ShadowRoot you're creating. (WebCore::Element::ensureUserAgentShadowRoot): No more exceptions. * dom/ElementShadow.cpp: (WebCore::ElementShadow::addShadowRoot): This never actually throws exceptions, remove ExceptionCode. * dom/ElementShadow.h: (ElementShadow): * dom/ShadowRoot.cpp: (WebCore::determineUsageType): Merge with Element::createShadowRoot. (WebCore): (WebCore::ShadowRoot::ShadowRoot): Moved Histogram logic here since it's actually about the constructor anyway. (WebCore::ShadowRoot::create): Removed overload that made the code less obvious. * dom/ShadowRoot.h: (ShadowRoot): * html/HTMLKeygenElement.cpp: (WebCore::HTMLKeygenElement::HTMLKeygenElement): * html/shadow/TextFieldDecorationElement.cpp: (WebCore::getDecorationRootAndDecoratedRoot): * testing/Internals.cpp: (WebCore::Internals::ensureShadowRoot): (WebCore::Internals::createShadowRoot): Source/WebKit/win: * WebKit.vcproj/WebKitExports.def.in: Swap ShadowRoot::create export with Element::createShadowRoot. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108234 Reviewed by Beth Dakin. Add explicit message receiver name equality checks instead of using MessageID::is. * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::didReceiveMessage): (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage): * Platform/CoreIPC/MessageID.h: * PluginProcess/WebProcessConnection.cpp: (WebKit::WebProcessConnection::didReceiveMessage): (WebKit::WebProcessConnection::didReceiveSyncMessage): * Shared/mac/SecItemShim.cpp: (WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue): * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::didReceiveMessage): * UIProcess/WebContext.cpp: (WebKit::WebContext::didReceiveMessage): (WebKit::WebContext::didReceiveSyncMessage): * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveMessage): (WebKit::WebPageProxy::didReceiveSyncMessage): * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::didReceiveMessage): (WebKit::WebProcessProxy::didReceiveSyncMessage): (WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue): * UIProcess/mac/SecItemShimProxy.cpp: (WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue): * WebProcess/Network/NetworkProcessConnection.cpp: (WebKit::NetworkProcessConnection::didReceiveMessage): (WebKit::NetworkProcessConnection::didReceiveSyncMessage): * WebProcess/Plugins/PluginProcessConnection.cpp: (WebKit::PluginProcessConnection::didReceiveSyncMessage): * WebProcess/WebPage/EventDispatcher.cpp: (WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue): * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didReceiveMessage): * WebProcess/WebProcess.cpp: (WebKit::WebProcess::didReceiveMessage): (WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jer.noble@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=103558 <rdar://problem/12763112> Reviewed by Benjamin Poulain. Source/WebKit/mac: Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder view when in full screen mode. Add a simple accessor for the existing placeholder view to WebFullScreenController and WebView. * WebView/WebFullScreenController.h: * WebView/WebFullScreenController.mm: (-[WebFullScreenController webViewPlaceholder]): Added simple accessor. * WebView/WebView.mm: (-[WebView fullScreenPlaceholderView]): Added simple accessor. Source/WebKit2: Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder view when in full screen mode. Add a simple accessor for the existing placeholder view to WKFullScreenWindowController and WKView. * UIProcess/API/mac/WKView.mm: (-[WKView fullScreenPlaceholderView]): Added simple accessor. * UIProcess/API/mac/WKViewPrivate.h: * UIProcess/mac/WKFullScreenWindowController.h: * UIProcess/mac/WKFullScreenWindowController.mm: (-[WKFullScreenWindowController webViewPlaceholder]): Added simple accessor. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141173 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jberlin@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108210 Reviewed by Ryosuke Niwa. * Scripts/run-api-tests: Add the option and use it to set the configuration product directory. Since it is supposed to point to the built products, do not build the products if root is specified (this mimics the behavior of run-javascriptcore-tests). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
[WK2] Call LayerTreeHost::deviceOrPageScaleFactorChanged() when a device or page scale factor is changed. https://bugs.webkit.org/show_bug.cgi?id=107802 Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-29 Reviewed by Simon Fraser. Currently, LayerTreeHostMac and *GTK call deviceOrPageScaleFactorChanged() of the non compositing GraphicsLayer when a device scale factor is changed. There are two problems. 1. We don't notify LayerTreeHost when a page scale factor is changed. 2. When using TiledCoreAnimationDrawingAreaProxy, LayerTreeHostMac does not receive the device scale factor changed callback. So this patch changes three points. 1. Rename from deviceScaleFactorDidChange() to deviceOrPageScaleFactorChanged() in LayerTreeHost. 2. WebPage::setDeviceScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange() because of dealing with TiledCoreAnimationDrawingAreaProxy. 3. WebPage::pageScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange() to call deviceOrPageScaleFactorChanged() of the non compositing GraphicsLayer. Unfortunately, I couldn't think of a way to test this in an automated fashion. * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): * WebProcess/WebPage/DrawingAreaImpl.cpp: (WebKit::DrawingAreaImpl::updateBackingStoreState): Don't call LayerTreeHost::deviceScaleFactorDidChange() because this method calls WebPage::setDeviceScaleFactor() and then LayerTreeHost::deviceScaleFactorDidChange() is called. * WebProcess/WebPage/LayerTreeHost.h: (LayerTreeHost): * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::scalePage): (WebKit::WebPage::setDeviceScaleFactor): * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: (WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged): * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: (LayerTreeHostGtk): * WebProcess/WebPage/mac/LayerTreeHostMac.h: (LayerTreeHostMac): * WebProcess/WebPage/mac/LayerTreeHostMac.mm: (WebKit::LayerTreeHostMac::deviceOrPageScaleFactorChanged): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108235 Reviewed by Beth Dakin. Just check for the message receiver name and message name explicitly instead. * Platform/CoreIPC/MessageID.h: (CoreIPC::MessageID::is): * Shared/CoreIPCSupport/WebContextMessageKinds.h: (WebContextLegacyMessage::messageReceiverName): (WebContextLegacyMessage): (WebContextLegacyMessage::postMessageMessageName): (WebContextLegacyMessage::postSynchronousMessageMessageName): * UIProcess/WebContext.cpp: (WebKit::WebContext::didReceiveMessage): (WebKit::WebContext::didReceiveSyncMessage): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
oliver@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108097 Reviewed by Geoffrey Garen. Source/JavaScriptCore: LiteralParser was accepting a bogus 'var a.b = c' statement * runtime/LiteralParser.cpp: (JSC::::tryJSONPParse): LayoutTests: Add parser test for invalid var a.b syntax * fast/js/parser-syntax-check-expected.txt: * fast/js/script-tests/parser-syntax-check.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141168 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108054 Patch by Kiran Muppala <cmuppala@apple.com> on 2013-01-29 Reviewed by Anders Carlsson. Provide a preference to enable process suppression in WebProcesses with no visible pages even if the application is not completely occluded. This provides more opportunities for process suppression to take effect. Replace the messaging of application occlusion status from UI process to ChildProcesses with messages that indicate the current required process suppression state. WebProcessProxy should determine if the process is eligible for process suppression based on both application occlusion and page visibility. When either of these parameters changes, the proxy should message the child process of the updated process suppression state. * NetworkProcess/NetworkProcess.messages.in: Rename SetApplicationIsOccluded to SetProcessSuppressionEnabled. * PluginProcess/PluginProcess.messages.in: Ditto. * Shared/ChildProcess.h: (WebKit::ChildProcess::processSuppressionEnabled): Rename applicationIsOccluded. * Shared/WebPreferencesStore.h: Add a new preference pageVisibilityBasedProcessSuppressionEnabled, to enabled/disable process suppression of WebProcesses when all pages are hidden. * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::setProcessSuppressionEnabled): Rename setApplicationIsOccluded. (WebKit::ChildProcess::platformInitialize): Replace call to setApplicationIsOccluded with setProcessSuppressionEnabled. * SharedWorkerProcess/SharedWorkerProcess.messages.in: Rename SetApplicationIsOccluded to SetProcessSuppressionEnabled. * UIProcess/API/C/WKPreferences.cpp: (WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled): (WKPreferencesGetPageVisibilityBasedProcessSuppressionEnabled): * UIProcess/API/C/WKPreferencesPrivate.h: * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::didFinishLaunching): Use setter to update process suppression state instead of messaging directly. Use WebContext::canEnableProcessSuppressionForNetworkProcess() helper method to determine if process suppression should be enabled. * UIProcess/Network/NetworkProcessProxy.h: Rename setApplicationIsOccluded to setProcessSuppresionEnabled. * UIProcess/Network/mac/NetworkProcessProxyMac.mm: (WebKit::NetworkProcessProxy::setProcessSuppressionEnabled): Ditto. * UIProcess/Plugins/PluginProcessManager.h: Ditto. * UIProcess/Plugins/PluginProcessProxy.cpp: (WebKit::PluginProcessProxy::didFinishLaunching): Use setter to update process suppression state instead of messaging directly. Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses() helper method to determine if process suppression should be enabled. * UIProcess/Plugins/PluginProcessProxy.h: Rename setApplicationIsOccluded to setProcessSuppresionEnabled. * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: (WebKit::PluginProcessManager::setProcessSuppressionEnabled): Ditto. * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: (WebKit::PluginProcessProxy::setProcessSuppressionEnabled): Ditto. * UIProcess/SharedWorkers/SharedWorkerProcessManager.h: Ditto. * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp: (WebKit::SharedWorkerProcessProxy::didFinishLaunching): Use setter to update process suppression state instead of messaging directly. Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses() helper method to determine if process suppression should be enabled. * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h: Rename setApplicationIsOccluded to setProcessSuppresionEnabled. * UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm: (WebKit::SharedWorkerProcessManager::setProcessSuppressionEnabled): Ditto. * UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm: (WebKit::SharedWorkerProcessProxy::setProcessSuppressionEnabled): Ditto. * UIProcess/WebContext.h: Replace applicationIsOccluded() getter with helper methods to determine if a child process can have process suppression enabled. * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::viewStateDidChange): Notify WebProcessProxy of page visibility change. (WebKit::WebPageProxy::preferencesDidChange): Notify WebProcessProxy of change in preferences. * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::WebProcessProxy): Initialize member variable tracking process suppression state to false. (WebKit::WebProcessProxy::createWebPage): Update set of pages which can be process suppressed and the resulting process suppression state for the child process. (WebKit::WebProcessProxy::addExistingWebPage): Ditto. (WebKit::WebProcessProxy::removeWebPage): Ditto. (WebKit::WebProcessProxy::pageVisibilityChanged): Ditto. (WebKit::WebProcessProxy::pagePreferencesChanged): Ditto. (WebKit::WebProcessProxy::didFinishLaunching): Call updateProcessSuppressionState(). * UIProcess/WebProcessProxy.h: * UIProcess/mac/WebContextMac.mm: (WebKit::updateProcessSuppressionStateOfGlobalChildProcesses): Use new helper method canEnableProcessSuppressionForGlobalChildProcesses() to determine if process suppression should be enabled. (WebKit::applicationOcclusionStateChanged): Update renamed methods and variables. (WebKit::enableOcclusionNotifications): Move OmitProcessSuppression user default check into canEnableProcessSuppression methods. (WebKit::omitProcessSuppression): (WebKit::WebContext::updateProcessSuppressionStateOfChildProcesses): Use new helper method canEnableProcessSuppressionForNetworkProcess() to determine if process suppression should be enabled for NetworkProcess. Let WebProcess update process suppression state based on application occlusion state and page visibility. (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess): (WebKit::WebContext::canEnableProcessSuppressionForWebProcess): (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses): (WebKit::WebContext::processSuppressionEnabledChanged): Reevaluate if process suppression is enabled for all contexts and update process suppression state of global child processes. * UIProcess/mac/WebProcessProxyMac.mm: (WebKit::WebProcessProxy::pageIsProcessSuppressible): (WebKit::WebProcessProxy::allPagesAreProcessSuppressible): (WebKit::WebProcessProxy::updateProcessSuppressionState): * WebProcess/WebProcess.messages.in: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
mark.lam@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=107784. Reviewed by Geoffrey Garen. DatabaseContext will no longer be a Supplement of ScriptExecutionContext. Instead we will maintain a mutex guarded contextMap in the DatabaseManager which maps ScriptExecutionContexts to DatabaseContexts. Also cleaned up the shutdown mechanism of the DatabaseContext, DatabaseThread, and Databases when their owner ScriptExecutionContext destructs. No new tests. * Modules/webdatabase/AbstractDatabase.cpp: (WebCore::AbstractDatabase::AbstractDatabase): * Modules/webdatabase/AbstractDatabase.h: (WebCore::AbstractDatabase::databaseContext): (AbstractDatabase): * Modules/webdatabase/Database.cpp: (WebCore::Database::Database): * Modules/webdatabase/Database.h: (WebCore): (Database): * Modules/webdatabase/DatabaseContext.cpp: (WebCore): (WebCore::DatabaseContext::DatabaseContext): (WebCore::DatabaseContext::~DatabaseContext): (WebCore::DatabaseContext::contextDestroyed): (WebCore::DatabaseContext::stop): (WebCore::DatabaseContext::databaseThread): (WebCore::DatabaseContext::stopDatabases): * Modules/webdatabase/DatabaseContext.h: (DatabaseContext): (WebCore::DatabaseContext::scriptExecutionContext): (WebCore::DatabaseContext::hasOpenDatabases): (WebCore::DatabaseContext::stopDatabases): * Modules/webdatabase/DatabaseManager.cpp: (WebCore::DatabaseManager::manager): (WebCore::DatabaseManager::DatabaseManager): (WebCore::DatabaseManager::getExistingDatabaseContext): (WebCore): (WebCore::DatabaseManager::getDatabaseContext): (WebCore::DatabaseManager::registerDatabaseContext): (WebCore::DatabaseManager::unregisterDatabaseContext): (WebCore::DatabaseManager::notifyDatabaseContextConstructed): (WebCore::DatabaseManager::notifyDatabaseContextDestructed): (WebCore::DatabaseManager::openDatabase): (WebCore::DatabaseManager::openDatabaseSync): (WebCore::DatabaseManager::hasOpenDatabases): (WebCore::DatabaseManager::stopDatabases): (WebCore::DatabaseManager::interruptAllDatabasesForContext): * Modules/webdatabase/DatabaseManager.h: (WebCore): (DatabaseManager): (WebCore::DatabaseManager::notifyDatabaseContextConstructed): (WebCore::DatabaseManager::notifyDatabaseContextDestructed): * Modules/webdatabase/DatabaseSync.cpp: (WebCore::DatabaseSync::DatabaseSync): * Modules/webdatabase/DatabaseSync.h: (WebCore): (DatabaseSync): * Modules/webdatabase/DatabaseThread.cpp: (WebCore::DatabaseThread::~DatabaseThread): (WebCore::DatabaseThread::requestTermination): * Modules/webdatabase/DatabaseTracker.cpp: (WebCore::DatabaseTracker::canEstablishDatabase): * dom/ActiveDOMObject.cpp: (WebCore::ActiveDOMObject::~ActiveDOMObject): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108227 Reviewed by Beth Dakin. Stop using the flags in MessageID and store the flags directly in the message instead. This is another step towards eliminating MessageID. * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::SyncMessageState::processIncomingMessage): (CoreIPC::Connection::createSyncMessageEncoder): (CoreIPC::Connection::sendMessage): (CoreIPC::Connection::sendSyncMessage): (CoreIPC::Connection::sendSyncMessageFromSecondaryThread): (CoreIPC::Connection::dispatchSyncMessage): (CoreIPC::Connection::dispatchMessage): * Platform/CoreIPC/Connection.h: * Platform/CoreIPC/MessageDecoder.cpp: (CoreIPC::MessageDecoder::MessageDecoder): (CoreIPC::MessageDecoder::isSyncMessage): (CoreIPC): (CoreIPC::MessageDecoder::shouldDispatchMessageWhenWaitingForSyncReply): * Platform/CoreIPC/MessageDecoder.h: (MessageDecoder): * Platform/CoreIPC/MessageEncoder.cpp: (CoreIPC): (CoreIPC::MessageEncoder::MessageEncoder): (CoreIPC::MessageEncoder::~MessageEncoder): (CoreIPC::MessageEncoder::setIsSyncMessage): (CoreIPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply): * Platform/CoreIPC/MessageEncoder.h: (MessageEncoder): * Platform/CoreIPC/MessageFlags.h: Copied from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h. (CoreIPC): * Platform/CoreIPC/MessageID.h: * WebKit2.xcodeproj/project.pbxproj: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141165 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
roger_fong@apple.com authored
They are all timing out due to some configuration problem on the bots. * platform/win/TestExpectations: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
jchaffraix@webkit.org authored
[CSS Grid Layout] Make resolveContentBasedTrackSizingFunctionsForItems reuse distributeSpaceToTracks https://bugs.webkit.org/show_bug.cgi?id=108110 Reviewed by Tony Chang. This change makes us match more closely the specification by reusing distributeSpaceToTracks inside resolveContentBasedTrackSizingFunctionsForItems. This also removes some existing code duplication. Refactoring covered by existing tests. * rendering/RenderGrid.cpp: (WebCore::RenderGrid::computedUsedBreadthOfGridTracks): Updated after distributeSpaceToTracks new arguments. Copying the tracks to a Vector<GridTrack*> is now done here. (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems): Removed code duplication and switched to using distributeSpaceToTracks. (WebCore::RenderGrid::distributeSpaceToTracks): Refactored distributeSpaceToTracks to implement the distribution of any extra space above max breadth as it was required to pass the tests (required to properly handling min-content > max). Also changed the arguments of the function to better match the intent of the function. * rendering/RenderGrid.h: Updated distributeSpaceToTracks's arguments. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
esprehn@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108207 Reviewed by Dimitri Glazkov. There's no reason to expose removeAllShadowRoots since the only legitimate place to call it is right as we're destroying the ElementShadow. No new tests, just refactoring. * dom/Element.cpp: (WebCore::Element::~Element): Remove call to removeAllShadowRoots() * dom/ElementShadow.h: (WebCore::ElementShadow::~ElementShadow): Call removeAllShadowRoots(). (ElementShadow): Make removeAllShadowRoots() private. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
junov@google.com authored
https://bugs.webkit.org/show_bug.cgi?id=107833 Reviewed by Simon Fraser. Source/WebCore: Regression caused by http://trac.webkit.org/changeset/135629 The regression was due to faulty occlusion logic that was assuming that drawing the background color of a render box background layer could be skipped when the same layer also has an opaque image attached. In the case where the background color is drawn for the purpose of rendering a box shadow, the shadow is typically not completely occluded by the background image because of the shadow blur and/or offset. This patch fixes the problem by not culling a background draw if it is used to draw a box shadow. Test: fast/backgrounds/gradient-background-shadow.html * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): Changing occlusion culling test to never cull background color draw if it is used to draw a box shadow. This is because box shadows can draw outside the border fill region. LayoutTests: New ref test verifies that box shadow is drawn when background is an opaque image. Test uses an blue gradient as background image. Reference uses blue background color. * fast/backgrounds/gradient-background-shadow-expected.html: Added. * fast/backgrounds/gradient-background-shadow.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
vollick@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=108211 Reviewed by Simon Fraser. No new tests, no change in functionality. * rendering/RenderLayer.h: (WebCore::RenderLayer::enclosingStackingContainer): This function is similar to RenderLayer::stackingContainer, but may return the layer itself if it's a stacking container. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
paroga@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=97592 Patch by Laszlo Gombos <l.gombos@samsung.com> on 2013-01-29 Reviewed by Kenneth Rohde Christiansen. Capture the minimum version information for the tools that are required to build WebKit for all CMake based build systems. * CMakeLists.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
paroga@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=108094 Reviewed by Ryosuke Niwa. TextBreakIteratorWinCE does not contain any Windows CE specific code. Rename it to TextBreakIteratorWchar to match the name in wtf/unicode. * platform/text/wchar/TextBreakIteratorWchar.cpp: Renamed from Source/WebCore/platform/text/wince/TextBreakIteratorWinCE.cpp. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
oliver@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108212 Reviewed by Mark Hahnenberg. Add a ContiguousData type that we use to represent contiguous property storage. In release builds it is simply a pointer to the correct type, but in debug builds it also carries the data length and performs bounds checks. This means we don't have to add as many manual bounds assertions when performing operations over contiguous data. * dfg/DFGOperations.cpp: * runtime/ArrayStorage.h: (ArrayStorage): (JSC::ArrayStorage::vector): * runtime/Butterfly.h: (JSC::ContiguousData::ContiguousData): (ContiguousData): (JSC::ContiguousData::operator[]): (JSC::ContiguousData::data): (JSC::ContiguousData::length): (JSC): (JSC::Butterfly::contiguousInt32): (Butterfly): (JSC::Butterfly::contiguousDouble): (JSC::Butterfly::contiguous): * runtime/JSArray.cpp: (JSC::JSArray::sortNumericVector): (ContiguousTypeAccessor): (JSC::ContiguousTypeAccessor::getAsValue): (JSC::ContiguousTypeAccessor::setWithValue): (JSC::ContiguousTypeAccessor::replaceDataReference): (JSC): (JSC::JSArray::sortCompactedVector): (JSC::JSArray::sort): (JSC::JSArray::fillArgList): (JSC::JSArray::copyToArguments): * runtime/JSArray.h: (JSArray): * runtime/JSObject.cpp: (JSC::JSObject::copyButterfly): (JSC::JSObject::visitButterfly): (JSC::JSObject::createInitialInt32): (JSC::JSObject::createInitialDouble): (JSC::JSObject::createInitialContiguous): (JSC::JSObject::convertUndecidedToInt32): (JSC::JSObject::convertUndecidedToDouble): (JSC::JSObject::convertUndecidedToContiguous): (JSC::JSObject::convertInt32ToDouble): (JSC::JSObject::convertInt32ToContiguous): (JSC::JSObject::genericConvertDoubleToContiguous): (JSC::JSObject::convertDoubleToContiguous): (JSC::JSObject::rageConvertDoubleToContiguous): (JSC::JSObject::ensureInt32Slow): (JSC::JSObject::ensureDoubleSlow): (JSC::JSObject::ensureContiguousSlow): (JSC::JSObject::rageEnsureContiguousSlow): (JSC::JSObject::ensureLengthSlow): * runtime/JSObject.h: (JSC::JSObject::ensureInt32): (JSC::JSObject::ensureDouble): (JSC::JSObject::ensureContiguous): (JSC::JSObject::rageEnsureContiguous): (JSObject): (JSC::JSObject::indexingData): (JSC::JSObject::currentIndexingData): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
wangxianzhu@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=107599 Reviewed by Adam Barth. When applyDeviceScaleFactorInCompositor, targetScale should exclude device scale factor. When applyPageScaleFactorInCompositor, caret size and content sizes are in css pixels and they should be in the viewport of the new scale. * src/WebViewImpl.cpp: (WebKit::WebViewImpl::scrollFocusedNodeIntoRect): (WebKit): (WebKit::WebViewImpl::computeScaleAndScrollForFocusedNode): Extracted from scrollFocusedNodeIntoRect() to ease testing. * src/WebViewImpl.h: (WebViewImpl): * tests/WebFrameTest.cpp: Updated test DivScrollEditableTest * tests/data/get_scale_for_zoom_into_editable_test.html: Moved the logic of onload script (which seems not to work) into WebFrameTest.cpp. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bruno.abinader@basyskom.com authored
https://bugs.webkit.org/show_bug.cgi?id=108122 Reviewed by Antonio Gomes. Adds fullscreen mode toggle (F11) option to MiniBrowser using native API. * MiniBrowser/efl/main.c: (on_key_down): Add 'F11' key handler. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
tommyw@google.com authored
MediaStream API: A MediaStreamComponent should be able to return the MediaStreamDescriptor it belongs to https://bugs.webkit.org/show_bug.cgi?id=108173 Reviewed by Adam Barth. Source/Platform: * chromium/public/WebMediaStreamComponent.h: (WebKit): (WebMediaStreamComponent): Source/WebCore: To be able to return the MediaStreamDescriptor a MediaStreamComponent belongs to the "ownership" of the MediaStreamDescriptor needed to move from a MediaStreamTrack to the MediaStreamComponent. This is also better from an architectonic view as well. Patch covered by existing tests. * Modules/mediastream/MediaStream.cpp: (WebCore::MediaStream::MediaStream): (WebCore::MediaStream::addTrack): (WebCore::MediaStream::addRemoteTrack): * Modules/mediastream/MediaStreamTrack.cpp: (WebCore::MediaStreamTrack::create): (WebCore::MediaStreamTrack::MediaStreamTrack): (WebCore::MediaStreamTrack::setEnabled): * Modules/mediastream/MediaStreamTrack.h: (MediaStreamTrack): * Modules/mediastream/RTCStatsRequestImpl.cpp: (WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl): * platform/chromium/support/WebMediaStreamComponent.cpp: (WebKit::WebMediaStreamComponent::stream): (WebKit): * platform/mediastream/MediaStreamComponent.h: (WebCore): (WebCore::MediaStreamComponent::create): (MediaStreamComponent): (WebCore::MediaStreamComponent::stream): (WebCore::MediaStreamComponent::setStream): (WebCore::MediaStreamComponent::MediaStreamComponent): * platform/mediastream/MediaStreamDescriptor.h: (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
andersca@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=108208 Reviewed by Beth Dakin. This is another step towards getting rid of MessageID. * Platform/CoreIPC/ArgumentDecoder.cpp: (CoreIPC::ArgumentDecoder::decodeUInt8): (CoreIPC): * Platform/CoreIPC/ArgumentDecoder.h: (ArgumentDecoder): (CoreIPC::ArgumentDecoder::decode): (CoreIPC): * Platform/CoreIPC/ArgumentEncoder.cpp: (CoreIPC::ArgumentEncoder::encode): (CoreIPC): * Platform/CoreIPC/ArgumentEncoder.h: (ArgumentEncoder): * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendMessage): * Platform/CoreIPC/MessageDecoder.cpp: (CoreIPC::MessageDecoder::MessageDecoder): * Platform/CoreIPC/MessageDecoder.h: (CoreIPC::MessageDecoder::messageSendFlags): (MessageDecoder): * Platform/CoreIPC/MessageEncoder.cpp: (CoreIPC): (CoreIPC::MessageEncoder::MessageEncoder): (CoreIPC::MessageEncoder::~MessageEncoder): (CoreIPC::MessageEncoder::setMessageSendFlags): * Platform/CoreIPC/MessageEncoder.h: (MessageEncoder): * UIProcess/Authentication/AuthenticationChallengeProxy.h: (CoreIPC): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141150 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bfulgham@webkit.org authored
* JavaScriptCore.vcxproj/JavaScriptCoreExports.def: Update symbols to match JavaScriptCore.vcproj version. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141149 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
commit-queue@webkit.org authored
Current error reporting method used by check-layout.js should not affect subsequent sub-tests using checking data-offset-y. https://bugs.webkit.org/show_bug.cgi?id=105407 Patch by Pravin D <pravind.2k4@gmail.com> on 2013-01-29 Reviewed by Tony Chang. When a testcase is processed by check-layout.js, the result is written just after the node being processed. This causes offsetTop of subsequent sub-testcases to altered. If however if we process the nodes in the reverse order in which they appear in the DOM tree, the result of node being processed will not affect the offsetTop of susequent nodes. * resources/check-layout.js: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
alecflett@chromium.org authored
https://bugs.webkit.org/show_bug.cgi?id=103920 Reviewed by Dimitri Glazkov. Source/WebCore: Update IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded to pass through a metadata parameter. While there, remove the unused IDBTransactionBackendInterface parameter to onUpgradeNeeded. As this is another step in the IDB refactor, I've simplified future cleanup work by making the WebKit API code still use the old API. This will make it possible to outright remove code on the chromium side rather than another three-step checkin. No new tests, as this is more refactoring. * Modules/indexeddb/IDBCallbacks.h: (WebCore::IDBCallbacks::onUpgradeNeeded): new method signature. (WebCore::IDBCallbacks::onSuccess): new method signature. * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform): (WebCore::IDBDatabaseBackendImpl::processPendingCalls): (WebCore::IDBDatabaseBackendImpl::openConnection): * Modules/indexeddb/IDBOpenDBRequest.cpp: (WebCore::IDBOpenDBRequest::onUpgradeNeeded): use passed-in metadata. (WebCore::IDBOpenDBRequest::onSuccess): use passed-in metadata. * Modules/indexeddb/IDBOpenDBRequest.h: (IDBOpenDBRequest): Source/WebKit/chromium: Support the new IDBCallbacks::onSuccess and IDBCallbacks::onUpgradeNeeded while maintaining chromium compatibility by shimming in the old API in the WebKit side. Future code will clean this up so that it is just a pass-through as it was before. * public/WebIDBCallbacks.h: (WebKit): (WebKit::WebIDBCallbacks::onSuccess): new method signature. (WebKit::WebIDBCallbacks::onUpgradeNeeded): new method signature. * src/IDBCallbacksProxy.cpp: (WebKit::IDBCallbacksProxy::onSuccess): call on new method signature proxies through old API. (WebKit): (WebKit::IDBCallbacksProxy::onUpgradeNeeded): call on new method signature proxies through old API. * src/IDBCallbacksProxy.h: (IDBCallbacksProxy): * src/WebIDBCallbacksImpl.cpp: (WebKit::WebIDBCallbacksImpl::onSuccess): call on old WebKit proxy signature calls new API. (WebKit): (WebKit::WebIDBCallbacksImpl::onUpgradeNeeded): call on old WebKit proxy signature calls new API. * src/WebIDBCallbacksImpl.h: (WebIDBCallbacksImpl): * tests/IDBAbortOnCorruptTest.cpp: new method signature. (WebCore::MockIDBCallbacks::onSuccess): * tests/IDBDatabaseBackendTest.cpp: new method signature. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141142 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-