diff options
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r-- | WebCore/ChangeLog | 4246 |
1 files changed, 4245 insertions, 1 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 53c2690..5175089 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,4247 @@ +2009-08-18 Kent Tamura <tkent@chromium.org> + + Reviewed by Eric Seidel. + + Support for parsing <datalist> element and generating HTMLDataListElement nodes. + https://bugs.webkit.org/show_bug.cgi?id=26915 + + Tests: fast/forms/datalist-nonoption-child.html + fast/forms/datalist.html + + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.vcproj/build-generated-files.sh: + * WebCore.xcodeproj/project.pbxproj: + * WebCoreSources.bkl: + * css/html.css: + * html/CollectionType.h: + (WebCore::): + * html/HTMLCollection.cpp: + (WebCore::HTMLCollection::itemAfter): + * html/HTMLDataListElement.cpp: Added. + (WebCore::HTMLDataListElement::HTMLDataListElement): + (WebCore::HTMLDataListElement::~HTMLDataListElement): + (WebCore::HTMLDataListElement::checkDTD): + (WebCore::HTMLDataListElement::options): + * html/HTMLDataListElement.h: Added. + * html/HTMLDataListElement.idl: Added. + * html/HTMLElement.cpp: + (WebCore::inlineTagList): + * html/HTMLParser.cpp: + (WebCore::HTMLParser::isAffectedByResidualStyle): + * html/HTMLTagNames.in: + +2009-08-17 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Eric Seidel. + + -webkit-box-orient:horizontal doesn't work on <button> tag + https://bugs.webkit.org/show_bug.cgi?id=34445 + + Make a flexible button's anonymous child flexible and pass the + parent's box-orient to the anonymous child. + + Also, added a renderName for anonymous flexible boxes. + + Test: fast/flexbox/box-orient-button.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::createAnonymousBlock): + * rendering/RenderBlock.h: + * rendering/RenderButton.cpp: + (WebCore::RenderButton::addChild): + (WebCore::RenderButton::setupInnerStyle): + * rendering/RenderFlexibleBox.cpp: + (WebCore::RenderFlexibleBox::renderName): + +2009-08-17 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dave Hyatt. + + Render -webkit-mask via compositing layers when possible + https://bugs.webkit.org/show_bug.cgi?id=28414 + + Implement accelerated compositing of -webkit-mask, when combined + with already-composited content. + + RenderLayerBacking now creates an additional GraphicsLayer for the mask contents, + and sets this as the mask on another GraphicsLayer via the setMaskLayer() method. + GraphicsLayerCA then applies the mask using -[CALayer setMask:]. + + The enum values for GraphicsLayerPaintingPhase were renamed to avoid the + confusion with "mask", and a new value, GraphicsLayerPaintMask, was added which + indicates that just the mask is painting. + + When painting the composited mask, we need to paint with the normal compositing + mode rather than CompositeDestinationIn, so InlineFlowBox and RenderBox now consult + layer()->hasCompositedMask() to pick the mode. If the mask is composited, they no longer + need to make transparency layers. + + We no longer have to throw video rendering into software because of masks. + + When a masked element has composited descendants, that element needs to + become composited so that the mask can be applied via compositing. + + Tests: compositing/masks/masked-ancestor.html + compositing/masks/simple-composited-mask.html + + * platform/graphics/GraphicsLayer.cpp: + (WebCore::GraphicsLayer::GraphicsLayer): + * platform/graphics/GraphicsLayer.h: + (WebCore::GraphicsLayer::maskLayer): + (WebCore::GraphicsLayer::setMaskLayer): + (WebCore::GraphicsLayer::paintingPhase): + (WebCore::GraphicsLayer::setPaintingPhase): + * platform/graphics/GraphicsLayerClient.h: + (WebCore::): + * platform/graphics/mac/GraphicsLayerCA.h: + (WebCore::GraphicsLayerCA::): + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::GraphicsLayerCA::setMaskLayer): + (WebCore::GraphicsLayerCA::recursiveCommitChanges): + (WebCore::GraphicsLayerCA::commitLayerChanges): + (WebCore::GraphicsLayerCA::updateMaskLayer): + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::paintMask): + * rendering/RenderBox.cpp: + (WebCore::RenderBox::paintMaskImages): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::hasCompositedMask): + * rendering/RenderLayer.h: + (WebCore::RenderLayer::hasCompositedMask): + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::~RenderLayerBacking): + (WebCore::RenderLayerBacking::destroyGraphicsLayer): + (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): + (WebCore::RenderLayerBacking::updateForegroundLayer): + (WebCore::RenderLayerBacking::updateMaskLayer): + (WebCore::RenderLayerBacking::paintingPhaseForPrimaryLayer): + (WebCore::RenderLayerBacking::setContentsNeedDisplay): + (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): + (WebCore::RenderLayerBacking::paintIntoLayer): + (WebCore::RenderLayerBacking::paintContents): + * rendering/RenderLayerBacking.h: + (WebCore::RenderLayerBacking::hasMaskLayer): + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::computeCompositingRequirements): + (WebCore::RenderLayerCompositor::canAccelerateVideoRendering): + (WebCore::RenderLayerCompositor::requiresCompositingWhenDescendantsAreCompositing): + * rendering/RenderLayerCompositor.h: + +2009-08-17 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dave Hyatt. + + Layer content misplaced with compositing, z-index and overflow + https://bugs.webkit.org/show_bug.cgi?id=28361 + + The foreground GraphicsLayer (used to render element foreground when the element has + negative z-order children) was misplaced when there is a clipping layer (which clips + children). The foreground layer is parented under the clipping layer so that the foreground + depth-sorts with the layer's children, so its geometry needs to be computed relative to + that clipping layer. + + Also clarified some FIXME comments, and corrected a debug-only layer name. + + Test: compositing/geometry/clipping-foreground.html + + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::GraphicsLayerCA::updateSublayerList): + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): + (WebCore::RenderLayerBacking::updateForegroundLayer): + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): + +2009-08-17 Mark Rowe <mrowe@apple.com> + + Reviewed by Sam Weinig. + + Fix leaks of SVGElementInstance seen during regression tests. + + r47313 made TreeShared types start with a ref-count of 1, but SVGElementInstance was mistakenly + not updated to have a create method that adopted the initial reference. This lead to the instances + of SVGElementInstance allocated by SVGUseElement being leaked. + + * svg/SVGElementInstance.h: + (WebCore::SVGElementInstance::create): + * svg/SVGUseElement.cpp: + (WebCore::SVGUseElement::buildPendingResource): + (WebCore::SVGUseElement::buildInstanceTree): + (WebCore::SVGUseElement::handleDeepUseReferencing): + +2009-08-17 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + Some cleanup towards https://bugs.webkit.org/show_bug.cgi?id=13631 + Page Cache should support pages with frames. + + - Re-factor all remaining page cache code out of DocumentLoader, as CachedPage/CacheFrame loads + are solely the responsibility of FrameLoader. + - Enhance some page cache related Logging to help development. + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::didCommitLoad): + (WebCore::InspectorController::identifierForInitialRequest): + + * loader/DocumentLoader.cpp: + (WebCore::DocumentLoader::DocumentLoader): + * loader/DocumentLoader.h: + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::FrameLoader): + (WebCore::FrameLoader::commitProvisionalLoad): + (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): + (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): + * loader/FrameLoader.h: + (WebCore::FrameLoader::isLoadingFromCachedPage): + +2009-08-17 Roland Steiner <rolandsteiner@google.com> + + Reviewed by Eric Seidel. + + Moved implementation of isAfterContent to RenderObject + (as inline method to avoid potential performance regressions). + + BUG 28376 - [Cleanup] isAfterContent() implemented twice, should be member of RenderObject + (https://bugs.webkit.org/show_bug.cgi?id=28376) + + * rendering/RenderBox.cpp: + * rendering/RenderBox.h: + * rendering/RenderInline.cpp: + * rendering/RenderObject.h: + (WebCore::RenderObject::isAfterContent): + +2009-08-17 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + Assertion failure in WebCore::RenderHTMLCanvas::layout + https://bugs.webkit.org/show_bug.cgi?id=12052 + + Don't handle run-in if the element is not a block element. + + Test: fast/runin/nonblock-runin.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::handleRunInChild): + +2009-08-17 Benjamin C Meyer <benjamin.meyer@torchmobile.com> + + Reviewed by Darin Adler. + + Fix createImageData to raise the NOT_SUPPORTED_ERR exception when + either of the arguments are not finite. + + According to + http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation: + "If any of the arguments to createImageData() or getImageData() are + infinite or NaN, or if the createImageData() method is invoked with + only one argument but that argument is null, the method must instead + raise a NOT_SUPPORTED_ERR exception." + + Test: http://philip.html5.org/tests/canvas/suite/tests/2d.imageData.create.nonfinite.html + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::createImageData): + * html/canvas/CanvasRenderingContext2D.h: + * html/canvas/CanvasRenderingContext2D.idl: + +2009-08-17 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + Add a way to release the storage lock + https://bugs.webkit.org/show_bug.cgi?id=28411 + + Two scripts within the same origin that are accessing LocalStorage must not do + it simultaneously, according to the spec. There are some cases, however, where + a script might want to override this behavior. navigator.getStorageUpdates() + was added for this reason: + http://dev.w3.org/html5/spec/Overview.html#manually-releasing-the-storage-mutex + + Add this function to navigator and hook it up to DOM Storage. + + * page/Navigator.cpp: + (WebCore::Navigator::getStorageUpdates): + * page/Navigator.h: + * page/Navigator.idl: + * storage/StorageNamespace.h: + * storage/StorageNamespaceImpl.cpp: + (WebCore::StorageNamespaceImpl::unlock): + * storage/StorageNamespaceImpl.h: + +2009-08-17 Mark Rowe <mrowe@apple.com> + + Build fix. + + CFNetwork isn't present in the framework search path on Mac OS X so we can't directly include its headers. + We include CoreServices.h, the umbrella framework that contains CFNetwork, from the prefix header which + results in the CFNetwork headers being included on Mac OS X. CoreServices.h doesn't include CFNetwork.h on + Windows though so we explicitly include this header from the prefix header when on Windows. + + * WebCorePrefix.h: + * platform/network/cf/DNSCFNet.cpp: Remove #include that is no longer needed. + +2009-08-17 Alexey Proskuryakov <ap@apple.com> + + Trying a better build fix (the previous one broke Leopard bots, although it did build for me). + + * platform/network/cf/DNSCFNet.cpp: Include CFNetwork/CFNetwork.h instead. + +2009-08-17 Alexey Proskuryakov <ap@apple.com> + + Trying to fix Windows build. + + * platform/network/cf/DNSCFNet.cpp: Include CFNetwork/CFHost.h. + +2009-08-17 Peter Kasting <pkasting@google.com> + + Reviewed by Steve Falkenburg. + + https://bugs.webkit.org/show_bug.cgi?id=27323 + Only add Cygwin to the path when it isn't already there. This avoids + causing problems for people who purposefully have non-Cygwin versions of + executables like svn in front of the Cygwin ones in their paths. + + * WebCore.vcproj/QTMovieWin.vcproj: + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.vcproj/WebCoreGenerated.vcproj: + +2009-08-17 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Geoff Garen. + + https://bugs.webkit.org/show_bug.cgi?id=28401 + Add support for DNS prefetching with CFNetwork + + This is just an optimization, no behavior change, so no tests. + + * platform/network/cf/DNSCFNet.cpp: + (WebCore::clientCallback): + (WebCore::prefetchDNS): + Use async CFHostStartInfoResolution() for implementation. + +2009-08-17 Aaron Boodman <aa@chromium.org> + + Reviewed by Alexey Proskuryakov. + + https://bugs.webkit.org/show_bug.cgi?id=28313: Combine ThreadableLoaderOptions::crossOriginRequestPolicy and + ThreadableLoaderOptions::crossOriginRedirectPolicy since they are always set the same way. + + Also, tightened up behavior of XMLHttpRequest with cross-origin redirects and access control. We have not implemented + redirects access control, so we should never redirect across origins. But in two edge cases, we were: + + * Asynchronous XHR: Script on origin A requests resource from origin B. Server redirects (without sending access control + authorization headers) to a resource on origin A. + * Synchronous XHR: Script on origin A requests resource from origin B. Server redirects (without sending access control + authorization headers) to another resource on origin B (this time sending access control authorization headers). + + Test: http/tests/xmlhttprequest/access-control-and-redirects.html + + * loader/DocumentThreadableLoader.cpp: + (WebCore::DocumentThreadableLoader::willSendRequest): Refactor redirect checking code into shared location. + (WebCore::DocumentThreadableLoader::loadRequest): Ditto. + (WebCore::DocumentThreadableLoader::isAllowedRedirect): Ditto. + * loader/DocumentThreadableLoader.h: + * loader/ThreadableLoader.h: + (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Remove ThreadableLoaderOptions::crossOriginRedirectPolicy. + * page/EventSource.cpp: + (WebCore::EventSource::connect): Ditto. + * workers/Worker.cpp: Ditto. + (WebCore::Worker::Worker): Ditto. + * workers/WorkerContext.cpp: Ditto. + (WebCore::WorkerContext::importScripts): Ditto. + * workers/WorkerScriptLoader.cpp: + (WebCore::WorkerScriptLoader::loadSynchronously): Ditto. + (WebCore::WorkerScriptLoader::loadAsynchronously): Ditto. + * workers/WorkerScriptLoader.h: + * xml/XMLHttpRequest.cpp: + (WebCore::XMLHttpRequest::createRequest): Ditto. + +2009-08-17 Adam Langley <agl@google.com> + + Reviewed by Dan Bernstein (relanding of r47157). + + Fix a typo in platform/graphics/skia/PlatformContextSkia.cpp + + https://bugs.webkit.org/show_bug.cgi?id=28172 + + This was originally fixed in r47157, however it triggered a bug in + Skia which caused Chromium Linux to fail layout tests in debug mode. + It was reverted in r47189 while we sorted it out. + + The Skia bug was fixed in Skia's r321 [1] and rolled into Chromium in + Chromium's r23523. This is a reland of the original patch. + + No new tests because it's a just typo fix. + + [1] http://code.google.com/p/skia/source/detail?r=321 + + * platform/graphics/skia/PlatformContextSkia.cpp: + (PlatformContextSkia::setupPaintCommon): + +2009-08-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + Protect ResourceHandle for g_file_query_info_async call, using the + same technique we already use for HTTP requests that take the soup + path. + + * platform/network/soup/ResourceHandleSoup.cpp: + (WebCore::ResourceHandleInternal::~ResourceHandleInternal): + (WebCore::ResourceHandle::~ResourceHandle): + (WebCore::finishedCallback): + (WebCore::): + +2009-08-17 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + REGRESSION (r47255): MediaWiki's (including Wikipedia) navigation pane + appears below the main content + https://bugs.webkit.org/show_bug.cgi?id=28350 + + A particular version of the MediaWiki software detects WebKit through + user agent sniffing and imports a style sheet called KHTMLFixes.css, + which contains a single rule that was meant to work around some KHTML + bug, but currently has the sole effect of causing the float containing + the main article content to extend all the way to the left and thus push + down the left navigation pane. + + * css/CSSImportRule.cpp: + (WebCore::CSSImportRule::setCSSStyleSheet): If site specific hacks are + enabled, check if the imported style sheet is the MediaWiki + KHTMLFixes.css. If so, remove the offending rule. + +2009-08-17 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Kevin Ollivier. + + Correct crash when processing local cancelled requests. + + No new tests. Existing fast/images/favicon-as-image.html + displays the problem. + + * platform/network/curl/ResourceHandleManager.cpp: + (WebCore::writeCallback): Add check for m_cancelled after + performing local-file processing. + (WebCore::ResourceHandleManager::downloadTimerCallback): Add + check for m_cancelled after performing local-file processing. + +2009-08-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Unreviewed. Reverts 47371, since it breaks GTK+. + + * platform/graphics/ImageSource.cpp: + (WebCore::ImageSource::setData): + * platform/image-decoders/ImageDecoder.cpp: Removed. + * platform/image-decoders/ImageDecoder.h: + (WebCore::ImageDecoder::ImageDecoder): + * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: + (WebCore::convertCMYKToRGBA): + (WebCore::convertRGBToRGBA): + (WebCore::JPEGImageDecoder::outputScanlines): + * platform/image-decoders/jpeg/JPEGImageDecoder.h: + * platform/image-decoders/png/PNGImageDecoder.cpp: + (WebCore::PNGImageDecoder::headerAvailable): + (WebCore::PNGImageDecoder::rowAvailable): + +2009-08-17 Yong Li <yong.li@torchmobile.com> + + Reviewed by Adam Treat. + + Allow image decoders to down-sample the image directly + to scaled output buffer. This can be enabled/disabled by + macro ENABLE(IMAGE_DECODER_DOWN_SAMPLING). + Only JPEG and PNG decoders are modified to support it now. + https://bugs.webkit.org/show_bug.cgi?id=28308 + + * platform/graphics/ImageSource.cpp: + (WebCore::ImageSource::setData): + * platform/image-decoders/ImageDecoder.cpp: Added. + * platform/image-decoders/ImageDecoder.h: + (WebCore::ImageDecoder::ImageDecoder): + (WebCore::ImageDecoder::setMaxNumPixels): + * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: + (WebCore::convertCMYKToRGBA): + (WebCore::convertRGBToRGBA): + (WebCore::JPEGImageDecoder::outputScanlines): + * platform/image-decoders/jpeg/JPEGImageDecoder.h: + (WebCore::JPEGImageDecoder::setSize): + * platform/image-decoders/png/PNGImageDecoder.cpp: + (WebCore::PNGImageDecoder::headerAvailable): + (WebCore::PNGImageDecoder::rowAvailable): + +2009-08-17 Simon Fraser <simon.fraser@apple.com> + + Build fix: fix float literals to avoid casting warnings. + + * rendering/MediaControlElements.cpp: + +2009-08-17 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Eric Seidel. + + Use OwnPtrs for GraphicsLayers + https://bugs.webkit.org/show_bug.cgi?id=28399 + + Convert RenderLayerBacking and RenderLayerCompositor to use OwnPtrs + for their references to GraphicsLayers. + + * platform/graphics/GraphicsLayer.h: + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::GraphicsLayer::create): + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::RenderLayerBacking): + (WebCore::RenderLayerBacking::createGraphicsLayer): + (WebCore::RenderLayerBacking::destroyGraphicsLayer): + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): + (WebCore::RenderLayerBacking::updateInternalHierarchy): + (WebCore::RenderLayerBacking::updateClippingLayers): + (WebCore::RenderLayerBacking::updateForegroundLayer): + (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): + * rendering/RenderLayerBacking.h: + (WebCore::RenderLayerBacking::graphicsLayer): + (WebCore::RenderLayerBacking::clippingLayer): + (WebCore::RenderLayerBacking::ancestorClippingLayer): + (WebCore::RenderLayerBacking::foregroundLayer): + (WebCore::RenderLayerBacking::parentForSublayers): + (WebCore::RenderLayerBacking::childForSuperlayers): + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::~RenderLayerCompositor): + (WebCore::RenderLayerCompositor::rootPlatformLayer): + (WebCore::RenderLayerCompositor::didMoveOnscreen): + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): + (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): + * rendering/RenderLayerCompositor.h: + +2009-08-17 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Reset InjectedScript styles cache on document change. + + https://bugs.webkit.org/show_bug.cgi?id=28390 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::close): + (WebCore::InspectorController::populateScriptObjects): + (WebCore::InspectorController::didCommitLoad): + (WebCore::InspectorController::resetInjectedScript): + * inspector/InspectorController.h: + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::setDocument): + * inspector/InspectorDOMAgent.h: + * inspector/front-end/InjectedScript.js: + (InjectedScript._reset): + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + * rendering/MediaControlElements.cpp: Removed unneeded include of CString.h, + resorted includes, renamed "doc" to "document" and fixed formatting. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Removed functions now unneeded due to use of Reflect to create + language bindings. + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap): + Get at usemap attribute directly. + + * editing/DeleteButtonController.cpp: + (WebCore::DeleteButtonController::createDeletionUI): + Get at id attribute directly. + * editing/EditorCommand.cpp: + (WebCore::executeInsertHorizontalRule): Ditto. + + * html/HTMLDocument.cpp: + (WebCore::HTMLDocument::dir): Get at dir attribute of body directly. + (WebCore::HTMLDocument::setDir): Ditto. + + * html/HTMLElement.cpp: Deleted unused functions. + * html/HTMLElement.h: Ditto. + + * html/HTMLImageElement.cpp: Deleted unused functions. + (WebCore::HTMLImageElement::alt): Changed to return const AtomicString&. + (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Changed to + get at usemap attribute directly, but added a FIXME because although + it is what the old code did, it looks to not be entirely correct. + + * html/HTMLImageElement.h: Deleted unused functions. + + * rendering/HitTestResult.cpp: + (WebCore::HitTestResult::altDisplayString): Get at alt attribute directly. + + * rendering/RenderImage.cpp: + (WebCore::RenderImage::imageMap): Get at usemap attribute directly. + + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::createGraphicsLayer): Get at id attribute + directly. + (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Removed + explicit HTMLNames namespace qualification. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): Removed unneeded calls + to RefPtr::get. + +2009-08-17 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Discard DOM Node bindings on any document change. + + https://bugs.webkit.org/show_bug.cgi?id=28389 + + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::setDocument): + +2009-08-13 Joseph Pecoraro <joepeck02@gmail.com> + + Reviewed by Timothy Hatcher. + + Inspector: Improve Cookie DataGrid to Show Hidden Data + https://bugs.webkit.org/show_bug.cgi?id=28269 + + * English.lproj/localizedStrings.js: DataGrid Headers "Name", "Value", "Size", ... + * WebCore.gypi: added missing files + + Implemented Bindings for InspectorController.deleteCookie(name) + + * inspector/InspectorBackend.idl: + * bindings/js/JSInspectorBackendCustom.cpp: + (WebCore::JSInspectorBackend::cookies): + (WebCore::JSInspectorBackend::deleteCookie): + + v8 Bindings Stubs + + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8InspectorBackendCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + + Removed WebInspector.Cookie + + * inspector/front-end/Cookie.js: Removed. + * inspector/front-end/inspector.html: + * inspector/front-end/WebKit.qrc: + + Improved DataGrid and Kept Fallback Behavior for Platforms that don't + yet provide access to raw cookies. + + * inspector/front-end/CookieItemsView.js: + (WebInspector.CookieItemsView): + (WebInspector.CookieItemsView.prototype.get statusBarItems): + (WebInspector.CookieItemsView.prototype.update): + (WebInspector.CookieItemsView.prototype.buildCookies): + (WebInspector.CookieItemsView.prototype.dataGridForCookies): + (WebInspector.CookieItemsView.prototype.fallbackUpdate.callback): + (WebInspector.CookieItemsView.prototype.fallbackUpdate): + (WebInspector.CookieItemsView.prototype.fallbackBuildCookiesFromString): + (WebInspector.CookieItemsView.prototype.fallbackDataGridForCookies): + (WebInspector.CookieItemsView.prototype._deleteButtonClicked): + + Interaction with the page through Injected Script (for fallback behavior) + + * inspector/front-end/DOMAgent.js: + (InspectorController.getCookies): + * inspector/front-end/InjectedScript.js: + (InjectedScript.setStyleProperty): style fix + (InjectedScript.getCookies): + + Allow alignment of text inside DataGrids. + + * inspector/front-end/DataGrid.js: + (WebInspector.DataGrid): + (WebInspector.DataGridNode.prototype.createCell): + * inspector/front-end/DatabasesPanel.js: + (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage): + * inspector/front-end/inspector.css: + + Added deleteCookie(., ., String name) + Modified getRawCookies to return a bool to know if its implemented + + * platform/CookieJar.h: + + + Implemented deleteCookie for Macs + + * platform/mac/CookieJar.mm: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + + Stub Implementations for Other Platforms + + * platform/haiku/CookieJarHaiku.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/network/chromium/CookieJarChromium.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/network/curl/CookieJarCurl.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/network/soup/CookieJarSoup.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/network/win/CookieJarCFNetWin.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/network/win/CookieJarWin.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + * platform/qt/CookieJarQt.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + +2009-08-17 Adam Treat <adam.treat@torchmobile.com> + + Blind build fix for Leopard. + + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::adjustLineToPixelBoundaries): + +2009-08-13 Mike Fenton <mike.fenton@torchmobile.com> + + Reviewed by Adam Treat. + + Style fixes based on cpp_style.py and WebKit Style guide for + GraphicsContextCG.cpp + + https://bugs.webkit.org/show_bug.cgi?id=28268 + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::drawEllipse): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::applyStrokePattern): + (WebCore::GraphicsContext::drawPath): + (WebCore::GraphicsContext::clipOut): + (WebCore::GraphicsContext::clipOutEllipseInRect): + (WebCore::GraphicsContext::addInnerRoundedRectClip): + (WebCore::GraphicsContext::clipToImageBuffer): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::setLineCap): + (WebCore::GraphicsContext::setLineJoin): + (WebCore::GraphicsContext::roundToDevicePixels): + (WebCore::GraphicsContext::drawLineForText): + (WebCore::GraphicsContext::setURLForRect): + (WebCore::GraphicsContext::setImageInterpolationQuality): + (WebCore::GraphicsContext::imageInterpolationQuality): + (WebCore::GraphicsContext::setPlatformTextDrawingMode): + (WebCore::GraphicsContext::setCompositeOperation): + +2009-08-13 Mike Fenton <mike.fenton@torchmobile.com> + + Reviewed by Adam Treat. + + Style fixes based on cpp_style.py and WebKit Style guide for + GraphicsContext.cpp/h, GraphicsContextCairo.cpp and GraphicsContextQt.cpp. + + https://bugs.webkit.org/show_bug.cgi?id=28268 + + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::save): + (WebCore::GraphicsContext::restore): + (GraphicsContext::drawText): + (GraphicsContext::initFocusRing): + (GraphicsContext::focusRingBoundingRect): + (GraphicsContext::drawImage): + * platform/graphics/GraphicsContext.h: + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::setLineCap): + (WebCore::GraphicsContext::setLineJoin): + (WebCore::toCairoOperator): + * platform/graphics/qt/GraphicsContextQt.cpp: + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + Change HTMLAreaElement to use OwnArrayPtr + https://bugs.webkit.org/show_bug.cgi?id=28386 + + * html/HTMLAreaElement.cpp: + (WebCore::HTMLAreaElement::HTMLAreaElement): Removed unneeded initializer. + (WebCore::HTMLAreaElement::~HTMLAreaElement): Removed unneeded delete call. + (WebCore::HTMLAreaElement::parseMappedAttribute): Use the set function + instead of deletion followed by assignment. + * html/HTMLAreaElement.h: Use OwnArrayPtr. + +2009-08-17 Darin Adler <darin@apple.com> + + Fix Windows build. + + * dom/make_names.pl: Add back cast to (void*) needed on Windows. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + Move noResize from HTMLFrameElementBase to HTMLFrameElement + https://bugs.webkit.org/show_bug.cgi?id=28384 + + * html/HTMLFrameElement.cpp: + (WebCore::HTMLFrameElement::HTMLFrameElement): Initialize m_noResize. + (WebCore::HTMLFrameElement::parseMappedAttribute): Set m_noResize to true + here if noresizeAttr is changed. This code was moved here from + HTMLFrameElementBase, but I added some FIXME comments. + (WebCore::HTMLFrameElement::setNoResize): Set the attribute based on + boolean argument. Moved here from HTMLFrameElementBase. + + * html/HTMLFrameElement.h: Moved noResize, setNoResize, and m_noResize + here from HTMLFrameElementBase. + + * html/HTMLFrameElementBase.cpp: + (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Removed m_noResize. + (WebCore::HTMLFrameElementBase::parseMappedAttribute): Removed code to parse + noresizeAttr. + + * html/HTMLFrameElementBase.h: Removed noResize, setNoResize, and m_noResize. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + Tweak HTMLFrameElementBase so that m_URL can be private + https://bugs.webkit.org/show_bug.cgi?id=28385 + + * html/HTMLFrameElement.cpp: + (WebCore::HTMLFrameElement::rendererIsNeeded): Removed m_URL argument. + * html/HTMLFrameElementBase.cpp: + (WebCore::HTMLFrameElementBase::isURLAllowed): Use m_URL instead of + taking an argument. + (WebCore::HTMLFrameElementBase::openURL): Removed m_URL argument. + * html/HTMLFrameElementBase.h: Removed argument from isURLAllowed function. + * html/HTMLIFrameElement.cpp: + (WebCore::HTMLIFrameElement::rendererIsNeeded): Removed m_URL argument. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + HTMLViewSourceDocument should use smart pointers + https://bugs.webkit.org/show_bug.cgi?id=28378 + + * html/HTMLViewSourceDocument.cpp: + (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument): Don't initialize + pointers any more since RefPtr starts 0 by default. + (WebCore::HTMLViewSourceDocument::createContainingTable): Use more specific + types for local variables. + (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Return a PassRefPtr, + and use a RefPtr of a more specific type for a local variable. + (WebCore::HTMLViewSourceDocument::addLine): Use more specific types for local + variables, and use RefPtr as well. + (WebCore::HTMLViewSourceDocument::addLink): Return a PassRefPtr, and use a + RefPtr of a more specific type for a local variable. + + * html/HTMLViewSourceDocument.h: Change return types to PassRefPtr and + data member types to RefPtr. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + DOM attribute getter/setter functions should use const AtomicString& type + https://bugs.webkit.org/show_bug.cgi?id=25425 + + Convert 4 more classes. These are classes I am going to make other changes + to soon, so it's good to have this use of Reflect in the IDL out of the way. + + * html/HTMLEmbedElement.idl: Use Reflect for many attributes. + * html/HTMLFrameElement.idl: Ditto. + * html/HTMLIFrameElement.idl: Ditto. + * html/HTMLObjectElement.idl: Ditto. + +2009-08-17 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Script to create element factory needs changes to accommodate calling create + https://bugs.webkit.org/show_bug.cgi?id=28379 + + * dom/make_names.pl: Tweak formatting. Remove lots of unneeded quotes + around names used inside {}. Added new createWithNew property for tags + that makes the factory use a create function instead of calling new. + Renamed functions with initialize in their name to have default in their + name, since they return an array full of default values and don't themselves + initialize anything. + +2009-08-16 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + StyledElement should use ASCIICType instead of having its own toHex function + https://bugs.webkit.org/show_bug.cgi?id=28377 + + * dom/StyledElement.cpp: + (WebCore::StyledElement::addCSSColor): Use isASCIIHexDigit and toASCIIHexValue. + +2009-08-16 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + execCommand("InsertHorizontalRule") inserts a broken <hr> element + https://bugs.webkit.org/show_bug.cgi?id=28375 + + * editing/EditorCommand.cpp: + (WebCore::executeInsertHorizontalRule): Create an HTMLHRElement + instead of just an HTMLElement. + +2009-08-16 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> + + Reviewed by George Staikos. + + [WML] <option> element & 'onpick' events - history navigation is broken + https://bugs.webkit.org/show_bug.cgi?id=28371 + + After selecting an option element with an 'onpick' event associated with a 'go' task, + the navigation is executed. When going back in history, the same 'onpick' event is fired + again. Fix that problem, add wml/option-element-onpick-recursion.html covering the bug. + + Test: wml/option-element-onpick-recursion.html + + * wml/WMLOptionElement.cpp: + (WebCore::WMLOptionElement::handleIntrinsicEventIfNeeded): + * wml/WMLSelectElement.cpp: + (WebCore::WMLSelectElement::WMLSelectElement): + (WebCore::WMLSelectElement::selectInitialOptions): + * wml/WMLSelectElement.h: + (WebCore::WMLSelectElement::initialized): + +2009-08-16 Anthony Ricaud <rik@webkit.org> + + Reviewed by Timothy Hatcher. + + Inspector Resource filtering: keyboard Navigation always uses ALL resources + https://bugs.webkit.org/show_bug.cgi?id=28231 + + Determine if a resource is selectable on user action. + + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourceSidebarTreeElement.prototype.get selectable): + +2009-08-16 David Kilzer <ddkilzer@apple.com> + + <http://webkit.org/b/28355> Replace MAX()/MIN() macros with type-safe std::max()/min() templates + + Reviewed by Dan Bernstein. + + * accessibility/mac/AccessibilityObjectWrapper.mm: + (AXAttributeStringSetSpelling): Changed MIN() to min(). + * platform/graphics/mac/FontMacATSUI.mm: + (WebCore::Font::selectionRectForComplexText): Changed MAX() to + max() and MIN() to min(). + (WebCore::Font::floatWidthForComplexText): Ditto. + * platform/graphics/mac/SimpleFontDataMac.mm: Added using + std::max statement. + (WebCore::SimpleFontData::platformInit): Changed MAX() to max(). + * platform/text/mac/TextCodecMac.cpp: + (WebCore::TextCodecMac::decode): Changed MIN() to min(). + +2009-08-16 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> + + Reviewed by George Staikos. + + [WML] Cleanup WMLIntrinsicEventHandling code + https://bugs.webkit.org/show_bug.cgi?id=28358 + + Remove superflous "Event* evt" parameter from executeTask() methods. It's a leftover from the initial WML merge. + + * wml/WMLAnchorElement.cpp: + (WebCore::WMLAnchorElement::defaultEventHandler): + * wml/WMLDoElement.cpp: + (WebCore::WMLDoElement::defaultEventHandler): + * wml/WMLGoElement.cpp: + (WebCore::WMLGoElement::executeTask): + * wml/WMLGoElement.h: + * wml/WMLIntrinsicEventHandler.cpp: + (WebCore::WMLIntrinsicEventHandler::triggerIntrinsicEvent): + * wml/WMLPrevElement.cpp: + (WebCore::WMLPrevElement::executeTask): + * wml/WMLPrevElement.h: + * wml/WMLRefreshElement.cpp: + (WebCore::WMLRefreshElement::executeTask): + * wml/WMLRefreshElement.h: + * wml/WMLTaskElement.h: + +2009-08-16 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: A handful of DOMAgent-related fixes and cleanups. + + - renamed elementId to nodeId in operations on nodes. + - added load listeners to frame owners in InspectorDOMAgent. + - removed InspectorController::inspectedWindowScriptObjectCleared event. + - preserved isViaInspector flag for 'via inspector' marker to survive styles update. + - removed contentDocument-related logic from ElementsPanel since it is handled in + the InspectorDOMAgent. + - removed DOM listeners unregistration and corresponding events from InspectorController. + - made this.styles 'private' in ElementsPanel. + - added TODO for the handleCopy processing. + + https://bugs.webkit.org/show_bug.cgi?id=28356 + + * WebCore.order: + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::getChildNodes): + (WebCore::InspectorBackend::setTextNodeValue): + * inspector/InspectorBackend.h: + * inspector/InspectorBackend.idl: + * inspector/InspectorController.cpp: + * inspector/InspectorController.h: + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::startListening): + (WebCore::InspectorDOMAgent::stopListening): + (WebCore::InspectorDOMAgent::handleEvent): + (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): + (WebCore::InspectorDOMAgent::getChildNodes): + (WebCore::InspectorDOMAgent::pushNodePathToFrontend): + (WebCore::InspectorDOMAgent::setTextNodeValue): + (WebCore::InspectorDOMAgent::buildObjectForNode): + (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): + (WebCore::InspectorDOMAgent::innerParentNode): + * inspector/InspectorDOMAgent.h: + * inspector/InspectorFrontend.cpp: + * inspector/InspectorFrontend.h: + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMDocument.prototype.addEventListener): + (WebInspector.DOMDocument.prototype.removeEventListener): + (WebInspector.DOMDocument.prototype._fireDomEvent): + (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback): + (WebInspector.DOMAgent.prototype.getChildNodesAsync): + (WebInspector.DOMAgent.prototype._setChildNodes): + (WebInspector.CSSStyleDeclaration.parseRule): + (WebInspector.childNodeInserted): + (WebInspector.childNodeRemoved): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + (WebInspector.ElementsPanel.prototype.reset): + (WebInspector.ElementsPanel.prototype.addStyleChange): + (WebInspector.ElementsPanel.prototype.removeStyleChange): + (WebInspector.ElementsPanel.prototype._updateModifiedNodes): + (WebInspector.ElementsPanel.prototype.updateBreadcrumb): + (WebInspector.ElementsPanel.prototype.handleCopyEvent): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode): + (WebInspector.ElementsTreeOutline.prototype.findTreeElement): + (WebInspector.ElementsTreeElement): + (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode): + (WebInspector.ElementsTreeElement.prototype._updateChildren): + (WebInspector.ElementsTreeElement.prototype.onexpand): + * inspector/front-end/InjectedScript.js: + (InjectedScript.addStyleSelector): + (InjectedScript._serializeRule): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylePropertiesSection): + * inspector/front-end/inspector.js: + (WebInspector.set hoveredDOMNode): + * inspector/front-end/treeoutline.js: + (TreeOutline.prototype.findTreeElement): + * inspector/front-end/utilities.js: + (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray): + (Node.prototype.enclosingNodeOrSelfWithClass): + (isAncestorNode): + (firstCommonNodeAncestor): + (traverseNextNode): + (traversePreviousNode): + (): + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::dispatchWindowObjectAvailable): + * page/android/InspectorControllerAndroid.cpp: + +2009-08-15 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dave Hyatt + + Optimize updateFillImages() to not add/remove clients every time + https://bugs.webkit.org/show_bug.cgi?id=28334 + + Optimize the case where old and new just have a single layer pointing to the same (or no) + image. + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::updateFillImages): + +2009-08-15 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson. + + Implement animations of multiple text-shadows and -webkit-box-shadows. + https://bugs.webkit.org/show_bug.cgi?id=28266 + + Test: transitions/multiple-shadow-transitions.html + + * page/animation/AnimationBase.cpp: + (WebCore::PropertyWrapperShadow::equals): + (WebCore::PropertyWrapperShadow::blend): + +2009-08-15 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson. + + Make transitions work for position and size of multiple backgrounds and masks. + https://bugs.webkit.org/show_bug.cgi?id=28266 + + Make background-position, background-size, -webkit-mask-position and -webkit-mask-size + properties animatable with multiple backgrounds, rather than just animating the first one. + + Tests: transitions/multiple-background-size-transitions.html + transitions/multiple-background-transitions.html + transitions/multiple-mask-transitions.html + + * page/animation/AnimationBase.cpp: + (WebCore::FillLayerPropertyWrapperBase::FillLayerPropertyWrapperBase): + (WebCore::FillLayerPropertyWrapperBase::~FillLayerPropertyWrapperBase): + (WebCore::FillLayerPropertyWrapperGetter::FillLayerPropertyWrapperGetter): + (WebCore::FillLayerPropertyWrapperGetter::equals): + (WebCore::FillLayerPropertyWrapper::FillLayerPropertyWrapper): + (WebCore::FillLayerPropertyWrapper::blend): + (WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper): + (WebCore::FillLayersPropertyWrapper::equals): + (WebCore::FillLayersPropertyWrapper::blend): + (WebCore::ensurePropertyMap): + * rendering/style/FillLayer.h: + (WebCore::FillLayer::setXPosition): + (WebCore::FillLayer::setYPosition): + (WebCore::FillLayer::setSize): + +2009-08-15 George Staikos <george.staikos@torchmobile.com> + + Reviewed by Jan Alonzo. + + Don't crash in fieldset code when WML is enabled. + https://bugs.webkit.org/show_bug.cgi?id=28012 + + Test: fast/wml/html-fieldset-crash.html + + * rendering/RenderFieldset.cpp: + (WebCore::RenderFieldset::findLegend): ++brackets + +2009-08-15 Sam Weinig <sam@webkit.org> + + Try and enable EventSource on Windows. + + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.vcproj/build-generated-files.sh: + +2009-08-15 Sam Weinig <sam@webkit.org> + + Reviewed by Dan Bernstein. + + Setting attribute event listeners to the body does not set them on the window + https://bugs.webkit.org/show_bug.cgi?id=28343 + + Tests: fast/dom/Window/HTMLBodyElement-window-eventListener-attributes.html + fast/dom/Window/HTMLFrameSetElement-window-eventListener-attributes.html + + * html/HTMLBodyElement.cpp: + (WebCore::HTMLBodyElement::setOnblur): Use setWindowAttributeEventListener instead of setAttributeEventListener. + (WebCore::HTMLBodyElement::setOnerror): Ditto. + (WebCore::HTMLBodyElement::setOnfocus): Ditto. + (WebCore::HTMLBodyElement::setOnload): Ditto. + (WebCore::HTMLBodyElement::setOnbeforeunload): Ditto. + (WebCore::HTMLBodyElement::setOnmessage): Ditto. + (WebCore::HTMLBodyElement::setOnoffline): Ditto. + (WebCore::HTMLBodyElement::setOnonline): Ditto. + (WebCore::HTMLBodyElement::setOnresize): Ditto. + (WebCore::HTMLBodyElement::setOnstorage): Ditto. + (WebCore::HTMLBodyElement::setOnunload): Ditto. + * html/HTMLFrameSetElement.cpp: + (WebCore::HTMLFrameSetElement::setOnblur): Ditto. + (WebCore::HTMLFrameSetElement::setOnerror): Ditto. + (WebCore::HTMLFrameSetElement::setOnfocus): Ditto. + (WebCore::HTMLFrameSetElement::setOnload): Ditto. + (WebCore::HTMLFrameSetElement::setOnbeforeunload): Ditto. + (WebCore::HTMLFrameSetElement::setOnmessage): Ditto. + (WebCore::HTMLFrameSetElement::setOnoffline): Ditto. + (WebCore::HTMLFrameSetElement::setOnonline): Ditto. + (WebCore::HTMLFrameSetElement::setOnresize): Ditto. + (WebCore::HTMLFrameSetElement::setOnstorage): Ditto. + (WebCore::HTMLFrameSetElement::setOnunload): Ditto. + +2009-08-15 Sam Weinig <sam@webkit.org> + + Reviewed by Dan Bernstein. + + Fix up some IDL comments. + + * html/HTMLBodyElement.idl: + * html/HTMLFrameSetElement.idl: + +2009-08-15 Adam Bergkvist <adam.bergkvist@ericsson.com> + + Reviewed by Sam Weinig. + + Added implementation of the EventSource object that enables + server-sent events from HTML5. + http://dev.w3.org/html5/eventsource/ + https://bugs.webkit.org/show_bug.cgi?id=14997 + + Tests: fast/eventsource/eventsource-attribute-listeners.html + fast/eventsource/eventsource-constructor.html + http/tests/eventsource/eventsource-bad-mime-type.html + http/tests/eventsource/eventsource-parse-event-stream.html + http/tests/eventsource/eventsource-reconnect.html + http/tests/eventsource/eventsource-status-code-states.html + http/tests/eventsource/workers/eventsource-simple.html + + * Configurations/FeatureDefines.xcconfig: + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::eventSource): + * bindings/js/JSEventSourceConstructor.cpp: Added. + (WebCore::): + (WebCore::JSEventSourceConstructor::JSEventSourceConstructor): + (WebCore::constructEventSource): + (WebCore::JSEventSourceConstructor::getConstructData): + * bindings/js/JSEventSourceConstructor.h: Added. + (WebCore::JSEventSourceConstructor::classInfo): + * bindings/js/JSEventSourceCustom.cpp: Added. + (WebCore::JSEventSource::markChildren): + (WebCore::JSEventSource::addEventListener): + (WebCore::JSEventSource::removeEventListener): + * bindings/js/JSEventTarget.cpp: + (WebCore::toJS): + (WebCore::toEventTarget): + * bindings/js/JSWorkerContextCustom.cpp: + (WebCore::JSWorkerContext::eventSource): + * dom/EventNames.h: + * dom/EventTarget.cpp: + (WebCore::EventTarget::toEventSource): + * dom/EventTarget.h: + * page/DOMWindow.idl: + * page/EventSource.cpp: Added. + (WebCore::EventSource::EventSource): + (WebCore::EventSource::~EventSource): + (WebCore::EventSource::connect): + (WebCore::EventSource::endRequest): + (WebCore::EventSource::scheduleReconnect): + (WebCore::EventSource::reconnectTimerFired): + (WebCore::EventSource::url): + (WebCore::EventSource::readyState): + (WebCore::EventSource::close): + (WebCore::EventSource::scriptExecutionContext): + (WebCore::EventSource::addEventListener): + (WebCore::EventSource::removeEventListener): + (WebCore::EventSource::dispatchEvent): + (WebCore::EventSource::didReceiveResponse): + (WebCore::EventSource::didReceiveData): + (WebCore::EventSource::didFinishLoading): + (WebCore::EventSource::didFail): + (WebCore::EventSource::didFailRedirectCheck): + (WebCore::EventSource::parseEventStream): + (WebCore::EventSource::parseEventStreamLine): + (WebCore::EventSource::dispatchGenericEvent): + (WebCore::EventSource::dispatchMessageEvent): + (WebCore::EventSource::stop): + * page/EventSource.h: Added. + (WebCore::EventSource::create): + (WebCore::EventSource::): + (WebCore::EventSource::setOnopen): + (WebCore::EventSource::onopen): + (WebCore::EventSource::setOnmessage): + (WebCore::EventSource::onmessage): + (WebCore::EventSource::setOnerror): + (WebCore::EventSource::onerror): + (WebCore::EventSource::toEventSource): + (WebCore::EventSource::eventListeners): + (WebCore::EventSource::refEventTarget): + (WebCore::EventSource::derefEventTarget): + * page/EventSource.idl: Added. + * workers/WorkerContext.idl: + +2009-08-15 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Minor DOMAgent bugfixes. + + https://bugs.webkit.org/show_bug.cgi?id=28177 + + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::nodeForId): + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMAgent): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): + +2009-08-15 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Evaluating objects while on a breakpoint dumps string + representation instead of live object. + + https://bugs.webkit.org/show_bug.cgi?id=28280 + + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.completions.this._evalInInspectedWindow): + (WebInspector.ConsoleView.prototype.completions): + (WebInspector.ConsoleView.prototype._reportCompletions): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame.delayedEvaluation): + (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame): + (WebInspector.ScriptsPanel.prototype.variablesInSelectedCallFrame): + +2009-08-15 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding two new files to WebCore/platform/haiku: + LocalizedStringsHaiku.cpp and LoggingHaiku.cpp + https://bugs.webkit.org/show_bug.cgi?id=28129 + + * platform/haiku/LocalizedStringsHaiku.cpp: Added. + (WebCore::submitButtonDefaultLabel): + (WebCore::inputElementAltText): + (WebCore::resetButtonDefaultLabel): + (WebCore::defaultLanguage): + (WebCore::searchableIndexIntroduction): + (WebCore::fileButtonChooseFileLabel): + (WebCore::fileButtonNoFileSelectedLabel): + (WebCore::contextMenuItemTagOpenLinkInNewWindow): + (WebCore::contextMenuItemTagDownloadLinkToDisk): + (WebCore::contextMenuItemTagCopyLinkToClipboard): + (WebCore::contextMenuItemTagOpenImageInNewWindow): + (WebCore::contextMenuItemTagDownloadImageToDisk): + (WebCore::contextMenuItemTagCopyImageToClipboard): + (WebCore::contextMenuItemTagOpenFrameInNewWindow): + (WebCore::contextMenuItemTagCopy): + (WebCore::contextMenuItemTagGoBack): + (WebCore::contextMenuItemTagGoForward): + (WebCore::contextMenuItemTagStop): + (WebCore::contextMenuItemTagReload): + (WebCore::contextMenuItemTagCut): + (WebCore::contextMenuItemTagPaste): + (WebCore::contextMenuItemTagNoGuessesFound): + (WebCore::contextMenuItemTagIgnoreSpelling): + (WebCore::contextMenuItemTagLearnSpelling): + (WebCore::contextMenuItemTagSearchWeb): + (WebCore::contextMenuItemTagLookUpInDictionary): + (WebCore::contextMenuItemTagOpenLink): + (WebCore::contextMenuItemTagIgnoreGrammar): + (WebCore::contextMenuItemTagSpellingMenu): + (WebCore::contextMenuItemTagShowSpellingPanel): + (WebCore::contextMenuItemTagCheckSpelling): + (WebCore::contextMenuItemTagCheckSpellingWhileTyping): + (WebCore::contextMenuItemTagCheckGrammarWithSpelling): + (WebCore::contextMenuItemTagFontMenu): + (WebCore::contextMenuItemTagBold): + (WebCore::contextMenuItemTagItalic): + (WebCore::contextMenuItemTagUnderline): + (WebCore::contextMenuItemTagOutline): + (WebCore::contextMenuItemTagWritingDirectionMenu): + (WebCore::contextMenuItemTagDefaultDirection): + (WebCore::contextMenuItemTagLeftToRight): + (WebCore::contextMenuItemTagRightToLeft): + (WebCore::contextMenuItemTagInspectElement): + (WebCore::searchMenuNoRecentSearchesText): + (WebCore::searchMenuRecentSearchesText): + (WebCore::searchMenuClearRecentSearchesText): + (WebCore::unknownFileSizeText): + (WebCore::AXWebAreaText): + (WebCore::AXLinkText): + (WebCore::AXListMarkerText): + (WebCore::AXImageMapText): + (WebCore::AXHeadingText): + (WebCore::imageTitle): + (WebCore::contextMenuItemTagTextDirectionMenu): + (WebCore::AXButtonActionVerb): + (WebCore::AXTextFieldActionVerb): + (WebCore::AXRadioButtonActionVerb): + (WebCore::AXCheckedCheckBoxActionVerb): + (WebCore::AXUncheckedCheckBoxActionVerb): + (WebCore::AXLinkActionVerb): + (WebCore::AXDefinitionListTermText): + (WebCore::AXDefinitionListDefinitionText): + * platform/haiku/LoggingHaiku.cpp: Added. + (WebCore::InitializeLoggingChannelsIfNecessary): + +2009-08-15 Darin Adler <darin@apple.com> + + Fix GTK build. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (fallbackObject): Pass 0 for document. Should be OK at least for now. + +2009-08-15 Darin Adler <darin@apple.com> + + Fix Qt build. + + * dom/XMLTokenizerQt.cpp: Use create functions instead of calling new + directly to make CDATASection and Comment nodes. + +2009-08-14 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Make DOM classes start with a reference count of 1, like all other RefCounted + https://bugs.webkit.org/show_bug.cgi?id=28068 + + First half, everything except for element classes. + + * GNUmakefile.am: Removed DocPtr.h. + * WebCore.gypi: Ditto. + * WebCore.vcproj/WebCore.vcproj: Ditto. + * WebCore.xcodeproj/project.pbxproj: Ditto. + + * dom/Attr.cpp: + (WebCore::Attr::Attr): Added a call to createTextChild here so callers don't + have to call it explicitly. + (WebCore::Attr::create): Added. + (WebCore::Attr::setValue): Changed to take AtomicString. + (WebCore::Attr::cloneNode): Use create. + + * dom/Attr.h: Added a create function. Made the constructor private, + and a lot of other functions private as well. + + * dom/Attribute.cpp: + (WebCore::Attribute::createAttrIfNeeded): Use Attr::create. + + * dom/CDATASection.cpp: + (WebCore::CDATASection::create): Added. + (WebCore::CDATASection::cloneNode): Use create. + (WebCore::CDATASection::virtualCreate): Ditto. + + * dom/CDATASection.h: Added a create function. Made everything private. + Removed unneeded destructor declaration. + + * dom/CharacterData.cpp: + (WebCore::CharacterData::CharacterData): Replaced the multiple constructors + with a single one that takes ConstructionType. + + * dom/CharacterData.h: Made more functions be protected and private. + Made m_data be private. + + * dom/Comment.cpp: + (WebCore::Comment::Comment): Got rid of an extra constructor. + (WebCore::Comment::create): Added. + (WebCore::Comment::cloneNode): Call create. + + * dom/Comment.h: Added a create function. Made everything private. + + * dom/ContainerNode.cpp: + (WebCore::dispatchChildInsertionEvents): Use RefPtr instead of DocPtr. + (WebCore::dispatchChildRemovalEvents): Ditto. + + * dom/ContainerNode.h: Made the constructor protected and passed + ConstructionType instead of an isElement boolean. + + * dom/DocPtr.h: Removed. + + * dom/Document.cpp: + (WebCore::Document::Document): Simplified the code that sets m_document + since it's no longer a smart pointer. + (WebCore::Document::removedLastRef): Use explicit calls to selfOnlyRef + and selfOnlyDeref instead of a DocPtr in here. + (WebCore::Document::~Document): Simplified the code that sets m_document + since it's no longer a smart pointer. + (WebCore::Document::createDocumentFragment): Call create. + (WebCore::Document::createTextNode): Ditto. + (WebCore::Document::createComment): Ditto. + (WebCore::Document::createCDATASection): Ditto. + (WebCore::Document::createProcessingInstruction): Ditto. + (WebCore::Document::createEntityReference): Ditto. + (WebCore::Document::createEditingTextNode): Ditto. + (WebCore::Document::importNode): Call Attr::create. + (WebCore::Document::createAttributeNS): Ditto. + + * dom/Document.h: Call adoptRef. Made a lot of functions private and + protected and sorted them so public functions come first. + + * dom/DocumentFragment.cpp: + (WebCore::DocumentFragment::create): Added. + (WebCore::DocumentFragment::cloneNode): Call create. + * dom/DocumentFragment.h: Added create. + + * dom/DocumentType.cpp: + (WebCore::DocumentType::DocumentType): Pass type to Node constructor. + (WebCore::DocumentType::cloneNode): Use create. + * dom/DocumentType.h: + (WebCore::DocumentType::create): Call adoptRef. + + * dom/EditingText.cpp: + (WebCore::EditingText::create): Added. + * dom/EditingText.h: Added a create function. Made everything private. + + * dom/Element.cpp: + (WebCore::Element::Element): Pass CreateElementZeroRefCount to preserve + the zero reference count behavior for classes derived from Element. + + * dom/EntityReference.cpp: + (WebCore::EntityReference::create): Added. + (WebCore::EntityReference::cloneNode): Call create. + * dom/EntityReference.h: Added create. Made everything private. + + * dom/Node.cpp: + (WebCore::Node::initialRefCount): Added. Inline helper function for + the constructor. + (WebCore::Node::isContainer): Ditto. + (WebCore::Node::isElement): Ditto. + (WebCore::Node::isText): Ditto. + (WebCore::Node::Node): Changed to take a construction type argument. + Since m_document is now a normal pointer, added a call to selfOnlyRef. + (WebCore::Node::~Node): Ditto, but selfOnlyDeref. + (WebCore::Node::setDocument): Added selfOnlyRef/Deref calls. + (WebCore::Node::appendTextContent): Use the data function instead of + calling nodeValue functions, which do the same thing in a roundabout way. + + * dom/Node.h: Made the constructor protected and replaced the multiple + arguments iwth a single ConstructionType argument. Sorted the public + things first. + + * dom/Notation.h: Made most things private. + * dom/Notation.cpp: Removed extra constructor. + + * dom/ProcessingInstruction.cpp: + (WebCore::ProcessingInstruction::create): Added. + (WebCore::ProcessingInstruction::cloneNode): Call create. + * dom/ProcessingInstruction.h: Added create function. Made many other + members private. + + * dom/Range.cpp: + (WebCore::Range::processContents): Use DocumentFragment::create. + + * dom/Text.cpp: + (WebCore::Text::Text): Updated for base class change. + (WebCore::Text::create): Added. + (WebCore::Text::splitText): Changed to not require access to m_data. + (WebCore::Text::cloneNode): Call create. + (WebCore::Text::createRenderer): Call dataImpl. + (WebCore::Text::attach): Call data. + (WebCore::Text::recalcStyle): Call dataImpl. + (WebCore::Text::virtualCreate): Call create. + (WebCore::Text::createWithLengthLimit): Call create. + (WebCore::Text::formatForDebugger): Call data. + + * dom/Text.h: Added a create function. Made many other members private. + Renamed createNew to virtualCreate. + + * dom/XMLTokenizer.cpp: + (WebCore::XMLTokenizer::enterText): Call Text::create. + + * dom/XMLTokenizerLibxml2.cpp: + (WebCore::XMLTokenizer::cdataBlock): Call CDATASection::create. + (WebCore::XMLTokenizer::comment): Call Comment::create. + + * editing/CompositeEditCommand.cpp: + (WebCore::CompositeEditCommand::deleteInsignificantText): + Call data instead of string. + + * editing/CreateLinkCommand.cpp: + (WebCore::CreateLinkCommand::doApply): Call Text::create. + + * editing/EditorCommand.cpp: + (WebCore::executeInsertNode): Call DocumentFragment::create. + + * editing/SplitTextNodeCommand.cpp: + (WebCore::SplitTextNodeCommand::doApply): Call Text::create. + + * editing/markup.cpp: + (WebCore::appendStartMarkup): Call data instead of nodeValue. + + * html/HTMLDocument.h: + (WebCore::HTMLDocument::create): Call adoptRef. + + * html/HTMLElement.cpp: + (WebCore::HTMLElement::createContextualFragment): Call DocumentFragment::create. + (WebCore::replaceChildrenWithFragment): Call data instead of string. + (WebCore::replaceChildrenWithText): Call Text::create. + (WebCore::HTMLElement::setInnerText): Call DocumentFragment::create and + Text::create. + (WebCore::HTMLElement::setOuterText): Call Text::create. + + * html/HTMLKeygenElement.cpp: + (WebCore::HTMLKeygenElement::HTMLKeygenElement): Call Text::create. + + * html/HTMLOptionElement.cpp: + (WebCore::HTMLOptionElement::setText): Call Text::create. + + * html/HTMLParser.cpp: + (WebCore::HTMLParser::textCreateErrorCheck): Call Text::create. + (WebCore::HTMLParser::commentCreateErrorCheck): Call Comment::create. + (WebCore::HTMLParser::handleIsindex): Call Text::create. + + * html/HTMLViewSourceDocument.cpp: + (WebCore::HTMLViewSourceDocument::addText): Call Text::create. + + * html/HTMLViewSourceDocument.h: + (WebCore::HTMLViewSourceDocument::create): Call adoptRef. + + * loader/FTPDirectoryDocument.cpp: + (WebCore::FTPDirectoryTokenizer::appendEntry): Call Text::create. + (WebCore::FTPDirectoryTokenizer::createTDForFilename): Call Text::create. + + * loader/FTPDirectoryDocument.h: + (WebCore::FTPDirectoryDocument::create): Call adoptRef. + * loader/ImageDocument.h: + (WebCore::ImageDocument::create): Ditto. + * loader/MediaDocument.h: + (WebCore::MediaDocument::create): Ditto. + * loader/PlaceholderDocument.h: + (WebCore::PlaceholderDocument::create): Ditto. + * loader/PluginDocument.h: + (WebCore::PluginDocument::create): Ditto. + * loader/TextDocument.h: + (WebCore::TextDocument::create): Ditto. + + * loader/loader.cpp: + (WebCore::Loader::Host::didFinishLoading): Use RefPtr instead of DocPtr. + (WebCore::Loader::Host::didFail): Ditto. + + * platform/TreeShared.h: + (WebCore::TreeShared::TreeShared): Added an initialRefCount argument, + defaulting to 1. Node still sometimes initializes it to 0 instead for now. + + * rendering/RenderText.cpp: + (WebCore::RenderText::originalText): Use dataImpl instead of string. + + * rendering/RenderTextFragment.cpp: + (WebCore::RenderTextFragment::originalText): Use dataImpl instead of string. + (WebCore::RenderTextFragment::previousCharacter): Ditto. + + * svg/SVGDocument.h: + (WebCore::SVGDocument::create): Use adoptRef. + + * svg/SVGElementInstance.cpp: + (WebCore::SVGElementInstance::SVGElementInstance): Updated to take a + PassRefPtr. + + * svg/SVGElementInstance.h: Made everything private. + + * wml/WMLDocument.h: + (WebCore::WMLDocument::create): Called adoptRef. + + * xml/XPathNamespace.cpp: + (WebCore::XPathNamespace::XPathNamespace): Take AtomicString arguments. + * xml/XPathNamespace.h: Made everything private. + + * xml/XSLTProcessor.cpp: + (WebCore::createFragmentFromSource): Use DocumentFragment::create and + Text::create. + +2009-08-13 Jon Honeycutt <jhoneycutt@apple.com> + + Part of <rdar://problem/6218721> No MSAA focus events fired for Webkit + nightly (20866) + + https://bugs.webkit.org/show_bug.cgi?id=20866 + + Reviewed by Oliver Hunt. + + * accessibility/AXObjectCache.cpp: + (WebCore::AXObjectCache::AXObjectCache): + Changed to take a pointer to its owner document. This is used by + AXObjectCache::handleFocusedUIElementChanged(). + (WebCore::AXObjectCache::focusedUIElementForPage): + Code moved from AccessibilityRenderObject::focusedUIElement(). Modified + to be a static function and to take a pointer to a Page. + (WebCore::AXObjectCache::platformGenerateAXID): + Moved the code to generate the next AXID from getAXID() to here. Added + a #if to make this non-WIN only, because Windows has its own + implementation. + (WebCore::AXObjectCache::getAXID): + Ensure that we generate a positive AXID, ranging from 1 to LONG_MAX. + + * accessibility/AXObjectCache.h: + Add a declaration for Document and Page. Removed the declaration of + AccessibilityObject, because we include the header. Reordered the + declaration of Node alphabetically. Moved the typedef for AXID to + AccessibilityObject. Removed some trailing whitespace. Added a member + variable to hold a pointer to the owner Document. + (WebCore::AXObjectCache::AXObjectCache): + Changed to take a pointer to its owner Document. + (WebCore::AXObjectCache::focusedUIElementForPage): + Added; code moved from AccessiblityRenderObject::focusedUIElement(). + Returns the focused element with respect to accessibility. + (WebCore::AXObjectCache::platformGenerateAXID): + Declare a function to generate an AXID. + (WebCore::AXObjectCache::objectFromAXID): + Return the AccessibilityObject with the given AXID. + + * accessibility/AccessibilityObject.h: + Moved the typedef for AXID from AXObjectCache to here. Made the m_id + member use the typedef. + (WebCore::AccessibilityObject::axObjectID): + Changed the return type to use the typedef. + (WebCore::AccessibilityObject::setAXObjectID): + Changed the argument type to use the typedef. + + * accessibility/AccessibilityRenderObject.cpp: + Removed some unneeded #includes. + (WebCore::AccessibilityRenderObject::focusedUIElement): + Moved the code to AXObjectCache::focusedUIElementForPage(), which we now + call. + + * accessibility/win/AXObjectCacheWin.cpp: + (WebCore::AXObjectCache::platformGenerateAXID): + Ensure that we generate an AXID that is in the range 1 to LONG_MAX. + (WebCore::AXObjectCache::handleFocusedUIElementChanged): + If the Document has no Page, return. If the Page has not focused + element (respecting accessibility), return. Assert that the + accessibility of the focused element is not ignored, and that the + object's AXID will be negative and fit into a LONG when negated. + Broadcast a focus event for the object. + + * dom/Document.cpp: + (WebCore::Document::axObjectCache): + Pass this when creating the AXObjectCache. + (WebCore::Document::setFocusedNode): + Call AXObjectCache::handleFocusedUIElementChanged() on Windows. + +2009-08-14 Jiahua Huang <jhuangjiahua@gmail.com> + + Reviewed by Jan Alonzo. + + [gtk] Pasteboard/GtkClipboard can't handle the "text/html" target. + https://bugs.webkit.org/show_bug.cgi?id=27028 + + Remove the improper set of enum WebKitWebViewTargetInfo + by grabbing the target infos via m_helper. + + * manual-tests/gtk/copy-htmltext.html: Added. + * platform/Pasteboard.h: + * platform/gtk/PasteboardGtk.cpp: + (WebCore::clipboard_get_contents_cb): + * platform/gtk/PasteboardHelper.h: + +2009-08-14 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dave Hyatt. + + Fix an assertion when bringing up the Inspector. + https://bugs.webkit.org/show_bug.cgi?id=28318 + + The fix for bug 28295 assumed that image clients count the number of times + addClient/removeClient is called. That was true for CachedResource clients, + but not StyleGeneratedImage clients, which pass the call onto CSSImageGeneratorValue. + + Fix by making CSSImageGeneratorValue count the number of times a client is + added/removed. + + * css/CSSCanvasValue.cpp: + (WebCore::CSSCanvasValue::canvasChanged): + (WebCore::CSSCanvasValue::canvasResized): + * css/CSSImageGeneratorValue.cpp: + (WebCore::CSSImageGeneratorValue::addClient): + (WebCore::CSSImageGeneratorValue::removeClient): + (WebCore::CSSImageGeneratorValue::getImage): + * css/CSSImageGeneratorValue.h: + +2009-08-14 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Kevin Ollivier. + + Correct libcurl crash when downloading local files. + https://bugs.webkit.org/show_bug.cgi?id=28312 + + No new tests. Test is covered by fast/encoding/char-encoding-mac.html. + + * platform/network/curl/ResourceHandleManager.cpp: + (WebCore::handleLocalReceiveResponse): New static function that + performs the local setting of valid URL and firing didReceiveResponse. + This code was moved from writeCallback. + (WebCore::writeCallback): Move local file handling to static function + (above) and use the function instead. + (WebCore::readCallback): Add check + for responseFired, and handle as a local file if it was not. + +2009-08-14 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Oliver Hunt. + + [Haiku] Fix RenderThemeHaiku build. + https://bugs.webkit.org/show_bug.cgi?id=28307 + + * platform/haiku/RenderThemeHaiku.cpp: Included RenderThemeHaiku.h + instead of RenderTheme.h. + (WebCore::RenderThemeHaiku::paintCheckbox): Removed the wrong 'virtual' + before the function. + (WebCore::RenderThemeHaiku::paintRadio): Removed the wrong 'virtual' + before the function. + * platform/haiku/RenderThemeHaiku.h: Corrected wrong function definitions. + +2009-08-14 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Oliver Hunt. + + [Haiku] Adding SharedBufferHaiku to WebCore. + https://bugs.webkit.org/show_bug.cgi?id=28309 + + * platform/haiku/SharedBufferHaiku.cpp: Added. + (WebCore::SharedBuffer::createWithContentsOfFile): + * platform/haiku/TemporaryLinkStubs.cpp: Removed unnecessary headers + and functions. + (WebCore::signedPublicKeyAndChallengeString): + (WebCore::getSupportedKeySizes): + +2009-08-14 Nate Chapin <japhet@chromium.org> + + Reviewed by Dimitri Glazkov. + + Ensure we're getting the right v8 context in the V8 DOMWindowEvent custom getter. + + https://bugs.webkit.org/show_bug.cgi?id=28311 + + This should fix Chromium failing LayoutTests/fast/events/set-event-in-another-frame.html. + + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_GETTER): + +2009-08-14 Aaron Boodman <aa@chromium.org> + + Reviewed by Alexey Proskuryakov. + + BUG 28134: Move the remaining parts of Access Control from XMLHttpRequest to ThreadableDocumentLoader. + https://bugs.webkit.org/show_bug.cgi?id=28134 + + No new tests added since Access Control was already well tested and this is a pure refactor. + + * loader/DocumentThreadableLoader.cpp: Move a lot of the access control code from XHR in, preserving its + basic strategy. Also, modify the synchronous path to not be a special case, but reuse more of the async + path. + + (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Go through the async path and pass additional flags. + (WebCore::DocumentThreadableLoader::create): Group enum params into an options struct. + (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto. + (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Brought mostly from XHR. + (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight): Ditto. + (WebCore::DocumentThreadableLoader::willSendRequest): Handle preflight case. + (WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto. + (WebCore::DocumentThreadableLoader::didFinishLoading): Ditto. + (WebCore::DocumentThreadableLoader::getShouldUseCredentialStorage): Ditto. + (WebCore::DocumentThreadableLoader::preflightSuccess): Preflight handling. + (WebCore::DocumentThreadableLoader::preflightFailure): Ditto. + (WebCore::DocumentThreadableLoader::loadRequest): Common request function that handles async/sync. + * loader/DocumentThreadableLoader.h: Group enum params into an options struct. + * loader/ThreadableLoader.cpp: Ditto. + (WebCore::ThreadableLoader::create): Ditto. + (WebCore::ThreadableLoader::loadResourceSynchronously): Ditto. + * loader/ThreadableLoader.h: Ditto. + (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Ditto. + * loader/WorkerThreadableLoader.cpp: Ditto. + (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):Ditto. + (WebCore::WorkerThreadableLoader::loadResourceSynchronously): Ditto. + (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): Ditto. + (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader): Ditto. + * loader/WorkerThreadableLoader.h: Ditto. + (WebCore::WorkerThreadableLoader::create): Ditto. + * platform/CrossThreadCopier.h: Allow ThreadableLoaderOptions to be copied across threads. + (WebCore::): + * workers/WorkerScriptLoader.cpp: More enum->struct grouping. + (WebCore::WorkerScriptLoader::loadSynchronously): More enum->struct grouping. + (WebCore::WorkerScriptLoader::loadAsynchronously): More enum->struct grouping. + * xml/XMLHttpRequest.cpp: Remove all the access control code and some supporting state. + (WebCore::XMLHttpRequest::XMLHttpRequest): Ditto. + (WebCore::XMLHttpRequest::createRequest): Ditto. + (WebCore::XMLHttpRequest::didFinishLoading): Ditto. + (WebCore::XMLHttpRequest::didReceiveResponse): Ditto. + (WebCore::XMLHttpRequest::didReceiveData): Ditto. + * xml/XMLHttpRequest.h: Ditto. + +2009-08-14 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Rename the confusing isObject(<class>) to inherits(<class>). + It still works on non-objects, returning false. + + * bindings/js/JSEventTarget.cpp: + (WebCore::toEventTarget): + * bindings/js/JSGeolocationCustom.cpp: + (WebCore::createPositionCallback): + (WebCore::createPositionErrorCallback): + * bindings/js/JSNodeFilterCustom.cpp: + (WebCore::toNodeFilter): + * bindings/js/JSXMLHttpRequestCustom.cpp: + (WebCore::JSXMLHttpRequest::send): + * bindings/js/JSXSLTProcessorCustom.cpp: + (WebCore::JSXSLTProcessor::importStylesheet): + (WebCore::JSXSLTProcessor::transformToFragment): + (WebCore::JSXSLTProcessor::transformToDocument): + * bindings/scripts/CodeGeneratorJS.pm: + * bridge/objc/objc_runtime.mm: + (JSC::Bindings::callObjCFallbackObject): + * bridge/runtime_method.cpp: + (JSC::callRuntimeMethod): + Updated to new name, inherits, from old name, isObject. + +2009-08-14 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Simon Hausmann. + + Allow Qt API to list and to remove URL schemes that were registered as + local URL schemes. + [Qt] Allow applications to register their own local URL scheme. + https://bugs.webkit.org/show_bug.cgi?id=28240 + + * page/SecurityOrigin.cpp: + (WebCore::SecurityOrigin::removeURLSchemeRegisteredAsLocal): + (WebCore::SecurityOrigin::localURLSchemes): + * page/SecurityOrigin.h: + +2009-08-14 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Wrap console objects late (in the frontend) so that injected + script was already in place. + + https://bugs.webkit.org/show_bug.cgi?id=28297 + + * inspector/ConsoleMessage.cpp: + (WebCore::ConsoleMessage::ConsoleMessage): + * inspector/ConsoleMessage.h: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::addMessageToConsole): + (WebCore::InspectorController::startGroup): + (WebCore::InspectorController::setFrontendProxyObject): + * inspector/InspectorController.h: + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::InspectorFrontend): + (WebCore::InspectorFrontend::addMessageToConsole): + * inspector/InspectorFrontend.h: + +2009-08-13 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Fix logic in RenderObject::updateFillImages() that led to incorrect client + counts if an image was used twice in the background-image property. + https://bugs.webkit.org/show_bug.cgi?id=28295 + + Test: fast/backgrounds/multiple-backgrounds-assert.html + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::updateFillImages): + Simplify the logic to call addClient()/removeClient() for every background + image, but go through the new layers first to avoid removing all the + clients of an image. + +2009-08-13 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + Devirtualise marking + https://bugs.webkit.org/show_bug.cgi?id=28294 + + Make sure we override the JSObject createStructure method on those + objects that have custom marking routines. + + * bindings/scripts/CodeGeneratorJS.pm: + +2009-08-13 Darin Adler <darin@apple.com> + + Reviewed by Mark Rowe. + + Follow-up to earlier work to remove dependencies on JavaScriptCore. + + * ForwardingHeaders/parser/Parser.h: Removed. + * inspector/JavaScriptDebugServer.cpp: Removed now-unneeded includes + of Parser.h. + +2009-08-13 Dan Bernstein <mitz@apple.com> + + Reviewed by Eric Seidel. + + 'box-orient: block-axis' behaves like 'box-orient: horizontal', causes + an assertion failure in debug builds + https://bugs.webkit.org/show_bug.cgi?id=28279 + + Test: fast/flexbox/block-axis.html + + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::operator EBoxOrient): Map block-axis to + vertical. + +2009-08-13 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Fix crash when removing reflection on an absolutely-positioned image. + https://bugs.webkit.org/show_bug.cgi?id=28289 + + Make sure we clean up the reflection layer when removing the reflection, + so that the RenderLayer tree does not contain pointers to deleted layers. + + Test: fast/reflections/reflected-img-crash.html + + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::~RenderLayer): + (WebCore::RenderLayer::styleChanged): + (WebCore::RenderLayer::removeReflection): + * rendering/RenderLayer.h: + +2009-08-13 Dan Bernstein <mitz@apple.com> + + Reviewed by Simon Fraser. + + misalignment because of float:left of <div> tag + https://bugs.webkit.org/show_bug.cgi?id=15869 + + One section of http://edgar.sec.gov site draws to the right of the rest + of the content + <rdar://problem/7135951> + + Tests: fast/block/float/avoidance-percent-width-compat.html + fast/block/float/avoidance-percent-width-strict.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::getClearDelta): Changed to apply the same float + avoidance logic in strict mode and in compatibility mode, which + matches Firefox and IE. Changed to compute and use the computed + width of the child, instead of ignoring non-fixed widths. + +2009-08-13 Steve Block <steveblock@google.com> + + Reviewed by Darin Adler. + + Geolocation PositionOptions does not use correct default values. + https://bugs.webkit.org/show_bug.cgi?id=27254 + + Sets the correct default values for the properties of the PositionOptions object + passed to Geolocation methods. See http://www.w3.org/TR/geolocation-API/. + + Also adds checking to throw an exception if arguments of the incorrect type are + passed to Geolocation methods. Adds a layout test to test this. This test should + pass on all platforms where Geolocation is implemented. + + Test: fast/dom/Geolocation/argument-types.html + + * bindings/js/JSGeolocationCustom.cpp: + (WebCore::createPositionCallback): Added. Creates the callback. + (WebCore::createPositionErrorCallback): Added. Creates the calback. + (WebCore::createPositionOptions): Added. Creates the PositionOptions object, setting defaults where required. + (WebCore::JSGeolocation::getCurrentPosition): Modified. Now uses above helper functions. + (WebCore::JSGeolocation::watchPosition): Modified. Now uses above helper functions. + * page/Geolocation.cpp: + (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Asserts that PositionOptions object is present. + (WebCore::Geolocation::GeoNotifier::startTimer): Modified. Only starts timer if timeout has been set. + * page/PositionOptions.h: + (WebCore::PositionOptions::create): Modified. Creates object with default values. + (WebCore::PositionOptions::timeout): Modified. Uses correct type. + (WebCore::PositionOptions::hasTimeout): Added. Determines whether a timeout has been set. + (WebCore::PositionOptions::setTimeout): Modified. Uses correct type. + (WebCore::PositionOptions::maximumAge): Modified. Uses correct type. + (WebCore::PositionOptions::setMaximumAge): Modified. Uses correct type. + (WebCore::PositionOptions::PositionOptions): Modified. Creates object with default values. + +2009-08-13 David Levin <levin@chromium.org> + + Unreviewed chromium build fix. + + [Chromium] Let CodeGeneratorV8.pm know that RGBColor is ref-counted. + + * bindings/scripts/CodeGeneratorV8.pm: + +2009-08-13 Drew Wilson <atwilson@google.com> + + Reviewed by David Levin. + + Merge error in SharedWorker code + https://bugs.webkit.org/show_bug.cgi?id=28277 + + Fixed merge error that prevents WebKit from compiling with SHARED_WORKERS enabled. + No new tests needed. + + * workers/DefaultSharedWorkerRepository.cpp: + Removed duplicated functions. + +2009-08-13 Kyle Prete <kylep@chromium.org> + + Reviewed by Dave Levin. + + Chromium: Show a "Playback Disabled" button on media error. + https://bugs.webkit.org/show_bug.cgi?id=28196 + Use a disabled play button when the media file cannot be played. + + No new tests needed. Covered by LayoutTests/media/video-empty-source.html + + * rendering/RenderThemeChromiumSkia.cpp: + (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton): + +2009-08-13 Mark Rowe <mrowe@apple.com> + + Try and fix the Qt build. + + * bridge/qt/qt_runtime.cpp: + +2009-08-13 Zan Dobersek <zandobersek@gmail.com> + + Reviewed by Gustavo Noronha. + + [GTK] Drag and drop support + https://bugs.webkit.org/show_bug.cgi?id=23642 + + Utilizes functions that are being called upon drag and drop actions. + Uses different GTK clipboards that hold different types + of drag data - images, HTML markup, text, URL, URL label. + Also clears each clipboard before setting new data to it. + + No new tests - despite some implementations, no new functionality + is added until implementations of the GTK drag and drop protocol + in WebKit part. + + * platform/gtk/ClipboardGtk.cpp: + (WebCore::ClipboardGtk::ClipboardGtk): + (WebCore::ClipboardGtk::~ClipboardGtk): + (WebCore::getCachedImage): + (WebCore::ClipboardGtk::declareAndWriteDragImage): + (WebCore::ClipboardGtk::writeURL): + (WebCore::ClipboardGtk::writeRange): + * platform/gtk/ClipboardGtk.h: ClipboardGdk -> ClipboardGtk + +2009-08-13 Darin Adler <darin@apple.com> + + Reviewed by David Levin. + + JavaScriptCore tweaks to get ready for the parser arena + https://bugs.webkit.org/show_bug.cgi?id=28243 + + * ForwardingHeaders/runtime/CollectorHeapIterator.h: Removed. + + * WebCore.xcodeproj/project.pbxproj: Exposed a couple header + files as Private that are now needed to compile Mac WebKit. + + * bindings/js/JSAudioConstructor.cpp: + * bindings/js/JSDOMBinding.cpp: + * bindings/js/JSDOMBinding.h: + * bindings/js/JSDOMWindowCustom.cpp: + * bindings/js/JSHTMLInputElementCustom.cpp: + * bindings/js/JSHistoryCustom.cpp: + * bindings/js/JSImageConstructor.cpp: + * bindings/js/JSLazyEventListener.cpp: + * bindings/js/JSLocationCustom.cpp: + * bindings/js/JSMessageChannelConstructor.cpp: + * bindings/js/JSOptionConstructor.cpp: + * bindings/js/JSWebSocketConstructor.cpp: + * bindings/js/JSWebSocketCustom.cpp: + * bindings/js/JSWorkerConstructor.cpp: + * bindings/js/JSXMLHttpRequestConstructor.cpp: + * bridge/jni/jni_jsobject.mm: + Updated includes. + + * inspector/JavaScriptDebugServer.cpp: + (WebCore::JavaScriptDebugServer::sourceParsed): + Change to not assert if this is called with no listeners. + I don't think this was guaranteed before, and we now use + this code path when recompiling. Slightly less efficient, + but this is a one-time cost when turning on the debugger. + (WebCore::JavaScriptDebugServer::recompileAllJSFunctions): + Change to call Debugger::recompileAllJSFunctions. + +2009-08-13 Brady Eidson <beidson@apple.com> + + Reviewed by Eric Seidel. + + <rdar://problem/7138591> and https://bugs.webkit.org/show_bug.cgi?id=28260 + onhashchange property cannot be set from javascript. + + Test: fast/loader/onhashchange-attribute-listeners.html + + * html/HTMLBodyElement.cpp: + (WebCore::HTMLBodyElement::onhashchange): + (WebCore::HTMLBodyElement::setOnhashchange): + * html/HTMLBodyElement.h: + * html/HTMLBodyElement.idl: + + * html/HTMLFrameSetElement.cpp: + (WebCore::HTMLFrameSetElement::onhashchange): + (WebCore::HTMLFrameSetElement::setOnhashchange): + * html/HTMLFrameSetElement.h: + * html/HTMLFrameSetElement.idl: + + * page/DOMWindow.cpp: + (WebCore::DOMWindow::onhashchange): + (WebCore::DOMWindow::setOnhashchange): + * page/DOMWindow.h: + * page/DOMWindow.idl: + +2009-08-13 Mark Rowe <mrowe@apple.com> + + Reviewed by Geoff Garen. + + Fix leaks of RGBColor instances from below SVGColor::rgbColor. + + * svg/SVGColor.cpp: + (WebCore::SVGColor::rgbColor): Return a PassRefPtr to ensure that the newly-allocated + RGBColor is cleaned up by the caller. + * svg/SVGColor.h: + +2009-08-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Migrate to DOMAgent (serialized access to DOM). + + https://bugs.webkit.org/show_bug.cgi?id=28177 + + * bindings/js/JSInspectorBackendCustom.cpp: + (WebCore::JSInspectorBackend::highlightDOMNode): + (WebCore::JSInspectorBackend::nodeForId): + (WebCore::JSInspectorBackend::idForNode): + (WebCore::JSInspectorBackend::wrapObject): + (WebCore::JSInspectorBackend::unwrapObject): + (WebCore::JSInspectorBackend::pushNodePathToFrontend): + (WebCore::JSInspectorBackend::selectDatabase): + (WebCore::JSInspectorBackend::selectDOMStorage): + * bindings/js/ScriptObjectQuarantine.cpp: + (WebCore::getQuarantinedScriptObject): + * bindings/js/ScriptObjectQuarantine.h: + * bindings/js/ScriptValue.cpp: + (WebCore::ScriptValue::isObject): + * bindings/js/ScriptValue.h: + * bindings/v8/ScriptObjectQuarantine.cpp: + (WebCore::getQuarantinedScriptObject): + * bindings/v8/ScriptObjectQuarantine.h: + * bindings/v8/ScriptValue.h: + (WebCore::ScriptValue::isObject): + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8InspectorBackendCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * inspector/ConsoleMessage.cpp: + (WebCore::ConsoleMessage::ConsoleMessage): + * inspector/ConsoleMessage.h: + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::clearMessages): + (WebCore::InspectorBackend::loaded): + (WebCore::InspectorBackend::highlight): + (WebCore::InspectorBackend::nodeForId): + (WebCore::InspectorBackend::idForNode): + (WebCore::InspectorBackend::wrapObject): + (WebCore::InspectorBackend::unwrapObject): + (WebCore::InspectorBackend::pushNodePathToFrontend): + (WebCore::InspectorBackend::addNodesToSearchResult): + (WebCore::InspectorBackend::selectDatabase): + (WebCore::InspectorBackend::selectDOMStorage): + * inspector/InspectorBackend.h: + * inspector/InspectorBackend.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::InspectorController): + (WebCore::InspectorController::focusNode): + (WebCore::InspectorController::addMessageToConsole): + (WebCore::InspectorController::clearConsoleMessages): + (WebCore::InspectorController::startGroup): + (WebCore::InspectorController::scriptObjectReady): + (WebCore::InspectorController::setFrontendProxyObject): + (WebCore::InspectorController::close): + (WebCore::InspectorController::didCommitLoad): + (WebCore::InspectorController::wrapObject): + (WebCore::InspectorController::unwrapObject): + * inspector/InspectorController.h: + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::setDocument): + (WebCore::InspectorDOMAgent::handleEvent): + (WebCore::InspectorDOMAgent::pushDocumentToFrontend): + (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): + (WebCore::InspectorDOMAgent::nodeForId): + (WebCore::InspectorDOMAgent::pushNodePathToFrontend): + (WebCore::InspectorDOMAgent::buildObjectForNode): + (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): + (WebCore::InspectorDOMAgent::innerParentElement): + * inspector/InspectorDOMAgent.h: + * inspector/InspectorDOMStorageResource.cpp: + (WebCore::InspectorDOMStorageResource::bind): + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::clearConsoleMessages): + (WebCore::InspectorFrontend::updateFocusedNode): + (WebCore::InspectorFrontend::setDocument): + (WebCore::InspectorFrontend::selectDatabase): + (WebCore::InspectorFrontend::selectDOMStorage): + (WebCore::InspectorFrontend::addNodesToSearchResult): + * inspector/InspectorFrontend.h: + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.clearMessages): + (WebInspector.ConsoleView.prototype.completions): + (WebInspector.ConsoleView.prototype._reportCompletions): + (WebInspector.ConsoleView.prototype._messagesClicked): + (WebInspector.ConsoleView.prototype.doEvalInWindow.evalCallback): + (WebInspector.ConsoleView.prototype.doEvalInWindow): + (WebInspector.ConsoleView.prototype._format): + (WebInspector.ConsoleView.prototype._formatfunction): + (WebInspector.ConsoleView.prototype._formatdate): + (WebInspector.ConsoleView.prototype._formatregexp): + (WebInspector.ConsoleView.prototype._formatnode): + (WebInspector.ConsoleView.prototype._formatobject): + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMNode): + (WebInspector.DOMNode.prototype._renumber): + (WebInspector.DOMDocument): + (WebInspector.DOMAgent): + (WebInspector.DOMAgent.prototype.getChildNodesAsync): + (WebInspector.DOMAgent.prototype.setAttributeAsync): + (WebInspector.DOMAgent.prototype.removeAttributeAsync): + (WebInspector.DOMAgent.prototype.setTextNodeValueAsync): + (WebInspector.DOMAgent.prototype.nodeForId): + (WebInspector.DOMAgent.prototype._setDocument): + (WebInspector.DOMAgent.prototype._setChildNodes): + (WebInspector.DOMAgent.prototype._bindNodes): + (WebInspector.DOMAgent.prototype._childNodeInserted): + (WebInspector.CSSStyleDeclaration): + (WebInspector.CSSStyleDeclaration.parseRule): + (WebInspector.setDocument): + (InspectorController.getStyles): + (InspectorController.getComputedStyle): + (InspectorController.getInlineStyle): + (InspectorController.applyStyleText): + (InspectorController.setStyleText): + (InspectorController.toggleStyleEnabled): + (InspectorController.applyStyleRuleText): + (InspectorController.addStyleSelector): + (InspectorController.setStyleProperty): + (InspectorController.getPrototypes): + (InspectorController.getProperties): + (InspectorController.setPropertyValue): + (InspectorController.evaluate): + (InspectorController.addInspectedNode): + (InspectorController.performSearch): + (InspectorController.searchCanceled): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): + (WebInspector.ElementsPanel.prototype.searchCanceled): + (WebInspector.ElementsPanel.prototype.performSearch): + (WebInspector.ElementsPanel.prototype._updateMatchesCount): + (WebInspector.ElementsPanel.prototype._updateMatchesCountSoon): + (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode.restoreHighlightToHoveredNode): + (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode): + (WebInspector.ElementsTreeElement.prototype.updateChildren): + (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted): + * inspector/front-end/InjectedScript.js: + (InjectedScript.applyStyleRuleText): + (InjectedScript.addStyleSelector): + (InjectedScript._doesSelectorAffectNode): + (InjectedScript._serializeRule): + (InjectedScript._serializeStyle): + (InjectedScript.getProperties): + (InjectedScript.evaluate): + (InjectedScript.addInspectedNode): + (InjectedScript.performSearch.addNodesToResults): + (InjectedScript.performSearch.matchExactItems): + (InjectedScript.performSearch.matchExactId.addNodesToResults.call): + (InjectedScript.performSearch.matchExactId): + (InjectedScript.performSearch): + (InjectedScript.performSearch.matchExactTagNames): + (InjectedScript.performSearch.matchExactAttributeNames): + (InjectedScript.performSearch.matchPartialTagNames): + (InjectedScript.performSearch.matchStartOfTagNames): + (InjectedScript.performSearch.matchPartialTagNamesAndAttributeValues): + (InjectedScript.performSearch.matchPartialAttributeValues): + (InjectedScript.performSearch.matchStyleSelector): + (InjectedScript.performSearch.matchPlainText): + (InjectedScript.performSearch.matchXPathQuery): + (InjectedScript.performSearch.finishedSearching): + (InjectedScript.performSearch.processChunk): + (InjectedScript.searchCanceled): + (InjectedScript._ensureCommandLineAPIInstalled.inspectObject): + (InjectedScript._ensureCommandLineAPIInstalled): + (InjectedScript._resolveObject): + (InjectedScript._nodeForId): + (InjectedScript._objectForId): + (InjectedScript._createProxyObject): + * inspector/front-end/ObjectPropertiesSection.js: + (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): + (WebInspector.ObjectPropertyTreeElement.prototype.update): + * inspector/front-end/ObjectProxy.js: + (WebInspector.ObjectProxy): + (WebInspector.ObjectPropertyProxy): + * inspector/front-end/PropertiesSidebarPane.js: + (WebInspector.PropertiesSidebarPane.prototype.update.callback): + (WebInspector.PropertiesSidebarPane.prototype.update): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype.update.callback): + (WebInspector.StylesSidebarPane.prototype.update): + (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): + (WebInspector.StylePropertiesSection.prototype.editingSelectorCancelled): + (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted.callback): + (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted): + (WebInspector.StylePropertyTreeElement.prototype): + * inspector/front-end/inspector.js: + (WebInspector._updateHoverHighlight): + (WebInspector.loaded): + (WebInspector.clearConsoleMessages): + (WebInspector.selectDatabase): + (WebInspector.selectDOMStorage): + (WebInspector.updateFocusedNode): + (WebInspector.addNodesToSearchResult): + * inspector/front-end/utilities.js: + (Object.proxyType): + * storage/Storage.h: + (WebCore::Storage::frame): + +2009-08-13 Mark Rowe <mrowe@apple.com> + + Reviewed by Geoff Garen. + + Fix leaks of RGBColor instances from below CSSPrimitiveValue::getRGBColorValue. + + * css/CSSPrimitiveValue.cpp: + (WebCore::CSSPrimitiveValue::getRGBColorValue): Return a PassRefPtr to ensure that the + newly-allocated RGBColor is cleaned up by the caller. + * css/CSSPrimitiveValue.h: + +2009-08-13 Eric Seidel <eric@webkit.org> + + Reviewed by David Hyatt. + + wrong font size when css font-family includes monospace + https://bugs.webkit.org/show_bug.cgi?id=19161 + + Firefox only uses fixed-width default size for exactly "font-family: monospace;". + WebKit has historically used fixed-width default size any time a + font-family includes monospace in the fallback list. + + This patch corrects WebKit's behavior to match Firefox. + I also had to fix a bug in WebKit's font-family fallback behavior where + child elements would inherit parts of their parents fallback lists. + + This patch is mostly just replacing all cases where we used to check for: + fontDescription.genericFontFamily() == MonospaceFamily + with: + fontDescription.useFixedDefaultSize() + + Tests: fast/css/getComputedStyle/computed-style-font-family-monospace.html + fast/css/getComputedStyle/font-family-fallback-reset.html + + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::applyProperty): + Deploy useFixedDefaultSize(). Also fix the bug where child + FontDescriptions would carry part of the parent font-family fallback list. + (WebCore::CSSStyleSelector::checkForGenericFamilyChange): + It's no longer alright to just check genericFontFamily(), + we have to check to make sure the changed style has a matching useFixedDefaultSize(). + * platform/graphics/FontDescription.h: + (WebCore::FontDescription::useFixedDefaultSize): + Only use the fixed default size if we have one font family and it is "monospace". + "-webkit-monospace" is the internal representation of the CSS identifier "monospace". + +2009-08-13 Christian Plesner Hansen <christian.plesner.hansen@gmail.com> + + Reviewed by Dimitri Glazkov. + + [v8] Fix atomic string externalization crash. + Atomic string externalization assumes that all non-empty strings + can be externalized which is untrue on 64-bit. This change fixed + that. + + https://bugs.webkit.org/show_bug.cgi?id=28215 + + This bug causes loads of test crashes, no need to add new tests + specifically for this. + + * bindings/v8/V8Binding.cpp: + (WebCore::v8StringToAtomicWebCoreString): + +2009-08-13 George Staikos <george.staikos@torchmobile.com> + + Rubberstamped by Darin Adler. + + Use ASSERT_UNUSED instead of UNUSED_PARAM + + * wml/WMLAnchorElement.cpp: + (WebCore::WMLAnchorElement::deregisterTask): + * wml/WMLDoElement.cpp: + (WebCore::WMLDoElement::deregisterTask): + +2009-08-13 Steve Block <steveblock@google.com> + + Reviewed by Darin Adler. + + Fixes a couple of bugs in SecurityOrigin::createFromDatabaseIdentifier. + https://bugs.webkit.org/show_bug.cgi?id=28262 + + No new tests possible. + + * page/SecurityOrigin.cpp: + (WebCore::SecurityOrigin::createFromDatabaseIdentifier): + +2009-08-13 Dirk Schulze <krit@webkit.org> + + Reviewed by Eric Seidel. + + [CAIRO] getImageData fails on a given rect bigger than the image rect + + The destination image and the source image was mixed up on creating the + imageData. + + This is just a clean up and doesn't affect the current behavior. It's not + possible to test this failure in a LayoutTest. Only canvas uses getImageData + at the moment and returns before calling getImageData, if the image rect does + not contain the requested rect. + + * platform/graphics/cairo/ImageBufferCairo.cpp: + (WebCore::getImageData): + +2009-08-13 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding RenderTheme to WebCore. + https://bugs.webkit.org/show_bug.cgi?id=28258 + + * platform/haiku/RenderThemeHaiku.cpp: Added. + (WebCore::RenderThemeHaiku::create): + (WebCore::RenderTheme::themeForPage): + (WebCore::RenderThemeHaiku::RenderThemeHaiku): + (WebCore::RenderThemeHaiku::~RenderThemeHaiku): + (WebCore::supportsFocus): + (WebCore::RenderThemeHaiku::supportsFocusRing): + (WebCore::RenderThemeHaiku::platformActiveSelectionBackgroundColor): + (WebCore::RenderThemeHaiku::platformInactiveSelectionBackgroundColor): + (WebCore::RenderThemeHaiku::platformActiveSelectionForegroundColor): + (WebCore::RenderThemeHaiku::platformInactiveSelectionForegroundColor): + (WebCore::RenderThemeHaiku::platformTextSearchHighlightColor): + (WebCore::RenderThemeHaiku::systemFont): + (WebCore::RenderThemeHaiku::paintCheckbox): + (WebCore::RenderThemeHaiku::setCheckboxSize): + (WebCore::RenderThemeHaiku::paintRadio): + (WebCore::RenderThemeHaiku::setRadioSize): + (WebCore::RenderThemeHaiku::adjustMenuListStyle): + (WebCore::RenderThemeHaiku::paintMenuList): + * platform/haiku/RenderThemeHaiku.h: Added. + (WebCore::RenderThemeHaiku::supportsHover): + +2009-08-13 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Remove the "m_point" code from ContextMenuHaiku.cpp + https://bugs.webkit.org/show_bug.cgi?id=28256 + + * platform/haiku/ContextMenuHaiku.cpp: + (WebCore::ContextMenuReceiver::ContextMenuReceiver): + (WebCore::ContextMenu::ContextMenu): + (WebCore::ContextMenu::appendItem): + (WebCore::ContextMenu::insertItem): + +2009-08-13 Joseph Pecoraro <joepeck02@gmail.com> + + Reviewed by Darin Adler. + + Inspector: Show Hidden Cookie Data + https://bugs.webkit.org/show_bug.cgi?id=28185 + + Added new file Cookie.h to the WebCore XCode + + * WebCore.xcodeproj/project.pbxproj: + + InspectorController.cookies() binding + + * bindings/js/JSInspectorBackendCustom.cpp: + (WebCore::JSInspectorBackend::cookies): + * inspector/InspectorBackend.idl: + + Struct for static Cookie information + (name, value, path, domain, expires, httpOnly, secure, session) + + * platform/Cookie.h: Added. + (WebCore::Cookie::Cookie): + + Getter for the a list of raw Cookies + getRawCookies(., ., out Vector<Cookie>) + + * platform/CookieJar.h: + + Implementation of getRawCookies for the mac platform. + + * platform/mac/CookieJar.mm: + (WebCore::getRawCookies): + + Stub other CookieJar implementations to satisfy the interface. + + * platform/haiku/CookieJarHaiku.cpp: + (WebCore::getRawCookies): + * platform/network/chromium/CookieJarChromium.cpp: + (WebCore::getRawCookies): + * platform/network/curl/CookieJarCurl.cpp: + (WebCore::getRawCookies): + * platform/network/soup/CookieJarSoup.cpp: + (WebCore::getRawCookies): + * platform/network/win/CookieJarCFNetWin.cpp: + (WebCore::getRawCookies): + * platform/network/win/CookieJarWin.cpp: + (WebCore::getRawCookies): + * platform/qt/CookieJarQt.cpp: + (WebCore::getRawCookies): + +2009-08-13 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Add a new gesture in Web Inspector to remove breakpoints + https://bugs.webkit.org/show_bug.cgi?id=19131 + + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._documentMouseDown): + +2009-08-13 Norbert Leser <norbert.leser@nokia.com> + + Reviewed by Simon Hausmann. + + Symbian target components (library and executable files) + require Unique Identifiers (i.e., UID3). + These identifiers are defined in the respective project + file, conditionally for "symbian" platform. + + * WebCore.pro: + +2009-08-13 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Eric Seidel. + + wrong calculation of overflow size for flexbox and table + https://bugs.webkit.org/show_bug.cgi?id=28064 + + RenderFlexibleBox and RenderTable were using the width of overflow + to update height of overflow, so height became wrong value and + width was not updated. As the corresponding code of RenderBlock + was sane, I factored it out and used from RenderFlexibleBox and + RenderTable. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::updateOverflowWithShadowAndReflection): created from code of layoutBlock + (WebCore::RenderBlock::layoutBlock): + * rendering/RenderBlock.h: + * rendering/RenderFlexibleBox.cpp: use updateOverflowWithShadowAndReflection + (WebCore::RenderFlexibleBox::layoutBlock): + * rendering/RenderTable.cpp: + (WebCore::RenderTable::layout): use updateOverflowWithShadowAndReflection + +2009-08-13 Mark Rowe <mrowe@apple.com> + + Revert r47185, the fix for <https://bugs.webkit.org/show_bug.cgi?id=28185>, as it broke the + Windows build in a non-obvious manner. + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSInspectorBackendCustom.cpp: + * inspector/InspectorBackend.idl: + * platform/Cookie.h: Removed. + * platform/CookieJar.h: + * platform/haiku/CookieJarHaiku.cpp: + (WebCore::setCookies): + (WebCore::cookies): + * platform/mac/CookieJar.mm: + * platform/network/chromium/CookieJarChromium.cpp: + * platform/network/curl/CookieJarCurl.cpp: + * platform/network/soup/CookieJarSoup.cpp: + * platform/network/win/CookieJarCFNetWin.cpp: + * platform/network/win/CookieJarWin.cpp: + * platform/qt/CookieJarQt.cpp: + +2009-08-13 Ariya Hidayat <ariya.hidayat@nokia.com> + + Not reviewed: build fix (for r47192), adding new file from + https://bugs.webkit.org/show_bug.cgi?id=28174 + + * inspector/front-end/StatusBarButton.js: Added. + +2009-08-13 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Timothy Hatcher. + + Introduced StatusBarButton class that encapsulates glyphs support. + Views updated accordingly. + + https://bugs.webkit.org/show_bug.cgi?id=28174 + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/CookieItemsView.js: + (WebInspector.CookieItemsView): + (WebInspector.CookieItemsView.prototype.get statusBarItems): Updated to retrieve DOM element from StatusBarButton instance (here and in similar getters below.) + (WebInspector.CookieItemsView.prototype.hide): + (WebInspector.CookieItemsView.prototype.update): + * inspector/front-end/DOMStorageItemsView.js: + (WebInspector.DOMStorageItemsView): + (WebInspector.DOMStorageItemsView.prototype.get statusBarItems): + (WebInspector.DOMStorageItemsView.prototype.hide): + (WebInspector.DOMStorageItemsView.prototype.update): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + (WebInspector.ElementsPanel.prototype.get statusBarItems): + (WebInspector.ElementsPanel.prototype.hide): + (WebInspector.ElementsPanel.prototype._nodeSearchButtonClicked): + * inspector/front-end/Panel.js: + * inspector/front-end/ProfileView.js: + (WebInspector.ProfileView): + (WebInspector.ProfileView.prototype.get statusBarItems): + (WebInspector.ProfileView.prototype._updatePercentButton): + (WebInspector.ProfileView.prototype._focusClicked): + (WebInspector.ProfileView.prototype._excludeClicked): + (WebInspector.ProfileView.prototype._resetClicked): + * inspector/front-end/ProfilesPanel.js: + (WebInspector.ProfilesPanel): + (WebInspector.ProfilesPanel.prototype.get statusBarItems): + (WebInspector.ProfilesPanel.prototype.setRecordingProfile): + (WebInspector.ProfilesPanel.prototype._updateInterface): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourcesPanel.prototype.get statusBarItems): + (WebInspector.ResourcesPanel.prototype.reset): + (WebInspector.ResourcesPanel.prototype._toggleLargerResources): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): + (WebInspector.ScriptsPanel.prototype.get statusBarItems): + (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton): + (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): + * inspector/front-end/StatusBarButton.js: Added. + (WebInspector.StatusBarButton): + (WebInspector.StatusBarButton.prototype._clicked): + (WebInspector.StatusBarButton.prototype.get disabled): + (WebInspector.StatusBarButton.prototype.set disabled): + (WebInspector.StatusBarButton.prototype.get title): + (WebInspector.StatusBarButton.prototype.set title): + (WebInspector.StatusBarButton.prototype.get toggled): + (WebInspector.StatusBarButton.prototype.set toggled): + (WebInspector.StatusBarButton.prototype.get visible): + (WebInspector.StatusBarButton.prototype.set visible): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.css: For uniformity, class names are always used to identify status bar buttons. Also, fixed "Reload" button style to use glyphs. + * inspector/front-end/inspector.html: + +2009-08-12 Ariya Hidayat <ariya.hidayat@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Add shadow support in GraphicsContext::fillRect(). + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::fillRect): Paint shadow if necessary. + (WebCore::GraphicsContext::setPlatformShadow): Inverse y offset. + +2009-08-13 David Levin <levin@chromium.org> + + Unreviewed build fix for Chromium Linux. + + Rollback r47157 as this broke debug tests of Chromium Linux. + + * platform/graphics/skia/PlatformContextSkia.cpp: + (PlatformContextSkia::setupPaintCommon): + +2009-08-13 David Levin <levin@chromium.org> + + Unreviewed build fix for chromium. + + The chromium build broke due to r47185 which added + a cookies array to inspector/InspectorBackend.idl. + + * bindings/v8/custom/V8CustomBinding.h: Added the declaration for the cookies callback. + * bindings/v8/custom/V8InspectorBackendCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL(InspectorBackendCookies)): Stubbed out an implementation + for the cookies callback. + +2009-08-12 Joseph Pecoraro <joepeck02@gmail.com> + + Reviewed by Timothy Hatcher. + + Inspector: Show Hidden Cookie Data + https://bugs.webkit.org/show_bug.cgi?id=28185 + + Added new file Cookie.h to the WebCore XCode + + * WebCore.xcodeproj/project.pbxproj: + + InspectorController.cookies() binding + + * bindings/js/JSInspectorBackendCustom.cpp: + (WebCore::JSInspectorBackend::cookies): + * inspector/InspectorBackend.idl: + + Struct for static Cookie information + (name, value, path, domain, expires, httpOnly, secure, session) + + * platform/Cookie.h: Added. + (WebCore::Cookie::Cookie): + + Getter for the a list of raw Cookies + getRawCookies(., ., out Vector<Cookie>) + + * platform/CookieJar.h: + + Implementation of getRawCookies for the mac platform. + + * platform/mac/CookieJar.mm: + (WebCore::getRawCookies): + + Stub other CookieJar implementations to satisfy the interface. + + * platform/haiku/CookieJarHaiku.cpp: + (WebCore::getRawCookies): + * platform/network/chromium/CookieJarChromium.cpp: + (WebCore::getRawCookies): + * platform/network/curl/CookieJarCurl.cpp: + (WebCore::getRawCookies): + * platform/network/soup/CookieJarSoup.cpp: + (WebCore::getRawCookies): + * platform/network/win/CookieJarCFNetWin.cpp: + (WebCore::getRawCookies): + * platform/network/win/CookieJarWin.cpp: + (WebCore::getRawCookies): + * platform/qt/CookieJarQt.cpp: + (WebCore::getRawCookies): + +2009-08-08 Joseph Pecoraro <joepeck02@gmail.com> + + Reviewed by Timothy Hatcher. + + Inspector: Cookies in Storage Panel + https://bugs.webkit.org/show_bug.cgi?id=27202 + + Data Structure for a Cookie. Just Key/Value for Now: + + * inspector/front-end/Cookie.js: Added. + (WebInspector.Cookie): + (WebInspector.Cookie.prototype.get key): + (WebInspector.Cookie.prototype.set key): + (WebInspector.Cookie.prototype.get value): + (WebInspector.Cookie.prototype.set value): + + A Storage View for Cookies. Allows for Refresh/Delete: + + * inspector/front-end/CookieItemsView.js: Added. + (WebInspector.CookieItemsView): + (WebInspector.CookieItemsView.prototype.get statusBarItems): refresh and delete buttons + (WebInspector.CookieItemsView.prototype.show): + (WebInspector.CookieItemsView.prototype.hide): + (WebInspector.CookieItemsView.prototype.update): + (WebInspector.CookieItemsView.prototype.buildCookies): parses the inspected window's document.cookie string + (WebInspector.CookieItemsView.prototype.dataGridForCookies): creates a datagrid for cookies + (WebInspector.CookieItemsView.prototype._deleteButtonClicked): attempt at deleting the cookie (not flawless) + (WebInspector.CookieItemsView.prototype._refreshButtonClicked): rebuild the datagrid + + Include a SidebarSection Section in the Databases Panel: + + * inspector/front-end/DatabasesPanel.js: + (WebInspector.DatabasesPanel): + (WebInspector.DatabasesPanel.prototype.show): calls populateInterface + (WebInspector.DatabasesPanel.prototype.populateInterface): adds cookies if they don't exist + (WebInspector.DatabasesPanel.prototype.reset): remove cookie specific parts + (WebInspector.DatabasesPanel.prototype.addCookies): add cookies sidebar tree element + (WebInspector.DatabasesPanel.prototype.showCookies): sets the visible view to a CookiesItemView + (WebInspector.CookieSidebarTreeElement): + (WebInspector.CookieSidebarTreeElement.prototype.onselect): + (WebInspector.CookieSidebarTreeElement.prototype.get mainTitle): just "Cookies" at the moment + (WebInspector.CookieSidebarTreeElement.prototype.set mainTitle): + (WebInspector.CookieSidebarTreeElement.prototype.get subtitle): no subtitle yet + (WebInspector.CookieSidebarTreeElement.prototype.set subtitle): + + New "Cookies" Image for the Sidebar: + + * inspector/front-end/Images/cookie.png: Added. + * inspector/front-end/inspector.css: + + Include the Added Files where appropriate: + + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.html: + +2009-08-12 George Wright <george.wright@torchmobile.com> + + Reviewed by George Staikos. + + Add SQLTransactionCoordinator.[h,cpp] to WebCore.pro. + + https://bugs.webkit.org/show_bug.cgi?id=28246 + + * WebCore.pro: + +2009-08-12 George Staikos <george.staikos@torchmobile.com> + + Reviewed by Adam Treat. + + Mark unused variables to avoid compile failures in -Werror. + + * wml/WMLAnchorElement.cpp: + (WebCore::WMLAnchorElement::deregisterTask): + * wml/WMLDoElement.cpp: + (WebCore::WMLDoElement::deregisterTask): + +2009-08-12 Charles Wei <charles.wei@torchmobile.com.cn> + + Reviewed by Niko Zimmermann. + + This is to add WCSS marquee support , which is defined by OMA and is an extension for CSS2, + It extends CSS display with "display:-wap-marquee;-wap-marquee-dir:xxx;-wap-marquee-speed:xxx;-wap-marquee-style:xxx" + Minor fixes by Eric Seidel and George Staikos. + https://bugs.webkit.org/show_bug.cgi?id=23727 + + No new tests, the tests have already been landed at LayoutTests/fast/wcss/ + + * WebCore.pro: + * css/CSSParser.cpp: + (WebCore::CSSParser::parseValue): + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::applyProperty): + * css/CSSValueKeywords.in: + * css/WCSSPropertyNames.in: Added. + * css/WCSSValueKeywords.in: Added. + * rendering/RenderMarquee.cpp: + (WebCore::RenderMarquee::start): + * rendering/RenderObject.cpp: + (WebCore::RenderObject::createObject): + * rendering/style/RenderStyleConstants.h: + (WebCore::): + +2009-08-12 George Wright <george.wright@torchmobile.com> + + Reviewed by David Hyatt. + + Update the canvas renderer's intrinsic size with the zoomed + lengths and ensure the intrinsic size is correct when setting + an initial style. + + https://bugs.webkit.org/show_bug.cgi?id=26908 + + Test: fast/canvas/canvas-zoom.html + + * rendering/RenderHTMLCanvas.cpp: + (WebCore::RenderHTMLCanvas::canvasSizeChanged): + * rendering/RenderReplaced.cpp: + (WebCore::RenderReplaced::styleDidChange): + +2009-08-12 Alpha Lam <hclam@chromium.org> + + Reviewed by Simon Fraser. + + Fix regression for dragging the media controller thumb. + https://bugs.webkit.org/show_bug.cgi?id=28211 + + Modified the conditions for rejecting events on the media controller + to only rejecting mouse events not from the left button. + + Test: media/controls-drag-timebar.html + + * rendering/MediaControlElements.cpp: + (WebCore::MediaControlTimelineElement::defaultEventHandler): + +2009-08-12 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Eric Seidel. + + Fixing a deadlock caused by two transactions that run on two + different database handles for the same DB. Adding a per-DB thread + transaction coordinator that allows the DB thread to run only one + transaction per DB file at any given time. + + Adding a regression test for this bug. + + Test: storage/multiple-transactions-on-different-handles.html + + https://bugs.webkit.org/show_bug.cgi?id=27966 + + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * storage/Database.cpp: + (WebCore::Database::transactionCoordinator): + * storage/Database.h: + * storage/DatabaseThread.cpp: + (WebCore::DatabaseThread::DatabaseThread): + * storage/DatabaseThread.h: + (WebCore::DatabaseThread::transactionCoordinator): + * storage/SQLTransaction.cpp: + (WebCore::SQLTransaction::SQLTransaction): + (WebCore::SQLTransaction::debugStepName): + (WebCore::SQLTransaction::performNextStep): + (WebCore::SQLTransaction::aquireLock): + (WebCore::SQLTransaction::lockAquired): + (WebCore::SQLTransaction::cleanupAfterSuccessCallback): + (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): + * storage/SQLTransaction.h: + * storage/SQLTransactionCoordinator.cpp: Added. + * storage/SQLTransactionCoordinator.h: Added. + +2009-08-12 Darin Adler <darin@apple.com> + + Reviewed by Geoff Garen. + + Custom properties on DOM objects are lost after GC (as demonstrated by the gc-9.html test) + https://bugs.webkit.org/show_bug.cgi?id=28194 + + * GNUmakefile.am: Added the two new source files. + * WebCore.gypi: Ditto. + * WebCore.pro: Ditto. + * WebCore.vcproj/WebCore.vcproj: Ditto. + * WebCore.xcodeproj/project.pbxproj: Ditto. + * WebCoreSources.bkl: Ditto. + + * bindings/js/JSCSSRuleListCustom.cpp: Added. + (WebCore::JSCSSRuleList::markChildren): Call markDOMObjectWrapper + on rules in the list. + + * bindings/js/JSCSSStyleDeclarationCustom.cpp: + (WebCore::JSCSSStyleDeclaration::markChildren): Added. Call + markDOMObjectWrapper on the CSSValue objects that are owned by the + declaration as values of the properties. + + * bindings/js/JSDOMBinding.cpp: + (WebCore::isObservableThroughDOM): Added code to handle some + cases where nodes are observable because they own objects that + in turn have custom properties. + + * bindings/js/JSDOMBinding.h: Fix a typo in the header. + + * bindings/js/JSDocumentCustom.cpp: + (WebCore::JSDocument::markChildren): Added call to markDOMObjectWrapper + for implementation and styleSheets. + + * bindings/js/JSElementCustom.cpp: + (WebCore::JSElement::markChildren): Added. Calls markDOMObjectWrapper + for attributes and style. + + * bindings/js/JSHTMLCanvasElementCustom.cpp: Added. + (WebCore::JSHTMLCanvasElement::markChildren): Call markDOMObjectWrapper + on the rendering context. + + * bindings/js/JSStyleSheetCustom.cpp: + (WebCore::JSStyleSheet::markChildren): Call markDOMObjectWrapper on + items in the stylesheet. + + * bindings/js/JSStyleSheetListCustom.cpp: + (WebCore::JSStyleSheetList::markChildren): Added. Calls + markDOMObjectWrapper on stylesheets in the list. + + * css/CSSRuleList.idl: Added CustomMarkFunction. + * css/CSSStyleDeclaration.idl: Ditto. + * css/StyleSheetList.idl: Ditto. + * dom/Element.idl: Ditto. + * html/HTMLCanvasElement.idl: Ditto. + + * dom/Element.h: Made everything private that could be. + Added access to the attributeMap that does returns + the existing map without doing any of the lazy-updating work. This + is needed to get at the existing attributes during garbage collection + without having side effects. + + * html/HTMLCanvasElement.h: Cleaned up the header a bit, making + members private. Added renderingContext2D function for use in + JSHTMLCanvasElement::markChildren. + +2009-08-12 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Eric Seidel. + + Fixes two bugs about Pan Scrolling - Scrolling with middle mouse button doesn't + work in Expanded view on reader.google.com, and Can enter auto scroll from a non-scrollable area. + https://bugs.webkit.org/show_bug.cgi?id=28023 + https://bugs.webkit.org/show_bug.cgi?id=24794 + + Added a new method to RenderBox seeing if the Box can be scrolled and actually has something to + scroll, and use that for pan scrolling. + + Test: platform/win/fast/events/panScroll-nested-divs.html + + * page/EventHandler.cpp: + (WebCore::EventHandler::handleMouseDraggedEvent): + (WebCore::EventHandler::updateAutoscrollRenderer): + (WebCore::EventHandler::handleMousePressEvent): + * rendering/RenderBox.cpp: + (WebCore::RenderBox::canBeScrolledAndHasScrollableArea): + * rendering/RenderBox.h: + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::scrollByRecursively): + +2009-08-12 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Adam Roben. + + Fix of <rdar://6728361> Mouse wheel scrolling on a page with expanded drop down + list detaches drop down. + + Added a function for Windows PopupMenu's to return their class name. + + * platform/PopupMenu.h: + * platform/win/PopupMenuWin.cpp: + (WebCore::PopupMenu::popupClassName): + +2009-08-12 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dan Bernstein. + + WINCE PORT: Color and Gradient + https://bugs.webkit.org/show_bug.cgi?id=27511 + + * platform/graphics/wince/ColorWince.cpp: Added. + * platform/graphics/wince/GradientWince.cpp: Added. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by Eric Seidel. + + fix a typo in platform/graphics/skia/PlatformContextSkia.cpp + https://bugs.webkit.org/show_bug.cgi?id=28172 + + No new tests because it's a just typo fix. + + * platform/graphics/skia/PlatformContextSkia.cpp: + (PlatformContextSkia::setupPaintCommon): + +2009-08-12 Michelangelo De Simone <micdesim@gmail.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=27458 + Support for the :default CSS pseudoclass, as per HTML5 spec. + http://www.whatwg.org/specs/web-apps/current-work/multipage/interactive-elements.html#selector-default + + Tests: fast/css/pseudo-default-001.html + fast/css/pseudo-default-002.html + fast/css/pseudo-default-003.html + fast/css/pseudo-default-004.html + + * css/CSSSelector.cpp: + (WebCore::CSSSelector::extractPseudoType): pseudoDefault + * css/CSSSelector.h: + (WebCore::CSSSelector::): + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::canShareStyleWithElement): sharing stuff is + aware that only one default button can be present in a form + (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): applies + the :default CSS pseudoclass + * dom/Element.h: + (WebCore::Element::isDefaultButtonForForm): new method to determine + whether a FormControl is a default button for a given form + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLFormControlElement::isDefaultButtonForForm): ditto + * html/HTMLFormControlElement.h: + * html/HTMLFormElement.cpp: + (WebCore::HTMLFormElement::defaultButton): extracts the default button + from the form + * html/HTMLFormElement.h: + +2009-08-12 David Levin <levin@chromium.org> + + No review, rolling out r47106. + https://bugs.webkit.org/show_bug.cgi?id=28215 + + This patch relied on a new version of v8 which is not available + in chromium yet. + + * bindings/v8/V8Binding.cpp: + (WebCore::v8StringToAtomicWebCoreString): + +2009-08-12 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Bug 26993 : Geolocation::requestPermission() + https://bugs.webkit.org/show_bug.cgi?id=26993 + + Second patch to allow the Geolocation permission request to chrome to be asynchronous + or synchronous. Fixes a bug where callbacks were called twice when permissions + are granted synchronously. + + No new tests required. + + * page/Geolocation.cpp: + (WebCore::Geolocation::setIsAllowed): Modified. Calls makeSuccessCallbacks() rather than geolocationServicePositionChanged(). + (WebCore::Geolocation::geolocationServicePositionChanged): Modified. Updated logic to avoid repeated callbacks when permissions are granted synchronously. + (WebCore::Geolocation::makeSuccessCallbacks): Added. Calls success callbacks. + * page/Geolocation.h: Modified. Adds makeSuccessCallbacks(). + +2009-08-12 Anders Carlsson <andersca@apple.com> + + Reviewed by Sam Weinig. + + <rdar://problem/6952336> + CrashTracer: [USER] 3 crashes in Safari at com.apple.WebCore • WebCore::SecurityOrigin::canAccess const + 27 + + Make sure to set the security origin before calling dispatchWindowObjectAvailable. + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::begin): + +2009-08-12 Xiaomei Ji <xji@chromium.org> + + Reviewed by Eric Seidel. + + Fix [Chromium] drop down menu letter selection, skip selections + https://bugs.webkit.org/show_bug.cgi?id=28205 + + Not auto-testable since it is chromim platform specific code, and it involves sending a keyboard + event to the popup, which is not possible (eventSender sends the key + events through webview, we want to go through the webwidget). + + * manual-tests/keyboard_select_elements_with_same_beginning.html: Added. + * platform/chromium/PopupMenuChromium.cpp: + (WebCore::isCharacterTypeEvent): style change. + (WebCore::PopupListBox::handleKeyEvent): typeAheadFind should be called only when the event is + a character type event to avoid calling twice for English. + (WebCore::PopupListBox::typeAheadFind): remove unnecessary checking of isCharacterTypeEvent() since the whole function is only called under that condition. + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding GraphicsContext to WebCore/platform/graphics/haiku. + https://bugs.webkit.org/show_bug.cgi?id=28130 + + * platform/graphics/haiku/GraphicsContextHaiku.cpp: Added. + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::GraphicsContext): + (WebCore::GraphicsContext::~GraphicsContext): + (WebCore::GraphicsContext::platformContext): + (WebCore::GraphicsContext::savePlatformState): + (WebCore::GraphicsContext::restorePlatformState): + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::drawEllipse): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::beginPath): + (WebCore::GraphicsContext::addPath): + (WebCore::GraphicsContext::clip): + (WebCore::GraphicsContext::drawFocusRing): + (WebCore::GraphicsContext::drawLineForText): + (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): + (WebCore::GraphicsContext::roundToDevicePixels): + (WebCore::GraphicsContext::beginTransparencyLayer): + (WebCore::GraphicsContext::endTransparencyLayer): + (WebCore::GraphicsContext::clearRect): + (WebCore::GraphicsContext::strokeRect): + (WebCore::GraphicsContext::setLineCap): + (WebCore::GraphicsContext::setLineJoin): + (WebCore::GraphicsContext::setMiterLimit): + (WebCore::GraphicsContext::setAlpha): + (WebCore::GraphicsContext::setCompositeOperation): + (WebCore::GraphicsContext::clipOut): + (WebCore::GraphicsContext::clipToImageBuffer): + (WebCore::GraphicsContext::getCTM): + (WebCore::GraphicsContext::translate): + (WebCore::GraphicsContext::origin): + (WebCore::GraphicsContext::rotate): + (WebCore::GraphicsContext::scale): + (WebCore::GraphicsContext::clipOutEllipseInRect): + (WebCore::GraphicsContext::addInnerRoundedRectClip): + (WebCore::GraphicsContext::concatCTM): + (WebCore::GraphicsContext::setPlatformShouldAntialias): + (WebCore::GraphicsContext::setImageInterpolationQuality): + (WebCore::GraphicsContext::setURLForRect): + (WebCore::GraphicsContext::setPlatformFont): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::getHaikuStrokeStyle): + (WebCore::GraphicsContext::setPlatformStrokeStyle): + (WebCore::GraphicsContext::setPlatformStrokeThickness): + (WebCore::GraphicsContext::setPlatformFillColor): + (WebCore::GraphicsContext::clearPlatformShadow): + (WebCore::GraphicsContext::setPlatformShadow): + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Modifying WebCore/platform/graphics files to allow Haiku port. + https://bugs.webkit.org/show_bug.cgi?id=28128 + + * platform/graphics/BitmapImage.h: Adding getBBitmap() function. + * platform/graphics/Color.h: rgb_color is the Color struct in Haiku. + * platform/graphics/FloatPoint.h: BPoint is the Point class in Haiku. + * platform/graphics/FloatRect.h: BRect is the Rect class in Haiku. + * platform/graphics/GraphicsContext.cpp: + * platform/graphics/GraphicsContext.h: BView is the PlatformGraphicsContext + class for Haiku. Adding getHaikuStrokeStyle() function. + * platform/graphics/Icon.h: Adding an empty Icon() constructor because + this class isn't implemented for the moment. + * platform/graphics/ImageSource.h: BBitmap is the native bitmap class + for Haiku. + * platform/graphics/IntPoint.h: BPoint is the Point class in Haiku. + * platform/graphics/IntRect.h: BRect is the Rect class in Haiku. + * platform/graphics/IntSize.h: BSize is the Size class in Haiku. + * platform/graphics/Path.h: BRegion is the Path class in Haiku. + * platform/graphics/Pattern.h: Adding the GraphicsDef.h header and the + native pattern type. + * platform/graphics/SimpleFontData.h: Adding Haiku's Font.h header. + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding modification to the WebCore/platform/ files to allow + the Haiku port. + https://bugs.webkit.org/show_bug.cgi?id=28128 + + * platform/ContextMenuItem.h: BMenu is the PlatformMenuItemDescription + class of Haiku. + * platform/Cursor.h: BCursor is the Cursor class of Haiku. + * platform/DragData.h: Use a BMessage as DragDataRef. + * platform/DragImage.h: Use a BBitmap as DragImageRef. + * platform/PlatformKeyboardEvent.h: Use BMessage as event vehicle. + * platform/PlatformMenuDescription.h: BMenu is the + PlatformMenuDescription class of Haiku. + * platform/PlatformMouseEvent.h: Use BMessage as event vehicle. + * platform/PlatformWheelEvent.h: Use BMessage as event vehicle. + * platform/PopupMenu.h: Adding a m_menu attribute for Haiku. + * platform/Widget.h: BView is the PlatformWidget class of Haiku. + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Tiny modifications on WebCore files to allow Haiku port. + https://bugs.webkit.org/show_bug.cgi?id=28128 + + * bindings/js/ScriptControllerHaiku.cpp: Style cleanup. + * loader/CachedFont.cpp: Haiku behaves like Qt, Gtk, or Chromium, + so many PLATFORM(HAIKU) were added to these functions. + (WebCore::CachedFont::~CachedFont): + (WebCore::CachedFont::ensureCustomFontData): + (WebCore::CachedFont::platformDataFromCustomData): + (WebCore::CachedFont::allClientsRemoved): + * page/EventHandler.cpp: Like the mac and Qt port, Haiku doesn't need the + invertSenseOfTabsToLinks() function. + * page/haiku/DragControllerHaiku.cpp: Style cleanup. + * platform/image-decoders/ImageDecoder.h: For image decoding Haiku + behaves like Cairo or Wx, (not like Skia). + (WebCore::RGBA32Buffer::getAddr): + * platform/text/PlatformString.h: Adding the String(BString&) and BString() + methods specific to Haiku. + * platform/text/UnicodeRange.h: Haiku needs to include stdint.h. + * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: + (WebCore::currentSearchLocaleID): Missing function. + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding the ScrollbarTheme files. + https://bugs.webkit.org/show_bug.cgi?id=28125 + + * platform/haiku/ScrollbarThemeHaiku.cpp: Added. + (buttonWidth): + (WebCore::ScrollbarTheme::nativeTheme): + (WebCore::ScrollbarThemeHaiku::ScrollbarThemeHaiku): + (WebCore::ScrollbarThemeHaiku::~ScrollbarThemeHaiku): + (WebCore::ScrollbarThemeHaiku::scrollbarThickness): + (WebCore::ScrollbarThemeHaiku::hasButtons): + (WebCore::ScrollbarThemeHaiku::hasThumb): + (WebCore::ScrollbarThemeHaiku::backButtonRect): + (WebCore::ScrollbarThemeHaiku::forwardButtonRect): + (WebCore::ScrollbarThemeHaiku::trackRect): + (WebCore::ScrollbarThemeHaiku::paintScrollbarBackground): + (WebCore::ScrollbarThemeHaiku::paintButton): + (WebCore::ScrollbarThemeHaiku::paintThumb): + * platform/haiku/ScrollbarThemeHaiku.h: Added. + +2009-08-12 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Adding eight simple files to WebCore/platform/graphics/haiku. + https://bugs.webkit.org/show_bug.cgi?id=28122 + + * platform/graphics/haiku/ColorHaiku.cpp: Added. + (WebCore::Color::Color): + (WebCore::Color::operator rgb_color): + (WebCore::focusRingColor): + * platform/graphics/haiku/FloatPointHaiku.cpp: Added. + (WebCore::FloatPoint::FloatPoint): + (WebCore::FloatPoint::operator BPoint): + * platform/graphics/haiku/FloatRectHaiku.cpp: Added. + (WebCore::FloatRect::FloatRect): + (WebCore::FloatRect::operator BRect): + * platform/graphics/haiku/GradientHaiku.cpp: Added. + (WebCore::Gradient::platformDestroy): + (WebCore::Gradient::platformGradient): + (WebCore::Gradient::fill): + * platform/graphics/haiku/IntPointHaiku.cpp: Added. + (WebCore::IntPoint::IntPoint): + (WebCore::IntPoint::operator BPoint): + * platform/graphics/haiku/IntRectHaiku.cpp: Added. + (WebCore::IntRect::IntRect): + (WebCore::IntRect::operator BRect): + * platform/graphics/haiku/IntSizeHaiku.cpp: Added. + (WebCore::IntSize::IntSize): + (WebCore::IntSize::operator BSize): + * platform/graphics/haiku/PathHaiku.cpp: Added. + (WebCore::Path::Path): + (WebCore::Path::~Path): + (WebCore::Path::operator=): + (WebCore::Path::hasCurrentPoint): + (WebCore::Path::contains): + (WebCore::Path::translate): + (WebCore::Path::boundingRect): + (WebCore::Path::moveTo): + (WebCore::Path::addLineTo): + (WebCore::Path::addQuadCurveTo): + (WebCore::Path::addBezierCurveTo): + (WebCore::Path::addArcTo): + (WebCore::Path::closeSubpath): + (WebCore::Path::addArc): + (WebCore::Path::addRect): + (WebCore::Path::addEllipse): + (WebCore::Path::clear): + (WebCore::Path::isEmpty): + (WebCore::Path::debugString): + (WebCore::Path::apply): + (WebCore::Path::transform): + (WebCore::Path::strokeBoundingRect): + +2009-08-12 Lyon Chen <lyon.chen@torchmobile.com> + + Reviewed by George Staikos. + + WINCE PORT: Implement Keygen for WINCE + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/KeygenWince.cpp: Added. + +2009-08-12 Brent Fulgham <bfulgham@webkit.org> + + Rubber-stamped by Kevin Ollivier. + + Handle crash in wx due to null value passed to strlen in + the CString constructor. + + * platform/network/curl/ResourceHandleManager.cpp: + (WebCore::certificatePath): Check for null return from getenv + and use default CString constructor instead. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by Eric Seidel. + + WINCE PORT: simple stubs to make it build for WINCE + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/DragDataWince.cpp: Added. + * platform/wince/DragImageWince.cpp: Added. + * platform/wince/EditorWince.cpp: Added. + * platform/wince/KURLWince.cpp: Added. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by George Staikos. + + WINCEPORT: FileSystem and FileChooser + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/FileChooserWince.cpp: Added. + * platform/wince/FileSystemWince.cpp: Added. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by Eric Seidel. + + WINCE PORT: implement Cursor for WINCE. There's no real cursor on most + WinMob devices. We pass the cursor info to application, which so that + can determine what to do. + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/CursorWince.cpp: Added. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by George Staikos. + + WINCE PORT: MIMETypeRegistry + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/MIMETypeRegistryWince.cpp: Added. + +2009-08-12 Joe Mason <joe.mason@torchmobile.com> + + Reviewed by George Staikos. + + WINCE PORT: Pasteboard and SearchPopupMenu + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/PasteboardWince.cpp: Added. + * platform/wince/SearchPopupMenuWince.cpp: Added. + +2009-08-12 Yong Li <yong.li@torchmobile.com> + + Reviewed by George Staikos. + + WINCE PORT: Add SharedTimerWince.cpp and SystemTimeWince.cpp + https://bugs.webkit.org/show_bug.cgi?id=27543 + + * platform/wince/SharedTimerWince.cpp: Added. + * platform/wince/SystemTimeWince.cpp: Added. + +2009-08-12 Mark Mentovai <mark@chromium.org> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=28204 + Allow C++ exceptions to be disabled in WebCore's V8 Mac build. + + * WebCorePrefix.h: + Only undefine |try| and |catch| when building Objective-C[++], + leaving the C++ library definitions intact for C++. + +2009-08-12 Nate Chapin <japhet@chromium.org> + + Reviewed by Adam Barth. + + Add a Custom Setter for DOMWindowEvent in the V8 bindings. + https://bugs.webkit.org/show_bug.cgi?id=27719 + + Tests: fast/events/set-event-in-another-frame.html + fast/events/set-event-to-null.html + + * bindings/scripts/CodeGeneratorV8.pm: Clean up custom getter/setter code, + as it currently doesn't support a custom getter + and a v8-specific custom setter simultaneously. + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_SETTER): + * page/DOMWindow.idl: + +2009-08-12 Peter Kasting <pkasting@google.com> + + Reviewed by Adam Treat. + + https://bugs.webkit.org/show_bug.cgi?id=27965 + Merge wx/ImageSourceWx.cpp into ImageSource.cpp. No changes to + ImageSource.cpp were needed, so this just deletes ImageSourceWx.cpp. + + * WebCore.gypi: + * WebCoreSources.bkl: + * platform/graphics/wx/ImageSourceWx.cpp: Removed. + * webcore-wx.bkl: + +2009-08-12 Peter Kasting <pkasting@google.com> + + Reviewed by Dave Levin. + + https://bugs.webkit.org/show_bug.cgi?id=27933 + Build fix after r47099. + + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::getImageData): + (WebCore::putImageData): + +2009-08-08 Yong Li <yong.li@torchmobile.com> + + Reviewed by Adam Treat. + + WINCE PORT: Implement Path for WINCE. Most code can be + reused for other ports that don't have native path support + https://bugs.webkit.org/show_bug.cgi?id=28188 + + Written also by George Staikos (including quadCurve() and bezier()) + + * platform/graphics/wince/PathWince.cpp: Added. + * platform/graphics/wince/PlatformPathWince.cpp: Added. + * platform/graphics/wince/PlatformPathWince.h: Added. + * platform/graphics/wince/WinceGraphicsExtras.h: Added. + +2009-08-12 Joseph Pecoraro <joepeck02@gmail.com> + + "Double-click to add" new style button does not always show up [quick fix] + https://bugs.webkit.org/show_bug.cgi?id=28187 + + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylePropertyTreeElement.prototype.updateTitle): + +2009-08-12 Crystal Zhang <crystal.zhang@torchmobile.com> + + Reviewed by George Staikos. + + WINCE PORT: MediaPlayerProxy and MediaPlayerPrivate + https://bugs.webkit.org/show_bug.cgi?id=28178 + + * platform/graphics/wince/MediaPlayerPrivateWince.h: Added. + * platform/graphics/wince/MediaPlayerProxy.cpp: Added. + * platform/graphics/wince/MediaPlayerProxy.h: Added. + +2009-08-12 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Eric Seidel. + + HTML 5 database and LocalStorage is not persistent on the Symbian port of QtWebKit + https://bugs.webkit.org/show_bug.cgi?id=28175 + + Call QDir::toNativeSeparators() before the path is passed to the OS. + + Based on work by David Leong. + + * platform/qt/FileSystemQt.cpp: + (WebCore::pathByAppendingComponent): + +2009-08-12 Dirk Schulze <krit@webkit.org> + + Reviewed by Ariya Hidayat. + + Minor build-fix for SVG Filter. Use getUnmultipliedImageData instead + of getImageData. This changed since r47099. + + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::FEColorMatrix::apply): + +2009-08-12 Viet-Trung Luu <viettrungluu@gmail.com> + + Reviewed by Dimitri Glazkov. + + Explicitly set control tints for Chromium/Mac, since the controls' + NSCell(s) lack an NSView and hence their tint isn't updated + automatically when the application is activated/deactivated. + https://bugs.webkit.org/show_bug.cgi?id=28108 + http://crbug.com/18199 + + * rendering/RenderThemeChromiumMac.mm: + (WebCore::updateNSCellControlTint): + (WebCore::RenderThemeChromiumMac::paintCheckbox): + (WebCore::RenderThemeChromiumMac::paintRadio): + (WebCore::RenderThemeChromiumMac::paintButton): + (WebCore::RenderThemeChromiumMac::paintMenuList): + (WebCore::RenderThemeChromiumMac::paintSliderThumb): + (WebCore::RenderThemeChromiumMac::paintSearchField): + (WebCore::RenderThemeChromiumMac::paintSearchFieldCancelButton): + (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsDecoration): + (WebCore::RenderThemeChromiumMac::paintSearchFieldResultsButton): + +2009-08-12 Christian Plesner Hansen <christian.plesner.hansen@gmail.com> + + Reviewed by Dimitri Glazkov. + + [V8] Fix atomic string externalization crash. + Atomic string externalization assumes that all non-empty strings + can be externalized which is untrue on 64-bit. This change fixed + that. + + https://bugs.webkit.org/show_bug.cgi?id=28215 + + This bug causes loads of test crashes, no need to add new tests + specifically for this. + + * bindings/v8/V8Binding.cpp: + (WebCore::v8StringToAtomicWebCoreString): + +2009-08-12 Ariya Hidayat <ariya.hidayat@nokia.com> + + Reviewed by Holger Freyther. + + [Qt] Fix box-shadow painting in r47103. The edge should not be blurry. + Also optimize by not having to save and restore painter state. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::fillRect): + +2009-08-12 Ariya Hidayat <ariya.hidayat@nokia.com> + + Reviewed by Adam Treat. + + [Qt] Fix coding style in GraphicsContextQt.cpp + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::toQtCompositionMode): + (WebCore::toQtLineCap): + (WebCore::toQtLineJoin): + (WebCore::GraphicsContextPlatformPrivate::p): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::pen): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::clipPath): + (WebCore::GraphicsContext::drawFocusRing): + (WebCore::GraphicsContext::beginTransparencyLayer): + (WebCore::GraphicsContext::endTransparencyLayer): + (WebCore::GraphicsContext::clearRect): + (WebCore::GraphicsContext::setLineCap): + (WebCore::GraphicsContext::setLineJoin): + (WebCore::GraphicsContext::setMiterLimit): + (WebCore::GraphicsContext::setAlpha): + (WebCore::GraphicsContext::clipOut): + (WebCore::GraphicsContext::clipOutEllipseInRect): + (WebCore::GraphicsContext::addInnerRoundedRectClip): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::setPlatformStrokeStyle): + (WebCore::GraphicsContext::setPlatformStrokeThickness): + +2009-08-12 Szabo Carol <carol.szabo@nokia.com> + + Reviewed by Simon Hausmann and Ariya Hidayat. + + https://bugs.webkit.org/show_bug.cgi?id=23291 + + [Qt] Partial support for -webkit-box-shadow. Blur is not support and + the shadow still does not go well with border radius. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::fillRect): + +2009-08-12 Xan Lopez <xlopez@igalia.com> + + Reviewed by Jan Alonzo. + + Use AM_V_GEN in a few more places, for less noisy builds. + + * GNUmakefile.am: + +2009-08-12 Dirk Schulze <krit@webkit.org> + + Reviewed by Oliver Hunt. + + SVG Filter premultiplied color support for getImageDate/putImageData + [https://bugs.webkit.org/show_bug.cgi?id=27933] + + Some SVG Filters need premultiplied ImageData for the calculation. Therefore getImageData + and putImageData of ImageBuffer need support for premultiplied colors. + + * html/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::getImageData): + (WebCore::CanvasRenderingContext2D::putImageData): + * platform/graphics/ImageBuffer.h: + (WebCore::): + * platform/graphics/cairo/ImageBufferCairo.cpp: + (WebCore::getImageData): + (WebCore::ImageBuffer::getUnmultipliedImageData): + (WebCore::ImageBuffer::getPremultipliedImageData): + (WebCore::putImageData): + (WebCore::ImageBuffer::putUnmultipliedImageData): + (WebCore::ImageBuffer::putPremultipliedImageData): + * platform/graphics/cg/ImageBufferCG.cpp: + (WebCore::getImageData): + (WebCore::ImageBuffer::getUnmultipliedImageData): + (WebCore::ImageBuffer::getPremultipliedImageData): + (WebCore::putImageData): + (WebCore::ImageBuffer::putUnmultipliedImageData): + (WebCore::ImageBuffer::putPremultipliedImageData): + * platform/graphics/qt/ImageBufferQt.cpp: + (WebCore::getImageData): + (WebCore::ImageBuffer::getUnmultipliedImageData): + (WebCore::ImageBuffer::getPremultipliedImageData): + (WebCore::putImageData): + (WebCore::ImageBuffer::putUnmultipliedImageData): + (WebCore::ImageBuffer::putPremultipliedImageData): + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::getImageData): + (WebCore::ImageBuffer::getUnmultipliedImageData): + (WebCore::ImageBuffer::getPremultipliedImageData): + (WebCore::putImageData): + (WebCore::ImageBuffer::putUnmultipliedImageData): + (WebCore::ImageBuffer::putPremultipliedImageData): + * platform/graphics/wx/ImageBufferWx.cpp: + (WebCore::ImageBuffer::getUnmultipliedImageData): + (WebCore::ImageBuffer::getPremultipliedImageData): + (WebCore::ImageBuffer::putUnmultipliedImageData): + (WebCore::ImageBuffer::putPremultipliedImageData): + * svg/graphics/SVGResourceMasker.cpp: + (WebCore::SVGResourceMasker::applyMask): + +2009-08-12 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Timothy Hatcher. + + Changed Number.bytesToString to support low-resolution output. + + https://bugs.webkit.org/show_bug.cgi?id=28146 + + * inspector/front-end/utilities.js: + (Number.bytesToString): + +2009-08-12 Prasanth Ullattil <prasanth.ullattil@nokia.com> + + Reviewed by Simon Hausmann. + + Add support for hooking BeginPaint/EndPaint on 64Bit Windows + + Webkit uses the runtime patching trick explained by "Feng Yuan" for + hooking these paint functions. It currently supports only 32bit assembly + code. This patch adds support for 64Bit version. Since inline-assemblies + are not supported for 64Bit, we have use a seperate .asm file. + + * WebCore.pro: + * plugins/win/PaintHooks.asm: Added. + * plugins/win/PluginViewWin.cpp: + (WebCore::PluginView::hookedBeginPaint): + (WebCore::PluginView::hookedEndPaint): + (WebCore::hook): + +2009-08-11 Oliver Hunt <oliver@apple.com> + + Reviewed by Gavin Barraclough. + + Make it harder to misuse try* allocation routines + https://bugs.webkit.org/show_bug.cgi?id=27469 + + Add forwarding header for PossiblyNull type, and add missing null check + to ImageBuffer creation. + + * ForwardingHeaders/wtf/PossiblyNull.h: Added. + * platform/graphics/cg/ImageBufferCG.cpp: + (WebCore::ImageBuffer::ImageBuffer): + +2009-08-11 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Oliver Hunt. + + Restrict use of FuncDeclNode & FuncExprNode to the parser. + https://bugs.webkit.org/show_bug.cgi?id=28209 + + * inspector/JavaScriptDebugServer.cpp: + (WebCore::JavaScriptDebugServer::recompileAllJSFunctions): + Function signature change. + +2009-08-11 Peter Kasting <pkasting@google.com> + + Reviewed by Adam Treat. + + https://bugs.webkit.org/show_bug.cgi?id=27965 + Merge skia/ImageSourceSkia.cpp into ImageSource.cpp. + + * WebCore.gypi: Remove deleted file, plus a file that was deleted a while back. + * platform/graphics/ImageSource.cpp: + (WebCore::ImageSource::setData): Use slightly shorter syntax. + (WebCore::ImageSource::filenameExtension): Use shorter syntax. + (WebCore::ImageSource::createFrameAtIndex): Remove redundant call, clarify comments, reject all empty images. + (WebCore::ImageSource::frameHasAlphaAtIndex): Clarify comments, use shorter syntax. + * platform/graphics/skia/ImageSourceSkia.cpp: Removed. + +2009-08-11 Drew Wilson <atwilson@google.com> + + Reviewed by David Levin. + + SharedWorkers do not exit when the last parent document exits + https://bugs.webkit.org/show_bug.cgi?id=28170 + + Prevents Documents from being suspended/placed in the page cache if they are associated with shared workers. + + Added vector cache instead of nested hash tables for SharedWorker repository. + + Added SharedWorkerRepository::documentDetached API. + + * dom/Document.cpp: + (WebCore::Document::detach): + Notifies SharedWorkerRepository when the document is closing. + * loader/FrameLoader.cpp: + Updated FrameLoader to not cache the Document if it is associated with a SharedWorker (since we can't suspend workers yet, we need to shut them down). + (WebCore::FrameLoader::canCachePageContainingThisFrame): + (WebCore::FrameLoader::logCanCacheFrameDecision): + * workers/DefaultSharedWorkerRepository.cpp: + (WebCore::SharedWorkerProxy::create): + (WebCore::SharedWorkerProxy::isClosing): + Renamed from closing(). + (WebCore::SharedWorkerProxy::matches): + Added manual equality function to replace old hash lookup. + (WebCore::SharedWorkerProxy::isDocumentInWorkerDocuments): + Checks to see if a document is in the worker's list of documents. Used to determine if page is suspendable. + (WebCore::SharedWorkerProxy::SharedWorkerProxy): + (WebCore::SharedWorkerProxy::addToWorkerDocuments): + Added tracking of the worker's list of documents for lifecycle purposes. + (WebCore::SharedWorkerProxy::documentDetached): + Shuts down the proxy when the last associated document is detached. + (WebCore::SharedWorkerProxy::close): + Marks the proxy as closed so it is no longer shared with new instances. + (WebCore::SharedWorkerProxy::workerContextDestroyed): + Removes the proxy from the repository/frees the proxy when the associated SharedWorkerContext is destroyed. + (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded): + closing()->isClosing() + (WebCore::SharedWorkerRepository::documentDetached): + (WebCore::SharedWorkerRepository::hasSharedWorkers): + Used by FrameLoader to determine if a page has shared workers and so cannot be suspended/cached. + (WebCore::DefaultSharedWorkerRepository::hasSharedWorkers): + (WebCore::DefaultSharedWorkerRepository::removeProxy): + Invoked by workerContextDestroyed() to remove a SharedWorkerProxy from the repository. + (WebCore::DefaultSharedWorkerRepository::documentDetached): + (WebCore::DefaultSharedWorkerRepository::connectToWorker): + (WebCore::DefaultSharedWorkerRepository::getProxy): + * workers/DefaultSharedWorkerRepository.h: + * workers/SharedWorkerRepository.h: + +2009-08-11 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + Bug 28200 - ListMarker should be included as part of the text value to parse + https://bugs.webkit.org/show_bug.cgi?id=28200 + + When returning text through the marker range attributes, the list marker text should + also be included. It isn't included by default because a TextIterator is used which + only looks at Nodes for text. A list marker does not have a corresponding node, + so its text is not returned through accessibility. That is, until now. + + Test: platform/mac/accessibility/string-range-contains-listmarker.html + + * accessibility/AccessibilityObject.cpp: + (WebCore::AccessibilityObject::listMarkerTextForRange): + (WebCore::AccessibilityObject::stringForVisiblePositionRange): + * accessibility/AccessibilityObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): + (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): + * rendering/RenderListItem.h: + + Make markerText() public so that accessibility code can access it. + +2009-08-11 Peter Kasting <pkasting@google.com> + + Reviewed by Adam Treat. + + https://bugs.webkit.org/show_bug.cgi?id=27965 + Move cairo/ImageSourceCairo.cpp to ImageSource.cpp in preparation for + merging most of the other ImageSource*.cpp files with it. + + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * platform/graphics/ImageSource.cpp: Copied from WebCore/platform/graphics/cairo/ImageSourceCairo.cpp. + * platform/graphics/cairo/ImageSourceCairo.cpp: Removed. + +2009-08-10 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Adam Roben. + + Cairo-based Windows port does not handle the https protocol. + https://bugs.webkit.org/show_bug.cgi?id=28171. + + No new tests needed. Existing https tests show this failure + for WinCairo builds. + + * WebCore.vcproj/WebCoreCURL.vsprops: Add a few preprocessor + definitions for SSL support in cURL. + * platform/network/curl/ResourceHandleManager.h: Add new + certificate path member variable. + * platform/network/curl/ResourceHandleManager.cpp: + (WebCore::certificateBundlePath): New method to retrieve the + proper certificate resource bundle path. + (WebCore::ResourceHandleManager::initializeHandle): Check for + the resource bundle and use if available to activate SSL + support. + +2009-08-11 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Eric Seidel. + + [Haiku] Use Clipboard::create() instead of the constructor of Clipboard. + https://bugs.webkit.org/show_bug.cgi?id=28127 + + * editing/haiku/EditorHaiku.cpp: + (WebCore::Editor::newGeneralClipboard): + * page/haiku/EventHandlerHaiku.cpp: + (WebCore::EventHandler::passWheelEventToWidget): + (WebCore::EventHandler::createDraggingClipboard): + * platform/haiku/ClipboardHaiku.cpp: Style cleanup. There were many whitespace end of lines. + (WebCore::ClipboardHaiku::ClipboardHaiku): + (WebCore::ClipboardHaiku::clearAllData): + (WebCore::ClipboardHaiku::getData): + (WebCore::ClipboardHaiku::setData): + (WebCore::ClipboardHaiku::types): + (WebCore::ClipboardHaiku::dragLocation): + (WebCore::ClipboardHaiku::dragImage): + (WebCore::ClipboardHaiku::setDragImage): + (WebCore::ClipboardHaiku::dragImageElement): + (WebCore::ClipboardHaiku::createDragImage): + (WebCore::ClipboardHaiku::declareAndWriteDragImage): + (WebCore::ClipboardHaiku::writeURL): + (WebCore::ClipboardHaiku::writeRange): + (WebCore::ClipboardHaiku::hasData): + * platform/haiku/DragDataHaiku.cpp: + (WebCore::DragData::createClipboard): + +2009-08-11 Drew Wilson <atwilson@google.com> + + Reviewed by NOBODY (build break). + + Speculative GTK build fix + + * GNUmakefile.am: + Added missing .idl file, and added notifications directory to IDL_PATH. + +2009-08-11 Drew Wilson <atwilson@google.com> + + Reviewed by NOBODY (build break). + + Speculative Windows build fix + + * WebCore.vcproj/WebCore.vcproj: + Added missing build steps for non-debug targets. + +2009-08-11 Drew Wilson <atwilson@google.com> + + Reviewed by NOBODY (build break) + + Speculative build fix for Qt build. + + * WebCore.pro: Added /notifications to include path + +2009-08-11 John Gregg <johnnyg@google.com> + + Reviewed by Maciej Stachowiak. + + Desktop Notifications API + https://bugs.webkit.org/show_bug.cgi?id=25463 + + Adds an implementation of desktop notifications, behind the compile-time + flag ENABLE(NOTIFICATIONS). This code simply relays calls on the JavaScript + API through a NotificationProvider interface, which must provide the services + to actually notify the user and manage the desktop. This provider is injected + into WebKit through the ChromeClient for normal page contexts and through the + WorkerThread for worker contexts. + + A permissions API is defined on a per-origin basis, which allows a web page + to check if its origin is allowed to show desktop notifications, and to request + permission for its origin. + + * Configurations/FeatureDefines.xcconfig: + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + * bindings/js/JSDesktopNotificationsCustom.cpp: Added. + (WebCore::JSNotificationCenter::requestPermission): + (WebCore::JSNotification::addEventListener): + (WebCore::JSNotification::removeEventListener): + * bindings/js/JSEventTarget.cpp: + (WebCore::toJS): + (WebCore::toEventTarget): + * dom/EventTarget.cpp: + (WebCore::EventTarget::toNotification): + * dom/EventTarget.h: + * loader/EmptyClients.h: + (WebCore::EmptyChromeClient::notificationPresenter): + * notifications: Added. + * notifications/Notification.cpp: Added. + (WebCore::Notification::Notification): + (WebCore::Notification::~Notification): + (WebCore::Notification::show): + (WebCore::Notification::cancel): + (WebCore::Notification::ondisplay): + (WebCore::Notification::setOndisplay): + (WebCore::Notification::onerror): + (WebCore::Notification::setOnerror): + (WebCore::Notification::onclose): + (WebCore::Notification::setOnclose): + (WebCore::Notification::getAttributeEventListener): + (WebCore::Notification::setAttributeEventListener): + (WebCore::Notification::clearAttributeEventListener): + (WebCore::Notification::dispatchDisplayEvent): + (WebCore::Notification::dispatchErrorEvent): + (WebCore::Notification::dispatchCloseEvent): + (WebCore::Notification::addEventListener): + (WebCore::Notification::removeEventListener): + (WebCore::Notification::handleEvent): + (WebCore::Notification::dispatchEvent): + * notifications/Notification.h: Added. + (WebCore::Notification::create): + (WebCore::Notification::isHTML): + (WebCore::Notification::url): + (WebCore::Notification::contents): + (WebCore::Notification::scriptExecutionContext): + (WebCore::Notification::toNotification): + (WebCore::Notification::refEventTarget): + (WebCore::Notification::derefEventTarget): + * notifications/Notification.idl: Added. + * notifications/NotificationCenter.cpp: Added. + (WebCore::NotificationCenter::NotificationCenter): + (WebCore::NotificationCenter::checkPermission): + (WebCore::NotificationCenter::requestPermission): + * notifications/NotificationCenter.h: Added. + (WebCore::NotificationCenter::create): + (WebCore::NotificationCenter::createHTMLNotification): + (WebCore::NotificationCenter::createNotification): + (WebCore::NotificationCenter::context): + (WebCore::NotificationCenter::presenter): + * notifications/NotificationCenter.idl: Added. + * notifications/NotificationContents.h: Added. + (WebCore::NotificationContents::NotificationContents): + (WebCore::NotificationContents::icon): + (WebCore::NotificationContents::title): + (WebCore::NotificationContents::body): + * notifications/NotificationPresenter.h: Added. + (WebCore::NotificationPresenter::): + (WebCore::NotificationPresenter::~NotificationPresenter): + * page/Chrome.cpp: + (WebCore::Chrome::notificationPresenter): + * page/Chrome.h: + * page/ChromeClient.h: + * page/DOMWindow.cpp: + (WebCore::DOMWindow::clear): + (WebCore::DOMWindow::webkitNotifications): + * page/DOMWindow.h: + * page/DOMWindow.idl: + * page/Page.h: + * workers/WorkerContext.cpp: + (WebCore::WorkerContext::~WorkerContext): + (WebCore::WorkerContext::webkitNotifications): + * workers/WorkerContext.h: + * workers/WorkerContext.idl: + * workers/WorkerThread.h: + (WebCore::WorkerThread::getNotificationPresenter): + (WebCore::WorkerThread::setNotificationPresenter): + +2009-08-11 Joseph Pecoraro <joepeck02@gmail.com> + + Reviewed by Timothy Hatcher. + + Inspector: Console Drawer is Toggling instead of Staying Open + https://bugs.webkit.org/show_bug.cgi?id=28115 + + * inspector/front-end/Drawer.js: + (WebInspector.Drawer.prototype.showView): ensures the drawer will be open and showing the provided view + * inspector/front-end/inspector.js: + (WebInspector.showConsole): usees the new showView to guarantee the Drawer will be open + (WebInspector.showChanges): uses the new showView guarantee the Drawer will be open + +2009-08-11 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> + + Reviewed by George Staikos. + + [WML] WMLPageState is not allowed to store the active card, it needs to be done per document + https://bugs.webkit.org/show_bug.cgi?id=28180 + + Don't store the active WMLCardElement in WMLPageState, but in WMLDocument. + Otherwhise this may lead to crashes related to intrinsic event exeuction. + + Unfortunately select elements aren't testable by the layout tests, so adding + a new manual test reproducing the crash. + + * manual-tests/wml/select-onpick-event-crash.wml: Added. + * wml/WMLCardElement.cpp: + (WebCore::WMLCardElement::determineActiveCard): + * wml/WMLDoElement.cpp: + (WebCore::WMLDoElement::defaultEventHandler): + * wml/WMLDocument.cpp: + (WebCore::WMLDocument::finishedParsing): + * wml/WMLDocument.h: + (WebCore::WMLDocument::activeCard): + * wml/WMLGoElement.cpp: + (WebCore::WMLGoElement::executeTask): + * wml/WMLPageState.cpp: + (WebCore::WMLPageState::WMLPageState): + * wml/WMLPageState.h: + * wml/WMLPrevElement.cpp: + (WebCore::WMLPrevElement::executeTask): + * wml/WMLRefreshElement.cpp: + (WebCore::WMLRefreshElement::executeTask): + +2009-08-07 Peter Kasting <pkasting@google.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=28073 + Treat icons with no bit count and no color count as 256-color for + purposes of quality ranking. Also fix a couple cases of a style + violation. + + Test: fast/images/icon-0colors.html + + * platform/image-decoders/ico/ICOImageDecoder.cpp: + (WebCore::ICOImageDecoder::processDirectory): + (WebCore::ICOImageDecoder::readDirectoryEntry): + +2009-08-11 Drew Wilson <atwilson@google.com> + + Reviewed by David Levin. + + Need to refactor WorkerObjectProxy. + https://bugs.webkit.org/show_bug.cgi?id=28136 + + Added WorkerReportingProxy for reporting worker state (exceptions, console messages, thread exited) to the parent. + + Existing tests are sufficient, as this is only a refactoring. + + * GNUmakefile.am: + Added WorkerReportingProxy.h to build. + * WebCore.gypi: + Added WorkerReportingProxy.h to build. + * WebCore.vcproj/WebCore.vcproj: + Added WorkerReportingProxy.h to build. + * WebCore.xcodeproj/project.pbxproj: + Added WorkerReportingProxy.h to build. + * workers/DedicatedWorkerContext.cpp: + * workers/DedicatedWorkerContext.h: + Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy. + * workers/DedicatedWorkerThread.cpp: + (WebCore::DedicatedWorkerThread::DedicatedWorkerThread): + Changed constructor to pass WorkerReportingProxy to base class. + * workers/DefaultSharedWorkerRepository.cpp: + Updated SharedWorkerProxy to implement WorkerReportingProxy interface. + (WebCore::SharedWorkerProxy::postExceptionToWorkerObject): + (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject): + (WebCore::SharedWorkerProxy::workerContextClosed): + (WebCore::SharedWorkerProxy::workerContextDestroyed): + (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded): + Now passes in WorkerReportingProxy when creating SharedWorkerThread. + * workers/SharedWorkerContext.cpp: + * workers/SharedWorkerContext.h: + Removed addMessage/forwardException() APIs - now handled by WorkerReportingProxy. + * workers/SharedWorkerThread.cpp: + (WebCore::SharedWorkerThread::create): + (WebCore::SharedWorkerThread::SharedWorkerThread): + Passes WorkerReportingProxy to base class constructor. + * workers/SharedWorkerThread.h: + Constructor now takes a WorkerReportingProxy. + * workers/WorkerContext.cpp: + (WebCore::WorkerContext::~WorkerContext): + Moved code that calls workerContextDestroyed() into base class so shared workers share this functionality. + (WebCore::WorkerContext::close): + Now notifies WorkerReportingProxy when the thread is closing. + (WebCore::WorkerContext::reportException): + Reports exceptions via WorkerReportingProxy. + (WebCore::WorkerContext::addMessage): + Reports console messages via WorkerReportingProxy. + * workers/WorkerContext.h: + * workers/WorkerObjectProxy.h: + (WebCore::WorkerObjectProxy::workerContextClosed): + Default empty implementation for dedicated workers. + * workers/WorkerReportingProxy.h: Added. + Base interface that contains APIs moved from WorkerObjectProxy. + (WebCore::WorkerReportingProxy::~WorkerReportingProxy): + * workers/WorkerThread.cpp: + (WebCore::WorkerThread::WorkerThread): + Updated constructor to accept a WorkerReportingProxy. + * workers/WorkerThread.h: + (WebCore::WorkerThread::workerReportingProxy): + +2009-08-11 Simon Hausmann <simon.hausmann@nokia.com> + + Reviewed by NOBODY (build fix). + + Fix the Qt build after r47022. + + Use the new markChildren() pattern for marking aggregate/child objects. + + * bridge/qt/qt_instance.cpp: + (JSC::Bindings::QtRuntimeObjectImp::markChildren): + (JSC::Bindings::QtInstance::markAggregate): + * bridge/qt/qt_instance.h: + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::QtRuntimeMetaMethod::markChildren): + * bridge/qt/qt_runtime.h: + 2009-08-11 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Holger Freyther. @@ -191,7 +4435,7 @@ * page/DOMWindow.cpp: (WebCore::DOMWindow::applicationCache): -2009-08-10 Crystal Zhang <crystal.zhang@staikos.net> +2009-08-10 Crystal Zhang <crystal.zhang@torchmobile.com> Reviewed by George Staikos. |