diff options
Diffstat (limited to 'WebKit/chromium/src')
32 files changed, 277 insertions, 140 deletions
diff --git a/WebKit/chromium/src/AssertMatchingEnums.cpp b/WebKit/chromium/src/AssertMatchingEnums.cpp index c6ab85a..3fffd60 100644 --- a/WebKit/chromium/src/AssertMatchingEnums.cpp +++ b/WebKit/chromium/src/AssertMatchingEnums.cpp @@ -344,6 +344,7 @@ COMPILE_ASSERT_MATCHING_ENUM(WebScrollbar::ScrollByPixel, ScrollByPixel); COMPILE_ASSERT_MATCHING_ENUM(WebSettings::EditingBehaviorMac, EditingMacBehavior); COMPILE_ASSERT_MATCHING_ENUM(WebSettings::EditingBehaviorWin, EditingWindowsBehavior); +COMPILE_ASSERT_MATCHING_ENUM(WebSettings::EditingBehaviorUnix, EditingUnixBehavior); COMPILE_ASSERT_MATCHING_ENUM(WebTextAffinityUpstream, UPSTREAM); COMPILE_ASSERT_MATCHING_ENUM(WebTextAffinityDownstream, DOWNSTREAM); diff --git a/WebKit/chromium/src/ChromeClientImpl.cpp b/WebKit/chromium/src/ChromeClientImpl.cpp index df13b29..18f7a02 100644 --- a/WebKit/chromium/src/ChromeClientImpl.cpp +++ b/WebKit/chromium/src/ChromeClientImpl.cpp @@ -252,6 +252,10 @@ void ChromeClientImpl::focusedNodeChanged(Node* node) m_webView->client()->setKeyboardFocusURL(focusURL); } +void ChromeClientImpl::focusedFrameChanged(Frame*) +{ +} + Page* ChromeClientImpl::createWindow( Frame* frame, const FrameLoadRequest& r, const WindowFeatures& features, const NavigationAction&) { diff --git a/WebKit/chromium/src/ChromeClientImpl.h b/WebKit/chromium/src/ChromeClientImpl.h index 039fc1b..87c1653 100644 --- a/WebKit/chromium/src/ChromeClientImpl.h +++ b/WebKit/chromium/src/ChromeClientImpl.h @@ -70,6 +70,7 @@ public: virtual bool canTakeFocus(WebCore::FocusDirection); virtual void takeFocus(WebCore::FocusDirection); virtual void focusedNodeChanged(WebCore::Node*); + virtual void focusedFrameChanged(WebCore::Frame*); virtual WebCore::Page* createWindow( WebCore::Frame*, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&, const WebCore::NavigationAction&); virtual void show(); @@ -174,6 +175,10 @@ public: virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const; virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const; +#if ENABLE(CONTEXT_MENUS) + virtual void showContextMenu() { } +#endif + private: void getPopupMenuInfo(WebCore::PopupContainer*, WebPopupMenuInfo*); diff --git a/WebKit/chromium/src/ChromiumBridge.cpp b/WebKit/chromium/src/ChromiumBridge.cpp index 1af32cf..39d2566 100644 --- a/WebKit/chromium/src/ChromiumBridge.cpp +++ b/WebKit/chromium/src/ChromiumBridge.cpp @@ -345,6 +345,11 @@ bool ChromiumBridge::getFileSize(const String& path, long long& result) return webKitClient()->fileUtilities()->getFileSize(path, result); } +void ChromiumBridge::revealFolderInOS(const String& path) +{ + webKitClient()->fileUtilities()->revealFolderInOS(path); +} + bool ChromiumBridge::getFileModificationTime(const String& path, time_t& result) { double modificationTime; diff --git a/WebKit/chromium/src/Extensions3DChromium.cpp b/WebKit/chromium/src/Extensions3DChromium.cpp new file mode 100644 index 0000000..c36040b --- /dev/null +++ b/WebKit/chromium/src/Extensions3DChromium.cpp @@ -0,0 +1,84 @@ +/* + * Copyright (C) 2010 Google Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "config.h" + +#if ENABLE(3D_CANVAS) + +#include "Extensions3DChromium.h" + +#include "GraphicsContext3D.h" +#include "GraphicsContext3DInternal.h" + +namespace WebCore { + +Extensions3DChromium::Extensions3DChromium(GraphicsContext3DInternal* internal) + : m_internal(internal) +{ +} + +Extensions3DChromium::~Extensions3DChromium() +{ +} + +bool Extensions3DChromium::supports(const String& name) +{ + return m_internal->supportsExtension(name); +} + +int Extensions3DChromium::getGraphicsResetStatusARB() +{ + // FIXME: implement this in GraphicsContext3DInternal / WebGraphicsContext3DInternal. + return GraphicsContext3D::NO_ERROR; +} + +void* Extensions3DChromium::mapBufferSubDataCHROMIUM(unsigned target, int offset, int size, unsigned access) +{ + return m_internal->mapBufferSubDataCHROMIUM(target, offset, size, access); +} + +void Extensions3DChromium::unmapBufferSubDataCHROMIUM(const void* data) +{ + m_internal->unmapBufferSubDataCHROMIUM(data); +} + +void* Extensions3DChromium::mapTexSubImage2DCHROMIUM(unsigned target, int level, int xoffset, int yoffset, int width, int height, unsigned format, unsigned type, unsigned access) +{ + return m_internal->mapTexSubImage2DCHROMIUM(target, level, xoffset, yoffset, width, height, format, type, access); +} + +void Extensions3DChromium::unmapTexSubImage2DCHROMIUM(const void* data) +{ + m_internal->unmapTexSubImage2DCHROMIUM(data); +} + +void Extensions3DChromium::copyTextureToParentTextureCHROMIUM(unsigned texture, unsigned parentTexture) +{ + m_internal->copyTextureToParentTextureCHROMIUM(texture, parentTexture); +} + +} // namespace WebCore + +#endif // ENABLE(3D_CANVAS) diff --git a/WebKit/chromium/src/ExternalPopupMenu.cpp b/WebKit/chromium/src/ExternalPopupMenu.cpp index a0243eb..0f208fb 100644 --- a/WebKit/chromium/src/ExternalPopupMenu.cpp +++ b/WebKit/chromium/src/ExternalPopupMenu.cpp @@ -98,15 +98,26 @@ void ExternalPopupMenu::didChangeSelection(int index) void ExternalPopupMenu::didAcceptIndex(int index) { + // Calling methods on the PopupMenuClient might lead to this object being + // derefed. This ensures it does not get deleted while we are running this + // method. + RefPtr<ExternalPopupMenu> guard(this); + if (m_popupMenuClient) { m_popupMenuClient->valueChanged(index); - m_popupMenuClient->popupDidHide(); + // The call to valueChanged above might have lead to a call to + // disconnectClient, so we might not have a PopupMenuClient anymore. + if (m_popupMenuClient) + m_popupMenuClient->popupDidHide(); } m_webExternalPopupMenu = 0; } void ExternalPopupMenu::didCancel() { + // See comment in didAcceptIndex on why we need this. + RefPtr<ExternalPopupMenu> guard(this); + if (m_popupMenuClient) m_popupMenuClient->popupDidHide(); m_webExternalPopupMenu = 0; diff --git a/WebKit/chromium/src/FrameLoaderClientImpl.cpp b/WebKit/chromium/src/FrameLoaderClientImpl.cpp index 29141ac..ef28981 100644 --- a/WebKit/chromium/src/FrameLoaderClientImpl.cpp +++ b/WebKit/chromium/src/FrameLoaderClientImpl.cpp @@ -288,7 +288,7 @@ void FrameLoaderClientImpl::assignIdentifierToInitialRequest( // this includes images and xmlhttp requests. It is important to note that a // subresource is NOT limited to stuff loaded through the frame's subresource // loader. Synchronous xmlhttp requests for example, do not go through the -// subresource loader, but we still label them as TargetIsSubResource. +// subresource loader, but we still label them as TargetIsSubresource. // // The important edge cases to consider when modifying this function are // how synchronous resource loads are treated during load/unload threshold. @@ -1389,9 +1389,13 @@ void FrameLoaderClientImpl::didTransferChildFrameToNewDocument(Page*) m_webFrame->setClient(newParent->client()); } -void FrameLoaderClientImpl::transferLoadingResourceFromPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*) +void FrameLoaderClientImpl::transferLoadingResourceFromPage(unsigned long identifier, DocumentLoader* loader, const ResourceRequest& request, Page* oldPage) { - notImplemented(); + assignIdentifierToInitialRequest(identifier, loader, request); + + WebFrameImpl* oldWebFrame = WebFrameImpl::fromFrame(oldPage->mainFrame()); + if (oldWebFrame && oldWebFrame->client()) + oldWebFrame->client()->removeIdentifierForRequest(identifier); } PassRefPtr<Widget> FrameLoaderClientImpl::createPlugin( diff --git a/WebKit/chromium/src/GraphicsContext3DChromium.cpp b/WebKit/chromium/src/GraphicsContext3DChromium.cpp index afc2707..4d9e40b 100644 --- a/WebKit/chromium/src/GraphicsContext3DChromium.cpp +++ b/WebKit/chromium/src/GraphicsContext3DChromium.cpp @@ -39,6 +39,7 @@ #include "CanvasRenderingContext.h" #include "Chrome.h" #include "ChromeClientImpl.h" +#include "Extensions3DChromium.h" #include "GraphicsContext3DInternal.h" #include "HTMLCanvasElement.h" #include "HTMLImageElement.h" @@ -83,6 +84,7 @@ namespace WebCore { GraphicsContext3DInternal::GraphicsContext3DInternal() : m_webViewImpl(0) + , m_initializedAvailableExtensions(false) #if PLATFORM(SKIA) #elif PLATFORM(CG) , m_renderOutput(0) @@ -108,6 +110,7 @@ bool GraphicsContext3DInternal::initialize(GraphicsContext3D::Attributes attrs, webAttributes.stencil = attrs.stencil; webAttributes.antialias = attrs.antialias; webAttributes.premultipliedAlpha = attrs.premultipliedAlpha; + webAttributes.canRecoverFromContextLoss = attrs.canRecoverFromContextLoss; WebKit::WebGraphicsContext3D* webContext = WebKit::webKitClient()->createGraphicsContext3D(); if (!webContext) return false; @@ -675,13 +678,31 @@ DELEGATE_TO_IMPL_1(deleteShader, unsigned) DELEGATE_TO_IMPL_1(deleteTexture, unsigned) DELEGATE_TO_IMPL_1(synthesizeGLError, unsigned long) -DELEGATE_TO_IMPL_R(supportsBGRA, bool) -DELEGATE_TO_IMPL_R(supportsMapSubCHROMIUM, bool) + +Extensions3D* GraphicsContext3DInternal::getExtensions() +{ + if (!m_extensions) + m_extensions = adoptPtr(new Extensions3DChromium(this)); + return m_extensions.get(); +} + +bool GraphicsContext3DInternal::supportsExtension(const String& name) +{ + if (!m_initializedAvailableExtensions) { + String extensionsString = getString(GraphicsContext3D::EXTENSIONS); + Vector<String> availableExtensions; + extensionsString.split(" ", availableExtensions); + for (size_t i = 0; i < availableExtensions.size(); ++i) + m_availableExtensions.add(availableExtensions[i]); + m_initializedAvailableExtensions = true; + } + return m_availableExtensions.contains(name); +} + DELEGATE_TO_IMPL_4R(mapBufferSubDataCHROMIUM, unsigned, int, int, unsigned, void*) DELEGATE_TO_IMPL_1(unmapBufferSubDataCHROMIUM, const void*) DELEGATE_TO_IMPL_9R(mapTexSubImage2DCHROMIUM, unsigned, int, int, int, int, int, unsigned, unsigned, unsigned, void*) DELEGATE_TO_IMPL_1(unmapTexSubImage2DCHROMIUM, const void*) -DELEGATE_TO_IMPL_R(supportsCopyTextureToParentTextureCHROMIUM, bool) DELEGATE_TO_IMPL_2(copyTextureToParentTextureCHROMIUM, unsigned, unsigned) //---------------------------------------------------------------------- @@ -1023,14 +1044,7 @@ DELEGATE_TO_INTERNAL_1(deleteShader, unsigned) DELEGATE_TO_INTERNAL_1(deleteTexture, unsigned) DELEGATE_TO_INTERNAL_1(synthesizeGLError, unsigned long) -DELEGATE_TO_INTERNAL_R(supportsBGRA, bool) -DELEGATE_TO_INTERNAL_R(supportsMapSubCHROMIUM, bool) -DELEGATE_TO_INTERNAL_4R(mapBufferSubDataCHROMIUM, unsigned, int, int, unsigned, void*) -DELEGATE_TO_INTERNAL_1(unmapBufferSubDataCHROMIUM, const void*) -DELEGATE_TO_INTERNAL_9R(mapTexSubImage2DCHROMIUM, unsigned, int, int, int, int, int, unsigned, unsigned, unsigned, void*) -DELEGATE_TO_INTERNAL_1(unmapTexSubImage2DCHROMIUM, const void*) -DELEGATE_TO_INTERNAL_R(supportsCopyTextureToParentTextureCHROMIUM, bool) -DELEGATE_TO_INTERNAL_2(copyTextureToParentTextureCHROMIUM, unsigned, unsigned) +DELEGATE_TO_INTERNAL_R(getExtensions, Extensions3D*) bool GraphicsContext3D::isGLES2Compliant() const { @@ -1047,11 +1061,6 @@ bool GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses() const return m_internal->isErrorGeneratedOnOutOfBoundsAccesses(); } -int GraphicsContext3D::getGraphicsResetStatusARB() -{ - return NO_ERROR; -} - } // namespace WebCore #endif // ENABLE(3D_CANVAS) diff --git a/WebKit/chromium/src/GraphicsContext3DInternal.h b/WebKit/chromium/src/GraphicsContext3DInternal.h index f12fff0..17163a4 100644 --- a/WebKit/chromium/src/GraphicsContext3DInternal.h +++ b/WebKit/chromium/src/GraphicsContext3DInternal.h @@ -27,6 +27,7 @@ #define GraphicsContext3DInternal_h #include "GraphicsContext3D.h" +#include <wtf/HashSet.h> #include <wtf/OwnPtr.h> #if PLATFORM(SKIA) #include "SkBitmap.h" @@ -39,6 +40,7 @@ class WebViewImpl; namespace WebCore { +class Extensions3DChromium; #if USE(ACCELERATED_COMPOSITING) class WebGLLayerChromium; #endif @@ -260,7 +262,9 @@ public: void synthesizeGLError(unsigned long error); - void swapBuffers(); + // Extensions3D support. + Extensions3D* getExtensions(); + bool supportsExtension(const String& name); // EXT_texture_format_BGRA8888 bool supportsBGRA(); @@ -278,7 +282,10 @@ public: private: OwnPtr<WebKit::WebGraphicsContext3D> m_impl; + OwnPtr<Extensions3DChromium> m_extensions; WebKit::WebViewImpl* m_webViewImpl; + bool m_initializedAvailableExtensions; + HashSet<String> m_availableExtensions; #if USE(ACCELERATED_COMPOSITING) RefPtr<WebGLLayerChromium> m_compositingLayer; #endif diff --git a/WebKit/chromium/src/IDBTransactionBackendProxy.cpp b/WebKit/chromium/src/IDBTransactionBackendProxy.cpp index 4b19ee4..7a88b13 100644 --- a/WebKit/chromium/src/IDBTransactionBackendProxy.cpp +++ b/WebKit/chromium/src/IDBTransactionBackendProxy.cpp @@ -84,11 +84,6 @@ void IDBTransactionBackendProxy::didCompleteTaskEvents() m_webIDBTransaction->didCompleteTaskEvents(); } -int IDBTransactionBackendProxy::id() const -{ - return m_webIDBTransaction->id(); -} - void IDBTransactionBackendProxy::setCallbacks(IDBTransactionCallbacks* callbacks) { m_webIDBTransaction->setCallbacks(new WebIDBTransactionCallbacksImpl(callbacks)); diff --git a/WebKit/chromium/src/IDBTransactionBackendProxy.h b/WebKit/chromium/src/IDBTransactionBackendProxy.h index 0c56f19..0bf84da 100644 --- a/WebKit/chromium/src/IDBTransactionBackendProxy.h +++ b/WebKit/chromium/src/IDBTransactionBackendProxy.h @@ -47,7 +47,6 @@ public: virtual void abort(); virtual bool scheduleTask(PassOwnPtr<ScriptExecutionContext::Task>, PassOwnPtr<ScriptExecutionContext::Task>); virtual void didCompleteTaskEvents(); - virtual int id() const; virtual void setCallbacks(IDBTransactionCallbacks*); WebKit::WebIDBTransaction* getWebIDBTransaction() const { return m_webIDBTransaction.get(); } diff --git a/WebKit/chromium/src/LocalFileSystemChromium.cpp b/WebKit/chromium/src/LocalFileSystemChromium.cpp index 25b1feb..a9c61d0 100644 --- a/WebKit/chromium/src/LocalFileSystemChromium.cpp +++ b/WebKit/chromium/src/LocalFileSystemChromium.cpp @@ -57,13 +57,21 @@ LocalFileSystem& LocalFileSystem::localFileSystem() return *localFileSystem; } +void LocalFileSystem::readFileSystem(ScriptExecutionContext* context, AsyncFileSystem::Type type, long long size, PassOwnPtr<AsyncFileSystemCallbacks> callbacks) +{ + ASSERT(context && context->isDocument()); + Document* document = static_cast<Document*>(context); + WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame()); + webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, false, new WebFileSystemCallbacksImpl(callbacks)); +} + void LocalFileSystem::requestFileSystem(ScriptExecutionContext* context, AsyncFileSystem::Type type, long long size, PassOwnPtr<AsyncFileSystemCallbacks> callbacks, bool synchronous) { ASSERT(context); if (context->isDocument()) { Document* document = static_cast<Document*>(context); WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame()); - webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, new WebFileSystemCallbacksImpl(callbacks)); + webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, true, new WebFileSystemCallbacksImpl(callbacks)); } else { WorkerContext* workerContext = static_cast<WorkerContext*>(context); WorkerLoaderProxy* workerLoaderProxy = &workerContext->thread()->workerLoaderProxy(); diff --git a/WebKit/chromium/src/WebAccessibilityObject.cpp b/WebKit/chromium/src/WebAccessibilityObject.cpp index 96a3173..9df69cf 100644 --- a/WebKit/chromium/src/WebAccessibilityObject.cpp +++ b/WebKit/chromium/src/WebAccessibilityObject.cpp @@ -351,7 +351,7 @@ WebRect WebAccessibilityObject::boundingBoxRect() const return WebRect(); m_private->updateBackingStore(); - return m_private->documentFrameView()->contentsToWindow(m_private->boundingBoxRect()); + return m_private->boundingBoxRect(); } WebString WebAccessibilityObject::helpText() const diff --git a/WebKit/chromium/src/WebAnimationControllerImpl.cpp b/WebKit/chromium/src/WebAnimationControllerImpl.cpp index 15df140..e6eb828 100644 --- a/WebKit/chromium/src/WebAnimationControllerImpl.cpp +++ b/WebKit/chromium/src/WebAnimationControllerImpl.cpp @@ -94,7 +94,7 @@ void WebAnimationControllerImpl::suspendAnimations() const return; if (!m_frameImpl->frame()) return; - controller->suspendAnimations(m_frameImpl->frame()->document()); + controller->suspendAnimations(); } void WebAnimationControllerImpl::resumeAnimations() const @@ -104,7 +104,7 @@ void WebAnimationControllerImpl::resumeAnimations() const return; if (!m_frameImpl->frame()) return; - controller->resumeAnimations(m_frameImpl->frame()->document()); + controller->resumeAnimations(); } } // namespace WebKit diff --git a/WebKit/chromium/src/WebCache.cpp b/WebKit/chromium/src/WebCache.cpp index c124bdf..2203498 100644 --- a/WebKit/chromium/src/WebCache.cpp +++ b/WebKit/chromium/src/WebCache.cpp @@ -31,20 +31,20 @@ #include "config.h" #include "WebCache.h" -// Instead of providing accessors, we make all members of Cache public. -// This will make it easier to track WebCore changes to the Cache class. -// FIXME: We should introduce public getters on the Cache class. +// Instead of providing accessors, we make all members of MemoryCache public. +// This will make it easier to track WebCore changes to the MemoryCache class. +// FIXME: We should introduce public getters on the MemoryCache class. #define private public -#include "Cache.h" +#include "MemoryCache.h" #undef private using namespace WebCore; namespace WebKit { -// A helper method for coverting a Cache::TypeStatistic to a +// A helper method for coverting a MemoryCache::TypeStatistic to a // WebCache::ResourceTypeStat. -static void ToResourceTypeStat(const Cache::TypeStatistic& from, +static void ToResourceTypeStat(const MemoryCache::TypeStatistic& from, WebCache::ResourceTypeStat& to) { to.count = static_cast<size_t>(from.count); @@ -56,7 +56,7 @@ static void ToResourceTypeStat(const Cache::TypeStatistic& from, void WebCache::setCapacities( size_t minDeadCapacity, size_t maxDeadCapacity, size_t capacity) { - Cache* cache = WebCore::cache(); + MemoryCache* cache = WebCore::cache(); if (cache) cache->setCapacities(static_cast<unsigned int>(minDeadCapacity), static_cast<unsigned int>(maxDeadCapacity), @@ -65,7 +65,7 @@ void WebCache::setCapacities( void WebCache::clear() { - Cache* cache = WebCore::cache(); + MemoryCache* cache = WebCore::cache(); if (cache && !cache->disabled()) { cache->setDisabled(true); cache->setDisabled(false); @@ -76,7 +76,7 @@ void WebCache::getUsageStats(UsageStats* result) { ASSERT(result); - Cache* cache = WebCore::cache(); + MemoryCache* cache = WebCore::cache(); if (cache) { result->minDeadCapacity = cache->m_minDeadCapacity; result->maxDeadCapacity = cache->m_maxDeadCapacity; @@ -89,9 +89,9 @@ void WebCache::getUsageStats(UsageStats* result) void WebCache::getResourceTypeStats(ResourceTypeStats* result) { - Cache* cache = WebCore::cache(); + MemoryCache* cache = WebCore::cache(); if (cache) { - Cache::Statistics stats = cache->getStatistics(); + MemoryCache::Statistics stats = cache->getStatistics(); ToResourceTypeStat(stats.images, result->images); ToResourceTypeStat(stats.cssStyleSheets, result->cssStyleSheets); ToResourceTypeStat(stats.scripts, result->scripts); diff --git a/WebKit/chromium/src/WebDevToolsAgentImpl.cpp b/WebKit/chromium/src/WebDevToolsAgentImpl.cpp index 9b7b2bd..880adb4 100644 --- a/WebKit/chromium/src/WebDevToolsAgentImpl.cpp +++ b/WebKit/chromium/src/WebDevToolsAgentImpl.cpp @@ -177,7 +177,6 @@ WebDevToolsAgentImpl::WebDevToolsAgentImpl( , m_client(client) , m_webViewImpl(webViewImpl) , m_apuAgentEnabled(false) - , m_resourceTrackingWasEnabled(false) , m_attached(false) { DebuggerAgentManager::setExposeV8DebuggerProtocol( @@ -264,20 +263,12 @@ void WebDevToolsAgentImpl::setApuAgentEnabled(bool enabled) if (enabled) { if (!ic->hasFrontend()) connectFrontend(true); - m_resourceTrackingWasEnabled = ic->resourceTrackingEnabled(); + ic->startTimelineProfiler(); - if (!m_resourceTrackingWasEnabled) { - // TODO(knorton): Introduce some kind of agents dependency here so that - // user could turn off resource tracking while apu agent is on. - ic->setResourceTrackingEnabled(true); - } m_debuggerAgentImpl->setAutoContinueOnException(true); - } else { + } else ic->stopTimelineProfiler(); - if (!m_resourceTrackingWasEnabled) - ic->setResourceTrackingEnabled(false); - m_resourceTrackingWasEnabled = false; - } + m_client->runtimePropertyChanged( kApuAgentFeatureName, enabled ? String("true") : String("false")); diff --git a/WebKit/chromium/src/WebDevToolsAgentImpl.h b/WebKit/chromium/src/WebDevToolsAgentImpl.h index 47c4ccf..feb4bdd 100644 --- a/WebKit/chromium/src/WebDevToolsAgentImpl.h +++ b/WebKit/chromium/src/WebDevToolsAgentImpl.h @@ -109,7 +109,6 @@ private: WebViewImpl* m_webViewImpl; OwnPtr<DebuggerAgentImpl> m_debuggerAgentImpl; bool m_apuAgentEnabled; - bool m_resourceTrackingWasEnabled; bool m_attached; }; diff --git a/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp b/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp index 905bc6d..ea59ab6 100644 --- a/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp +++ b/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp @@ -92,7 +92,6 @@ WebDevToolsFrontendImpl::WebDevToolsFrontendImpl( : m_webViewImpl(webViewImpl) , m_client(client) , m_applicationLocale(applicationLocale) - , m_loaded(false) { InspectorController* ic = m_webViewImpl->page()->inspectorController(); ic->setInspectorFrontendClient(new InspectorFrontendClientImpl(m_webViewImpl->page(), m_client, this)); @@ -113,7 +112,9 @@ void WebDevToolsFrontendImpl::dispatchOnInspectorFrontend(const WebString& messa v8::Handle<v8::Context> frameContext = V8Proxy::context(frame->frame()); v8::Context::Scope contextScope(frameContext); v8::Handle<v8::Value> dispatchFunction = frameContext->Global()->Get(v8::String::New("WebInspector_syncDispatch")); - ASSERT(dispatchFunction->IsFunction()); + // The frame might have navigated away from the front-end page (which is still weird). + if (!dispatchFunction->IsFunction()) + return; v8::Handle<v8::Function> function = v8::Handle<v8::Function>::Cast(dispatchFunction); Vector< v8::Handle<v8::Value> > args; args.append(ToV8String(message)); diff --git a/WebKit/chromium/src/WebDevToolsFrontendImpl.h b/WebKit/chromium/src/WebDevToolsFrontendImpl.h index bde906f..866a1cb 100644 --- a/WebKit/chromium/src/WebDevToolsFrontendImpl.h +++ b/WebKit/chromium/src/WebDevToolsFrontendImpl.h @@ -73,7 +73,6 @@ private: WebKit::WebViewImpl* m_webViewImpl; WebKit::WebDevToolsFrontendClient* m_client; String m_applicationLocale; - bool m_loaded; }; } // namespace WebKit diff --git a/WebKit/chromium/src/WebFrameImpl.cpp b/WebKit/chromium/src/WebFrameImpl.cpp index b4d23c0..41b8321 100644 --- a/WebKit/chromium/src/WebFrameImpl.cpp +++ b/WebKit/chromium/src/WebFrameImpl.cpp @@ -486,7 +486,7 @@ WebFrame* WebFrame::fromFrameOwnerElement(const WebElement& element) WebString WebFrameImpl::name() const { - return m_frame->tree()->name(); + return m_frame->tree()->uniqueName(); } void WebFrameImpl::setName(const WebString& name) @@ -986,7 +986,7 @@ WebHistoryItem WebFrameImpl::previousHistoryItem() const // only get saved to history when it becomes the previous item. The caller // is expected to query the history item after a navigation occurs, after // the desired history item has become the previous entry. - return WebHistoryItem(viewImpl()->previousHistoryItem()); + return WebHistoryItem(m_frame->loader()->history()->previousItem()); } WebHistoryItem WebFrameImpl::currentHistoryItem() const diff --git a/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.cpp b/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.cpp index e805c55..4cb701f 100644 --- a/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.cpp +++ b/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.cpp @@ -40,7 +40,8 @@ #include "WebView.h" #include <wtf/OwnArrayPtr.h> #include <wtf/PassOwnPtr.h> -#include <wtf/text/CString.h> +#include <wtf/text/StringBuilder.h> +#include <wtf/text/WTFString.h> #include <stdio.h> #include <string.h> @@ -48,8 +49,6 @@ namespace WebKit { enum { - IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B, - IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A, MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB, MAX_VARYING_VECTORS = 0x8DFC, MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD @@ -531,20 +530,6 @@ void WebGraphicsContext3DDefaultImpl::synthesizeGLError(unsigned long error) m_syntheticErrors.add(error); } -bool WebGraphicsContext3DDefaultImpl::supportsBGRA() -{ - // Supported since OpenGL 1.2. However, glTexImage2D() must be modified - // to translate the internalFormat from GL_BGRA to GL_RGBA, since the - // former is not accepted by desktop GL. Return false until this is done. - return false; -} - -bool WebGraphicsContext3DDefaultImpl::supportsMapSubCHROMIUM() -{ - // We don't claim support for this extension at this time - return false; -} - void* WebGraphicsContext3DDefaultImpl::mapBufferSubDataCHROMIUM(unsigned target, int offset, int size, unsigned access) { return 0; @@ -563,15 +548,11 @@ void WebGraphicsContext3DDefaultImpl::unmapTexSubImage2DCHROMIUM(const void* mem { } -bool WebGraphicsContext3DDefaultImpl::supportsCopyTextureToParentTextureCHROMIUM() -{ - // This extension requires this desktopGL-only function (GLES2 doesn't - // support it), so check for its existence here. - return glGetTexLevelParameteriv; -} - void WebGraphicsContext3DDefaultImpl::copyTextureToParentTextureCHROMIUM(unsigned id, unsigned id2) { + if (!glGetTexLevelParameteriv) + return; + makeContextCurrent(); glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_copyTextureToParentTextureFBO); glFramebufferTexture2DEXT(GL_FRAMEBUFFER, @@ -855,16 +836,7 @@ DELEGATE_TO_GL(finish, Finish) DELEGATE_TO_GL(flush, Flush) -void WebGraphicsContext3DDefaultImpl::framebufferRenderbuffer(unsigned long target, unsigned long attachment, - unsigned long renderbuffertarget, WebGLId buffer) -{ - makeContextCurrent(); - if (attachment == GL_DEPTH_STENCIL_ATTACHMENT) { - glFramebufferRenderbufferEXT(target, GL_DEPTH_ATTACHMENT, renderbuffertarget, buffer); - glFramebufferRenderbufferEXT(target, GL_STENCIL_ATTACHMENT, renderbuffertarget, buffer); - } else - glFramebufferRenderbufferEXT(target, attachment, renderbuffertarget, buffer); -} +DELEGATE_TO_GL_4(framebufferRenderbuffer, FramebufferRenderbufferEXT, unsigned long, unsigned long, unsigned long, WebGLId) DELEGATE_TO_GL_5(framebufferTexture2D, FramebufferTexture2DEXT, unsigned long, unsigned long, unsigned long, WebGLId, long) @@ -979,21 +951,12 @@ void WebGraphicsContext3DDefaultImpl::getFramebufferAttachmentParameteriv(unsign void WebGraphicsContext3DDefaultImpl::getIntegerv(unsigned long pname, int* value) { - // Need to emulate IMPLEMENTATION_COLOR_READ_FORMAT/TYPE for GL. Any valid - // combination should work, but GL_RGB/GL_UNSIGNED_BYTE might be the most - // useful for desktop WebGL users. // Need to emulate MAX_FRAGMENT/VERTEX_UNIFORM_VECTORS and MAX_VARYING_VECTORS // because desktop GL's corresponding queries return the number of components // whereas GLES2 return the number of vectors (each vector has 4 components). // Therefore, the value returned by desktop GL needs to be divided by 4. makeContextCurrent(); switch (pname) { - case IMPLEMENTATION_COLOR_READ_FORMAT: - *value = GL_RGB; - break; - case IMPLEMENTATION_COLOR_READ_TYPE: - *value = GL_UNSIGNED_BYTE; - break; case MAX_FRAGMENT_UNIFORM_VECTORS: glGetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, value); *value /= 4; @@ -1130,7 +1093,16 @@ WebString WebGraphicsContext3DDefaultImpl::getShaderSource(WebGLId shader) WebString WebGraphicsContext3DDefaultImpl::getString(unsigned long name) { makeContextCurrent(); - return WebString::fromUTF8(reinterpret_cast<const char*>(glGetString(name))); + StringBuilder result; + result.append(reinterpret_cast<const char*>(glGetString(name))); + if (name == GL_EXTENSIONS) { + // GL_CHROMIUM_copy_texture_to_parent_texture requires this + // desktopGL-only function (GLES2 doesn't support it), so + // check for its existence here. + if (glGetTexLevelParameteriv) + result.append(" GL_CHROMIUM_copy_texture_to_parent_texture"); + } + return WebString(result.toString()); } DELEGATE_TO_GL_3(getTexParameterfv, GetTexParameterfv, unsigned long, unsigned long, float*) diff --git a/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.h b/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.h index 5eebf12..c1de77c 100644 --- a/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.h +++ b/WebKit/chromium/src/WebGraphicsContext3DDefaultImpl.h @@ -81,13 +81,10 @@ public: virtual void prepareTexture(); virtual void synthesizeGLError(unsigned long error); - virtual bool supportsBGRA(); - virtual bool supportsMapSubCHROMIUM(); virtual void* mapBufferSubDataCHROMIUM(unsigned target, int offset, int size, unsigned access); virtual void unmapBufferSubDataCHROMIUM(const void*); virtual void* mapTexSubImage2DCHROMIUM(unsigned target, int level, int xoffset, int yoffset, int width, int height, unsigned format, unsigned type, unsigned access); virtual void unmapTexSubImage2DCHROMIUM(const void*); - virtual bool supportsCopyTextureToParentTextureCHROMIUM(); virtual void copyTextureToParentTextureCHROMIUM(unsigned texture, unsigned parentTexture); virtual void activeTexture(unsigned long texture); diff --git a/WebKit/chromium/src/WebIDBTransactionImpl.cpp b/WebKit/chromium/src/WebIDBTransactionImpl.cpp index f5d8748..4307cb5 100644 --- a/WebKit/chromium/src/WebIDBTransactionImpl.cpp +++ b/WebKit/chromium/src/WebIDBTransactionImpl.cpp @@ -69,11 +69,6 @@ void WebIDBTransactionImpl::didCompleteTaskEvents() m_backend->didCompleteTaskEvents(); } -int WebIDBTransactionImpl::id() const -{ - return m_backend->id(); -} - void WebIDBTransactionImpl::setCallbacks(WebIDBTransactionCallbacks* callbacks) { RefPtr<IDBTransactionCallbacks> idbCallbacks = IDBTransactionCallbacksProxy::create(callbacks); diff --git a/WebKit/chromium/src/WebIDBTransactionImpl.h b/WebKit/chromium/src/WebIDBTransactionImpl.h index 24bab91..b26b3ac 100644 --- a/WebKit/chromium/src/WebIDBTransactionImpl.h +++ b/WebKit/chromium/src/WebIDBTransactionImpl.h @@ -45,7 +45,6 @@ public: virtual WebIDBObjectStore* objectStore(const WebString& name); virtual void abort(); virtual void didCompleteTaskEvents(); - virtual int id() const; virtual void setCallbacks(WebIDBTransactionCallbacks*); virtual WebCore::IDBTransactionBackendInterface* getIDBTransactionBackendInterface() const; diff --git a/WebKit/chromium/src/WebInputElement.cpp b/WebKit/chromium/src/WebInputElement.cpp index 7779dbc..d032ef8 100644 --- a/WebKit/chromium/src/WebInputElement.cpp +++ b/WebKit/chromium/src/WebInputElement.cpp @@ -95,9 +95,9 @@ int WebInputElement::size() const return constUnwrap<HTMLInputElement>()->size(); } -void WebInputElement::setValue(const WebString& value) +void WebInputElement::setValue(const WebString& value, bool sendChangeEvent) { - unwrap<HTMLInputElement>()->setValue(value); + unwrap<HTMLInputElement>()->setValue(value, sendChangeEvent); } WebString WebInputElement::value() const @@ -145,14 +145,14 @@ void WebInputElement::setSelectionRange(int start, int end) unwrap<HTMLInputElement>()->setSelectionRange(start, end); } -int WebInputElement::selectionStart() +int WebInputElement::selectionStart() const { - return unwrap<HTMLInputElement>()->selectionStart(); + return constUnwrap<HTMLInputElement>()->selectionStart(); } -int WebInputElement::selectionEnd() +int WebInputElement::selectionEnd() const { - return unwrap<HTMLInputElement>()->selectionEnd(); + return constUnwrap<HTMLInputElement>()->selectionEnd(); } bool WebInputElement::isValidValue(const WebString& value) const diff --git a/WebKit/chromium/src/WebPluginContainerImpl.cpp b/WebKit/chromium/src/WebPluginContainerImpl.cpp index 58deecc..43d9757 100644 --- a/WebKit/chromium/src/WebPluginContainerImpl.cpp +++ b/WebKit/chromium/src/WebPluginContainerImpl.cpp @@ -33,6 +33,7 @@ #include "Chrome.h" #include "ChromeClientImpl.h" +#include "PluginLayerChromium.h" #include "WebClipboard.h" #include "WebCursorInfo.h" #include "WebDataSourceImpl.h" @@ -275,6 +276,25 @@ void WebPluginContainerImpl::invalidateRect(const WebRect& rect) invalidateRect(static_cast<IntRect>(rect)); } +void WebPluginContainerImpl::scrollRect(int dx, int dy, const WebRect& rect) +{ + Widget* parentWidget = parent(); + if (parentWidget->isFrameView()) { + FrameView* parentFrameView = static_cast<FrameView*>(parentWidget); + if (!parentFrameView->isOverlapped()) { + IntRect damageRect = convertToContainingWindow(static_cast<IntRect>(rect)); + IntSize scrollDelta(dx, dy); + // scroll() only uses the second rectangle, clipRect, and ignores the first + // rectangle. + parent()->hostWindow()->scroll(scrollDelta, damageRect, damageRect); + return; + } + } + + // Use slow scrolling instead. + invalidateRect(rect); +} + void WebPluginContainerImpl::reportGeometry() { if (!parent()) @@ -287,6 +307,14 @@ void WebPluginContainerImpl::reportGeometry() m_webPlugin->updateGeometry(windowRect, clipRect, cutOutRects, isVisible()); } +void WebPluginContainerImpl::commitBackingTexture() +{ +#if USE(ACCELERATED_COMPOSITING) + if (platformLayer()) + platformLayer()->setNeedsDisplay(); +#endif +} + void WebPluginContainerImpl::clearScriptObjects() { Frame* frame = m_element->document()->frame(); @@ -393,8 +421,33 @@ void WebPluginContainerImpl::willDestroyPluginLoadObserver(WebPluginLoadObserver m_pluginLoadObservers.remove(pos); } +#if USE(ACCELERATED_COMPOSITING) +WebCore::LayerChromium* WebPluginContainerImpl::platformLayer() const +{ + // FIXME: In the event of a context lost, the texture needs to be recreated on the compositor's + // context and rebound to the platform layer here. + unsigned backingTextureId = m_webPlugin->getBackingTextureId(); + if (!backingTextureId) + return 0; + + m_platformLayer->setTextureId(backingTextureId); + + return m_platformLayer.get(); +} +#endif + // Private methods ------------------------------------------------------------- +WebPluginContainerImpl::WebPluginContainerImpl(WebCore::HTMLPlugInElement* element, WebPlugin* webPlugin) + : WebCore::PluginViewBase(0) + , m_element(element) + , m_webPlugin(webPlugin) +#if USE(ACCELERATED_COMPOSITING) + , m_platformLayer(PluginLayerChromium::create(0)) +#endif +{ +} + WebPluginContainerImpl::~WebPluginContainerImpl() { for (size_t i = 0; i < m_pluginLoadObservers.size(); ++i) diff --git a/WebKit/chromium/src/WebPluginContainerImpl.h b/WebKit/chromium/src/WebPluginContainerImpl.h index 27f5f2e..ebe6983 100644 --- a/WebKit/chromium/src/WebPluginContainerImpl.h +++ b/WebKit/chromium/src/WebPluginContainerImpl.h @@ -31,9 +31,10 @@ #ifndef WebPluginContainerImpl_h #define WebPluginContainerImpl_h +#include "PluginViewBase.h" #include "WebPluginContainer.h" - #include "Widget.h" + #include <wtf/PassRefPtr.h> #include <wtf/Vector.h> @@ -43,7 +44,9 @@ namespace WebCore { class HTMLPlugInElement; class IntRect; class KeyboardEvent; +class LayerChromium; class MouseEvent; +class PluginLayerChromium; class ResourceError; class ResourceResponse; class WheelEvent; @@ -54,7 +57,7 @@ namespace WebKit { class WebPlugin; class WebPluginLoadObserver; -class WebPluginContainerImpl : public WebCore::Widget, public WebPluginContainer { +class WebPluginContainerImpl : public WebCore::PluginViewBase, public WebPluginContainer { public: static PassRefPtr<WebPluginContainerImpl> create(WebCore::HTMLPlugInElement* element, WebPlugin* webPlugin) { @@ -79,12 +82,14 @@ public: virtual WebElement element(); virtual void invalidate(); virtual void invalidateRect(const WebRect&); + virtual void scrollRect(int dx, int dy, const WebRect&); virtual void reportGeometry(); + virtual void commitBackingTexture(); virtual void clearScriptObjects(); virtual NPObject* scriptableObjectForElement(); virtual WebString executeScriptURL(const WebURL&, bool popupsAllowed); virtual void loadFrameRequest(const WebURLRequest&, const WebString& target, bool notifyNeeded, void* notifyData); - virtual void zoomLevelChanged(double zoomLevel); + virtual void zoomLevelChanged(double zoomLevel); // This cannot be null. WebPlugin* plugin() { return m_webPlugin; } @@ -117,10 +122,12 @@ public: void willDestroyPluginLoadObserver(WebPluginLoadObserver*); +#if USE(ACCELERATED_COMPOSITING) + virtual WebCore::LayerChromium* platformLayer() const; +#endif + private: - WebPluginContainerImpl(WebCore::HTMLPlugInElement* element, WebPlugin* webPlugin) - : m_element(element) - , m_webPlugin(webPlugin) { } + WebPluginContainerImpl(WebCore::HTMLPlugInElement* element, WebPlugin* webPlugin); ~WebPluginContainerImpl(); void handleMouseEvent(WebCore::MouseEvent*); @@ -138,6 +145,10 @@ private: WebCore::HTMLPlugInElement* m_element; WebPlugin* m_webPlugin; Vector<WebPluginLoadObserver*> m_pluginLoadObservers; + +#if USE(ACCELERATED_COMPOSITING) + RefPtr<WebCore::PluginLayerChromium> m_platformLayer; +#endif }; } // namespace WebKit diff --git a/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp b/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp index 3b56338..ce8eba6 100644 --- a/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp +++ b/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp @@ -55,11 +55,6 @@ WebSpeechInputControllerMockImpl::~WebSpeechInputControllerMockImpl() m_webcoreMock->setListener(0); } -void WebSpeechInputControllerMockImpl::setMockRecognitionResult(const WebString& result) -{ - m_webcoreMock->setRecognitionResult(result, WebString::fromUTF8("")); -} - void WebSpeechInputControllerMockImpl::setMockRecognitionResult(const WebString& result, const WebString &language) { m_webcoreMock->setRecognitionResult(result, language); diff --git a/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h b/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h index c98f92a..7b50a8b 100644 --- a/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h +++ b/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h @@ -64,10 +64,6 @@ public: // WebSpeechInputControllerMock methods. void setMockRecognitionResult(const WebString& result, const WebString& language); - // FIXME: this is a fix for a two-sided patch. Delete as soon as the chromium side is patched. - // Chromium patch not uploaded yet, but will depend on http://codereview.chromium.org/3615005/show patch. - void setMockRecognitionResult(const WebString& result); - private: OwnPtr<WebCore::SpeechInputClientMock> m_webcoreMock; WebSpeechInputListener* m_listener; diff --git a/WebKit/chromium/src/WebViewImpl.cpp b/WebKit/chromium/src/WebViewImpl.cpp index 57d0ca4..490c620 100644 --- a/WebKit/chromium/src/WebViewImpl.cpp +++ b/WebKit/chromium/src/WebViewImpl.cpp @@ -52,6 +52,7 @@ #include "DragData.h" #include "Editor.h" #include "EventHandler.h" +#include "Extensions3D.h" #include "FocusController.h" #include "FontDescription.h" #include "FrameLoader.h" @@ -1050,7 +1051,7 @@ void WebViewImpl::composite(bool finish) m_layerRenderer->present(); GraphicsContext3D* context = m_layerRenderer->context(); - if (context->getGraphicsResetStatusARB() != GraphicsContext3D::NO_ERROR) + if (context->getExtensions()->getGraphicsResetStatusARB() != GraphicsContext3D::NO_ERROR) reallocateRenderer(); #endif } diff --git a/WebKit/chromium/src/js/DevTools.js b/WebKit/chromium/src/js/DevTools.js index 4c23057..8b3aea0 100644 --- a/WebKit/chromium/src/js/DevTools.js +++ b/WebKit/chromium/src/js/DevTools.js @@ -46,6 +46,7 @@ var context = {}; // Used by WebCore's inspector routines. Preferences.canEditScriptSource = true; Preferences.onlineDetectionEnabled = false; Preferences.nativeInstrumentationEnabled = true; + Preferences.fileSystemEnabled = false; })(); var devtools = devtools || {}; diff --git a/WebKit/chromium/src/js/devTools.css b/WebKit/chromium/src/js/devTools.css index 9495fb8..64ea9d5 100644 --- a/WebKit/chromium/src/js/devTools.css +++ b/WebKit/chromium/src/js/devTools.css @@ -37,11 +37,6 @@ body.platform-linux #scripts-files { line-height: 12px; } -.section > .header { - border: 1px solid rgb(92, 116, 157); - background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(105, 133, 180)), to(rgb(92, 116, 157))); -} - .console-group-messages .section > .header { padding: 0 8px 0 0; background-image: none; |