2009-03-13 Adam Bergkvist Reviewed by Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=24349 [QT] HTTP status text is never set Set HTTP status text to the reason phrase attribute of QNetworkReply. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): 2009-03-02 Dirk Schulze Reviewed by Holger Freyther. Added putImageData to Qt. Discussed with Ariya Hidayat. [Qt] lacks putImageData support in Canvas https://bugs.webkit.org/show_bug.cgi?id=22186 * platform/graphics/qt/ImageBufferQt.cpp: (WebCore::ImageBuffer::putImageData): 2009-03-01 Larry Ewing Reviewed by Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=24080 NPN_GetValue casting to the wrong type and writing outside bounds Make sure to cast the value to the correct type so that only memory owned by the value is written to. * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic): * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic): * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic): (PluginView::getValue): 2009-02-27 Adam Treat Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=24229 If an image has no alpha channel there is no reason to use SourceOver. * platform/graphics/qt/ImageQt.cpp: (WebCore::Image::drawPattern): (WebCore::BitmapImage::draw): 2009-02-27 Zack Rusin Reviewed by Nikolas Zimmermann. Qt: be more reasonable about scrolled lines cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't match our metrics meaning that Qt scrolls by ~2 lines by default which is quite irritating. so lets scroll vertically by the Qt set number of lines * Qt default single step scroll * platform/qt/WheelEventQt.cpp: 2009-02-25 Dirk Schulze Reviewed by Oliver Hunt. Ported arcTo to Qt. Qt has no native support for arcTo. This changes calculate the behavior of arcTo and draws it with lineTo and arc. [QT] implement Canvas arcTo https://bugs.webkit.org/show_bug.cgi?id=23873 * platform/graphics/qt/PathQt.cpp: (WebCore::Path::addArcTo): 2009-03-12 Adam Treat Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=24498 Fix the Qt port to use the same algorithm for drawing dashed and dotted borders as the other ports. This makes the Qt port pixel-for-pixel perfect compared to border drawing with Apple's canonical mac port and much closer to konqueror and firefox behavior. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::drawLine): 2009-03-09 Adam Treat Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=24463 WebCore::qstring is detaching and copying twice for every single WebCore::TextRun that is processed and drawn. This elevates this method to one of the top-ten most expensive methods in all of QtWebKit according to profiling. This changes the method so that QString only detaches when absolutely necessary. * platform/graphics/qt/FontQt.cpp: (WebCore::qstring): (WebCore::fixSpacing): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText): (WebCore::Font::selectionRectForComplexText): 2009-02-04 Simon Hausmann Unreviewed Qt build fix. Changed ASSERT(image) to ASSERT(!image.isNull()). * platform/graphics/qt/ImageBufferQt.cpp: (WebCore::ImageBuffer::getImageData): 2009-02-03 Dirk Schulze Reviewed by Sam Weinig. This is a follow up of r40546. Call toImage() once speeds up ImageBuffer::getImageData() * platform/graphics/qt/ImageBufferQt.cpp: (WebCore::ImageBuffer::getImageData): 2009-02-03 Dirk Schulze Reviewed by Sam Weinig and Oliver Hunt. Added getImageData() support for QtWebKit. [QT] lacks getImageData / putImageData support in Canvas https://bugs.webkit.org/show_bug.cgi?id=22186 * platform/graphics/qt/ImageBufferQt.cpp: (WebCore::ImageBuffer::getImageData): 2009-04-14 Benjamin C Meyer Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=25099 When creating a QNetworkRequest make sure to populate the CacheLoadControlAttribute with the value set by the ResourceRequest::cachePolicy() so that the cache will be used as WebKit expects. * WebKit/qt/tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::requestCache): * platform/network/qt/ResourceRequestQt.cpp: (WebCore::ResourceRequest::toNetworkRequest): 2009-04-07 Brady Eidson Reviewed by Darin Adler While working on , noticed some glaring problems with LocalStorage. * page/DOMWindow.cpp: (WebCore::DOMWindow::localStorage): Return the cached m_localStorage object if it exists to avoid creating multiple representations for the same underlying StorageArea. * page/DOMWindow.h: (WebCore::DOMWindow::optionalLocalStorage): Return m_localStorage, not m_sessionStorage. 2009-04-06 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Don't show and hide the platformPluginWidget, as it's our QWebView * plugins/mac/PluginViewMac.cpp: (WebCore::PluginView::show): (WebCore::PluginView::hide): (WebCore::PluginView::setParentVisible): 2009-04-06 Mike Belshe Reviewed by Eric Seidel. HTMLCanvasElement crash when ImageBuffer creation fails. https://bugs.webkit.org/show_bug.cgi?id=23212 Check for NULL before using the ImageBuffer as we might be low on memory and creation may have failed. Test case creation blocked by: https://bugs.webkit.org/show_bug.cgi?id=25055 * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::createImageBuffer): 2009-04-05 Erik L. Bunce Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=25050 Fix an assert failure when dropping an 'empty' text/uri-list on a QWebView. * platform/qt/DragDataQt.cpp: (WebCore::DragData::asURL): 2009-03-27 Zack Rusin Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=24280 Fix propagation of fill rules when rendering paths in the Qt build. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::toQtFillRule): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): 2009-03-27 Zack Rusin Reviewed by Tor Arne Vestbø. https://bugs.webkit.org/show_bug.cgi?id=24275 Fix text field theming in the Qt build with the KDE 4 Oxygen style by adjusting the size vertically and horizontally to set padding on the element equal to the width of the style painted border. * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::RenderThemeQt): (WebCore::RenderThemeQt::computeSizeBasedOnStyle): (WebCore::RenderThemeQt::adjustTextFieldStyle): (WebCore::RenderThemeQt::paintTextField): * platform/qt/RenderThemeQt.h: 2009-02-06 Dirk Schulze Reviewed by Simon Hausmann. Fix bug in clearRect(). Use fillRect() instead of eraseRect() to get the context transparent. [QT] clearRect fill's a given rect with white https://bugs.webkit.org/show_bug.cgi?id=23728 * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clearRect): 2009-03-19 Simon Hausmann Reviewed by Tor Arne Vestbø. Fixed support for doing calls from JavaScript into NPAPI Plugins for the Qt port on Windows. Removed dead code for distinguishing between Widget and PluginView in the Qt port. * bindings/js/ScriptControllerQt.cpp: (WebCore::ScriptController::createScriptInstanceForWidget): Removed incorrect isNPAPI check. * plugins/PluginView.cpp: (WebCore::PluginView::PluginView): Removed m_isNPAPIPlugin variable. * plugins/PluginView.h: Removed setter/getter. * plugins/mac/PluginViewMac.cpp: (WebCore::PluginView::init): Removed call to setIsNPAPIPlugin. * plugins/qt/PluginViewQt.cpp: (WebCore::PluginView::init): Ditto. 2009-02-26 Benjamin Meyer Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=24062 QNetworkCookieJar expects the url and not the policy url. Sending the policy url will cause QNetworkCookieJar to behave incorrectly. One example would be a cookie that does not have a path or domain. QNetworkCookieJar will use the url it is given to fill in default values. This allows setting cookies on the url of the main frame from an iFrame when the cookie should be set on the url of the iFrame. Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do * platform/qt/CookieJarQt.cpp: (WebCore::setCookies): 2009-02-23 Thiago Macieira Reviewed by Simon Hausmann. Fix the Copyright notices in a few files * platform/qt/RenderThemeQt.h: 2008-12-13 Holger Hans Peter Freyther Reviewed by NOBODY (OOPS!). The Qt API exposes a global history patch CSSStyleSelector to make API consumers work again https://bugs.webkit.org/show_bug.cgi?id=20952 The QtWebKit port made the mistake of exposing a global history. This broke with the addition of PageGroup and LinkHash. This needs to be repaired for Qt4.5. Add a function to LinkHash.cpp that is resolving a URL. Use this function from within CSSStyleSelector to forward the url to the QWebHistoryInterface API. It is sad that there is a path within visitedLinkHash which is now doing a memcpy, it is sad to add a PLATFORM(QT) define to CSSStyleSelector and using QtWebKit types within WebCore is a layering violation as well. PageGroup::setShouldTrackVisitedLinks is currently not enabled. For Qt4.6 a second version of the QWebHistoryInterface is going to be added which will fix things up. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): * platform/LinkHash.cpp: (WebCore::visitedURL): (WebCore::visitedLinkHash): * platform/LinkHash.h: 2009-02-13 Prasanth Ullattil Reviewed by Simon Hausmann. Fixes crash in the Qt port on Windows with comboboxes The focusWidget in the input context is not reset properly. The QApplication::setFocusWidget() wont reset the IC if the reason is PopupFocusReason, this is not ideal. For the time being we are going to do this from webkit itself. * platform/qt/QWebPopup.cpp: (WebCore::QWebPopup::hidePopup): 2009-02-07 Simon Hausmann Reviewed by Tor Arne Vestbø. For the Qt port implement Image::drawPattern via BitmapImage::drawPatterns' implementation and implement Gradient::fill. This partially fixes rendering of generated gradient content. * platform/graphics/BitmapImage.h: Remove the drawPattern implementation for the Qt port in BitmapImage, it's been moved to Image::drawPattern. * platform/graphics/qt/GradientQt.cpp: (WebCore::Gradient::fill): Implement using a simple fillRect. * platform/graphics/qt/ImageQt.cpp: (WebCore::Image::drawPattern): Moved implementation from BitmapImage::drawPattern. 2009-02-06 Simon Hausmann Reviewed by Tor Arne Vestbø. Added support for different ownership models for wrapped QObjects in the JavaScript environment. * bindings/js/ScriptControllerQt.cpp: (WebCore::ScriptController::createScriptInstanceForWidget): Specify QtOwnership for scriptable widgets. * bridge/npruntime_internal.h: Add "NormalState" to the list of undef'ed macros as an included Qt header uses "NormalState" as value in an enum. * bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::QtInstance): Save and initialize ownership member. (JSC::Bindings::QtInstance::~QtInstance): Respect QScriptEngine::ValueOwnership policy with regards to wrapped m_object. (JSC::Bindings::QtInstance::getQtInstance): Pass the ownership down to the instance. * bridge/qt/qt_instance.h: (JSC::Bindings::QtInstance::create): Ditto. * bridge/qt/qt_runtime.cpp: (JSC::Bindings::convertQVariantToValue): Use QtOwnership for automatically wrapped QObjects. (JSC::Bindings::QtConnectionObject::execute): Ditto. 2009-02-04 Trenton Schulz Reviewed by Simon Hausmann. Fix implementation of PluginViewMac::invalidateRect to update only the specified rect, not the entire browser window. * plugins/mac/PluginViewMac.cpp: (WebCore::PluginView::invalidateRect): 2009-02-03 Adam Treat Fix the Qt build after r40536. * bridge/qt/qt_runtime.cpp: (JSC::Bindings::convertQVariantToValue): 2009-02-03 Simon Hausmann Reviewed by Tor Arne Vestbø. Fix conversion of QByteArray to JavaScript and back. Instead of converting it to a String (data loss!) we now map it to JSByteArray. * bridge/qt/qt_runtime.cpp: (JSC::Bindings::): (JSC::Bindings::valueRealType): Added JSByteArray as converstion type. (JSC::Bindings::convertValueToQVariant): Convert from JSByteArray to QVariant(QByteArray). (JSC::Bindings::convertQVariantToValue): Convert from QVariant::ByteArray to jsByteArray. 2009-01-30 Laszlo Gombos Reviewed by Simon Hausmann. Bug 23580: GNU mode RVCT compilation support * html/PreloadScanner.cpp: Use COMPILER(GCC) instead of __GNUC__. 2009-01-28 Ariya Hidayat Reviewed by Simon Hausmann. [Qt] Speed-up clipping: avoid calling expensive QPainter::clipRegion(). Beside, the check is not necessary since QPainter::setClipRect() will work just fine if there is no clip region yet. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clip): 2009-01-27 Ariya Hidayat Rubber-stamped by Simon Hausmann. http://www.qtsoftware.com/developer/task-tracker/index_html?id=238662&method=entry [Qt] Map function keys F1 to F24. * platform/qt/PlatformKeyboardEventQt.cpp: (WebCore::windowsKeyCodeForKeyEvent): 2009-01-23 Adam Treat Reviewed by Holger Hans Peter Freyther. Redo previous patch http://trac.webkit.org/changeset/34260 which fixes a huge memory leak by ensuring that the timer is fired one last time on application tear down thus triggering the GCController thereby freeing JavaScript objects as well as triggering other timer based tear down methods. * platform/qt/SharedTimerQt.cpp: (WebCore::SharedTimerQt::~SharedTimerQt): 2009-01-09 Holger Hans Peter Freyther Reviewed by Simon Hausmann. [QT] Make SharedTimer use QBasicTimer Kill the SharedTimerQt.h and the usage of signal and slots by using QBasicTimer. * WebCore.pro: * platform/qt/SharedTimerQt.cpp: (WebCore::SharedTimerQt::SharedTimerQt): (WebCore::SharedTimerQt::inst): (WebCore::SharedTimerQt::start): (WebCore::SharedTimerQt::stop): (WebCore::SharedTimerQt::timerEvent): (WebCore::setSharedTimerFiredFunction): (WebCore::setSharedTimerFireTime): (WebCore::stopSharedTimer): * platform/qt/SharedTimerQt.h: Removed. 2009-01-25 Thiago Macieira Reviewed by Simon Hausmann. Fix gcc compiler warning (deprecated conversion from constant string to char*) "" cannot be stored in a char* * plugins/PluginStream.cpp: (WebCore::PluginStream::destroyStream): 2009-01-23 Ariya Hidayat Reviewed by Simon Hausmann. Bug 23475: fast/text/find-backwards.html fails with ICU disabled SearchBuffer https://bugs.webkit.org/show_bug.cgi?id=23475 * editing/TextIterator.cpp: (WebCore::SearchBuffer::search): Set the character start flag to false to ensure we won't ever return the same result twice. There are other ways we could accomplish this, mentioned in the comment, but this one was the smallest and cleanest I could think of. 2009-01-23 Darin Adler Reviewed by Anders Carlsson. [Qt] Simplify the assertion. * platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::getWindowsContext): (WebCore::GraphicsContext::releaseWindowsContext): 2009-01-19 Ariya Hidayat [Qt] Build fix after r39971. * platform/qt/LoggingQt.cpp: (WebCore::InitializeLoggingChannelsIfNecessary): 2009-01-19 Ariya Hidayat Reviewed by Simon Hausmann. http://www.qtsoftware.com/developer/task-tracker/index_html?id=211228&method=entry [Qt] Show focus rect when a button gets the focus for the first time. This is important at least for Windows style. * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::applyTheme): 2009-01-16 Dan Bernstein Reviewed by Kevin Decker and Adam Roben. - fix a regression that resulted in a crash when plug-ins were disabled. * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Added a null check. 2009-01-16 Thiago Macieira Reviewed by Simon Hausmann. [Qt] Fixes QString and 8-bit mix fixes. Details: Make sure we use QLatin1String where appropriate (and don't use QString when not necessary) * platform/graphics/qt/ImageDecoderQt.cpp: (WebCore::ImageDecoderQt::create): * platform/graphics/qt/SimpleFontDataQt.cpp: (WebCore::SimpleFontData::platformInit): * platform/qt/FileSystemQt.cpp: (WebCore::openTemporaryFile): * platform/qt/LoggingQt.cpp: (WebCore::InitializeLoggingChannelsIfNecessary): * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::extraMediaControlsStyleSheet): * plugins/qt/PluginDataQt.cpp: (WebCore::PluginData::initPlugins): 2009-01-16 Ariya Hidayat Reviewed by Adam Roben. https://bugs.webkit.org/show_bug.cgi?id=22452 When plugins are disabled, plugin data should not be available for the page. This ensures that navigator.plugins would not see the additional MIME types supported by the plugins. * page/Page.cpp: (WebCore::Page::pluginData): * loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldUsePlugin): * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): 2009-01-09 Darin Adler Reviewed by Jon Honeycutt. Bug 22913: REGRESSION: Space bar doesn't scroll on windows https://bugs.webkit.org/show_bug.cgi?id=22913 rdar://problem/6479834 * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler): Added code to call defaultSpaceEventHandler. (WebCore::EventHandler::defaultSpaceEventHandler): Added. Scrolls down or up based on the shift key. * page/EventHandler.h: Added defaultSpaceEventHandler. * platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::platformScroll): Return false, because this function does not scroll. In an earlier version of this patch, I used this to prevent the patch from affecting the Mac, but I decided to use #if instead. 2009-01-14 Alexey Proskuryakov Release build fix. * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::storeUpdatedType): Use ASSERT_UNUSED. 2009-01-13 Alexey Proskuryakov Reviewed by Anders Carlsson. Test: http/tests/appcache/xhr-foreign-resource.html https://bugs.webkit.org/show_bug.cgi?id=23256 Implement application cache foreign entries * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): Removed a misplaced check for foreign resources that prevented them from being loaded altogether. * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache): If a document that was loaded from appcache should be associated with a different cache, mark the resource as foreign in the original cache and start over. * loader/appcache/ApplicationCacheResource.cpp: (WebCore::ApplicationCacheResource::addType): This function can now be called after a cache is stored, so it no longer asserts the opposite. * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupForURL): Fix database pass to correctly ignore in-memory caches that were already rejected. (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto. (WebCore::ApplicationCacheStorage::storeUpdatedType): Added a function that updates type of an already stored cached resource. * loader/appcache/ApplicationCacheStorage.h: Added storeUpdatedType(). 2009-01-13 Eric Seidel Reviewed by Mark Rowe. Speculative fix for an Uninitialized Memory Read (UMR) seen by purify in chormium's equivalent V8 file. * bindings/js/JSSVGPODTypeWrapper.h: (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo): 2009-01-13 Christian Dywan Build fix, StorageEvent is only defined if we have DOM_STORAGE * dom/Document.cpp: (WebCore::Document::createEvent): Conditionalize StorageEvent 2009-01-13 Darin Adler Reviewed by Adele Peterson. Bug 23277: space bar scrolls the page when typed in any text field https://bugs.webkit.org/show_bug.cgi?id=23277 rdar://problem/6490249 There's already a regression test for this, since bug 16421 was the same problem, but on Mac. The regression test is fast/events/space-scroll-event.html, so I won't write a new one. This bug doesn't affect Mac because the canEdit check in -[WebHTMLView insertText:] prevents a text input event from being generated at all. That difference may in itself be a bug, but the only symptom is that you get text input events in more cases on platforms other than Mac. * page/EventHandler.cpp: (WebCore::EventHandler::handleTextInputEvent): Return whether the event's default was handled, not the result of the dispatchEvent function, which indicates only whether the default behavior was prevented, not if the default behavior did some insertion. This fix makes it so the keyboard event handler can detect that no space was inserted and know that the space bar keypress event can be treated as a scrolling command. (WebCore::EventHandler::defaultKeyboardEventHandler): Handle the keypress event, not the keydown event. Without the change above, making this change would have restored the old behavior, reintroducing bug 22913 where the space bar doesn't scroll at all on Windows. 2009-01-12 Robert Blaut Reviewed by Darin Adler Fix for Bug 22096: REGRESSION (r35879) scrolldelay is counted in seconds instead of miliseconds Test: fast/css/webkit-marquee-speed-unit-in-quirksmode.html * css/CSSParser.cpp: (WebCore::CSSParser::validUnit): treat unitless values in quirks mode as miliseconds instead of seconds. 2009-01-13 Simon Hausmann Reviewed by Tor Arne Vestbø. Fix crash in the Qt port when deleting a popup from within a JavaScript onchange handler. * platform/qt/QWebPopup.cpp: (WebCore::QWebPopup::QWebPopup): Perform the activation of the combobox item (i.e. the call to the JS handler) from a different call stack by using a queued connection. 2009-01-13 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Make sure media elements dispatch the 'loaded' event We assume that when Phonon goes into paused state that we have the complete media file. Once we do media loading ourselves we can distinguish between loading the first frame and the complete media. * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: (WebCore::MediaPlayerPrivate::updateStates): 2009-01-13 Tor Arne Vestbø Reviewed by Simon Hausmann. [Qt] Add more verbose error output when loading NPAPI plugins * plugins/qt/PluginPackageQt.cpp: (WebCore::PluginPackage::load): 2009-01-13 Tor Arne Vestbø Reviewed by Simon Hausmann. Change how themes adjust mediaControls.css to match html4/quicks.css Instead of providing the full style sheet, the themes provide extra overrides to the default style defined in UserAgentStyleSheetsData. https://bugs.webkit.org/show_bug.cgi?id=23210 Also, merge WebKitResources.qrc and WebCoreResources.qrc to speed up build time for the Qt port. * Resources/WebKitResources.qrc: Removed. Merged into WebCore.qrc * WebCore.pro: * WebCore.qrc: Added. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement): * css/qt/mediaControls-extras.css: Rename from html4-adjustments-qt.css * platform/qt/RenderThemeQt.cpp: (WebCore::RenderThemeQt::extraMediaControlsStyleSheet): * platform/qt/RenderThemeQt.h: * platform/qt/WebCoreResources.qrc: Removed. * platform/qt/html4-adjustments-qt.css: Rename to mediaControls-extras.css * rendering/RenderTheme.cpp: * rendering/RenderTheme.h: (WebCore::RenderTheme::extraMediaControlsStyleSheet): 2009-01-10 Eric Carlson Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=23210 Make it easier for ports to define custom UI for media controls * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement): call theme()->styleSheetForMediaControls to get the media controller style sheet * rendering/MediaControlElements.cpp: (WebCore::MediaControlInputElement::hitTest): Added * rendering/MediaControlElements.h: Updated * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent): Call element hitTest() method instead of local function so control elements don't necessarily have to be rectangular * rendering/RenderTheme.cpp: (WebCore::RenderTheme::styleSheetForMediaControls): Added (WebCore::RenderTheme::hitTestMediaControlPart): Added * rendering/RenderTheme.h: Updated 2009-01-12 Kevin Ollivier !ENABLE(SVG_FONTS) build fix. Move defaultUnitsPerEm into a non-SVG header so it can be used by all builds. * platform/graphics/Font.h: * platform/graphics/SimpleFontData.cpp: * svg/SVGFontFaceElement.cpp: * svg/SVGFontFaceElement.h: 2008-01-12 Dimitri Glazkov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=22936 Fix uninitialized memory read error, reported by Purify. * platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::SimpleFontData): Added initializer for m_unitsPerEm using cDefaultUnitsPerEm constant. * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::unitsPerEm): Replaced literal value with the constant. * svg/SVGFontFaceElement.h: Added cDefaultUnitsPerEm constant. 2009-01-12 Adam Treat Reviewed by George Staikos. Do not set fixedLayoutSize for anything other than the mainframe during the transition as this is a page level state like the viewportSize. * loader/FrameLoaderClient.cpp: (WebCore::FrameLoaderClient::transitionToCommittedForNewPage): 2009-01-09 Simon Hausmann Rubber-stamped by Tor Arne Vestbø. Swap the .h and the .cpp output in the Qt build for the UserAgentStyleSheetData files, to put the definition in the .cpp file and the declaration in the header file. * WebCore.pro: 2009-01-09 Tor Arne Vestbø Reviewed by Simon Hausmann. Prevent qmake from generating duplicate rules for embedded stylesheets The STYLESHEETS_EMBED variable used to contain only one file name, but now that it is a list of files we need to change it to be a dependency for the stylesheet generator instead of the input. * WebCore.pro: 2009-01-09 Simon Hausmann Reviewed by Tor Arne Vestbø. Fix qmake warning about missing test function, a contains() call was missing. * WebCore.pro: 2009-01-09 Simon Hausmann Rubber-stamped by Tor Arne Vestbø. Add the Qt API headers to HEADERS, too, for improved completion in IDEs. * WebCore.pro: 2009-01-09 David Levin Reviewed by Alexey Proskuryakov. https://bugs.webkit.org/show_bug.cgi?id=23199 Fix deref's of string happening on two different threads. No observable change in behavior, so no test. However, there are asserts being added for https://bugs.webkit.org/show_bug.cgi?id=23175 which will detect this issue while running the normal worker tests. * dom/WorkerThread.cpp: (WebCore::WorkerThreadStartupData::create): (WebCore::WorkerThreadStartupData::WorkerThreadStartupData): (WebCore::WorkerThread::WorkerThread): (WebCore::WorkerThread::workerThread): * dom/WorkerThread.h: 2009-01-08 Dan Bernstein Reviewed by Adam Roben. - use native glyph support in Core Graphics when available * platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Changed to use drawGDIGlyphs() only if native glyph support is not available or stroking is required. Changed to pass the font's useGDI() flag to wkSetCGContextFontRenderingStyle to request the use of native glyphs. * platform/graphics/win/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::fontPlatformData): Added a call to wkSetFontPlatformInfo to attach the LOGFONT to the CGFont. * platform/graphics/win/FontPlatformDataCGWin.cpp: (WebCore::FontPlatformData::platformDataInit): Ditto. 2009-01-08 Peter Kasting Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=22929 Fix memory regression when decoding large animated GIFs. * platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::clear): 2009-01-08 Scott Violet Reviewed by Eric Seidel (and Adam Barth). Fix Images to return their file extension http://code.google.com/p/chromium/issues/detail?id=5827 * platform/graphics/skia/ImageSourceSkia.cpp: (WebCore::ImageSource::filenameExtension): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add PathSkia and PatternSkia implementations to WebCore https://bugs.webkit.org/show_bug.cgi?id=23200 * platform/graphics/skia/PathSkia.cpp: Added. (WebCore::Path::Path): (WebCore::Path::~Path): (WebCore::Path::operator=): (WebCore::Path::isEmpty): (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::convertPathPoints): (WebCore::Path::apply): (WebCore::Path::transform): (WebCore::Path::debugString): (WebCore::boundingBoxForCurrentStroke): (WebCore::Path::strokeBoundingRect): * platform/graphics/skia/PatternSkia.cpp: Added. (WebCore::shaderRule): (WebCore::Pattern::createPlatformPattern): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add ImageSourceSkia to platform/graphics/skia https://bugs.webkit.org/show_bug.cgi?id=23200 ImageSourceSkia is mostly a hack to support our ICO decoder model. See ImageSourceSkia.h for more explanation. Eventually we'd like to make our ICO decoder lazy. * platform/graphics/ImageSource.h: mark m_decoder as protected * platform/graphics/skia/ImageSourceSkia.cpp: Added. (WebCore::createDecoder): (WebCore::ImageSource::ImageSource): (WebCore::ImageSource::~ImageSource): (WebCore::ImageSource::clear): (WebCore::ImageSource::initialized): (WebCore::ImageSource::setData): (WebCore::ImageSource::isSizeAvailable): (WebCore::ImageSource::size): (WebCore::ImageSource::frameSizeAtIndex): (WebCore::ImageSource::repetitionCount): (WebCore::ImageSource::frameCount): (WebCore::ImageSource::createFrameAtIndex): (WebCore::ImageSource::frameIsCompleteAtIndex): (WebCore::ImageSource::frameDurationAtIndex): (WebCore::ImageSource::frameHasAlphaAtIndex): (WebCore::ImageSourceSkia::setData): (WebCore::ImageSource::filenameExtension): * platform/graphics/skia/ImageSourceSkia.h: Added. 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add NativeImageSkia (PlatformImagePtr) to platform/graphics/skia https://bugs.webkit.org/show_bug.cgi?id=23200 * platform/graphics/skia/NativeImageSkia.cpp: Added. (NativeImageSkia::NativeImageSkia): (NativeImageSkia::decodedSize): (NativeImageSkia::hasResizedBitmap): (NativeImageSkia::resizedBitmap): (NativeImageSkia::shouldCacheResampling): * platform/graphics/skia/NativeImageSkia.h: Added. (NativeImageSkia::setDataComplete): (NativeImageSkia::isDataComplete): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add ImageBufferSkia and ImageSkia files. https://bugs.webkit.org/show_bug.cgi?id=23200 For now we've left BitmapImage and BitmapImageSingleFrameSkia implementations in the ImageSkia file (like ImageCG has), but we intend to break them out into their own files. * platform/graphics/skia/ImageBufferSkia.cpp: Added. (WebCore::ImageBufferData::ImageBufferData): (WebCore::ImageBuffer::ImageBuffer): (WebCore::ImageBuffer::~ImageBuffer): (WebCore::ImageBuffer::context): (WebCore::ImageBuffer::image): (WebCore::ImageBuffer::getImageData): (WebCore::ImageBuffer::putImageData): (WebCore::ImageBuffer::toDataURL): * platform/graphics/skia/ImageSkia.cpp: Added. (WebCore::): (WebCore::FrameData::clear): (WebCore::Image::loadPlatformResource): (WebCore::Image::drawPattern): (WebCore::BitmapImage::initPlatformData): (WebCore::BitmapImage::invalidatePlatformData): (WebCore::BitmapImage::checkForSolidColor): (WebCore::BitmapImage::draw): (WebCore::BitmapImageSingleFrameSkia::draw): (WebCore::BitmapImageSingleFrameSkia::create): 2009-01-08 James Robinson Reviewed by Mark Rowe. Landed by Pamela Greene. WebCore::Event::timeStamp() is a simple accessor and should be const https://bugs.webkit.org/show_bug.cgi?id=23176 * dom/Event.h: (WebCore::Event::timeStamp): 2009-01-08 Antti Koivisto Reviewed by Oliver Hunt. Fix Resources loaded from the memory cache do not get correctly inserted into the DocLoader resource map (22994) Use CachedResourceHandle in document resource map so resources get updated correctly when using using cache validation conditionals. * loader/Cache.cpp: (WebCore::Cache::evict): * loader/DocLoader.cpp: (WebCore::DocLoader::~DocLoader): (WebCore::DocLoader::requestResource): (WebCore::DocLoader::setAutoLoadImages): (WebCore::DocLoader::removeCachedResource): * loader/DocLoader.h: (WebCore::DocLoader::cachedResource): (WebCore::DocLoader::allCachedResources): * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::getSubresources): * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add a cleaned-up GraphicsContextSkia implementation to WebKit. https://bugs.webkit.org/show_bug.cgi?id=23191 * platform/graphics/skia/GraphicsContextSkia.cpp: Added. (WebCore::): (WebCore::GraphicsContext::GraphicsContext): (WebCore::GraphicsContext::~GraphicsContext): (WebCore::GraphicsContext::platformContext): (WebCore::GraphicsContext::savePlatformState): (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::beginTransparencyLayer): (WebCore::GraphicsContext::endTransparencyLayer): (WebCore::GraphicsContext::addInnerRoundedRectClip): (WebCore::GraphicsContext::addPath): (WebCore::GraphicsContext::beginPath): (WebCore::GraphicsContext::clearPlatformShadow): (WebCore::GraphicsContext::clearRect): (WebCore::GraphicsContext::clip): (WebCore::GraphicsContext::clipOut): (WebCore::GraphicsContext::clipOutEllipseInRect): (WebCore::GraphicsContext::clipPath): (WebCore::GraphicsContext::clipToImageBuffer): (WebCore::GraphicsContext::concatCTM): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::drawFocusRing): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): (WebCore::GraphicsContext::drawLineForText): (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::getCTM): (WebCore::GraphicsContext::roundToDevicePixels): (WebCore::GraphicsContext::scale): (WebCore::GraphicsContext::setAlpha): (WebCore::GraphicsContext::setCompositeOperation): (WebCore::GraphicsContext::setImageInterpolationQuality): (WebCore::GraphicsContext::setLineCap): (WebCore::GraphicsContext::setLineDash): (WebCore::GraphicsContext::setLineJoin): (WebCore::GraphicsContext::setMiterLimit): (WebCore::GraphicsContext::setPlatformFillColor): (WebCore::GraphicsContext::setPlatformShadow): (WebCore::GraphicsContext::setPlatformStrokeColor): (WebCore::GraphicsContext::setPlatformStrokeStyle): (WebCore::GraphicsContext::setPlatformStrokeThickness): (WebCore::GraphicsContext::setPlatformTextDrawingMode): (WebCore::GraphicsContext::setURLForRect): (WebCore::GraphicsContext::setUseAntialiasing): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::strokeRect): (WebCore::GraphicsContext::rotate): (WebCore::GraphicsContext::translate): 2009-01-08 David Hyatt Fix for REGRESSION: In Mail, can't force a message to auto scroll. Make scrollRectIntoViewRecursively call out to the HostWindow to continue the recursive scroll for any scrollable views that may contain a WebView. Does nothing on platforms other than the Mac, but might eventually be of interest to other platforms. Reviewed by Oliver Hunt * WebCore.base.exp: * page/Chrome.cpp: (WebCore::Chrome::scrollRectIntoView): * page/Chrome.h: * page/ChromeClient.h: (WebCore::ChromeClient::scrollRectIntoView): * platform/HostWindow.h: * platform/ScrollView.cpp: (WebCore::ScrollView::scrollRectIntoViewRecursively): 2009-01-08 Adam Treat Reviewed by David Hyatt. No need to make this part of HostWindow and moreover HostWindow should not have any reference to non-platform parts of WebCore. * page/Chrome.h: * page/FrameView.cpp: (WebCore::FrameView::setContentsSize): * platform/HostWindow.h: 2009-01-08 Eric Carlson Reviewed by Adele Peterson. Simplify Mac interfaces for drawing media controller elements * WebCore.base.exp: update for changed WebKitSystemInterface media controller functions * platform/mac/WebCoreSystemInterface.h: Ditto * platform/mac/WebCoreSystemInterface.mm: Ditto * rendering/MediaControlElements.h: (WebCore::): Add MediaControlElements enum * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintMediaFullscreenButton): update for changed WebKitSystemInterface media controller functions (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add two more files for platform/graphics/skia. https://bugs.webkit.org/show_bug.cgi?id=23191 * platform/graphics/skia/GradientSkia.cpp: Added. (WebCore::Gradient::platformDestroy): (WebCore::F2B): (WebCore::makeSkColor): (WebCore::totalStopsNeeded): (WebCore::fillStops): (WebCore::compareStops): (WebCore::Gradient::platformGradient): (WebCore::Gradient::fill): * platform/graphics/skia/GraphicsContextPlatformPrivate.h: Copied from WebCore/bindings/js/ScriptValue.h. (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContextPlatformPrivate::context): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Commit the right files this time! (Instead of the ugly unfixed ones.) https://bugs.webkit.org/show_bug.cgi?id=23191 * platform/graphics/skia/BitmapImageSingleFrameSkia.h: * platform/graphics/skia/FloatPointSkia.cpp: * platform/graphics/skia/FloatRectSkia.cpp: * platform/graphics/skia/IntPointSkia.cpp: * platform/graphics/skia/IntRectSkia.cpp: (WebCore::IntRect::operator SkRect): * platform/graphics/skia/SkiaUtils.cpp: (WebCore::): (WebCore::WebCoreCompositeToSkiaComposite): (WebCore::SkPMColorToWebCoreColor): (WebCore::IntersectRectAndRegion): (WebCore::ClipRectToCanvas): (WebCore::SkPathContainsPoint): (WebCore::scratchContext): * platform/graphics/skia/SkiaUtils.h: (WebCore::WebCoreFloatToSkScalar): (WebCore::WebCoreDoubleToSkScalar): 2009-01-08 Dimitri Glazkov Reviewed by Eric Seidel. Add the first few files from platform/graphics/skia https://bugs.webkit.org/show_bug.cgi?id=23191 These are all pretty simple. Eventually BitmapImageSingleFrameSkia might grow a .cpp file, for now it's just a header. SkiaUtils needs to die, but that can come later, no need to block up-streaming now. * platform/graphics/skia/BitmapImageSingleFrameSkia.h: Added. (WebCore::BitmapImageSingleFrameSkia::isBitmapImage): (WebCore::BitmapImageSingleFrameSkia::size): (WebCore::BitmapImageSingleFrameSkia::destroyDecodedData): (WebCore::BitmapImageSingleFrameSkia::decodedSize): (WebCore::BitmapImageSingleFrameSkia::nativeImageForCurrentFrame): (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): * platform/graphics/skia/FloatPointSkia.cpp: Copied from WebCore/platform/graphics/mac/FloatPointMac.mm. (WebCore::FloatPoint::FloatPoint): (WebCore::FloatPoint::operator SkPoint): * platform/graphics/skia/FloatRectSkia.cpp: Copied from WebCore/platform/graphics/qt/IntRectQt.cpp. (WebCore::FloatRect::FloatRect): (WebCore::FloatRect::operator SkRect): * platform/graphics/skia/IntPointSkia.cpp: Copied from WebCore/platform/graphics/win/IntPointWin.cpp. (WebCore::IntPoint::IntPoint): (WebCore::IntPoint::operator SkIPoint): (WebCore::IntPoint::operator SkPoint): * platform/graphics/skia/IntRectSkia.cpp: Copied from WebCore/platform/graphics/qt/IntRectQt.cpp. (WebCore::IntRect::operator SkIRect): (WebCore::IntRect::operator SkRect): (WebCore::IntRect::IntRect): * platform/graphics/skia/SkiaUtils.cpp: Added. (WebCore::WebCorePointToSkiaPoint): (WebCore::WebCoreRectToSkiaRect): (WebCore::): (WebCore::WebCoreCompositeToSkiaComposite): (WebCore::InvScaleByte): (WebCore::SkPMColorToColor): (WebCore::SkPMColorToWebCoreColor): (WebCore::IntersectRectAndRegion): (WebCore::ClipRectToCanvas): (WebCore::SkPathContainsPoint): (WebCore::scratchContext): * platform/graphics/skia/SkiaUtils.h: Added. (WebCore::WebCoreFloatToSkScalar): (WebCore::WebCoreDoubleToSkScalar): 2009-01-08 Pierre-Olivier Latour Reviewed by Dan Bernstein. Fixed CSS Transitions with zero-duration but non-zero-delay not starting or ending properly. Also updated AnimationController::numberOfActiveAnimations() which now returns the number of "active" animations, instead of simply the "running" ones. https://bugs.webkit.org/show_bug.cgi?id=23177 Tests: transitions/zero-duration-with-non-zero-delay-end.html transitions/zero-duration-with-non-zero-delay-start.html * page/animation/AnimationBase.cpp: (WebCore::AnimationBase::fireAnimationEventsIfNeeded): * page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::animationTimerFired): * page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations): 2009-01-08 Alexey Proskuryakov Reviewed by Oliver Hunt. Repro crash loading HTML5 AppCache manifest directly The crash happened whenever a cached resource was downloaded, as opposed to used directly. No test, as downloading cannot be tested automatically. * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy): Cancel downloads that do not have an associated ResourceHandle, such as downloads from the application cache. Activity window shows "The URL can't be shown", and the frame remains empty. 2009-01-08 Justin McPherson Reviewed by Simon Hausmann. Fix the Qt build on older X11 systems with special X paths. * WebCore.pro: Use the x11 qmake config to pull in extra paths needed for NPAPI. 2009-01-08 Adam Roben Windows build fix after r39699 * DerivedSources.cpp: Added JSDOMStringList.cpp. 2009-01-08 Kent Hansen Reviewed by Simon Hausmann. Fix copy & paste of images in the Qt port. Store the QPixmap itself in the mimedata, not a QPixmap* converted to bool. * platform/qt/ClipboardQt.cpp: (WebCore::ClipboardQt::declareAndWriteDragImage): 2009-01-08 Hiroyuki Ikezoe Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=23127 Invoke pango_coverage_get with each Unicode character. * platform/graphics/gtk/SimpleFontDataPango.cpp: (WebCore::SimpleFontData::containsCharacters): 2009-01-07 Alexey Proskuryakov Reviewed by Darin Adler. Part one of https://bugs.webkit.org/show_bug.cgi?id=23165 Add support for application cache dynamic entries Test: http/tests/appcache/dynamic-entries-no-cache.html * DerivedSources.make: * GNUmakefile.am: * WebCore.pro: * WebCore.scons: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: Added new files. * bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::hasItem): Added binding for hasItem(). Like other DOMApplicationCache methods, it needs to be custom to resolve relative URLs correctly. * bindings/js/JSDOMStringListCustom.cpp: Added. * dom/DOMStringList.cpp: Added. * dom/DOMStringList.h: Added. * dom/DOMStringList.idl: Added. Added an implementation of DOM 3 Core DOMStringList interface, which is returned by DOMApplicationCache items attribute. * dom/StaticStringList.cpp: Added. * dom/StaticStringList.h: Added. An implementation of DOMStringList that makes a snapshot (for DOMApplicationCache, this matches Firefox, as the spec doesn't say whether the returned list should be live or not). * loader/appcache/ApplicationCache.h: Added a list of pending dynamic entry actions, to be used in the near future. * loader/appcache/DOMApplicationCache.idl: Updated for spec changes. Instead of length attribute and item(), we now have an items attribute that returns a DOMStringList, and a hasItem convenience method. * loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::items): (WebCore::DOMApplicationCache::hasItem): * loader/appcache/DOMApplicationCache.h: Added implementations of items attribute and hasItem() (note that underlying ApplicationCache methods are still unimplemented though). * page/DOMWindow.idl: Expose a DOMStringList global constructor. 2009-01-07 Chris Marrin Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=23122 This completes the removal of dependencies on WebKit from the platform code * css/CSSComputedStyleDeclaration.cpp: (WebCore::getDelayValue): (WebCore::getDurationValue): (WebCore::getTimingFunctionValue): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): * css/CSSHelper.h: * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapAnimationDelay): (WebCore::CSSStyleSelector::mapAnimationDirection): (WebCore::CSSStyleSelector::mapAnimationDuration): (WebCore::CSSStyleSelector::mapAnimationIterationCount): (WebCore::CSSStyleSelector::mapAnimationName): (WebCore::CSSStyleSelector::mapAnimationPlayState): (WebCore::CSSStyleSelector::mapAnimationProperty): (WebCore::CSSStyleSelector::mapAnimationTimingFunction): * platform/animation/Animation.cpp: (WebCore::Animation::Animation): * platform/animation/Animation.h: (WebCore::Animation::initialAnimationDelay): (WebCore::Animation::initialAnimationDirection): (WebCore::Animation::initialAnimationDuration): (WebCore::Animation::initialAnimationIterationCount): (WebCore::Animation::initialAnimationName): (WebCore::Animation::initialAnimationPlayState): (WebCore::Animation::initialAnimationProperty): (WebCore::Animation::initialAnimationTimingFunction): * rendering/style/RenderStyle.h: 2008-01-07 Peter Kasting Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=22929 Fix errors while decoding GIFs by not calling setData() repeatedly when it's not necessary. Pushes the responsibility for calling setData() after clear() into the ImageSource which presumably knows better than BitmapImage what needs to be done. NOTE: The above bug is mainly about a memory regression, which this patch does not fix. * platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::destroyDecodedData): * platform/graphics/ImageSource.h: * platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::clear): * platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::clear): * platform/graphics/qt/ImageSourceQt.cpp: (WebCore::ImageSource::~ImageSource): (WebCore::ImageSource::clear): * platform/graphics/wx/ImageSourceWx.cpp: (WebCore::ImageSource::~ImageSource): (WebCore::ImageSource::clear): 2009-01-07 Justin Garcia Reviewed by Darin Adler. Find fails for queries that contain a line break * editing/TextIterator.cpp: (WebCore::findPlainText): Allow find with queries that contain newlines. 2009-01-07 Dean Jackson Reviewed by Dan Bernstein. Allow removal of inline shorthand properties for animation, transition and transform origin. Also add getter for shorthand animation property. https://bugs.webkit.org/show_bug.cgi?id=22605 Test: fast/css/transform-inline-style-remove.html * css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Getter for animation property shorthand (WebCore::initShorthandMap): Adds initialisation for transform-origin, animation and transition 2009-01-07 Benjamin Otte Reviewed by Holger Freyther. * platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal): (WebCore::parseDataUrl): (WebCore::ResourceHandle::startData): keep track of the idle handler we add and remove it in the destructor 2009-01-07 Dean Jackson Reviewed by Darin Adler. Finish renaming of AffineTransform to TransformationMatrix, this time ensuring that the platform implementations get the correct name. Also, clean up some whitespace cruft in old content. https://bugs.webkit.org/show_bug.cgi?id=23151 * GNUmakefile.am: * WebCore.pro: * WebCore.scons: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * platform/graphics/cairo/AffineTransformCairo.cpp: Removed. * platform/graphics/cairo/TransformationMatrixCairo.cpp: Copied from WebCore/platform/graphics/cairo/AffineTransformCairo.cpp. * platform/graphics/cg/AffineTransformCG.cpp: Removed. * platform/graphics/cg/TransformationMatrixCG.cpp: Copied from WebCore/platform/graphics/cg/AffineTransformCG.cpp. * platform/graphics/qt/AffineTransformQt.cpp: Removed. * platform/graphics/qt/TransformationMatrixQt.cpp: Copied from WebCore/platform/graphics/qt/AffineTransformQt.cpp. * platform/graphics/transforms/TransformationMatrix.cpp: * platform/graphics/transforms/TransformationMatrix.h: * platform/graphics/wx/AffineTransformWx.cpp: Removed. * platform/graphics/wx/TransformationMatrixWx.cpp: Copied from WebCore/platform/graphics/wx/AffineTransformWx.cpp. * webcore-wx.bkl: 2009-01-07 Anders Carlsson Another build fix. * WebCore.LP64.exp: 2008-12-16 David Hyatt Make Safari RSS behave nicely with full page zoom. Need to add a new value to enable resetting of zoom back to the document-level default. Reviewed by Darin Adler * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): * css/CSSValueKeywords.in: 2009-01-07 Darin Adler Reviewed by Oliver Hunt. Bug 23160: add setMemoryCacheClientCallsEnabled SPI so Safari can be faster with activity window closed https://bugs.webkit.org/show_bug.cgi?id=23160 * WebCore.base.exp: Added Page::setMemoryCacheClientCallsEnabled. * inspector/InspectorController.cpp: (WebCore::InspectorController::didLoadResourceFromMemoryCache): Updated to take a CachedResource so that there's no extra work the caller has to do when the inspector is disabled. * inspector/InspectorController.h: Ditto. * loader/DocumentLoader.h: Added recordMemoryCacheLoadForFutureClientNotification, takeMemoryCacheLoadsForClientNotification, and m_resourcesLoadedFromMemoryCacheForClientNotification. * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadedResourceFromMemoryCache): Streamlined code so less work is done when there's no inspector or client call needed. Added code to check areMemoryCacheClientCallsEnabled and if it's false, use recordMemoryCacheLoadForFutureClientNotification. (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Added. * loader/FrameLoader.h: Ditto. * page/Page.cpp: (WebCore::Page::Page): Initialize m_areMemoryCacheClientCallsEnabled to be compatible with old behavior. (WebCore::Page::setMemoryCacheClientCallsEnabled): Added. * page/Page.h: Added setMemoryCacheClientCallsEnabled, areMemoryCacheClientCallsEnabled, and m_areMemoryCacheClientCallsEnabled. 2009-01-07 Ariya Hidayat Rubber-stamped by Simon Hausmann. Qt build fix after r39670. * bridge/qt/qt_class.cpp: (JSC::Bindings::QtClass::fallbackObject): * bridge/qt/qt_class.h: * bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::mark): (JSC::Bindings::QtInstance::invokeMethod): (JSC::Bindings::QtInstance::defaultValue): (JSC::Bindings::QtInstance::stringValue): (JSC::Bindings::QtInstance::numberValue): (JSC::Bindings::QtInstance::booleanValue): (JSC::Bindings::QtInstance::valueOf): (JSC::Bindings::QtField::valueFromInstance): (JSC::Bindings::QtField::setValueToInstance): * bridge/qt/qt_instance.h: * bridge/qt/qt_runtime.cpp: (JSC::Bindings::valueRealType): (JSC::Bindings::convertValueToQVariant): (JSC::Bindings::convertQVariantToValue): (JSC::Bindings::findMethodIndex): (JSC::Bindings::QtRuntimeMetaMethod::call): (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): (JSC::Bindings::QtRuntimeConnectionMethod::call): (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): (JSC::Bindings::::setValueAt): (JSC::Bindings::::valueAt): * bridge/qt/qt_runtime.h: (JSC::Bindings::QtRuntimeMethod::createStructure): 2009-01-06 Justin Garcia Reviewed by Oliver Hunt. SnowLeopard: Crash doing Copy Image from context menu Can't create an automated test case for specific contextual menu items yet and a normal Copy doesn't cause a crash. * platform/mac/PasteboardMac.mm: (WebCore::fileWrapperForImage): The SharedBuffer may not have platform data. It may, for example, have a purgeable or regular buffer. 2009-01-06 Mark Rowe Reviewed by Geoff Garen. Fix . Bug 23157: Crashes on Acid 3 * dom/Document.cpp: (WebCore::Document::recalcStyle): Null-check the frame. 2009-01-05 Gavin Barraclough Rubber Stamped by Oliver Hunt. Replace all uses of JSValue* with new wrapper class, JSValuePtr. See JavaScriptCore/ChangeLog for more detailed description. * bindings/js/JSAttrCustom.cpp: (WebCore::JSAttr::setValue): * bindings/js/JSCSSRuleCustom.cpp: (WebCore::toJS): * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter): (WebCore::JSCSSStyleDeclaration::customPut): * bindings/js/JSCSSValueCustom.cpp: (WebCore::toJS): * bindings/js/JSCanvasPixelArrayCustom.h: (WebCore::JSCanvasPixelArray::getByIndex): (WebCore::JSCanvasPixelArray::indexSetter): * bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toJS): (WebCore::toHTMLCanvasStyle): (WebCore::JSCanvasRenderingContext2D::strokeStyle): (WebCore::JSCanvasRenderingContext2D::setStrokeStyle): (WebCore::JSCanvasRenderingContext2D::fillStyle): (WebCore::JSCanvasRenderingContext2D::setFillStyle): (WebCore::JSCanvasRenderingContext2D::setFillColor): (WebCore::JSCanvasRenderingContext2D::setStrokeColor): (WebCore::JSCanvasRenderingContext2D::strokeRect): (WebCore::JSCanvasRenderingContext2D::drawImage): (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): (WebCore::JSCanvasRenderingContext2D::setShadow): (WebCore::JSCanvasRenderingContext2D::createPattern): (WebCore::JSCanvasRenderingContext2D::putImageData): (WebCore::JSCanvasRenderingContext2D::fillText): (WebCore::JSCanvasRenderingContext2D::strokeText): * bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types): (WebCore::JSClipboard::clearData): (WebCore::JSClipboard::getData): (WebCore::JSClipboard::setData): (WebCore::JSClipboard::setDragImage): * bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::profiles): * bindings/js/JSCustomPositionCallback.cpp: (WebCore::JSCustomPositionCallback::handleEvent): * bindings/js/JSCustomPositionErrorCallback.cpp: (WebCore::JSCustomPositionErrorCallback::handleEvent): * bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent): * bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent): * bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent): * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): * bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent): (WebCore::toVoidCallback): * bindings/js/JSCustomVoidCallback.h: * bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::create): (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): * bindings/js/JSCustomXPathNSResolver.h: * bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::add): (WebCore::JSDOMApplicationCache::remove): (WebCore::JSDOMApplicationCache::addEventListener): (WebCore::JSDOMApplicationCache::removeEventListener): * bindings/js/JSDOMBinding.cpp: (WebCore::jsStringOrNull): (WebCore::jsOwnedStringOrNull): (WebCore::jsStringOrUndefined): (WebCore::jsStringOrFalse): (WebCore::valueToStringWithNullCheck): (WebCore::valueToStringWithUndefinedOrNullCheck): (WebCore::reportException): (WebCore::reportCurrentException): (WebCore::setDOMException): (WebCore::objectToStringFunctionGetter): * bindings/js/JSDOMBinding.h: (WebCore::getDOMObjectWrapper): (WebCore::getDOMNodeWrapper): (WebCore::toJS): * bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::findJSEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener): (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener): * bindings/js/JSDOMGlobalObject.h: * bindings/js/JSDOMWindowBase.cpp: (WebCore::createWindow): (WebCore::showModalDialog): (jsDOMWindowBaseCrypto): (jsDOMWindowBaseEvent): (jsDOMWindowBaseImage): (jsDOMWindowBaseMessageChannel): (jsDOMWindowBaseOption): (jsDOMWindowBaseXMLHttpRequest): (jsDOMWindowBaseAudio): (jsDOMWindowBaseWorker): (jsDOMWindowBaseXSLTProcessor): (setJSDOMWindowBaseEvent): (setJSDOMWindowBaseAudio): (setJSDOMWindowBaseImage): (setJSDOMWindowBaseMessageChannel): (setJSDOMWindowBaseOption): (setJSDOMWindowBaseWorker): (setJSDOMWindowBaseXMLHttpRequest): (setJSDOMWindowBaseXSLTProcessor): (WebCore::JSDOMWindowBase::childFrameGetter): (WebCore::JSDOMWindowBase::indexGetter): (WebCore::JSDOMWindowBase::namedItemGetter): (WebCore::JSDOMWindowBase::getOwnPropertySlot): (WebCore::JSDOMWindowBase::put): (WebCore::JSDOMWindowBase::clear): (windowProtoFuncOpen): (windowProtoFuncShowModalDialog): (windowProtoFuncNotImplemented): (WebCore::JSDOMWindowBase::setReturnValueSlot): (WebCore::JSDOMWindowBase::installTimeout): (WebCore::toJS): (WebCore::toJSDOMWindow): * bindings/js/JSDOMWindowBase.h: * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::lookupGetter): (WebCore::JSDOMWindow::lookupSetter): (WebCore::JSDOMWindow::setLocation): (WebCore::JSDOMWindow::postMessage): (WebCore::setTimeoutOrInterval): (WebCore::JSDOMWindow::setTimeout): (WebCore::JSDOMWindow::clearTimeout): (WebCore::JSDOMWindow::setInterval): (WebCore::JSDOMWindow::clearInterval): (WebCore::JSDOMWindow::atob): (WebCore::JSDOMWindow::btoa): (WebCore::JSDOMWindow::addEventListener): (WebCore::JSDOMWindow::removeEventListener): (WebCore::toDOMWindow): (WebCore::nonCachingStaticCloseFunctionGetter): (WebCore::nonCachingStaticBlurFunctionGetter): (WebCore::nonCachingStaticFocusFunctionGetter): (WebCore::nonCachingStaticPostMessageFunctionGetter): * bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customPut): * bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::put): (WebCore::JSDOMWindowShell::putWithAttributes): (WebCore::JSDOMWindowShell::lookupGetter): (WebCore::JSDOMWindowShell::lookupSetter): (WebCore::toJS): * bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::createStructure): * bindings/js/JSDatabaseCustom.cpp: (WebCore::JSDatabase::changeVersion): (WebCore::JSDatabase::transaction): * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::location): (WebCore::JSDocument::setLocation): (WebCore::toJS): * bindings/js/JSElementCustom.cpp: (WebCore::JSElement::setAttribute): (WebCore::JSElement::setAttributeNode): (WebCore::JSElement::setAttributeNS): (WebCore::JSElement::setAttributeNodeNS): (WebCore::toJSNewlyCreated): * bindings/js/JSEventCustom.cpp: (WebCore::JSEvent::clipboardData): (WebCore::toJS): * bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::eventParameterName): (WebCore::JSLazyEventListener::parseCode): * bindings/js/JSEventTarget.cpp: (WebCore::toJS): * bindings/js/JSEventTarget.h: * bindings/js/JSEventTargetBase.h: * bindings/js/JSEventTargetNodeCustom.cpp: (WebCore::JSEventTargetNode::addEventListener): (WebCore::JSEventTargetNode::removeEventListener): * bindings/js/JSGeolocationCustom.cpp: (WebCore::createPositionOptions): (WebCore::JSGeolocation::getCurrentPosition): (WebCore::JSGeolocation::watchPosition): * bindings/js/JSHTMLAllCollection.h: (WebCore::JSHTMLAllCollection::createStructure): * bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::customPut): (WebCore::JSHTMLAppletElement::nameGetter): * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::getNamedItems): (WebCore::callHTMLCollection): (WebCore::JSHTMLCollection::nameGetter): (WebCore::JSHTMLCollection::item): (WebCore::JSHTMLCollection::namedItem): (WebCore::toJS): * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): (WebCore::JSHTMLDocument::all): (WebCore::JSHTMLDocument::setAll): (WebCore::JSHTMLDocument::open): (WebCore::JSHTMLDocument::write): (WebCore::JSHTMLDocument::writeln): * bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::customPut): (WebCore::JSHTMLEmbedElement::nameGetter): * bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): * bindings/js/JSHTMLFrameElementCustom.cpp: (WebCore::JSHTMLFrameElement::setSrc): (WebCore::JSHTMLFrameElement::setLocation): * bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): * bindings/js/JSHTMLIFrameElementCustom.cpp: (WebCore::JSHTMLIFrameElement::setSrc): * bindings/js/JSHTMLInputElementCustom.cpp: (WebCore::JSHTMLInputElement::selectionStart): (WebCore::JSHTMLInputElement::selectionEnd): * bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::customPut): (WebCore::JSHTMLObjectElement::nameGetter): * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::length): (WebCore::JSHTMLOptionsCollection::setLength): (WebCore::JSHTMLOptionsCollection::indexSetter): (WebCore::JSHTMLOptionsCollection::add): (WebCore::JSHTMLOptionsCollection::remove): * bindings/js/JSHTMLSelectElementCustom.cpp: (WebCore::JSHTMLSelectElement::remove): (WebCore::selectIndexSetter): (WebCore::JSHTMLSelectElement::indexSetter): * bindings/js/JSHTMLSelectElementCustom.h: * bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): (WebCore::JSHistory::customPut): * bindings/js/JSImageDataCustom.cpp: (WebCore::toJS): * bindings/js/JSInspectedObjectWrapper.cpp: (WebCore::JSInspectedObjectWrapper::wrap): (WebCore::JSInspectedObjectWrapper::prepareIncomingValue): * bindings/js/JSInspectedObjectWrapper.h: (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue): * bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::wrap): (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue): * bindings/js/JSInspectorCallbackWrapper.h: (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue): * bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): (WebCore::JSJavaScriptCallFrame::thisObject): (WebCore::JSJavaScriptCallFrame::type): (WebCore::JSJavaScriptCallFrame::scopeChain): * bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): (WebCore::JSLocation::customPut): (WebCore::JSLocation::setHref): (WebCore::JSLocation::setProtocol): (WebCore::JSLocation::setHost): (WebCore::JSLocation::setHostname): (WebCore::JSLocation::setPort): (WebCore::JSLocation::setPathname): (WebCore::JSLocation::setSearch): (WebCore::JSLocation::setHash): (WebCore::JSLocation::replace): (WebCore::JSLocation::reload): (WebCore::JSLocation::assign): (WebCore::JSLocation::toString): * bindings/js/JSMessageChannelConstructor.h: * bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::startConversation): (WebCore::JSMessagePort::addEventListener): (WebCore::JSMessagePort::removeEventListener): * bindings/js/JSMimeTypeArrayCustom.cpp: (WebCore::JSMimeTypeArray::nameGetter): * bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): * bindings/js/JSNamedNodesCollection.cpp: (WebCore::JSNamedNodesCollection::lengthGetter): (WebCore::JSNamedNodesCollection::indexGetter): * bindings/js/JSNamedNodesCollection.h: (WebCore::JSNamedNodesCollection::createStructure): * bindings/js/JSNavigatorCustom.cpp: (WebCore::needsYouTubeQuirk): (WebCore::JSNavigator::appVersion): * bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::insertBefore): (WebCore::JSNode::replaceChild): (WebCore::JSNode::removeChild): (WebCore::JSNode::appendChild): (WebCore::createWrapper): (WebCore::toJSNewlyCreated): (WebCore::toJS): * bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::JSNodeFilterCondition): (WebCore::JSNodeFilterCondition::acceptNode): * bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create): * bindings/js/JSNodeFilterCustom.cpp: (WebCore::JSNodeFilter::acceptNode): (WebCore::toNodeFilter): * bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): (WebCore::JSNodeIterator::previousNode): * bindings/js/JSNodeListCustom.cpp: (WebCore::callNodeList): (WebCore::JSNodeList::nameGetter): * bindings/js/JSPluginArrayCustom.cpp: (WebCore::JSPluginArray::nameGetter): * bindings/js/JSPluginCustom.cpp: (WebCore::JSPlugin::nameGetter): * bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): (WebCore::runtimeObjectPropertyGetter): (WebCore::runtimeObjectCustomPut): (WebCore::callPlugin): * bindings/js/JSPluginElementFunctions.h: * bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::asWrapper): (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter): (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): (WebCore::JSQuarantinedObjectWrapper::put): (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::hasInstance): (WebCore::JSQuarantinedObjectWrapper::call): * bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::createStructure): * bindings/js/JSRGBColor.cpp: (WebCore::getJSRGBColor): (jsRGBColorRed): (jsRGBColorGreen): (jsRGBColorBlue): * bindings/js/JSRGBColor.h: (WebCore::JSRGBColor::createStructure): * bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item): * bindings/js/JSSQLTransactionCustom.cpp: (WebCore::JSSQLTransaction::executeSql): * bindings/js/JSSVGElementInstanceCustom.cpp: (WebCore::JSSVGElementInstance::addEventListener): (WebCore::JSSVGElementInstance::removeEventListener): * bindings/js/JSSVGLengthCustom.cpp: (WebCore::JSSVGLength::value): (WebCore::JSSVGLength::convertToSpecifiedUnits): * bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::multiply): (WebCore::JSSVGMatrix::inverse): (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::rotateFromVector): (WebCore::JSSVGMatrix::flipX): (WebCore::JSSVGMatrix::flipY): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY): * bindings/js/JSSVGPathSegCustom.cpp: (WebCore::toJS): * bindings/js/JSSVGPathSegListCustom.cpp: (WebCore::JSSVGPathSegList::clear): (WebCore::JSSVGPathSegList::initialize): (WebCore::JSSVGPathSegList::getItem): (WebCore::JSSVGPathSegList::insertItemBefore): (WebCore::JSSVGPathSegList::replaceItem): (WebCore::JSSVGPathSegList::removeItem): (WebCore::JSSVGPathSegList::appendItem): * bindings/js/JSSVGPointListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGPointList::clear): (WebCore::JSSVGPointList::initialize): (WebCore::JSSVGPointList::getItem): (WebCore::JSSVGPointList::insertItemBefore): (WebCore::JSSVGPointList::replaceItem): (WebCore::JSSVGPointList::removeItem): (WebCore::JSSVGPointList::appendItem): * bindings/js/JSSVGTransformListCustom.cpp: (WebCore::finishGetter): (WebCore::finishSetter): (WebCore::finishSetterReadOnlyResult): (WebCore::JSSVGTransformList::clear): (WebCore::JSSVGTransformList::initialize): (WebCore::JSSVGTransformList::getItem): (WebCore::JSSVGTransformList::insertItemBefore): (WebCore::JSSVGTransformList::replaceItem): (WebCore::JSSVGTransformList::removeItem): (WebCore::JSSVGTransformList::appendItem): * bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): (WebCore::JSStorage::deleteProperty): (WebCore::JSStorage::customPut): * bindings/js/JSStyleSheetCustom.cpp: (WebCore::toJS): * bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): * bindings/js/JSTextCustom.cpp: (WebCore::toJSNewlyCreated): * bindings/js/JSTreeWalkerCustom.cpp: (WebCore::JSTreeWalker::parentNode): (WebCore::JSTreeWalker::firstChild): (WebCore::JSTreeWalker::lastChild): (WebCore::JSTreeWalker::nextSibling): (WebCore::JSTreeWalker::previousSibling): (WebCore::JSTreeWalker::previousNode): (WebCore::JSTreeWalker::nextNode): * bindings/js/JSWorkerContextBase.cpp: (WebCore::JSWorkerContextBase::put): * bindings/js/JSWorkerContextBase.h: * bindings/js/JSWorkerContextCustom.cpp: (WebCore::JSWorkerContext::self): (WebCore::JSWorkerContext::setSelf): (WebCore::JSWorkerContext::addEventListener): (WebCore::JSWorkerContext::removeEventListener): * bindings/js/JSWorkerCustom.cpp: (WebCore::JSWorker::addEventListener): (WebCore::JSWorker::removeEventListener): * bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::open): (WebCore::JSXMLHttpRequest::setRequestHeader): (WebCore::JSXMLHttpRequest::send): (WebCore::JSXMLHttpRequest::getResponseHeader): (WebCore::JSXMLHttpRequest::overrideMimeType): (WebCore::JSXMLHttpRequest::addEventListener): (WebCore::JSXMLHttpRequest::removeEventListener): (WebCore::JSXMLHttpRequest::responseText): * bindings/js/JSXMLHttpRequestUploadCustom.cpp: (WebCore::JSXMLHttpRequestUpload::addEventListener): (WebCore::JSXMLHttpRequestUpload::removeEventListener): * bindings/js/JSXSLTProcessorCustom.cpp: (WebCore::JSXSLTProcessor::importStylesheet): (WebCore::JSXSLTProcessor::transformToFragment): (WebCore::JSXSLTProcessor::transformToDocument): (WebCore::JSXSLTProcessor::setParameter): (WebCore::JSXSLTProcessor::getParameter): (WebCore::JSXSLTProcessor::removeParameter): * bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute): * bindings/js/ScheduledAction.h: * bindings/js/ScriptCallStack.cpp: (WebCore::ScriptCallStack::ScriptCallStack): (WebCore::ScriptCallStack::initialize): * bindings/js/ScriptController.cpp: (WebCore::ScriptController::createScriptObjectForPluginElement): * bindings/js/ScriptValue.cpp: (WebCore::ScriptValue::getString): (WebCore::ScriptValue::isNull): (WebCore::ScriptValue::isUndefined): * bindings/js/ScriptValue.h: (WebCore::ScriptValue::ScriptValue): (WebCore::ScriptValue::jsValue): * bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]): (-[WebScriptObject valueForKey:]): (-[WebScriptObject webScriptValueAtIndex:]): (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): * bindings/objc/WebScriptObjectPrivate.h: * bindings/scripts/CodeGeneratorJS.pm: * bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_HasMethod): (_NPN_Construct): * bridge/c/c_instance.cpp: (JSC::Bindings::CInstance::invokeMethod): (JSC::Bindings::CInstance::invokeDefaultMethod): (JSC::Bindings::CInstance::invokeConstruct): (JSC::Bindings::CInstance::defaultValue): (JSC::Bindings::CInstance::stringValue): (JSC::Bindings::CInstance::numberValue): (JSC::Bindings::CInstance::booleanValue): (JSC::Bindings::CInstance::valueOf): * bridge/c/c_instance.h: * bridge/c/c_runtime.cpp: (JSC::Bindings::CField::valueFromInstance): (JSC::Bindings::CField::setValueToInstance): * bridge/c/c_runtime.h: * bridge/c/c_utility.cpp: (JSC::Bindings::convertValueToNPVariant): (JSC::Bindings::convertNPVariantToValue): * bridge/c/c_utility.h: * bridge/jni/jni_instance.cpp: (JavaInstance::stringValue): (JavaInstance::numberValue): (JavaInstance::booleanValue): (JavaInstance::invokeMethod): (JavaInstance::defaultValue): (JavaInstance::valueOf): * bridge/jni/jni_instance.h: * bridge/jni/jni_jsobject.h: * bridge/jni/jni_jsobject.mm: (JavaJSObject::call): (JavaJSObject::eval): (JavaJSObject::getMember): (JavaJSObject::getSlot): (JavaJSObject::convertValueToJObject): (JavaJSObject::convertJObjectToValue): * bridge/jni/jni_objc.mm: (JSC::Bindings::dispatchJNICall): * bridge/jni/jni_runtime.cpp: (JavaArray::convertJObjectToArray): (JavaField::dispatchValueFromInstance): (JavaField::valueFromInstance): (JavaField::dispatchSetValueToInstance): (JavaField::setValueToInstance): (JavaArray::setValueAt): (JavaArray::valueAt): * bridge/jni/jni_runtime.h: * bridge/jni/jni_utility.cpp: (JSC::Bindings::convertArrayInstanceToJavaArray): (JSC::Bindings::convertValueToJValue): * bridge/jni/jni_utility.h: * bridge/objc/WebScriptObject.h: * bridge/objc/objc_class.h: * bridge/objc/objc_class.mm: (JSC::Bindings::ObjcClass::fallbackObject): * bridge/objc/objc_instance.h: * bridge/objc/objc_instance.mm: (ObjcInstance::invokeMethod): (ObjcInstance::invokeDefaultMethod): (ObjcInstance::setValueOfUndefinedField): (ObjcInstance::getValueOfUndefinedField): (ObjcInstance::defaultValue): (ObjcInstance::stringValue): (ObjcInstance::numberValue): (ObjcInstance::booleanValue): (ObjcInstance::valueOf): * bridge/objc/objc_runtime.h: (JSC::Bindings::ObjcFallbackObjectImp::createStructure): * bridge/objc/objc_runtime.mm: (JSC::Bindings::ObjcField::valueFromInstance): (JSC::Bindings::convertValueToObjcObject): (JSC::Bindings::ObjcField::setValueToInstance): (JSC::Bindings::ObjcArray::setValueAt): (JSC::Bindings::ObjcArray::valueAt): (JSC::Bindings::ObjcFallbackObjectImp::put): (JSC::Bindings::callObjCFallbackObject): (JSC::Bindings::ObjcFallbackObjectImp::defaultValue): * bridge/objc/objc_utility.h: * bridge/objc/objc_utility.mm: (JSC::Bindings::convertValueToObjcValue): (JSC::Bindings::convertNSStringToString): (JSC::Bindings::convertObjcValueToValue): * bridge/runtime.cpp: (JSC::Bindings::Instance::getValueOfField): (JSC::Bindings::Instance::setValueOfField): * bridge/runtime.h: (JSC::Bindings::Class::fallbackObject): (JSC::Bindings::Instance::getValueOfUndefinedField): (JSC::Bindings::Instance::setValueOfUndefinedField): (JSC::Bindings::Instance::invokeDefaultMethod): (JSC::Bindings::Instance::invokeConstruct): (JSC::Bindings::Instance::valueOf): * bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): (JSC::RuntimeArray::indexGetter): (JSC::RuntimeArray::put): * bridge/runtime_array.h: (JSC::RuntimeArray::createStructure): * bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): (JSC::callRuntimeMethod): * bridge/runtime_method.h: (JSC::RuntimeMethod::createStructure): * bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::fallbackObjectGetter): (JSC::RuntimeObjectImp::fieldGetter): (JSC::RuntimeObjectImp::methodGetter): (JSC::RuntimeObjectImp::put): (JSC::RuntimeObjectImp::defaultValue): (JSC::callRuntimeObject): (JSC::callRuntimeConstructor): * bridge/runtime_object.h: (JSC::RuntimeObjectImp::createStructure): * inspector/InspectorController.cpp: * inspector/JavaScriptCallFrame.cpp: (WebCore::JavaScriptCallFrame::evaluate): * inspector/JavaScriptCallFrame.h: * inspector/JavaScriptProfile.cpp: (WebCore::toJS): * inspector/JavaScriptProfile.h: * inspector/JavaScriptProfileNode.cpp: (WebCore::toJS): * inspector/JavaScriptProfileNode.h: * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dropProtection): 2009-01-06 Pierre-Olivier Latour Reviewed by Darin Adler. Added new API on AnimationController::numberOfActiveAnimations() to be used by DRT. https://bugs.webkit.org/show_bug.cgi?id=23126 Test: animations/animation-controller-drt-api.html * WebCore.base.exp: * page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::numberOfActiveAnimations): (WebCore::AnimationController::numberOfActiveAnimations): * page/animation/AnimationController.h: * page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations): (WebCore::CompositeAnimation::numberOfActiveAnimations): * page/animation/CompositeAnimation.h: 2009-01-06 Eric Seidel Reviewed by Gavin Barraclough. Upstream 3 more files to get the WebCore-Chromium build a bit further. * WebCore.scons: * page/chromium/AccessibilityObjectChromium.cpp: Added. (WebCore::AccessibilityObject::accessibilityIgnoreAttachment): * page/chromium/AccessibilityObjectWrapper.h: Added. (WebCore::AccessibilityObjectWrapper::~AccessibilityObjectWrapper): (WebCore::AccessibilityObjectWrapper::attached): (WebCore::AccessibilityObjectWrapper::accessibilityObject): (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): * platform/chromium/PasteboardPrivate.h: Added. (WebCore::PasteboardPrivate::): 2009-01-06 Chris Marrin Reviewed by David Hyatt. Tests: animations/simultaneous-start-left.html animations/simultaneous-start-transform.html Fixed https://bugs.webkit.org/show_bug.cgi?id=22870 I added calls beginAnimationUpdate() and endAnimationUpdate() calls to AnimationController. These are called by Document at the start and end of the recalcStyle cycle. Right now, I'm just using the beginAnimationUpdate() method to reset an animation time value. The first time the animation time is accessed after this reset I set it to the currentTime. So all animations in that cycle get the same start time. The test cases checked in test this, but in the case of the 'left' test it actually doesn't make any difference in most cases. This is because values are clamped to whole pixels, so the start times would have to be pretty far off for the test to fail using the old currentTime() model. Still, under really heavy load, it's possible for the test to fail without these changes. The 'transform' test is another story. It animates to the full resolution of a floating point number, so the test fails miserably without this fix. * dom/Document.cpp: (WebCore::Document::recalcStyle): * page/animation/AnimationBase.cpp: (WebCore::AnimationBase::updateStateMachine): (WebCore::AnimationBase::fireAnimationEventsIfNeeded): (WebCore::AnimationBase::willNeedService): (WebCore::AnimationBase::progress): (WebCore::AnimationBase::goIntoEndingOrLoopingState): (WebCore::AnimationBase::beginAnimationUpdateTime): * page/animation/AnimationBase.h: * page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime): (WebCore::AnimationControllerPrivate::setBeginAnimationUpdateTime): (WebCore::AnimationControllerPrivate::AnimationControllerPrivate): (WebCore::AnimationController::updateAnimations): (WebCore::AnimationController::beginAnimationUpdateTime): (WebCore::AnimationController::beginAnimationUpdate): (WebCore::AnimationController::endAnimationUpdate): * page/animation/AnimationController.h: * page/animation/KeyframeAnimation.cpp: (WebCore::KeyframeAnimation::animate): 2009-01-06 Julien Chaffraix Reviewed by Nikolas Zimmermann. Bug 22858: Simplify make_names.pl code for avoiding multiple definitions or inclusions https://bugs.webkit.org/show_bug.cgi?id=22858 I had introduced an awkward situation using hasCustomJSWrapper and sometimes boolean parameter in order to ensure JS wrapper generated once or header included once. Simplified the code by using a %seenTag hash to detect multiple definitions or inclusions and skipping it. Also cleaned up a bit make_names.pl by using more explicit names and moving code to where it belongs. * dom/make_names.pl: * html/HTMLTagNames.in: Necessary changes that were not detected by the previous syntax but will be required for autogenerating HTMLElementFactory. 2009-01-06 Anders Carlsson Reviewed by Sam Weinig. Add a way for frame loader clients to always create a PluginDocument, regardless of the real document MIME type. * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::shouldUsePlugin): * loader/FrameLoaderClient.h: (WebCore::FrameLoaderClient::shouldUsePluginDocument): 2009-01-06 Dean Jackson Reviewed by Dave Hyatt. Extend Media Queries to cover transitions, animations, transform-2d and transform-3d http://webkit.org/specs/MediaQueriesExtensions.html Note that the implementation uses -webkit- prefixes even though the spec doesn't have them. https://bugs.webkit.org/show_bug.cgi?id=22494 Tests: fast/media/mq-animation.html fast/media/mq-transform-01.html fast/media/mq-transform-02.html fast/media/mq-transform-03.html fast/media/mq-transform-04.html fast/media/mq-transition.html * css/MediaFeatureNames.h: * css/MediaQueryEvaluator.cpp: (WebCore::animationMediaFeatureEval): (WebCore::transitionMediaFeatureEval): (WebCore::transform_2dMediaFeatureEval): (WebCore::transform_3dMediaFeatureEval): 2009-01-06 Eric Seidel Reviewed by Oliver Hunt. Bring the Chromium-WebCore build closer to building by upstreaming PlatformWidget.h add adding the JSC plugin bridge files to the build. * WebCore.scons: * platform/chromium/PlatformWidget.h: Added. 2009-01-06 Eric Seidel Build fix only, no review. Bring the Chromium-WebCore build back closer to building by adding files from recent commits. * WebCore.scons: 2009-01-06 Alexey Proskuryakov Reviewed by Darin Adler. REGRESSION: PLT ~2% slower due to 39465 (consolidate thread data) I could not reproduce the slowdown on my PowerPC test machine, but the change should bring performance back. * platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Don't use AtomicallyInitializedStatic. Prior to r39465, it was only used for cached converters, which was necessary because the first access to ICU or TEC one could happen on a secondary thread, but now they are all initialized from ThreadGlobalData constructor. 2009-01-06 David Smith Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=23129 Devirtualize Node::childNodes(). 2009-01-06 Simon Hausmann Unreviewed build fix. Fix the Qt build with Qt 4.4.x, the HTTP-only cookie support was added in Qt 4.5. * platform/qt/CookieJarQt.cpp: (WebCore::setCookies): (WebCore::cookies): 2009-01-06 Zalan Bujtas Reviewed by David Kilzer. https://bugs.webkit.org/show_bug.cgi?id=23133 Fix SVG disabled build. Move 'pointer-events' from SVGCSSPropertyNames.in to CSSPropertyNames.in and move PointerEvents functions out of #if ENABLE(SVG) NOTE: Property name fixes landed as part of r39648. * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EPointerEvents): * css/CSSPropertyNames.in: * css/SVGCSSPropertyNames.in: 2009-01-06 David Kilzer BUILD FIX (r39634): Fix build for non-SVG builds (Wx) * css/CSSPropertyNames.in: Added 'pointer-events'. * css/SVGCSSPropertyNames.in: Commented out pointer-events since it's now a plain CSS property. 2009-01-06 Simon Hausmann Reviewed by Lars Knoll. Added support for HTTP-only cookies to the Qt build. * platform/qt/CookieJarQt.cpp: (WebCore::setCookies): Don't set HTTP-only cookies through the DOM. (WebCore::cookies): Don't return HTTP-only cookies to the DOM. 2009-01-05 David Smith Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=23084 Avoid redundant AtomicString conversions * dom/Node.cpp: Create an AtomicString early to avoid converting twice (WebCore::Node::getElementsByTagNameNS): * dom/QualifiedName.h: Use the appropriate AtomicString constructor instead of converting from a String 2009-01-05 Simon Fraser Reviewed by Dave Hyatt https://bugs.webkit.org/show_bug.cgi?id=22985 Add an assertion that clip rects are being used when painting with the same rootLayer that they were computed with. Fix two issues detected by the assertion: RenderLayer::updateClipRects() should not unconditionally update the clip rects on its parent, but stop when reaching rootLayer (just like calculateClipRects()). We need to pass the temporaryClipRects flag down through reflection painting to handle the case of nested reflections. Also use temporary clip rects in RenderTreeAsText, since that code does not reset the painting root for transformed layers, so cached clip rects will not match those used for painting. * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::updateClipRects): (WebCore::RenderLayer::clearClipRects): * rendering/RenderLayer.h: * rendering/RenderTreeAsText.cpp: (WebCore::writeLayers): 2009-01-05 Adam Treat Fix the Qt build * platform/graphics/qt/AffineTransformQt.cpp: (WebCore::TransformationMatrix::TransformationMatrix): 2009-01-05 Mark Rowe Fix the build some more. * platform/graphics/cairo/AffineTransformCairo.cpp: (WebCore::TransformationMatrix::TransformationMatrix): 2009-01-05 Oliver Hunt Reviewed by NOBODY (Build fix). Fix Cairo/Gtk build * platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBuffer::putImageData): 2009-01-05 Dean Jackson Reviewed by Darin Adler. Rename AffineTransform to TransformationMatrix in preparation for future enhancements (non-affine matrices) https://bugs.webkit.org/show_bug.cgi?id=22943 * GNUmakefile.am: * WebCore.pro: * WebCore.scons: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * platform/graphics/transforms/AffineTransform.cpp: Removed. * platform/graphics/transforms/AffineTransform.h: Removed. * platform/graphics/transforms/TransformationMatrix.cpp: Copied from WebCore/platform/graphics/transforms/AffineTransform.cpp. * platform/graphics/transforms/TransformationMatrix.h: Copied from WebCore/platform/graphics/transforms/AffineTransform.h. * lots of other files with s/AffineTransform/TransformationMatrix/g 2008-01-05 Dean Jackson Reviewed by David Hyatt. Implement 'pointer-events' for HTML content. This involved adding a new value 'auto' which behaves as 'visiblePainted' in SVG content. Moved the property out of the SVG CSS code and into the general CSS (both parsing and RenderStyle). Changes to the hit testing functionality of the Render tree, specifically the nodeAtPoint methods. Where they used to test for visibility, they now use a helper function defined on base classes (RenderObject and InlineBox) that checks both visibility and pointer-events. https://bugs.webkit.org/show_bug.cgi?id=11395 Tests: fast/events/pointer-events-2.html fast/events/pointer-events.html * css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EPointerEvents): * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): * css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): * css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty): * manual-tests/pointer-events.html: Added. * rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint): * rendering/InlineBox.h: (WebCore::InlineBox::visibleToHitTesting): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint): * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::nodeAtPoint): * rendering/PointerEventsHitRules.cpp: (WebCore::PointerEventsHitRules::PointerEventsHitRules): * rendering/PointerEventsHitRules.h: (WebCore::PointerEventsHitRules::): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint): * rendering/RenderBox.cpp: (WebCore::RenderBox::nodeAtPoint): * rendering/RenderObject.h: (WebCore::RenderObject::visibleToHitTesting): * rendering/RenderPath.cpp: (WebCore::RenderPath::nodeAtPoint): * rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::nodeAtPoint): * rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::nodeAtPoint): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::nodeAtPoint): * rendering/TextControlInnerElements.cpp: (WebCore::SearchFieldCancelButtonElement::defaultEventHandler): * rendering/style/RenderStyle.h: (WebCore::): (WebCore::InheritedFlags::setBitDefaults): (WebCore::InheritedFlags::pointerEvents): (WebCore::InheritedFlags::setPointerEvents): (WebCore::InheritedFlags::initialPointerEvents): * rendering/style/RenderStyleConstants.h: (WebCore::): * rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::setBitDefaults): * rendering/style/SVGRenderStyleDefs.h: * css/CSSValueKeywords.in: * css/SVGCSSValueKeywords.in: 2009-01-05 Oliver Hunt Reviewed by NOBODY (Build fix). Fix Cairo/Gtk build * platform/graphics/cairo/ImageBufferCairo.cpp: (WebCore::ImageBuffer::getImageData): 2009-01-05 Oliver Hunt Reviewed by Gavin Barraclough. CanvasPixelArray performance is too slow Remove the WebCore CanvasPixelArray implementation and replace CPA usage with JSC::ByteArray. Replace the JSCanvasPixelArray wrapper with an explicitly instantiated JSByteArray put on the JSImageData object as an ordinary ReadOnly, DontDelete property. * DerivedSources.make: * ForwardingHeaders/runtime/ByteArray.h: Added. * ForwardingHeaders/runtime/JSByteArray.h: Added. * GNUmakefile.am: * WebCore.pro: * WebCore.scons: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSCanvasPixelArrayCustom.h: Removed. * bindings/js/JSImageDataCustom.cpp: (WebCore::toJS): * html/CanvasPixelArray.cpp: Removed. * html/CanvasPixelArray.h: Removed. * html/CanvasPixelArray.idl: Removed. * html/CanvasRenderingContext2D.cpp: (WebCore::createEmptyImageData): * html/ImageData.cpp: (WebCore::ImageData::ImageData): * html/ImageData.h: (WebCore::ImageData::data): * html/ImageData.idl: * platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::getImageData): (WebCore::ImageBuffer::putImageData): 2009-01-05 Adam Treat Reviewed by George Staikos. Add notification for contentsSizeChanged which the Qt API will introduce. * loader/EmptyClients.h: (WebCore::EmptyChromeClient::contentsSizeChanged): * page/Chrome.cpp: (WebCore::Chrome::contentsSizeChanged): * page/Chrome.h: * page/ChromeClient.h: * page/FrameView.cpp: (WebCore::FrameView::setContentsSize): * page/FrameView.h: * platform/HostWindow.h: * platform/ScrollView.h: 2009-01-05 Anders Carlsson Build fix. * plugins/PluginView.h: (WebCore::PluginManualLoader::~PluginManualLoader): 2009-01-05 Anders Carlsson Reviewed by Kevin Decker. Add an abstract PluginManualLoader class and make PluginView inherit from it. Add some error checking that currently exists in WebKit (but not for long!) * plugins/PluginView.cpp: (WebCore::PluginView::didReceiveResponse): (WebCore::PluginView::didReceiveData): (WebCore::PluginView::didFinishLoading): (WebCore::PluginView::didFail): * plugins/PluginView.h: 2009-01-05 Adam Treat Reviewed by George Staikos. Fixes FrameView to respect the state of scrollbarmode when it is explicitly set programatically via a webkit API. * loader/FrameLoaderClient.cpp: (WebCore::FrameLoaderClient::transitionToCommittedForNewPage): * loader/FrameLoaderClient.h: * page/FrameView.cpp: (WebCore::FrameView::initScrollbars): (WebCore::FrameView::updateDefaultScrollbarState): * page/FrameView.h: 2009-01-05 Darin Adler Reviewed by Dan Bernstein. Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly https://bugs.webkit.org/show_bug.cgi?id=23109 Test: fast/text/find-backwards.html * editing/TextIterator.cpp: (WebCore::SearchBuffer::append): Fix incorrect size passed to memcpy. (WebCore::SearchBuffer::search): Handle case where we have an empty buffer but we're at a break; must not try to search because ICU will give us an error. Fix incorrect size passed to memcpy and memmove. (WebCore::findPlainText): Fix case where we found a match and need to search again because we want to find the last match. We need to try again without adding any more text or handling the break before moving on. 2009-01-05 Adam Treat Fix the Qt build * bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::put): 2009-01-05 Alexey Proskuryakov Reviewed by Sam Weinig. Fix platforms that don't have Workers enabled. * platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Create ThreadGlobalData in two stages, so that EventNames constructor can access the just-created atomic string table. This matches what happens in ThreadSpecific case. 2009-01-05 Alexey Proskuryakov Suggested by Dave Levin. Mac release build fix. * WebCore.base.exp: Remove ThreadGlobalData::eventNames(), which is now inline. 2009-01-05 Darin Adler * dom/Document.cpp: Fix build. Oops again. 2009-01-05 Darin Adler Reviewed by Anders Carlsson. Fix hang whenever following an anchor. * dom/Document.cpp: (WebCore::Document::findAnchor): Oops! 2009-01-05 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=23073 Workers crash on Windows Release builds * platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::ThreadGlobalData): * platform/ThreadGlobalData.h: (WebCore::ThreadGlobalData::eventNames): Now that ThreadSpecific sets up the pointer before invoking data constructor, we can initialize EventNames right away. 2009-01-05 Darin Adler Reviewed by Anders Carlsson. Bug 23106: HTMLFormCollection::namedItem ignores caseSensitive argument https://bugs.webkit.org/show_bug.cgi?id=23106 This led me to a bunch of dead code. It turns out that HTML collections were carrying the case-insensitive code just so they could be used to find anchors, something we can do more simply and efficiently without creating a DOM HTMLCollection object. No behavior change. Just adding a new function findAnchor function and removing some dead code. * dom/Document.cpp: (WebCore::Document::findAnchor): Added. * dom/Document.h: Ditto. * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::accessKey): Take and return AtomicString references for better efficiency. (WebCore::HTMLAnchorElement::setAccessKey): Ditto. (WebCore::HTMLAnchorElement::charset): Ditto. (WebCore::HTMLAnchorElement::setCharset): Ditto. (WebCore::HTMLAnchorElement::coords): Ditto. (WebCore::HTMLAnchorElement::setCoords): Ditto. (WebCore::HTMLAnchorElement::setHref): Ditto. (WebCore::HTMLAnchorElement::hreflang): Ditto. (WebCore::HTMLAnchorElement::setHreflang): Ditto. (WebCore::HTMLAnchorElement::name): Ditto. (WebCore::HTMLAnchorElement::setName): Ditto. (WebCore::HTMLAnchorElement::rel): Ditto. (WebCore::HTMLAnchorElement::setRel): Ditto. (WebCore::HTMLAnchorElement::rev): Ditto. (WebCore::HTMLAnchorElement::setRev): Ditto. (WebCore::HTMLAnchorElement::shape): Ditto. (WebCore::HTMLAnchorElement::setShape): Ditto. (WebCore::HTMLAnchorElement::setTarget): Ditto. (WebCore::HTMLAnchorElement::type): Ditto. (WebCore::HTMLAnchorElement::setType): Ditto. * html/HTMLAnchorElement.h: Ditto. * html/HTMLCollection.cpp: (WebCore::HTMLCollection::checkForNameMatch): Changed argument to an AtomicString and removed the caseSensitive boolean, since we're now always case sensitive. (WebCore::HTMLCollection::namedItem): Ditto. (WebCore::HTMLCollection::nextNamedItem): Ditto. * html/HTMLCollection.h: Ditto. * html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::getNamedItem): Ditto. (WebCore::HTMLFormCollection::getNamedFormItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItemInternal): Ditto. (WebCore::HTMLFormCollection::namedItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItem): Ditto. * html/HTMLFormCollection.h: Ditto. * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::namedItem): Ditto. * html/HTMLSelectElement.h: Ditto. * loader/FrameLoader.cpp: (WebCore::FrameLoader::gotoAnchor): Use the new findAnchor function. * page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::internalLinkElement): Ditto. 2009-01-05 Darin Adler Reviewed by Anders Carlsson. Bug 23104: minor mistakes in init functions for animation and transition events https://bugs.webkit.org/show_bug.cgi?id=23104 Test: fast/events/init-events.html Also fixed two StorageEvent problems the test case uncovered: Made document.createEvent("StorageEvent") work. Allow null values for StorageEvent.oldValue and StorageEvent.newValue. * dom/Document.cpp: (WebCore::Document::createEvent): Sorted alphabetically by the name of the event class. Added StorageEvent. * dom/UIEvent.idl: Fixed typo in a comment. * dom/WebKitAnimationEvent.cpp: (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments. * dom/WebKitTransitionEvent.cpp: (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto. * storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the arguments to initStorageEvent so it can create events with null values for the oldValue and newValue, just like the real storage events. Note that the properties already had ConvertNullStringTo=Null, so this is just the other half of that. 2009-01-05 Darin Adler Reviewed by Alexey Proskuryakov. Bug 23102: turn on unused parameter warnings in WebCore https://bugs.webkit.org/show_bug.cgi?id=23102 First step: Fix the simple cases where we can just remove an argument name. Also made a few more things protected and private. * many files 2009-01-05 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=23115 Create a version of ASSERT for use with otherwise unused variables * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Use the new ASSERT_UNUSED macro. 2009-01-05 Alexey Proskuryakov Non-Mac build fix. * loader/appcache/ApplicationCacheStorage.cpp: Include wtf/StringExtras.h for snprintf. 2009-01-05 Adam Treat Reviewed by George Staikos. Remove unnecessary methods from EmptyFrameLoaderClient * loader/EmptyClients.h: 2009-01-05 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=23077 Make application cache use SQLite built-in user_version * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Changed to track versions with PRAGMA user_version. * loader/appcache/ApplicationCacheResource.h: (WebCore::ApplicationCacheResource::): Used the occasion to get rid of the hole in bitmask that was a leftover from opportunistic cache entries. 2009-01-04 David Smith Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=23084 Avoid redundant AtomicString conversions * dom/Node.cpp: (WebCore::Node::getElementsByTagName): Pass starAtom instead of "*" (WebCore::Node::getElementsByTagNameNS): Take an AtomicString for the namespace URI (WebCore::Node::isDefaultNamespace): Ditto (WebCore::Node::lookupPrefix): Ditto (WebCore::Node::lookupNamespacePrefix): Ditto * dom/Node.h: Ditto 2009-01-04 Darin Adler Reviewed by Oliver Hunt. Bug 23105: canvas setFillColor function ignores alpha argument https://bugs.webkit.org/show_bug.cgi?id=23105 Test: fast/canvas/set-colors.html * html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFillColor): Pass alpha value through instead of ignoring it and always passing 1. * html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor): Fix spelling of transparent in comments. (WebCore::CanvasStyle::applyFillColor): Ditto. 2009-01-04 Darin Adler Bug 23086: REGRESSION(r39540/r39541): Windows build fails due to ICU errors https://bugs.webkit.org/show_bug.cgi?id=23086 * editing/TextIterator.cpp: Check UCONFIG_NO_COLLATION and don't compile in the new search path if it's 0. 2009-01-04 David Kilzer Don't install *.idl and *.in files as resources Reviewed by Oliver Hunt. Don't install these files as resources in the WebCore framework: - WMLAttributeNames.in - WMLTagNames.in - WorkerContext.idl - WorkerLocation.idl - WorkerNavigator.idl * WebCore.xcodeproj/project.pbxproj: Removed resources. 2009-01-04 Simon Fraser Reviewed by Darin Adler https://bugs.webkit.org/show_bug.cgi?id=23090 If an object gets a Layout hint, and the style change will result in the creation of a RenderLayer, then we need to repaint the old position of the object. This was done for transform, but we have to test opacity too. Test: fast/repaint/create-layer-repaint.html * rendering/RenderObject.cpp: (WebCore::RenderObject::styleWillChange): 2009-01-04 Darin Adler Reviewed by Dan Bernstein. Bug 23103: Safari's auto-fill no longer works for