1. 17 Aug, 2010 7 commits
  2. 16 Aug, 2010 33 commits
    • barraclough@apple.com's avatar
      Remove unnecessary includes from UString.h, add new includes as necessary. · 79b4e283
      barraclough@apple.com authored
      Rubber stamped by Sam Weinig
      
      JavaScriptCore: 
      
      * profiler/CallIdentifier.h:
      * profiler/ProfileNode.h:
      * runtime/DateConversion.cpp:
      * runtime/Identifier.h:
      (JSC::IdentifierRepHash::hash):
      * runtime/RegExpCache.h:
      * runtime/RegExpKey.h:
      * runtime/UString.cpp:
      (JSC::UString::substr):
      * runtime/UString.h:
      * wtf/text/WTFString.h:
      
      WebCore: 
      
      * dom/ScriptExecutionContext.h:
      * loader/appcache/ApplicationCache.cpp:
      
      WebKit2: 
      
      * WebProcess/Plugins/Netscape/NetscapePlugin.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      79b4e283
    • andreas.kling@nokia.com's avatar
      2010-08-16 Andreas Kling <andreas.kling@nokia.com> · d4497411
      andreas.kling@nokia.com authored
              Reviewed by Darin Adler.
      
              CSS: Add fast-path for rgba() color parsing
              https://bugs.webkit.org/show_bug.cgi?id=42965
      
              Test: fast/canvas/rgba-parsing.html
      
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseColor): Extended with support for rgba().
              (WebCore::parseAlphaValue): Added, parses an alpha value using
              WTF::strtod() (if necessary) and clamps between 0 and 1.
              (WebCore::isTenthAlpha):
      2010-08-16  Andreas Kling  <andreas.kling@nokia.com>
      
              Reviewed by Darin Adler.
      
              CSS: Add fast-path for rgba() color parsing
              https://bugs.webkit.org/show_bug.cgi?id=42965
      
              Add a test of rgba() color parsing.
      
              * fast/canvas/rgba-parsing-expected.txt: Added.
              * fast/canvas/rgba-parsing.html: Added.
              * fast/canvas/script-tests/rgba-parsing.js: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4497411
    • kinuko@chromium.org's avatar
      2010-08-16 Kinuko Yasuda <kinuko@chromium.org> · 153233a2
      kinuko@chromium.org authored
              Reviewed by Dumitru Daniliuc.
      
              Add idl and mock classes for FileSystem API's {File,Directory}Entry and related interfaces
              https://bugs.webkit.org/show_bug.cgi?id=43993
      
              Adding DirectoryEntry, DirectoryReader, EntriesCallback and FileEntry as defined in HTML5 FileSystem API.
              http://dev.w3.org/2009/dap/file-system/file-dir-sys.html
      
              Also adding Makefile entries for idl and mock classes added in changeset 64414 (except for Android platforms).
      
              Tests will be added when we add underlying implementation.
      
              * CMakeLists.txt:
              * DerivedSources.cpp:
              * DerivedSources.make:
              * GNUmakefile.am:
              * WebCore.gypi:
              * WebCore.pri:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * storage/DOMFileSystem.cpp:
              (WebCore::DOMFileSystem::root):
              * storage/DOMFileSystem.h:
              * storage/DOMFileSystem.idl:
              * storage/DirectoryEntry.cpp: Added.
              * storage/DirectoryEntry.h: Added.
              * storage/DirectoryEntry.idl: Added.
              * storage/DirectoryReader.cpp: Added.
              * storage/DirectoryReader.h: Added.
              * storage/DirectoryReader.idl: Added.
              * storage/EntriesCallback.h: Added.
              * storage/EntriesCallback.idl: Added.
              * storage/EntryArray.cpp: Added.
              * storage/EntryArray.h: Added.
              * storage/EntryArray.idl: Added.
              * storage/Entry.cpp:
              (WebCore::Entry::Entry):
              (WebCore::Entry::getMetadata):
              (WebCore::Entry::moveTo):
              (WebCore::Entry::copyTo):
              (WebCore::Entry::remove):
              (WebCore::Entry::getParent):
              * storage/Entry.h:
              (WebCore::Entry::isFile):
              (WebCore::Entry::isDirectory):
              * storage/Entry.idl:
              * storage/FileEntry.cpp: Added.
              * storage/FileEntry.h: Added.
              * storage/FileEntry.idl: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      153233a2
    • andreas.kling@nokia.com's avatar
      2010-08-16 Andreas Kling <andreas.kling@nokia.com> · b20bc95e
      andreas.kling@nokia.com authored
              Reviewed by Ariya Hidayat.
      
              [Qt] Path::closeSubpath() should only close the last subpath if it has >1 point
              https://bugs.webkit.org/show_bug.cgi?id=44061
      
              Spec link:
              http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-closepath
      
              Test: fast/canvas/canvas-closePath-single-point.html
      
              * platform/graphics/Path.h: Add a Qt-only member to track the last subpath.
              * platform/graphics/qt/PathQt.cpp:
              (WebCore::Path::closeSubpath): Only close the last subpath if it
              has more than 1 point. Otherwise behave as moveTo(first point in last subpath)
              (WebCore::Path::Path):
              (WebCore::Path::operator=):
              (WebCore::Path::moveTo):
              (WebCore::Path::transform):
      2010-08-16  Andreas Kling  <andreas.kling@nokia.com>
      
              Reviewed by Ariya Hidayat.
      
              [Qt] Path::closeSubpath() should only close the last subpath if it has >1 point
              https://bugs.webkit.org/show_bug.cgi?id=44061
      
              Add a test to verify behavior of closePath() when path has only 1 point.
      
              * fast/canvas/canvas-closePath-single-point-expected.txt: Added.
              * fast/canvas/canvas-closePath-single-point.html: Added.
              * fast/canvas/script-tests/canvas-closePath-single-point.js: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65472 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b20bc95e
    • japhet@chromium.org's avatar
      2010-08-16 Nate Chapin <japhet@chromium.org> · 586b2c6d
      japhet@chromium.org authored
              Unreviewed, Chromium mac build fix (with help from jamesr).
      
              * platform/chromium/ScrollbarThemeChromiumMac.mm:
              (WebCore::ScrollbarThemeChromiumMac::paint):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      586b2c6d
    • barraclough@apple.com's avatar
      Bug 44080 - String find/reverseFind methods need tidying up · d643fdea
      barraclough@apple.com authored
      These methods have a couple of problems with their interface, and implementation.
      
      Reviewed by Sam Weinig
      
      These methods take and int index, and return an int - however this is problematic
      since on 64-bit string indices may have a full 32-bit range.  This spills out into
      surrounding code, which unsafely casts string indices from unsigned to int. Code
      checking the result of these methods check for a mix of "== -1", "< 0", and
      "== notFound".  Clean this up by changing these methods to take an unsigned
      starting index, and return a size_t. with a failed match indicated by notFound.
      reverseFind also has a special meaning for the starting index argument, in that a
      negative index is interpreted as an offset back from the end of the string. Remove
      this functionality, in the (1!) case where it is used we should just calculate the
      offset by subtracting from the string's length.
      
      The implementation has a few problems too.  The code is not in webkit style, in
      using assorted abbreviations in variable names, and implementations of similar
      find methods with differing argument types were unnecessarily inconsistent. When
      find is passed const char* data the string would be handled as latin1 (zero
      extended to UTF-16) for all characters but the first; this is sign extended.
      Case-insensitive find is broken for unicode strings; the hashing optimization is
      not unicode safe, and could result in false negatives.
      
      Unify UString find methods to match String.
      
      JavaScriptCore: 
      
      * JavaScriptCore.exp:
      * bytecode/CodeBlock.cpp:
      (JSC::escapeQuotes):
      * bytecompiler/NodesCodegen.cpp:
      (JSC::substitute):
      * runtime/JSString.cpp:
      (JSC::JSString::replaceCharacter):
      * runtime/RegExp.cpp:
      (JSC::RegExp::RegExp):
      * runtime/RegExpKey.h:
      (JSC::RegExpKey::getFlagsValue):
      * runtime/StringPrototype.cpp:
      (JSC::substituteBackreferencesSlow):
      (JSC::substituteBackreferences):
      (JSC::stringProtoFuncReplace):
      (JSC::stringProtoFuncIndexOf):
      (JSC::stringProtoFuncLastIndexOf):
      (JSC::stringProtoFuncSplit):
      * runtime/UString.cpp:
      * runtime/UString.h:
      (JSC::UString::find):
      (JSC::UString::reverseFind):
      * wtf/text/AtomicString.h:
      (WTF::AtomicString::find):
      * wtf/text/StringImpl.cpp:
      (WTF::StringImpl::find):
      (WTF::StringImpl::findCaseInsensitive):
      (WTF::StringImpl::reverseFind):
      (WTF::StringImpl::reverseFindCaseInsensitive):
      (WTF::StringImpl::endsWith):
      (WTF::StringImpl::replace):
      * wtf/text/StringImpl.h:
      (WTF::StringImpl::startsWith):
      * wtf/text/WTFString.cpp:
      (WTF::String::split):
      * wtf/text/WTFString.h:
      (WTF::String::find):
      (WTF::String::reverseFind):
      (WTF::String::findCaseInsensitive):
      (WTF::String::reverseFindCaseInsensitive):
      (WTF::String::contains):
      (WTF::find):
      (WTF::reverseFind):
      
      WebCore: 
      
      * css/CSSSelector.cpp:
      (WebCore::CSSSelector::RareData::parseNth):
      * css/CSSStyleDeclaration.cpp:
      (WebCore::CSSStyleDeclaration::setProperty):
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
      * dom/Document.cpp:
      (WebCore::Document::getImageMap):
      * editing/CompositeEditCommand.cpp:
      (WebCore::CompositeEditCommand::inputText):
      * editing/InsertTextCommand.cpp:
      (WebCore::InsertTextCommand::input):
      * editing/TextIterator.cpp:
      (WebCore::TextIterator::handleTextBox):
      * editing/TypingCommand.cpp:
      (WebCore::TypingCommand::insertText):
      * editing/markup.cpp:
      (WebCore::fillContainerFromString):
      (WebCore::createFragmentFromText):
      * html/File.cpp:
      (WebCore::File::Init):
      * html/HTMLAnchorElement.cpp:
      (WebCore::HTMLAnchorElement::setHost):
      * html/HTMLEmbedElement.cpp:
      (WebCore::HTMLEmbedElement::parseMappedAttribute):
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty):
      * html/HTMLObjectElement.cpp:
      (WebCore::HTMLObjectElement::parseMappedAttribute):
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::performSearch):
      * loader/CrossOriginPreflightResultCache.cpp:
      (WebCore::parseAccessControlAllowList):
      * loader/MainResourceLoader.cpp:
      (WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase):
      * loader/appcache/ApplicationCacheStorage.cpp:
      (WebCore::parseHeader):
      (WebCore::parseHeaders):
      * loader/icon/IconFetcher.cpp:
      (WebCore::parseIconLink):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::parseModalDialogFeatures):
      * page/SecurityOrigin.cpp:
      (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
      * page/UserContentURLPattern.cpp:
      (WebCore::UserContentURLPattern::parse):
      * page/XSSAuditor.cpp:
      (WebCore::XSSAuditor::findInRequest):
      * platform/ContentType.cpp:
      (WebCore::ContentType::parameter):
      (WebCore::ContentType::type):
      * platform/KURL.cpp:
      (WebCore::KURL::lastPathComponent):
      (WebCore::KURL::setProtocol):
      (WebCore::decodeURLEscapeSequences):
      (WebCore::substituteBackslashes):
      (WebCore::mimeTypeFromDataURL):
      * platform/Length.cpp:
      (WebCore::newCoordsArray):
      (WebCore::newLengthArray):
      * platform/LinkHash.cpp:
      (WebCore::findSlashDotDotSlash):
      (WebCore::findSlashSlash):
      (WebCore::findSlashDotSlash):
      (WebCore::cleanPath):
      * platform/MIMETypeRegistry.cpp:
      (WebCore::MIMETypeRegistry::getMIMETypeForPath):
      * platform/SchemeRegistry.cpp:
      (WebCore::SchemeRegistry::shouldTreatURLAsLocal):
      * platform/graphics/MediaPlayer.cpp:
      (WebCore::MediaPlayer::load):
      * platform/mac/DragImageMac.mm:
      (WebCore::createDragImageIconForCachedImage):
      * platform/network/CredentialStorage.cpp:
      (WebCore::protectionSpaceMapKeyFromURL):
      (WebCore::findDefaultProtectionSpaceForURL):
      * platform/network/HTTPParsers.cpp:
      (WebCore::skipWhiteSpace):
      (WebCore::skipToken):
      (WebCore::parseHTTPRefresh):
      (WebCore::filenameFromHTTPContentDisposition):
      (WebCore::findCharsetInMediaType):
      (WebCore::parseXSSProtectionHeader):
      (WebCore::extractReasonPhraseFromHTTPStatusLine):
      * platform/network/ResourceResponseBase.cpp:
      (WebCore::ResourceResponseBase::isAttachment):
      (WebCore::parseCacheHeader):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::RenderEmbeddedObject::updateWidget):
      * storage/Entry.cpp:
      (WebCore::Entry::Entry):
      * svg/SVGFont.cpp:
      (WebCore::isCompatibleGlyph):
      * svg/SVGURIReference.cpp:
      (WebCore::SVGURIReference::getTarget):
      * svg/animation/SVGSMILElement.cpp:
      (WebCore::SVGSMILElement::parseClockValue):
      (WebCore::SVGSMILElement::parseCondition):
      * xml/XPathFunctions.cpp:
      (WebCore::XPath::FunSubstringBefore::evaluate):
      (WebCore::XPath::FunSubstringAfter::evaluate):
      (WebCore::XPath::FunTranslate::evaluate):
      (WebCore::XPath::FunLang::evaluate):
      * xml/XPathParser.cpp:
      (WebCore::XPath::Parser::expandQName):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65468 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d643fdea
    • rniwa@webkit.org's avatar
      2010-08-16 Ryosuke Niwa <rniwa@webkit.org> · c289683c
      rniwa@webkit.org authored
              Reviewed by Tony Chang.
      
              REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium
              https://bugs.webkit.org/show_bug.cgi?id=44070
      
              The crash was caused by start or end node being removed in pushDownInlineStyleAroundNode.
              It made start and end orphaned, and caused s.node() to be detached from the document.
              Fixed the crash by using nodes passed to pushDownInlineStyleAroundNode for start and end if the original
              start and end are orphaned because pushDownInlineStyleAroundNode won't prune targetNode.
      
              Test: editing/pasteboard/smart-paste-003-trailing-whitespace.html
      
              * editing/ApplyStyleCommand.cpp:
              (WebCore::ApplyStyleCommand::removeInlineStyle):
      2010-08-16  Ryosuke Niwa  <rniwa@webkit.org>
      
              Reviewed by Tony Chang.
      
              REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium
              https://bugs.webkit.org/show_bug.cgi?id=44070
      
              The bug only reproduced on Windows when trailing space is selected only on Windows.
              Added a crash test to copy & paste a word with trailing space.
      
              * editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt: Added.
              * editing/pasteboard/smart-paste-003-trailing-whitespace.html: Added.
              * platform/chromium/test_expectations.txt: editing/pasteboard/smart-paste-003.html and smart-paste-004.html should not crash.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65467 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c289683c
    • jamesr@google.com's avatar
      fix build · da06f606
      jamesr@google.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da06f606
    • commit-queue@webkit.org's avatar
      2010-08-16 Vincent Scheib <scheib@chromium.org> · 91022996
      commit-queue@webkit.org authored
              Reviewed by Dimitri Glazkov.
      
              Canvas2D does not support images larger than system's GPU max texture size
              https://bugs.webkit.org/show_bug.cgi?id=43864
      
              A new class "TilingData" has been created that provides logic for
              splitting a large image into a series of smaller tiles.
      
              GLES2Texture and CLES2Canvas are modified to use the TilingData to
              split images on texture upload and render one logical image as many smaller
              images.
      
              TilingData is tested via unit tests in WebKit/chromium/tests/TilingDataTest.cpp
      
              * WebCore.gypi:
              * platform/graphics/chromium/GLES2Canvas.cpp:
              (WebCore::GLES2Canvas::drawTexturedRect):
              (WebCore::GLES2Canvas::drawTexturedRectTile):
              * platform/graphics/chromium/GLES2Canvas.h:
              * platform/graphics/chromium/GLES2Texture.cpp:
              (WebCore::GLES2Texture::GLES2Texture):
              (WebCore::GLES2Texture::~GLES2Texture):
              (WebCore::GLES2Texture::create):
              (WebCore::copySubRect):
              (WebCore::GLES2Texture::load):
              (WebCore::GLES2Texture::bindTile):
              * platform/graphics/chromium/GLES2Texture.h:
              (WebCore::GLES2Texture::tiles):
              * platform/graphics/chromium/TilingData.cpp: Added.
              (WebCore::computeNumTiles):
              (WebCore::TilingData::TilingData):
              (WebCore::TilingData::tileXIndexFromSrcCoord):
              (WebCore::TilingData::tileYIndexFromSrcCoord):
              (WebCore::TilingData::tileBounds):
              (WebCore::TilingData::tileBoundsWithBorder):
              (WebCore::TilingData::tileBoundsNormalized):
              (WebCore::TilingData::tilePositionX):
              (WebCore::TilingData::tilePositionY):
              (WebCore::TilingData::tileSizeX):
              (WebCore::TilingData::tileSizeY):
              (WebCore::TilingData::overlappedTileIndices):
              (WebCore::TilingData::intersectDrawQuad):
              * platform/graphics/chromium/TilingData.h: Added.
              (WebCore::TilingData::maxTextureSize):
              (WebCore::TilingData::totalSizeX):
              (WebCore::TilingData::totalSizeY):
              (WebCore::TilingData::numTiles):
              (WebCore::TilingData::numTilesX):
              (WebCore::TilingData::numTilesY):
              (WebCore::TilingData::tileIndex):
              (WebCore::TilingData::tileXIndex):
              (WebCore::TilingData::tileYIndex):
              (WebCore::TilingData::TilingData):
              (WebCore::TilingData::assertTile):
              * platform/graphics/skia/ImageSkia.cpp:
              (WebCore::BitmapImage::draw):
              * platform/graphics/skia/PlatformContextSkia.cpp:
              (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
      2010-08-16  Vincent Scheib  <scheib@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              Canvas2D does not support images larger than system's GPU max texture size
              https://bugs.webkit.org/show_bug.cgi?id=43864
      
              Unit tests for TilingData class.
      
              * WebKit.gyp:
              * tests/TilingDataTest.cpp: Added.
              (WebCore::TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65455 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      91022996
    • hyatt@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying... · ffec3a47
      hyatt@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying its data when rendering after canvas changes happen.
              
      Reviewed by Anders Carlsson.
      
      This patch renames ImageBuffer::image() to ImageBuffer::copyImage(). The new method always returns a new copy that is a current
      snapshot of the ImageBuffer.
              
      To draw an ImageBuffer, you now use new GraphicsContext calls: drawImageBuffer.  Platforms can then optimize these calls to draw
      efficiently without having to copy the bits of the ImageBuffer into an Image.
      
      * WebCore.xcodeproj/project.pbxproj:
      * css/CSSCanvasValue.cpp:
      (WebCore::CSSCanvasValue::image):
      * html/HTMLCanvasElement.cpp:
      (WebCore::HTMLCanvasElement::willDraw):
      (WebCore::HTMLCanvasElement::reset):
      (WebCore::HTMLCanvasElement::paint):
      (WebCore::HTMLCanvasElement::setSurfaceSize):
      (WebCore::HTMLCanvasElement::copiedImage):
      (WebCore::HTMLCanvasElement::clearCopiedImage):
      * html/HTMLCanvasElement.h:
      * html/canvas/CanvasPattern.cpp:
      (WebCore::CanvasPattern::CanvasPattern):
      * html/canvas/CanvasPattern.h:
      (WebCore::CanvasPattern::create):
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore::CanvasRenderingContext2D::drawImage):
      (WebCore::CanvasRenderingContext2D::createPattern):
      (WebCore::CanvasRenderingContext2D::drawTextInternal):
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
      (WebCore::WebGLRenderingContext::reshape):
      (WebCore::WebGLRenderingContext::texImage2D):
      (WebCore::WebGLRenderingContext::texSubImage2D):
      * html/canvas/WebGLRenderingContext.h:
      (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer):
      * platform/graphics/GeneratedImage.cpp:
      (WebCore::GeneratedImage::drawPattern):
      * platform/graphics/GraphicsContext.cpp:
      (WebCore::GraphicsContext::drawImageBuffer):
      (WebCore::GraphicsContext::clipToImageBuffer):
      * platform/graphics/GraphicsContext.h:
      * platform/graphics/GraphicsContext3D.h:
      (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer):
      * platform/graphics/Image.h:
      * platform/graphics/ImageBuffer.h:
      (WebCore::ImageBuffer::width):
      (WebCore::ImageBuffer::height):
      * platform/graphics/Pattern.cpp:
      (WebCore::Pattern::Pattern):
      * platform/graphics/Pattern.h:
      (WebCore::Pattern::create):
      * platform/graphics/cairo/GraphicsContextCairo.cpp:
      * platform/graphics/cairo/ImageBufferCairo.cpp:
      (WebCore::ImageBuffer::drawsUsingCopy):
      (WebCore::ImageBuffer::copyImage):
      (WebCore::ImageBuffer::clip):
      (WebCore::ImageBuffer::draw):
      (WebCore::ImageBuffer::drawPattern):
      * platform/graphics/cg/GraphicsContextCG.cpp:
      * platform/graphics/cg/ImageBufferCG.cpp:
      (WebCore::ImageBuffer::ImageBuffer):
      (WebCore::ImageBuffer::drawsUsingCopy):
      (WebCore::ImageBuffer::copyImage):
      (WebCore::ImageBuffer::draw):
      (WebCore::ImageBuffer::drawPattern):
      (WebCore::ImageBuffer::clip):
      * platform/graphics/cg/ImageBufferData.h:
      * platform/graphics/filters/FEColorMatrix.cpp:
      (WebCore::FEColorMatrix::apply):
      * platform/graphics/filters/FEComposite.cpp:
      (WebCore::FEComposite::apply):
      * platform/graphics/filters/SourceAlpha.cpp:
      (WebCore::SourceAlpha::apply):
      * platform/graphics/filters/SourceGraphic.cpp:
      (WebCore::SourceGraphic::apply):
      * platform/graphics/mac/GraphicsContext3DMac.mm:
      * platform/graphics/qt/GraphicsContext3DQt.cpp:
      * platform/graphics/qt/GraphicsContextQt.cpp:
      * platform/graphics/qt/ImageBufferData.h:
      * platform/graphics/qt/ImageBufferQt.cpp:
      (WebCore::ImageBufferData::ImageBufferData):
      (WebCore::ImageBuffer::drawsUsingCopy):
      (WebCore::ImageBuffer::copyImage):
      (WebCore::ImageBuffer::draw):
      (WebCore::ImageBuffer::drawPattern):
      (WebCore::ImageBuffer::clip):
      * platform/graphics/skia/GraphicsContextSkia.cpp:
      * platform/graphics/skia/ImageBufferSkia.cpp:
      (WebCore::ImageBuffer::drawsUsingCopy):
      (WebCore::ImageBuffer::copyImage):
      (WebCore::ImageBuffer::clip):
      (WebCore::):
      * platform/graphics/wx/GraphicsContextWx.cpp:
      * platform/graphics/wx/ImageBufferWx.cpp:
      (WebCore::ImageBuffer::drawsUsingCopy):
      (WebCore::ImageBuffer::copyImage):
      (WebCore::ImageBuffer::clip):
      (WebCore::ImageBuffer::draw):
      (WebCore::ImageBuffer::drawPattern):
      * platform/mac/ScrollbarThemeMac.mm:
      (WebCore::ScrollbarThemeMac::paint):
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::paintFillLayerExtended):
      * rendering/RenderSVGResourceClipper.cpp:
      (WebCore::RenderSVGResourceClipper::applyClippingToContext):
      * rendering/RenderSVGResourceFilter.cpp:
      (WebCore::RenderSVGResourceFilter::postApplyResource):
      * rendering/RenderSVGResourceGradient.cpp:
      (WebCore::clipToTextMask):
      * rendering/RenderSVGResourceMasker.cpp:
      (WebCore::RenderSVGResourceMasker::applyResource):
      * rendering/RenderSVGResourcePattern.cpp:
      (WebCore::RenderSVGResourcePattern::buildPattern):
      * rendering/RenderThemeMac.mm:
      (WebCore::RenderThemeMac::paintProgressBar):
      * svg/SVGFEImageElement.cpp:
      (WebCore::SVGFEImageElement::build):
      * svg/graphics/SVGImage.cpp:
      (WebCore::SVGImage::nativeImageForCurrentFrame):
      * svg/graphics/SVGImage.h:
      * svg/graphics/filters/SVGFEMerge.cpp:
      (WebCore::FEMerge::apply):
      * svg/graphics/filters/SVGFEOffset.cpp:
      (WebCore::FEOffset::apply):
      * svg/graphics/filters/SVGFETile.cpp:
      (WebCore::FETile::apply):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65449 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ffec3a47
    • cmarrin@apple.com's avatar
      2010-08-16 Paul Sawaya <psawaya@apple.com> · 404c4eea
      cmarrin@apple.com authored
              Reviewed by Chris Marrin.
      
              Added shader validation via ANGLE
              https://bugs.webkit.org/show_bug.cgi?id=42405
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      404c4eea
    • kevino@webkit.org's avatar
      [wx] Build fix, do not build WebCore as a convenience library as this leads to · 289ba9cc
      kevino@webkit.org authored
      errors in the Win build w/export symbols and causes problems with DOM bindings
      debugging in gdb. 
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      289ba9cc
    • loislo@chromium.org's avatar
      2010-08-16 Ilya Tikhonovsky <loislo@chromium.org> · d1de6ee5
      loislo@chromium.org authored
              Reviewed by Adam Roben.
      
              Current implementation of WebCore post-build step on windows platform is error prone.
              It would be better to extract the script into external file.
              https://bugs.webkit.org/show_bug.cgi?id=44058
      
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.vcproj/copyForwardingHeaders.cmd: Added.
              * WebCore.vcproj/copyInspectorFiles.cmd: Added.
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65443 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d1de6ee5
    • kevino@webkit.org's avatar
      [wx] Fix typo in previous build fix. · c6ba7de6
      kevino@webkit.org authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6ba7de6
    • commit-queue@webkit.org's avatar
      2010-08-16 Alex Milowski <alex@milowski.com> · ebf75d9f
      commit-queue@webkit.org authored
              Reviewed by David Levin.
      
              Added the configuration of the MathML related files.
      
              * WebCore.gyp/WebCore.gyp:
              * WebCore.gypi:
      2010-08-16  Alex Milowski  <alex@milowski.com>
      
              Reviewed by David Levin.
      
              Added the ENABLE_MATHML=1 to the feature_defines.
      
              * features.gypi:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ebf75d9f
    • pfeldman@chromium.org's avatar
      2010-08-16 Pavel Feldman <pfeldman@chromium.org> · 5bdf57e6
      pfeldman@chromium.org authored
              Not reviewed: fix Leopard Release inspector tests.
      
              * inspector/front-end/inspector.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65440 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5bdf57e6
    • bulach@chromium.org's avatar
      2010-08-16 Marcus Bulach <bulach@chromium.org> · c9eb84f6
      bulach@chromium.org authored
              Reviewed by Jeremy Orlow.
      
              Implements IDBKeyPath extractor.
              https://bugs.webkit.org/show_bug.cgi?id=43276
      
              Unit-test IDBKeyPathExtractorTest.cpp.
              LayoutTests will arrive as IndexedDB infrastructure is fleshed out.
      
              * bindings/v8/IDBBindingUtilities.cpp:
              (WebCore::getValueFrom):
              (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
              * bindings/v8/IDBBindingUtilities.h:
      2010-08-16  Marcus Bulach  <bulach@chromium.org>
      
              Reviewed by Jeremy Orlow.
      
              Implements IDBKeyPath extractor.
              https://bugs.webkit.org/show_bug.cgi?id=43276
      
              Unit-test IDBKeyPathExtractorTest.cpp.
              LayoutTests will arrive as IndexedDB infrastructure is fleshed out.
      
              * WebKit.gyp:
              * public/WebIDBKey.h:
              * public/WebIDBKeyPath.h: Added.
              (WebKit::WebIDBKeyPath::WebIDBKeyPath):
              (WebKit::WebIDBKeyPath::~WebIDBKeyPath):
              * public/WebPrivateOwnPtr.h: Added.
              (WebKit::WebPrivateOwnPtr::WebPrivateOwnPtr):
              (WebKit::WebPrivateOwnPtr::~WebPrivateOwnPtr):
              (WebKit::WebPrivateOwnPtr::reset):
              (WebKit::WebPrivateOwnPtr::get):
              (WebKit::WebPrivateOwnPtr::operator->):
              * src/WebIDBKey.cpp:
              (WebKit::WebIDBKey::createFromValueAndKeyPath):
              * src/WebIDBKeyPath.cpp: Added.
              (WebKit::WebIDBKeyPath::create):
              (WebKit::WebIDBKeyPath::WebIDBKeyPath):
              (WebKit::WebIDBKeyPath::parseError):
              (WebKit::WebIDBKeyPath::assign):
              (WebKit::WebIDBKeyPath::reset):
              (WebKit::WebIDBKeyPath::operator const WTF::Vector<WebCore::IDBKeyPathElement, 0>&):
              * tests/IDBBindingUtilitiesTest.cpp: Added.
              (WebCore::LocalContext::LocalContext):
              (WebCore::LocalContext::~LocalContext):
              (WebCore::checkKeyFromValueAndKeyPathInternal):
              (WebCore::checkKeyPathNullValue):
              (WebCore::checkKeyPathStringValue):
              (WebCore::checkKeyPathNumberValue):
              (WebCore::TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65439 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9eb84f6
    • kov@webkit.org's avatar
      2010-08-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 2e26e0b8
      kov@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen and Martin Robinson.
      
              [GTK] GTK+ drawing idle starved
              https://bugs.webkit.org/show_bug.cgi?id=43994
      
              Tune down the priority of the shared timers to guarantee GTK+ has
              an opportunity to redraw.
      
              * platform/gtk/SharedTimerGtk.cpp:
              (WebCore::setSharedTimerFireTime):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65438 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e26e0b8
    • leandro@webkit.org's avatar
      2010-08-16 Leandro Pereira <leandro@profusion.mobi> · 02b64d12
      leandro@webkit.org authored
              [EFL] Build fix after r65366.
      
              * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if
              they're empty.
              * jsc/CMakeLists.txt: Ditto.
              * wtf/CMakeLists.txt: Ditto.
      2010-08-16  Leandro Pereira  <leandro@profusion.mobi>
      
              [EFL] Build fix after r65366.
      
              * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if
              they're empty.
      2010-08-16  Leandro Pereira  <leandro@profusion.mobi>
      
              [EFL] Build fix after r65366.
      
              EFL port does not support automated tests yet.
      
              * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if
              they're empty.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65437 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02b64d12
    • pfeldman@chromium.org's avatar
      2010-08-16 Pavel Feldman <pfeldman@chromium.org> · c7bef750
      pfeldman@chromium.org authored
              Reviewed by Yury Semikhatsky.
      
              Web Inspector: Make InjectedScript proto-based.
              https://bugs.webkit.org/show_bug.cgi?id=44028
      
              * inspector/front-end/InjectedScript.js:
              (injectedScriptConstructor):
              (injectedScriptConstructor.):
      
      2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Yury Semikhatsky.
      
              Web Inspector: Make InjectedScript proto-based.
              https://bugs.webkit.org/show_bug.cgi?id=44028
              Drive-by test fix.
      
              * http/tests/inspector-enabled/console-log-before-frame-navigation.html:
              * http/tests/inspector-enabled/resources/console-log-before-frame-navigation.js: Removed.
              * http/tests/inspector-enabled/resources/console-log-frame-before-navigation.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65434 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7bef750
    • ossy@webkit.org's avatar
      Fix warning in WebCore/plugins/win/PluginPackageWin.cpp · e7afbc95
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=43920
      
      Reviewed by Adam Roben.
      
      * plugins/win/PluginPackageWin.cpp:
      (WebCore::PluginPackage::fetchInfo):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65432 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e7afbc95
    • pfeldman@chromium.org's avatar
      2010-08-16 Pavel Feldman <pfeldman@chromium.org> · d26fa132
      pfeldman@chromium.org authored
              Not reviewed. Touch inspector file to force frontend deployment.
      
              * inspector/InspectorController.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65430 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d26fa132
    • kevino@webkit.org's avatar
      [wx] Build fix for non-Win ports on Windows. · 49cc34ac
      kevino@webkit.org authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      49cc34ac
    • agl@chromium.org's avatar
      2010-08-16 Adam Langley <agl@chromium.org> · 62c6859d
      agl@chromium.org authored
              Reviewed by Tony Chang.
      
              [chromium] Improve spacing support for complex text on Linux
      
              https://bugs.webkit.org/show_bug.cgi?id=39014
      
              Previously, our complex text support ignored word-spacing,
              justification and letter-spacing. This fixes the first two issues and
              allows us to render Scribd's HTML5 documents much better.
      
              Test: fast/text/atsui-spacing-features.html
      
              * platform/graphics/chromium/FontLinux.cpp:
              (WebCore::TextRunWalker::TextRunWalker):
              (WebCore::TextRunWalker::setWordSpacingAdjustment):
              (WebCore::TextRunWalker::setLetterSpacingAdjustment):
              (WebCore::TextRunWalker::setPadding):
              (WebCore::TextRunWalker::setGlyphXPositions):
              (WebCore::TextRunWalker::isCodepointSpace):
              (WebCore::Font::drawComplexText):
              (WebCore::Font::floatWidthForComplexText):
              (WebCore::Font::offsetForPositionForComplexText):
              (WebCore::Font::selectionRectForComplexText):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65428 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      62c6859d
    • ossy@webkit.org's avatar
      Fix warnings: unknown conversion type character 'l' in format · ed7d56b7
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=43359
      
      Reviewed by Kenneth Rohde Christiansen.
      
      * loader/icon/IconDatabase.cpp:
      (WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier.
      (WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows.
      * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
      (WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows.
      * platform/sql/SQLiteDatabase.cpp:
      (WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows.
      * storage/DatabaseTracker.cpp:
      (WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65427 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ed7d56b7
    • ossy@webkit.org's avatar
      Fix warnings: unknown conversion type character 'l' in format · ef5dd2f8
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=43359
      
      Reviewed by Kenneth Rohde Christiansen.
      
      * loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows.
      (WebCore::parseOneFTPLine):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ef5dd2f8
    • ariya@webkit.org's avatar
      [Qt] Shadow blur for rectangle fill · fa215186
      ariya@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=44025
      
      Patch by Ariya Hidayat <ariya@sencha.com> on 2010-08-16
      Reviewed by Kenneth Rohde Christiansen.
      
      WebCore:
      
      The blur implementation follows the approximation of Gaussian blur
      with three successive box blurs, working on the alpha channel only.
      (see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur).
      
      * WebCore.pro: Refer to ContexShadow.* files.
      * platform/graphics/qt/ContextShadow.cpp: Added.
      (WebCore::ContextShadow::ContextShadow):
      (WebCore::ContextShadow::clear):
      (WebCore::blurHorizontal): Box blurs in horizontal direction, working
      on QImage (in-place).
      (WebCore::shadowBlur): Main blur function which just calls the
      above blurHorizontal function twice, once with transposed image
      (equivalent as it would have done vertical box blurs).
      (WebCore::ContextShadow::drawShadowRect):
      * platform/graphics/qt/ContextShadow.h: Added.
      (WebCore::ContextShadow::):
      * platform/graphics/qt/GraphicsContextQt.cpp:
      (WebCore::GraphicsContextPlatformPrivate::hasShadow):
      (WebCore::GraphicsContext::restorePlatformState):
      (WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow.
      (WebCore::GraphicsContext::setPlatformShadow):
      
      LayoutTests:
      
      Update pixel test reference after the blur support.
      
      * platform/qt/fast/box-shadow/basic-shadows-expected.checksum:
      * platform/qt/fast/box-shadow/basic-shadows-expected.png:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fa215186
    • abecsi@webkit.org's avatar
      2010-08-16 Andras Becsi <abecsi@webkit.org> · bb8af699
      abecsi@webkit.org authored
              Rubber-stamped by Gustavo Noronha Silva.
      
              [GTK] Build fix for MathML code generation.
      
              No new tests needed.
      
              * GNUmakefile.am:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb8af699
    • commit-queue@webkit.org's avatar
      2010-08-16 Sheriff Bot <webkit.review.bot@gmail.com> · 34634d94
      commit-queue@webkit.org authored
              Unreviewed, rolling out r65414.
              http://trac.webkit.org/changeset/65414
              https://bugs.webkit.org/show_bug.cgi?id=44055
      
              GTL & QT tests failing. (Requested by pfeldman on #webkit).
      
              * inspector/front-end/InjectedScript.js:
              (injectedScriptConstructor):
              (injectedScriptConstructor.):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      34634d94
    • ariya@webkit.org's avatar
      2010-08-16 Ariya Hidayat <ariya@sencha.com> · 52ee2c57
      ariya@webkit.org authored
              Reviewed by Antonio Gomes.
      
              [Qt] Save and restore shadow state in GraphicsContextQt
              https://bugs.webkit.org/show_bug.cgi?id=44031
      
              This is needed after r65362.
              Use a new class ContextShadowParameter to track and keep the shadow
              state. We use this rather than using GraphicsContextState to allow
              possible optimizations (right now only to determine the shadow type,
              but in future it might cover things like cached scratch image,
              persistent shader, etc).
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::ContextShadowParameter::):
              (WebCore::ContextShadowParameter::ContextShadowParameter):
              (WebCore::ContextShadowParameter::clear):
              (WebCore::GraphicsContextPlatformPrivate::hasShadow):
              (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
              (WebCore::GraphicsContext::savePlatformState):
              (WebCore::GraphicsContext::restorePlatformState):
              (WebCore::GraphicsContext::drawRect):
              (WebCore::GraphicsContext::drawLine):
              (WebCore::GraphicsContext::strokeArc):
              (WebCore::GraphicsContext::drawConvexPolygon):
              (WebCore::GraphicsContext::fillPath):
              (WebCore::GraphicsContext::strokePath):
              (WebCore::GraphicsContext::fillRect):
              (WebCore::GraphicsContext::fillRoundedRect):
              (WebCore::GraphicsContext::setPlatformShadow):
              (WebCore::GraphicsContext::clearPlatformShadow):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65420 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52ee2c57
    • bulach@chromium.org's avatar
      2010-07-28 Marcus Bulach <bulach@chromium.org> · b5de3239
      bulach@chromium.org authored
              Reviewed by Adam Barth.
      
              Implement IDBKeyPath parser.
              https://bugs.webkit.org/show_bug.cgi?id=42976
      
              IDBKeyPath is an internal class, exposed only for unit tests for now.
              It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
              from a SerializedScriptValue.
      
              * WebCore.gypi:
              * storage/IDBKeyPath.cpp: Added.
              (WebCore::IDBKeyPath::create):
              (WebCore::IDBKeyPath::IDBKeyPath):
              (WebCore::IDBKeyPath::~IDBKeyPath):
              (WebCore::IDBKeyPath::hasNext):
              (WebCore::IDBKeyPath::next):
              (WebCore::IDBKeyPath::identifier):
              (WebCore::IDBKeyPath::hasIndex):
              (WebCore::IDBKeyPath::indexValue):
              (WebCore::IDBKeyPath::parserError):
              (WebCore::IDBKeyPath::parse):
              (WebCore::IDBKeyPath::Lexer::lex):
              (WebCore::isSafeIdentifierStartCharacter):
              (WebCore::isSafeIdentifierCharacter):
              (WebCore::IDBKeyPath::Lexer::lexIdentifier):
              (WebCore::IDBKeyPath::Lexer::lexNumber):
              * storage/IDBKeyPath.h: Added.
              (WebCore::IDBKeyPath::Token::Token):
              (WebCore::IDBKeyPath::):
              (WebCore::IDBKeyPath::Lexer::Lexer):
              (WebCore::IDBKeyPath::Lexer::next):
              (WebCore::IDBKeyPath::Lexer::currentToken):
      2010-07-28  Marcus Bulach  <bulach@chromium.org>
      
              Reviewed by Adam Barth.
      
              Implement IDBKeyPath parser.
              https://bugs.webkit.org/show_bug.cgi?id=42976
      
              IDBKeyPath is an internal class, exposed only for unit tests for now.
              It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
              from a SerializedScriptValue.
      
              * WebKit.gyp:
              * tests/IDBKeyPathTest.cpp: Added.
              (WebCore::ExpectedToken::ExpectedToken):
              (WebCore::checkKeyPath):
              (WebCore::TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b5de3239
    • steveblock@google.com's avatar
      2010-08-13 Steve Block <steveblock@google.com> · f68fb81a
      steveblock@google.com authored
              Reviewed by Alexey Proskuryakov.
      
              Geolocation requests in progress when the frame is disconnected should invoke the error callback
              https://bugs.webkit.org/show_bug.cgi?id=43974
      
              If requests are ongoing when the Frame is disconnected, we abort them with a fatal error.
              To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to
              set a fatal error on all ongoing requests. Once the requests have made their error
              callbacks, they are deleted. Note that we check at callback time that the script
              execution context for the callback is still valid, so it's safe to attempt these
              callbacks even after the Geolocation object's Frame has gone.
      
              This requires a change to allow multiple calls to GeoNotifier::setFatalError().
              For repeated calls, we do not replace the existing error. This ensures that when
              permission has been denied and the frame is then disconnected, the error callback
              reports the permission error, as required by the spec.
      
              Tests: fast/dom/Geolocation/disconnected-frame.html
                     fast/dom/Geolocation/disconnected-frame-permission-denied.html
      
              * page/Geolocation.cpp:
              (WebCore::Geolocation::GeoNotifier::setFatalError):
              (WebCore::Geolocation::disconnectFrame):
              (WebCore::Geolocation::startRequest):
              (WebCore::Geolocation::cancelAllRequests):
              * page/Geolocation.h:
      2010-08-13  Steve Block  <steveblock@google.com>
      
              Reviewed by Alexey Proskuryakov.
      
              Geolocation requests in progress when the frame is disconnected should invoke the error callback
              https://bugs.webkit.org/show_bug.cgi?id=43974
      
              Added new tests to GTK skipped list.
      
              * fast/dom/Geolocation/disconnected-frame.html: Added.
              * fast/dom/Geolocation/disconnected-frame-expected.txt: Added.
              * fast/dom/Geolocation/script-tests/disconnected-frame.js: Added.
              * fast/dom/Geolocation/resources/disconnected-frame-inner.html: Added.
              * fast/dom/Geolocation/disconnected-frame-permission-denied.html: Added.
              * fast/dom/Geolocation/disconnected-frame-permission-denied-expected.txt: Added.
              * fast/dom/Geolocation/script-tests/disconnected-frame-permission-denied.js: Added.
              * platform/gtk/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65416 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f68fb81a
    • pfeldman@chromium.org's avatar
      2010-08-16 Pavel Feldman <pfeldman@chromium.org> · 760ab44e
      pfeldman@chromium.org authored
              Reviewed by Joseph Pecoraro.
      
              Web Inspector: upstream frontend-side WebSocket transport.
              https://bugs.webkit.org/show_bug.cgi?id=43970
      
              Chromium already has an alternate WebSocket-based communication channel with
              the backend. Upstreaming it in this change. We will agree on the URI
              of the remote service as the protocol matures.
      
              * inspector/front-end/inspector.js:
              (.WebInspector.socket.onmessage):
              (.WebInspector.socket.onerror):
              (.WebInspector.socket.onopen):
              (WebInspector.loaded):
              (WebInspector.doLoadedDone):
              (WebInspector_syncDispatch):
      2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Joseph Pecoraro.
      
              Web Inspector: upstream frontend-side WebSocket transport.
              https://bugs.webkit.org/show_bug.cgi?id=43970
      
              Chromium already has an alternate WebSocket-based communication channel with
              the backend. Upstreaming it in this change. We will agree on the URI
              of the remote service as the protocol matures.
      
              * src/WebDevToolsFrontendImpl.cpp:
              (WebKit::WebDevToolsFrontendImpl::dispatchOnInspectorFrontend):
              * src/js/DevTools.js:
              (WebInspector.loaded):
              (devtools.domContentLoaded):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65415 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      760ab44e