summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/JavaScriptCore/parser/Nodes.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Update src/3rdparty/webkit from trunk.Jocelyn Turcotte2010-04-061-1869/+0
| | | | | | | | Imported from 839d8709327f925aacb3b6362c06152594def97e in branch qtwebkit-2.0 of repository git://gitorious.org/+qtwebkit-developers/webkit/qtwebkit.git Rubber-stamped-by: Simon Hausmann
* Updated WebKit from /home/jturcott/dev/webkit/ to ↵Jocelyn Turcotte2009-11-031-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qtwebkit-4.6-snapshot-20091003 ( 8f810287200d21aded375664cc0a6ac0476dbdea ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2009-10-29 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Remove QWebView::guessUrlFromString() and replace its use with the new QUrl::fromUserInput() if using Qt 4.6 or newer. * Api/qwebview.cpp: * Api/qwebview.h: * QGVLauncher/main.cpp: (urlFromUserInput): (WebPage::applyProxy): (MainWindow::load): * QtLauncher/main.cpp: (urlFromUserInput): (MainWindow::MainWindow): (MainWindow::changeLocation): * tests/qwebview/tst_qwebview.cpp: 2009-10-28 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Serialize directly to the stream, and not first to an QByteArray, that is later serialized. That is slower and also uses more bytes. * Api/qwebhistory.cpp: (operator<<): (operator>>): 2009-10-28 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Eric Seidel. [Qt] WebFrame::counterValueForElementById must not be exposed https://bugs.webkit.org/show_bug.cgi?id=30882 * Api/qwebframe.cpp: (qt_drt_counterValueForElementById): * Api/qwebframe.h: 2009-10-27 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Darin Adler. Provide a way to get counter values with layoutTestContoller https://bugs.webkit.org/show_bug.cgi?id=30555 * Api/qwebframe.cpp: (QWebFrame::counterValueForElementById): (QWebHitTestResult::frame): * Api/qwebframe.h: 2009-10-28 Antonio Gomes <tonikitoo@webkit.org> Pushing missing WebKit/qt/tests/qwebframe/resources/ dir from bug 29248. [Qt] [API] Make it possible to have 'invisible' loads https://bugs.webkit.org/show_bug.cgi?id=29248 * tests/qwebframe/resources/image2.png: Copied from WebKit/qt/tests/qwebelement/image.png. 2009-10-28 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. [Qt] QWebHistory::saveState() is inconsistent with the Qt API https://bugs.webkit.org/show_bug.cgi?id=30710 Make the versioning internal and enforce it in the WebCore part. Adjust the comments, as well as remove now dead code. * Api/qwebhistory.cpp: (operator<<): (operator>>): * Api/qwebhistory.h: 2009-10-28 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Holger Freyther. [Qt] QWebHistory::saveState() is inconsistent with the Qt API https://bugs.webkit.org/show_bug.cgi?id=30710 Remove the QWebHistory::saveState() and ::restoreState() as they are inconsistent with the Qt API. Update unittests to reflect the change. * Api/qwebhistory.cpp: (operator<<): (operator>>): * Api/qwebhistory.h: * tests/qwebhistory/tst_qwebhistory.cpp: (saveHistory): (restoreHistory): (tst_QWebHistory::saveAndRestore_crash_1): (tst_QWebHistory::saveAndRestore_crash_2): (tst_QWebHistory::saveAndRestore_crash_3): (tst_QWebHistory::clear): 2009-10-27 Antonio Gomes <tonikitoo@webkit.org> Reviewed by Holger Freyther. Complementary fix to bug 30779. By mistake I used QWeakPointer's toStrongRef() method which docs explicitly say to not be used in this situation (when the tracked pointer is devired from QObject). Instead QWeakPointer's data() is recommended. * Api/qwebpage.cpp: (QWebPage::view): 2009-10-27 Holger Hans Peter Freyther <zecke@selfish.org> Reviewed by Simon Fraser. Change HitTestResult methods to use (3d) transformation aware methods https://bugs.webkit.org/show_bug.cgi?id=27347 The HitTestResult::boundingBox method was removed. The RenderObject must be used directly. In contrast to the old HitTestResult::boundingBox method this code must use a (3d) transformation aware method to not run into an assert in SVGRenderBase::mapLocalToContainer. * Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): 2009-10-27 Kenneth Rohde Christiansen <kenneth@webkit.org> Rubberstamped by Oliver Hunt. Change two methods to be internal for DRT use only. Part of [Qt] Review all new API in Qt 4.6 https://bugs.webkit.org/show_bug.cgi?id=29843#c11 * Api/qwebsecurityorigin.cpp: (qt_drt_whiteListAccessFromOrigin): (qt_drt_resetOriginAccessWhiteLists): (QWebSecurityOrigin::localSchemes): * Api/qwebsecurityorigin.h: 2009-10-27 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Make sure that initiating a rotation while rotating won't make it end up at rotation positions that are not a multiply of 180 degrees. * QGVLauncher/main.cpp: (MainView::animatedFlip): 2009-10-27 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed Qt build fix. Update the tests as well to the new API change. * tests/qwebelement/tst_qwebelement.cpp: (tst_QWebElement::clear): 2009-10-27 Kenneth Rohde Christiansen <kenneth@webkit.org> Rubberstamped by Tor Arne Vestbø. [Qt] QWebElement::removeChildren() should be QWebElement::removeAllChildren() https://bugs.webkit.org/show_bug.cgi?id=30630 * Api/qwebelement.cpp: (QWebElement::removeAllChildren): * Api/qwebelement.h: 2009-10-27 Antonio Gomes <tonikitoo@webkit.org> Reviewed by Antti Koivisto and Holger Freyther. Make QWebPagePrivate's (QWidget) view to be a QWeakPointer. https://bugs.webkit.org/show_bug.cgi?id=30779 The fact that it was been set from external objects of qwebpage and not being deleted internally can lead to dangling references. * Api/qgraphicswebview.cpp: (QGraphicsWebView::~QGraphicsWebView): * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): (QWebPagePrivate::createContextMenu): (QWebPagePrivate::handleSoftwareInputPanel): (QWebPagePrivate::keyPressEvent): (QWebPage::setView): (QWebPage::view): (QWebPage::javaScriptAlert): (QWebPage::javaScriptConfirm): (QWebPage::javaScriptPrompt): (QWebPage::shouldInterruptJavaScript): (QWebPage::createWindow): (QWebPage::extension): (QWebPage::chooseFile): (QWebPage::userAgentForUrl): * Api/qwebpage_p.h: * Api/qwebview.cpp: (QWebView::~QWebView): 2009-10-26 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed documentation fix from David Boddie (Qt Doc Team) Removes the check around the RenderHints property documentation that was clearly added to synchronize the source and header files when the #if !defined(Q_OS_SYMBIAN) guards was added to the property. The documentation has also been updated to ensure that Symbian users know that there is no actual RenderHints property on their platform. * Api/qwebview.cpp: 2009-10-26 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed documentation fix from David Boddie (Qt Doc Team) Ensure that qdoc will always see the RenderHints property. The property was only defined in the header file if the Q_OS_SYMBIAN symbol was not defined, resulting in the property not showing up in the Qt documentation just because one platform doesn't support it. A follow up commit will improve the documentation for the property and note that it is not supported on the Symbiam platform. * Api/qwebview.h: 2009-10-26 Benjamin Poulain <benjamin.poulain@nokia.com> Reviewed by Tor Arne Vestbø. [Qt] Reintroduce QWebElementCollection Revert the patch that has replaced QWebElementCollection with QList<QWebElement>. Update the tests accordingly. Remove the constness of the return type of QWebElement operator[]. https://bugs.webkit.org/show_bug.cgi?id=30767 * Api/qwebelement.cpp: (QWebElement::findAll): (QWebElementCollectionPrivate::QWebElementCollectionPrivate): (QWebElementCollectionPrivate::create): (QWebElementCollection::QWebElementCollection): (QWebElementCollection::operator=): (QWebElementCollection::~QWebElementCollection): (QWebElementCollection::operator+): (QWebElementCollection::append): (QWebElementCollection::count): (QWebElementCollection::at): (QWebElementCollection::toList): * Api/qwebelement.h: (const_iterator::begin): (const_iterator::end): (const_iterator::operator[]): * Api/qwebframe.cpp: (QWebFrame::findAllElements): * Api/qwebframe.h: * QtLauncher/main.cpp: (MainWindow::selectElements): * tests/qwebelement/tst_qwebelement.cpp: (tst_QWebElement::simpleCollection): (tst_QWebElement::iteration): (tst_QWebElement::emptyCollection): (tst_QWebElement::appendCollection): (tst_QWebElement::nullSelect): (tst_QWebElement::hasSetFocus): (tst_QWebElement::render): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): 2009-10-24 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Holger Freyther. [Qt] [Symbian] Set the capability and memory required to run QtWebKit for Symbian https://bugs.webkit.org/show_bug.cgi?id=30476 Assign ReadUserData WriteUserData NetworkServices Symbian capabilities to all QtWebkit executables. * QGVLauncher/QGVLauncher.pro: * QtLauncher/QtLauncher.pro: * tests/benchmarks/loading/tst_loading.pro: * tests/benchmarks/painting/tst_painting.pro: * tests/qgraphicswebview/qgraphicswebview.pro: * tests/qwebelement/qwebelement.pro: * tests/qwebframe/qwebframe.pro: * tests/qwebhistory/qwebhistory.pro: * tests/qwebhistoryinterface/qwebhistoryinterface.pro: * tests/qwebpage/qwebpage.pro: * tests/qwebplugindatabase/qwebplugindatabase.pro: * tests/qwebview/qwebview.pro: 2009-10-22 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (speculative build fix - qt is currently already broken!) Build fix following bug #30696. * Api/qwebelement.cpp: (setupScriptContext): * Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript): 2009-10-22 Shu Chang <Chang.Shu@nokia.com> Reviewed by Eric Seidel. [Qt] Enable track visited links in QWebPage https://bugs.webkit.org/show_bug.cgi?id=30574 Test: fast/history/clicked-link-is-visited.html * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): 2009-10-22 Girish Ramakrishnan <girish@forwardbias.in> Reviewed by Eric Seidel. [Qt] Add Print Shortcut to QtLauncher https://bugs.webkit.org/show_bug.cgi?id=30682 * QtLauncher/main.cpp: (MainWindow::setupUI): 2009-10-22 Antonio Gomes <tonikitoo@webkit.org> Rubberstamped by Tor Arne Vestbø. Code standarlization for QGVLauncher. 1) Made member initilization lists in constructors to be per line. 2) Made applyProxy method inline as all other methods in WebPage class. * QGVLauncher/main.cpp: (WebPage::WebPage): (WebPage::applyProxy): (MainView::MainView): (MainWindow::MainWindow): (MainWindow::init): 2009-10-22 Antonio Gomes <tonikitoo@webkit.org> Reviewed by Tor Arne Vestbø. Add a Y-Axis rotation to QGVLauncher. It uses the QStateMachine API from Qt 4.6. * QGVLauncher/main.cpp: (WebView::WebView): (WebView::setYRotation): (WebView::yRotation): (MainView::flip): (MainView::animatedYFlip): (SharedScene::SharedScene): (SharedScene::webView): (MainWindow::init): (MainWindow::animatedYFlip): (MainWindow::buildUI): 2009-10-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed By Adam Barth. Add some actions to the menu for cursor debugging. GraphicsView based launcher only. * QGVLauncher/main.cpp: (MainView::setWaitCursor): (MainView::resetCursor): (MainView::flip): (MainWindow::setWaitCursor): (MainWindow::resetCursor): (MainWindow::buildUI): 2009-10-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Rubberstamped by Adam Barth. Remove clipRenderToViewport as agreed upon in https://bugs.webkit.org/show_bug.cgi?id=29843 * Api/qwebframe.cpp: * Api/qwebframe.h: * Api/qwebframe_p.h: (QWebFramePrivate::QWebFramePrivate): 2009-10-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Adam Barth. Update the tests to test the new render functionality, and take into consideration that render() clips to the frame itself as well as the viewport. QWebFrame::render() now always clips, so the old tests were bogus. Rendering pure contents (no scrollbars etc) without clipping can now be accomplished using QWebFrame::documentElement()->render(...) * Api/qwebframe.cpp: * Api/qwebframe.h: * Api/qwebframe_p.h: (QWebFramePrivate::QWebFramePrivate): * tests/qwebframe/tst_qwebframe.cpp: 2009-10-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Rubberstamped by Adam Barth. As we do not support rendering a QWebFrame without it being clipped the the frame as well as the viewport, we now set the viewport size to the size of the contents. Rendering pure contents (no scrollbars etc) without clipping can be acomplished using QWebFrame::documentElement()->render(...) * tests/qwebelement/tst_qwebelement.cpp: (tst_QWebElement::render): 2009-10-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Add menu item to dump the plugin list to the console, which can be handy for debugging. * QtLauncher/main.cpp: (MainWindow::dumpPlugins): (MainWindow::setupUI): 2009-10-19 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Introduce new render method on QWebFrame, which supports specifying which layers to render (scrollbars, contents, pan-icon). * Api/qwebframe.cpp: (QWebFramePrivate::renderPrivate): (QWebFrame::render): * Api/qwebframe.h: * Api/qwebframe_p.h: 2009-10-19 Antonio Gomes <tonikitoo@webkit.org> Reviewed by Ariya Hidayat. [Qt] Infinite loop (leading to crash) when setting cursor in QGraphicsWebView https://bugs.webkit.org/show_bug.cgi?id=30549 Patch reimplements QGraphicsItem's itemChange method, and make CursorChange event to be emitted after cursor has already been set. QWidget::setCursor send the event just after it sets the cursor, then patch makes both behaviors compatible. * Api/qgraphicswebview.cpp: (QGraphicsWebView::itemChange): * Api/qgraphicswebview.h:
* Updated WebKit from /home/jturcott/dev/webkit/ to ↵Jocelyn Turcotte2009-10-221-5/+7
| | | | | | | qtwebkit-4.6-snapshot-22102009 ( 0639bb8e812c8923287cd5523248ca64fa5f7a50 ) Changes in WebKit/qt since the last update: Jocelyn: fatal error from script, sha1 in src/3rdparty/webkit/VERSION is bad
* Updated WebKit from /home/joce/dev/qtwebkit3/ to ↵Jocelyn Turcotte2009-09-241-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qtwebkit-4.6-snapshot-24092009 ( 75c44947a340d74a9e0098a3dfffabce0c9512ef ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2009-09-24 Martin Smith <msmith@trolltech.com> Reviewed by Simon Hausmann. qdoc: Added \brief texts to all the since 4.6 functions. * Api/qwebhistory.cpp: 2009-09-23 J-P Nurmi <jpnurmi@gmail.com> Reviewed by Simon Hausmann. Prevent QWebPage::setView() from changing the viewport size on the fly in case the view doesn't actually change. QWebPage::setView() is called upon every QWebGraphicsItem::hoverMoveEvent(), which forced the viewport size to be equal to the size of the whole graphics view. https://bugs.webkit.org/show_bug.cgi?id=29676 * Api/qwebpage.cpp: (QWebPage::setView): 2009-09-23 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. [Qt] Crash fix in QWebHistory back and forward methods. QWebHistory::back() and QWebHistory::forward() were crashing on ASSERT in WebCore::BackForwardList. The methods should check canGoBack() and canGoForward() at the beginning. https://bugs.webkit.org/show_bug.cgi?id=29675 * Api/qwebhistory.cpp: (QWebHistory::back): (QWebHistory::forward): 2009-09-23 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. [Qt] Bug fix. QWebHistory should call QWebPage::updateNavigationActions In QWebHistory's methods that change item count or current item call to QWebPage::updateNavigationActions should be executed. QWebHistory::clear() and QWebHistory::restorState() were changed. New helper method, QWebPagePrivate accesor, were created in QWebHistoryPrivate class. Two autotest were developed. https://bugs.webkit.org/show_bug.cgi?id=29246 * Api/qwebhistory.cpp: (QWebHistory::clear): (QWebHistory::restoreState): (QWebHistoryPrivate::page): * Api/qwebhistory_p.h: * tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::saveAndRestore_1): (tst_QWebHistory::clear): 2009-09-23 Norbert Leser <norbert.leser@nokia.com> Reviewed by Tor Arne Vestbø. Need to guard QX11Info include with Q_WS_X11. That class may not be available (in QT 4.5 for Symbian, for instance). Completes fixes in r48627 and r48604. * Api/qwebgraphicsitem.cpp: * Api/qwebview.cpp: 2009-09-22 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed by Simon Hausmann. [Qt] Add default timeout while waiting for signals in QWebPage auto tests. https://bugs.webkit.org/show_bug.cgi?id=29637 * tests/qwebpage/tst_qwebpage.cpp: (waitForSignal): 2009-09-22 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reivewed by Simon Hausmann. Fix the Qt/Mac build after r48604 (Implement new QWebPageClient class) There's no QWidget::x11Info() on Mac, and setPlatformPluginWidget() takes a QWidget*, not a QWebPageClient* * Api/qwebgraphicsitem.cpp: (QWebGraphicsItemPrivate::screenNumber): * Api/qwebview.cpp: (QWebViewPrivate::screenNumber): 2009-09-21 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. For Qt, platformPageClient() will now return a class derived from the QWebPageClient, so the patch adapts our Qt hooks to go though this class and not depend on the QWebView. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItemPrivate::scroll): (QWebGraphicsItemPrivate::update): (QWebGraphicsItemPrivate::cursor): (QWebGraphicsItemPrivate::updateCursor): (QWebGraphicsItemPrivate::screenNumber): (QWebGraphicsItemPrivate::winId): (QWebGraphicsItem::event): (QWebGraphicsItem::setPage): * Api/qwebgraphicsitem.h: * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): * Api/qwebpage_p.h: * Api/qwebview.cpp: (QWebViewPrivate::scroll): (QWebViewPrivate::update): (QWebViewPrivate::cursor): (QWebViewPrivate::updateCursor): (QWebViewPrivate::screenNumber): (QWebViewPrivate::winId): (QWebView::setPage): (QWebView::event): * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::repaint): (WebCore::ChromeClientQt::scroll): (WebCore::ChromeClientQt::platformPageClient): 2009-09-21 Yael Aharon <yael.aharon@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=29609 Build fix for windows when using Qt 4.5.0. * Api/qwebpage.cpp: (QWebPage::userAgentForUrl): 2009-09-19 Benjamin Poulain <benjamin.poulain@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=29345 The tests of QWebFrame did not use QTRY_VERIFY for tests involving the event loop. * tests/qwebframe/tst_qwebframe.cpp: * tests/util.h: Added. Copy of tests/shared/util.h of Qt 2009-09-19 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. [Qt] Add an autotest stub for QWebGraphicsItem. It just calls all the functions and makes sure they don't crash. * tests/qwebgraphicsitem/qwebgraphicsitem.pro: Added. * tests/qwebgraphicsitem/tst_qwebgraphicsitem.cpp: Added. (tst_QWebGraphicsItem::qwebgraphicsitem): * tests/tests.pro: 2009-09-18 Norbert Leser <norbert.leser@nokia.com> Reviewed by Eric Seidel. Corrected the Symbian specific UID3 values to be assigned from the "unprotected" pool that permits self-signing of those test and demo executables. (Added new UID3 values where they were missing for new components.) * QGVLauncher/QGVLauncher.pro: * QtLauncher/QtLauncher.pro: * tests/benchmarks/loading/tst_loading.pro: * tests/benchmarks/painting/tst_painting.pro: * tests/qwebelement/qwebelement.pro: * tests/qwebframe/qwebframe.pro: * tests/qwebhistory/qwebhistory.pro: * tests/qwebhistoryinterface/qwebhistoryinterface.pro: * tests/qwebpage/qwebpage.pro: * tests/qwebplugindatabase/qwebplugindatabase.pro: * tests/qwebview/qwebview.pro: 2009-09-17 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. Make PlatformWindow return something else than PlatformWidget https://bugs.webkit.org/show_bug.cgi?id=29085 Reflect the rename of platformWindow and it's return type. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::platformPageClient): * WebCoreSupport/ChromeClientQt.h: 2009-09-18 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed by Simon Hausmann. [Qt] Add persistence support for configuration options in the inspector. * Api/qwebinspector.cpp: * QtLauncher/main.cpp: (main): * WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientQt::populateSetting): (WebCore::InspectorClientQt::storeSetting): (WebCore::variantToSetting): (WebCore::settingToVariant): 2009-09-17 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. Improve documentation for Page Cache. * Api/qwebsettings.cpp: 2009-09-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Simon Hausmann. [Qt] Update QWebSettings::setUserStyleSheetUrl() docs and test https://bugs.webkit.org/show_bug.cgi?id=29081 The documentation now specifies that the URL has to be a local file or a a data-URL (with utf-8 and base64-encoded data), as these are the only two schemes that the current code path accepts. The auto-test has been updated to reflect this limitation. At a later point we should concider adding API for the new way of doing both user defined stylesheets and scripts. * Api/qwebsettings.cpp: * tests/qwebpage/tst_qwebpage.cpp:
* Updated WebKit from /home/joce/dev/qtwebkit/ to ↵Jocelyn Turcotte2009-09-181-322/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qtwebkit-4.6-snapshot-18092009 ( 15c07fb8d7fa5e93c939aa7eb21c06e19c754cee ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2009-09-17 Janne Koskinen <janne.p.koskinen@digia.com> Reviewed by Simon Hausmann. Symbian build fix. Moved the #ifdefs around _q_cleanupLeakMessages() into the function definition. QMake is not being able to distinguish between release and debug builds in Symbian build. This is a Symbian toolchain issue. * Api/qwebpage.cpp: (QWebPagePrivate::_q_cleanupLeakMessages): * Api/qwebpage.h: * Api/qwebpage_p.h: 2009-09-17 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed by Simon Hausmann. Small cosmetic documentation fixlet in the QWebInspector. * Api/qwebinspector.cpp: 2009-09-16 Benjamin C Meyer <benjamin.meyer@torchmobile.com> Reviewed by Eric Seidel. Detect and add Windows7 properly to the user agent. * Api/qwebpage.cpp: (QWebPage::userAgentForUrl): 2009-09-16 Andras Becsi <andrewbecsi@yahoo.co.uk> Rubberstamped by Kenneth Christiansen. [Qt] Build fix for previous changes. * QGVLauncher/main.cpp: (MainView::flip): 2009-09-16 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed potential Qt < 4.6 build fix. * QGVLauncher/main.cpp: (MainView::flip): 2009-09-16 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. Add a "Flip effect" to our GraphicsView based launcher. * QGVLauncher/main.cpp: (MainView::resizeEvent): (MainView::flip): (MainWindow::flip): (MainWindow::buildUI): 2009-09-16 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> Rubber-stamped by Simon Hausmann. [Qt] Typo fix. Pass the window object to the Format menu. In this way Qt can free its internal graphical objects during exit. * QtLauncher/main.cpp: (MainWindow::setupUI): 2009-09-16 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed by Tor Arne Vestbø. [Qt] Build break fix on gcc ARM. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItemPrivate::_q_doLoadProgress): 2009-09-16 Warwick Allison <warwick.allison@nokia.com> Reviewed by Simon Hausmann. Fix a crash in QWebFrame::hasFocus() with a simple null pointer check when the focused frame is null. We do the same check in other places where we call kit(). * Api/qwebframe.cpp: (QWebFrame::hasFocus): 2009-09-16 Jure Repinc <jlp@holodeck1.com> Reviewed by Simon Hausmann. Fixed a typo found during translation. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::interruptForPolicyChangeError): 2009-09-14 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. [Qt] QWebGraphicsItem should check for null QWebPage. https://bugs.webkit.org/show_bug.cgi?id=29185 Don't crash in QWebGraphicsItem when the page is still null, by either checking if it's the case or constructing the default one. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItem::icon): (QWebGraphicsItem::setZoomFactor): (QWebGraphicsItem::zoomFactor): (QWebGraphicsItem::setGeometry): (QWebGraphicsItem::load): (QWebGraphicsItem::setHtml): (QWebGraphicsItem::toHtml): (QWebGraphicsItem::setContent): (QWebGraphicsItem::history): (QWebGraphicsItem::settings): 2009-09-11 David Boddie <dboddie@trolltech.com> Reviewed by Simon Hausmann. Doc: Note that Netscape plugins are only available on desktop platforms. * docs/qtwebkit.qdoc: 2009-09-11 Martin Smith <msmith@trolltech.com> Reviewed by Simon Hausmann. Adjust the name of the contentspage for the documentation to the new name used in Qt 4.6. * docs/qtwebkit.qdoc: 2009-09-11 Ariya Hidayat <ariya.hidayat@nokia.com> Reviewed by Simon Hausmann. Changed URLs from qtsoftware.com to qt.nokia.com, as part of a general renaming. * Api/qwebpluginfactory.cpp: * docs/webkitsnippets/simple/main.cpp: (main): * docs/webkitsnippets/webpage/main.cpp: (main): 2009-09-11 Volker Hilsheimer <volker.hilsheimer@nokia.com> Reviewed by Simon Hausmann. Restructure the documentation, both on a file and on a content level. * Api/qwebdatabase.cpp: * Api/qwebelement.cpp: * Api/qwebframe.cpp: * Api/qwebhistory.cpp: * Api/qwebhistoryinterface.cpp: * Api/qwebpage.cpp: * Api/qwebpluginfactory.cpp: * Api/qwebsecurityorigin.cpp: * Api/qwebsettings.cpp: * Api/qwebview.cpp: * docs/qtwebkit.qdoc: 2009-09-11 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=29136 [Qt] emit microFocusChanged() signal when no QWidget-based view is present. emit microFocusChange() signal regardless of view. * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::setInputMethodState): 2009-09-11 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=28806 [Qt] Make the WebInspector available as a QWidget. * Api/headers.pri: * Api/qwebelement.cpp: (QWebElement::enclosingElement): * Api/qwebelement.h: * Api/qwebinspector.cpp: Added. * Api/qwebinspector.h: Added. * Api/qwebinspector_p.h: Added. * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): (QWebPagePrivate::setInspector): (QWebPagePrivate::getOrCreateInspector): (QWebPagePrivate::inspectorController): (QWebPage::~QWebPage): (QWebPage::triggerAction): * Api/qwebpage.h: * Api/qwebpage_p.h: * Api/qwebsettings.cpp: * QtLauncher/main.cpp: (MainWindow::MainWindow): * WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientWebPage::InspectorClientWebPage): (WebCore::InspectorClientWebPage::createWindow): (WebCore::InspectorClientQt::createPage): (WebCore::InspectorClientQt::showWindow): (WebCore::InspectorClientQt::closeWindow): (WebCore::InspectorClientQt::attachWindow): (WebCore::InspectorClientQt::detachWindow): (WebCore::InspectorClientQt::updateWindowTitle): * WebCoreSupport/InspectorClientQt.h: * docs/webkitsnippets/qtwebkit_qwebinspector_snippet.cpp: Added. 2009-09-10 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Eric Seidel. [Qt] Fix comparison between signed and unsigned integer warnings https://bugs.webkit.org/show_bug.cgi?id=29162 No functional change. * Api/qwebelement.cpp: (QWebElement::findAll): * Api/qwebhistory.cpp: (QWebHistory::items): (QWebHistory::backItems): (QWebHistory::forwardItems): (QWebHistory::saveState): * Api/qwebplugindatabase.cpp: (QWebPluginDatabase::setSearchPaths): * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::runOpenPanel): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin): 2009-09-10 Simon Hausmann <hausmann@webkit.org> Rubber-stamped by Ariya Hidayat. Fix a bunch of qdoc warnings: Invalid references, non-standard wording, etc. * Api/qwebelement.cpp: * Api/qwebgraphicsitem.cpp: * Api/qwebsecurityorigin.cpp: 2009-09-10 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Fix context menu event delivery with QWebGraphicsItem. Re-implement the correct context menu virtual function using a QGraphicsSceneContextMenuEvent and forward & handle it in QWebPage. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItem::contextMenuEvent): * Api/qwebgraphicsitem.h: * Api/qwebpage.cpp: (QWebPagePrivate::contextMenuEvent): (QWebPage::event): * Api/qwebpage_p.h: 2009-09-10 Laszlo Gombos <laszlo.1.gombos@nokia.com> Unreviewed. Build fix for QtWebKit for Mac after r48219. qevent and qstyleoption are QtGui interfaces. * Api/qwebgraphicsitem.cpp: * Api/qwebgraphicsitem.h: 2009-09-09 Simon Hausmann <hausmann@webkit.org> Reviewed by Tor Arne Vestbø. Call the right base class function QGraphicsWidget::event() instead of skipping it and using QObject::event() instead. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItem::event): 2009-09-09 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed. Fix comment at Tor Arne Vestbø's request. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItem::sceneEvent): (QWebGraphicsItem::event): 2009-09-09 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Implement some virtual event methods so that we can fix event-related bugs in Qt patch releases. * Api/qwebgraphicsitem.cpp: (QWebGraphicsItem::sceneEvent): (QWebGraphicsItem::event): * Api/qwebgraphicsitem.h: 2009-09-09 Kenneth Rohde Christiansen <kenneth@webkit.org>, Antonio Gomes <antonio.gomes@openbossa.org> Reviewed by Simon Hausmann. Add a new QGraphicsWidget based version of the "QWebView" under the name "QWebGraphicsItem". https://bugs.webkit.org/show_bug.cgi?id=28862 Includes an alternative Qt launcher using the QGraphicsView. * Api/headers.pri: * Api/qwebgraphicsitem.cpp: Added. * Api/qwebgraphicsitem.h: Added. * Api/qwebpage.h: * QGVLauncher/QGVLauncher.pro: Copied from WebKit/qt/QtLauncher/QtLauncher.pro. * QGVLauncher/main.cpp: Added. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::repaint): (WebCore::ChromeClientQt::scroll): 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org> Unreviewed build fix. Potential build fix for Qt 4.5 * Api/qwebpage.cpp: (QWebPagePrivate::mousePressEvent): 2009-09-08 Benjamin Poulain <benjamin.poulain@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=29007 Add a test for the signal QWebFrame::javaScriptWindowObjectCleared() * tests/qwebframe/tst_qwebframe.cpp: 2009-09-08 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Simon Hausmann. [Qt] Fix unused variable warnings https://bugs.webkit.org/show_bug.cgi?id=29018 * Api/qwebpage.cpp: (QWebPagePrivate::keyPressEvent): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::startDownload): (WebCore::FrameLoaderClientQt::createFrame): 2009-09-08 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Ariya Hidayat. [Qt] Use the declaration order in initializer lists https://bugs.webkit.org/show_bug.cgi?id=29017 * Api/qwebframe_p.h: 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. Add support for handling QGraphicsScene events. * Api/qwebpage.cpp: (QWebPagePrivate::mouseMoveEvent): (QWebPagePrivate::mousePressEvent): (QWebPagePrivate::mouseDoubleClickEvent): (QWebPagePrivate::mouseTripleClickEvent): (QWebPagePrivate::handleClipboard): (QWebPagePrivate::mouseReleaseEvent): (QWebPagePrivate::wheelEvent): (QWebPagePrivate::dragEnterEvent): (QWebPagePrivate::dragLeaveEvent): (QWebPagePrivate::dragMoveEvent): (QWebPagePrivate::dropEvent): (QWebPage::event): * Api/qwebpage_p.h: 2009-09-08 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Simon Hausmann. [Qt] Make cursor set cleaner in QtWebKit Api: eliminate SetCursorEvent hack. https://bugs.webkit.org/show_bug.cgi?id=28865 Clean up the unserCursor hack to use the QCursor set as a property of the QWidget by WebCore::WidgetQt. Remove all code that are no longer necessary for getting cursor change events. Patch by Kenneth Rohde Christiansen <kenneth@webkit.org> and Antonio Gomes <antonio.gomes@openbossa.org> on 2009-09-07 * Api/qwebpage.cpp: * Api/qwebpage_p.h: * Api/qwebview.cpp: (QWebViewPrivate::QWebViewPrivate): (QWebView::event): 2009-09-08 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Simon Hausmann. [Qt] QtWebKit single API to enable persistency https://bugs.webkit.org/show_bug.cgi?id=28682 Disable LocalStorage, ApplicationCache, HTML5 offline storage by default. If persistency is enabled the default directory for LocalStorage and ApplicationCache is now based on QDesktopServices::DataLocation and not QDesktopServices::CacheLocation (as it is expected to keep this data around after a reboot). If persistency is enabled initialize HTML5 offline storage as well - this fixed offline Storage for QtLauncher. * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): (QWebSettings::enablePersistentStorage): * Api/qwebsettings.h: Add a new API called enablePersistentStorage * QtLauncher/main.cpp: Use the new enablePersistentStorage API (main): 2009-09-07 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. Speed up the QWebPluginInfo::supportsMimeType() function. https://bugs.webkit.org/show_bug.cgi?id=27651 Instead of going through the MIME types list constructed with mimeTypes() function, look up the internal mimeToDescriptions map. * Api/qwebplugindatabase.cpp: (QWebPluginInfo::supportsMimeType): 2009-09-07 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. Speed up the QWebPluginInfo::mimeTypes() function. https://bugs.webkit.org/show_bug.cgi?id=27651 Instead of constructing a list of MIME types every time it is called, do this only once. * Api/qwebplugindatabase.cpp: (QWebPluginInfo::mimeTypes): (QWebPluginInfo::operator=): * Api/qwebplugindatabase.h: * tests/qwebplugindatabase/tst_qwebplugindatabase.cpp: (tst_QWebPluginDatabase::operatorassign_data): (tst_QWebPluginDatabase::operatorassign): 2009-09-07 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. Remove the private classes from QWebPluginDatabase. https://bugs.webkit.org/show_bug.cgi?id=27651 Instead, hold the PluginDatabase and PluginPackage objects as class members and take care of refcounting on our own instead of using RefPtr. This way we not only made the code cleaner but also got rid of redundant allocations when constructing null QWebPluginInfo objects. The private classes have been forward-declared and the d-pointers left to be on the safe side. * Api/qwebplugindatabase.cpp: (QWebPluginInfo::QWebPluginInfo): (QWebPluginInfo::~QWebPluginInfo): (QWebPluginInfo::name): (QWebPluginInfo::description): (QWebPluginInfo::mimeTypes): (QWebPluginInfo::path): (QWebPluginInfo::isNull): (QWebPluginInfo::setEnabled): (QWebPluginInfo::isEnabled): (QWebPluginInfo::operator==): (QWebPluginInfo::operator!=): (QWebPluginInfo::operator=): (QWebPluginDatabase::QWebPluginDatabase): (QWebPluginDatabase::~QWebPluginDatabase): (QWebPluginDatabase::plugins): (QWebPluginDatabase::searchPaths): (QWebPluginDatabase::setSearchPaths): (QWebPluginDatabase::addSearchPath): (QWebPluginDatabase::refresh): (QWebPluginDatabase::pluginForMimeType): (QWebPluginDatabase::setPreferredPluginForMimeType): * Api/qwebplugindatabase.h: * Api/qwebplugindatabase_p.h: Removed. 2009-09-05 Jakub Wieczorek <faw217@gmail.com> Reviewed by Eric Seidel. [Qt] r47424 broke binary compatibility https://bugs.webkit.org/show_bug.cgi?id=28996 Append the new DnsPrefetchEnabled attribute at the end of the enum. * Api/qwebsettings.h: 2009-09-04 Mark Mentovai <mark@chromium.org> Reviewed by Dave Hyatt. https://bugs.webkit.org/show_bug.cgi?id=28614 Account for scrollbar state changes that occur during layout. * Api/qwebframe.cpp: (QWebFrame::setScrollBarPolicy): Eliminate duplicated (and incorrect) scrollbar mode tracking between FrameView and ScrollView. 2009-09-04 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Eric Seidel. [Qt] Fix tst_QWebPage::database autotest failure https://bugs.webkit.org/show_bug.cgi?id=28961 Make sure that the test case enables the feature before the feature gets tested * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::database): 2009-09-04 Benjamin C Meyer <benjamin.meyer@torchmobile.com> Reviewed by Eric Seidel. Any QtWebKit application crashes on exit if the inspector is used during the session rather then exiting. If a QWebView has a QWebPage that is destroyed the QWebView does not update its pointer and will crash the next time it access the page pointers (such as in its destructor). InspectorClientView should not call deleteLater when the page is destroyed because it does not have a parent and is a top level widget. close() needs to be called so that QApplication can exit the application if quitOnLastWindowClosed is set and a InspectorClientView is the last window, otherwise the application will never exit. * Api/qwebview.cpp: (QWebViewPrivate::_q_pageDestroyed): (QWebView::setPage): * Api/qwebview.h: * WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientView::InspectorClientView): 2009-09-03 Adam Barth <abarth@webkit.org> Reviewed by eric@webkit.org. https://bugs.webkit.org/show_bug.cgi?id=24696 Stub implementations of mixed content methods of FrameLoaderClient. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::didDisplayInsecureContent): (WebCore::FrameLoaderClientQt::didRunInsecureContent): * WebCoreSupport/FrameLoaderClientQt.h: 2009-09-03 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Eric Seidel. [Qt] Add a setting to turn SessionStorage on/off https://bugs.webkit.org/show_bug.cgi?id=28836 * Api/qwebsettings.cpp: (QWebSettingsPrivate::apply): (QWebSettings::QWebSettings): * Api/qwebsettings.h: * tests/qwebpage/tst_qwebpage.cpp: (testFlag): (tst_QWebPage::testOptionalJSObjects): 2009-09-02 Richard Moore <rich@kde.org> Reviewed by Tor Arne Vestbø. [Qt] Make sure we relayout the page after evaluating JS https://bugs.webkit.org/show_bug.cgi?id=28235 QtWebKit does not always seem to reflow the page when evaluating javascript. This patch changes the way evaluateJavaScript works to use the frameloader which ensures that this is done properly. * Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript): * tests/qwebframe/tst_qwebframe.cpp: 2009-08-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=25889 [GTK] scrollbar policy for main frame is not implementable Add empty implementation for new ChromeClient method. * WebCoreSupport/ChromeClientQt.h: (WebCore::ChromeClientQt::scrollbarsModeDidChange): 2009-08-27 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Ariya Hidayat. QWebHistory::clear() modifications. Clear() method was changed. If QWebHistory is empty (there is no elements even current) clear() do nothing. If there at least one element clear() will delete everything apart of current. New autotests in QWebHistory New autotests were added to QWebHistory. They should check some crashes in save and restore state process and clear() method and general behavior on where QWebHistory::count() == 0 or QWebHistory::count() == 1 Bugzilla: https://bugs.webkit.org/show_bug.cgi?id=28711 * Api/qwebhistory.cpp: (QWebHistory::clear): * tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::back): (tst_QWebHistory::forward): (tst_QWebHistory::saveAndRestore_crash_1): (tst_QWebHistory::saveAndRestore_crash_2): (tst_QWebHistory::saveAndRestore_crash_3): (tst_QWebHistory::clear): 2009-08-27 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Ariya Hidayat. [Qt] Cleanup, old and commented part of source code was removed. Fix some formatting problems. https://bugs.webkit.org/show_bug.cgi?id=28712 * Api/qwebhistory_p.h: (QWebHistoryPrivate::QWebHistoryPrivate): 2009-08-26 Adam Barth <abarth@webkit.org> Reviewed by Oliver Hunt. Don't let local files access web URLs https://bugs.webkit.org/show_bug.cgi?id=28480 * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): 2009-08-25 Antonio Gomes <antonio.gomes@openbossa.org> Reviewed by Ariya Hidayat. Bug 28708 - Make possible to better use ResourceError in FrameLoaderClientQt class. * Api/qwebframe.cpp: (QWebFrame::requestedUrl): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::FrameLoaderClientQt): (WebCore::FrameLoaderClientQt::dispatchDidFinishLoad): (WebCore::FrameLoaderClientQt::postProgressFinishedNotification): (WebCore::FrameLoaderClientQt::dispatchDidFailProvisionalLoad): (WebCore::FrameLoaderClientQt::dispatchDidFailLoad): * WebCoreSupport/FrameLoaderClientQt.h: 2009-08-22 Adam Barth <abarth@webkit.org> Revert 47684. We're going to do this later once clients have had a chance to opt into the setting they like. * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): 2009-08-22 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Don't let local files access web URLs https://bugs.webkit.org/show_bug.cgi?id=28480 * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): 2009-08-19 Aaron Boodman <aa@chromium.org> Speculative build break fix for qt. * Api/qwebsecurityorigin.cpp: (QWebSecurityOrigin::whiteListAccessFromOrigin): * Api/qwebsecurityorigin.h: 2009-08-19 Aaron Boodman <aa@chromium.org> Reviewed by David Levin. https://bugs.webkit.org/show_bug.cgi?id=24853: Provide a way for WebKit clients to specify a more granular policy for cross-origin XHR access. * Api/qwebsecurityorigin.cpp: Add API to manipulate origin access whitelists. (QWebSecurityOrigin::whiteListAccessFromOrigin): Ditto. (QWebSecurityOrigin::resetOriginAccessWhiteLists): Ditto. * Api/qwebsecurityorigin.h: Ditto. 2009-08-18 Markus Goetz <Markus.Goetz@nokia.com> Reviwed by Ariya Hidayat. [Qt] For prefecthDNS, the pre-fetching has to be enabled in the WebSettings. * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): * Api/qwebsettings.h: 2009-08-17 Darin Adler <darin@apple.com> Try to fix Qt build again. * WebCoreSupport/EditorClientQt.cpp: Move "using namespace". 2009-08-17 Darin Adler <darin@apple.com> Try to fix Qt build. * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::shouldShowDeleteInterface): Use getAttribute(classAttr) instead of className() function. 2009-08-14 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Simon Hausmann. RVCT elftran fails to resolve QPainter::staticMetaObject coming with QWebView::RenderHints property. This is a temporary fix and will be revereted when the right symbols exported from Qt lib in S60. https://bugs.webkit.org/show_bug.cgi?id=28181 * Api/qwebview.h: 2009-08-14 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Simon Hausmann. [Qt] Public API to configure the storage path for HTML5 localStorage https://bugs.webkit.org/show_bug.cgi?id=28036 Disables LocalStorage for QtWebKit by default by setting QWebSettings::LocalStorageEnabled to false. Sets up a default for the LocalStorage path so that clients would only need to enable the LocalStorageEnabled setting to turn on LocalStoragre support. Turn on LocalStorage support for QtLauncher and the relevant test since LocalStorage is now disabled by default for QtWebkit. * Api/qwebpage.cpp: (defaultCachePath): (initializeApplicationCachePathIfNecessary): (QWebPagePrivate::QWebPagePrivate): * Api/qwebsettings.cpp: (QWebSettingsPrivate::apply): (QWebSettings::QWebSettings): (QWebSettings::setLocalStoragePath): (QWebSettings::localStoragePath): * Api/qwebsettings.h: * QtLauncher/main.cpp: (main): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::multiplePageGroupsAndLocalStorage): 2009-08-14 Yael Aharon <yael.aharon@nokia.com> Reviewed by Simon Hausmann. [Qt] Allow applications to register their own local URL scheme. https://bugs.webkit.org/show_bug.cgi?id=28240 * Api/qwebsecurityorigin.cpp: (QWebSecurityOrigin::addLocalScheme): (QWebSecurityOrigin::removeLocalScheme): (QWebSecurityOrigin::localSchemes): * Api/qwebsecurityorigin.h: * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::localURLSchemes): 2009-08-13 Mark Rowe <mrowe@apple.com> Try and fix the Qt build. * Api/qwebelement.cpp: 2009-08-13 Kavindra Devi Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. Doc - Some cleanup on the documentation of QWebElement * Api/qwebelement.cpp: 2009-08-13 Norbert Leser <norbert.leser@nokia.com> Reviewed by Simon Hausmann. Symbian target components (library and executable files) require Unique Identifiers (i.e., UID3). These identifiers are defined in the respective project files, conditionally for "symbian" platform. * QtLauncher/QtLauncher.pro: * tests/qwebelement/qwebelement.pro: * tests/qwebframe/qwebframe.pro: * tests/qwebhistory/qwebhistory.pro: * tests/qwebhistoryinterface/qwebhistoryinterface.pro: * tests/qwebpage/qwebpage.pro: * tests/qwebview/qwebview.pro: 2009-08-12 George Wright <george.wright@torchmobile.com> Reviewed by Adam Treat. Initialise zoom levels independent of whether a URL is valid or not to fix https://bugs.webkit.org/show_bug.cgi?id=28162 * QtLauncher/main.cpp: (MainWindow::MainWindow): 2009-08-12 Joerg Bornemann <joerg.bornemann@trolltech.com> Reviewed by Simon Hausmann. QtWebKit compile fix for Windows CE There's no getenv on Windows CE, use qgetenv instead. * Api/qwebpage.cpp: (qt_drt_overwritePluginDirectories): 2009-08-10 Kavindra Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. Various fixes and improvements to the QWebPluginInfo, QWebPluginDatabase and QWebSettings documentation. * Api/qwebplugindatabase.cpp: * Api/qwebsettings.cpp: 2009-08-08 Volker Hilsheimer <volker.hilsheimer@nokia.com> Reviewed by Simon Hausmann. Doc: there is no group of explicitly shared classes, only one class uses this. Explain the implications in the QWebHistoryItem documentation, and get rid of the "group". * Api/qwebhistory.cpp: 2009-08-05 Csaba Osztrogonac <oszi@inf.u-szeged.hu> Reviewed by Simon Hausmann. [Qt] Fix build error caused by http://trac.webkit.org/changeset/46763 * Api/qwebpluginfactory.h: Export macro added. 2009-08-04 Antonio Gomes <antonio.gomes@openbossa.org> Reviewed by Simon Hausmann. [Qt] QWebFrame::requestedUrl method can mis-behave in case of unhandled sslErrors. https://bugs.webkit.org/show_bug.cgi?id=27804 * Api/qwebframe.cpp: (QWebFrame::requestedUrl): * tests/qwebframe/tst_qwebframe.cpp: 2009-08-04 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Tor Arne Vestbø. Rename QWebPlugin to QWebPluginInfo, as discussed on IRC. * Api/qwebplugindatabase.cpp: (QWebPluginInfoPrivate::QWebPluginInfoPrivate): (QWebPluginInfo::QWebPluginInfo): (QWebPluginInfo::~QWebPluginInfo): (QWebPluginInfo::name): (QWebPluginInfo::description): (QWebPluginInfo::mimeTypes): (QWebPluginInfo::supportsMimeType): (QWebPluginInfo::path): (QWebPluginInfo::isNull): (QWebPluginInfo::setEnabled): (QWebPluginInfo::isEnabled): (QWebPluginInfo::operator==): (QWebPluginInfo::operator!=): (QWebPluginInfo::operator=): (QWebPluginDatabase::plugins): (QWebPluginDatabase::pluginForMimeType): (QWebPluginDatabase::setPreferredPluginForMimeType): * Api/qwebplugindatabase.h: * Api/qwebplugindatabase_p.h: * tests/qwebplugindatabase/tst_qwebplugindatabase.cpp: (tst_QWebPluginDatabase::installedPlugins): (tst_QWebPluginDatabase::searchPaths): (tst_QWebPluginDatabase::null_data): (tst_QWebPluginDatabase::null): (tst_QWebPluginDatabase::pluginForMimeType): (tst_QWebPluginDatabase::enabled): (tst_QWebPluginDatabase::operatorequal_data): (tst_QWebPluginDatabase::operatorequal): (tst_QWebPluginDatabase::preferredPlugin): 2009-08-04 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Adam Treat. Replace QWebPlugin::MimeType with a typedef to QWebPluginFactory::MimeType. * Api/qwebplugindatabase.cpp: * Api/qwebplugindatabase.h: * Api/qwebpluginfactory.cpp: (QWebPluginFactory::MimeType::operator==): * Api/qwebpluginfactory.h: 2009-08-04 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. Add QWebPluginDatabase API to the Qt API. https://bugs.webkit.org/show_bug.cgi?id=27651 * Api/headers.pri: * Api/qwebplugindatabase.cpp: Added. (QWebPluginPrivate::QWebPluginPrivate): (QWebPluginDatabasePrivate::QWebPluginDatabasePrivate): (QWebPlugin::MimeType::operator==): (QWebPlugin::QWebPlugin): (QWebPlugin::~QWebPlugin): (QWebPlugin::name): (QWebPlugin::description): (QWebPlugin::mimeTypes): (QWebPlugin::supportsMimeType): (QWebPlugin::path): (QWebPlugin::isNull): (QWebPlugin::setEnabled): (QWebPlugin::isEnabled): (QWebPlugin::operator==): (QWebPlugin::operator!=): (QWebPlugin::operator=): (QWebPluginDatabase::QWebPluginDatabase): (QWebPluginDatabase::~QWebPluginDatabase): (QWebPluginDatabase::plugins): (QWebPluginDatabase::defaultSearchPaths): (QWebPluginDatabase::searchPaths): (QWebPluginDatabase::setSearchPaths): (QWebPluginDatabase::addSearchPath): (QWebPluginDatabase::refresh): (QWebPluginDatabase::pluginForMimeType): (QWebPluginDatabase::setPreferredPluginForMimeType): * Api/qwebplugindatabase.h: Added. * Api/qwebplugindatabase_p.h: Added. * Api/qwebsettings.cpp: (QWebSettings::pluginDatabase): * Api/qwebsettings.h: * tests/qwebplugindatabase/qwebplugindatabase.pro: Added. * tests/qwebplugindatabase/tst_qwebplugindatabase.cpp: Added. (tst_QWebPluginDatabase::installedPlugins): (tst_QWebPluginDatabase::searchPaths): (tst_QWebPluginDatabase::null_data): (tst_QWebPluginDatabase::null): (tst_QWebPluginDatabase::pluginForMimeType): (tst_QWebPluginDatabase::enabled): (tst_QWebPluginDatabase::operatorequal_data): (tst_QWebPluginDatabase::operatorequal): (tst_QWebPluginDatabase::preferredPlugin): * tests/tests.pro: 2009-08-03 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu> Reviewed by Simon Hausmann. Do memory cleanup when running robotized QtLauncher in debug as well. * QtLauncher/main.cpp: (launcherMain): (main): 2009-07-30 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Tor Arne Vestbø. [Qt] Initialize HTML5 Application Cache for QtWebKit to a sensible default https://bugs.webkit.org/show_bug.cgi?id=27866 * Api/qwebpage.cpp: (initializeApplicationCachePathIfNecessary): (QWebPagePrivate::QWebPagePrivate): 2009-07-31 Jakob Petsovits <jakob.petsovits@torchmobile.com> Reviewed by Adam Treat. Build QtWebKit without benchmark tests for Qt < 4.5. https://bugs.webkit.org/show_bug.cgi?id=27886 The QBENCHMARK macro is only available from 4.5 on, so builds for Qt < 4.5 shouldn't try to build those. * tests/tests.pro: 2009-07-31 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Adam Treat. Fix warning by migrating use of QString.sprintf(...) to QString.arg().arg()... * WebCoreSupport/EditorClientQt.cpp: (dumpRange): 2009-07-31 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Tor Arne Vestbø. Expose the Offline Web Application Cache in the Qt API. * Api/qwebsettings.cpp: (QWebSettings::QWebSettings): (QWebSettings::setOfflineWebApplicationCachePath): (QWebSettings::offlineWebApplicationCachePath): (QWebSettings::setOfflineWebApplicationCacheQuota): (QWebSettings::offlineWebApplicationCacheQuota): * Api/qwebsettings.h: 2009-07-30 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Adam Treat. Add missing Q_OBJECT to class inheriting from QObject. * tests/qwebframe/tst_qwebframe.cpp: 2009-07-30 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Adam Treat. Fix indentation. * tests/qwebframe/tst_qwebframe.cpp: 2009-07-30 Volker Hilsheimer <volker.hilsheimer@nokia.com> Reviewed by Simon Hausmann. Fix documentation links to examples. * Api/qwebview.cpp: 2009-07-30 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu> Reviewed by Simon Hausmann. Allocate MainWindow on heap in robotized QtLauncher as well. * QtLauncher/main.cpp: (main): 2009-07-29 Kevin McCullough <kmccullough@apple.com> Reviewed by Darin Adler. Added foundation work to allow a testing infrastructure for the Web Inspector. * WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientQt::inspectorWindowObjectCleared): * WebCoreSupport/InspectorClientQt.h: 2009-07-29 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> Reviewed by Simon Hausmann. [Qt] In debug mode, this fix frees cached resources and other unreferenced objects (by calling the garbage collector) to remove the LEAK messages. https://bugs.webkit.org/show_bug.cgi?id=27767 * Api/qwebframe.cpp: (qt_drt_cache_clear): * QtLauncher/main.cpp: (main): 2009-07-28 Kenneth Rohde Christiansen <kenneth@webkit.org> Fix the Qt build by adapting to the changes of ScriptObject. * Api/qwebelement.cpp: (setupScriptObject): 2009-07-28 Robert Hogan <robert@roberthogan.net> Reviewed by Simon Hausmann. Add WebKit version API to Qt. Get the current version of WebKit from WebKit/mac/Configurations/Version.xcconfig at compile time and make it available to Qt applications through qWebKitVersion(). Also amend the User Agent string to place the Safari clause outside the final bracket and to the end of the UA string. https://bugs.webkit.org/show_bug.cgi?id=27158 Minor build tweak by Simon Hausmann (adding export macros to new functions). * Api/headers.pri: * Api/qwebkitversion.cpp: Added. (webKitVersion): (webKitMajorVersion): (webKitMinorVersion): * Api/qwebkitversion.h: Added. * Api/qwebpage.cpp: (QWebPage::userAgentForUrl): * tests/qwebview/tst_qwebview.cpp: (tst_QWebView::getWebKitVersion): http://qt.nokia.com/developer/task-tracker/index_html?id=238391&method=entry http://qt.nokia.com/developer/task-tracker/index_html?id=219344&method=entry http://qt.nokia.com/developer/task-tracker/index_html?id=241144&method=entry
* Move some debug hooksJedrzej Nowacki2009-08-101-1/+13
| | | | | | | Generation point of debug opcode for different statements were changed to simulate old - backend QtScript's debugger. Code is Qt specific and secured by QT_BUILD_SCRIPT_LIB define.
* New class and new JSC::JSGlobalData attribute.Jedrzej Nowacki2009-08-101-0/+9
| | | | | | | SourcePool's objects should be responsible for calling debugger each time scriptLoad or scriptUnload event occurs. This code is specific to Qt only.
* Force parser to send information about current column number.Jedrzej Nowacki2009-08-061-30/+31
| | | | | | | | | | Add new member in all statements nodes which suppose to be a column number from parser. All calls to setLoc were changed, they should pass 2xline number (first and last line) and column number of current "cursor"(token?) position. Develop op_debug opcode to contain column number. Review by: Kent Hansen
* Updated WebKit from /home/shausman/src/webkit/trunk to ↵Simon Hausmann2009-07-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | origin/qtwebkit-4.6-staging ( c0d124d5d596c56fa2086a70436656d41bbc72f8 ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2009-07-28 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Make it possible to pass relative file names to QtLauncher. * QtLauncher/main.cpp: (MainWindow::MainWindow): 2009-07-27 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=27735 Give a helpful name to JSLock constructor argument * Api/qwebframe.cpp: (QWebFrame::addToJavaScriptWindowObject): 2009-07-27 Volker Hilsheimer <volker.hilsheimer@nokia.com> Reviewed by Simon Hausmann. QWebView's "enabled" parameter should default to true, as with QGraphicsView and QPainter. * Api/qwebview.cpp: Add reference to QPainter::renderHints(). * Api/qwebview.h: Add default for enabled argument. 2009-07-26 Kavindra Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. More documentation cleanups in the QWebElement class overview. * Api/qwebelement.cpp: 2009-07-26 Kavindra Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. Clean up documentation of QWebElement's findFirst and findAll functions, as well as their QWebFrame counterparts. * Api/qwebelement.cpp: * Api/qwebframe.cpp: 2009-07-26 Kavindra Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. Various documentation cleanups * Fixed qdoc warnings * Hide QWebNetworkInterface from the class overview * Mention QWebElement in the module overview * More cleanups * Api/qwebframe.cpp: * Api/qwebnetworkinterface.cpp: * Api/qwebview.cpp: * docs/qtwebkit.qdoc: 2009-07-26 Kavindra Palaraja <kavindra.palaraja@nokia.com> Reviewed by Simon Hausmann. Added missing class diagram referenced from the docs, taken from the Qt documentation. * docs/qtwebkit.qdocconf: Register the image directory with qdoc. * docs/qwebview-diagram.png: Added. 2009-07-24 Antonio Gomes <antonio.gomes@openbossa.org> Reviewed by Adam Treat. As per discussion on IRC, changed originalUrl by requestedUrl. * Api/qwebframe.cpp: (QWebFrame::requestedUrl): * Api/qwebframe.h: * tests/qwebframe/tst_qwebframe.cpp: 2009-07-24 Andre Pedralho <andre.pedralho@openbossa.org> Reviewed by Adam Treat. Removed void QWebFrame::renderContents(...) and added the Q_PROPERTY clipRenderToViewport to control whether QWebFrame::render would call FrameView::paintContents rather than FrameView::paint and do not clip the frame content to viewport. * Api/qwebframe.cpp: (QWebFramePrivate::renderPrivate): (QWebFrame::clipRenderToViewport): (QWebFrame::setClipRenderToViewport): * Api/qwebframe.h: * Api/qwebframe_p.h: (QWebFramePrivate::QWebFramePrivate): * tests/qwebframe/tst_qwebframe.cpp: 2009-07-24 Antonio Gomes <antonio.gomes@openbossa.org> Reviewed by Simon Hausmann. [QT] Implement originalUrl getter method to the API https://bugs.webkit.org/show_bug.cgi?id=25867 * Api/qwebframe.cpp: (QWebFrame::originalUrl): * Api/qwebframe.h: * tests/qwebframe/qwebframe.qrc: * tests/qwebframe/test1.html: Added. * tests/qwebframe/test2.html: Added. * tests/qwebframe/tst_qwebframe.cpp: 2009-07-24 Kenneth Rohde Christiansen <kenneth@webkit.org> Build fix for Qt. Fix build issue introduced in 46344 ([Bug 22700] ApplicationCache should have size limit) Remove method only added to the Qt ChromeClient. * WebCoreSupport/ChromeClientQt.h: 2009-07-24 Andrei Popescu <andreip@google.com> Reviewed by Anders Carlsson. ApplicationCache should have size limit https://bugs.webkit.org/show_bug.cgi?id=22700 * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::reachedMaxAppCacheSize): Adds empty implementation of the reachedMaxAppCacheSize callback. * WebCoreSupport/ChromeClientQt.h: 2009-07-23 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Simon Hausmann. [Qt] Add simple proxy support for QtLauncher https://bugs.webkit.org/show_bug.cgi?id=27495 Picks up proxy settings from the http_proxy environment variable. * QtLauncher/QtLauncher.pro: Add QtNetwork dependency for all platforms. * QtLauncher/main.cpp: (MainWindow::MainWindow): 2009-07-23 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Holger Freyther. Added a testcase to verify that cached methods in the QOBject bindings remain alife even after garbage collection. * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::protectBindingsRuntimeObjectsFromCollector): 2009-07-23 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> Reviewed by Simon Hausmann. Fixing two issues related to QtLauncher - MainWindow objects are not always freed after close - JavaScript window.close() sometimes crashes https://bugs.webkit.org/show_bug.cgi?id=27601 * QtLauncher/main.cpp: (MainWindow::MainWindow): (main): 2009-07-21 Volker Hilsheimer <volker.hilsheimer@nokia.com> Reviewed by Simon Hausmann. Various improvements to the API documentation. * Updated link to W3c Database spec * Formatting fixes, cleanups * Add missing \since 4.6 tags to QWebPage::frameAt * Extend QWebDatabase and QWebSecurityOrigin docs. * Api/qwebdatabase.cpp: * Api/qwebpage.cpp: * Api/qwebsecurityorigin.cpp: * Api/qwebview.cpp: 2009-07-21 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Rubber-stamped by Simon Hausmann. Remove preliminary-tag from QWebElement * Api/qwebelement.cpp: 2009-07-20 Kenneth Rohde Christiansen <kenneth@webkit.org> Reviewed by Eric Seidel. Fix Qt code to follow the WebKit Coding Style. * Api/qcookiejar.cpp: (QCookieJar::setCookieJar): (QCookieJar::cookieJar): * Api/qcookiejar.h: * Api/qwebdatabase.cpp: (QWebDatabase::QWebDatabase): (QWebDatabase::removeDatabase): * Api/qwebdatabase.h: * Api/qwebdatabase_p.h: * Api/qwebelement.h: * Api/qwebframe.cpp: (QWebFrame::title): (QWebFrame::print): * Api/qwebframe.h: * Api/qwebframe_p.h: * Api/qwebhistory.cpp: (QWebHistory::clear): * Api/qwebhistory.h: * Api/qwebhistory_p.h: * Api/qwebhistoryinterface.cpp: (gCleanupInterface): (QWebHistoryInterface::setDefaultInterface): (QWebHistoryInterface::defaultInterface): (QWebHistoryInterface::QWebHistoryInterface): * Api/qwebhistoryinterface.h: * Api/qwebnetworkinterface.cpp: (QWebNetworkManager::started): (QWebNetworkManager::finished): (QWebNetworkInterfacePrivate::parseDataUrl): (QWebNetworkInterface::addJob): (WebCoreHttp::onResponseHeaderReceived): (WebCoreHttp::onReadyRead): * Api/qwebnetworkinterface.h: * Api/qwebnetworkinterface_p.h: * Api/qwebpage.cpp: (QWebPagePrivate::editorCommandForWebActions): (QWebPagePrivate::createContextMenu): (QWebPagePrivate::focusInEvent): (QWebPage::fixedContentsSize): (QWebPage::setContentEditable): (QWebPage::swallowContextMenuEvent): (QWebPage::findText): * Api/qwebpage.h: * Api/qwebpage_p.h: * Api/qwebpluginfactory.h: * Api/qwebsecurityorigin.h: * Api/qwebsecurityorigin_p.h: * Api/qwebsettings.cpp: (QWebSettingsPrivate::QWebSettingsPrivate): (QWebSettingsPrivate::apply): (QWebSettings::globalSettings): (QWebSettings::QWebSettings): (QWebSettings::fontSize): (QWebSettings::setUserStyleSheetUrl): (QWebSettings::setDefaultTextEncoding): (QWebSettings::setIconDatabasePath): (QWebSettings::iconDatabasePath): (QWebSettings::iconForUrl): (QWebSettings::setWebGraphic): (QWebSettings::setFontFamily): (QWebSettings::fontFamily): (QWebSettings::testAttribute): (qt_websettings_setLocalStorageDatabasePath): * Api/qwebsettings.h: * Api/qwebview.cpp: (QWebView::setPage): (QWebView::event): * Api/qwebview.h: 2009-07-20 Holger Hans Peter Freyther <zecke@selfish.org> Reviewed by Simon Hausmann. [Qt] Add test for loading webpages... Performance test for loading webpages. Wait for the loadFinished signal to be fired. This should include a non empty layout. * tests/benchmarks/loading/tst_loading.cpp: Added. (waitForSignal): (tst_Loading::init): (tst_Loading::cleanup): (tst_Loading::load_data): (tst_Loading::load): * tests/benchmarks/loading/tst_loading.pro: Added. * tests/tests.pro: 2009-07-20 Holger Hans Peter Freyther <zecke@selfish.org> Reviewed by Simon Hausmann. [Qt] Add a test case for drawing a simple viewrect to a QPixmap * tests/benchmarks/painting/tst_painting.cpp: Added. (waitForSignal): (tst_Painting::init): (tst_Painting::cleanup): (tst_Painting::paint_data): (tst_Painting::paint): * tests/benchmarks/painting/tst_painting.pro: Added. * tests/tests.pro: 2009-07-20 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Holger Freyther. [Qt] Add an option for QtLauncher to build without QtUiTools dependency https://bugs.webkit.org/show_bug.cgi?id=27438 Based on Norbert Leser's work. * QtLauncher/main.cpp: (WebPage::createPlugin): 2009-07-17 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Adam Treat. Coding style fixes. * Api/qcookiejar.cpp: (QCookieJarPrivate::QCookieJarPrivate): (qHash): (QCookieJar::cookieJar): * Api/qwebelement.cpp: (QWebElement::functions): (QWebElement::scriptableProperties): * Api/qwebframe.cpp: (QWebFrame::metaData): (QWebFrame::scrollBarValue): (QWebFrame::scroll): (QWebFrame::scrollPosition): (QWebFrame::print): * Api/qwebnetworkinterface.cpp: (decodePercentEncoding): (QWebNetworkRequestPrivate::init): (QWebNetworkRequestPrivate::setURL): (QWebNetworkRequest::QWebNetworkRequest): (QWebNetworkRequest::operator=): (QWebNetworkRequest::setUrl): (QWebNetworkRequest::setHttpHeader): (QWebNetworkRequest::httpHeaderField): (QWebNetworkRequest::setHttpHeaderField): (QWebNetworkRequest::setPostData): (QWebNetworkJob::setResponse): (QWebNetworkJob::frame): (QWebNetworkManager::add): (QWebNetworkManager::cancel): (QWebNetworkManager::started): (QWebNetworkManager::data): (QWebNetworkManager::finished): (QWebNetworkManager::addHttpJob): (QWebNetworkManager::cancelHttpJob): (QWebNetworkManager::httpConnectionClosed): (QWebNetworkInterfacePrivate::sendFileData): (QWebNetworkInterfacePrivate::parseDataUrl): (QWebNetworkManager::doWork): (QWebNetworkInterface::setDefaultInterface): (QWebNetworkInterface::defaultInterface): (QWebNetworkInterface::QWebNetworkInterface): (QWebNetworkInterface::addJob): (QWebNetworkInterface::cancelJob): (WebCoreHttp::WebCoreHttp): (WebCoreHttp::request): (WebCoreHttp::scheduleNextRequest): (WebCoreHttp::getConnection): (WebCoreHttp::onResponseHeaderReceived): (WebCoreHttp::onReadyRead): (WebCoreHttp::onRequestFinished): (WebCoreHttp::onAuthenticationRequired): (WebCoreHttp::onProxyAuthenticationRequired): * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): (QWebPagePrivate::mouseReleaseEvent): (QWebPagePrivate::inputMethodEvent): (QWebPagePrivate::shortcutOverrideEvent): (QWebPage::inputMethodQuery): (QWebPage::javaScriptPrompt): (QWebPage::updatePositionDependentActions): (QWebPage::userAgentForUrl): (QWebPagePrivate::_q_onLoadProgressChanged): (QWebPage::totalBytes): (QWebPage::bytesReceived): * Api/qwebsettings.cpp: (QWebSettings::iconForUrl): (QWebSettings::setObjectCacheCapacities): * Api/qwebview.cpp: (QWebView::paintEvent): (QWebView::changeEvent): 2009-07-17 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Simon Hausmann. Overwrite the plugin directories for the DRT. Part of https://bugs.webkit.org/show_bug.cgi?id=27215 * Api/qwebpage.cpp: (qt_drt_overwritePluginDirectories): Only set the plugin directories to the ones in the QTWEBKIT_PLUGIN_PATH environment variable. 2009-07-16 Xiaomei Ji <xji@chromium.org> Reviewed by Dan Bernstein. This is the 2nd part of fixing "RTL: tooltip does not get its directionlity from its element's." https://bugs.webkit.org/show_bug.cgi?id=24187 Add one extra parameter to the callee of HitTestResult::title() due to the signature change. * Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): Add direction as a parameter to the callee of HitTestResult::title(). * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::mouseDidMoveOverElement): Add direction as a parameter to the callee of HitTestResult::title(). 2009-07-16 Benjamin C Meyer <benjamin.meyer@torchmobile.com> Reviewed by Adam Treat. Add new action to qwebpage to reload without cache. * Api/qwebpage.cpp: (QWebPagePrivate::updateAction): (QWebPagePrivate::updateNavigationActions): (QWebPage::triggerAction): * Api/qwebpage.h: 2009-07-16 Xiaomei Ji <xji@chromium.org> Reviewed by Darin Adler. Fix tooltip does not get its directionality from its element's directionality. https://bugs.webkit.org/show_bug.cgi?id=24187 Per mitz's suggestion in comment #6, while getting the plain-text title, we also get the directionality of the title. How to handle the directionality is up to clients. Clients could ignore it, or use attribute or unicode control characters to display the title as what they want. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet). * WebCoreSupport/ChromeClientQt.h: Add directionality as 2nd parameter to setToolTip(). 2009-07-15 Yael Aharon <yael.aharon@nokia.com> Reviewed by Simon Hausmann. https://bugs.webkit.org/show_bug.cgi?id=27285 When the user clicks a link with a target attribute, the newly created window should be visible. Make new windows created in Qtlauncher visible. * QtLauncher/main.cpp: (WebPage::createWindow): 2009-07-14 Adam Treat <adam.treat@torchmobile.com> Reviewed by Zack Rusin. https://bugs.webkit.org/show_bug.cgi?id=26983 The default constructed values for QSize and WebCore::IntSize are different. The former produces an invalid size whereas the latter produces a size of zero. This was causing a layout to be triggered when constructing a view and an assert to be hit. This patch fixes the crash by taking care not to cause an unnecessary layout triggered by ScrollView::setFixedLayoutSize. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage):
* Updated WebKit from /home/shausman/src/webkit/trunk to ↵Simon Hausmann2009-07-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | origin/qtwebkit-4.6-staging ( b2abc0c271880b8135507861056af497f895adf5 ) Changes in WebKit since the last update: ++ b/WebKit/qt/ChangeLog 2009-07-13 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Fix qdoc warnings for QWebPage::shouldInterruptJavaScript() and mention how to re-implement it. * Api/qwebpage.cpp: 2009-07-13 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Fix crash with plugins when the plugin stream is cancelled. Similar to r26667 handle the case where didReceiveResponse on the plugin view results in failure to set up the stream and setMainDocumentError being called instead. This will set the m_pluginView back to 0 and we need check for it before calling didReceiveData. This was triggered by consecutive execution of LayoutTests/plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html followed by LayoutTests/scrollbars/scrollbar-crash-on-refresh.html * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::committedLoad): 2009-07-13 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Added QWebDatabase::removeAllDatabases, as a way to delete all databases from the offline storage path. Used by the Qt DRT. * Api/qwebdatabase.cpp: (QWebDatabase::removeAllDatabases): * Api/qwebdatabase.h: 2009-07-13 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Added loadStarted() and loadFinished() signals to QWebFrame, to allow load tracking of individual frames, as opposed to QWebPage's loadStarted/loadFinished signals that are emitted whenever _any_ child frame loads/finishes. * Api/qwebframe.cpp: Document new signals. * Api/qwebframe.h: Add new signals. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::setFrame): Connect new signals. 2009-07-13 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Add hooks for the GCController JavaScript interface needed by the Qt DRT. Fixed sort order of includes in qwebframe.cpp. * Api/qwebframe.cpp: (qt_drt_javaScriptObjectsCount): (qt_drt_garbageCollector_collect): (qt_drt_garbageCollector_collectOnAlternateThread): 2009-07-13 Simon Hausmann <hausmann@webkit.org> Reviewed by Ariya Hidayat. Add hooks for the GCController JavaScript interface needed by the Qt DRT. Fixed sort order of includes in qwebframe.cpp. * Api/qwebframe.cpp: (qt_drt_javaScriptObjectsCount): (qt_drt_garbageCollector_collect): (qt_drt_garbageCollector_collectOnAlternateThread): 2009-07-12 Brent Fulgham <bfulgham@gmail.com> Speculative build fix after http://trac.webkit.org/changeset/45786. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::addMessageToConsole): * WebCoreSupport/ChromeClientQt.h: 2009-07-10 Yael Aharon <yael.aharon@nokia.com> Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=27136 Fix a bug where webkit hangs when executing infinite JavaScript loop. * Api/qwebpage.cpp: (QWebPage::shouldInterruptJavaScript): * Api/qwebpage.h: * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::shouldInterruptJavaScript): * tests/qwebpage/tst_qwebpage.cpp: (JSTestPage::JSTestPage): (JSTestPage::shouldInterruptJavaScript): (tst_QWebPage::infiniteLoopJS): 2009-07-10 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=27108 Fix crash when in frame tree of a new frame before the new frame has been installed in the frame tree, similar to r35088. After calling Frame::init() the frame it may have been removed from the frame tree again through JavaScript. Detect this by checking the page() afterwards. To make this check safe the Frame::init() code was moved into QWebFrameData's constructor, where a RefPtr holds a reference to the frame. After the check back in FrameLoaderClientQt we would hold the single reference left and after release() the frame, its frame loader, its client as well as the QWebFrame should have disappeared then. * Api/qwebframe.cpp: (QWebFramePrivate::init): Only call Frame::init here, the rest is done in QWebFrameData's constructor. (QWebFrame::QWebFrame): * Api/qwebframe_p.h: Adjust declaration. (QWebFrameData::QWebFrameData): Create the Frame here. * Api/qwebpage.cpp: (QWebPagePrivate::createMainFrame): Adjust and simplify to new QWebFrame constructor. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createFrame): Adjust to new QWebFrame construction using QWebFrameData and add the check like in r35088. 2009-07-09 Beth Dakin <bdakin@apple.com> Reviewed by Dave Hyatt. Make Widget RefCounted to fix: <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs at WebCore::Widget::afterMouseDown() after clicking To Do's close box <rdar://problem/6978804> WER #16: Repro Access Violation in WebCore::PluginView::bindingInstance (1310178023) -and- <rdar://problem/6991251> WER #13: Crash in WebKit! WebCore::PluginView::performRequest+203 (1311461169) * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin): (WebCore::FrameLoaderClientQt::createJavaAppletWidget): * WebCoreSupport/FrameLoaderClientQt.h: 2009-07-08 Pradeepto Bhattacharya <pradeepto@kde.org> Reviewed by Ariya Hidayat. Build fix. * WebCoreSupport/FrameLoaderClientQt.h: Removed the slot slotCallPolicyFunction(). 2009-07-08 Simon Hausmann <hausmann@webkit.org> Reviewed by Tor Arne Vestbø. https://bugs.webkit.org/show_bug.cgi?id=27080 Fix DRT instability issues with fast/loader/submit-form-while-parsing-2.html When the form is submitted we call the policy function in the frame loader delayed with a queued connection. That queued connection sometimes interferes with the javascript timeout set in the testcase. Eliminate the entire delayed policy function mechanism and instead always call back directly, like in the other ports. In most other places we called the slot directly anyway. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::FrameLoaderClientQt): Remove m_policyFunction. (WebCore::FrameLoaderClientQt::callPolicyFunction): Call the policy function directly instead of emitting the queued signal. (WebCore::FrameLoaderClientQt::cancelPolicyCheck): Call callPolicyFunction directly. (WebCore::FrameLoaderClientQt::dispatchWillSubmitForm): Ditto. (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForMIMEType): Ditto. (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNewWindowAction): Ditto. (WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction): Ditto. * WebCoreSupport/FrameLoaderClientQt.h: Remove m_policyFunction as well as the associated signal. 2009-07-07 Simon Hausmann <hausmann@webkit.org> Reviewed by Holger Freyther. Add Qt DRT hook for clearing the frame name. * Api/qwebframe.cpp: (qt_drt_clearFrameName): 2009-07-05 Simon Hausmann <hausmann@webkit.org> Reviewed by Holger Freyther. Fix two qdoc warnings. Added missing \property for QWebFrame::hasFocus and added \a tag for pos of QWebPage::frameAt. * Api/qwebframe.cpp: * Api/qwebpage.cpp: 2009-07-04 Holger Hans Peter Freyther <zecke@selfish.org> Reviewed by Simon Hausmann. Use the recently introduced FocusController::setFocused Use the recently introduced FocusController::setFocused in the Qt platform. The SelectionController will be updated from within the FocusController now. * Api/qwebpage.cpp: (QWebPagePrivate::focusInEvent): (QWebPagePrivate::focusOutEvent): 2009-07-02 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Improve documentation of QWebFrame::setFocus and hasFocus() Added missing Q_PROPERTY for QWebFrame::hasFocus. * Api/qwebframe.cpp: Clarify the docs. * Api/qwebframe.h: add Q_PROPERTY(focus). 2009-07-02 Joe Ligman <joseph.ligman@nokia.com> Reviewed by Simon Hausmann. Bug 26855: [Qt] New methods for QWebFrame to check and set focus. Added new public methods QWebFrame::hasFocus() and QWebFrame::setFocus() Added auto test. * Api/qwebframe.cpp: (QWebFrame::hasFocus): (QWebFrame::setFocus): * Api/qwebframe.h: * tests/qwebframe/tst_qwebframe.cpp: 2009-07-01 Robert Hogan <robert@roberthogan.net> Reviewed by NOBODY. Fix Qt segfault when javascript disabled. If clients call addToJavaScriptWindowObject even though JavascriptEnabled is false webkit will segfault on the assert: ASSERTION FAILED: _rootObject (../../../WebCore/bridge/runtime.cpp:52 JSC::Bindings::Instance::Instance(WTF::PassRefPtr<JSC::Bindings::RootObject>)) Fix is to ensure JavaScript is enabled when client calls addToJavaScriptWindowObject. https://bugs.webkit.org/show_bug.cgi?id=26906 * Api/qwebframe.cpp: (QWebFrame::addToJavaScriptWindowObject): 2009-07-01 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. [Qt] Move some API headers from WebCore.pro to headers.pri so that they get installed when running make install from the build directory. * Api/headers.pri: 2009-07-01 Balazs Kelemen <kelemen.balazs.3@stud.u-szeged.hu> Reviewed by Simon Hausmann. Fixed robotized QtLauncher to work when there is no index.html in the user's home. * QtLauncher/main.cpp: (main): 2009-06-30 Brian Weinstein <bweinstein@apple.com> Reviewed by Adam Roben. Renamed scrollbarUnderPoint to scrollbarAtPoint to follow conventions. * Api/qwebpage.cpp: (QWebPage::swallowContextMenuEvent): 2009-06-30 Joe Ligman <joseph.ligman@nokia.com> Reviewed by Adam Treat. Bug 26422: [Qt] QWebPagePrivate::frameAt calculates wrong frame Added a public method QWebPage::frameAt Removed QWebPagePrivate::frameAt, which calcuated the wrong frame Modified QWebPage::swallowContextMenuEvent to use the new frameAt method New test case for frameAt added to tst_qwebpage.cpp * Api/qwebpage.cpp: (QWebPage::frameAt): (QWebPage::swallowContextMenuEvent): * Api/qwebpage.h: * Api/qwebpage_p.h: * tests/qwebpage/frametest/iframe.html: Added. * tests/qwebpage/frametest/iframe2.html: Added. * tests/qwebpage/frametest/iframe3.html: Added. * tests/qwebpage/tst_qwebpage.cpp: (frameAtHelper): (tst_QWebPage::frameAt): * tests/qwebpage/tst_qwebpage.qrc: 2009-06-30 Jakub Wieczorek <faw217@gmail.com> Reviewed by Simon Hausmann. Add QWebFrame::baseUrl() function that exposes the base URL of a frame. Autotests included. * Api/qwebframe.cpp: (QWebFrame::baseUrl): * Api/qwebframe.h: * tests/qwebframe/tst_qwebframe.cpp:
* Updated WebKit from /home/shausman/src/webkit/trunk to ↵Simon Hausmann2009-06-261-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | origin/qtwebkit-4.6-staging ( 6b0744eab3f993b9c2bd44e3e79d7664040fd003 ) Changes in WebKit since the last update: ++ b/JavaScriptCore/ChangeLog 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Add support for QDataStream operators to Vector. * wtf/Vector.h: (WTF::operator<<): (WTF::operator>>): 2009-06-26 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26750 Allow custom memory allocation control for JavaScriptCore/runtime directory's classes which instantiated by new: class IdentifierTable struct RegExpObjectData class HashEntry struct DataInstance::Cache class UString struct RegExpConstructorPrivate class ScopeChain * runtime/DateInstance.cpp: * runtime/Identifier.cpp: * runtime/Lookup.h: * runtime/RegExpConstructor.cpp: * runtime/RegExpObject.h: * runtime/ScopeChain.h: * runtime/UString.h: 2009-06-24 Sam Weinig <sam@webkit.org> Reviewed by Gavin Barraclough. Make the opcode sampler work once again. * jit/JIT.h: (JSC::JIT::compileGetByIdProto): (JSC::JIT::compileGetByIdSelfList): (JSC::JIT::compileGetByIdProtoList): (JSC::JIT::compileGetByIdChainList): (JSC::JIT::compileGetByIdChain): (JSC::JIT::compilePutByIdTransition): (JSC::JIT::compileCTIMachineTrampolines): (JSC::JIT::compilePatchGetArrayLength): * jit/JITStubCall.h: (JSC::JITStubCall::call): 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Maciej Stachowiak. Extend FastAllocBase.h with 'using WTF::FastAllocBase' to avoid unnecessary WTF:: usings. Remove existing unnecessary WTF:: usings. * interpreter/Interpreter.h: * profiler/CallIdentifier.h: * runtime/ScopeChain.h: * wtf/FastAllocBase.h: 2009-06-24 David Levin <levin@chromium.org> Fix all builds. * bytecode/CodeBlock.h: * bytecompiler/BytecodeGenerator.h: * interpreter/Register.h: 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Maciej Stachowiak. https://bugs.webkit.org/show_bug.cgi?id=26677 Inherits CodeBlock class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/bytecode/CodeBlock.h:217. * bytecode/CodeBlock.h: 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Maciej Stachowiak. https://bugs.webkit.org/show_bug.cgi?id=26676 Inherits BytecodeGenerator class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/parser/Nodes.cpp:1892. * bytecompiler/BytecodeGenerator.h: 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Maciej Stachowiak. https://bugs.webkit.org/show_bug.cgi?id=26675 Inherits Register class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/runtime/JSVariableObject.h:149. * interpreter/Register.h: 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=26674 Inherits HashMap class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/runtime/Structure.cpp:458. * wtf/HashMap.h: 2009-06-24 Oliver Hunt <oliver@apple.com> Reviewed by Darin Adler. <rdar://problem/6940519> REGRESSION (Safari 4 Public Beta - TOT): google.com/adplanner shows blank page instead of site details in "basic research' The problem was caused by the page returned with a function using a var declaration list containing around ~3000 variables. The solution to this is to flatten the comma expression representation and make codegen comma expressions and initializer lists iterative rather than recursive. * parser/Grammar.y: * parser/NodeConstructors.h: (JSC::CommaNode::CommaNode): * parser/Nodes.cpp: (JSC::CommaNode::emitBytecode): * parser/Nodes.h: (JSC::ExpressionNode::isCommaNode): (JSC::CommaNode::isCommaNode): (JSC::CommaNode::append): ++ b/LayoutTests/ChangeLog 2009-06-26 Adele Peterson <adele@apple.com> Reviewed by Darin Adler. Test for <rdar://problem/7000796> REGRESSION(34681): Breaking up quoted text makes new, unquoted text blue after certain steps; repros with some messages * editing/inserting/break-blockquote-after-delete.html: Added. * platform/mac/editing/inserting/break-blockquote-after-delete-expected.checksum: Added. * platform/mac/editing/inserting/break-blockquote-after-delete-expected.png: Added. * platform/mac/editing/inserting/break-blockquote-after-delete-expected.txt: Added. 2009-06-26 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Eric Seidel. Bug 20303: [Qt] Key events are not working in frames. Add a layout test to test the event is sent to the right sub-frame. * platform/qt/fast/events/event-sender-keydown-frame-expected.txt: Added. * platform/qt/fast/events/event-sender-keydown-frame.html: Added. 2009-06-26 Rob Buis <rwlbuis@gmail.com> Reviewed by Eric Seidel. Test for: https://bugs.webkit.org/show_bug.cgi?id=26682 Bug 26682: It should be possible to add image to SVG DOM programmatically (using JavaScript) * platform/mac/svg/custom/createImageElement-expected.checksum: Added * platform/mac/svg/custom/createImageElement-expected.png: Added * platform/mac/svg/custom/createImageElement-expected.txt: Added. * svg/custom/createImageElement.svg: Added. 2009-06-26 Takeshi Yoshino <tyoshino@google.com> Reviewed by Timothy Hatcher. Bug 26156: In view-source mode, always render the contents using HTMLViewSourceDocument https://bugs.webkit.org/show_bug.cgi?id=26156 When in view-source mode, render the contents using HTMLViewSourceDocument regardless it's applicable for any plugin or not. Chromium tells WebCore to render the contents of specified URL when view-source: prefix is added to the URL. But currently, DOMImplementation ignores inViewSourceMode() when the MIME type is indicating that the contents are neither texts nor HTML family documents. For example, we can check the contents of asf file without launching media player. Rendering contents for view-source:-specified input is not what user expects. http://code.google.com/p/chromium/issues/detail?id=10545 I want to fix this issue by this patch. IMHO, regardless of this Chromium specific issue, I think we should force use of HTMLViewSourceDocument when inViewSourceMode() is specified. * fast/frames/resources/viewsource-fake-image-file.png: Added. * fast/frames/viewsource-on-image-file.html: Added. * platform/mac/fast/frames/viewsource-on-image-file-expected.txt: Added. 2009-06-26 Alexey Proskuryakov <ap@webkit.org> Reviewed by Sam Weinig. <rdar://problem/6651201> Update lookalike character list. * fast/encoding/idn-security-expected.txt: * fast/encoding/idn-security.html: 2009-06-26 Jungshik Shin <jshin@chromium.org> Reviewed by Eric Seidel. Add an additional test for bug 23786 (mistreatment of CR/LF as zero-width characters in Chromium port). Tests using Bidi text were added when the fix was checked in. Without the patch, Chromium used to fail the same way with LTR complex scripts as well. (that is, CR and LF were treated as zero-width space). To prevent a potential regression in the future, a new test with Hindi (a LTR complex script) is added. The expected results for Mac and Windows are added while this test is added to Skipped file for gtk. I guess this test just needs a new test result generated on gtk. https://bugs.webkit.org/show_bug.cgi?id=25698 * fast/text/international/hindi-whitespace.html: Added. * platform/gtk/Skipped: * platform/mac/fast/text/international/hindi-whitespace-expected.checksum: Added. * platform/mac/fast/text/international/hindi-whitespace-expected.png: Added. * platform/mac/fast/text/international/hindi-whitespace-expected.txt: Added. * platform/win/fast/text/international/hindi-whitespace-expected.checksum: Added. * platform/win/fast/text/international/hindi-whitespace-expected.png: Added. * platform/win/fast/text/international/hindi-whitespace-expected.txt: Added. 2009-06-25 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=26681 <rdar://problem/7003461> Problem updating applicationCache when server returns 304 * http/tests/appcache/resources/uncacheable-resource.php: Added. * http/tests/appcache/resources/versioned-manifest.php: Added the kind of resource that was causing trouble. 2009-06-25 Ryosuke Niwa <rniwa@google.com> Reviewed by Eric Seidel. The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/remove-list-1-expected.txt: Added. * editing/execCommand/remove-list-1.html: * editing/execCommand/remove-list-items-expected.txt: Added. * editing/execCommand/remove-list-items.html: * platform/mac/editing/execCommand/remove-list-1-expected.checksum: Removed. * platform/mac/editing/execCommand/remove-list-1-expected.png: Removed. * platform/mac/editing/execCommand/remove-list-1-expected.txt: Removed. * platform/mac/editing/execCommand/remove-list-items-expected.checksum: Removed. * platform/mac/editing/execCommand/remove-list-items-expected.png: Removed. * platform/mac/editing/execCommand/remove-list-items-expected.txt: Removed. * platform/qt/editing/execCommand/remove-list-1-expected.txt: Removed. * platform/qt/editing/execCommand/remove-list-items-expected.txt: Removed. 2009-06-25 Simon Fraser <simon.fraser@apple.com> Reviewed by Oliver Hunt. <rdar://problem/6990481> Handle perspective computation on non-layer objects. * transforms/3d/general/perspective-non-layer.html: Added. 2009-06-25 Simon Fraser <simon.fraser@apple.com> Rubber-stamped by Eric Seidel Update this test after the video controller changes. * platform/mac/fast/layers/video-layer-expected.txt: 2009-06-25 Jan Michael Alonzo <jmalonzo@webkit.org> Not reviewed. Skip another failing test due to lack of eventSender impl. * platform/gtk/Skipped: 2009-06-25 Jan Michael Alonzo <jmalonzo@webkit.org> Not reviewed. Skip failing gtk tests due to missing DRT features. * platform/gtk/Skipped: 2009-06-25 Simon Fraser <simon.fraser@apple.com> Rubber-stamped by Dan Bernstein. Add Windows-specific test results, since Windows does not have 3d transforms enabled. * platform/win/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/mac-leopard/fast/media/mq-transform-02-expected.txt. * platform/win/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/mac-leopard/fast/media/mq-transform-03-expected.txt. 2009-06-25 Pierre d'Herbemont <pdherbemont@apple.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26653 After the change to -webkit-box usage for controller bar, we need to update the media layout tests. * platform/mac/media/audio-controls-rendering-expected.txt: * platform/mac/media/video-controls-rendering-expected.txt: * platform/mac/media/video-display-toggle-expected.txt: * platform/mac/media/video-empty-source-expected.txt: * platform/mac/media/video-zoom-controls-expected.txt: 2009-06-25 Ryosuke Niwa <rniwa@google.com> Reviewed by Eric Seidel. The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/5432254-2-expected.txt: Added. * editing/execCommand/5432254-2.html: * editing/execCommand/5700414-1-expected.txt: Added. * editing/execCommand/5700414-1.html: * editing/execCommand/5700414-2-expected.txt: Added. * editing/execCommand/5700414-2.html: * platform/mac/editing/execCommand/5432254-2-expected.checksum: Removed. * platform/mac/editing/execCommand/5432254-2-expected.png: Removed. * platform/mac/editing/execCommand/5432254-2-expected.txt: Removed. * platform/mac/editing/execCommand/5700414-1-expected.checksum: Removed. * platform/mac/editing/execCommand/5700414-1-expected.png: Removed. * platform/mac/editing/execCommand/5700414-1-expected.txt: Removed. * platform/mac/editing/execCommand/5700414-2-expected.checksum: Removed. * platform/mac/editing/execCommand/5700414-2-expected.png: Removed. * platform/mac/editing/execCommand/5700414-2-expected.txt: Removed. * platform/qt/editing/execCommand/5432254-2-expected.txt: Removed. 2009-06-25 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Dimitri Glazkov. https://bugs.webkit.org/show_bug.cgi?id=26436 Windows Chromium bug fix: save context of destination canvas in TransparencyWin::compositeTextComposite() before the function modifies the context. * fast/canvas/resources/translate-text.js: Added. (description.pixelValueAt): (pixelToString): (pixelShouldBe): * fast/canvas/translate-text-expected.txt: Added. * fast/canvas/translate-text.html: Added. 2009-06-25 Takeshi Yoshino <tyoshino@google.com> Reviewed by David Levin. Bug 26207: Rebaseline the expected image for fast/forms/select-style.html for Mac. https://bugs.webkit.org/show_bug.cgi?id=26207 Replace the expected image for fast/forms/select-style-expected.html for Mac which need to be rebaselined due to r43903 (http://trac.webkit.org/changeset/43903). * platform/mac/fast/forms/select-style-expected.png: 2009-06-25 John Gregg <johnnyg@google.com> Reviewed by Sam Weinig. Bug 23721: Changing dropdown's selectedIndex within onchange handler fires another onchange https://bugs.webkit.org/show_bug.cgi?id=23721 Check for unnecessary calls to onchange in response to script actions. * fast/forms/select-script-onchange-expected.txt: Added. * fast/forms/select-script-onchange.html: Added. 2009-06-25 Dan Bernstein <mitz@apple.com> Reviewed by Darin Adler. - test for https://bugs.webkit.org/show_bug.cgi?id=26671 <rdar://problem/7001880> Safari 4.0 crashes in WebCore::DOMTimer::fired() * fast/dom/style-sheet-candidate-remove-unrendered-document-expected.txt: Added. * fast/dom/style-sheet-candidate-remove-unrendered-document.html: Added. 2009-06-25 Eric Seidel <eric@webkit.org> No review, just skipping a new test. Skip new test on platforms missing eventSender.beginDragWithFiles Test: http/tests/security/clipboard/clipboard-file-access.html https://bugs.webkit.org/show_bug.cgi?id=25916 * platform/gtk/Skipped: * platform/qt/Skipped: * platform/win/Skipped: 2009-06-24 Dan Bernstein <mitz@apple.com> Reviewed by Simon Fraser. - test for <rdar://problem/7001817> REGRESSION (r41902): Base position track at UCSC Genome Browser doesn't work because image map prevents img from hit-testing * fast/replaced/image-map-2-expected.txt: Added. * fast/replaced/image-map-2.html: Added. 2009-06-24 Chris Fleizach <cfleizach@apple.com> Reviewed by Oliver Hunt. Tests for Bug 26668: AX: need a way to retrieve the language for an element. * accessibility/language-attribute-expected.txt: Added. * accessibility/language-attribute.html: Added. 2009-06-24 Oliver Hunt <oliver@apple.com> Reviewed by Darin Adler. <rdar://problem/6940519> REGRESSION (Safari 4 Public Beta - TOT): google.com/adplanner shows blank page instead of site details in "basic research' Add test cases for excessively large comma expressions. * fast/js/excessive-comma-usage-expected.txt: Added. * fast/js/excessive-comma-usage.html: Added. * fast/js/resources/excessive-comma-usage.js: Added. 2009-06-24 Rob Buis <rwlbuis@gmail.com> Reviewed by Eric Seidel. Tests for: https://bugs.webkit.org/show_bug.cgi?id=26392 Bug 26392: In html, modification of xlink:href of an newly inserted svg image does not work. https://bugs.webkit.org/show_bug.cgi?id=26328 Bug 26328: changing href attribute of svg images dows not work when changing display attribute as well * platform/mac/svg/custom/js-update-image-and-display-expected.checksum: Added * platform/mac/svg/custom/js-update-image-and-display-expected.png: Added * platform/mac/svg/custom/js-update-image-and-display-expected.txt: Added * svg/custom/js-update-image-and-display.svg: Added. * platform/mac/svg/custom/js-update-image-and-display2-expected.checksum: Added * platform/mac/svg/custom/js-update-image-and-display2-expected.png: Added * platform/mac/svg/custom/js-update-image-and-display2-expected.txt: Added * svg/custom/js-update-image-and-display2.svg: Added. * platform/mac/svg/custom/js-update-image-and-display3-expected.checksum: Added * platform/mac/svg/custom/js-update-image-and-display3-expected.png: Added * platform/mac/svg/custom/js-update-image-and-display3-expected.txt: Added * svg/custom/js-update-image-and-display3.svg: Added. 2009-06-24 Dan Bernstein <mitz@apple.com> - add Windows results for one new test and one test whose Mac results changed recently * platform/win/fast/forms/search-vertical-alignment-expected.checksum: Added. * platform/win/fast/forms/search-vertical-alignment-expected.png: Added. * platform/win/fast/forms/search-vertical-alignment-expected.txt: Added. * platform/win/fast/replaced/width100percent-searchfield-expected.checksum: Added. * platform/win/fast/replaced/width100percent-searchfield-expected.png: Added. * platform/win/fast/replaced/width100percent-searchfield-expected.txt: 2009-06-24 David Hyatt <hyatt@apple.com> Reviewed by Sam Weinig. Add test for https://bugs.webkit.org/show_bug.cgi?id=26687. * fast/dom/HTMLDataGridElement/DataGridColumns-basic-expected.txt: Added. * fast/dom/HTMLDataGridElement/DataGridColumns-basic.html: Added. 2009-05-21 Eric Seidel <eric@webkit.org> Reviewed by Maciej Stachowiak. Expose files in the clipboard in ondrop events. https://bugs.webkit.org/show_bug.cgi?id=25916 File.fileSize subtests fail due to limitations of DRT during http tests: https://bugs.webkit.org/show_bug.cgi?id=25909 Directory subtests fail until correct of directory File tests is decided by: https://bugs.webkit.org/show_bug.cgi?id=25879 * http/tests/security/clipboard/clipboard-file-access-expected.txt: Added. * http/tests/security/clipboard/clipboard-file-access.html: Added. * http/tests/security/clipboard/resources/TEMPLATE.html: Added. * http/tests/security/clipboard/resources/apple.gif: Copied from LayoutTests/editing/pasteboard/resources/apple.gif. * http/tests/security/clipboard/resources/clipboard-file-access.js: Added. (var): (moveMouseToCenterOfElement): (dragFilesOntoDragTarget): (fileListShouldBe): (draggingPathsShouldResultInFiles): (runTest): * http/tests/security/clipboard/resources/mozilla.gif: Copied from LayoutTests/editing/pasteboard/resources/mozilla.gif. ++ b/WebCore/ChangeLog 2009-06-26 Adele Peterson <adele@apple.com> Reviewed by Darin Adler. Fix for <rdar://problem/7000796> REGRESSION(34681): Breaking up quoted text makes new, unquoted text blue after certain steps; repros with some messages Test: editing/inserting/break-blockquote-after-delete.html Keep track of whether the typing style should be preserved after the TypingCommand is applied. When adding onto an open typing command, keep that flag up to date. In this case, an InsertParagraphSeparatorInQuotedContent command, which should not preserve typing style, was following an open Delete command, which does preserve the typing style. So we were applying the original typing style (from before the delete, so blue text) to the cursor in the unquoted area after breaking up the blockquote. * editing/TypingCommand.cpp: (WebCore::TypingCommand::TypingCommand): (WebCore::TypingCommand::typingAddedToOpenCommand): (WebCore::TypingCommand::insertTextRunWithoutNewlines): (WebCore::TypingCommand::insertLineBreak): (WebCore::TypingCommand::insertParagraphSeparator): (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): (WebCore::TypingCommand::deleteKeyPressed): (WebCore::TypingCommand::forwardDeleteKeyPressed): (WebCore::TypingCommand::deleteSelection): (WebCore::TypingCommand::updatePreservesTypingStyle): * editing/TypingCommand.h: (WebCore::TypingCommand::preservesTypingStyle): 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Add support for saving and loading of QWebHistory to and from a QByteArray. This includes streaming operators for QWebHistory. for convenience. New autotests that test QWebHistory and QWebHistoryItem serialization. * WebCore.pro: * history/HistoryItem.h: (WebCore::HistoryItem::dailyVisitCounts): (WebCore::HistoryItem::weeklyVisitCounts): * history/qt/HistoryItemQt.cpp: Added. (WebCore::HistoryItem::restoreState): (WebCore::HistoryItem::saveState): 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Add support for QDataStream operators to String and IntPoint. * platform/graphics/IntPoint.h: (WebCore::operator<<): (WebCore::operator>>): * platform/text/PlatformString.h: * platform/text/qt/StringQt.cpp: (WebCore::operator<<): (WebCore::operator>>): 2009-06-26 Ben Murdoch <benm@google.com> Reviewed by Darin Fisher. Add #if ENABLE(DOM_STORAGE) to the V8 custom bindings for local/session storage. https://bugs.webkit.org/show_bug.cgi?id=26757 * bindings/v8/custom/V8StorageCustom.cpp 2009-06-26 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Eric Seidel. Test: platform/qt/fast/events/event-sender-keydown-frame.html Bug 20303: [Qt] Key events are not working in frames. Merge scrolling handling code in qt and win port, move it to EventHandler. * page/EventHandler.cpp: (WebCore::EventHandler::scrollRecursively): * page/EventHandler.h: 2009-06-26 Rob Buis <rwlbuis@gmail.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26682 Bug 26682: It should be possible to add image to SVG DOM programmatically (using JavaScript) Make sure the xlink:href animated property setting syncs the corresponding attribute with the right namespace. Test: svg/custom/createImageElement.svg * svg/SVGAnimatedProperty.h: (WebCore::synchronizeProperty): 2009-06-26 Takeshi Yoshino <tyoshino@google.com> Reviewed by Timothy Hatcher. Bug 26156: In view-source mode, always render the contents using HTMLViewSourceDocument https://bugs.webkit.org/show_bug.cgi?id=26156 When in view-source mode, render the contents using HTMLViewSourceDocument regardless it's applicable for any plugin or not. Chromium tells WebCore to render the contents of specified URL when view-source: prefix is added to the URL. But currently, DOMImplementation ignores inViewSourceMode() when the MIME type is indicating that the contents are neither texts nor HTML family documents. For example, we can check the contents of asf file without launching media player. Rendering contents for view-source:-specified input is not what user expects. http://code.google.com/p/chromium/issues/detail?id=10545 I want to fix this issue by this patch. IMHO, regardless of this Chromium specific issue, I think we should force use of HTMLViewSourceDocument when inViewSourceMode() is specified. Test: fast/frames/viewsource-on-image-file.html * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): * html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::createTokenizer): * html/HTMLViewSourceDocument.h: 2009-06-26 Xan Lopez <xlopez@igalia.com> Reviewed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=25529 [Gtk] Expected states not exposed to assistive technologies Add support for VISIBLE, EDITABLE and SENSITIVE states. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (setAtkStateSetFromCoreObject): 2009-06-26 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Darin Adler. "Pointer to incomplete class type is not allowed" error with RVCT https://bugs.webkit.org/show_bug.cgi?id=26721 Based on Norbert Leser's work. * dom/Document.cpp: (WebCore::Document::setFocusedNode): * dom/Node.cpp: (WebCore::Node::dispatchMouseEvent): * dom/Node.h: Remove the default value for PassRefPtr<Event> args, to eliminate dependency on the Event class definition 2009-06-26 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Maciej Stachowiak. [Qt] Build fix after r45183 https://bugs.webkit.org/show_bug.cgi?id=26748 * WebCore.pro: 2009-06-25 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=26681 <rdar://problem/7003461> Problem updating applicationCache when server returns 304 Test: http/tests/appcache/update-cache.html * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::didReceiveResponse): We're already done with the resource, don't try to load it again. 2009-06-25 Simon Fraser <simon.fraser@apple.com> Reviewed by Oliver Hunt. <rdar://problem/6990481> Handle perspective computation on non-layer objects. Test: transforms/3d/general/perspective-non-layer.html * rendering/RenderObject.cpp: (WebCore::RenderObject::getTransformFromContainer): 2009-06-25 Pierre d'Herbemont <pdherbemont@apple.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26653 Use flex box in the mediaControls.css style, to nicely scale if a button gets dynamically added or removed. Media tests results are affected by this changes. * css/mediaControls.css: * css/mediaControlsQT.css: 2009-06-25 Albert J. Wong <ajwong@chromium.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26724 Move relavent part of setDefaultFontSize from RenderThemeChromiumWin up into RenderThemeChromiumSkia. * rendering/RenderThemeChromiumSkia.cpp: (WebCore::RenderThemeChromiumSkia::setDefaultFontSize): * rendering/RenderThemeChromiumSkia.h: * rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::setDefaultFontSize): * rendering/RenderThemeChromiumWin.h: 2009-06-25 Matt Perry <mpcomplete@chromium.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26733 Add V8-only methods to FrameLoaderClient that V8 can use to send out notifications when it creates/destroys a script context. * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::didCreateScriptContext): (WebCore::EmptyFrameLoaderClient::didDestroyScriptContext): * loader/FrameLoaderClient.h: (WebCore::FrameLoaderClient::didCreateScriptContext): (WebCore::FrameLoaderClient::didDestroyScriptContext): 2009-06-25 Dimitri Glazkov <dglazkov@chromium.org> Reviewed by David Levin. Correct a few typos that snuck in when I was reformatting CodeGeneratorV8.pm to match WebKit style. * bindings/scripts/CodeGeneratorV8.pm: Corrected lots of typos. 2009-06-25 Adam Langley <agl@google.com> TBRed: fix for Chromium tree. Add missing include for r45199. https://bugs.webkit.org/show_bug.cgi?id=26736 r45199 added a reference to throwError without including V8Proxy.h * bindings/v8/WorkerScriptController.cpp: 2009-06-25 Adam Langley <agl@google.com> TBRed: fix for Chromium tree. https://bugs.webkit.org/show_bug.cgi?id=26735 Fix V8IsolatedWorld to point to the correct include file. The deprecated v8_index.h was removed from the Chromium tree in r19291 and upstreamed into WebKit with r45193. However V8IsolatedWorld slipped in between the cracks and broke the build. * bindings/v8/V8IsolatedWorld.h: update with new header location. 2009-06-25 Chris Marrin <cmarrin@apple.com> Reviewed by Simon Fraser <simon.fraser@apple.com>. https://bugs.webkit.org/show_bug.cgi?id=26651 Preference is named "WebKitAcceleratedCompositingEnabled" and is a boolean value. When false, prevents compositing layers from being created, which prevents hardware animation from running. Also forces video to do software rendering. Added a cache for the flag in RenderLayerCompositing and made it all work on-the-fly when the flag is changed while a page is loaded. * WebCore.base.exp: * page/FrameView.cpp: (WebCore::FrameView::updateCompositingLayers): * page/Settings.cpp: (WebCore::setNeedsReapplyStylesInAllFrames): (WebCore::Settings::Settings): (WebCore::Settings::setAcceleratedCompositingEnabled): * page/Settings.h: (WebCore::Settings::acceleratedCompositingEnabled): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::hasAcceleratedCompositing): (WebCore::RenderLayer::updateTransform): (WebCore::RenderLayer::currentTransform): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateLayerTransform): * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::RenderLayerCompositor): (WebCore::RenderLayerCompositor::enableCompositingMode): (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingEnabledFlag): (WebCore::RenderLayerCompositor::updateCompositingLayers): (WebCore::RenderLayerCompositor::canAccelerateVideoRendering): (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): (WebCore::RenderLayerCompositor::needsToBeComposited): (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): * rendering/RenderLayerCompositor.h: (WebCore::RenderLayerCompositor::hasAcceleratedCompositing): * rendering/RenderObject.h: (WebCore::makeMatrixRenderable): 2009-06-25 Jian Li <jianli@chromium.org> Reviewed by Dimitri Glazkov. Bug 26701: Implement the missing code for "FIXME: Need to return an exception" in WorkerScriptController::evaluate for v8 bindings. https://bugs.webkit.org/show_bug.cgi?id=26701 * bindings/v8/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate): 2009-06-25 Nate Chapin <japhet@chromium.org> Reviewed by Dimitri Glazkov. Upstream V8Index. https://bugs.webkit.org/show_bug.cgi?id=26495 * bindings/v8/V8Index.cpp: Added. (WebCore::V8ClassIndex::GetFactory): Moved from src.chromium.org. (WebCore::V8ClassIndex::GetCache): Moved from src.chromium.org. * bindings/v8/V8Index.h: (WebCore::V8ClassIndex::): Moved from src.chromium.org. (WebCore::V8ClassIndex::ToInt): Moved from src.chromium.org. (WebCore::V8ClassIndex::FromInt): Moved from src.chromium.org. 2009-06-25 Adam Langley <agl@google.com> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26529 This is hopefully the last step before our renderers can run cleanly in a chroot. WebKit needs to be able to ask for the correct font to use in the case that the current font doesn't include glyphs for certain code points. Currently we make a fontconfig call in our WebKit port to handle this. This patch changes this so that the call is sent our via ChromiumBridge. http://codereview.chromium.org/132007 This should not affect any layout tests. * platform/chromium/ChromiumBridge.h: * platform/graphics/chromium/FontCacheLinux.cpp: (WebCore::FontCache::getFontDataForCharacters): 2009-06-25 Albert J. Wong <ajwong@chromium.org> Reviewed by David Levin. https://bugs.webkit.org/show_bug.cgi?id=26566 Upstream these files from the chromium v8 code. No tests were affected because this is essentially a code move. * bindings/v8/NPV8Object.cpp: Added. (allocV8NPObject): (freeV8NPObject): (listFromVariantArgs): (npIdentifierToV8Identifier): (npCreateV8ScriptObject): (NPN_Invoke): (NPN_InvokeDefault): (NPN_Evaluate): (NPN_EvaluateHelper): (NPN_GetProperty): (NPN_SetProperty): (NPN_RemoveProperty): (NPN_HasProperty): (NPN_HasMethod): (NPN_SetException): (NPN_Enumerate): (NPN_Construct): * bindings/v8/NPV8Object.h: Added. (PrivateIdentifier::): * bindings/v8/V8NPUtils.cpp: Added. (convertV8ObjectToNPVariant): (convertNPVariantToV8Object): (getStringIdentifier): * bindings/v8/V8NPUtils.h: Added. 2009-06-25 Shinichiro Hamaji <hamaji@chromium.org> Reviewed by Dimitri Glazkov. https://bugs.webkit.org/show_bug.cgi?id=26436 Windows Chromium bug fix: save context of destination canvas in TransparencyWin::compositeTextComposite() before the function modifies the context. Test: fast/canvas/translate-text.html * platform/graphics/chromium/TransparencyWin.cpp: (WebCore::TransparencyWin::compositeTextComposite): 2009-06-25 Patrick Mueller <Patrick_Mueller@us.ibm.com> Reviewed by Timothy Hatcher. Show the filename and first line for "(program)" in the Profiler/Debugger https://bugs.webkit.org/show_bug.cgi?id=25475 Add support to associate a sourceURL with an eval()'d string via a @sourceURL comment. Currently the sourceURL is only available in the script debugger, not in the console or profiler, but it's most needed in the script debugger. * English.lproj/localizedStrings.js: added new "(program): %s" string * inspector/front-end/Script.js: (WebInspector.Script): if no sourceURL is available for the Script, search for a comment of the form //@ sourceURL=(url) to use as the sourceURL instead. * manual-tests/inspector/named-evals.html: Added. 2009-06-25 John Gregg <johnnyg@google.com> Reviewed by Sam Weinig. Bug 23721: Changing dropdown's selectedIndex within onchange handler fires another onchange https://bugs.webkit.org/show_bug.cgi?id=23721 onchange events fire when a SELECT element has focus and the selectedIndex is updated by script in some way--either during another onchange, onkeypress, onfocus, or timer--and then focus is lost. Fixed by making a separate method for user-driven selectedIndex changes, leaving scripts to use one which doesn't cause onchange to be queued. Test: fast/forms/select-script-onchange.html * dom/SelectElement.cpp: check if the pending change is user driven before calling onchange (WebCore::SelectElement::menuListOnChange): (WebCore::SelectElement::setSelectedIndex): * dom/SelectElement.h: store whether the pending change is user driven (WebCore::SelectElementData::userDrivenChange): (WebCore::SelectElementData::setUserDrivenChange): * html/HTMLSelectElement.cpp: split into two methods -- script version [non-user-driven] corresponds to IDL defined property name (WebCore::HTMLSelectElement::setSelectedIndex): (WebCore::HTMLSelectElement::setSelectedIndexByUser): * html/HTMLSelectElement.h: * rendering/RenderMenuList.cpp: use ByUser method when coming through the renderer (WebCore::RenderMenuList::valueChanged): 2009-06-25 Jeremy Orlow <jorlow@chromium.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26698 Combined LocalStorageArea and SessionStorageArea into StorageArea since (after my other refactorings) there are no longer substantial differences between the two. * GNUmakefile.am: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * storage/LocalStorage.cpp: (WebCore::LocalStorage::storageArea): * storage/LocalStorage.h: * storage/LocalStorageArea.cpp: Removed. * storage/LocalStorageArea.h: Removed. * storage/SessionStorage.cpp: (WebCore::SessionStorage::copy): (WebCore::SessionStorage::storageArea): * storage/SessionStorage.h: * storage/SessionStorageArea.cpp: Removed. * storage/SessionStorageArea.h: Removed. * storage/StorageArea.cpp: (WebCore::StorageArea::createLocalStorage): (WebCore::StorageArea::StorageArea): (WebCore::StorageArea::createSessionStorage): (WebCore::StorageArea::copy): (WebCore::StorageArea::setItem): (WebCore::StorageArea::removeItem): (WebCore::StorageArea::clear): (WebCore::StorageArea::scheduleFinalSync): (WebCore::StorageArea::blockUntilImportComplete): (WebCore::StorageArea::dispatchStorageEvent): * storage/StorageArea.h: * storage/StorageAreaSync.cpp: (WebCore::StorageAreaSync::StorageAreaSync): (WebCore::StorageAreaSync::scheduleFinalSync): (WebCore::StorageAreaSync::syncTimerFired): (WebCore::StorageAreaSync::performImport): * storage/StorageAreaSync.h: * storage/StorageSyncManager.h: 2009-06-25 Dan Bernstein <mitz@apple.com> Reviewed by Darin Adler. - fix https://bugs.webkit.org/show_bug.cgi?id=26671 <rdar://problem/7001880> Safari 4.0 crashes in WebCore::DOMTimer::fired() Test: fast/dom/style-sheet-candidate-remove-unrendered-document.html When a "style sheet candidate" element is removed from a document, call Document::removeStyleSheetCandidateNode() regardless of whether the document is rendered. Otherwise, the document's style sheet candidate set can end up containing stale references. * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::removedFromDocument): * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::removedFromDocument): * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::removedFromDocument): 2009-06-25 Dimitri Glazkov <dglazkov@chromium.org> Reviewed by Darin Fisher. Update CodeGeneratorV8.pm to sync up with the changes downstream. * bindings/scripts/CodeGeneratorV8.pm: Added HTMLFrameSetElement check, FileList as a ref-counted type, and DataGridColumn as typeCanFailConversion. 2009-06-25 Dimitri Glazkov <dglazkov@chromium.org> Unreviewed, build fix. Add FileList.h include to fix Chromium build. * platform/chromium/ClipboardChromium.cpp: Added FileList.h include. 2009-06-25 Joseph Pecoraro <joepeck02@gmail.com> Reviewed by Jan Alonzo. Bug 26489: Web Inspector: Typo in DatabaseQuery Error Message https://bugs.webkit.org/show_bug.cgi?id=26489 Fixed a Typo in a Web Inspector error message. * English.lproj/localizedStrings.js: * inspector/front-end/DatabaseQueryView.js: (WebInspector.DatabaseQueryView.prototype._queryError): 2009-06-25 Simon Hausmann <simon.hausmann@nokia.com> Fix the Qt build, add missing StorageAreaSync files to the build. * WebCore.pro: 2009-06-25 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by and done with Tor Arne Vestbø. Fix shortcut keyboard handling with plugins on the Qt/Mac build. When we receive shortcut events like Ctrl+V then the text in the QKeyEvent is empty. If we're asked to disambiguate the event into a Char keyboard event, we try to detect this situation and still set the text, to ensure that the general event handling sends a key press event after this disambiguation. * platform/qt/PlatformKeyboardEventQt.cpp: (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): 2009-06-25 Eric Seidel <eric@webkit.org> Build fix only, no review. Add FileList.h and NotImplemented.h includes in an attempt to fix bots. * platform/gtk/ClipboardGtk.cpp: * platform/qt/ClipboardQt.cpp: * platform/win/ClipboardWin.cpp: * platform/wx/ClipboardWx.cpp: 2009-05-21 Eric Seidel <eric@webkit.org> Reviewed by Maciej Stachowiak. Expose files in the clipboard in ondrop events https://bugs.webkit.org/show_bug.cgi?id=25916 Make it possible for applications like gmail to implement drag and drop of attachments onto email messages. This patch exposes an event.dataTransfer.files accessor on the drop event. No information is exposed during dragover. This follows the HTML 5 drag and drop security model: http://www.w3.org/TR/html5/editing.html#security-risks-in-the-drag-and-drop-model The test http/tests/security/clipboard/clipboard-file-access.html verifies this behavior. Internet Explorer shows historical documentation of supporting getData('File') as a way of exposing files on the pasteboard. The current version of their docs: http://msdn.microsoft.com/en-us/library/ms537658(VS.85).aspx has removed this reference (as far as I can tell IE never implemented it) I have a printed copy of that URL from 2008 on my desk describing getData('File') in IE. IE does not follow the HTML5 clipboard security model and always allows access to the full clipboard, even on dragover. I choose not to use IE's getData('File') and instead added .files so that the accessor could have a type, matching WebKit's existing .files accessor on HTMLInputElement. Mozilla has equivalent file access: event.dataTransfer.mozGetDataAt("application/x-moz-file", 0); which also does not return a typed value. https://developer.mozilla.org/En/DragDrop/Recommended_Drag_Types#Dragging_Files This is only implemented for Mac WebKit. All other platforms (including Apple's Win WebKit) have incomplete Clipboard implementations and will require experts from those platforms to add this functionality. Right now they all have Clipboard*::files() methods which call notImplemented(); Test: http/tests/security/clipboard/clipboard-file-access.html * dom/Clipboard.h: * dom/Clipboard.idl: * platform/chromium/ClipboardChromium.cpp: (WebCore::ClipboardChromium::files): * platform/chromium/ClipboardChromium.h: * platform/gtk/ClipboardGtk.cpp: (WebCore::ClipboardGtk::files): * platform/gtk/ClipboardGtk.h: * platform/mac/ClipboardMac.h: * platform/mac/ClipboardMac.mm: (WebCore::absoluteURLsFromPasteboardFilenames): (WebCore::absoluteURLsFromPasteboard): (WebCore::ClipboardMac::files): * platform/qt/ClipboardQt.cpp: (WebCore::ClipboardQt::files): * platform/qt/ClipboardQt.h: * platform/win/ClipboardWin.cpp: (WebCore::ClipboardWin::files): * platform/win/ClipboardWin.h: * platform/wx/ClipboardWx.cpp: (WebCore::ClipboardWx::files): * platform/wx/ClipboardWx.h: 2009-06-25 Eric Seidel <eric@webkit.org> No review, only completing revert of r45144. Add back files deleted by r45144. * storage/LocalStorageArea.cpp: Added. (WebCore::LocalStorageArea::create): (WebCore::LocalStorageArea::LocalStorageArea): (WebCore::LocalStorageArea::scheduleFinalSync): (WebCore::LocalStorageArea::itemChanged): (WebCore::LocalStorageArea::itemRemoved): (WebCore::LocalStorageArea::areaCleared): (WebCore::LocalStorageArea::blockUntilImportComplete): (WebCore::LocalStorageArea::dispatchStorageEvent): * storage/LocalStorageArea.h: Added. * storage/SessionStorageArea.cpp: Added. (WebCore::SessionStorageArea::copy): (WebCore::SessionStorageArea::SessionStorageArea): (WebCore::SessionStorageArea::itemChanged): (WebCore::SessionStorageArea::itemRemoved): (WebCore::SessionStorageArea::areaCleared): (WebCore::SessionStorageArea::blockUntilImportComplete): (WebCore::SessionStorageArea::dispatchStorageEvent): * storage/SessionStorageArea.h: Added. (WebCore::SessionStorageArea::create): 2009-06-25 Eric Seidel <eric@webkit.org> No review, reverting r45144 only. Roll out r45144 after 18 test failures appeared on the bots. https://bugs.webkit.org/show_bug.cgi?id=26698 * GNUmakefile.am: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * storage/LocalStorage.cpp: (WebCore::LocalStorage::storageArea): * storage/LocalStorage.h: * storage/SessionStorage.cpp: (WebCore::SessionStorage::copy): (WebCore::SessionStorage::storageArea): * storage/SessionStorage.h: * storage/StorageArea.cpp: (WebCore::StorageArea::StorageArea): (WebCore::StorageArea::~StorageArea): (WebCore::StorageArea::setItem): (WebCore::StorageArea::removeItem): (WebCore::StorageArea::clear): * storage/StorageArea.h: * storage/StorageAreaSync.cpp: (WebCore::StorageAreaSync::StorageAreaSync): (WebCore::StorageAreaSync::scheduleFinalSync): (WebCore::StorageAreaSync::syncTimerFired): (WebCore::StorageAreaSync::performImport): * storage/StorageAreaSync.h: * storage/StorageSyncManager.h: 2009-06-24 Jeremy Orlow <jorlow@chromium.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26698 Combined LocalStorageArea and SessionStorageArea into StorageArea since (after my other refactorings) there are no longer substantial differences between the two. * GNUmakefile.am: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * storage/LocalStorage.cpp: (WebCore::LocalStorage::storageArea): * storage/LocalStorage.h: * storage/LocalStorageArea.cpp: Removed. * storage/LocalStorageArea.h: Removed. * storage/SessionStorage.cpp: (WebCore::SessionStorage::copy): (WebCore::SessionStorage::storageArea): * storage/SessionStorage.h: * storage/SessionStorageArea.cpp: Removed. * storage/SessionStorageArea.h: Removed. * storage/StorageArea.cpp: (WebCore::StorageArea::createLocalStorage): (WebCore::StorageArea::StorageArea): (WebCore::StorageArea::createSessionStorage): (WebCore::StorageArea::copy): (WebCore::StorageArea::setItem): (WebCore::StorageArea::removeItem): (WebCore::StorageArea::clear): (WebCore::StorageArea::scheduleFinalSync): (WebCore::StorageArea::blockUntilImportComplete): (WebCore::StorageArea::dispatchStorageEvent): * storage/StorageArea.h: * storage/StorageAreaSync.cpp: (WebCore::StorageAreaSync::StorageAreaSync): (WebCore::StorageAreaSync::scheduleFinalSync): (WebCore::StorageAreaSync::syncTimerFired): (WebCore::StorageAreaSync::performImport): * storage/StorageAreaSync.h: * storage/StorageSyncManager.h: 2009-06-24 Dan Bernstein <mitz@apple.com> Reviewed by Simon Fraser. - fix <rdar://problem/7001817> REGRESSION (r41902): Base position track at UCSC Genome Browser doesn't work because image map prevents img from hit-testing Test: fast/replaced/image-map-2.html * rendering/RenderImage.cpp: (WebCore::RenderImage::nodeAtPoint): Do not reset 'inside' to false if the image map failed the hit test. 2009-06-22 Adam Barth <abarth@webkit.org> Reviewed by Dimitri Glazkov. https://bugs.webkit.org/show_bug.cgi?id=26366 Refactor V8DOMMap to support isolated worlds. * bindings/v8/ScriptController.cpp: (WebCore::ScriptController::evaluateInNewWorld): * bindings/v8/ScriptController.h: * bindings/v8/V8DOMMap.cpp: (WebCore::DOMDataStore::InternalDOMWrapperMap::InternalDOMWrapperMap): (WebCore::DOMDataStore::allStores): (WebCore::DOMDataStore::allStoresMutex): (WebCore::DOMDataStore::domData): (WebCore::ScopedDOMDataStore::ScopedDOMDataStore): (WebCore::ScopedDOMDataStore::~ScopedDOMDataStore): (WebCore::StaticDOMDataStore::StaticDOMDataStore): (WebCore::): (WebCore::MainThreadDOMData::MainThreadDOMData): (WebCore::MainThreadDOMData::getStore): (WebCore::ChildThreadDOMData::ChildThreadDOMData): (WebCore::ChildThreadDOMData::getStore): (WebCore::DOMDataStore::DOMDataStore): (WebCore::DOMDataStore::~DOMDataStore): (WebCore::DOMDataStoreHandle::DOMDataStoreHandle): (WebCore::DOMDataStoreHandle::~DOMDataStoreHandle): (WebCore::::forget): (WebCore::getDOMNodeMap): (WebCore::getDOMObjectMap): (WebCore::getActiveDOMObjectMap): (WebCore::getDOMSVGElementInstanceMap): (WebCore::getDOMSVGObjectWithContextMap): (WebCore::DOMData::getCurrent): (WebCore::DOMData::handleWeakObject): (WebCore::DOMData::ensureDeref): (WebCore::weakDOMObjectCallback): (WebCore::weakActiveDOMObjectCallback): (WebCore::weakNodeCallback): (WebCore::weakSVGElementInstanceCallback): (WebCore::weakSVGObjectWithContextCallback): (WebCore::DOMData::derefObject): (WebCore::DOMData::derefDelayedObjects): (WebCore::DOMData::derefDelayedObjectsInCurrentThread): (WebCore::DOMData::removeObjectsFromWrapperMap): (WebCore::removeAllDOMObjectsInCurrentThreadHelper): (WebCore::visitDOMNodesInCurrentThread): (WebCore::visitDOMObjectsInCurrentThread): (WebCore::visitActiveDOMObjectsInCurrentThread): (WebCore::visitDOMSVGElementInstancesInCurrentThread): (WebCore::visitSVGObjectsInCurrentThread): * bindings/v8/V8DOMMap.h: (WebCore::DOMDataStoreHandle::getStore): * bindings/v8/V8IsolatedWorld.cpp: Added. (WebCore::getIsolatedWorldKey): (WebCore::contextWeakReferenceCallback): (WebCore::V8IsolatedWorld::evaluate): (WebCore::V8IsolatedWorld::V8IsolatedWorld): (WebCore::V8IsolatedWorld::~V8IsolatedWorld): (WebCore::V8IsolatedWorld::getEntered): * bindings/v8/V8IsolatedWorld.h: Added. (WebCore::V8IsolatedWorld::getDOMDataStore): 2009-06-24 Mikhail Naganov <mnaganov@chromium.org> Reviewed by Timothy Hatcher. Bug 26604: Search doesn't work in Web Inspector Profiler https://bugs.webkit.org/show_bug.cgi?id=26604 Seems like search was damaged in revision 42808. * inspector/front-end/ProfileView.js: (WebInspector.ProfileView.prototype.refresh): Here and in other functions: nodes we're searching in are profile data grid nodes, so there is no more need for '_dataGridNode' references. (WebInspector.ProfileView.prototype.searchCanceled): (WebInspector.ProfileView.prototype.performSearch.matchesQuery): Fixed accidental semicolon that caused 'matchesQuery' always return true. (WebInspector.ProfileView.prototype.performSearch): To perform search correctly in the case of bottom up tree, we need to populate the tree, because there's no 1-to-1 correspondence between profile nodes and data grid nodes in this case. (WebInspector.ProfileView.prototype._jumpToSearchResult): 2009-06-24 Simon Fraser <simon.fraser@apple.com> Reviewed by Darin Adler. <rdar://problem/6450239&6574516> Fix flashing issues caused by compositing layers rendering content before a deferred layout has happened. Because the -viewWillDraw machinery doesn't work for composited layers, we need to use scheduleViewUpdate() to queue up a layout via the run loop observer in WebKit, whenever we know we are going to be painting soon. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::setContentsNeedDisplay): (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): 2009-06-24 David Levin <levin@chromium.org> Fix all builds. * ForwardingHeaders/wtf/FastAllocBase.h: Added. 2009-06-24 Jeremy Orlow <jorlow@chromium.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=26658 Split the syncing portions of LocalStorageArea into StorageAreaSync. This name will make more sense in the next patch (in this set) when LocalStorageArea and SessionStorageArea are merged to become simply StorageArea. (Thus the synching portion of StorageArea is in StorageAreaSync.) This looks like a big patch, but really all it's doing is splitting code and patching split-related things up. * GNUmakefile.am: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::create): (WebCore::LocalStorageArea::LocalStorageArea): (WebCore::LocalStorageArea::scheduleFinalSync): (WebCore::LocalStorageArea::itemChanged): (WebCore::LocalStorageArea::itemRemoved): (WebCore::LocalStorageArea::areaCleared): (WebCore::LocalStorageArea::blockUntilImportComplete): * storage/LocalStorageArea.h: * storage/LocalStorageTask.cpp: (WebCore::LocalStorageTask::LocalStorageTask): * storage/LocalStorageTask.h: (WebCore::LocalStorageTask::createImport): (WebCore::LocalStorageTask::createSync): * storage/LocalStorageThread.cpp: (WebCore::LocalStorageThread::scheduleImport): (WebCore::LocalStorageThread::scheduleSync): * storage/LocalStorageThread.h: * storage/SessionStorageArea.cpp: (WebCore::SessionStorageArea::blockUntilImportComplete): * storage/SessionStorageArea.h: * storage/StorageArea.h: * storage/StorageAreaSync.cpp: Copied from WebCore/storage/LocalStorageArea.cpp. * storage/StorageAreaSync.h: Copied from WebCore/storage/LocalStorageArea.h. * storage/StorageSyncManager.cpp: (WebCore::StorageSyncManager::scheduleImport): (WebCore::StorageSyncManager::scheduleSync): * storage/StorageSyncManager.h: 2009-06-24 Adam Treat <adam.treat@torchmobile.com> Fix Qt build. * WebCore.pro: 2009-06-24 David Levin <levin@chromium.org> Reviewed by David Hyatt. Bug 26696: Member functions in DataGridColumnList should return pointers instead of PassRefPtr. https://bugs.webkit.org/show_bug.cgi?id=26696 * html/DataGridColumnList.cpp: (WebCore::DataGridColumnList::itemWithName): (WebCore::DataGridColumnList::add): * html/DataGridColumnList.h: (WebCore::DataGridColumnList::item): (WebCore::DataGridColumnList::primaryColumn): (WebCore::DataGridColumnList::sortColumn): 2009-06-24 Sam Weinig <sam@webkit.org> Reviewed by Dave "Messy" Hyatt. Little bit of style cleanup. * html/DataGridColumn.cpp: * html/DataGridColumn.h: * html/DataGridColumn.idl: * html/DataGridColumnList.cpp: * html/DataGridColumnList.h: * html/DataGridColumnList.idl: * html/HTMLDataGridCellElement.cpp: * html/HTMLDataGridCellElement.h: * html/HTMLDataGridCellElement.idl: * html/HTMLDataGridColElement.cpp: * html/HTMLDataGridColElement.h: * html/HTMLDataGridColElement.idl: * html/HTMLDataGridElement.h: * html/HTMLDataGridElement.idl: * html/HTMLDataGridRowElement.cpp: * html/HTMLDataGridRowElement.h: * html/HTMLDataGridRowElement.idl: 2009-06-24 Chris Fleizach <cfleizach@apple.com> Reviewed by Oliver Hunt. Bug 26668: AX: need a way to retrieve the language for an element Provides a way to retrieve the language associated with a specific accessibility element. Test: accessibility/language-attribute.html * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::language): * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::language): * accessibility/AccessibilityRenderObject.h: * accessibility/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): 2009-06-24 Brady Eidson <beidson@apple.com> Reviewed by Dan Bernstein. <rdar://problem/6893811> Instead of downloading files linked from Google Earth, file contents displayed in browser window as text. * platform/network/mac/WebCoreURLResponse.mm: (createBinaryExtensionsSet): Add '.kmz' to the list of known-to-be-binary extensions. 2009-06-24 Nicolas Weber <thakis@chromium.org> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26685 Accomodate for backwards-incompatible skia api changes. * platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::clearRect): (WebCore::GraphicsContext::setCompositeOperation): * platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::ImageBuffer): * platform/graphics/skia/ImageSkia.cpp: (WebCore::paintSkBitmap): (WebCore::Image::drawPattern): * platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::State::State): (PlatformContextSkia::setupPaintCommon): (PlatformContextSkia::setXfermodeMode): (PlatformContextSkia::applyClipFromImage): * platform/graphics/skia/PlatformContextSkia.h: * platform/graphics/skia/SkiaUtils.cpp: (WebCore::): (WebCore::WebCoreCompositeToSkiaComposite): * platform/graphics/skia/SkiaUtils.h: 2009-06-24 Jan Michael Alonzo <jmalonzo@webkit.org> Gtk build fix. Add files that were added in r45093 and r45096 * GNUmakefile.am: 2009-06-24 Brady Eidson <beidson@apple.com> Fix 64-bit SnowLeopard build. * html/DataGridColumnList.cpp: (WebCore::DataGridColumnList::remove): (WebCore::DataGridColumnList::move): 2009-06-24 Rob Buis <rwlbuis@gmail.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26392 Bug 26392: In html, modification of xlink:href of an newly inserted svg image does not work. https://bugs.webkit.org/show_bug.cgi?id=26328 Bug 26328: changing href attribute of svg images does not work when changing display attribute as well React to href updates even when there is no renderer, i.e. display=none. Tests: svg/custom/js-update-image-and-display.svg svg/custom/js-update-image-and-display2.svg svg/custom/js-update-image-and-display3.svg * svg/SVGImageElement.cpp: (WebCore::SVGImageElement::svgAttributeChanged): 2009-06-24 David Hyatt <hyatt@apple.com> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26687 Add basic back-end column support to datagrid. Added fast/dom/HTMLDataGridElement/ column tests. * DerivedSources.cpp: * DerivedSources.make: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * html/DataGridColumn.cpp: Added. (WebCore::DataGridColumn::setPrimary): * html/DataGridColumn.h: Added. (WebCore::DataGridColumn::create): (WebCore::DataGridColumn::id): (WebCore::DataGridColumn::setId): (WebCore::DataGridColumn::label): (WebCore::DataGridColumn::setLabel): (WebCore::DataGridColumn::type): (WebCore::DataGridColumn::setType): (WebCore::DataGridColumn::sortable): (WebCore::DataGridColumn::setSortable): (WebCore::DataGridColumn::sortDirection): (WebCore::DataGridColumn::setSortDirection): (WebCore::DataGridColumn::primary): (WebCore::DataGridColumn::detachFromColumnList): (WebCore::DataGridColumn::DataGridColumn): * html/DataGridColumn.idl: Added. * html/DataGridColumnList.cpp: Added. (WebCore::DataGridColumnList::~DataGridColumnList): (WebCore::DataGridColumnList::itemWithName): (WebCore::DataGridColumnList::add): (WebCore::DataGridColumnList::remove): (WebCore::DataGridColumnList::move): (WebCore::DataGridColumnList::clear): (WebCore::DataGridColumnList::primaryColumnChanged): * html/DataGridColumnList.h: Added. (WebCore::DataGridColumnList::create): (WebCore::DataGridColumnList::length): (WebCore::DataGridColumnList::item): (WebCore::DataGridColumnList::primaryColumn): (WebCore::DataGridColumnList::sortColumn): * html/DataGridColumnList.idl: Added. * html/HTMLDataGridColElement.cpp: (WebCore::HTMLDataGridColElement::sortable): (WebCore::HTMLDataGridColElement::setSortable): (WebCore::HTMLDataGridColElement::sortDirection): (WebCore::HTMLDataGridColElement::setSortDirection): * html/HTMLDataGridColElement.h: * html/HTMLDataGridColElement.idl: * html/HTMLDataGridElement.cpp: (WebCore::HTMLDataGridElement::HTMLDataGridElement): * html/HTMLDataGridElement.h: (WebCore::HTMLDataGridElement::columns): * html/HTMLDataGridElement.idl: * rendering/RenderDataGrid.cpp: (WebCore::RenderDataGrid::paintObject): (WebCore::RenderDataGrid::paintColumnHeaders): (WebCore::RenderDataGrid::rebuildColumns): * rendering/RenderDataGrid.h: (WebCore::RenderDataGrid::gridElement): 2009-06-24 Jessie _Berlin <jberlin@apple.com> Reviewed by Adam Roben. Partially fixes: https://bugs.webkit.org/show_bug.cgi?id=24735 (<rdar://problem/5015942>) Where on windows it was not possible to set an element as the drag image using setDragImage on the dataTransfer object. Does not "fix" the case of dragging a link where the default link image is still used, even when the -webkit-user-drag is set to "element". This is the same behavior as is found on OS X. Added a manual test because it is not possible to check that what is contained in the image snapshot is indeed the requested element. * dom/Clipboard.h: (WebCore::Clipboard::dragImageElement): Made getting the raw pointer from the RefPtr a const operation. * manual-tests/drag-with-div-or-image-as-data-image.html: Added. * platform/win/ClipboardWin.cpp: (WebCore::ClipboardWin::createDragImage): Get an image of the rendered element and its subtree. 2009-06-24 Darin Fisher <darin@chromium.org> Reviewed by David Levin. https://bugs.webkit.org/show_bug.cgi?id=26683 Fix Chromium build bustage: Add custom binding for HTMLDataGridElement.dataSource This change just adds a stub implementation for now to help fix the build. * bindings/v8/custom/V8CustomBinding.h: * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Added. 2009-06-24 David Kilzer <ddkilzer@apple.com> Build fixes for ENABLE(PLUGIN_PROXY_FOR_VIDEO) Reviewed by Adam Roben. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::deliverNotification): Removed ExceptionCode parameter from togglePlayState(). (WebCore::HTMLMediaElement::initialURL): Don't convert a KURL object to a String when assigning to a KURL variable. 2009-06-24 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> Reviewed by Adam Treat. Save memory by not storing attribute values in member variables, if not absolutely needed. Also fixes bugs where we're substituting variables too early (noticeable with the upcoming <select> element). * wml/WMLDoElement.cpp: (WebCore::WMLDoElement::parseMappedAttribute): (WebCore::WMLDoElement::label): * wml/WMLDoElement.h: * wml/WMLFieldSetElement.cpp: (WebCore::WMLFieldSetElement::insertedIntoDocument): * wml/WMLFieldSetElement.h: * wml/WMLOptGroupElement.cpp: (WebCore::WMLOptGroupElement::title): (WebCore::WMLOptGroupElement::parseMappedAttribute): (WebCore::WMLOptGroupElement::groupLabelText): * wml/WMLOptGroupElement.h: * wml/WMLPostfieldElement.cpp: (WebCore::WMLPostfieldElement::name): (WebCore::WMLPostfieldElement::value): (WebCore::WMLPostfieldElement::encodeData): * wml/WMLPostfieldElement.h: * wml/WMLSetvarElement.cpp: (WebCore::WMLSetvarElement::parseMappedAttribute): (WebCore::WMLSetvarElement::name): (WebCore::WMLSetvarElement::value): * wml/WMLSetvarElement.h: * wml/WMLTimerElement.cpp: (WebCore::WMLTimerElement::parseMappedAttribute): (WebCore::WMLTimerElement::insertedIntoDocument): (WebCore::WMLTimerElement::timerFired): (WebCore::WMLTimerElement::start): (WebCore::WMLTimerElement::value): * wml/WMLTimerElement.h: 2009-06-24 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> Reviewed by Adam Roben. Forgot to initialize m_task member variable. Results in crashes sometimes. * wml/WMLAnchorElement.cpp: (WebCore::WMLAnchorElement::WMLAnchorElement): 2009-06-24 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com> Not reviewed. Forgot to include within last patch. * manual-tests/wml/card-title-attr.wml: Added. 2009-06-24 Wajahat Siddiqui <wajahatmeister@gmail.com> Reviewed by Nikolas Zimmermann. Fixes: https://bugs.webkit.org/show_bug.cgi?id=26474 Adding WML <card> title attribute handling. * wml/WMLElement.h: marking parseValueSubstitutingVariableReferences and parseValueForbiddingVariableReferences as const * wml/WMLElement.cpp: * wml/WMLCardElement.h: (WebCore::WMLCardElement::title): * wml/WMLCardElement.cpp: * wml/manual-test/card-title-attr.wml: Manual test ++ b/WebKit/gtk/ChangeLog 2009-06-24 Jiahua Huang <jhuangjiahua@gmail.com> Reviewed by Holger Freyther. [Gtk] Add Undo/Redo support to WebKitGtk https://bugs.webkit.org/show_bug.cgi?id=26573 Implement EditorClient::undo and other interested funcs. * WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::registerCommandForUndo): (WebKit::EditorClient::registerCommandForRedo): (WebKit::EditorClient::clearUndoRedoOperations): (WebKit::EditorClient::canUndo): (WebKit::EditorClient::canRedo): (WebKit::EditorClient::undo): (WebKit::EditorClient::redo): (WebKit::EditorClient::EditorClient): * WebCoreSupport/EditorClientGtk.h: ++ b/WebKit/gtk/po/ChangeLog 2009-06-25 Duy Nguyen <pclouds@gmail.com> Rubber-stamped by Jan Alonzo. Gtk port Vietnamese translation https://bugs.webkit.org/show_bug.cgi?id=26739 * vi.po: Added. ++ b/WebKit/mac/ChangeLog 2009-06-26 Alexey Proskuryakov <ap@webkit.org> Reviewed by Sam Weinig. <rdar://problem/6651201> Update lookalike character list. * Misc/WebNSURLExtras.mm: (isLookalikeCharacter): Added more characters to the list. 2009-06-25 Anders Carlsson <andersca@apple.com> Reviewed by Oliver Hunt. <rdar://problem/6989017> REGRESSION (SnowLeopard): RealPlayer content replays when opening a new tab or switching back to the RealPlayer tab If a plug-in fails in NPP_New, we would try to recreate it whenever the preferences for a web view would change. Fix this by setting a flag when we fail to instantiate the plug-in, so we only try once. * Plugins/WebBaseNetscapePluginView.h: * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView start]): 2009-06-25 Chris Marrin <cmarrin@apple.com> Reviewed by Simon Fraser <simon.fraser@apple.com>. https://bugs.webkit.org/show_bug.cgi?id=26651 Preference is named "WebKitAcceleratedCompositingEnabled" and is a boolean value. When false, prevents compositing layers from being created, which prevents hardware animation from running. Also forces video to do software rendering. Added a cache for the flag in RenderLayerCompositing and made it all work on-the-fly when the flag is changed while a page is loaded. * WebView/WebPreferenceKeysPrivate.h: * WebView/WebPreferences.h: * WebView/WebPreferences.mm: (+[WebPreferences initialize]): (-[WebPreferences acceleratedCompositingEnabled]): (-[WebPreferences setAcceleratedCompositingEnabled:]): * WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): 2009-06-24 Dan Bernstein <mitz@apple.com> Reviewed by Anders Carlsson. Fix the most recently seen kind of crash in <rdar://problem/5983224> * WebView/WebHTMLView.mm: (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Null-check the Frame. ++ b/WebKit/qt/ChangeLog 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Add support for saving and loading of QWebHistory to and from a QByteArray. This includes streaming operators for QWebHistory. for convenience. New autotests that test QWebHistory and QWebHistoryItem serialization. * Api/qwebhistory.cpp: (QWebHistory::restoreState): (QWebHistory::saveState): (operator<<): (operator>>): * Api/qwebhistory.h: * Api/qwebhistory_p.h: * tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::): (tst_QWebHistory::init): (tst_QWebHistory::title): (tst_QWebHistory::count): (tst_QWebHistory::back): (tst_QWebHistory::forward): (tst_QWebHistory::itemAt): (tst_QWebHistory::goToItem): (tst_QWebHistory::items): (tst_QWebHistory::serialize_1): (tst_QWebHistory::serialize_2): (tst_QWebHistory::serialize_3): (tst_QWebHistory::saveAndRestore_1): (tst_QWebHistory::saveAndRestore_2): (tst_QWebHistory::saveAndRestore_3): 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Fix the behaviour of QWebHistory::itemAt to interpret the specified index as absolute index. Returns an invalid QWebHistoryItem if the index is out of range. * Api/qwebhistory.cpp: (QWebHistory::itemAt): * tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::itemAt): 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Added a few autotest to QWebHistory. * tests/qwebhistory/data/page1.html: Added. * tests/qwebhistory/data/page2.html: Added. * tests/qwebhistory/data/page3.html: Added. * tests/qwebhistory/data/page4.html: Added. * tests/qwebhistory/data/page5.html: Added. * tests/qwebhistory/data/page6.html: Added. * tests/qwebhistory/qwebhistory.pro: Added. * tests/qwebhistory/tst_qwebhistory.cpp: Added. (tst_QWebHistory::): (tst_QWebHistory::tst_QWebHistory): (tst_QWebHistory::~tst_QWebHistory): (tst_QWebHistory::init): (tst_QWebHistory::cleanup): (tst_QWebHistory::title): (tst_QWebHistory::count): (tst_QWebHistory::back): (tst_QWebHistory::forward): (tst_QWebHistory::goToItem): (tst_QWebHistory::items): * tests/qwebhistory/tst_qwebhistory.qrc: Added. * tests/tests.pro: 2009-06-26 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> Reviewed by Simon Hausmann. Fix support for documenting functions prefixed with QWEBKIT_EXPORT Add QWEBKIT_EXPORT to the list of macros to ignore by qdoc. * docs/qtwebkit.qdocconf: 2009-06-26 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Eric Seidel. Bug 20303: [Qt] Key events are not working in frames. Send scrolling events to current focused frame, bubble the event up to parent frame if it is not handled. Use EventHandler's new shared scrolling code. * Api/qwebpage.cpp: (QWebPagePrivate::keyPressEvent): (QWebPagePrivate::handleScrolling): * Api/qwebpage_p.h: 2009-06-25 Jakub Wieczorek <faw217@gmail.com> Reviewed by Adam Treat. Add highlight functionality to the QWebPage::findText() method. Introduced is new HighlightAllOccurrences flag which passed to the function will make it mark all existing occurrences of specified string in the page. * Api/qwebpage.cpp: (QWebPage::findText): * Api/qwebpage.h: * Api/qwebview.cpp: ++ b/WebKit/win/ChangeLog 2009-06-26 Yongjun Zhang <yongjun.zhang@nokia.com> Reviewed by Eric Seidel. Bug 20303: [Qt] Key events are not working in frames. Move the scroll handling code to EventHandler so that other ports can share the functionality. * WebView.cpp: (WebView::keyDown): (EnumTextMatches::QueryInterface): ++ b/WebKitLibraries/ChangeLog 2009-06-25 Simon Fraser <simon.fraser@apple.com> Rubber-stamped by Mark Rowe. <rdar://problem/6999737> Update the media controller images. * libWebKitSystemInterfaceLeopard.a: * libWebKitSystemInterfaceSnowLeopard.a: * libWebKitSystemInterfaceTiger.a: ++ b/WebKitSite/ChangeLog 2009-06-24 Brady Eidson <beidson@apple.com> Reviewed by Mark Rowe * demos/index.html: Fix more typos etc. ++ b/WebKitTools/ChangeLog 2009-06-26 Eric Seidel <eric@webkit.org> Reviewed by Tor Arne Vestbø. Remove non-sense --update option to land-patches and make land-patches update before every patch application. This makes it slightly less likely that multi-patch landings will fail. Also updated git diff command to include staged modifications. * Scripts/bugzilla-tool: * Scripts/modules/scm.py: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Jan Alonzo. Fix obsolete_attachment to work when passed a comment. https://bugs.webkit.org/show_bug.cgi?id=26745 * Scripts/modules/bugzilla.py: 2009-06-25 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by Mark Rowe. bugzilla-tool apply-patch throws exception in Linux https://bugs.webkit.org/show_bug.cgi?id=26738 HEAD is case-sensitive in Linux. Convert uses of head to HEAD in the scm module. * Scripts/modules/scm.py: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Jan Alonzo. bugzilla-tool post-diff needs to obsolete old patches before posting https://bugs.webkit.org/show_bug.cgi?id=26740 I've also added a --no-obsolete to disable this behavior. I also finally updated the bug page parsing to use XML. So much less code! * Scripts/bugzilla-tool: * Scripts/modules/bugzilla.py: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Mark Rowe. Call WebKitTools/Scripts scripts by their absolute paths https://bugs.webkit.org/show_bug.cgi?id=26704 bugzilla-tool used to use whatever build-webkit was in your path. That could end up building the wrong copy of WebKit. * Scripts/bugzilla-tool: * Scripts/modules/scm.py: 2009-06-25 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Dave Levin. Use unicode() instead of str when reading from bugzilla. Also add Simon Fraser as a reviewer. https://bugs.webkit.org/show_bug.cgi?id=26719 * Scripts/modules/bugzilla.py: 2009-06-25 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Simon Hausmann. Use Q_ASSERT in Qt's DumpRenderTree instead of JSC's ASSERT The WTFReportAssertionFailure function in JSC is not exported when building QtWebKit in both debug and release on Mac, so DRT fails to link. We can revert this patch once the Qt port builds JSC as a separate library, and we add the proper export macros to Assertions.cpp * DumpRenderTree/qt/WorkQueue.cpp: (WorkQueue::queue): (WorkQueue::dequeue): 2009-06-25 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Jan Alonzo. bugzilla-tool: Add Simon Hausmann as reviewer * Scripts/modules/bugzilla.py: 2009-06-24 Eric Seidel <eric@webkit.org> Reviewed by Dave Levin. Support local commits during apply-patches and let land-patches take multiple bug ids. https://bugs.webkit.org/show_bug.cgi?id=26703 I also restructured parts of land-patches into class methods and static methods in preparation for future code sharing with other commands. * Scripts/bugzilla-tool: * Scripts/modules/bugzilla.py: * Scripts/modules/scm.py: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Tor Arne Vestbø. Make svn-apply work with Git too https://bugs.webkit.org/show_bug.cgi?id=26299 Add an --force option to svn-apply and otherwise make svn-apply exit non-zero when patch application fails. https://bugs.webkit.org/show_bug.cgi?id=26300 I did not update svn-unapply, because it makes no sense in a Git world. You don't roll in and out patch files. You make commits and deal with those. Git users can just git reset --hard to get the same functionality. * Scripts/svn-apply: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Tor Arne Vestbø. Remove use of os.system to fix reviewers with unicode chars in their names https://bugs.webkit.org/show_bug.cgi?id=26713 Also change to latin1 encoding of ø to make python happy. * Scripts/modules/bugzilla.py: * Scripts/modules/scm.py: 2009-06-25 Eric Seidel <eric@webkit.org> Reviewed by Tor Arne Vestbø. Add Adam Roben and Tor Arne Vestbø to the reviewers list. * Scripts/modules/bugzilla.py: 2009-06-24 Chris Fleizach <cfleizach@apple.com> Windows build fix. * DumpRenderTree/win/AccessibilityUIElementWin.cpp: (AccessibilityUIElement::language): 2009-06-24 Chris Fleizach <cfleizach@apple.com> Reviewed by Oliver Hunt. Bug 26668: AX: need a way to retrieve the language for an element Support ability to retrieve AXLanguage for testing * DumpRenderTree/AccessibilityUIElement.cpp: (getLanguageCallback): (AccessibilityUIElement::getJSClass): * DumpRenderTree/AccessibilityUIElement.h: * DumpRenderTree/mac/AccessibilityUIElementMac.mm: (AccessibilityUIElement::language):
* Updated WebKit from /home/shausman/src/webkit/trunk to ↵Simon Hausmann2009-06-241-12/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | origin/qtwebkit-4.6-staging ( 9508ee9559a81a3401e2cd7e06ab74c590c84523 ) Changes in WebKit since the last update: ++ b/BugsSite/ChangeLog 2009-06-09 Eric Seidel <eric@webkit.org> Reviewed by Adam Roben. Add support for displaying added png files in PrettyPatch diffs https://bugs.webkit.org/show_bug.cgi?id=26210 Currently this is SVN only (git-send-bugzilla patches exclude binary data) and only works for PNG files but could easily be made to work for other images as needed. * PrettyPatch/PrettyPatch.rb: ++ b/ChangeLog 2009-06-20 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Jan Alonzo. Adding files for the new test case for loading statuses. * GNUmakefile.am: 2009-06-15 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Version bump in preparation for 1.1.10 release. * configure.ac: 2009-06-12 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Xan Lopez. Refactor handling of options in the build-webkit script Options are now defined in one place, and then reused when creating the usage help text, the arguments to GetOptions(), and when passing the options on to the underlying port-dependent build systems. This allows the Qt port to read the defaults for the options from the pro file (dynamically), and to pass the options on to qmake at build. * configure.ac: 2009-06-11 Laszlo Gombos <laszlo.1.gombos@nokia.com> Reviewed by Holger Freyther. [Qt] Fix release build detection https://bugs.webkit.org/show_bug.cgi?id=26267 * WebKit.pri: 2009-06-10 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Xan Lopez. Add unit tests for our WebKitNetworkRequest object. * GNUmakefile.am: 2009-06-10 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Version bump in preparation for 1.1.9 release. * configure.ac: 2009-06-10 Xan Lopez <xlopez@igalia.com> Reviewed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=25415 [GTK][ATK] Please implement support for get_text_at_offset Add new dependency on the Gail utils library, needed for our a11y implementation. * GNUmakefile.am: * configure.ac: ++ b/JavaScriptCore/ChangeLog 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. Inherits HashSet class from FastAllocBase, because it has been instantiated by 'new' in JavaScriptCore/runtime/Collector.h:116. * wtf/HashSet.h: 2009-06-24 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. Inherits Vector class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/runtime/Structure.cpp:633. * wtf/Vector.h: 2009-06-24 Norbert Leser <norbert.leser@nokia.com> Reviewed by Maciej Stachoviak. The BytecodeGenerator objects were instantiated on stack, which takes up ~38kB per instance (each instance includes copy of JSC::CodeBlock with large SymbolTable, etc.). Specifically, since there is nested invocation (e.g., GlobalCode --> FunctionCode), the stack overflows immediately on Symbian hardware (max. 80 kB). Proposed change allocates generator objects on heap. Performance impact (if any) should be negligible and change is proposed as general fix, rather than ifdef'd for SYMBIAN. * parser/Nodes.cpp: (JSC::ProgramNode::generateBytecode): (JSC::EvalNode::generateBytecode): (JSC::EvalNode::bytecodeForExceptionInfoReparse): (JSC::FunctionBodyNode::generateBytecode): (JSC::FunctionBodyNode::bytecodeForExceptionInfoReparse): 2009-06-23 Oliver Hunt <oliver@apple.com> Reviewed by Gavin Barraclough. <rdar://problem/6992806> REGRESSION: Enumeration can skip new properties in cases of prototypes that have more than 64 (26593) <https://bugs.webkit.org/show_bug.cgi?id=26593> Do not attempt to cache structure chains if they contain a dictionary at any level. * interpreter/Interpreter.cpp: (JSC::Interpreter::tryCachePutByID): (JSC::Interpreter::tryCacheGetByID): * runtime/Structure.cpp: (JSC::Structure::getEnumerablePropertyNames): (JSC::Structure::addPropertyTransition): * runtime/StructureChain.cpp: (JSC::StructureChain::isCacheable): * runtime/StructureChain.h: 2009-06-23 Yong Li <yong.li@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=26654 Add the proper export define for the JavaScriptCore API when building for WINCE. * API/JSBase.h: 2009-06-23 Joe Mason <joe.mason@torchmobile.com> Reviewed by Adam Treat. Authors: Yong Li <yong.li@torchmobile.com>, Joe Mason <joe.mason@torchmobile.com> https://bugs.webkit.org/show_bug.cgi?id=26611 Implement currentThreadStackBase on WINCE by adding a global, g_stackBase, which must be set to the address of a local variable by the caller before calling any WebKit function that invokes JSC. * runtime/Collector.cpp: (JSC::isPageWritable): (JSC::getStackBase): Starts at the top of the stack and returns the entire range of consecutive writable pages as an estimate of the actual stack. This will be much bigger than the actual stack range, so some dead objects can't be collected, but it guarantees live objects aren't collected prematurely. (JSC::currentThreadStackBase): On WinCE, returns g_stackBase if set or call getStackBase as a fallback if not. 2009-06-23 Oliver Hunt <oliver@apple.com> Reviewed by Alexey Proskuryakov. Fix stupid performance problem in the LiteralParser The LiteralParser was making a new UString in order to use toDouble, however UString's toDouble allows a much wider range of numberic strings than the LiteralParser accepts, and requires an additional heap allocation or two for the construciton of the UString. To rectify this we just call WTF::dtoa directly using a stack allocated buffer to hold the validated numeric literal. * runtime/LiteralParser.cpp: (JSC::LiteralParser::Lexer::lexNumber): (JSC::LiteralParser::parse): * runtime/LiteralParser.h: 2009-06-22 Oliver Hunt <oliver@apple.com> Reviewed by Alexey Proskuryakov. Bug 26640: JSON.stringify needs to special case Boolean objects <https://bugs.webkit.org/show_bug.cgi?id=26640> Add special case handling of the Boolean object so we match current ES5 errata. * runtime/JSONObject.cpp: (JSC::unwrapBoxedPrimitive): renamed from unwrapNumberOrString (JSC::gap): (JSC::Stringifier::appendStringifiedValue): 2009-06-22 Oliver Hunt <oliver@apple.com> Bug 26591: Support revivers in JSON.parse <https://bugs.webkit.org/show_bug.cgi?id=26591> Add reviver support to JSON.parse. This completes the JSON object. * runtime/JSONObject.cpp: (JSC::Walker::Walker): (JSC::Walker::callReviver): (JSC::Walker::walk): (JSC::JSONProtoFuncParse): 2009-06-21 Oliver Hunt <oliver@apple.com> Reviewed by Darin Adler. Bug 26592: Support standard toJSON functions <https://bugs.webkit.org/show_bug.cgi?id=26592> Add support for the standard Date.toJSON function. * runtime/DatePrototype.cpp: (JSC::dateProtoFuncToJSON): 2009-06-21 Oliver Hunt <oliver@apple.com> Bug 26594: JSC needs to support Date.toISOString <https://bugs.webkit.org/show_bug.cgi?id=26594> Add support for Date.toISOString. * runtime/DatePrototype.cpp: (JSC::dateProtoFuncToISOString): 2009-06-21 Oliver Hunt <oliver@apple.com> Reviewed by NOBODY (Build fix). Remove dead code. * runtime/LiteralParser.cpp: (JSC::LiteralParser::parse): 2009-06-21 Oliver Hunt <oliver@apple.com> Reviewed by Darin Adler and Cameron Zwarich. Bug 26587: Support JSON.parse <https://bugs.webkit.org/show_bug.cgi?id=26587> Extend the LiteralParser to support the full strict JSON grammar, fix a few places where the grammar was incorrectly lenient. Doesn't yet support the JSON.parse reviver function but that does not block the JSON.parse functionality itself. * interpreter/Interpreter.cpp: (JSC::Interpreter::callEval): * runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncEval): * runtime/JSONObject.cpp: (JSC::JSONProtoFuncParse): (JSC::isSafeStringCharacter): (JSC::LiteralParser::parse): * runtime/LiteralParser.h: (JSC::LiteralParser::LiteralParser): (JSC::LiteralParser::tryJSONParse): (JSC::LiteralParser::): (JSC::LiteralParser::Lexer::Lexer): 2009-06-21 David Levin <levin@chromium.org> Reviewed by NOBODY (speculative build fix for windows). Simply removed some whitespace form this file to make windows build wtf and hopefully copy the new MessageQueque.h so that WebCore picks it up. * wtf/Assertions.cpp: 2009-06-21 Drew Wilson <atwilson@google.com> Reviewed by David Levin. <https://bugs.webkit.org/show_bug.cgi?id=25043> Added support for multi-threaded MessagePorts. * wtf/MessageQueue.h: (WTF::::appendAndCheckEmpty): Added API to test whether the queue was empty before adding an element. 2009-06-20 David D. Kilzer <ddkilzer@webkit.org> Fix namespace comment in SegmentedVector.h * wtf/SegmentedVector.h: Updated namespace comment to reflect new namespace after r44897. 2009-06-20 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> Bug 24986: ARM JIT port <https://bugs.webkit.org/show_bug.cgi?id=24986> An Iterator added for SegmentedVector. Currently only the pre ++ operator is supported. * wtf/SegmentedVector.h: (WTF::SegmentedVectorIterator::~SegmentedVectorIterator): (WTF::SegmentedVectorIterator::operator*): (WTF::SegmentedVectorIterator::operator->): (WTF::SegmentedVectorIterator::operator++): (WTF::SegmentedVectorIterator::operator==): (WTF::SegmentedVectorIterator::operator!=): (WTF::SegmentedVectorIterator::operator=): (WTF::SegmentedVectorIterator::SegmentedVectorIterator): (WTF::SegmentedVector::alloc): (WTF::SegmentedVector::begin): (WTF::SegmentedVector::end): 2009-06-20 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> Bug 24986: ARM JIT port <https://bugs.webkit.org/show_bug.cgi?id=24986> Move SegmentedVector to /wtf subdirectory and change "namespace JSC" to "namespace WTF" Additional build file updates by David Kilzer. * GNUmakefile.am: Updated path to SegmentedVector.h. * JavaScriptCore.order: Updated SegmentedVector namespace from JSC to WTF in mangled C++ method name. Removed reference to bytecompiler\SegmentedVector.h. * JavaScriptCore.vcproj/WTF/WTF.vcproj: Added reference to wtf\SegmentedVector.h. * JavaScriptCore.xcodeproj/project.pbxproj: Moved SegmentedVector.h definition from bytecompiler subdirectory to wtf subdirectory. * bytecompiler/BytecodeGenerator.h: Updated #include path to SegmentedVector.h and prepended WTF:: namespace to its use. * parser/Lexer.h: Ditto. * wtf/SegmentedVector.h: Renamed from JavaScriptCore/bytecompiler/SegmentedVector.h. (WTF::SegmentedVector::SegmentedVector): (WTF::SegmentedVector::~SegmentedVector): (WTF::SegmentedVector::size): (WTF::SegmentedVector::at): (WTF::SegmentedVector::operator[]): (WTF::SegmentedVector::last): (WTF::SegmentedVector::append): (WTF::SegmentedVector::removeLast): (WTF::SegmentedVector::grow): (WTF::SegmentedVector::clear): (WTF::SegmentedVector::deleteAllSegments): (WTF::SegmentedVector::segmentExistsFor): (WTF::SegmentedVector::segmentFor): (WTF::SegmentedVector::subscriptFor): (WTF::SegmentedVector::ensureSegmentsFor): (WTF::SegmentedVector::ensureSegment): 2009-06-19 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (build fix take 2 - rename FIELD_OFFSET to something that doesn't conflict with winnt.h). (JSC::JIT::emitGetVariableObjectRegister): (JSC::JIT::emitPutVariableObjectRegister): (JSC::JIT::compileOpCallInitializeCallFrame): (JSC::JIT::checkStructure): * jit/JITOpcodes.cpp: (JSC::JIT::emit_op_instanceof): (JSC::JIT::emit_op_get_scoped_var): (JSC::JIT::emit_op_put_scoped_var): (JSC::JIT::emit_op_construct_verify): (JSC::JIT::emit_op_resolve_global): (JSC::JIT::emit_op_jeq_null): (JSC::JIT::emit_op_jneq_null): (JSC::JIT::emit_op_to_jsnumber): (JSC::JIT::emit_op_catch): (JSC::JIT::emit_op_eq_null): (JSC::JIT::emit_op_neq_null): (JSC::JIT::emit_op_convert_this): (JSC::JIT::emit_op_profile_will_call): (JSC::JIT::emit_op_profile_did_call): (JSC::JIT::emitSlow_op_get_by_val): * jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_get_by_val): (JSC::JIT::emit_op_put_by_val): (JSC::JIT::emit_op_method_check): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JITThunks::JITThunks): 2009-06-19 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (Windows build fix). 2009-06-19 Gabor Loki <loki@inf.u-szeged.hu> Reorganize ARM architecture specific macros. Use PLATFORM_ARM_ARCH(7) instead of PLATFORM(ARM_V7). Bug 24986: ARM JIT port <https://bugs.webkit.org/show_bug.cgi?id=24986> * assembler/ARMv7Assembler.h: * assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::Imm32::Imm32): * assembler/MacroAssembler.h: * assembler/MacroAssemblerCodeRef.h: (JSC::MacroAssemblerCodePtr::MacroAssemblerCodePtr): (JSC::ExecutableAllocator::cacheFlush): * jit/JITInlineMethods.h: (JSC::JIT::restoreArgumentReferenceForTrampoline): * wtf/Platform.h: * yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::generateEnter): (JSC::Yarr::RegexGenerator::generateReturn): 2009-06-19 Gavin Barraclough <barraclough@apple.com> Fix armv7 JIT build issues. Unfortunate the arm compiler does not like the use of offsetof on JITStackFrame (since it now contains non POD types), and the FIELD_OFFSET macro does not appear constantish enough for it to be happy with its use in COMPILE_ASSERT macros. * Replace offsetofs with FIELD_OFFSETs (safe on C++ objects). * Move COMPILE_ASSERTs defending layout of JITStackFrame structure on armv7 into JITThunks constructor. (JSC::JIT::restoreArgumentReference): * jit/JITOpcodes.cpp: (JSC::JIT::emit_op_catch): (JSC::JITThunks::JITThunks): 2009-06-19 Adam Treat <adam.treat@torchmobile.com> Blind attempt at build fix. 2009-06-19 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Inherits CallIdentifier struct from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/profiler/CallIdentifier.h:86. * wtf/HashCountedSet.h: 2009-06-19 Adam Treat <adam.treat@torchmobile.com> https://bugs.webkit.org/show_bug.cgi?id=26540 Modify the test shell to add a new function 'checkSyntax' that will only parse the source instead of executing it. In this way we can test pure parsing performance against some of the larger scripts in the wild. (functionCheckSyntax): 2009-06-19 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. Inherits HashCountedSet class from FastAllocBase because it has been instantiated by 'new' in JavaScriptCore/runtime/Collector.cpp:1095. * wtf/HashCountedSet.h: 2009-06-19 Yong Li <yong.li@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=26558 Declare these symbols extern for WINCE as they are provided by libce. 2009-06-19 Oliver Hunt <oliver@apple.com> <rdar://problem/6988973> ScopeChain leak in interpreter builds Move the Scopechain destruction code in JSFunction outside of the ENABLE(JIT) path. * runtime/JSFunction.cpp: (JSC::JSFunction::~JSFunction): 2009-06-19 Yong Li <yong.li@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=26543 Windows CE uses 'GetLastError' instead of 'errno.' 2009-06-19 David Levin <levin@chromium.org> Reviewed by NOBODY (Windows build fix). Add export for Windows corresponding to OSX export done in r44844. 2009-06-18 Oliver Hunt <oliver@apple.com> Reviewed by Gavin "Viceroy of Venezuela" Barraclough. Bug 26532: Native functions do not correctly unlink from optimised callsites when they're collected <https://bugs.webkit.org/show_bug.cgi?id=26532> <rdar://problem/6625385> We need to make sure that each native function instance correctly unlinks any references to it when it is collected. Allowing this to happen required a few changes: * Every native function needs a codeblock to track the link information * To have this codeblock, every function now also needs its own functionbodynode so we no longer get to have a single shared instance. * Identifying a host function is now done by looking for CodeBlock::codeType() == NativeCode (JSC::CodeBlock::CodeBlock): Constructor for NativeCode CodeBlock (JSC::CodeBlock::derefStructures): (JSC::CodeBlock::refStructures): (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): (JSC::CodeBlock::handlerForBytecodeOffset): (JSC::CodeBlock::lineNumberForBytecodeOffset): (JSC::CodeBlock::expressionRangeForBytecodeOffset): (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): (JSC::CodeBlock::functionRegisterForBytecodeOffset): (JSC::CodeBlock::hasGlobalResolveInstructionAtBytecodeOffset): (JSC::CodeBlock::hasGlobalResolveInfoAtBytecodeOffset): (JSC::CodeBlock::setJITCode): Add assertions to ensure we don't try and use NativeCode CodeBlocks as a normal codeblock. * bytecode/CodeBlock.h: (JSC::CodeBlock::source): (JSC::CodeBlock::sourceOffset): (JSC::CodeBlock::evalCodeCache): (JSC::CodeBlock::createRareDataIfNecessary): More assertions. (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::linkCall): Update logic to allow native function caching * jit/JITStubs.cpp: (JSC::FunctionBodyNode::createNativeThunk): (JSC::FunctionBodyNode::isHostFunction): * runtime/JSFunction.cpp: (JSC::JSFunction::JSFunction): (JSC::JSFunction::~JSFunction): (JSC::JSFunction::mark): (JSC::JSGlobalData::~JSGlobalData): 2009-06-18 Gavin Barraclough <barraclough@apple.com> Reviewed by NOBODY (Windows build fix). * wtf/DateMath.cpp: (WTF::calculateUTCOffset): 2009-06-18 Gavin Barraclough <barraclough@apple.com> Reviewed by Geoff Garen. Timezone calculation incorrect in Venezuela. https://bugs.webkit.org/show_bug.cgi?id=26531 <rdar://problem/6646169> Time is incorrectly reported to JavaScript in both Safari 3 and Firefox 3 The problem is that we're calculating the timezone relative to 01/01/2000, but the VET timezone changed from -4 hours to -4:30 hours on 12/09/2007. According to the spec, section 15.9.1.9 states "the time since the beginning of the year", presumably meaning the *current* year. Change the calculation to be based on whatever the current year is, rather than a canned date. No performance impact. * wtf/DateMath.cpp: (WTF::calculateUTCOffset): 2009-06-18 Gavin Barraclough <barraclough@apple.com> Rubber Stamped by Mark Rowe (originally reviewed by Sam Weinig). (Reintroducing patch added in r44492, and reverted in r44796.) Change the implementation of op_throw so the stub function always modifies its return address - if it doesn't find a 'catch' it will switch to a trampoline to force a return from JIT execution. This saves memory, by avoiding the need for a unique return for every op_throw. * jit/JITOpcodes.cpp: (JSC::JIT::emit_op_throw): JITStubs::cti_op_throw now always changes its return address, remove return code generated after the stub call (this is now handled by ctiOpThrowNotCaught). Add ctiOpThrowNotCaught definitions. (JSC::JITStubs::DEFINE_STUB_FUNCTION): Change cti_op_throw to always change its return address. * jit/JITStubs.h: Add ctiOpThrowNotCaught declaration. 2009-06-18 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6940880> REGRESSION: Breakpoints don't break in 64-bit - Exposed functions now needed by WebCore. * JavaScriptCore.exp: 2009-06-17 Darin Adler <darin@apple.com> Bug 26429: Make JSON.stringify non-recursive so it can handle objects of arbitrary complexity https://bugs.webkit.org/show_bug.cgi?id=26429 For marking I decided not to use gcProtect, because this is inside the engine so it's easy enough to just do marking. And that darned gcProtect does locking! Oliver tried to convince me to used MarkedArgumentBuffer, but the constructor for that class says "FIXME: Remove all clients of this API, then remove this API." * runtime/Collector.cpp: (JSC::Heap::collect): Add a call to JSONObject::markStringifiers. * runtime/CommonIdentifiers.cpp: (JSC::CommonIdentifiers::CommonIdentifiers): Added emptyIdentifier. * runtime/CommonIdentifiers.h: Ditto. (JSC::JSGlobalData::JSGlobalData): Initialize firstStringifierToMark to 0. * runtime/JSGlobalData.h: Added firstStringifierToMark. * runtime/JSONObject.cpp: Cut down the includes to the needed ones only. (JSC::unwrapNumberOrString): Added. Helper for unwrapping number and string objects to get their number and string values. (JSC::ReplacerPropertyName::ReplacerPropertyName): Added. The class is used to wrap an identifier or integer so we don't have to do any work unless we actually call a replacer. (JSC::ReplacerPropertyName::value): Added. (JSC::gap): Added. Helper function for the Stringifier constructor. (JSC::PropertyNameForFunctionCall::PropertyNameForFunctionCall): Added. The class is used to wrap an identifier or integer so we don't have to allocate a number or string until we actually call toJSON or a replacer. (JSC::PropertyNameForFunctionCall::asJSValue): Added. (JSC::Stringifier::Stringifier): Updated and moved out of the class definition. Added code to hook this into a singly linked list for marking. (JSC::Stringifier::~Stringifier): Remove from the singly linked list. (JSC::Stringifier::mark): Mark all the objects in the holder stacks. (JSC::Stringifier::stringify): Updated. (JSC::Stringifier::appendQuotedString): Tweaked and streamlined a bit. (JSC::Stringifier::toJSON): Renamed from toJSONValue. (JSC::Stringifier::appendStringifiedValue): Renamed from stringify. Added code to use the m_holderStack to do non-recursive stringify of objects and arrays. This code also uses the timeout checker since in pathological cases it could be slow even without calling into the JavaScript virtual machine. (JSC::Stringifier::willIndent): Added. (JSC::Stringifier::indent): Added. (JSC::Stringifier::unindent): Added. (JSC::Stringifier::startNewLine): Added. (JSC::Stringifier::Holder::Holder): Added. (JSC::Stringifier::Holder::appendNextProperty): Added. This is the function that handles the format of arrays and objects. (JSC::JSONObject::getOwnPropertySlot): Moved this down to the bottom of the file so the JSONObject class is not interleaved with the Stringifier class. (JSC::JSONObject::markStringifiers): Added. Calls mark. (JSC::JSONProtoFuncStringify): Streamlined the code here. The code to compute the gap string is now a separate function. * runtime/JSONObject.h: Made everything private. Added markStringifiers. 2009-06-17 Oliver Hunt <oliver@apple.com> Reviewed by Gavin Barraclough. <rdar://problem/6974140> REGRESSION(r43849): Crash in cti_op_call_NotJSFunction when getting directions on maps.google.com Roll out r43849 as it appears that we cannot rely on the address of an objects property storage being constant even if the structure is unchanged. (JSC::JIT::compileGetDirectOffset): 2009-06-17 Gavin Barraclough <barraclough@apple.com> Rubber Stamped by Mark Rowe. Fully revert r44492 & r44748 while we fix a bug they cause on internal builds <rdar://problem/6955963>. * jit/JITOpcodes.cpp: (JSC::JIT::emit_op_throw): * jit/JITStubs.cpp: (JSC::JITStubs::DEFINE_STUB_FUNCTION): * jit/JITStubs.h: 2009-06-17 Gavin Barraclough <barraclough@apple.com> <rdar://problem/6947426> sunspider math-cordic.js exhibits different intermediate results running 32-bit vs. 64-bit On 64-bit, NaN-encoded values must be detagged before they can be used in rshift. (JSC::JIT::emit_op_rshift): 2009-06-17 Adam Treat <adam.treat@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=23155 Move WIN_CE -> WINCE as previously discussed with Qt WINCE folks. 2009-06-17 George Staikos <george.staikos@torchmobile.com> Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=23155 Move WIN_CE -> WINCE as previously discussed with Qt WINCE folks. * config.h: * jsc.cpp: * wtf/Assertions.cpp: * wtf/Assertions.h: * wtf/CurrentTime.cpp: (WTF::lowResUTCTime): * wtf/DateMath.cpp: (WTF::getLocalTime): * wtf/MathExtras.h: * wtf/StringExtras.h: * wtf/Threading.h: * wtf/win/MainThreadWin.cpp: 2009-06-17 Gavin Barraclough <barraclough@apple.com> <rdar://problem/6974175> ASSERT in JITStubs.cpp at appsaccess.apple.com Remove PropertySlot::putValue - PropertySlots should only be used for getting, not putting. Rename JSGlobalObject::getOwnPropertySlot to hasOwnPropertyForWrite, which is what it really was being used to ask, and remove some other getOwnPropertySlot & getOwnPropertySlotForWrite methods, which were unused and likely to lead to confusion. (JSC::JSGlobalObject::hasOwnPropertyForWrite): 2009-06-16 Gavin Barraclough <barraclough@apple.com> Reviewed by Oliver hunt. Temporarily partially disable r44492, since this is causing some problems on internal builds. * jit/JITOpcodes.cpp: (JSC::JIT::emit_op_throw): * jit/JITStubs.cpp: (JSC::JITStubs::DEFINE_STUB_FUNCTION): 2009-06-16 Sam Weinig <sam@webkit.org> Fix windows build. 2009-06-16 Sam Weinig <sam@webkit.org> Initialize m_bytecodeIndex to -1 in JIT, and correctly initialize it for each type of stub using the return address to find the correct offset. (JSC::JIT::compileGetByIdProto): (JSC::JIT::compileGetByIdChainList): * jit/JITStubCall.h: (JSC::JITStubCall::call): == Rolled over to ChangeLog-2009-06-16 == ++ b/JavaScriptGlue/ChangeLog 2009-06-19 Zoltan Horvath <hzoltan@inf.u-szeged.hu> Reviewed by Darin Adler. Add FastAllocBase.h to JavaScriptGlue's ForwardingHeaders/wtf, because it's needed by HashCountedSet.h on MAC. * ForwardingHeaders/wtf/FastAllocBase.h: Added. ++ b/LayoutTests/ChangeLog 2009-06-24 Oliver Hunt <oliver@apple.com> Reviewed by NOBODY (attempted test fix). Attempting to make test more reliable. * media/video-canvas.html: 2009-06-05 Eric Seidel <eric@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=25922 Fix dropEffect = "none" to work as expected. * fast/events/drag-to-navigate-expected.txt: Copied from LayoutTests/editing/selection/doubleclick-whitespace-img-crash-expected.txt. * fast/events/drag-to-navigate.html: Added. * fast/events/prevent-drag-to-navigate-expected.txt: Copied from LayoutTests/editing/selection/doubleclick-whitespace-img-crash-expected.txt. * fast/events/prevent-drag-to-navigate.html: Added. * fast/events/resources/file-for-drag-to-navigate.html: Added. * fast/events/resources/file-for-prevent-drag-to-navigate.html: Added. 2009-06-23 Oliver Hunt <oliver@apple.com> Reviewed by NOBODY (missed a file). Add expected results for test i landed earlier * fast/js/dictionary-no-cache-expected.txt: Added. 2009-06-23 Oliver Hunt <oliver@apple.com> and Eric Carlson <eric.carlson@apple.com> Reviewed by Sam Weinig and Dave Hyatt. <rdar://problem/6164797> Add Canvas API to allow drawing of <video> frames <https://bugs.webkit.org/show_bug.cgi?id=25920> Add tests for drawing a video to the canvas element. * media/video-canvas-expected.txt: Added. * media/video-canvas.html: Added. 2009-06-23 Oliver Hunt <oliver@apple.com> <rdar://problem/6992806> REGRESSION: Enumeration can skip new properties in cases of prototypes that have more than 64 (26593) <https://bugs.webkit.org/show_bug.cgi?id=26593> Add tests to ensure we correctly invalidate caching that depends on structure chains that include dictionaries. * fast/js/dictionary-no-cache.html: Added. * fast/js/dictionary-no-cache-expected.txt: Added. * fast/js/resources/dictionary-no-cache.js: Added. 2009-06-23 Ojan Vafai <ojan@chromium.org> Reviewed by Mark Rowe. Resets the results for a test that was missed in http://trac.webkit.org/changeset/45016. * editing/execCommand/5142012-3-expected.txt: 2009-06-23 Sam Weinig <sam@webkit.org> Test for https://bugs.webkit.org/show_bug.cgi?id=26516 Add initial implementation of DataGridDataSource * fast/dom/HTMLDataGridElement: Added. * fast/dom/HTMLDataGridElement/DataGridDataSource-basic-expected.txt: Added. * fast/dom/HTMLDataGridElement/DataGridDataSource-basic.html: Added. 2009-06-23 Ryosuke Niwa <rniwa@google.com> Reviewed by Justin Garcia. Undo the changeset 21212 to fix the regression bug 14062. The changeset 21212 attempted to fix rdar://problem/5002441. The changeset 21212 modified InsertTextCommand::input so as to convert all spaces in text to non-breaking spaces for rdar://problem/5002441. However, the bug was originally caused by rebalanceWhitespaceAt and this workaround introduced a regression bug 14062. Because rebalanceWhitespaceAt appears to behave correctly now, the workaround introduced in 21212 is no longer needed. The following test cases are affected by this change. This patch removes unappropriate non-breaking spaces (&nbsp;) and inserts normal spaces instead. * editing/deleting/2610675-1-expected.txt: Replaced. * editing/deleting/2610675-2-expected.txt: Replaced. * editing/deleting/2610675-3-expected.txt: Replaced. * editing/inserting/insert-before-link-1-expected.txt: Replaced. * editing/inserting/space-after-removeformat-expected.txt: Added. * editing/inserting/space-after-removeformat.html: Added. * platform/mac/editing/execCommand/5482023-expected.checksum: Replaced. * platform/mac/editing/execCommand/5482023-expected.png: Replaced. * platform/mac/editing/execCommand/5482023-expected.txt: Replaced. * platform/mac/editing/input/text-input-controller-expected.txt: Replaced. * platform/mac/editing/inserting/editable-html-element-expected.checksum: Replaced. * platform/mac/editing/inserting/editable-html-element-expected.png: Replaced. * platform/mac/editing/inserting/editable-html-element-expected.txt: Replaced. * platform/mac/editing/pasteboard/4989774-expected.checksum: Replaced. * platform/mac/editing/pasteboard/4989774-expected.png: Replaced. * platform/mac/editing/pasteboard/4989774-expected.txt: Replaced. * platform/mac/editing/selection/4983858-expected.checksum: Replaced. * platform/mac/editing/selection/4983858-expected.png: Replaced. * platform/mac/editing/selection/4983858-expected.txt: Replaced. 2009-06-23 Beth Dakin <bdakin@apple.com> Test for https://bugs.webkit.org/show_bug.cgi?id=26523 <col> elements width can't be changed with javascript * fast/dom/HTMLTableColElement: Added. * fast/dom/HTMLTableColElement/resize-table-using-col-width.html: Added. * platform/mac/fast/dom/HTMLTableColElement: Added. * platform/mac/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.checksum: Added. * platform/mac/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Added. * platform/mac/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt: Added. 2009-06-23 Ojan Vafai <ojan@chromium.org> This test hits an edge case where typingStyle would never get cleared. In addition to making every text insertion go into its own text node, this caused large performance problems. https://bugs.webkit.org/show_bug.cgi?id=26279 These results match how they were before r43243. It's not clear to me why changes to font-size are affecting text-align styling though. * editing/inserting/font-size-clears-from-typing-style-expected.txt: Added. * editing/inserting/font-size-clears-from-typing-style.html: Added. * editing/inserting/resources/TEMPLATE.html: Copied from LayoutTests/editing/execCommand/resources/TEMPLATE.html. * editing/inserting/resources/font-size-clears-from-typing-style.js: Added. 2009-06-23 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6994790> CrashTracer: [USER] 8 crashes in Mail trying to add a blank line to pasted Facebook content (under CompositeEditCommand::positionAvoidingSpecialElementBoundary) * editing/inserting/return-with-object-element-expected.txt: Added. * editing/inserting/return-with-object-element.html: Added. 2009-06-23 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=24863 Testcase for reflections on composited layers. * compositing/reflections/reflection-on-composited.html: Added. * platform/mac/compositing/reflections/reflection-on-composited-expected.txt: Added. 2009-06-23 Antti Koivisto <antti@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26643 Memory cache should respect Cache-Control: no-store Update the test to cover no-store. * http/tests/cache/subresource-expiration-expected.txt: * http/tests/cache/subresource-expiration.html: 2009-06-23 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6902203> REGRESSION: 'Return' insertion point incorrect after manually quoting blank line then hitting return * editing/inserting/insert-br-quoted-007-expected.txt: Added. * editing/inserting/insert-br-quoted-007.html: Added. 2009-06-23 Eric Carlson <eric.carlson@apple.com> Reviewed by NOBODY, layout tests fix. 'timeupdate' events are, by definition, timing dependent so it isn't a good idea to log them in layout test results. * media/event-attributes-expected.txt: * media/event-attributes.html: 2009-06-23 Eric Carlson <eric.carlson@apple.com> <rdar://problem/6978938> Need HTML 5 event attributes for media elements * media/event-attributes-expected.txt: Added. * media/event-attributes.html: Added. * media/progress-event-total.html: Cleanup, use event handler attributes. * media/progress-event.html: Ditto. * media/video-size-intrinsic-scale.html: Remove duplicate 'waitForEvent("ratechange")' * media/video-source-add-src.html: Ditto. * media/video-source-error.html: Ditto. * media/video-timeupdate-during-playback.html: Ditto. * platform/gtk/Skipped: Skip new test. 2009-06-23 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26589 More tests for the XSSAuditor. (I converted the server side to Perl after Sam reviewed the patch because the PHP scripts didn't agree with the Tiger and Windows buildbots.) * http/tests/security/xssAuditor/img-onerror-tricky-expected.txt: Added. * http/tests/security/xssAuditor/img-onerror-tricky.html: Added. * http/tests/security/xssAuditor/link-onclick-expected.txt: Added. * http/tests/security/xssAuditor/link-onclick.html: Added. * http/tests/security/xssAuditor/property-escape-expected.txt: Added. * http/tests/security/xssAuditor/property-escape.html: Added. * http/tests/security/xssAuditor/resources/echo-intertag-post-and-notify.pl: Added. * http/tests/security/xssAuditor/resources/echo-intertag-post.pl: Added. * http/tests/security/xssAuditor/resources/echo-intertag-utf-7.pl: Added. * http/tests/security/xssAuditor/resources/echo-intertag.php: Removed. * http/tests/security/xssAuditor/resources/echo-intertag.pl: Added. * http/tests/security/xssAuditor/resources/echo-property.pl: Added. * http/tests/security/xssAuditor/resources/redir.php: Added. * http/tests/security/xssAuditor/resources/xss.js: Added. * http/tests/security/xssAuditor/script-tag-convoluted-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-convoluted.html: Added. * http/tests/security/xssAuditor/script-tag-open-redirect-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-open-redirect.html: Added. * http/tests/security/xssAuditor/script-tag-post-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-post.html: Added. * http/tests/security/xssAuditor/script-tag-redirect-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-redirect.html: Added. * http/tests/security/xssAuditor/script-tag-utf-7-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-utf-7.html: Added. * http/tests/security/xssAuditor/script-tag-with-source-expected.txt: Added. * http/tests/security/xssAuditor/script-tag-with-source.html: Added. * http/tests/security/xssAuditor/script-tag.html: 2009-06-22 Shinichiro Hamaji <hamaji@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=17820 Skip layout tests for DST if the test runs not in PST/PDT. * fast/js/date-DST-time-cusps-expected.txt: * fast/js/date-big-setdate-expected.txt: * fast/js/resources/date-DST-time-cusps.js: * fast/js/resources/date-big-setdate.js: 2009-06-22 Oliver Hunt <oliver@apple.com> Bug 26640: JSON.stringify needs to special case Boolean objects <https://bugs.webkit.org/show_bug.cgi?id=26640> Add tests for serialisation of wrapped and unwrapped primitives. * fast/js/JSON-stringify-expected.txt: * fast/js/resources/JSON-stringify.js: * fast/js/resources/json2-es5-compat.js: Modify Str() to match ES5 errata 2009-06-22 Sam Weinig <sam@webkit.org> Add event handler attribute getter/setters to HTMLFrameSetElement as specified in HTML 5. These match the ones on HTMLBodyElement. * fast/dom/event-attribute-availability-expected.txt: * fast/dom/resources/event-attribute-availability.js: 2009-06-22 Oliver Hunt <oliver@apple.com> Bug 26591: Support revivers in JSON.parse <https://bugs.webkit.org/show_bug.cgi?id=26591> Test cases for JSON.parse with a reviver function. * fast/js/JSON-parse-expected.txt: * fast/js/resources/JSON-parse.js: (createTests.log): (createTests.result): (createTests.logOrder): (createTests.var): (createTests.throwAfterFifthCall): (createTests): 2009-06-22 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26430 Testcase for a layer's composited position being affected by a later sibling. * compositing/sibling-positioning.html: Added. * platform/mac/compositing/sibling-positioning-expected.txt: Added. 2009-06-22 Sam Weinig <sam@webkit.org> Add event handler attribute getter/setters to HTMLBodyElement as specified in HTML 5. * fast/dom/event-attribute-availability-expected.txt: * fast/dom/resources/event-attribute-availability.js: 2009-06-22 David Levin <levin@chromium.org> Fix layout tests to account for removal of DOMStringList, which was done in http://trac.webkit.org/changeset/44943. 2009-06-22 David Levin <levin@chromium.org> Reviewed by David Hyatt and Eric Seidel. REGRESSION: When the main page (ScrollView) has a custom scrollbar, it crashes on destruction. https://bugs.webkit.org/show_bug.cgi?id=26326 Test that refreshing an iframe with custom scrollbars works without crashing. * scrollbars/resources/page-with-custom-scrollbars.html: Added. * scrollbars/scrollbar-crash-on-refresh-expected.txt: Added. * scrollbars/scrollbar-crash-on-refresh.html: Added. 2009-06-22 Dan Bernstein <mitz@apple.com> - test for https://bugs.webkit.org/show_bug.cgi?id=23606 <rdar://problem/6537777> CSS gradient not repainted when image load completes * fast/repaint/background-generated.html: Added. * platform/mac/fast/repaint/background-generated-expected.checksum: Added. * platform/mac/fast/repaint/background-generated-expected.png: Added. * platform/mac/fast/repaint/background-generated-expected.txt: Added. 2009-06-22 Darin Adler <darin@apple.com> * platform/gtk/Skipped: Skip two new tests. 2009-06-22 Darin Adler <darin@apple.com> * fast/js/JSON-stringify-expected.txt: Update results. 2009-06-21 Oliver Hunt <oliver@apple.com> Bug 26592: Support standard toJSON functions Add tests of Date.toJSON. * fast/js/JSON-stringify-expected.txt: * fast/js/resources/JSON-stringify.js: (createTests.result): (createTests.result.push.): 2009-06-21 Oliver Hunt <oliver@apple.com> Bug 26594: JSC needs to support Date.toISOString <https://bugs.webkit.org/show_bug.cgi?id=26594> A few basic correctness tests for Date.toISOString. * fast/js/date-toisostring-expected.txt: Added. * fast/js/date-toisostring.html: Added. * fast/js/resources/date-toisostring.js: Added. 2009-06-21 Sam Weinig <sam@webkit.org> Test for https://bugs.webkit.org/show_bug.cgi?id=26596 Only expose event handler attributes to elements and documents. * fast/dom/event-attribute-availability-expected.txt: Added. * fast/dom/event-attribute-availability.html: Added. * fast/dom/resources/event-attribute-availability.js: Added. 2009-06-21 Daniel Bates <dbates@intudata.com> Reviewed by Adam Barth. Test for https://bugs.webkit.org/show_bug.cgi?id=26580 Tests that XSSAuditor (if enabled) prevents script execution in child window. * http/tests/security/xssAuditor/link-opens-new-window-expected.txt: Added. * http/tests/security/xssAuditor/link-opens-new-window.html: Added. * http/tests/security/xssAuditor/resources/echo-intertag-and-notify.php: Added. 2009-06-21 Dan Bernstein <mitz@apple.com> - make repaint tests more reliable when run in Safari * fast/repaint/resources/repaint.js: (runRepaintTest): Increased the timeout from 0 to 100, to ensure that painting occurs once before repaintTest() is called. 2009-06-21 Oliver Hunt <oliver@apple.com> Reviewed by Darin Adler and Cameron Zwarich. Bug 26587: Support JSON.parse Add tests to cover basic usage of JSON.parse * fast/js/JSON-parse.html: Added. * fast/js/JSON-parse-expected.txt: Added. * fast/js/resources/JSON-parse.js: Added. (createTests.result): (createTests): 2009-06-21 Drew Wilson <atwilson@google.com> Reviewed by David Levin. <https://bugs.webkit.org/show_bug.cgi?id=26448> New tests for MessagePort GC cases that weren't previously covered. * fast/events/message-channel-gc-4-expected.txt: Added. Test for case where both MessagePorts are in-transit (cloned) when a GC occurs. * fast/events/message-channel-gc-4.html-disabled: Added. 2009-06-21 Drew Wilson <atwilson@google.com> Reviewed by David Levin. <https://bugs.webkit.org/show_bug.cgi?id=25043> Updated MessageChannel/MessagePorts tests to reflect latest spec (close event has been removed). Added more tests of port cloning. * fast/events/message-channel-gc-2-expected.txt: * fast/events/message-channel-gc-2.html-disabled: * fast/events/message-channel-gc-3-expected.txt: * fast/events/message-channel-gc-3.html-disabled: * fast/events/message-channel-gc-expected.txt: * fast/events/message-channel-gc.html-disabled: * fast/events/message-port-clone-expected.txt: Added. * fast/events/message-port-clone.html-disabled: Added. * fast/events/message-port-expected.txt: * fast/events/message-port-no-wrapper-expected.txt: Added. * fast/events/message-port-onclose-expected.txt: Removed. * fast/events/message-port-onclose.html-disabled: Removed. * fast/events/message-port.html-disabled: 2009-06-21 Dan Bernstein <mitz@apple.com> - test for https://bugs.webkit.org/show_bug.cgi?id=15383 <rdar://problem/5682745> resize: vertical does not restrict to vertical resize * fast/css/resize-single-axis-expected.txt: Added. * fast/css/resize-single-axis.html: Added. 2009-06-21 Sam Weinig <sam@webkit.org> Test for https://bugs.webkit.org/show_bug.cgi?id=26578 event.currentTarget for listener registered on window should point to the window object like in Firefox * fast/events/event-trace-expected.txt: Added. * fast/events/event-trace.html: Added. 2009-06-21 Dan Bernstein <mitz@apple.com> - test for https://bugs.webkit.org/show_bug.cgi?id=9694 resize value not compared * fast/css/resize-value-compared-expected.txt: Added. * fast/css/resize-value-compared.html: Added. 2009-06-21 Darin Adler <darin@apple.com> * platform/gtk/Skipped: Skip one more test. 2009-06-20 Darin Adler <darin@apple.com> * platform/gtk/Skipped: Skip some new tests. 2009-06-19 Alice Liu <alice.liu@apple.com> Fix https://bugs.webkit.org/show_bug.cgi?id=26568 Repro crash animating GIF if previously used in a closed window's back/forward list Also filed as <rdar://problem/6978362> Adding resource used in WebCore/manual-tests/animated-gif-bfcache-crash.html * http/tests/misc/resources/animated-gif-with-offsets.gif: Added. 2009-06-20 Sam Weinig <sam@webkit.org> Reviewed by Adam Barth. Test for https://bugs.webkit.org/show_bug.cgi?id=26554 Test writing to parent and top. * http/tests/security/cross-frame-access-put-expected.txt: * http/tests/security/cross-frame-access-put.html: * http/tests/security/resources/cross-frame-iframe-for-put-test.html: 2009-06-20 Mark Rowe <mrowe@apple.com> Test for <https://bugs.webkit.org/show_bug.cgi?id=15106>. Bug 15106: REGRESSION: Can't drag text as element when user-select is set to none * editing/selection/user-drag-element-and-user-select-none-expected.txt: Added. * editing/selection/user-drag-element-and-user-select-none.html: Added. 2009-06-20 Darin Adler <darin@apple.com> Bug 26528: REGRESSION (r44674): Assertion in TextIterator::pushFullyClippedState while counting matches for "a" on apple.com https://bugs.webkit.org/show_bug.cgi?id=26528 rdar://problem/6985329 * editing/selection/find-in-text-control-expected.txt: Updated to expect finding text in <input type="text"> and <input type="search">, but not in <input type="password">. * editing/selection/find-in-text-control.html: Added tests for <input> elements as well as <textarea> elements. Also tweaked result output format to accomodate multiple text nodes. 2009-06-20 Xan Lopez <xlopez@igalia.com> Skip new accessibility test, we still lack and accessibilityController. 2009-06-20 Xan Lopez <xlopez@igalia.com> We don't seem to support these new HTTP tests either, skip them. 2009-06-20 Xan Lopez <xlopez@igalia.com> Skip test that requires eventSender. 2009-06-19 Ryosuke Niwa <rniwa@google.com> This fixs the bug 26361. The original test case did not invoke the event that triggered the actual test. This patch adds code to invoke this event, and also converts it from a pixel test to a dumpAsText test. * editing/deleting/5156801-expected.txt: Added. * editing/deleting/5156801.html: * platform/mac/editing/deleting/5156801-expected.checksum: Removed. * platform/mac/editing/deleting/5156801-expected.png: Removed. * platform/mac/editing/deleting/5156801-expected.txt: Removed. * platform/qt/editing/deleting/5156801-expected.txt: Removed. 2009-06-19 David Hyatt <hyatt@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26547 Implement the IDL interface for HTMLDataGridColELement. 2009-06-19 Dan Bernstein <mitz@apple.com> - text for <rdar://problem/6967596> Safari hung using 100% CPU when I tried to look up a word in Dictionary using command-control-d * editing/selection/move-by-line-005-expected.txt: Added. * editing/selection/move-by-line-005.html: Added. 2009-06-19 Dan Bernstein <mitz@apple.com> Reviewed by Anders Carlsson. - update test results after r44806 * platform/mac/fast/replaced/width100percent-searchfield-expected.txt: 2009-06-18 Shinichiro Hamaji <hamaji@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26426 Use 1<<23-1 as steps of no-repeat patterns instead of 100000000.0f. The original number cannot be represented by mantissa of float (23bit) so that it caused some error. * fast/canvas/image-object-in-canvas.html: * platform/mac/fast/canvas/image-object-in-canvas-expected.txt: 2009-06-18 Adam Barth <abarth@webkit.org> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26199 Added a basic test for the XSSAuditor. * http/tests/security/xssAuditor/resources/echo-intertag.php: Added. * http/tests/security/xssAuditor/script-tag-expected.txt: Added. * http/tests/security/xssAuditor/script-tag.html: Added. 2009-06-18 Dirk Schulze <krit@webkit.org> Test for feOffset with the primitiveUnits objectBoundingBox and userSpaceOnUse. * platform/mac/svg/filters/feOffset-expected.checksum: Added. * platform/mac/svg/filters/feOffset-expected.png: Added. * platform/mac/svg/filters/feOffset-expected.txt: Added. * svg/filters/feOffset.svg: Added. 2009-06-18 Dirk Schulze <krit@webkit.org> Added a test of batik and a own one to check behavior of the new feTile effect in SVG. * platform/mac/svg/batik/filters/feTile-expected.checksum: Added. * platform/mac/svg/batik/filters/feTile-expected.png: Added. * platform/mac/svg/batik/filters/feTile-expected.txt: Added. * platform/mac/svg/filters/feTile-expected.checksum: Added. * platform/mac/svg/filters/feTile-expected.png: Added. * platform/mac/svg/filters/feTile-expected.txt: Added. * svg/batik/filters/feTile.svg: Added. * svg/filters/feTile.svg: Added. 2009-06-18 Dirk Schulze <krit@webkit.org> Check the feMerge implementation. * platform/mac/svg/filters/feMerge-expected.checksum: Added. * platform/mac/svg/filters/feMerge-expected.png: Added. * platform/mac/svg/filters/feMerge-expected.txt: Added. * svg/filters/feMerge.svg: Added. 2009-06-18 Chris Fleizach <cfleizach@apple.com> Test for Bug 26522: In DOM mode, VoiceOver reads some mouseover text on web sites strangely. Strangely the layout output for another test changed, but the actual test was ok. * accessibility/non-data-table-cell-title-ui-element-expected.txt: Added. * accessibility/non-data-table-cell-title-ui-element.html: Added. * platform/mac/accessibility/table-multi-bodies-expected.txt: 2009-06-18 Ryosuke Niwa <rniwa@google.com> The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/insertHTML-expected.txt: Added. * editing/execCommand/insertHTML.html: * editing/execCommand/switch-list-type-expected.txt: Added. * editing/execCommand/switch-list-type.html: * platform/mac/editing/execCommand/insertHTML-expected.checksum: Removed. * platform/mac/editing/execCommand/insertHTML-expected.png: Removed. * platform/mac/editing/execCommand/insertHTML-expected.txt: Removed. * platform/mac/editing/execCommand/switch-list-type-expected.checksum: Removed. * platform/mac/editing/execCommand/switch-list-type-expected.png: Removed. * platform/mac/editing/execCommand/switch-list-type-expected.txt: Removed. * platform/qt/editing/execCommand/insertHTML-expected.txt: Removed. * platform/qt/editing/execCommand/switch-list-type-expected.txt: Removed. 2009-06-18 Ryosuke Niwa <rniwa@google.com> The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/5207369-expected.txt: Added. * editing/execCommand/5207369.html: * editing/execCommand/5210032-expected.txt: Added. * editing/execCommand/5210032.html: * editing/execCommand/5432254-1-expected.txt: Added. * editing/execCommand/5432254-1.html: * platform/mac/editing/execCommand/5207369-expected.checksum: Removed. * platform/mac/editing/execCommand/5207369-expected.png: Removed. * platform/mac/editing/execCommand/5207369-expected.txt: Removed. * platform/mac/editing/execCommand/5210032-expected.checksum: Removed. * platform/mac/editing/execCommand/5210032-expected.png: Removed. * platform/mac/editing/execCommand/5210032-expected.txt: Removed. * platform/mac/editing/execCommand/5432254-1-expected.checksum: Removed. * platform/mac/editing/execCommand/5432254-1-expected.png: Removed. * platform/mac/editing/execCommand/5432254-1-expected.txt: Removed. * platform/qt/editing/execCommand/5207369-expected.txt: Removed. * platform/qt/editing/execCommand/5210032-expected.txt: Removed. * platform/qt/editing/execCommand/5432254-1-expected.txt: Removed. 2009-06-18 Ryosuke Niwa <rniwa@google.com> Reviewed by Eric Seidel. The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/5142012-3-expected.txt: Added. * editing/execCommand/5142012-3.html: * editing/execCommand/5144139-1-expected.txt: Added. * editing/execCommand/5144139-1.html: * editing/execCommand/5164796-expected.txt: Added. * editing/execCommand/5164796.html: * platform/mac/editing/execCommand/5142012-3-expected.checksum: Removed. * platform/mac/editing/execCommand/5142012-3-expected.png: Removed. * platform/mac/editing/execCommand/5142012-3-expected.txt: Removed. * platform/mac/editing/execCommand/5144139-1-expected.checksum: Removed. * platform/mac/editing/execCommand/5144139-1-expected.png: Removed. * platform/mac/editing/execCommand/5144139-1-expected.txt: Removed. * platform/mac/editing/execCommand/5164796-expected.checksum: Removed. * platform/mac/editing/execCommand/5164796-expected.png: Removed. * platform/mac/editing/execCommand/5164796-expected.txt: Removed. * platform/qt/editing/execCommand/5142012-3-expected.txt: Removed. * platform/qt/editing/execCommand/5144139-1-expected.txt: Removed. * platform/qt/editing/execCommand/5164796-expected.txt: Removed. 2009-06-18 Ryosuke Niwa <rniwa@google.com> Reviewed by Eric Seidel. The following pixel tests have been converted into dumpastext tests. This fixes the bug 26336 partially. * editing/execCommand/4916583-expected.txt: Added. * editing/execCommand/4916583.html: * editing/execCommand/5119244-expected.txt: Added. * editing/execCommand/5119244.html: * editing/execCommand/5120591-expected.txt: Added. * editing/execCommand/5120591.html: * platform/mac/editing/execCommand/4916583-expected.checksum: Removed. * platform/mac/editing/execCommand/4916583-expected.png: Removed. * platform/mac/editing/execCommand/4916583-expected.txt: Removed. * platform/mac/editing/execCommand/5119244-expected.checksum: Removed. * platform/mac/editing/execCommand/5119244-expected.png: Removed. * platform/mac/editing/execCommand/5119244-expected.txt: Removed. * platform/mac/editing/execCommand/5120591-expected.checksum: Removed. * platform/mac/editing/execCommand/5120591-expected.png: Removed. * platform/mac/editing/execCommand/5120591-expected.txt: Removed. * platform/qt/editing/execCommand/4916583-expected.txt: Removed. * platform/qt/editing/execCommand/5119244-expected.txt: Removed. * platform/qt/editing/execCommand/5120591-expected.txt: Removed. 2009-06-18 Simon Fraser <simon.fraser@apple.com> Reviewed by Dan Bernstein. <rdar://problem/6983207> Non-layer content is not re-rendered when transition starts sometimes (with hardware acceleration). * compositing/repaint/become-overlay-composited-layer.html: Added. * platform/mac/compositing/repaint/become-overlay-composited-layer-expected.txt: Added. 2009-06-18 Alexey Proskuryakov <ap@webkit.org> Reviewed by Maciej Stachowiak and Dave Levin. https://bugs.webkit.org/show_bug.cgi?id=26510 Add tests for authentication behavior with cross-origin XMLHttpRequest * http/tests/xmlhttprequest/cross-origin-authorization-expected.txt: Added. * http/tests/xmlhttprequest/cross-origin-authorization.html: Added. * http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt: Added. * http/tests/xmlhttprequest/cross-origin-no-authorization.html: Added. * http/tests/xmlhttprequest/resources/cross-origin-authorization.php: Added. * http/tests/xmlhttprequest/resources/cross-origin-check-cookies.php: Added. * http/tests/xmlhttprequest/resources/cross-origin-no-authorization.php: Added. * http/tests/xmlhttprequest/resources/cross-origin-preset-authorization-frame.html: Added. * platform/mac-tiger/Skipped: 2009-06-17 Darin Adler <darin@apple.com> Bug 26429: Make JSON.stringify non-recursive so it can handle objects of arbitrary complexity https://bugs.webkit.org/show_bug.cgi?id=26429 * fast/js/JSON-stringify-expected.txt: Updated. * fast/js/resources/JSON-stringify.js: Changed the infinite object and infinite array tests to instead just test something a fixed number of levels deep. Otherwise we end up with an infinite loop in the test, which would lead to the slow-script dialog in the production web browser. Also raised the number from 512 to 2048 since there's no fixed limit any more. 2009-06-17 Erik Arvidsson <arv@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=15189 Test case for textarea input event. * fast/forms/resources/textarea-input-event.js: Added. (handleDivOnInput): (handleTextareaOnInput): * fast/forms/textarea-input-event-expected.txt: Added. * fast/forms/textarea-input-event.html: Added. 2009-06-18 Rob Buis <rwlbuis@gmail.com> Reviewed by Niko. https://bugs.webkit.org/show_bug.cgi?id=26385 Root SVG element is not checked on requiredFeatures, requiredExtension like other elements Also do the isValid check for outer <svg>. * platform/mac/svg/custom/outer-svg-unknown-feature-expected.checksum: Added. * platform/mac/svg/custom/outer-svg-unknown-feature-expected.png: Added. * platform/mac/svg/custom/outer-svg-unknown-feature-expected.txt: Added. * svg/custom/outer-svg-unknown-feature.svg: Added. 2009-06-18 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26499 New expected results after making <video> elements get RenderLayers. * platform/mac/fast/replaced/border-radius-clip-expected.txt: 2009-06-18 Dan Bernstein <mitz@apple.com> - test and updated result for <rdar://problem/6913221> REGRESSION (Safari 3-4): Search field on apple.com cuts entered text * fast/forms/search-vertical-alignment.html: Added. * platform/mac/fast/forms/search-vertical-alignment-expected.checksum: Added. * platform/mac/fast/forms/search-vertical-alignment-expected.png: Added. * platform/mac/fast/forms/search-vertical-alignment-expected.txt: Added. * platform/mac/fast/forms/search-zoomed-expected.checksum: * platform/mac/fast/forms/search-zoomed-expected.png: * platform/mac/fast/forms/search-zoomed-expected.txt: 2009-06-18 Chris Evans <scarybeasts@gmail.com> Reviewed by Adam Barth. Added test for bug 26454 (broken 8-digit hex entities). https://bugs.webkit.org/show_bug.cgi?id=26454 * fast/parser/eightdigithexentity-expected.txt: Added. * fast/parser/eightdigithexentity.html: Added. 2009-06-17 Gavin Barraclough <barraclough@apple.com> Reviewed by Mark Rowe. Add tests to check shifts by non-constant amounts. * fast/js/kde/operators-expected.txt: * fast/js/kde/resources/operators.js: 2009-06-17 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26499 New expected results after making <video> elements get RenderLayers. * platform/mac/media/video-aspect-ratio-expected.txt: * platform/mac/media/video-controls-rendering-expected.txt: * platform/mac/media/video-display-toggle-expected.txt: * platform/mac/media/video-empty-source-expected.txt: * platform/mac/media/video-zoom-controls-expected.txt: * platform/mac/media/video-zoom-expected.txt: 2009-06-17 Simon Fraser <simon.fraser@apple.com> Update results after enabling 3d rendering on SnowLeopard. * platform/mac-leopard/fast/media/mq-transform-02-expected.checksum: Copied from LayoutTests/platform/mac/fast/media/mq-transform-02-expected.checksum. * platform/mac-leopard/fast/media/mq-transform-02-expected.png: Copied from LayoutTests/platform/mac/fast/media/mq-transform-02-expected.png. * platform/mac-leopard/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/mac/fast/media/mq-transform-02-expected.txt. * platform/mac-leopard/fast/media/mq-transform-03-expected.checksum: Copied from LayoutTests/platform/mac/fast/media/mq-transform-03-expected.checksum. * platform/mac-leopard/fast/media/mq-transform-03-expected.png: Copied from LayoutTests/platform/mac/fast/media/mq-transform-03-expected.png. * platform/mac-leopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/mac/fast/media/mq-transform-03-expected.txt. Copy the old "mac" results to "mac-leopard" since 3d-rendering is disabled there. * platform/mac/fast/media/mq-transform-02-expected.checksum: * platform/mac/fast/media/mq-transform-02-expected.png: * platform/mac/fast/media/mq-transform-02-expected.txt: * platform/mac/fast/media/mq-transform-03-expected.checksum: * platform/mac/fast/media/mq-transform-03-expected.png: * platform/mac/fast/media/mq-transform-03-expected.txt: New "mac" results for 3d rendering enabled. * platform/mac/transforms/3d/point-mapping/3d-point-mapping-2-expected.txt: * platform/mac/transforms/3d/point-mapping/3d-point-mapping-deep-expected.txt: * platform/mac/transforms/3d/point-mapping/3d-point-mapping-expected.txt: * platform/mac/transforms/3d/point-mapping/3d-point-mapping-origins-expected.txt: * platform/mac/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.txt: Update the results now that these tests are active. 2009-06-17 David Hyatt <hyatt@apple.com> Reviewed by Anders Carlsson. Update window properties layout test for HTMLDataGridElement addition. 2009-06-17 Adam Roben <aroben@apple.com> Fix Skipped file format after r44519 * platform/qt/Skipped: * platform/win/Skipped: Removed bogus ": Added."s in these files. 2009-06-17 David Levin <levin@chromium.org> Reviewed by NOBODY, layout tests fix. https://bugs.webkit.org/show_bug.cgi?id=26326 This reverts commit r44751. Once that change was checked scrollbars/scrollbar-orientation.html started crashing on Windows. * scrollbars/resources/page-with-custom-scrollbars.html: Removed. * scrollbars/scrollbar-crash-on-refresh-expected.txt: Removed. * scrollbars/scrollbar-crash-on-refresh.html: Removed. 2009-06-16 David Levin <levin@chromium.org> Reviewed by David Hyatt. REGRESSION: When the main page (ScrollView) has a custom scrollbar, it crashes on destruction. https://bugs.webkit.org/show_bug.cgi?id=26326 Test that refreshing an iframe with custom scrollbars works without crashing. * scrollbars/resources/page-with-custom-scrollbars.html: Added. * scrollbars/scrollbar-crash-on-refresh-expected.txt: Added. * scrollbars/scrollbar-crash-on-refresh.html: Added. 2009-06-16 Xan Lopez <xlopez@igalia.com> Disable another new test. * platform/gtk/Skipped: 2009-06-16 Jian Li <jianli@chromium.org> Reviewed by Adam Barth and David Levin. Bug 26146: Change to use ThreadableLoader to load the worker script in order to check URL origin for redirection. https://bugs.webkit.org/show_bug.cgi?id=26146 Add a layout test to cover the scenario that the worker script is loaded from different redirect origin. * http/tests/workers/resources/worker-redirect-target.js: Added. * http/tests/workers/worker-redirect-expected.txt: Added. * http/tests/workers/worker-redirect.html: Added. 2009-06-16 Xan Lopez <xlopez@igalia.com> editing/deleting/4875189.html was changed from pixel to dumpAsText, so remove it from Skipped list. * platform/gtk/Skipped: 2009-06-16 Xan Lopez <xlopez@igalia.com> Fix typo in test name. * platform/gtk/Skipped: 2009-06-16 Xan Lopez <xlopez@igalia.com> Disable new tests. * platform/gtk/Skipped: == Rolled over to ChangeLog-2009-06-16 == ++ b/SunSpider/ChangeLog 2009-06-19 Adam Treat <adam.treat@torchmobile.com> Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=26540 Currently the SunSpider test driver lacks an option to run a test suite that will test JavaScriptCore parsing performance only. This patch adds just such a test suite and option to SunSpider as well as the jsc test shell. I've included three large javascript source files found in the wild: jquery, mootools and prototype. Combined with the concatenation of all three, these form a new testsuite to measure and test pure JavaScriptCore parsing performance. * resources/sunspider-standalone-driver.js: Load the js with parse-only flag if it is part of the parse-only suite. * sunspider: Add the parse-only suite to the list of options. * sunspider-compare-results: Add the parse-only suite to the list of options. * tests/LIST-PARSE-ONLY: Added. * tests/parse-only/concat-jquery-mootools-prototype.js: Added. A very large concatenation of the scripts found below. This js takes ~30ms to parse on my machine. * tests/parse-only/jquery-1.3.2.js: Added. Latest version from jquery.com. * tests/parse-only/mootools-1.2.2-core-nc.js: Added. Latest version from mootools.net. * tests/parse-only/prototype-1.6.0.3.js: Added. Latest version from prototypejs.org. 2009-06-13 Steve Falkenburg <sfalken@apple.com> Update V8 benchmark to version 4. Reviewed by Cameron Zwarich. * tests/LIST-V8: * tests/v8-crypto.js: * tests/v8-deltablue.js: * tests/v8-earley-boyer.js: * tests/v8-raytrace.js: * tests/v8-regexp.js: Added. * tests/v8-richards.js: * tests/v8-splay.js: Added. ++ b/WebCore/ChangeLog 2009-06-24 Kevin Watters <kevinwatters@gmail.com> Don't use an unsigned int for intervalInMS because we sometimes initialize it with a negative value. * platform/wx/SharedTimerWx.cpp: (WebCore::setSharedTimerFireTime): 2009-06-24 Eric Seidel <eric@webkit.org> No review, build fix only. The previous checkin had an improper merge. This fixes the build. (WebCore::DragController::tryDocumentDrag): 2009-06-05 Eric Seidel <eric@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=25922 JS setting dropEffect = "none" causes tryDHTMLDrag to return DragOperationNone. Which is also the value tryDHTMLDrag previously used to indicate JS did not want to handle the drag. Make it possible for the DragController::try* methods to return a bool to indicate if javascript accepted or rejected the drag event, separate from the DragOperation. Tests: - fast/events/drag-to-navigate.html - fast/events/prevent-drag-to-navigate.html (WebCore::defaultOperationForDrag): 2009-06-23 Oliver Hunt <oliver@apple.com> and Eric Carlson <eric.carlson@apple.com> Reviewed by Sam Weinig and Dave Hyatt. <rdar://problem/6164797> Add Canvas API to allow drawing of <video> frames <https://bugs.webkit.org/show_bug.cgi?id=25920> Add support for drawing the contents of the video element to the canvas in accordance with the current HTML5 draft. Test: media/video-canvas.html * bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::JSCanvasRenderingContext2D::drawImage): Standard custom bindings stuff we need to do for all canvas methods. * html/CanvasRenderingContext2D.cpp: (WebCore::size): Helper function for finding the size of a video element (WebCore::CanvasRenderingContext2D::checkOrigin): moved up in the file. (WebCore::CanvasRenderingContext2D::drawImage): The various overloads of HTML5's drawImage(<video>) * html/CanvasRenderingContext2D.h: (WebCore::HTMLMediaElement::hasSingleSecurityOrigin): hasSingleSecurityOrigin is needed for security, currently all implementations are trivial as we force QT to maintain a single origin. * html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::paint): Paint routine on video so we don't have to look at MediaPlayer directly * html/HTMLVideoElement.h: (WebCore::NullMediaPlayerPrivate::hasSingleSecurityOrigin): (WebCore::MediaPlayer::hasSingleSecurityOrigin): Default implementations of hasSingleSecurityOrigin * platform/graphics/mac/MediaPlayerPrivateQTKit.h: (WebCore::MediaPlayerPrivate::setUpVideoRendering): A video may need a player now even if it is not visible. (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin): Always return true due to restrictions we've placed on QT. * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::paint): Jump through some hoops to allow windows QT to draw to an intermediate buffer. In the long term we'd like to cache the HDC, but this will do for now. (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin): * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: As for Mac we force QT to only allow same origin loads. 2009-06-23 Adam Langley <agl@google.com> Chromium: Fix crash with inherited font-size in <option> https://bugs.webkit.org/show_bug.cgi?id=26656 http://code.google.com/p/chromium/issues/detail?id=14853 In r42597 (https://bugs.webkit.org/show_bug.cgi?id=25244), I changed the <select> handing for Chromium to fix a rendering bug. However, although the font-size is correctly ignored, getRowHeight wasn't updated and so was calculating the height of the rows in an inconsistent manner. This can lead to a crash. * manual-tests/optgroup-empty-and-nested.html: adding test case for crash (WebCore::PopupListBox::getRowHeight): 2009-06-23 Brady Eidson <beidson@apple.com> Patch by Antti Koivisto. Reviewed by Brady Eidson. <rdar://problem/6988010> Failed resources not reloaded when built against Tiger SDK A latent bug that cache revalidation uncovered. When a CachedResource failed to load, it should always be revalidated upon reload. * loader/CachedResource.cpp: (WebCore::CachedResource::canUseCacheValidator): (WebCore::CachedResource::mustRevalidate): 2009-06-23 Dan Bernstein <mitz@apple.com> - fix <rdar://problem/6634228> Crash in [NSScroller mouseDown:] beneath EventHandler::passMouseDownEventToWidget() * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::passMouseDownEventToWidget): Surround the -mouseDown: call with calls to Widget::beforeMouseDown() and Widget::afterMouseDown(), which prevent the widget's view hierarchy from being removed from its parent view while the scroller is tracking the mouse. 2009-06-23 Sam Weinig <sam@webkit.org> Fix for https://bugs.webkit.org/show_bug.cgi?id=26516 Add initial implementation of DataGridDataSource - Initial implementation only supports the initialize callback function. Test: fast/dom/HTMLDataGridElement/DataGridDataSource-basic.html * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSDataGridDataSource.cpp: Added. (WebCore::JSDataGridDataSource::JSDataGridDataSource): (WebCore::JSDataGridDataSource::~JSDataGridDataSource): (WebCore::JSDataGridDataSource::initialize): * bindings/js/JSDataGridDataSource.h: Added. (WebCore::JSDataGridDataSource::create): (WebCore::JSDataGridDataSource::isJSDataGridDataSource): (WebCore::JSDataGridDataSource::jsDataSource): (WebCore::asJSDataGridDataSource): * bindings/js/JSHTMLDataGridElementCustom.cpp: Added. (WebCore::JSHTMLDataGridElement::listener): (WebCore::JSHTMLDataGridElement::setListener): * html/DataGridDataSource.h: Added. (WebCore::DataGridDataSource::~DataGridDataSource): (WebCore::DataGridDataSource::isJSDataGridDataSource): * html/HTMLDataGridElement.cpp: (WebCore::HTMLDataGridElement::HTMLDataGridElement): (WebCore::HTMLDataGridElement::setDataSource): (WebCore::HTMLDataGridElement::initializationTimerFired): * html/HTMLDataGridElement.h: (WebCore::HTMLDataGridElement::dataSource): * html/HTMLDataGridElement.idl: 2009-06-23 Ryosuke Niwa <rniwa@google.com> Undo the changeset 21212 to fix the regression bug 14062. The changeset 21212 attempted to fix rdar://problem/5002441. The changeset 21212 modified InsertTextCommand::input so as to convert all spaces in text to non-breaking spaces for rdar://problem/5002441. However, the bug was originally caused by rebalanceWhitespaceAt and this workaround introduced a regression bug 14062. Because rebalanceWhitespaceAt appears to behave correctly now, the workaround introduced in 21212 is no longer needed. Test: editing/inserting/space-after-removeformat.html * editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input): 2009-06-23 Beth Dakin <bdakin@apple.com> Reviewed by Dave Hyatt. Fix for https://bugs.webkit.org/show_bug.cgi?id=26523 <col> elements width can't be changed with javascript This patch both fixes setting the width attribute directly in JavaScript, and setting the width on the style attribute. * html/HTMLTableColElement.cpp: (WebCore::HTMLTableColElement::parseMappedAttribute): If we have a new width, call setNeedsLayoutAndPrefWidthsRecalc() Call calcPrefWidths() on the table cols. * rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn): * rendering/FixedTableLayout.cpp: (WebCore::FixedTableLayout::calcWidthArray): Call layoutIfNeeded on the table cols. * rendering/RenderTable.cpp: (WebCore::RenderTable::layout): * rendering/RenderTableCol.cpp: (WebCore::RenderTableCol::clippedOverflowRectForRepaint): Use new table() convenience function. (WebCore::RenderTableCol::calcPrefWidths): Just call setPrefWidthsDirty(false) on ourself and our children. (WebCore::RenderTableCol::table): * rendering/RenderTableCol.h: 2009-06-23 Ojan Vafai <ojan@chromium.org> Reviewed by Dan Bernstein. Add logic to CSSStyleDeclaration::diff to deal with font-sizes that are keyword values. When diff is called on a CSSStyleDeclaration, we check the keywordSize to see if font-size matches a keyword value. This ensures that when we diff a CSSMutableStyleDeclaration returned from copyInheritableProperties on a CSSComputedStyleDeclaration that we correctly identify matching font-sizes. https://bugs.webkit.org/show_bug.cgi?id=26279 Test: editing/inserting/font-size-clears-from-typing-style.html (WebCore::CSSComputedStyleDeclaration::cssPropertyMatches): * css/CSSStyleDeclaration.cpp: (WebCore::CSSStyleDeclaration::cssPropertyMatches): (WebCore::CSSStyleDeclaration::diff): * css/CSSStyleDeclaration.h: 2009-06-23 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6994790> CrashTracer: [USER] 8 crashes in Mail trying to add a blank line to pasted Facebook content (under CompositeEditCommand::positionAvoidingSpecialElementBoundary) - Just added null checks and I will create a new bug to prevent the bad behavior. * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary): 2009-06-23 Simon Fraser <simon.fraser@apple.com> Build fix. Wrap shouldDoSoftwarePaint() in #if USE(ACCELERATED_COMPOSITING) to avoid warning when ACCELERATED_COMPOSITING is not defined. * rendering/RenderLayer.cpp: 2009-06-23 Simon Fraser <simon.fraser@apple.com> Reviewed by Dave Hyatt. https://bugs.webkit.org/show_bug.cgi?id=24863 Fix reflection painting on elements with compositing layers. Test: compositing/reflections/reflection-on-composited.html * rendering/RenderLayer.h: Add a new PaintLayerPaintingReflection flag which is set while painting inside reflections. (WebCore::RenderLayer::setPaintingInsideReflection): Add a setter so that RenderLayerBacking can call it. * rendering/RenderLayer.cpp: (WebCore::shouldDoSoftwarePaint): Utility to clarify the logic of when a composited layer should do a software paint. (WebCore::RenderLayer::paintLayer): Use shouldDoSoftwarePaint() to determine when to software-paint a reflected layer. Remove transform-related tests from the reflection-painting if test because they appear to be unnecessary. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::paintIntoLayer): Add the code to paint reflections to the composited layer painting method. * rendering/RenderReplica.cpp: (WebCore::RenderReplica::paint): Set the PaintLayerPaintingReflection flag. 2009-06-23 Antti Koivisto <antti@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26643 Memory cache should respect Cache-Control: no-store Make resources with Cache-Control: no-store uncacheable in the memory cache. They get evicted immediately when all clients are gone and are always reloaded from the server. Conforms to RFC2616 14.9.2 and seems also match Firefox behavior. * loader/CachedResource.cpp: (WebCore::CachedResource::removeClient): (WebCore::CachedResource::canUseCacheValidator): (WebCore::CachedResource::mustRevalidate): * platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::ResourceResponseBase): (WebCore::ResourceResponseBase::parseCacheControlDirectives): (WebCore::ResourceResponseBase::cacheControlContainsNoStore): * platform/network/ResourceResponseBase.h: 2009-06-23 Brady Eidson <beidson@apple.com> Windows build fix. (QTMovieWin::play): (QTMovieWin::pause): (QTMovieWin::setRate): (QTMovieWin::setCurrentTime): 2009-06-23 Kevin McCullough <kmccullough@apple.com> Reviewed by Adele Peterson. <rdar://problem/6902203> REGRESSION: 'Return' insertion point incorrect after manually quoting blank line then hitting return If the insertion point is both the begining and ending visible position then we need to insert at the end instead of the begining, which is what would normally happen if the insertion point was as the begining. 2009-06-23 Brady Eidson <beidson@apple.com> Reviewed by Sam Weinig, and looked over by Eric Carlson. <rdar://problem/6980466> Media elements should provide option for changing pitch correction Introduce a new boolean property to HTMLMediaElement called webkitPreservesPitch for script to control this. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): Currently the platforms that have a flexible pitch preservation property (Quicktime on Mac and Win) have had it on by default, so continue that default for now. (WebCore::HTMLMediaElement::loadResource): (WebCore::HTMLMediaElement::webkitPreservesPitch): (WebCore::HTMLMediaElement::setWebkitPreservesPitch): * html/HTMLMediaElement.h: * html/HTMLMediaElement.idl: * platform/graphics/MediaPlayer.cpp: (WebCore::NullMediaPlayerPrivate::setPreservesPitch): (WebCore::MediaPlayer::MediaPlayer): (WebCore::MediaPlayer::preservesPitch): (WebCore::MediaPlayer::setPreservesPitch): * platform/graphics/MediaPlayer.h: * platform/graphics/MediaPlayerPrivate.h: (WebCore::MediaPlayerPrivateInterface::setPreservesPitch): (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::createQTMovie): Rework to allow recreation of the movie with almost the exact same attributes as before, with pitch preservation being the difference. (WebCore::MediaPlayerPrivate::setPreservesPitch): Recreate the QTMovie if the flag actually changes. (WebCore::MediaPlayerPrivate::updateStates): Restore current time and rate if this is a recreated movie. (WebCore::MediaPlayerPrivate::timeChanged): Clear the time-to-be-restored, as this callback means it has been effectively overwritten. (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::setPreservesPitch): (QTMovieWinPrivate::QTMovieWinPrivate): (QTMovieWinPrivate::~QTMovieWinPrivate): (QTMovieWinPrivate::task): Restore current time and rate if this is a re-created movie. (QTMovieWin::play): Clear the time-to-be-restored, as this effectively overwrites it. (QTMovieWin::pause): Ditto. (QTMovieWin::setRate): Ditto. (QTMovieWin::setCurrentTime): Ditto. (QTMovieWin::setPreservesPitch): Recreate the Movie if the flag actually changes. (QTMovieWin::load): Rework to allow recreation of the Movie with similar state as the movie before it, but changing the pitch preservation flag. 2009-06-23 Eric Carlson <eric.carlson@apple.com> <rdar://problem/6998286> Crash after leaving page with <video> Don't try to post events after going into the page cache. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::documentWillBecomeInactive): Cancel pending events and stop event timers so we won't try to post events after going into the cache. 2009-06-23 Jeremy Orlow <jorlow@chromium.org> Reviewed by Brady Eidson. Simplify the interaction between LocalStorageArea/SessionStorageArea and StorageArea by creating a "blockUntilImportComplete()" function rather than bouncing back and forth between the child and parent classes in a somewhat unintuitive manner. This patch also paves the way for LocalStorageArea and SessionStorageArea being merged into one. It's part of several in a set which are separating syncing (to disk) code from the rest of the implementation so that local storage and session storage's code can be unified. https://bugs.webkit.org/show_bug.cgi?id=25376 * storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::blockUntilImportComplete): * storage/LocalStorageArea.h: * storage/StorageArea.cpp: (WebCore::StorageArea::length): (WebCore::StorageArea::key): (WebCore::StorageArea::getItem): (WebCore::StorageArea::setItem): (WebCore::StorageArea::removeItem): (WebCore::StorageArea::clear): (WebCore::StorageArea::contains): * storage/StorageArea.h: (WebCore::StorageArea::blockUntilImportComplete): 2009-06-23 Simon Fraser <simon.fraser@apple.com> Reviewed by Dave Hyatt First part of https://bugs.webkit.org/show_bug.cgi?id=26652 (WebCore::RenderLayer::paint): (WebCore::RenderLayer::): (WebCore::RenderReplica::paint): Replace the 3 boolean params to RenderLayer::paintLayer() with a bit mask for readability. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::paintIntoLayer): (WebCore::RenderLayerBacking::paintContents): * rendering/RenderLayerBacking.h: Remove the unused 'haveTransparency' param to paintIntoLayer(). 2009-06-23 Simon Fraser <simon.fraser@apple.com> <rdar://problem/6997929> Assertion at WebCore::RenderLayer::updateClipRects with hardware acceleration The updatingControlTints() painting pass goes through compositing layer boundaries, so we need to ensure we don't cache clip rects computed with the wrong root by setting temporaryClipRects to true. * rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer): * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::contentOffsetInCompostingLayer): Remove a printf that I left in by mistake. 2009-06-23 Anders Carlsson <andersca@apple.com> WebCore side of <rdar://problem/6946094>. * platform/win/ClipboardWin.cpp: (WebCore::ClipboardWin::setExternalDataObject): * platform/win/ClipboardWin.h: 2009-06-23 Darin Fisher <darin@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26650 Add setFormContentType and setFormData since it is awkward for Chromium to use setFormInfoFromRequest to set the underlying members. Also, add a clearChildren method that Chromium needs. These methods are used as part of the Chromium code that serializes a HistoryItem for storing in the browser's session history. * history/HistoryItem.cpp: * history/HistoryItem.h: 2009-06-23 Eric Carlson <eric.carlson@apple.com> <rdar://problem/6978938> Need HTML 5 event attributes for media elements Test: media/event-attributes.html * html/HTMLAttributeNames.in: Add media event attribute names. (WebCore::HTMLMediaElement::parseMappedAttribute): Handle media event attributes. 2009-06-23 Thiago Macieira <thiago.macieira@nokia.com> Reviewed by Simon Hausmann. Fix Qt build with Phonon. The #include <phonon> header no longer exists. And the <Phonon> or <Phonon/Phonon> headers have never existed (neither for us nor for the Phonon sources). You have to select each and every header that you do want now. * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: 2009-06-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Simon Hausmann. Remove duplicated code in Qt & GTK logging initialization We now share the getChannelFromName() function in Logging.cpp * platform/gtk/LoggingGtk.cpp: * platform/qt/LoggingQt.cpp: 2009-06-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Simon Hausmann. Rename the plugin logging channel to plural form 'Plugins' This matches both the other logging channel names, as well as the WebKit logging channel used by Safari/Mac for plugins. * platform/Logging.cpp: * platform/Logging.h: * platform/gtk/LoggingGtk.cpp: * platform/mac/LoggingMac.mm: * platform/qt/LoggingQt.cpp: * platform/win/LoggingWin.cpp: * plugins/PluginDebug.h: * plugins/gtk/PluginPackageGtk.cpp: * plugins/mac/PluginViewMac.cpp: 2009-06-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed by Simon Hausmann. Fix NPAPI mouse translation issues on Mac The WindowRef we pass to the plugin refers to the the top level window, so the x and y positions have to be relative to this position, but we have to manually compensate for title bar decorations and other parents of the QWebView since contentsToWindow() only traverses to the QWebView. Previously we did this compensation when passing on mouse coordinates to the plugin, which caused various issues with translations such as not being able to close the Flash settings dialog, or the hand cursor not appearing over links. We now do the compensation as part of the call to NPP_SetWindow, and then pass mouse coordinates in global context without any compensation, similar to how both Safari and Mozilla does it. * plugins/mac/PluginViewMac.cpp: (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::globalMousePosForPlugin): 2009-06-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Rubber-stamped by Simon Hausmann. [Qt] Resolve absolute path to library install_name manually Since our target.path is set to the Qt directory (to be able to do 'make install') the 'absolute_library_soname' option to QMake did not do the right thing. We now compute the absolute path manually using DESTDIR. 2009-06-22 Simon Fraser <simon.fraser@apple.com> <rdar://problem/6991146> Scrollbars in hardware layers don't change to the inactive look in background windows * rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer): Don't short-circuit the "painting" pass that is used to udpate control tints. 2009-06-22 Dimitri Glazkov <dglazkov@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26567 Upstream V8 bindings code generator. With this change, also added interface ancestor traversal to IDL parser, which is necessary for V8 bindings. The traversal is used to determine whether an interface is a Node to facilitate proper casting and storage in V8DOMMap. * bindings/scripts/CodeGenerator.pm: Added parent traversal sub, needed by V8 bindings. * bindings/scripts/CodeGeneratorV8.pm: Added. * bindings/scripts/IDLParser.pm: Modified to allow limited parsing for parent traversal cases. 2009-06-22 Sam Weinig <sam@webkit.org> Add event handler attribute getter/setters to HTMLFrameSetElement as specified in HTML 5. These match the ones on HTMLBodyElement. (WebCore::HTMLFrameSetElement::onblur): (WebCore::HTMLFrameSetElement::setOnblur): (WebCore::HTMLFrameSetElement::onerror): (WebCore::HTMLFrameSetElement::setOnerror): (WebCore::HTMLFrameSetElement::onfocus): (WebCore::HTMLFrameSetElement::setOnfocus): (WebCore::HTMLFrameSetElement::onload): (WebCore::HTMLFrameSetElement::setOnload): (WebCore::HTMLFrameSetElement::onbeforeunload): (WebCore::HTMLFrameSetElement::setOnbeforeunload): (WebCore::HTMLFrameSetElement::onmessage): (WebCore::HTMLFrameSetElement::setOnmessage): (WebCore::HTMLFrameSetElement::onoffline): (WebCore::HTMLFrameSetElement::setOnoffline): (WebCore::HTMLFrameSetElement::ononline): (WebCore::HTMLFrameSetElement::setOnonline): (WebCore::HTMLFrameSetElement::onresize): (WebCore::HTMLFrameSetElement::setOnresize): (WebCore::HTMLFrameSetElement::onstorage): (WebCore::HTMLFrameSetElement::setOnstorage): (WebCore::HTMLFrameSetElement::onunload): (WebCore::HTMLFrameSetElement::setOnunload): * html/HTMLFrameSetElement.h: * html/HTMLFrameSetElement.idl: 2009-06-22 Darin Adler <darin@apple.com> Bug 25425: DOM attribute getter/setter functions should use const AtomicString& type https://bugs.webkit.org/show_bug.cgi?id=25425 * bindings/scripts/CodeGeneratorJS.pm: Added handling for ReflectURL. * bindings/scripts/CodeGeneratorObjC.pm: Ditto. (WebCore::Element::getURLAttribute): Added. For use implementing getters for ReflectURL. * dom/Element.h: Added getURLAttribute. * html/HTMLImageElement.idl: Use Reflect and ReflectURL. 2009-06-22 Jian Li <jianli@chromium.org> Bug 26626: Make WorkerContextExecutionProxy::toV8Object handle exception objects. https://bugs.webkit.org/show_bug.cgi?id=26626 (WebCore::WorkerContextExecutionProxy::ToV8Object): 2009-06-22 David Hyatt <hyatt@apple.com> Add RenderDataGrid to the build. Give it some basic default styling (that more or less matches a listbox). It has a default size of 300x150. * GNUmakefile.am: * WebCoreSources.bkl: * html/HTMLDataGridElement.cpp: (WebCore::HTMLDataGridElement::createRenderer): * html/HTMLDataGridElement.h: * html/HTMLDataGridElement.idl: * rendering/RenderDataGrid.cpp: Added. (WebCore::RenderDataGrid::RenderDataGrid): (WebCore::RenderDataGrid::~RenderDataGrid): (WebCore::RenderDataGrid::calcPrefWidths): (WebCore::RenderDataGrid::paintObject): (WebCore::RenderDataGrid::valueChanged): (WebCore::RenderDataGrid::invalidateScrollbarRect): (WebCore::RenderDataGrid::isActive): * rendering/RenderDataGrid.h: Added. (WebCore::RenderDataGrid::renderName): (WebCore::RenderDataGrid::canHaveChildren): (WebCore::RenderDataGrid::scrollbarCornerPresent): 2009-06-22 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26430 <rdar://problem/6944442> Elements jump around when they become composited (WWDC checkers demo) <rdar://problem/6989006> Lots of time spent in RenderLayerCompositor::calculateCompositedBounds() during window resize when using hardware layers Fix an ordering dependency which caused the compositing position of a layer to be affected by some later sibling, which affected the compositing ancestor's composited bounds. The fix is to only update the compositing positions of layers in some subtree when updateAfterLayout() has been called on all the layers in that subtree, from the ancestor down. Also cache the composited bounds of a RenderLayerBacking, now that we can guarantee that those bounds are accurate. Test: compositing/sibling-positioning.html (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayerBacking::updateAfterLayout): (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): (WebCore::RenderLayerBacking::contentOffsetInCompostingLayer): (WebCore::RenderLayerBacking::paintContents): (WebCore::RenderLayerBacking::compositedBounds): (WebCore::RenderLayerBacking::setCompositedBounds): (WebCore::RenderLayerCompositor::updateBacking): (WebCore::RenderLayerCompositor::calculateCompositedBounds): (WebCore::RenderLayerCompositor::layerWillBeRemoved): (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): (WebCore::RenderLayerCompositor::updateCompositingChildrenGeometry): 2009-06-22 Jeremy Orlow <jorlow@chromium.org> First step in https://bugs.webkit.org/show_bug.cgi?id=25376 Add StorageSyncManager.cpp/h In preparation for combining SessionStorage and LocalStorage into a single StorageManager, move the syncing bits out of LocalStorage and into its own class. The next step is to combine LocalStorageArea and SessionStorageArea into one. Then SessionStorage and LocalStorage can be combined. Note that combining them will cut down on code paths that must be proxied, eliminate virtual dispatch, and allow Chromium to (eventually) write historical sessionStorage to disk when memory is getting tight. Also remove a couple bits of cruft including code for quotas which is unnecessary (since a meta-data db is unnecessary since you can just count bytes as you read the local storage databases into memory). * storage/LocalStorage.cpp: (WebCore::LocalStorage::LocalStorage): (WebCore::LocalStorage::storageArea): (WebCore::LocalStorage::close): * storage/LocalStorage.h: * storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::LocalStorageArea): (WebCore::LocalStorageArea::scheduleFinalSync): (WebCore::LocalStorageArea::syncTimerFired): (WebCore::LocalStorageArea::performImport): * storage/LocalStorageArea.h: (WebCore::LocalStorageArea::create): * storage/LocalStorageTask.cpp: (WebCore::LocalStorageTask::performTask): * storage/LocalStorageTask.h: (WebCore::LocalStorageTask::): (WebCore::LocalStorageTask::createImport): * storage/LocalStorageThread.h: * storage/SessionStorage.h: * storage/StorageSyncManager.cpp: Copied from WebCore/storage/LocalStorage.cpp. (WebCore::StorageSyncManager::create): (WebCore::StorageSyncManager::StorageSyncManager): (WebCore::StorageSyncManager::fullDatabaseFilename): (WebCore::StorageSyncManager::close): (WebCore::StorageSyncManager::scheduleImport): (WebCore::StorageSyncManager::scheduleSync): * storage/StorageSyncManager.h: Copied from WebCore/storage/LocalStorage.h. (WebCore::): 2009-06-22 Darin Fisher <darin@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26622 Add ChromiumDataObject::copy() * platform/chromium/ChromiumDataObject.cpp: * platform/chromium/ChromiumDataObject.h: 2009-06-22 Timothy Hatcher <timothy@apple.com> Add a silhouette image for the enable view of the Resource panel. Reviewed by Kevin McCullough. * inspector/front-end/Images/resourcesSilhouette.png: Added. * inspector/front-end/inspector.css: 2009-06-22 Kyle Prete <kylep@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26552 Add V8 JS bindings for Audio Constructor. * bindings/v8/custom/V8CustomBinding.h: Added a callback declaration for audio ctor to macro. * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: Added the whole file. 2009-06-22 Alexey Proskuryakov <ap@webkit.org> Reviewed by David Levin. https://bugs.webkit.org/show_bug.cgi?id=26600 StringImpl::copy() no longer copies empty string correctly * platform/text/StringImpl.cpp: (WebCore::StringImpl::ustring): Changed method calling syntax to look less like calling a static method. (WebCore::StringImpl::copy): Reverted part of r41917 that caused the problem. 2009-06-22 Xiaomei Ji <xji@chromium.org> Reviewed by Eric Seidel Not auto-testable since it involves sending a keyboard event to the popup, which is not possible (eventSender sends the key events through webview, we want to go through the webwidget). This patch is one part of the fix for issue "keyboard selection in Hebrew select element does not work in Windows". The other part of the fix is in chromium's webkit/glue layer. https://bugs.webkit.org/show_bug.cgi?id=25899 * manual-tests/keyboard_select_non_english.html: Added. (WebCore::isCharacterTypeEvent): Added. Check whether the event is a character type event. "Char" in Windows or "KeyDown" in Mac is character type event. (WebCore::PopupListBox::typeAheadFind): Since m_lastCharTime is used to indicate whether user types multiple characters continuely as a search prefix or not, it should be only assigned when the event is character type event. 2009-06-22 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6115819> Notify of profile start in console Put a message in the console that announces that a profile has started, similar to how a console message announces that a profile has finished. (WebCore::InspectorController::addProfile): Use renamed function. (WebCore::InspectorController::addProfileFinishedMessageToConsole): Renamed. (WebCore::InspectorController::addStartProfilingMessageToConsole): New function that logs the message about the profile starting. (WebCore::InspectorController::startUserInitiatedProfiling): Ditto * inspector/InspectorController.h: * inspector/front-end/ProfilesPanel.js: Print the "run" of the profile's title if there are multiple profiles, and take into account the fact that titles are displayed twice as much now. (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink): (WebCore::Console::profile): Call new function. 2009-06-22 David Hyatt <hyatt@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26615 Add IDL interface for datagrid cell elements. Add a few more properties to the datagrid itself that correspond to ones you find on <select> elements. Add an expanded property to row elements. * html/HTMLAttributeNames.in: * html/HTMLDataGridCellElement.cpp: Added. (WebCore::HTMLDataGridCellElement::HTMLDataGridCellElement): (WebCore::HTMLDataGridCellElement::label): (WebCore::HTMLDataGridCellElement::setLabel): (WebCore::HTMLDataGridCellElement::focused): (WebCore::HTMLDataGridCellElement::setFocused): (WebCore::HTMLDataGridCellElement::checked): (WebCore::HTMLDataGridCellElement::setChecked): (WebCore::HTMLDataGridCellElement::indeterminate): (WebCore::HTMLDataGridCellElement::setIndeterminate): (WebCore::HTMLDataGridCellElement::progress): (WebCore::HTMLDataGridCellElement::setProgress): * html/HTMLDataGridCellElement.h: Added. (WebCore::HTMLDataGridCellElement::endTagRequirement): (WebCore::HTMLDataGridCellElement::tagPriority): * html/HTMLDataGridCellElement.idl: Added. * html/HTMLDataGridElement.cpp: (WebCore::HTMLDataGridElement::autofocus): (WebCore::HTMLDataGridElement::setAutofocus): (WebCore::HTMLDataGridElement::disabled): (WebCore::HTMLDataGridElement::setDisabled): (WebCore::HTMLDataGridElement::size): (WebCore::HTMLDataGridElement::setSize): * html/HTMLDataGridElement.h: * html/HTMLDataGridElement.idl: * html/HTMLDataGridRowElement.cpp: (WebCore::HTMLDataGridRowElement::checkDTD): (WebCore::HTMLDataGridRowElement::expanded): (WebCore::HTMLDataGridRowElement::setExpanded): * html/HTMLDataGridRowElement.h: * html/HTMLDataGridRowElement.idl: * html/HTMLElementsAllInOne.cpp: * html/HTMLTagNames.in: 2009-06-22 Sam Weinig <sam@webkit.org> Add event handler attribute getter/setters to HTMLBodyElement as specified in HTML 5. - Removes erroneous inclusion of the onresize and onunload event handler attributes in Element and Document. (WebCore::Document::getWindowAttributeEventListener): * dom/Node.cpp: * dom/Node.h: onblur, onerror, onfocus, and onload all need to be declared virtual, since their behavior for HTMLBodyElement differs from the base implementation. * html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::onblur): (WebCore::HTMLBodyElement::setOnblur): (WebCore::HTMLBodyElement::onerror): (WebCore::HTMLBodyElement::setOnerror): (WebCore::HTMLBodyElement::onfocus): (WebCore::HTMLBodyElement::setOnfocus): (WebCore::HTMLBodyElement::onload): (WebCore::HTMLBodyElement::setOnload): (WebCore::HTMLBodyElement::onbeforeunload): (WebCore::HTMLBodyElement::setOnbeforeunload): (WebCore::HTMLBodyElement::onmessage): (WebCore::HTMLBodyElement::setOnmessage): (WebCore::HTMLBodyElement::onoffline): (WebCore::HTMLBodyElement::setOnoffline): (WebCore::HTMLBodyElement::ononline): (WebCore::HTMLBodyElement::setOnonline): (WebCore::HTMLBodyElement::onresize): (WebCore::HTMLBodyElement::setOnresize): (WebCore::HTMLBodyElement::onstorage): (WebCore::HTMLBodyElement::setOnstorage): (WebCore::HTMLBodyElement::onunload): (WebCore::HTMLBodyElement::setOnunload): * html/HTMLBodyElement.h: * html/HTMLBodyElement.idl: 2009-06-22 Alexey Proskuryakov <ap@webkit.org> Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=26601 Remove disabled code for appcache dynamic entries This also removes code for DOM 3 Core DOMStringList, which we don't use for anything else yet. * DerivedSources.cpp: * DerivedSources.make: * bindings/js/JSDOMStringListCustom.cpp: Removed. * bindings/v8/custom/V8CustomBinding.h: * bindings/v8/custom/V8DOMStringListCustom.cpp: Removed. * dom/DOMStringList.cpp: Removed. * dom/DOMStringList.h: Removed. * dom/DOMStringList.idl: Removed. * dom/StaticStringList.cpp: Removed. * dom/StaticStringList.h: Removed. * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): * loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::addResource): * loader/appcache/ApplicationCache.h: * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): * loader/appcache/ApplicationCacheResource.cpp: (WebCore::ApplicationCacheResource::dumpType): * loader/appcache/ApplicationCacheResource.h: (WebCore::ApplicationCacheResource::): * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::storeUpdatedType): * loader/appcache/DOMApplicationCache.cpp: * loader/appcache/DOMApplicationCache.h: * loader/appcache/DOMApplicationCache.idl: * page/DOMWindow.idl: 2009-06-22 Steve Falkenburg <sfalken@apple.com> Windows build fix. * DerivedSources.cpp: * html/HTMLElementsAllInOne.cpp: 2009-06-22 Alexey Proskuryakov <ap@webkit.org> <rdar://problem/6956606> REGRESSION (S4Beta -> Final): After the password is input, Japanese can't be input. WebKit uses a per-frame input context for most editable fields, and application's global context for password fields, manually controlling secure input state and the list of available input sources. We were setting TSMDocument property to disable non-Roman input methods after focus changed to a password field, but before selection was updated. This resulted in the property being applied to a wrong TSMDocument in some cases, because TSMGetActiveDocument() uses input context cached by +[NSApplication updateWindows], we change context based on selection, not on focus. * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry): Since there is only one context that we use for password fields - the global one - there is no need to get the active one. 2009-06-22 David Levin <levin@chromium.org> Reviewed by David Hyatt and Eric Seidel. REGRESSION: When the main page (ScrollView) has a custom scrollbar, it crashes on destruction. https://bugs.webkit.org/show_bug.cgi?id=26326 Test: scrollbars/scrollbar-crash-on-refresh.html (WebCore::Document::detach): Gives the FrameView a change to do any necessary cleanup on Document::detach() which is where the renderArena gets detroyed. (WebCore::FrameView::detachCustomScrollbars): Gets rid of any custom scrollbars (if the docment supplied them). * page/FrameView.h: * platform/Scrollbar.h: (WebCore::Scrollbar::isCustomScrollbar): (WebCore::RenderObject::destroy): Removed the check for document()->frame(). If frame() is 0 in this code, then the call to animation() is also incorrect (since it does document()->frame()->animation()). * rendering/RenderScrollbar.h: (WebCore::RenderScrollbar::isCustomScrollbar): 2009-06-22 Dan Bernstein <mitz@apple.com> - fix https://bugs.webkit.org/show_bug.cgi?id=23606 <rdar://problem/6537777> CSS gradient not repainted when image load completes Test: fast/repaint/background-generated.html (WebCore::mustRepaintFillLayers): Return true if the layer does not specify a size and the image uses the container size. 2009-06-22 David Hyatt <hyatt@apple.com> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26607 Add IDL for HTMLDataGridRowElement. * html/HTMLAttributeNames.in: * html/HTMLDataGridColElement.cpp: (WebCore::HTMLDataGridColElement::primary): (WebCore::HTMLDataGridColElement::setPrimary): * html/HTMLDataGridColElement.h: * html/HTMLDataGridColElement.idl: * html/HTMLDataGridElement.cpp: (WebCore::HTMLDataGridElement::checkDTD): (WebCore::HTMLDataGridElement::multiple): (WebCore::HTMLDataGridElement::setMultiple): * html/HTMLDataGridElement.h: * html/HTMLDataGridElement.idl: * html/HTMLDataGridRowElement.cpp: Added. (WebCore::HTMLDataGridRowElement::HTMLDataGridRowElement): (WebCore::HTMLDataGridRowElement::selected): (WebCore::HTMLDataGridRowElement::setSelected): (WebCore::HTMLDataGridRowElement::focused): (WebCore::HTMLDataGridRowElement::setFocused): * html/HTMLDataGridRowElement.h: Added. (WebCore::HTMLDataGridRowElement::tagPriority): * html/HTMLDataGridRowElement.idl: Added. * html/HTMLTagNames.in: 2009-06-19 Yael Aharon <yael.aharon@nokia.com> Reviewed by Holger Freyther. https://bugs.webkit.org/show_bug.cgi?id=26556 Fix a crash in case that the QNetworkReply::readReady signal is "stuck" in deferred mode due to JavaScript alert, and in the meantime, QNetworkreply::finished signal is received and processed before QNetworkReply::readReady is processed. * manual-tests/qt/unload-alert.html: Added. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::setLoadMode): (WebCore::QNetworkReplyHandler::finish): (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): (WebCore::QNetworkReplyHandler::forwardData): (WebCore::QNetworkReplyHandler::start): (WebCore::QNetworkReplyHandler::sendQueuedItems): * platform/network/qt/QNetworkReplyHandler.h: (WebCore::QNetworkReplyHandler::): 2009-06-22 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Fix the Qt build. 2009-06-21 Darin Adler <darin@apple.com> Bug 25425: DOM attribute getter/setter functions should use const AtomicString& type https://bugs.webkit.org/show_bug.cgi?id=25425 * bindings/scripts/CodeGeneratorJS.pm: Tweaked mechanism for includes to be a bit more consistent and to make SVGElement.h be included in the header rather than in every implementation file that includes the header. Added code to use getAttribute and setAttribute directly when the [Reflect] extended attribute is used. * bindings/scripts/CodeGeneratorObjC.pm: Ditto. * html/HTMLElement.idl: Used [Reflect] for all the attributes in this class that reflect content attributes. Restricting this to one class for now to keep the patch small and start out slowly. 2009-06-21 Sam Weinig <sam@webkit.org> Fix for https://bugs.webkit.org/show_bug.cgi?id=26596 Only expose event handler attributes to elements and documents. Test: fast/dom/event-attribute-availability.html 2009-06-21 Daniel Bates <dbates@intudata.com> Reviewed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=26580 Fix to enable XSSAuditor on child windows. Test: http/tests/security/xssAuditor/link-opens-new-window.html * page/XSSAuditor.cpp: (WebCore::XSSAuditor::XSSAuditor): (WebCore::XSSAuditor::isEnabled): (WebCore::XSSAuditor::canEvaluate): (WebCore::XSSAuditor::canCreateInlineEventListener): (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): (WebCore::XSSAuditor::canLoadObject): * page/XSSAuditor.h: Removed method setXSSAuditorEnabled, and field m_isEnabled. Moved implementation of isEnabled to XSSAuditor.cpp and changed implementation to query Settings. 2009-06-21 David Levin <levin@chromium.org> Reviewed by NOBODY. Speculative windows build fix (idea by Mark Rowe). 2009-06-21 David Levin <levin@chromium.org> Reviewed by NOBODY (Speculative gtk build fix). 2009-06-21 David Levin <levin@chromium.org> Reviewed by NOBODY. Speculative tiger build fix and a windows build fix. More fixes may still be in order. * WebCore.vcproj/WebCoreCommon.vsprops: * dom/default/PlatformMessagePortChannel.h: (WebCore::PlatformMessagePortChannel::MessagePortQueue::tryGetMessage): 2009-06-21 David Levin <levin@chromium.org> Reviewed by NOBODY (Speculative tiger build fix). * dom/default/PlatformMessagePortChannel.h: (WebCore::PlatformMessagePortChannel::MessagePortQueue::~MessagePortQueue): 2009-06-21 Drew Wilson <atwilson@google.com> Reviewed by David Levin. <https://bugs.webkit.org/show_bug.cgi?id=26448> Added optimized GC for MessagePorts when the entangled port is run by the same thread. Fixed bug in isProxyFor() that was not properly throwing an exception when trying to clone the entangled port. * bindings/js/JSDOMBinding.cpp: (WebCore::markActiveObjectsForContext): Now marks remotely entangled ports as in-use, in addition to those with pending activity. * bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::mark): Now checks if the entangled port is local (run by same thread) and if so mark()s it. * dom/MessagePort.cpp: (WebCore::MessagePort::postMessage): (WebCore::MessagePort::disentangle): Removes cloned ports from the ScriptExecutionContext - this allows cloned ports to be GC'd as otherwise they look like remotely entangled ports. (WebCore::MessagePort::start): (WebCore::MessagePort::locallyEntangledPort): Added API for fetching the entangled port if it is run by the same thread * dom/MessagePort.h: * dom/MessagePortProxyWrapper.h: * dom/default/MessagePortProxy.cpp: (WebCore::MessagePortProxyWrapper::locallyEntangledPort): Added API for fetching the entangled port if it is run by the same thread (WebCore::MessagePortProxy::hasPendingActivity): Changed definition of hasPendingActivity() to be stricter - only returns true if there are pending messages. (WebCore::MessagePortProxy::locallyEntangledPort): * dom/default/MessagePortProxy.h: 2009-06-21 Drew Wilson <atwilson@google.com> Reviewed by David Levin. <https://bugs.webkit.org/show_bug.cgi?id=25043> Removed obsolete MessagePort.startConversation(), active and onclose APIs. Refactored MessagePortProxy into MessagePortChannel and a platform-dependent PlatformMessagePortChannel implementation. Modified APIs to simplify cross-process implementations by moving the messaging code entirely into the platform-dependent proxy. Created a thread-safe default PlatformMessagePortChannel implementation. Changed DOMWindow messaging to create the MessageEvent in the target ScriptExecutionContext to match how cross-thread MessagePorts work. * GNUMakefile.am: Added MessagePortChannel/PlatformMessagePortChannel files. * bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::mark): Changed ports to not mark their entangled pair as reachable, per the spec. * bindings/v8/custom/V8MessagePortCustom.cpp: * dom/MessageChannel.cpp: (WebCore::MessageChannel::MessageChannel): Updated to use PlatformMessagePortChannel::createChannel() to entangle the ports. * dom/MessagePort.cpp: (WebCore::MessagePort::MessagePort): (WebCore::MessagePort::~MessagePort): (WebCore::MessagePort::postMessage): (WebCore::MessagePort::disentangle): (WebCore::MessagePort::messageAvailable): (WebCore::MessagePort::start): (WebCore::MessagePort::close): (WebCore::MessagePort::entangle): (WebCore::MessagePort::contextDestroyed): (WebCore::MessagePort::dispatchMessages): (WebCore::MessagePort::setOnmessage): (WebCore::MessagePort::hasPendingActivity): Changed these APIs to delegate to new PlatformMessagePortChannel APIs. * dom/MessagePort.h: Renamed isQueueOpen() to started(). * dom/MessagePort.idl: Removed startConversation and onclose. * dom/MessagePortProxy.h: Removed. * dom/MessagePortChannel.cpp: Added. (WebCore::MessagePortChannel::EventData::create): (WebCore::MessagePortChannel::EventData::EventData): (WebCore::MessagePortChannel::~MessagePortChannel): * dom/MessagePortChannel.h: Added. (WebCore::MessagePortChannel::EventData::message): (WebCore::MessagePortChannel::EventData::channel): Changed EventData to hold a reference to a MessagePortChannel object instead of a MessagePort to enable cross-thread messaging. (WebCore::MessagePortChannel::MessagePortChannel): (WebCore::MessagePortChannel::create): (WebCore:ScriptExecutionContext::dispatchMessagePortEvents): Renamed isQueueOpen() to started(). * dom/default/PlatformMessagePortChannel.cpp: Added. (WebCore::MessagePortChannel::entangleIfOpen): (WebCore::MessagePortChannel::disentangle): (WebCore::MessagePortChannel::postMessageToRemote): (WebCore::MessagePortChannel::tryGetMessageFromRemote): (WebCore::MessagePortChannel::close): (WebCore::MessagePortChannel::isConnectedTo): (WebCore::MessagePortChannel::hasPendingActivity): (WebCore::PlatformMessagePortChannel::PlatformMessagePortChannel): (WebCore::PlatformMessagePortChannel::~PlatformMessagePortChannel): (WebCore::PlatformMessagePortChannel::createChannel): (WebCore::PlatformMessagePortChannel::entangleIfOpen): (WebCore::PlatformMessagePortChannel::disentangle): (WebCore::PlatformMessagePortChannel::setRemotePort): (WebCore::PlatformMessagePortChannel::remotePort): (WebCore::PlatformMessagePortChannel::entangledChannel): (WebCore::PlatformMessagePortChannel::setEntangledChannel): (WebCore::PlatformMessagePortChannel::postMessageToRemote): (WebCore::PlatformMessagePortChannel::tryGetMessageFromRemote): (WebCore::PlatformMessagePortChannel::isConnectedTo): (WebCore::PlatformMessagePortChannel::close): (WebCore::PlatformMessagePortChannel::closeInternal): (WebCore::PlatformMessagePortChannel::hasPendingActivity): * dom/default/PlatformMessagePortChannel.h: Added. (WebCore::PlatformMessagePortChannel::MessagePortQueue::create): (WebCore::PlatformMessagePortChannel::MessagePortQueue::tryGetMessage): (WebCore::PlatformMessagePortChannel::MessagePortQueue::appendAndCheckEmpty): (WebCore::PlatformMessagePortChannel::MessagePortQueue::isEmpty): (WebCore::PlatformMessagePortChannel::MessagePortQueue::MessagePortQueue): * page/DOMWindow.cpp: (WebCore::PostMessageTimer::PostMessageTimer): Changed DOMWindow messaging to create the MessageEvent in the target ScriptExecutionContext to match how cross-thread MessagePorts work. (WebCore::PostMessageTimer::event): (WebCore::DOMWindow::postMessage): (WebCore::DOMWindow::postMessageTimerFired): 2009-06-21 Dan Bernstein <mitz@apple.com> - fix https://bugs.webkit.org/show_bug.cgi?id=15383 <rdar://problem/5682745> resize: vertical does not restrict to vertical resize Test: fast/css/resize-single-axis.html (WebCore::RenderLayer::resize): Ignore movement along the non-resizing axis. 2009-06-21 Sam Weinig <sam@webkit.org> Reviewed by Eric Seidel Fix for https://bugs.webkit.org/show_bug.cgi?id=26578 event.currentTarget for listener registered on window should point to the window object like in Firefox Test: fast/events/event-trace.html (WebCore::Node::dispatchGenericEvent): Make the DOMWindow the currentTarget when events are dispatched to it. We previously used the document because DOMWindow was not yet an EventTarget. 2009-06-21 Dan Bernstein <mitz@apple.com> - fix https://bugs.webkit.org/show_bug.cgi?id=9694 resize value not compared Test: fast/css/resize-value-compared.html * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::operator==): Compare the resize member. 2009-06-19 Alice Liu <alice.liu@apple.com> Fix https://bugs.webkit.org/show_bug.cgi?id=26568 Repro crash animating GIF if previously used in a closed window's back/forward list Also filed as <rdar://problem/6978362> Reviewed by Maciej Stachowiak. Can't test this bug with an automated layout test since it requires b/f caching * manual-tests/animated-gif-bfcache-crash.html: Added. * manual-tests/resources/containsAnimatedGif.html: Added. Adding checks for hostWindow() since there is no guarantee that the Page is alive * platform/ScrollView.cpp: (WebCore::ScrollView::scrollRectIntoViewRecursively): (WebCore::ScrollView::contentsToScreen): (WebCore::ScrollView::screenToContents): (WebCore::ScrollView::wheelEvent): 2009-06-20 Sam Weinig <sam@webkit.org> Reviewed by Adam Barth. Fix for https://bugs.webkit.org/show_bug.cgi?id=26554 Shadowing of top and parent * page/DOMWindow.idl: 2009-06-20 Mark Rowe <mrowe@apple.com> Fix <https://bugs.webkit.org/show_bug.cgi?id=15106>. Bug 15106: REGRESSION: Can't drag text as element when user-select is set to none We allow selections to begin within an element that has -webkit-user-select: none set, unless the element is draggable as dragging should take priority over starting a selection. Test: editing/selection/user-drag-element-and-user-select-none.html * dom/Node.cpp: (WebCore::Node::canStartSelection): 2009-06-20 Darin Adler <darin@apple.com> Bug 26528: REGRESSION (r44674): Assertion in TextIterator::pushFullyClippedState while counting matches for "a" on apple.com https://bugs.webkit.org/show_bug.cgi?id=26528 rdar://problem/6985329 (WebCore::TextIterator::handleReplacedElement): When entering a text control, start at the top of the shadow tree (by calling shadowTreeRootNode). Also remove assumption that innerTextElement will never be 0 since RenderTextControl doesn't really guarantee this. 2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by NOBODY. Speculative Qt build fix - add HTMLDataGridColElement to the build script. 2009-06-19 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26561 Remove a memcpy by retrieving the already existing copy of a string instead of making a new one. * bindings/js/ScriptSourceCode.h: (WebCore::ScriptSourceCode::ScriptSourceCode): (WebCore::ScriptSourceCode::source): * bindings/js/StringSourceProvider.h: (WebCore::StringSourceProvider::source): 2009-06-19 Brian Weinstein <bweinstein@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26488 No Support for Single Finger or Two Finger Panning in Windows 7 The code in WebCore allows us to interpret a Pan gesture as a mousewheel event, and we are able to reuse the scrolling code. Another constructor was created in WheelEventWin which takes data better suited to the pan guesture than what was currently there. Unable to add tests to simulate touch behavior/gestures. * platform/PlatformWheelEvent.h: * platform/win/WheelEventWin.cpp: 2009-06-19 Chris Marrin <cmarrin@apple.com> Fixed a build error, which only shows up in the i386 compile * platform/graphics/mac/GraphicsLayerCA.mm: (WebCore::GraphicsLayerCA::animateTransform): 2009-06-19 Simon Fraser <simon.fraser@apple.com> <rdar://problem/6988385> REGRESSION: In full page video player, movie's video track becomes detached from its controller. When in the media document, the MediaPlayer should not report that it is capable of hardware acceleration, because it renders via a QTMovieView which is already accelerated. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering): 2009-06-19 Kevin Ollivier <kevino@theolliviers.com> Adding XSSAuditor.cpp to the wx build. 2009-06-19 Chris Marrin <cmarrin@apple.com> Reviewed by Simon Fraser <simon.fraser@apple.com>. https://bugs.webkit.org/show_bug.cgi?id=26544 If I am doing a Matrix hardware animation and any matrix is singular, I revert to software. This is not really testable, since we can't see what the hardware animation is doing. * platform/graphics/mac/GraphicsLayerCA.mm: (WebCore::GraphicsLayerCA::animateTransform): 2009-06-19 Geoffrey Garen <ggaren@apple.com> Reviewed by Maciej Stachowiak. An additional fix for Bug 26532: Native functions do not correctly unlink from optimised callsites when they're collected <https://bugs.webkit.org/show_bug.cgi?id=26532> | <rdar://problem/6625385> Use "NativeFunctionWrapper" instead of "PrototypeFunction" in cross-frame accessors, so the type of object you get to wrap a function is the same, regardless of whether the access to the function is cross-frame. This is faster and more idiomatic than what we had before. It also would have avoided Bug 26532 because it would have prevented a conflicting PrototypeFunction from being allocated to wrap postMessage, where a NativeFunctionWrapper had been allocated previously. * bindings/js/JSDOMBinding.cpp: (WebCore::objectToStringFunctionGetter): * bindings/js/JSDOMWindowCustom.cpp: (WebCore::nonCachingStaticFunctionGetter): 2009-06-19 Simon Fraser <simon.fraser@apple.com> Reviewed by John Sullivan <rdar://problem/6953673> Crash in RenderLayerCompositor::setCompositingParent Fix a crash that could occur in complex content due to timing issues when doing a partial layer tree rebuild which is required when painting; setCompositingParent() could be called with a parent which has not been made compositing yet. 2009-06-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Build fix. Adding missing HTMLDataGrid* files to the build. 2009-06-19 Peter Kasting <pkasting@google.com> https://bugs.webkit.org/show_bug.cgi?id=26460 part three Make BMPImageReader a standalone class that is used by ICOImageDecoder and BMPImageDecoder to decode individual BMPs within a file. These decoders now inherit directly from ImageDecoder. This also makes these decoders decode on-demand in isSizeAvailable() and frameBufferAtIndex(), like the other decoders, instead of when setData() is called, like before. This should provide a speedup on pages containing BMPs that aren't immediately onscreen. * platform/image-decoders/bmp/BMPImageDecoder.cpp: (WebCore::BMPImageDecoder::BMPImageDecoder): (WebCore::BMPImageDecoder::setData): (WebCore::BMPImageDecoder::isSizeAvailable): (WebCore::BMPImageDecoder::frameBufferAtIndex): (WebCore::BMPImageDecoder::decodeWithCheckForDataEnded): (WebCore::BMPImageDecoder::decode): (WebCore::BMPImageDecoder::processFileHeader): * platform/image-decoders/bmp/BMPImageDecoder.h: (WebCore::BMPImageDecoder::readUint32): * platform/image-decoders/bmp/BMPImageReader.cpp: (WebCore::BMPImageReader::BMPImageReader): (WebCore::BMPImageReader::decodeBMP): (WebCore::BMPImageReader::readInfoHeaderSize): (WebCore::BMPImageReader::processInfoHeader): (WebCore::BMPImageReader::readInfoHeader): (WebCore::BMPImageReader::processBitmasks): (WebCore::BMPImageReader::processColorTable): (WebCore::BMPImageReader::processRLEData): (WebCore::BMPImageReader::processNonRLEData): (WebCore::BMPImageReader::setFailed): * platform/image-decoders/bmp/BMPImageReader.h: (WebCore::BMPImageReader::readUint16): (WebCore::BMPImageReader::readUint32): (WebCore::BMPImageReader::setBuffer): (WebCore::BMPImageReader::setData): (WebCore::BMPImageReader::): (WebCore::BMPImageReader::pastEndOfImage): (WebCore::BMPImageReader::readCurrentPixel): (WebCore::BMPImageReader::setRGBA): * platform/image-decoders/ico/ICOImageDecoder.cpp: (WebCore::ICOImageDecoder::ICOImageDecoder): (WebCore::ICOImageDecoder::setData): (WebCore::ICOImageDecoder::isSizeAvailable): (WebCore::ICOImageDecoder::size): (WebCore::ICOImageDecoder::frameBufferAtIndex): (WebCore::ICOImageDecoder::decodeWithCheckForDataEnded): (WebCore::ICOImageDecoder::decode): (WebCore::ICOImageDecoder::processDirectory): (WebCore::ICOImageDecoder::processDirectoryEntries): (WebCore::ICOImageDecoder::readDirectoryEntry): (WebCore::ICOImageDecoder::processImageType): * platform/image-decoders/ico/ICOImageDecoder.h: (WebCore::ICOImageDecoder::readUint16): (WebCore::ICOImageDecoder::readUint32): 2009-06-19 Adam Barth <abarth@webkit.org> Reviewed by Dimitri Glazkov. https://bugs.webkit.org/show_bug.cgi?id=26555 Fix the Chromium canary bot. Turns out ScriptSourceCode doesn't have the same API in V8 and JSC. * WebCore/bindings/js/ScriptController.cpp: * WebCore/bindings/js/ScriptSourceCode.h: * WebCore/bindings/v8/ScriptController.cpp: * WebCore/page/XSSAuditor.cpp: * WebCore/page/XSSAuditor.h: 2009-06-19 David Hyatt <hyatt@apple.com> Reviewed by Anders Carlsson. https://bugs.webkit.org/show_bug.cgi?id=26547 Implement the IDL interface for HTMLDataGridColElement. * DerivedSources.make: * html/HTMLAttributeNames.in: * html/HTMLDataGridColElement.cpp: Added. (WebCore::HTMLDataGridColElement::HTMLDataGridColElement): (WebCore::HTMLDataGridColElement::label): (WebCore::HTMLDataGridColElement::setLabel): (WebCore::HTMLDataGridColElement::type): (WebCore::HTMLDataGridColElement::setType): (WebCore::HTMLDataGridColElement::sortable): (WebCore::HTMLDataGridColElement::setSortable): (WebCore::HTMLDataGridColElement::sortDirection): (WebCore::HTMLDataGridColElement::setSortDirection): (WebCore::HTMLDataGridColElement::selected): (WebCore::HTMLDataGridColElement::setSelected): * html/HTMLDataGridColElement.h: Added. (WebCore::HTMLDataGridColElement::endTagRequirement): (WebCore::HTMLDataGridColElement::tagPriority): * html/HTMLDataGridColElement.idl: Added. * html/HTMLDataGridElement.h: * html/HTMLElementsAllInOne.cpp: * page/DOMWindow.idl: 2009-06-19 Chris Evans <scarybeasts@gmail.com> There is no new test because this cannot be tested deterministically. I've not been able to cause a crash at all in the test framework, but I have verified that this is happening in the wild and that the patch fixes the likely cause in the debugger. * loader/TextResourceDecoder.cpp: careful not to iterate off the end of our input buffer looking for the end of the comment. 2009-06-19 Adam Barth <abarth@webkit.org> Reviewed by Dimitri Glazkov. https://bugs.webkit.org/show_bug.cgi?id=26536 Fix external-script-URL-location.html and write-external-script-open.html LayoutTests. implicitOpen is called from several places. We need to setXSSAuditor each time, so I moved the call inside implicitOpen. (WebCore::Document::open): (WebCore::Document::implicitOpen): * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): 2009-06-19 Kent Tamura <tkent@chromium.org> Reviewed by David Levin. Use WebCore::multipleFileUploadText() in Chromium to fix a problem that Chromium shows only the first filename even if a user selects multiple files for <input type=file multiple>. <https://bugs.webkit.org/show_bug.cgi?id=26502> * platform/chromium/FileChooserChromium.cpp: 2009-06-19 Dan Bernstein <mitz@apple.com> Reviewed by Dave Hyatt. - fix <rdar://problem/6967596> Safari hung using 100% CPU when I tried to look up a word in Dictionary using command-control-d Test: editing/selection/move-by-line-005.html The root cause of this bug was searchAheadForBetterMatch() continuing past the first rendered text object after the given object. While we want to skip non-rendered text and empty containers, when we encounter rendered text object, we must return a text box for that object. * dom/Position.cpp: (WebCore::searchAheadForBetterMatch): 2009-06-19 Jungshik Shin <jshin@chromium.org> Reviewed by David Levin https://bugs.webkit.org/show_bug.cgi?id=25657 Chromium Linux port does not handle non-BMP characters properly. It's fixed with a 'UTF-16 iterator macro' to extract Unicode codepoints out of a UTF-16 input string. A manual test is added for non-BMP character rendering, which we can use until a small freely-distributable font covering non-BMP is added to the Webkit source tree. * platform/graphics/chromium/FontCacheLinux.cpp: * manual-tests/non-bmp.html: Added. 2009-06-19 Pavel Feldman <pfeldman@chromium.org> Reviewed by Dimitri Glazkov. V8 Bindings: return proper state from the script stack. https://bugs.webkit.org/show_bug.cgi?id=26512 * bindings/v8/ScriptCallStack.cpp: (WebCore::ScriptCallStack::ScriptCallStack): * bindings/v8/ScriptCallStack.h: (WebCore::ScriptCallStack::state): 2009-06-19 Jessie <jberlin@apple.com> Reviewed by Simon Fraser. Windows build fix. * platform/graphics/cg/PatternCG.cpp: (WebCore::Pattern::createPlatformPattern): 2009-06-19 Yael Aharon <yael.aharon@nokia.com> Build fix after 44825. * platform/graphics/qt/ImageDecoderQt.cpp: (WebCore::ImageDecoderQt::isSizeAvailable): * platform/graphics/qt/ImageDecoderQt.h: 2009-06-18 Shinichiro Hamaji <hamaji@chromium.org> Bug 26426: Canvas: rotation of 'no-repeat' pattern is weird <https://bugs.webkit.org/show_bug.cgi?id=26426> Use 1<<23-1 as steps of no-repeat patterns instead of 100000000.0f. The original number cannot be represented by mantissa of float (23bit) so that it caused some error. Test: fast/canvas/image-object-in-canvas.html: * platform/graphics/cg/PatternCG.cpp: 2009-06-19 Adam Barth <abarth@webkit.org> Unreviewed attempt to fix the Chromium build. * bindings/v8/ScriptController.cpp: (WebCore::ScriptController::ScriptController): (WebCore::ScriptController::evaluate): * bindings/v8/ScriptController.h: (WebCore::ScriptController::xssAuditor): * bindings/v8/ScriptEventListener.cpp: (WebCore::createAttributeEventListener): 2009-06-18 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26199 Added an experimental reflective XSS filter. The filter is disabled by default. Test: http/tests/security/xssAuditor/script-tag.html * WebCore.base.exp: (WebCore::ScriptController::ScriptController): (WebCore::ScriptController::evaluate): * bindings/js/ScriptController.h: (WebCore::ScriptController::xssAuditor): * bindings/js/ScriptEventListener.cpp: (WebCore::createAttributeEventListener): * dom/Tokenizer.h: (WebCore::Tokenizer::xssAuditor): (WebCore::Tokenizer::setXSSAuditor): (WebCore::Tokenizer::Tokenizer): * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::scriptHandler): (WebCore::FrameLoader::requestObject): * page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setXSSAuditorEnabled): * page/Settings.h: (WebCore::Settings::xssAuditorEnabled): * page/XSSAuditor.cpp: Added. (WebCore::isControlCharacter): (WebCore::XSSAuditor::XSSAuditor): (WebCore::XSSAuditor::~XSSAuditor): (WebCore::XSSAuditor::canEvaluate): (WebCore::XSSAuditor::canCreateInlineEventListener): (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): (WebCore::XSSAuditor::canLoadObject): (WebCore::XSSAuditor::decodeURL): (WebCore::XSSAuditor::findInRequest): * page/XSSAuditor.h: Added. (WebCore::XSSAuditor::isEnabled): (WebCore::XSSAuditor::setXSSAuditorEnabled): 2009-06-18 Dirk Schulze <krit@webkit.org> feOffset and objectBoundingBox [https://bugs.webkit.org/show_bug.cgi?id=26441] If we use objectBoundingBox for primitiveUnits, the fractions given to dx or dy of feOffset must be multiplied with the referenced objects objectBoundingBox size. Test: svg/filters/feOffset.svg * svg/graphics/filters/SVGFEOffset.cpp: (WebCore::FEOffset::apply): 2009-06-18 Dirk Schulze <krit@webkit.org> feTile implementation missing [https://bugs.webkit.org/show_bug.cgi?id=26419] Implementation of feTile, a pattern effect for SVG filters. It was necessary to modify FilterEffect since source inputs need a secial logic and we have to identify if an effect is a source input. Tests: svg/batik/filters/feTile.svg svg/filters/feTile.svg * platform/graphics/filters/FilterEffect.h: (WebCore::FilterEffect::isSourceInput): * platform/graphics/filters/SourceAlpha.h: (WebCore::SourceAlpha::isSourceInput): * platform/graphics/filters/SourceGraphic.h: (WebCore::SourceGraphic::isSourceInput): * svg/graphics/filters/SVGFETile.cpp: (WebCore::FETile::apply): 2009-06-18 Dirk Schulze <krit@webkit.org> feMerge implementation [https://bugs.webkit.org/show_bug.cgi?id=26480] Added feMerge to the SVG Filter system. Test: svg/filters/feMerge.svg * svg/graphics/filters/SVGFEMerge.cpp: (WebCore::FEMerge::uniteChildEffectSubregions): (WebCore::FEMerge::apply): * svg/graphics/filters/SVGFEMerge.h: 2009-06-18 Mark Rowe <mrowe@apple.com> Speculative Windows build fix. * page/win/FrameCGWin.cpp: Add missing #include. 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by Dave Levin. https://bugs.webkit.org/show_bug.cgi?id=26425 Final refactorings, picking up a few places where BitmapInfo could be used. * page/win/FrameCGWin.cpp: (WebCore::imageFromRect): * platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): * platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::paint): 2009-06-18 Chris Fleizach <cfleizach@apple.com> Bug 26522: In DOM mode, VoiceOver reads some mouseover text on web sites strangely https://bugs.webkit.org/show_bug.cgi?id=26522 Test: accessibility/non-data-table-cell-title-ui-element.html * accessibility/AccessibilityTableCell.cpp: (WebCore::AccessibilityTableCell::titleUIElement): 2009-06-18 Kevin Ollivier <kevino@theolliviers.com> wx build fix after recent RenderTheme changes. * platform/wx/RenderThemeWx.cpp: (WebCore::RenderThemeWx::~RenderThemeWx): (WebCore::RenderTheme::themeForPage): 2009-06-18 Peter Kasting <pkasting@google.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26460 part two Attempt to minimize diff of following functional change by first landing non-functional change to: * Make readUintX() public and static (since they will need to be once BMPImageReader is included in *ImageDecoder via composition rather than inheritance). Add wrappers in each class so callers can be simpler. In the next patch, these wrappers will be beefed up slightly and the callers will get even simpler. * Change direct setting of m_failed to use setFailed(), since in the next patch much of this code won't even have direct access to m_failed * Add a helper function in ICOImageDecoder to determine the image type instead of simply doing it inline * Rewrap lines that used to be <=80 cols and slipped over it during the original landing of these decoders * Other misc. changes, e.g. adding constructor definitions, reordering functions, changing RGBA32Buffer& to RGBA32Buffer*, etc. that have no functional effect but minimize the subsequent diff for readability * platform/image-decoders/bmp/BMPImageDecoder.cpp: (WebCore::BMPImageDecoder::BMPImageDecoder): (WebCore::BMPImageDecoder::processFileHeader): (WebCore::BMPImageDecoder::readUint32): * platform/image-decoders/bmp/BMPImageReader.cpp: (WebCore::BMPImageReader::decodeBMP): (WebCore::BMPImageReader::getInfoHeaderSize): (WebCore::BMPImageReader::processInfoHeader): (WebCore::BMPImageReader::readInfoHeader): (WebCore::BMPImageReader::processBitmasks): (WebCore::BMPImageReader::processColorTable): (WebCore::BMPImageReader::processRLEData): (WebCore::BMPImageReader::processNonRLEData): * platform/image-decoders/bmp/BMPImageReader.h: (WebCore::BMPImageReader::readUint16Helper): (WebCore::BMPImageReader::readUint32Helper): (WebCore::BMPImageReader::): (WebCore::BMPImageReader::readUint16): (WebCore::BMPImageReader::readUint32): (WebCore::BMPImageReader::readCurrentPixel): (WebCore::BMPImageReader::getComponent): (WebCore::BMPImageReader::setI): (WebCore::BMPImageReader::setRGBA): (WebCore::BMPImageReader::fillRGBA): * platform/image-decoders/ico/ICOImageDecoder.cpp: (WebCore::ICOImageDecoder::ICOImageDecoder): (WebCore::ICOImageDecoder::isSizeAvailable): (WebCore::ICOImageDecoder::size): (WebCore::ICOImageDecoder::decodeImage): (WebCore::ICOImageDecoder::processDirectory): (WebCore::ICOImageDecoder::processDirectoryEntries): (WebCore::ICOImageDecoder::isBetterEntry): (WebCore::ICOImageDecoder::processImageType): (WebCore::ICOImageDecoder::readUint16): (WebCore::ICOImageDecoder::readUint32): 2009-06-18 Peter Kasting <pkasting@google.com> Fix build bustage. * platform/image-decoders/gif/GIFImageDecoder.h: 2009-06-18 Kevin McCullough <kmccullough@apple.com> <rdar://problem/6940880> REGRESSION: Breakpoints don't break in 64-bit Convert intptr_t to Strings so that we don't loose bits in the conversion to JS. Previously they were being put into 32bit ints. * inspector/InspectorController.cpp: Convert the String back to an intptr_t. (WebCore::InspectorController::addBreakpoint): (WebCore::InspectorController::removeBreakpoint): * inspector/InspectorController.h: * inspector/InspectorController.idl: Use strings in JS to avoid 32bit truncation. * inspector/InspectorFrontend.cpp: Make the intptr_t into a String. (WebCore::InspectorFrontend::parsedScriptSource): * platform/text/PlatformString.h: Implemented the necessary conversion functions to be able to convert to and from an intptr_t. * platform/text/String.cpp: Ditto. (WebCore::String::toIntPtrStrict): (WebCore::String::toIntPtr): (WebCore::charactersToIntPtrStrict): (WebCore::charactersToIntPtr): * platform/text/StringImpl.cpp: Ditto. (WebCore::StringImpl::toIntPtrStrict): (WebCore::StringImpl::toIntPtr): * platform/text/StringImpl.h: Ditto. 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by Eric Seidel. Final cleanups in this refactoring: (1) Move WindowsBitmap implementation from CG-specific file to the platform-common GraphicsContextWin.cpp, since it is equally useful on both platforms. (2) Revise the TransformationMatrix logic as suggested by Adam Roben in his review comments to Part #2 of this refactoring. * platform/graphics/win/GraphicsContextCGWin.cpp: * platform/graphics/win/GraphicsContextWin.cpp: (WebCore::GraphicsContext::WindowsBitmap::WindowsBitmap): (WebCore::GraphicsContext::WindowsBitmap::~WindowsBitmap): (WebCore::GraphicsContext::createWindowsBitmap): (WebCore::GraphicsContext::getWindowsContext): (WebCore::GraphicsContextPlatformPrivate::scale): (WebCore::GraphicsContextPlatformPrivate::rotate): (WebCore::GraphicsContextPlatformPrivate::translate): (WebCore::GraphicsContextPlatformPrivate::concatCTM): 2009-06-18 Peter Kasting <pkasting@google.com> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26460 part one Make isSizeAvailable non-const, since it's not logically const (it triggers lazy decoding), and simplify all the implementations (without changing behavior; just make less verbose). Remove some other inappropriate consts, which enables the removal of all the mutable declarations in the decoders. (WebCore::ImageDecoder::isSizeAvailable): (WebCore::ImageDecoder::setSize): Make public to avoid needing a friend declaration in the JPEG decoder, and because the ICO/BMP decoders will soon need this. (WebCore::GIFImageDecoder::isSizeAvailable): (WebCore::GIFImageDecoder::decode): * platform/image-decoders/ico/ICOImageDecoder.cpp: (WebCore::ICOImageDecoder::isSizeAvailable): * platform/image-decoders/ico/ICOImageDecoder.h: * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: (WebCore::JPEGImageDecoder::isSizeAvailable): (WebCore::JPEGImageDecoder::decode): * platform/image-decoders/jpeg/JPEGImageDecoder.h: * platform/image-decoders/png/PNGImageDecoder.cpp: (WebCore::PNGImageDecoder::isSizeAvailable): (WebCore::PNGImageDecoder::decode): * platform/image-decoders/png/PNGImageDecoder.h: * platform/image-decoders/xbm/XBMImageDecoder.cpp: (WebCore::XBMImageDecoder::isSizeAvailable): (WebCore::XBMImageDecoder::frameBufferAtIndex): (WebCore::XBMImageDecoder::decode): * platform/image-decoders/xbm/XBMImageDecoder.h: Rename decodeXBM() to decode() for consistency with the JPEG/PNG decoders, and in the future the ICO/BMP decoders. 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Move some common functions out of platform files and into the common implementation. https://bugs.webkit.org/show_bug.cgi?id=26425. Add a new platform context method (flush) so that the getWindowsContext method can be consolidated into the common GraphicsContextWin.cpp file. * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: (WebCore::GraphicsContextPlatformPrivate::flush): * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: (WebCore::GraphicsContextPlatformPrivate::flush): * platform/graphics/win/GraphicsContextCGWin.cpp: Remove getWindowContext method. * platform/graphics/win/GraphicsContextCairoWin.cpp: Remove getWindowContext method and fillWithClearColor methods. * platform/graphics/win/GraphicsContextWin.cpp: (WebCore::fillWithClearColor): Moved from *CairoWin.cpp (WebCore::GraphicsContext::getWindowsContext): Moved from *CairoWin.cpp 2009-06-18 Ojan Vafai <ojan@chromium.org> Remove code that I accidentally committed in r44811. * editing/markup.cpp: (WebCore::createMarkup): 2009-06-18 Simon Fraser <simon.fraser@apple.com> Reviewed by Dan Bernstein. <rdar://problem/6983207> Non-layer content is not re-rendered when transition starts sometimes (with hardware acceleration). When deciding which RenderLayers should be composited, when a layer goes into compositing mode we repaint the old location. However, we did that before we'd looked at all the factors that may force a layer to composite, so missed some cases. Fix by doing the repaint once we really know whether it's going to composite. Test: compositing/repaint/become-overlay-composited-layer.html * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::computeCompositingRequirements): 2009-06-18 Simon Fraser <simon.fraser@apple.com> Fix the Leopard build where USE(ACCELERATED_COMPOSITING) is not defined, and the Tiger build where QTMovieLayer does not exist. * platform/graphics/mac/MediaPlayerPrivateQTKit.h: * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovieLayer): (WebCore::MediaPlayerPrivate::destroyQTMovieLayer): (WebCore::MediaPlayerPrivate::currentRenderingMode): (WebCore::MediaPlayerPrivate::setUpVideoRendering): (WebCore::MediaPlayerPrivate::tearDownVideoRendering): (WebCore::MediaPlayerPrivate::hasSetUpVideoRendering): 2009-06-18 Simon Fraser <simon.fraser@apple.com> Fix the Leopard build where USE(ACCELERATED_COMPOSITING) is not defined. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::currentRenderingMode): (WebCore::MediaPlayerPrivate::setUpVideoRendering): (WebCore::MediaPlayerPrivate::tearDownVideoRendering): 2009-06-17 Erik Arvidsson <arv@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=15189 Adds the HTML5 input event support for textarea. Also, moves the oninput attribute parse handling to HTMLElement so that it can be set on any HTML element so that bubbling events can be handled using HTML attribute handlers. Test: fast/forms/textarea-input-event.html * html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute): (WebCore::HTMLInputElement::parseMappedAttribute): * rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::subtreeHasChanged): 2009-06-18 Dirk Schulze <krit@webkit.org> Share code between filterEffects [https://bugs.webkit.org/show_bug.cgi?id=26479] Share more code of filter effects. The imageBuffer creation can move to FilterEffect ant every effect asks for the GraphicsContext. Move the drawingRect calculation to FilterEffect. * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::calculateDrawingRect): (WebCore::FilterEffect::getEffectContext): * platform/graphics/filters/FilterEffect.h: * platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::apply): * svg/graphics/filters/SVGFEFlood.cpp: (WebCore::FEFlood::apply): * svg/graphics/filters/SVGFEOffset.cpp: (WebCore::FEOffset::apply): 2009-06-18 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26499 Support hardware-accelerationed rendering of video elements. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks): (WebCore::HTMLMediaElement::mediaPlayerRepaint): Just move these methods to group the render-related methods together. (WebCore::HTMLMediaElement::mediaPlayerRenderingCanBeAccelerated): Call out method to ask the RenderLayerCompositor if presentation of this video can be acclerated. It might say no, if, for example, the video has a reflection. (WebCore::HTMLMediaElement::mediaPlayerGraphicsLayer): Fetch the GraphicsLayer from the RenderVideo that will host the movie layer. * html/HTMLMediaElement.h: Reordered the rendering-related methods, and added two methods related to video acceleration. * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::acceleratedRenderingStateChanged): Called by the rendering system when it determines that the video must go into, or fall off of the hardware-accelerated path. (WebCore::MediaPlayer::supportsAcceleratedRendering): Method to say whether the media engine supports accelerated rendering. * platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerRepaint): (WebCore::MediaPlayerClient::mediaPlayerSizeChanged): Moved. (WebCore::MediaPlayerClient::mediaPlayerRenderingCanBeAccelerated): (WebCore::MediaPlayerClient::mediaPlayerGraphicsLayer): New methods to ask the client if the rendering system can support accelerated rendering, and to get a GraphicsLayer to plug the movie layer into. * platform/graphics/MediaPlayerPrivate.h: (WebCore::MediaPlayerPrivateInterface::supportsAcceleratedRendering): (WebCore::MediaPlayerPrivateInterface::acceleratedRenderingStateChanged): Forwarding methods from MediaPlayer. * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Some new methods related to using a QTMovieLayer, and to simplify the rendering mode logic. * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovieLayer): (WebCore::MediaPlayerPrivate::destroyQTMovieLayer): Methods to create and destroy the QTMovieLayer. (WebCore::MediaPlayerPrivate::currentRenderingMode): (WebCore::MediaPlayerPrivate::preferredRenderingMode): Methods to clarify the code that decides which of the 3 rendering modes to use. (WebCore::MediaPlayerPrivate::setUpVideoRendering): Changed to use the new rendering mode methods. (WebCore::MediaPlayerPrivate::tearDownVideoRendering): Destroy the layer if we have one. (WebCore::MediaPlayerPrivate::hasSetUpVideoRendering): Small utility method. (WebCore::MediaPlayerPrivate::updateStates): Move the call to setUpVideoRendering() to before we send out the state notifications, so that we will have created the rendering objects already. (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering): Return true if we have QTMovieLayer. (WebCore::MediaPlayerPrivate::acceleratedRenderingStateChanged): We've been told that we went into or out of accelerated mode; maybe reset the renderer, and set the layer if we have to. * rendering/RenderLayer.cpp: (WebCore::RenderLayer::rendererContentChanged): We may need to udpate compositing layers if the video went into accelerated mode. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::canUseDirectCompositing): Add smarts to deal with video, which allows us to avoid extra backing store. (WebCore::RenderLayerBacking::contentsBox): Use the videoBox to use the content layer for video layers. * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateLayerCompositingState): Poke the RenderVideo if the state changed. (WebCore::RenderLayerCompositor::computeCompositingRequirements): Handle an edge case when the video element itself is a stacking context because of opacity or transform. (WebCore::RenderLayerCompositor::canAccelerateVideoRendering): (WebCore::RenderLayerCompositor::requiresCompositingLayer): (WebCore::RenderLayerCompositor::requiresCompositingForVideo): Allow video to throw us into compositing mode if the media engine supports it. * rendering/RenderLayerCompositor.h: New methods related to video. * rendering/RenderVideo.h: * rendering/RenderVideo.cpp: (WebCore::RenderVideo::updatePlayer): Call rendererContentChanged() to give the compositor a change to throw the video into compositing mode. (WebCore::RenderVideo::supportsAcceleratedRendering): (WebCore::RenderVideo::acceleratedRenderingStateChanged): (WebCore::RenderVideo::videoGraphicsLayer): Methods to allow the MediaPlayer to do rendering-related stuff via the media element. 2009-06-18 Rob Buis <rwlbuis@gmail.com> Reviewed by Niko. https://bugs.webkit.org/show_bug.cgi?id=26385 Root SVG element is not checked on requiredFeatures, requiredExtension like other elements Also do the isValid check for outer <svg>. Test: svg/custom/outer-svg-unknown-feature.svg * svg/SVGDocument.cpp: (WebCore::SVGDocument::childShouldCreateRenderer): * svg/SVGDocument.h: 2009-06-18 Dan Bernstein <mitz@apple.com> - fix <rdar://problem/6913221> REGRESSION (Safari 3-4): Search field on apple.com cuts entered text Test: fast/forms/search-vertical-alignment.html * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::layout): Vertically center the the search field's inner block. 2009-06-18 Janne Koskinen <janne.p.koskinen@digia.com> Fix compilation with Symbian WINSCW compiler, which produced multiple definitions of the CSSPrimitiveValue conversion operators. It turns out that they are defined inline but not declared inline. Adding the inline keyword to the declaration fixes the build. 2009-06-18 Markus Goetz <Markus.Goetz@nokia.com> Reviewed by Simon Hausman. Clarify in docs how to compile with debug information. 2009-06-18 Jakub Wieczorek <faw217@gmail.com> [Qt] When writing an URL to the clipboard, save the corresponding title in the mime data as well. * platform/qt/ClipboardQt.cpp: (WebCore::ClipboardQt::writeURL): 2009-06-18 Jakub Wieczorek <faw217@gmail.com> [Qt] Fix build. Add HTMLDataGridElement. 2009-06-18 Jan Michael Alonzo <jmalonzo@webkit.org> Gtk build fix. Add HTMLDataGridElement header and IDL to the build script. 2009-06-18 Chris Evans <scarybeasts@gmail.com> Reviewed by Adam Barth. Fix 8-digit long hex entities. Fixes bug 26454 https://bugs.webkit.org/show_bug.cgi?id=26454 Test: fast/parser/eightdigithexentity.html * html/HTMLTokenizer.cpp: fix off-by-ones. 2009-06-18 David Levin <levin@chromium.org> Fix chromium linux build. Fixes a mistake that happened during the complicated merge for landing r44775, r44776, r44777. * rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::create): 2009-06-17 Simon Fraser <simon.fraser@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26499 First step to making video rendering be hardware-accelerated: make <video> elements get self-painting RenderLayers, and add an isVideo() virtual method to RenderObject. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setReadyState): (WebCore::HTMLMediaElement::mediaPlayerDurationChanged): (WebCore::HTMLMediaElement::mediaPlayerSizeChanged): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::shouldBeNormalFlowOnly): (WebCore::RenderLayer::isSelfPaintingLayer): (WebCore::RenderObject::isVideo): * rendering/RenderVideo.h: (WebCore::RenderVideo::requiresLayer): (WebCore::RenderVideo::isVideo): 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Refactor a few common routines in the various Windows ports and reduce some duplicated code. (1) Create TransformationMatrix XFORM casting operator, and switch various XFORM structure uses to utilize it. (2) Push concatCTM call to GraphicsContextWin now that the TransformationMatrix can directly create XFORM (rather than converting to CGAffineTransform/cairo_matrix_t first.) * WebCore.vcproj/WebCore.vcproj: Add new BitmapInfo structure. * platform/graphics/transforms/TransformationMatrix.h: * platform/graphics/win/GraphicsContextCGWin.cpp: * platform/graphics/win/GraphicsContextCairoWin.cpp: * platform/graphics/win/GraphicsContextWin.cpp: (WebCore::GraphicsContextPlatformPrivate::scale): (WebCore::GraphicsContextPlatformPrivate::rotate): (WebCore::GraphicsContextPlatformPrivate::translate): (WebCore::GraphicsContextPlatformPrivate::concatCTM): * platform/graphics/win/TransformationMatrixWin.cpp: Added. (WebCore::TransformationMatrix::operator XFORM): New operator 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Non-CG Windows build fix after @r44758. * rendering/RenderThemeWin.cpp: (WebCore::RenderTheme::themeForPage): 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by Adam Roben. Refactor a few common routines in the various Windows ports and reduce some duplicated code. https://bugs.webkit.org/show_bug.cgi?id=26425. Refactor use of BITMAPINFO for the new BitmapInfo structure. * platform/win/BitmapInfo.cpp: Added. (WebCore::bitmapInfoForSize): (WebCore::BitmapInfo::create): (WebCore::BitmapInfo::createBottomUp): * platform/win/BitmapInfo.h: Added. * platform/graphics/win/GraphicsContextCairoWin.cpp: * platform/graphics/win/GraphicsContextCGWin.cpp: * platform/graphics/win/TransformationMatrixWin.cpp: Added. (WebCore::TransformationMatrix::operator XFORM): New operator * platform/win/DragImageCGWin.cpp: (WebCore::allocImage): * platform/win/DragImageCairoWin.cpp: (WebCore::allocImage): * platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::writeImage): (WebCore::PopupMenu::paint): 2009-06-17 Adam Roben <aroben@apple.com> Remove unnecessary 6th parameter from SOFT_LINK_OPTIONAL * platform/graphics/win/ColorSafari.cpp: Removed the 6th parameter and an unnecessary parameter name. * platform/win/SoftLinking.h: Removed the unused 6th parameter. 2009-06-17 Adam Roben <aroben@apple.com> Make Settings::shouldPaintNativeControls default to true This matches the default up in WebKit (that was changed in r43318). Fixes Bug 26493: REGRESSION (r44758): First tab always uses Mac-style form controls <https://bugs.webkit.org/show_bug.cgi?id=26493> Reviewed by Darin Adler and Dave Hyatt. No test possible since DRT always uses Mac-style form controls. * page/Settings.cpp: Changed the initial value of gShouldPaintNativeControls to true. * rendering/RenderThemeSafari.cpp: (WebCore::RenderTheme::themeForPage): Added a FIXME about the design flaw here involving querying Settings before it's been initialized. 2009-06-17 David Levin <levin@chromium.org> Fix chromium windows build. A mistake that happened during the complicated merge for landing r44775, r44776, r44777. * rendering/RenderThemeChromiumWin.h: (WebCore::RenderThemeChromiumWin::RenderThemeChromiumWin): (WebCore::RenderThemeChromiumWin::~RenderThemeChromiumWin): 2009-06-17 Eric Carlson <eric.carlson@apple.com> Reviewed by Simon Fraser. <rdar://problem/6981193> Crash in MediaControlInputElement::attachToParent * rendering/MediaControlElements.cpp: (WebCore::MediaTextDisplayElement::attachToParent): NULL check element renderer or parent renderer. (WebCore::MediaControlInputElement::attachToParent): Ditto. 2009-06-17 David Hyatt <hyatt@apple.com> Fix Windows build. There's no HTMLDataGridElement.cpp file yet. * html/HTMLElementsAllInOne.cpp: 2009-06-17 David Hyatt <hyatt@apple.com> Reviewed by Adam Roben and Anders Carlsson. Stub out the HTMLDataGridElement. * WebCoreSources.bkl: (WebCore::CSSStyleSelector::adjustRenderStyle): (WebCore::canHaveChildrenForEditing): * html/HTMLDataGridElement.h: Added. (WebCore::HTMLDataGridElement::HTMLDataGridElement): (WebCore::HTMLDataGridElement::tagPriority): * html/HTMLDataGridElement.idl: Added. * html/HTMLTagNames.in: 2009-06-17 David Levin <levin@chromium.org> Reviewed by NOBODY (chromium build fix). Fix typo in previous changes. * rendering/RenderThemeChromiumSkia.cpp: (WebCore::RenderThemeChromiumSkia::defaultGUIFont): 2009-06-17 Albert J. Wong <ajwong@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26148 Remove common code from RenderThemeChromiumWin that is shared with RenderThemeChromiumSkia. Also move supportsControlTints to RenderThemeChromiumLinux since it is linux specific. There are no tests changed because this just removes functions with duplicate implementations between the base and derived classes. * rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::supportsControlTints): * rendering/RenderThemeChromiumLinux.h: * rendering/RenderThemeChromiumSkia.cpp: * rendering/RenderThemeChromiumSkia.h: * rendering/RenderThemeChromiumWin.cpp: (WebCore::): (WebCore::getNonClientMetrics): (WebCore::RenderThemeChromiumWin::RenderThemeChromiumWin): (WebCore::RenderThemeChromiumWin::~RenderThemeChromiumWin): (WebCore::RenderThemeChromiumWin::systemFont): (WebCore::RenderThemeChromiumWin::paintCheckbox): (WebCore::RenderThemeChromiumWin::paintRadio): (WebCore::RenderThemeChromiumWin::paintSliderThumb): (WebCore::RenderThemeChromiumWin::caretBlinkIntervalInternal): * rendering/RenderThemeChromiumWin.h: 2009-06-17 Albert J. Wong <ajwong@chromium.org> https://bugs.webkit.org/show_bug.cgi?id=26148 Move RenderThemeChromiumSkia into its own file. This is purely a code move. * rendering/RenderThemeChromiumLinux.cpp: * rendering/RenderThemeChromiumLinux.h: * rendering/RenderThemeChromiumSkia.cpp: (WebCore::): (WebCore::setSizeIfAuto): (WebCore::mediaElementParent): (WebCore::RenderThemeChromiumSkia::defaultGUIFont): (WebCore::RenderThemeChromiumSkia::RenderThemeChromiumSkia): (WebCore::RenderThemeChromiumSkia::~RenderThemeChromiumSkia): (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): (WebCore::RenderThemeChromiumSkia::extraQuirksStyleSheet): (WebCore::RenderThemeChromiumSkia::extraMediaControlsStyleSheet): (WebCore::RenderThemeChromiumSkia::supportsHover): (WebCore::RenderThemeChromiumSkia::supportsFocusRing): (WebCore::RenderThemeChromiumSkia::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumSkia::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumSkia::platformActiveSelectionForegroundColor): (WebCore::RenderThemeChromiumSkia::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeChromiumSkia::platformTextSearchHighlightColor): (WebCore::RenderThemeChromiumSkia::caretBlinkInterval): (WebCore::RenderThemeChromiumSkia::systemFont): (WebCore::RenderThemeChromiumSkia::minimumMenuListSize): (WebCore::RenderThemeChromiumSkia::paintCheckbox): (WebCore::RenderThemeChromiumSkia::setCheckboxSize): (WebCore::RenderThemeChromiumSkia::paintRadio): (WebCore::RenderThemeChromiumSkia::setRadioSize): (WebCore::brightenColor): (WebCore::paintButtonLike): (WebCore::RenderThemeChromiumSkia::paintButton): (WebCore::RenderThemeChromiumSkia::paintTextField): (WebCore::RenderThemeChromiumSkia::paintTextArea): (WebCore::RenderThemeChromiumSkia::paintSearchField): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldCancelButtonStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldDecorationStyle): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldResultsDecorationStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldResultsButtonStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton): (WebCore::RenderThemeChromiumSkia::paintMediaButtonInternal): (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton): (WebCore::RenderThemeChromiumSkia::paintMediaMuteButton): (WebCore::RenderThemeChromiumSkia::adjustMenuListStyle): (WebCore::RenderThemeChromiumSkia::paintMenuList): (WebCore::RenderThemeChromiumSkia::adjustMenuListButtonStyle): (WebCore::RenderThemeChromiumSkia::paintMenuListButton): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingLeft): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingRight): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingTop): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingBottom): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingLeft): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingRight): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingTop): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingBottom): (WebCore::RenderThemeChromiumSkia::caretBlinkIntervalInternal): (WebCore::RenderThemeChromiumSkia::menuListInternalPadding): * rendering/RenderThemeChromiumSkia.h: (WebCore::RenderThemeChromiumSkia::supportsControlTints): 2009-06-17 Albert J. Wong <ajwong@chromium.org> Reviewed by Eric Seidel. https://bugs.webkit.org/show_bug.cgi?id=26148 Extract RenderThemeChromiumSkia out of RenderThemeChromiumLinux. This is mostly a code shuffle. The non-suffle changes are: 1) Creation of a caretBlinkIntervalInternal. 2) Moving of some inline functions into the implementation files. 3) Changing of defaultGUIFont into a static class constant from a static function. Also the type is changed to String. 4) Changing of defaultFontSize into a static class constant from a static variable in the file scope. 5) The static supportsFocus function was collapsed into supportsFocusRing. 6) Split the extraDefaultStyleSheet into Skia and Linux versions. * rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumSkia::defaultGUIFont): (WebCore::RenderThemeChromiumSkia::RenderThemeChromiumSkia): (WebCore::RenderThemeChromiumSkia::~RenderThemeChromiumSkia): (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): (WebCore::RenderThemeChromiumSkia::extraQuirksStyleSheet): (WebCore::RenderThemeChromiumSkia::extraMediaControlsStyleSheet): (WebCore::RenderThemeChromiumSkia::supportsHover): (WebCore::RenderThemeChromiumSkia::supportsFocusRing): (WebCore::RenderThemeChromiumSkia::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumSkia::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumSkia::platformActiveSelectionForegroundColor): (WebCore::RenderThemeChromiumSkia::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeChromiumSkia::platformTextSearchHighlightColor): (WebCore::RenderThemeChromiumSkia::caretBlinkInterval): (WebCore::RenderThemeChromiumSkia::systemFont): (WebCore::RenderThemeChromiumSkia::minimumMenuListSize): (WebCore::RenderThemeChromiumSkia::paintCheckbox): (WebCore::RenderThemeChromiumSkia::setCheckboxSize): (WebCore::RenderThemeChromiumSkia::paintRadio): (WebCore::RenderThemeChromiumSkia::setRadioSize): (WebCore::RenderThemeChromiumSkia::paintButton): (WebCore::RenderThemeChromiumSkia::paintTextField): (WebCore::RenderThemeChromiumSkia::paintTextArea): (WebCore::RenderThemeChromiumSkia::paintSearchField): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldCancelButtonStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldDecorationStyle): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldResultsDecorationStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration): (WebCore::RenderThemeChromiumSkia::adjustSearchFieldResultsButtonStyle): (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton): (WebCore::RenderThemeChromiumSkia::paintMediaButtonInternal): (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton): (WebCore::RenderThemeChromiumSkia::paintMediaMuteButton): (WebCore::RenderThemeChromiumSkia::adjustMenuListStyle): (WebCore::RenderThemeChromiumSkia::paintMenuList): (WebCore::RenderThemeChromiumSkia::adjustMenuListButtonStyle): (WebCore::RenderThemeChromiumSkia::paintMenuListButton): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingLeft): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingRight): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingTop): (WebCore::RenderThemeChromiumSkia::popupInternalPaddingBottom): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingLeft): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingRight): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingTop): (WebCore::RenderThemeChromiumSkia::buttonInternalPaddingBottom): (WebCore::RenderThemeChromiumSkia::caretBlinkIntervalInternal): (WebCore::RenderThemeChromiumLinux::RenderThemeChromiumLinux): (WebCore::RenderThemeChromiumLinux::~RenderThemeChromiumLinux): (WebCore::RenderThemeChromiumLinux::systemColor): (WebCore::RenderThemeChromiumLinux::extraDefaultStyleSheet): (WebCore::RenderThemeChromiumSkia::menuListInternalPadding): * rendering/RenderThemeChromiumLinux.h: 2009-06-17 Adam Roben <aroben@apple.com> Add a SOFT_LINK_OPTIONAL macro This macro is useful when soft-linking functions that are present in only some versions of a particular library (e.g., APIs added in Windows Vista that aren't available on Windows XP). Reviewed by Ada Chan. * platform/graphics/win/ColorSafari.cpp: (WebCore::focusRingColor): Use the SoftLinking.h macros instead of doing the soft-link ourselves. Also removed an unused call to focusRingColor.isValid(). * platform/win/SoftLinking.h: Added SOFT_LINK_OPTIONAL. 2009-06-17 Brent Fulgham <bfulgham@webkit.org> Reviewed by Gustavo Noronha. Fixes: https://bugs.webkit.org/show_bug.cgi?id=26470. The use of zero-width or zero-height rectangles in generating gradients caused Windows Cairo to crash, and webkitgtk to produce invalid images. We now test for NaN in the phase argument, which is calculated using fmodf and can blow up when the width/height values passed are zero. Test: fast/gradients/border-image-gradient-sides-and-corners.html * platform/graphics/cairo/ImageCairo.cpp: 2009-06-17 Ojan Vafai <ojan@chromium.org> Reviewed by Dimitri Glazkov. If loading a font fails because of the sandbox, we ask the browser process to try to load it by calling ensureFontLoaded. If it still fails after ensureFontLoaded, we hit a ASSERT_NOT_REACHED. This case happens once in a while during browser shutdown. The browser will queue a message to the renderer to shutdown, and will then stop answering sync messages from the renderer. If the renderer is still loading a page during this time, it might try to call the browser process to ask to load a font. The browser process will ignore the request, and the font will fail to load, even after the second try. This is unfortunate, but there is no real risk here, since the renderer will be going away as soon as it processes another message. This can't be layout tested as it depends on the sandbox. https://bugs.webkit.org/show_bug.cgi?id=26484 * platform/graphics/chromium/FontCacheChromiumWin.cpp: (WebCore::fontContainsCharacter): 2009-06-17 Eric Carlson <eric.carlson@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26482 <rdar://problem/6978590> When setting playback rate to 0, the audio element stops playing (doesn't resume later) * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::setRate): Always set the rate, even when "paused". * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::setRate): Ditto. 2009-06-17 Adam Roben <aroben@apple.com> Add all the generated JS*.cpp files back to WebCore.vcproj They are not compiled by the vcproj directly. Instead they are compiled as part of DerivedSources.cpp. Having them listed in the vcproj makes them be included in Project Find, etc. Rubber-stamped in advance by Steve Falkenburg. 2009-06-17 Kent Tamura <tkent@chromium.org> Reviewed by Darin Fisher. Don't fire redundant 'change' events for a file upload form. https://bugs.webkit.org/show_bug.cgi?id=26471 (WebCore::FileChooser::chooseFiles): Suppress change event if the existing selected files and the incoming selected files are equal. (WebCore::FileChooser::chooseIcon): Returns 0 if there is no selected files. 2009-06-17 Adam Treat <adam.treat@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=23155 Move WIN_CE -> WINCE as previously discussed with Qt WINCE folks. * platform/KeyboardCodes.h: 2009-06-17 George Staikos <george.staikos@torchmobile.com> Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=23155 Move WIN_CE -> WINCE as previously discussed with Qt WINCE folks. (WebCore::GraphicsContext::getWindowsContext): * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): 2009-06-17 Adam Roben <aroben@apple.com> Speculative Mac build fix * page/Page.h: Forward-declare RenderTheme instead of including RenderTheme.h so that we don't need to make RenderTheme.h a private header for WebKit's benefit. * editing/SelectionController.cpp: * rendering/InlineTextBox.cpp: Added #includes of RenderTheme.h. 2009-06-17 Adam Roben <aroben@apple.com> Speculative Mac build fix (WebCore::RenderTheme::create): Added. 2009-06-17 Adam Roben <aroben@apple.com> Speculative Mac build fix * rendering/RenderThemeMac.mm: (WebCore::RenderTheme::themeForPage): Remove the name of an unused parameter. 2009-06-17 Adam Roben <aroben@apple.com> Speculative Mac build fix * page/Page.cpp: (WebCore::Page::Page): Change the initializer order to match the declaration order. 2009-06-16 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Simon Hausmann. Follow up to bug https://bugs.webkit.org/show_bug.cgi?id=26278 Patch that make WebCore have a RenderTheme per page Make the Qt implementation of RenderTheme create a theme per page, and use the QStyle associated with the view of each page, in order to make the QWidget setStyle() method work as advertised. (WebCore::RenderThemeQt::RenderThemeQt): (WebCore::RenderThemeQt::qStyle): (WebCore::findFrameLineWidth): (WebCore::inflateButtonRect): (WebCore::RenderThemeQt::computeSizeBasedOnStyle): (WebCore::RenderThemeQt::setButtonPadding): (WebCore::RenderThemeQt::setPopupPadding): 2009-06-16 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Reviewed by Dave Hyatt and Adam Roben. https://bugs.webkit.org/show_bug.cgi?id=26278 Patch that make WebCore have a RenderTheme per page Create a different RenderTheme per page, so that RenderTheme has access to page specific theming. This is needed for the Qt port, as Qt supports setting the theme (style) per widget. This change was suggested and discussed with Dave Hyatt. More detailed: 1) Create a theme per page or one global one, depending on the needs of the platform. 2) Add an accesser to the theme from RenderObject. 3) Change all uses of the theming to access the theme through RenderObject, using the global default theme as fallback, when the document of RenderObject has no page. When we don't have access to a RenderObject, use the default theme. 4) Modify all RenderTheme platform implementations to work with the above changes, still creating only one global theme. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::boundingBoxRect): (WebCore::loadFullDefaultStyle): (WebCore::CSSStyleSelector::adjustRenderStyle): * dom/ContainerNode.cpp: (WebCore::ContainerNode::setActive): (WebCore::ContainerNode::setHovered): * editing/SelectionController.cpp: (WebCore::SelectionController::focusedOrActiveStateChanged): * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::parseMappedAttribute): (WebCore::HTMLInputElement::setChecked): (WebCore::HTMLInputElement::setIndeterminate): * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): * page/FrameView.cpp: (WebCore::FrameView::updateControlTints): * page/Page.cpp: (WebCore::Page::Page): * page/Page.h: (WebCore::Page::theme): * platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::paintRow): * platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::create): (WebCore::RenderTheme::themeForPage): (WebCore::RenderThemeGtk::RenderThemeGtk): (WebCore::RenderThemeGtk::~RenderThemeGtk): (WebCore::RenderThemeGtk::gtkEntry): (WebCore::RenderThemeGtk::gtkTreeView): * platform/gtk/RenderThemeGtk.h: (WebCore::RenderThemeQt::create): (WebCore::RenderTheme::themeForPage): * rendering/RenderMediaControls.cpp: (WebCore::determineState): * platform/wx/RenderThemeWx.cpp: (WebCore::RenderThemeWx::create): (WebCore::RenderTheme::themeForPage): * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintTextMatchMarker): * rendering/MediaControlElements.cpp: (WebCore::MediaControlInputElement::hitTest): (WebCore::RenderObject::theme): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): * rendering/RenderTheme.h: (WebCore::RenderTheme::defaultTheme): * rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::create): (WebCore::RenderTheme::themeForPage): * rendering/RenderThemeChromiumLinux.h: (WebCore::RenderThemeChromiumLinux::~RenderThemeChromiumLinux): * rendering/RenderThemeChromiumMac.h: * rendering/RenderThemeChromiumMac.mm: (WebCore::RenderThemeChromiumMac::create): (WebCore::RenderTheme::themeForPage): * rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::create): (WebCore::RenderTheme::themeForPage): * rendering/RenderThemeChromiumWin.h: (WebCore::RenderThemeChromiumWin::RenderThemeChromiumWin): (WebCore::RenderThemeChromiumWin::~RenderThemeChromiumWin): * rendering/RenderThemeMac.h: * rendering/RenderThemeMac.mm: (WebCore::RenderTheme::themeForPage): * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::create): (WebCore::RenderTheme::themeForPage): * rendering/RenderThemeSafari.h: (WebCore::RenderThemeWin::create): (WebCore::RenderTheme::themeForPage): 2009-06-17 Gavin Barraclough <barraclough@apple.com> <rdar://problem/6974175> ASSERT in JITStubs.cpp at appsaccess.apple.com JSDOMWindowCustom was using PropertySlot::putValue, however this interface appears to be fundaementally incorrect - PropertySlots are only used to get values, all puts use PutPropertySlot. However PutPropertySlot cannot be used in the fashion desired here - it only reports the caching type of a write that has been performed. (This caused a bug where the put should have triggered a transition, and failed to do so.) Removing the faulty case from the optimization leads to a ~0.5% progression on in-browser SunSpider (presumably the very first case was not being hit often, and the simplification here is beneficial). (WebCore::JSDOMWindow::put): 2009-06-17 David Levin <levin@chromium.org> Reviewed by NOBODY, layout tests fix. https://bugs.webkit.org/show_bug.cgi?id=26326 This reverts commit r44751. Once that change was checked scrollbars/scrollbar-orientation.html started crashing on Windows. (WebCore::Document::detach): * rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): * rendering/RenderScrollbar.h: 2009-06-16 Kevin Watters <kevinwatters@gmail.com> Reviewed by Kevin Ollivier. In ImageSource::setData, delete the old m_encoder before replacing it with a new one. https://bugs.webkit.org/show_bug.cgi?id=26458 * platform/graphics/wx/ImageSourceWx.cpp: (WebCore::ImageSource::setData): 2009-06-16 David Levin <levin@chromium.org> REGRESSION: When the main page (ScrollView) has a custom scrollbar, it crashes on destruction. https://bugs.webkit.org/show_bug.cgi?id=26326 Test: scrollbars/scrollbar-crash-on-refresh.html * dom/Document.cpp: (WebCore::Document::detach): Gives the FrameView a change to do any necessary cleanup on Document::detach() which is where the renderArena gets detroyed. (WebCore::FrameView::detachCustomScrollbars): Gets rid of any custom scrollbars (if the docment supplied them). (WebCore::Scrollbar::isCustomScrollbar): (WebCore::RenderObject::destroy): Removed the check for document()->frame(). If frame() is 0 in this code, then the call to animation() is also incorrect (since it does document()->frame()->animation()). * rendering/RenderScrollbar.h: (WebCore::RenderScrollbar::isCustomScrollbar): 2009-06-16 Brian Weinstein <bweinstein@apple.com> Reviewed by Adele Peterson. Fix of <rdar://6967547> Ctrl-C copies null value erasing text in clipboard in Safari. This patch kept the way events were firing as they were before, and Windows events are consistent with Mac. * editing/Editor.cpp: (WebCore::Editor::tryDHTMLCopy): Added check for canCopy() before clearing PasteBoard (WebCore::Editor::tryDHTMLCut): Added check for canCut() before clearing PasteBoard 2009-06-16 Antti Koivisto <antti@apple.com> Reviewed by Brady Eidson. <rdar://problem/6660037> CrashTracer: [USER] 46 crashes in Safari at com.apple.WebCore • WebCore::CachedCSSStyleSheet::addClient + 53 When revalidating a resource, calling addClient() on one client might cause another to get removed. - made CachedResource::addClient() non-virtual and added virtual didAddClient() - in CachedResource::switchClientsToRevalidatedResource() add all clients to the client set of the revalidated resource first - check if the client is still in the set before invoking didAddClient() for it No test case, I didn't manage to construct one. You need some combination of 304 revalidation, stylesheets that reference each other via @imports and reloading. * loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::didAddClient): * loader/CachedCSSStyleSheet.h: (WebCore::CachedFont::didAddClient): (WebCore::CachedImage::didAddClient): (WebCore::CachedResource::addClientToSet): (WebCore::CachedResource::switchClientsToRevalidatedResource): * loader/CachedScript.cpp: (WebCore::CachedScript::didAddClient): * loader/CachedScript.h: * loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::didAddClient): * loader/CachedXSLStyleSheet.h: 2009-06-16 Simon Fraser <simon.fraser@apple.com> No Review Fix code inside an #ifdef that draws the video framerate. (WebCore::MediaPlayerPrivate::paint): 2009-06-16 Jian Li <jianli@chromium.org> Reviewed by Dimitri Glazkov. Bug 26456: Hook up V8 bindings for Worker's importScripts functionality. https://bugs.webkit.org/show_bug.cgi?id=26456 * bindings/v8/custom/V8WorkerContextCustom.cpp: (WebCore::CALLBACK_FUNC_DECL): * bindings/v8/custom/V8WorkerCustom.cpp: Fixed missing exception code handling in Worker constructor for V8 bindings. (WebCore::CALLBACK_FUNC_DECL): 2009-06-16 Brent Fulgham <bfulgham@webkit.org> Reviewed by Maciej Stachowiak. Update of https://bugs.webkit.org/show_bug.cgi?id=26353. Provide an assignment operator to avoid improper reference counts on the Cairo font objects. This brings the Windows Cairo port in line with the GTK+ port. * platform/graphics/win/FontPlatformData.h: * platform/graphics/win/FontPlatformDataCairoWin.cpp: (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::operator=): 2009-06-16 Eric Carlson <eric.carlson@apple.com> Reviewed by Simon Fraser. Fix for <rdar://problem/6890126> Theme code should fetch the MediaControlElementType from the MediaControlInputElement, rather than computing it again (WebCore::HTMLMediaElement::percentLoaded): New, utility function for controller implementation. * html/HTMLMediaElement.h: * rendering/MediaControlElements.h: (WebCore::MediaControlInputElement::displayType): New, return m_displayType. * rendering/RenderMediaControls.cpp: (WebCore::RenderMediaControls::paintMediaControlsPart): Stop using MediaPlayer object, get button state from the button itself and get movie state from HTMLMediaElement. * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintMediaMuteButton): Get state from button instead of MediaPlayer. (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto. 2009-06-16 Jian Li <jianli@chromium.org> Reviewed by David Levin. Bug 26450: Rename values of enum RedirectOriginCheck to make them clearer. https://bugs.webkit.org/show_bug.cgi?id=26450 * loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::create): (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): (WebCore::DocumentThreadableLoader::willSendRequest): * loader/DocumentThreadableLoader.h: * loader/ThreadableLoader.cpp: (WebCore::ThreadableLoader::create): (WebCore::ThreadableLoader::loadResourceSynchronously): * loader/ThreadableLoader.h: * workers/Worker.cpp: (WebCore::Worker::Worker): * workers/WorkerContext.cpp: (WebCore::WorkerContext::importScripts): * loader/WorkerThreadableLoader.cpp: (WebCore::WorkerThreadableLoader::WorkerThreadableLoader): (WebCore::WorkerThreadableLoader::loadResourceSynchronously): (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader): * loader/WorkerThreadableLoader.h: (WebCore::WorkerThreadableLoader::create): * workers/WorkerScriptLoader.cpp: (WebCore::WorkerScriptLoader::loadSynchronously): (WebCore::WorkerScriptLoader::loadAsynchronously): * workers/WorkerScriptLoader.h: (WebCore::WorkerContext::importScripts): * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::loadRequestAsynchronously): 2009-06-16 Tony Chang <tony@chromium.org> Reviewed by Darin Fisher. Fix a UMR in WebCore::BitStack by initializing new memory to 0. https://bugs.webkit.org/show_bug.cgi?id=26449 No new tests, covered by purify. * editing/TextIterator.cpp: (WebCore::BitStack::push): 2009-06-16 Brent Fulgham <bfulgham@webkit.org> Reviewed by Xan Lopez. Test: fast/multicol/columns-shorthand-parsing.html Fixes https://bugs.webkit.org/show_bug.cgi?id=26453. Null Cairo contextwill crash Windows Cairo build. * platform/graphics/win/GraphicsContextCairoWin.cpp: (WebCore::GraphicsContextPlatformPrivate::syncContext): Add a check for null context before attempting to retrieve the Cairo surface. 2009-06-16 Peter Kasting <pkasting@google.com> Reviewed by Xan Lopez. https://bugs.webkit.org/show_bug.cgi?id=26447 Fix animated GIF breakage in Cairo/wx ports. * platform/image-decoders/cairo/ImageDecoderCairo.cpp: (WebCore::RGBA32Buffer::copyBitmapData): (WebCore::RGBA32Buffer::operator=): * platform/image-decoders/wx/ImageDecoderWx.cpp: (WebCore::RGBA32Buffer::copyBitmapData): (WebCore::RGBA32Buffer::operator=): 2009-06-16 Pierre d'Herbemont <pdherbemont@apple.com> Reviewed by John Sullivan <rdar://problem/6937882> Tweak "time remaining" and "time elapsed" fields in the overlay video controller. * css/mediaControlsQT.css: 2009-06-16 Jian Li <jianli@chromium.org> Reviewed by Adam Barth and David Levin. Bug 26146: Change to use ThreadableLoader to load the worker script in order to check URL origin for redirection. https://bugs.webkit.org/show_bug.cgi?id=26146 Test: http/tests/workers/worker-redirect.html * workers/Worker.cpp: (WebCore::Worker::Worker): (WebCore::Worker::notifyFinished): * workers/Worker.h: * workers/WorkerContext.cpp: (WebCore::WorkerContext::importScripts): * workers/WorkerImportScriptsClient.cpp: Removed. * workers/WorkerImportScriptsClient.h: Removed. * workers/WorkerScriptLoader.cpp: Renamed from workers/WorkerImportScriptsClient.cpp. This to make it more generic so worker script loading could use it. (WebCore::WorkerScriptLoader::loadSynchronously): (WebCore::WorkerScriptLoader::loadAsynchronously): (WebCore::WorkerScriptLoader::didFinishLoading): (WebCore::WorkerScriptLoader::didFail): (WebCore::WorkerScriptLoader::didFailRedirectCheck): (WebCore::WorkerScriptLoader::didReceiveAuthenticationCancellation): (WebCore::WorkerScriptLoader::notifyFinished): * workers/WorkerScriptLoader.h: Renamed from workers/WorkerImportScriptsClient.h. This to make it more generic so worker script loading could use it. * workers/WorkerScriptLoaderClient.h: Added. 2009-06-16 Brent Fulgham <bfulgham@gmail.com> Use consistent GUID comparison functions. https://bugs.webkit.org/show_bug.cgi?id=26427 * platform/win/WCDataObject.cpp: (WebCore::WCDataObject::QueryInterface): 2009-06-16 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Fix compiler warning. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (webkit_accessible_class_init): 2009-06-16 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Remove dummy AtkStreamableContent implementation. It's completely empty, we'll add it back (and conditionally instead of unconditionally) when it does something. * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (GetAtkInterfaceTypeFromWAIType): (getInterfaceMaskFromObject): == Rolled over to ChangeLog-2009-06-16 == ++ b/WebKit/ChangeLog 2009-06-08 Dan Bernstein <mitz@apple.com> Rubber-stamped by Mark Rowe. - updated the project after giving Objective-C++ the .mm extension * WebKit.xcodeproj/project.pbxproj: ++ b/WebKit/gtk/ChangeLog 2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by Gustavo Noronha and Xan Lopez. [Gtk] Implement DRT XSS auditor support https://bugs.webkit.org/show_bug.cgi?id=26571 Add a setting "enable-xss-auditor" to enable this feature. * webkit/webkitwebsettings.cpp: (webkit_web_settings_class_init): (webkit_web_settings_set_property): (webkit_web_settings_get_property): (webkit_web_settings_copy): * webkit/webkitwebview.cpp: (webkit_web_view_update_settings): (webkit_web_view_settings_notify): 2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by Gustavo Noronha and Xan Lopez. webkit_web_back_forward_list_add_item() should add a ref for the history item https://bugs.webkit.org/show_bug.cgi?id=26517 Add a ref to the WebHistoryItem when it's added to the back forward list through webkit_web_back_forward_list_add_item. This keeps the history item alive and prevents pywebkitgtk from crashing * tests/testwebbackforwardlist.c: (test_webkit_web_history_item_lifetime): (test_webkit_web_back_forward_list_order): (test_webkit_web_back_forward_list_add_item): * webkit/webkitwebbackforwardlist.cpp: (webkit_web_back_forward_list_add_item): 2009-06-20 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Jan Alonzo. Initial test case for loading statuses. * tests/testloading.c: Added. (load_finished_cb): (status_changed_cb): (test_loading_status): (main): 2009-06-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Rubber-stamped by Jan Alonzo. Fix the ordering in which the new load status goes into the enum to avoid ABI breakage. * webkit/webkitwebframe.h: 2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Xan Lopez and Christian Dywan. Add a new load status to report that the first visually non-empty layout has been done. * WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout): * webkit/webkitwebframe.h: 2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Xan Lopez. Fix parameters of navigation-policy-decision-requested callback, to be correct in number and type * tests/testhttpbackend.c: (navigation_policy_decision_requested_cb): 2009-06-18 Christian Dywan <christian@twotoasts.de> Reviewed by Gustavo Noronha. * WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::loadDone): (WebKit::FrameLoaderClient::dispatchDidFinishLoad): (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad): (WebKit::FrameLoaderClient::dispatchDidFailLoad): Introduce the static function loadDone to emit "load-done" and update the status and update the relevent places. We missed some status notifications before. 2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Rubber-stamped by Xan Lopez. Be consistent in always using the term URI instead of URL in the documentation of WebKitWebView signals. * webkit/webkitwebview.cpp: (webkit_web_view_class_init): 2009-06-16 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Do not use g_assert_cmpint to test for NULL pointer, just g_assert. * tests/testnetworkrequest.c: (test_network_request_create_destroy): 2009-06-15 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. https://bugs.webkit.org/show_bug.cgi?id=26377 [GTK] Confusion about range of 'progress' property Range for the progress property is 0.0 .. 1.0, don't multiply it by 100 to make it a percentage. * webkit/webkitwebview.cpp: (webkit_web_view_get_progress): 2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Unreviewed. Add new symbols list for 1.1.10 release. * docs/webkitgtk-docs.sgml: 2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Rubber-stamped by Xan Lopez. Fix Since tags for the new uri and message properties. * webkit/webkitnetworkrequest.cpp: (webkit_network_request_class_init): 2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Unreviewed. Adding new documented API to the generated documentation. * docs/webkitgtk-sections.txt: 2009-06-15 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Update NEWS for 1.1.10 release. * NEWS: 2009-06-11 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Xan Lopez. Add a test to perform an actual download. * tests/testdownload.c: (navigation_policy_decision_requested_cb): (notify_status_cb): (download_requested_cb): (test_webkit_download_perform): (main): 2009-06-11 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Xan Lopez. Fix crash when downloading, caused by assuming SoupMessage would be there. This change factors the logic required to create a ResourceRequest from a WebKitNetworkRequest into a core() function, like we have for some other classes. * webkit/webkitdownload.cpp: (webkit_download_start): * webkit/webkitprivate.cpp: (WebKit::core): * webkit/webkitprivate.h: * webkit/webkitwebframe.cpp: (webkit_web_frame_load_request): 2009-06-10 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Xan Lopez. Make WebKitNetworkRequest a proper GObject, making URI and SoupMessage properties. Also adding unit tests for creation and destruction. * tests/testnetworkrequest.c: Added. (test_network_request_create_destroy): (test_network_request_properties): (main): * webkit/webkitnetworkrequest.cpp: (webkit_network_request_get_property): (webkit_network_request_set_property): (webkit_network_request_class_init): (webkit_network_request_init): (webkit_network_request_constructor): (webkit_network_request_new_with_core_request): (webkit_network_request_new): (webkit_network_request_set_uri): (webkit_network_request_get_uri): * webkit/webkitnetworkrequest.h: 2009-06-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Xan Lopez. News for 1.1.9. * NEWS: 2009-06-09 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by Gustavo Noronha. Clear the frame name before we run each tests so we don't get "someFloaString" or "3" in the target frame name. * webkit/webkitprivate.h: * webkit/webkitwebframe.cpp: (webkit_web_frame_clear_main_frame_name): 2009-06-10 Xan Lopez <xlopez@igalia.com> Reviewed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=25415 [GTK][ATK] Please implement support for get_text_at_offset Update test for new implementation (it fixes two bugs and adds actual implementations for LINE boundaries). * tests/testatk.c: (test_webkit_atk_get_text_at_offset): 2009-06-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> Reviewed by Xan Lopez. https://bugs.webkit.org/show_bug.cgi?id=26104 [GTK] Make NetworkRequest a proper GObject and expose SoupMessage Refactor how SoupMessage is handled, so that our ResourceRequest object doesn't have to store it as a member, which complicates managing ResourceRequest's lifetime. * tests/testhttpbackend.c: (navigation_policy_decision_requested_cb): (test_soup_message_lifetime): * webkit/webkitnetworkrequest.cpp: (WTF::SoupMessage): (webkit_network_request_new_with_core_request): 2009-06-08 Gustavo Noronha Silva <gns@gnome.org> Reviewed by Jan Alonzo. https://bugs.webkit.org/show_bug.cgi?id=26240 [GTK] Try again button loses query strings Only trigger reload, when try again is clicked, this way we do not lose the query strings, like we did when also triggering a form submission. * resources/error.html: ++ b/WebKit/mac/ChangeLog 2009-06-23 Brady Eidson <beidson@apple.com> Reviewed by Darin Adler. <rdar://problem/6950660> REGRESSION: iSale 5.5.3 crashes after I click a template to load Due to some subtle WebKit changes - presumably some delegate callback behavior - a latent bug in iSale was uncovered where they aren't properly retaining their FrameLoadDelegate, and we ended up calling back to a dealloc'ed object. * WebView/WebView.mm: (-[WebView _needsAdobeFrameReloadingQuirk]): Use more intelligent C++-style initialization. (-[WebView _needsKeyboardEventDisambiguationQuirks]): Ditto. (-[WebView _needsFrameLoadDelegateRetainQuirk]): YES for iSale versions under 5.6 (-[WebView dealloc]): Release the delegate if the quirk is in effect. (-[WebView setFrameLoadDelegate:]): Retain the new delegate if the quirk is in effect. 2009-06-23 Anders Carlsson <andersca@apple.com> Reviewed by Darin Adler. - Fix <rdar://problem/6965672> Defer calls to WKPCInvalidateRect, so we don't try to invalidate while waiting for a reply, since that is too early. * Plugins/Hosted/NetscapePluginHostProxy.h: (WebKit::NetscapePluginHostProxy::isProcessingRequests): * Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): (WebKit::NetscapePluginHostProxy::processRequests): (WKPCInvalidateRect): 2009-06-22 Timothy Hatcher <timothy@apple.com> Add Mail on Tiger and Leopard to the list of applications that need the WebView init thread workaround. <rdar://problem/6929524> Console shows WebKit Threading Violations from Mail Reviewed by Anders Carlsson. * WebView/WebView.mm: (clientNeedsWebViewInitThreadWorkaround): Return true for com.apple.Mail. 2009-06-22 Dan Bernstein <mitz@apple.com> Reviewed by Anders Carlsson. - speculative fix for <rdar://problem/6889082> Crash at -[WebHTMLView(WebPrivate) _updateMouseoverWithEvent:] The crash seems to happen because lastHitView points to a deleted object. Since -close calls -_clearLastHitViewIfSelf, I speculate that lastHitView has been set to an already-closed view. * WebView/WebHTMLView.mm: (-[WebHTMLView hitTest:]): Return nil if the view is closed. 2009-06-22 Alexey Proskuryakov <ap@webkit.org> Reviewed by John Sullivan. <rdar://problem/6956606> REGRESSION (S4Beta -> Final): After the password is input, Japanese can't be input. * WebView/WebHTMLView.mm: (-[WebHTMLView _updateSelectionForInputManager]): Removed an unnecessary check - the function has an early return for null frame. 2009-06-22 Dan Bernstein <mitz@apple.com> Reviewed by Dave Hyatt. - fix <rdar://problem/6990938> REGRESSION (r42787): After showing and hiding the Find banner, the WebHTMLView's height is not restored * WebView/WebFrameView.mm: (-[WebFrameView setFrameSize:]): Mark the FrameView for layout when the WebFrameView's size changes. * WebView/WebView.mm: (-[WebView setFrameSize:]): Left the resize logic here, but only for the single view model. 2009-06-20 Darin Adler <darin@apple.com> Reviewed by Sam Weinig. <rdar://problem/6964221> Need more processing of pluginspage. * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily. 2009-06-18 Adam Barth <abarth@webkit.org> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26199 Added preference to enable the XSSAuditor. * WebView/WebPreferenceKeysPrivate.h: * WebView/WebPreferences.mm: (+[WebPreferences initialize]): (-[WebPreferences isXSSAuditorEnabled]): (-[WebPreferences setXSSAuditorEnabled:]): * WebView/WebPreferencesPrivate.h: * WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): 2009-06-18 Anders Carlsson <andersca@apple.com> Reviewed by Sam Weinig. <rdar://problem/6926859> NPN_ConvertPoint doesn't give the right value when converting to/from NPCoordinateSpaceFlippedScreen When inverting Y, use the height of the first screen instead of the screen the window is on. * Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::windowFrameChanged): (WebKit::NetscapePluginInstanceProxy::mouseEvent): * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]): 2009-06-16 Simon Fraser <simon.fraser@apple.com> Reviewed by Dan Bernstein <rdar://problem/6976766> Control-click on pages with accelerated compositing content does not work. Part deux. #ifdef the use of _private->layerHostingView with USE(ACCELERATED_COMPOSITING) * WebView/WebHTMLView.mm: (-[WebHTMLView hitTest:]): 2009-06-16 Simon Fraser <simon.fraser@apple.com> Reviewed by Dan Bernstein <rdar://problem/6976766> Control-click on pages with accelerated compositing content does not work. Remove the WebLayerHostingView subclass of NSView, with its attempts to forward events to the WebHTMLView, and just fix -[WebHTMLView hitTest:] to ignore the layerHostingView. * WebView/WebHTMLView.mm: (-[WebHTMLView hitTest:]): (-[WebHTMLView attachRootLayer:]): 2009-06-15 Simon Fraser <simon.fraser@apple.com> Reviewed by Mark Rowe. <rdar://problem/6974857> Define ENABLE_3D_RENDERING when building on 10.6, and move ENABLE_3D_RENDERING switch from config.h to wtf/Platform.h. * Configurations/FeatureDefines.xcconfig: * WebKitPrefix.h: 2009-06-15 Anders Carlsson <andersca@apple.com> Reviewed by Dan Bernstein. <rdar://problem/6967569> CrashTracer: 15 crashes in Safari at com.apple.WebKit • WebKit::NetscapePluginHostManager::didCreateWindow + 85 Make sure to remove the entry from the plug-in host map so we won't end up with an entry that has a null value. * Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::hostForPackage): 2009-06-15 Dan Bernstein <mitz@apple.com> Reviewed by Tim Hatcher. - make the source code font in the Web Inspector match Mac defaults * WebCoreSupport/WebInspectorClient.mm: (-[WebInspectorWindowController init]): Set the default monospace font to 11px Menlo, except on Leopard and Tiger where it is 10px Monaco. 2009-06-09 Justin Garcia <justin.garcia@apple.com> Reviewed by Eric Seidel. Landed by Adam Barth. https://bugs.webkit.org/show_bug.cgi?id=26281 REGRESSION: Copying from TextEdit/OmniGraffle and pasting into editable region loses images Prefer RTFD (RTF with inline images) over RTF. In http://trac.webkit.org/changeset/19745 I accidently reversed their order. * WebView/WebHTMLView.mm: (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): 2009-06-13 Adam Barth <abarth@webkit.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=24492 Move registerURLSchemeAsLocal from FrameLoader to SecurityOrigin * WebView/WebView.mm: (+[WebView registerURLSchemeAsLocal:]): 2009-06-12 Peter Kasting <pkasting@google.com> Reviewed by Eric Seidel. * ChangeLog-2007-10-14: Change pseudonym "Don Gibson" to me (was used while Google Chrome was not public); update my email address. 2009-06-08 Dan Bernstein <mitz@apple.com> Rubber-stamped by Mark Rowe. - gave Objective-C++ files the .mm extension * Carbon/HIWebView.m: Removed. * Carbon/HIWebView.mm: Copied from WebKit/mac/Carbon/HIWebView.m. * Misc/WebKitNSStringExtras.m: Removed. * Misc/WebKitNSStringExtras.mm: Copied from WebKit/mac/Misc/WebKitNSStringExtras.m. * Misc/WebStringTruncator.m: Removed. * Misc/WebStringTruncator.mm: Copied from WebKit/mac/Misc/WebStringTruncator.m. * WebInspector/WebNodeHighlight.m: Removed. * WebInspector/WebNodeHighlight.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlight.m. * WebInspector/WebNodeHighlightView.m: Removed. * WebInspector/WebNodeHighlightView.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlightView.m. * WebView/WebDynamicScrollBarsView.m: Removed. * WebView/WebDynamicScrollBarsView.mm: Copied from WebKit/mac/WebView/WebDynamicScrollBarsView.m. ++ b/WebKit/qt/ChangeLog 2009-06-19 Daniel <qt-info@nokia.com> Reviewed by Simon Hausmann. Remove warnings for QString() constructions from const char * By explicitly wrapping it with QLatin1String() / QLatin1Char() * Api/qwebelement.cpp: (QWebElement::classes): Use QLatin1String. (QWebElement::addClass): Ditto. (QWebElement::removeClass): Ditto. (QWebElement::toggleClass): Ditto. 2009-06-18 Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed by Simon Hausmann. Fixed MinGW compilation. * Api/qwebelement.cpp: (QWebElement::evaluateScript): 2009-06-18 Markus Goetz <Markus.Goetz@nokia.com> Reviewed by Simon Hausman. Clarify in docs how to compile with debug information. * docs/qtwebkit.qdoc: 2009-06-17 Markus Goetz <Markus.Goetz@nokia.com> Reviewed by Simon Hausmann. QWebPage: Don't call supportsSsl() This stops QWebPage from loading the OpenSSL libs, certificates etc. when they are not needed for the non-HTTPS case. Loading the SSL libraries can be a very slow operation. * Api/qwebpage.cpp: (QWebPage::userAgentForUrl): 2009-06-15 Benjamin C Meyer <benjamin.meyer@torchmobile.com> Reviewed by Adam Treat. Support the back/forward/stop/refresh multimedia keys and accept the event when handling backspace and shift backspace as we should. * Api/qwebpage.cpp: (QWebPagePrivate::keyPressEvent): 2009-06-15 Andre Pedralho <andre.pedralho@openbossa.org> Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=26351 Remove bool QWebHitTestResult::isScrollBar() const and make sure a null QWebHitTestResult is returned instead. * Api/qwebframe.cpp: (QWebFrame::hitTestContent): * Api/qwebframe.h: * Api/qwebpage.cpp: (QWebPage::updatePositionDependentActions): 2009-06-15 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Adam Treat. Fix the logic for disabling the fixed layout feature, when an invalid QSize is set. * Api/qwebpage.cpp: (QWebPage::setFixedContentsSize): 2009-06-13 Adam Barth <abarth@webkit.org> Reviewed by Darin Fisher. https://bugs.webkit.org/show_bug.cgi?id=24492 Move registerURLSchemeAsLocal from FrameLoader to SecurityOrigin. * Api/qwebpage.cpp: (QWebPage::acceptNavigationRequest): Rubber-stamped by Simon Hausmann. 2009-06-09 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Renamed QWebSettings::AllowUniversalAccessFromFileUrls to LocalContentCanAccessRemoteUrls, as discussed in the API review. * Api/qwebsettings.cpp: (QWebSettingsPrivate::apply): (QWebSettings::QWebSettings): * Api/qwebsettings.h: 2009-06-09 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Merged useFixedLayout property with fixedLayoutSize and renamed the latter to fixedContentsSize. * Api/qwebpage.cpp: (QWebPage::fixedContentsSize): (QWebPage::setFixedContentsSize): * Api/qwebpage.h: * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2009-06-09 Simon Hausmann <simon.hausmann@nokia.com> Reviewed by Ariya Hidayat. Renamed QWebHitTestResult::linkTarget to linkElement() and made it return a QWebElement. The link target itself is always the target DOM attribute. * Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): (QWebHitTestResult::linkElement): * Api/qwebframe.h: * Api/qwebframe_p.h: * tests/qwebframe/tst_qwebframe.cpp: ++ b/WebKit/win/ChangeLog 2009-06-23 Anders Carlsson <andersca@apple.com> WebKit side of <rdar://problem/6946094>. * Interfaces/IWebUIDelegate.idl: Add a newPasteboard out parameter to willPerformDragSourceAction. (WebDragClient::willPerformDragSourceAction): Implement this. If the client returns a new pasteboard, use it for the drag. * WebCoreSupport/WebInspectorDelegate.h: (WebInspectorDelegate::willPerformDragSourceAction): Add the new parameter. 2009-06-20 Darin Adler <darin@apple.com> <rdar://problem/6964221> Need more processing of pluginspage. (WebFrameLoaderClient::createPlugin): Check protocolInHTTPFamily. 2009-06-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> https://bugs.webkit.org/show_bug.cgi?id=26494 Bug 26494: RenderTheme::themeForPage reads from Settings before it has been initialized by WebKit Get the shouldPaintNativeControls preference and update the settings before initializing the page, as the page depends on it after the themeForPage change. 2009-06-19 Brian Weinstein <bweinstein@apple.com> https://bugs.webkit.org/show_bug.cgi?id=26488 No Support for Single Finger or Two Finger Panning in Windows 7 Added the code necessary for single finger and two-finger panning with window bounce. We now register for WM_GESTURENOTIFY and WM_GESTURE messages, and interpret the panning command. Also, added WindowsTouch.h which contains structs and #defines from the Windows 7 SDK. (WebView::gestureNotify): Checks if we are in a pannable region - IE: Not in the scrollbar (WebView::gesture): Handles the Panning gesture, creating the WheelEvent (WebViewWndProc): Added cases for WM_GESTURE and WM_GESTURENOTIFY * WindowsTouch.h: Added. 2009-06-18 Adam Barth <abarth@webkit.org> Reviewed by Sam Weinig. https://bugs.webkit.org/show_bug.cgi?id=26199 Added preference to enable the XSSAuditor. (WebPreferences::isXSSAuditorEnabled): (WebPreferences::setXSSAuditorEnabled): 2009-06-18 Brent Fulgham <bfulgham@gmail.com> Reviewed by Dave Levin. Remove some boilerplate using the BitmapInfo struct. https://bugs.webkit.org/show_bug.cgi?id=26425 (WebFrame::spoolPages): (createDIB): (WebNodeHighlight::update): 2009-06-17 Steve Falkenburg <sfalken@apple.com> Consolidate WebKit COM interfaces. Moved IID from the highest numbered COM interface to the first interface and combined all methods. Numbered interfaces can be combined since the latest shipping Safari 4 supports the latest interfaces. * WebCoreSupport/WebChromeClient.cpp: * WebCoreSupport/WebChromeClient.h: * WebCoreSupport/WebContextMenuClient.cpp: * WebCoreSupport/WebFrameLoaderClient.cpp: * WebCoreSupport/WebInspectorDelegate.h: 2009-06-16 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> Create a different RenderTheme per page, so that RenderTheme has access to page specific theming. This is needed for the Qt port, as Qt supports setting the theme (style) per widget. This change was suggested and discussed with Dave Hyatt. More detailed: 1) Create a theme per page or one global one, depending on the needs of the platform. 2) Add an accesser to the theme from RenderObject. 3) Change all uses of the theming to access the theme through RenderObject, using the global default theme as fallback, when the document of RenderObject has no page. When we don't have access to a RenderObject, use the default theme. 4) Modify all RenderTheme platform implementations to work with the above changes, still creating only one global theme. (WebViewWndProc): Get the theme from the associated page. 2009-06-16 Brian Weinstein <bweinstein@apple.com> Switch Control+Mousewheel Zooming definitions to match other browsers on Windows. Control+Mousewheel-Down now zooms out, Control+Mousewheel-Up now zooms in. https://bugs.webkit.org/show_bug.cgi?id=25875. <rdar://problem/6903976> (WebView::mouseWheel): 2009-06-16 Brent Fulgham <bfulgham@gmail.com> Use consistent Windows GUID Comparison Functions. https://bugs.webkit.org/show_bug.cgi?id=26427. (EnumTextMatches::QueryInterface): == Rolled over to ChangeLog-2009-06-16 == ++ b/WebKit/wx/ChangeLog 2009-06-09 Kevin Ollivier <kevino@theolliviers.com> wx build fix, adding JSCore/assembler to the list of include dirs. * presets/wxwebkit.bkl: ++ b/WebKitExamplePlugins/ChangeLog 2009-06-15 Anders Carlsson <andersca@apple.com> Reviewed by Kevin Decker. Add Core Animation movie plug-in example. * NetscapeCoreAnimationMoviePlugin: Added. * NetscapeCoreAnimationMoviePlugin/English.lproj: Added. * NetscapeCoreAnimationMoviePlugin/English.lproj/InfoPlist.strings: Added. * NetscapeCoreAnimationMoviePlugin/Info.plist: Added. * NetscapeCoreAnimationMoviePlugin/MovieControllerLayer.h: Added. * NetscapeCoreAnimationMoviePlugin/MovieControllerLayer.m: Added. (createImageNamed): (-[MovieControllerLayer init]): (-[MovieControllerLayer dealloc]): (-[MovieControllerLayer _playPauseButtonRect]): (-[MovieControllerLayer _sliderRect]): (-[MovieControllerLayer _sliderThumbRect]): (-[MovieControllerLayer _innerSliderRect]): (-[MovieControllerLayer _drawPlayPauseButtonInContext:]): (-[MovieControllerLayer _drawSliderInContext:]): (-[MovieControllerLayer drawInContext:]): (-[MovieControllerLayer _currentTime]): (-[MovieControllerLayer _duration]): (-[MovieControllerLayer _isPlaying]): (-[MovieControllerLayer _updateTime:]): (-[MovieControllerLayer _rateDidChange:]): (-[MovieControllerLayer _timeDidChange:]): (-[MovieControllerLayer actionForKey:]): (-[MovieControllerLayer setMovie:]): (-[MovieControllerLayer _setNewTimeForThumbCenterX:]): (-[MovieControllerLayer handleMouseDown:]): (-[MovieControllerLayer handleMouseUp:]): (-[MovieControllerLayer handleMouseDragged:]): * NetscapeCoreAnimationMoviePlugin/NetscapeCoreAnimationMoviePlugin.xcodeproj: Added. * NetscapeCoreAnimationMoviePlugin/NetscapeCoreAnimationMoviePlugin.xcodeproj/project.pbxproj: Added. * NetscapeCoreAnimationMoviePlugin/Pause.tiff: Added. * NetscapeCoreAnimationMoviePlugin/Play.tiff: Added. * NetscapeCoreAnimationMoviePlugin/SliderTrackCenter.tiff: Added. * NetscapeCoreAnimationMoviePlugin/SliderTrackLeft.tiff: Added. * NetscapeCoreAnimationMoviePlugin/SliderTrackRight.tiff: Added. * NetscapeCoreAnimationMoviePlugin/Thumb.tiff: Added. * NetscapeCoreAnimationMoviePlugin/main.m: Added. (NP_Initialize): (NP_GetEntryPoints): (NP_Shutdown): (NPP_New): (NPP_Destroy): (NPP_SetWindow): (NPP_NewStream): (NPP_DestroyStream): (NPP_WriteReady): (NPP_Write): (NPP_StreamAsFile): (NPP_Print): (handleMouseDown): (togglePlayPause): (handleMouseUp): (handleMouseDragged): (handleMouseEntered): (handleMouseExited): (handleKeyDown): (handleScrollEvent): (NPP_HandleEvent): (NPP_URLNotify): (NPP_GetValue): (NPP_SetValue): * NetscapeCoreAnimationMoviePlugin/test.html: Added. ++ b/WebKitLibraries/ChangeLog 2009-06-16 Simon Fraser <simon.fraser@apple.com> Rubber-stamped by Anders Carlsson. Update WebKitSystemInterface for <rdar://problem/6937882>. * libWebKitSystemInterfaceLeopard.a: * libWebKitSystemInterfaceSnowLeopard.a: * libWebKitSystemInterfaceTiger.a: ++ b/WebKitSite/ChangeLog 2009-06-17 Sam Weinig <sam@webkit.org> Reviewed by Mark Rowe. * security/index.html: Fix some typos. 2009-06-17 Sam Weinig <sam@webkit.org> Reviewed by Mark Rowe. Move security policy to security/index.html so that webkit.org/security/ works. * nav.inc: * security/index.html: Copied from security/security-policy.html. * security/security-policy.html: Removed. 2009-06-13 Sam Weinig <sam@webkit.org> Reviewed by Timothy Hatcher. Add WebKit Security Policy and member list of the WebKit Security Group. * nav.inc: * security: Added. * security/security-group-members.html: Added. * security/security-policy.html: Added. 2009-06-12 Brady Eidson <beidson@apple.com> Reviewed by Oliver Hunt Add a page indexing the various demo applications we have posted. * demos/index.html: Added. * nav.inc: Add a link to the demos page on the side bar * css/main.css: Add a style for date stamps based on the blog. * demos/calendar/index.html: Added to redirect to Calendar.html. I'm not moving Calendar.html to index.html as the Calendar.html url has already been published and we should keep it working. Move the drosera test code to /misc, as it is no longer a meaningful demo: * demos/drosera: Removed. * demos/drosera/demo.js: Removed. * demos/drosera/drosera.png: Removed. * demos/drosera/index.html: Removed. * misc/drosera: Copied from demos/drosera. Move the sticky notes example into /demos: * demos/sticky-notes: Added. * demos/sticky-notes/StickyNotes.manifest: Copied from misc/DatabaseExample.manifest. * demos/sticky-notes/deleteButton.png: Copied from misc/deleteButton.png. * demos/sticky-notes/deleteButtonPressed.png: Copied from misc/deleteButtonPressed.png. * demos/sticky-notes/index.html: Copied from misc/DatabaseExample.html. * misc/DatabaseExample.html: Changed to redirect to demos/sticky-notes/index.html. I'm not removing it altogether as the misc/DatabaseExample.html url has already been published and we should keep it working. * misc/DatabaseExample.manifest: Removed. * misc/deleteButton.png: Removed. * misc/deleteButtonPressed.png: Removed. 2009-06-10 Brent Fulgham <bfulgham@webkit.org> Reviewed by Eric Seidel. Fixes https://bugs.webkit.org/show_bug.cgi?id=26309. Update a few items in the testing language to: (1) Reflect results are now generated with Leopard (not Tiger) (2) Explain how to generate pixel-level layout tests. * quality/testing.html: * quality/testwriting.html: ++ b/WebKitSite/specs/CSSVisualEffects/ChangeLog 2009-06-16 Chris Marrin <cmarrin@apple.com> Added spec directories from http://dev.w3.org/cvsweb/csswg/ which is where they will live. We will edit them here and then push them to the W3C cvs server. css3-2d-transforms/: css3-3d-transforms/: css3-animations/: css3-transitions/: 2009-06-16 Chris Marrin <cmarrin@apple.com> Removed all the specs because they are stale index.html: Redirected to point at w3c site ++ b/WebKitTools/ChangeLog 2009-06-24 Eric Seidel <eric@webkit.org> Spell Maciej's name right and add Brady Eidson. * Scripts/modules/bugzilla.py: 2009-06-23 Eric Seidel <eric@webkit.org> Reviewed by Dave Levin. Fix missing comment message during land-patches and SVN.commit_with_message respecting --dry-run https://bugs.webkit.org/show_bug.cgi?id=26669 * Scripts/bugzilla-tool: * Scripts/modules/scm.py: 2009-06-23 Takeshi Yoshino <tyoshino@google.com> Bug 26537: Builds from command-line fail if custom build product directory is set and ~/Library/Preferences/xcodebuild.plist exists https://bugs.webkit.org/show_bug.cgi?id=26537 Let determineBaseProductDir subroutine remove ~/Library/Preferences/xcodebuild.plist. It can prevent xcodebuild from respecting global settings such as a custom build products directory (<rdar://problem/5585899>). 2009-06-23 Eric Seidel <eric@webkit.org> Reviewed by Dave Levin. Make SCM.run_command smarter, and make all previous os.system and subprocess.popen use SCM.run_command instead. https://bugs.webkit.org/show_bug.cgi?id=26666 This makes it easier to handle errors in a standard way throughout all the code. Since this new code raises by default when the exit_code != 0, we should prevent future problems of bugzilla-tool continuing after a git or svn command failed. * Scripts/modules/scm.py: 2009-06-23 Joe Mason <joe.mason@torchmobile.com> Reviewed by Adam Treat. https://bugs.webkit.org/show_bug.cgi?id=26664 * Scripts/prepare-ChangeLog: Added --git-index mode to list only the changes which are already staged in the index. Useful to create an entry for what you're about to commit while ignoring unstaged changes. 2009-06-23 Anders Carlsson <andersca@apple.com> Update for WebKit changes. * DumpRenderTree/win/UIDelegate.h: (UIDelegate::willPerformDragSourceAction): 2009-06-23 Eric Seidel <eric@webkit.org> * Scripts/modules/scm.py: Fix commit_with_message to return the commit output. 2009-06-23 Eric Seidel <eric@webkit.org> * Scripts/modules/scm.py: Fix error seen when commiting r44979. 2009-06-18 Eric Seidel <eric@webkit.org> Reviewed by Dave Levin. WebKit needs a script to interact with bugzilla and automate parts of the patch posting and commit processes. https://bugs.webkit.org/show_bug.cgi?id=26283 This is really a first-draft tool. It's to the point where it's useful to more people than just me now though. Git support works. SVN support is written, but mostly untested. This tool requires BeautifulSoup and mechanize python modules to run: sudo easy_install BeautifulSoup sudo easy_install mechanize More important than the tool itself are the Bugzilla, Git and SVN class abstractions which I hope will allow easy writing of future tools. The tool currently implements 10 commands, described below. Helpers for scripting dealing with the commit queue: bugs-to-commit Bugs in the commit queue patches-to-commit Patches attached to bugs in the commit queue Dealing with bugzilla: reviewed-patches BUGID r+'d patches on a bug apply-patches BUGID Applies all patches on a bug to the local working directory without committing. land-and-update BUGID Lands the current working directory diff and updates the bug. land-patches [options] BUGID Lands all patches on a bug optionally testing them first obsolete-attachments BUGID Marks all attachments on a bug as obsolete. commit-message Prints a commit message suitable for the uncommitted changes. These effectively replace git-send-bugzilla: post-diff BUGID Attaches the current working directory diff to a bug as a patch file. post-commits BUGID COMMITISH Attaches a range of local commits to a bug as patch files. post-diff works for SVN and Git, post-commits only works for SCMs with local-commit support (like Git) land-* commands in a Git environment only work with simple patches due to svn-apply bugs: https://bugs.webkit.org/show_bug.cgi?id=26299 https://bugs.webkit.org/show_bug.cgi?id=26300 This script follows python style (similar to how for Obj-C we follow AppKit style) http://www.python.org/doc/essays/styleguide.html The Python community has a strong style culture and the WebKit style guide is silent re: Python. I've filed a bug to update the WebKit style guide to mention python: https://bugs.webkit.org/show_bug.cgi?id=26524 * Scripts/bugzilla-tool: Added. 2009-06-22 Steve Falkenburg <sfalken@apple.com> Remove errant line of code mistakenly checked in. 2009-06-22 Steve Falkenburg <sfalken@apple.com> Pass correct value to setShouldPaintNativeControls. Rubber stamped by Mark Rowe. 2009-06-22 Steve Falkenburg <sfalken@apple.com> Fix last DumpRenderTree change to correctly set preferences flag without crashing. 2009-06-21 Steve Falkenburg <sfalken@apple.com> Set up global native controls flag before creating the first WebView. 2009-06-21 Mark Rowe <mrowe@apple.com> Set a sensible user agent string for the HTTP requests that Sparkle makes (checking for and downloading updates). * WebKitLauncher/WebKitNightlyEnablerSparkle.m: (userAgentStringForSparkle): (initializeSparkle): 2009-06-21 Mark Rowe <mrowe@apple.com> Add a hook to the WebKit launcher application to allow a link on the nightly build start page to trigger an update via the built-in software update mechanism. * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj: * WebKitLauncher/WebKitLauncherURLProtocol.h: Added. * WebKitLauncher/WebKitLauncherURLProtocol.m: Added. (+[WebKitLauncherURLProtocol load]): (+[WebKitLauncherURLProtocol canInitWithRequest:]): Only allow use of the x-webkit-launcher scheme from .webkit.org subdomains. (+[WebKitLauncherURLProtocol canonicalRequestForRequest:]): (-[WebKitLauncherURLProtocol startLoading]): (-[WebKitLauncherURLProtocol stopLoading]): (-[WebKitLauncherURLProtocol handleIsWebKitLauncherAvailableJS]): Return a brief JavaScript snippet that can be used to programatically determine whether the x-webkit-launcher is available and working. (-[WebKitLauncherURLProtocol handleCheckForUpdates]): Trigger a software update on the main thread. (-[WebKitLauncherURLProtocol resourceNotFound]): Fail with a generic "File does not exist" error. 2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org> Reviewed by Gustavo Noronha and Xan Lopez. [Gtk] Implement DRT XSS auditor support https://bugs.webkit.org/show_bug.cgi?id=26571 (LayoutTestController::setXSSAuditorEnabled): 2009-06-19 Darin Adler <darin@apple.com> * Scripts/do-webcore-rename: More renaming ideas. 2009-06-15 Andre Pedralho <andre.pedralho@openbossa.org> Reviewed by Tor Arne Vestbø. Only pass --makeargs along if an argument is given. 2009-06-19 Adam Barth <abarth@webkit.org> Unreviewed attempt to fix Windows build. (LayoutTestController::setXSSAuditorEnabled): 2009-06-18 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26199 Add support for testing the XSSAuditor. (setXSSAuditorEnabledCallback): * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setXSSAuditorEnabled): (LayoutTestController::setXSSAuditorEnabled): (LayoutTestController::setXSSAuditorEnabled): (LayoutTestController::setPopupBlockingEnabled): * DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setXSSAuditorEnabled): 2009-06-18 Darin Adler <darin@apple.com> Rubber stamped by Mark Rowe. * DumpRenderTree/mac/DumpRenderTreeWindow.mm: (-[DumpRenderTreeWindow close]): Resolved crashes seen during regression tests. The close method can be called on a window that's already closed so we can't assert here. 2009-06-17 Steve Falkenburg <sfalken@apple.com> Updated for consolidated WebKit COM interfaces. * DumpRenderTree/win/FrameLoadDelegate.cpp: * DumpRenderTree/win/FrameLoadDelegate.h: * WinLauncher/WinLauncher.h: 2009-06-16 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26437 Make the commit-log-editor match the ambient line endings in commit messages. 2009-06-16 Xan Lopez <xlopez@igalia.com> Reviewed by Gustavo Noronha. Update GtkLauncher to recent API changes in the progress property, which now goes from 0.0 to 1.0. * GtkLauncher/main.c: 2009-06-16 Adam Barth <abarth@webkit.org> https://bugs.webkit.org/show_bug.cgi?id=26000 Teach prepare-ChangeLog to match the line ends that are already present in ChangeLog files. This helps folks whose use cygwin perl with CR LF line endings on Windows. Also, teach prepare-ChangeLog to normalize backslashes in paths. This helps folks who use Windows SVN prepare correct ChangeLogs. == Rolled over to ChangeLog-2009-06-16 == ++ b/WebKitTools/Scripts/prepare-ChangeLog sub normalizeLineEndings($$); sub normalizePath($); my $gitIndex = ""; "git-index" => \$gitIndex, print STDERR " --git-index Populate the ChangeLogs from the git index only\n"; die "--git-commit and --git-index are incompatible." if ($gitIndex && $gitCommit); # We want to match the ChangeLog's line endings in case it doesn't match # the native line endings for this version of perl. my $endl = "\n"; if ($old_change_log[0] =~ /(\r?\n)/g) { $endl = "$1"; } print CHANGE_LOG normalizeLineEndings("$date $name <$email_address>\n\n", $endl); print CHANGE_LOG normalizeLineEndings(" Reviewed by $reviewer.\n\n", $endl); print CHANGE_LOG normalizeLineEndings($description . "\n", $endl) if $description; print CHANGE_LOG normalizeLineEndings(testListForChangeLog(sort @addedRegressionTests), $endl); print CHANGE_LOG normalizeLineEndings(" WARNING: NO TEST CASES ADDED OR CHANGED\n\n", $endl); my $file_stem = normalizePath(substr $file, length $prefix); print CHANGE_LOG normalizeLineEndings(" * $file_stem:$function_lists{$file}\n", $endl);; print CHANGE_LOG normalizeLineEndings("\n", $endl), @old_change_log; return "--cached" if $gitIndex; return 0 if ($gitCommit || $gitIndex); # an existing commit or staged change cannot have conflicts sub normalizeLineEndings($$) { my ($string, $endl) = @_; $string =~ s/\r?\n/$endl/g; return $string; } sub normalizePath($) { my ($path) = @_; $path =~ s/\\/\//g; return $path; }
* Updated WebKit from /home/shausman/src/webkit/trunk to ↵Simon Hausmann2009-06-151-1079/+539
| | | | qtwebkit-4.6-snapshot-15062009 ( 65232bf00dc494ebfd978f998c88f58d18ecce1e )
* Updated WebKit from /home/shausman/src/webkit/trunk to origin/qtwebkit-4.5 ( ↵Simon Hausmann2009-04-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d5ea85e03f22fb6fb87275774a2c53031941017e ) Changes in WebKit since the last update: ++ b/JavaScriptCore/ChangeLog 2009-01-22 Oliver Hunt <oliver@apple.com> Reviewed by Geoff Garen. <rdar://problem/6516853> (r39682-r39736) JSFunFuzz: crash on "(function(){({ x2: x }), })()" <https://bugs.webkit.org/show_bug.cgi?id=23479> Automatic semicolon insertion was resulting in this being accepted in the initial nodeless parsing, but subsequent reparsing for code generation would fail, leading to a crash. The solution is to ensure that reparsing a function performs parsing in the same state as the initial parse. We do this by modifying the saved source ranges to include rather than exclude the opening and closing braces. * bytecode/CodeBlock.cpp: (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): add an assertion for successful recompile * parser/Lexer.h: (JSC::Lexer::sourceCode): include rather than exclude braces. * parser/Nodes.h: (JSC::FunctionBodyNode::toSourceString): No need to append braces anymore. 2009-01-21 Alexey Proskuryakov <ap@webkit.org> Suggested by Oliver Hunt. Reviewed by Oliver Hunt. https://bugs.webkit.org/show_bug.cgi?id=23456 Function argument names leak * parser/Nodes.cpp: (JSC::FunctionBodyNode::~FunctionBodyNode): Destruct parameter names. 2009-01-22 Beth Dakin <bdakin@apple.com> Reviewed by Sam Weinig. Fix for https://bugs.webkit.org/show_bug.cgi?id=23461 LayoutTests/ fast/js/numeric-conversion.html is broken, and corresponding <rdar://problem/6514842> The basic problem here is that parseInt(Infinity) should be NaN, but we were returning 0. NaN matches Safari 3.2.1 and Firefox. * runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncParseInt): 2009-01-13 Beth Dakin <bdakin@apple.com> Reviewed by Darin Adler and Oliver Hunt. <rdar://problem/6489314> REGRESSION: Business widget's front side fails to render correctly when flipping widget The problem here is that parseInt was parsing NaN as 0. This patch corrects that by parsing NaN as NaN. This matches our old behavior and Firefox. * runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncParseInt): ++ b/LayoutTests/ChangeLog 2009-01-22 Oliver Hunt <oliver@apple.com> Reviewed by Geoff Garen. <rdar://problem/6516853> (r39682-r39736) JSFunFuzz: crash on "(function(){({ x2: x }), })()" <https://bugs.webkit.org/show_bug.cgi?id=23479> Add additional reparsing tests. * fast/js/reparsing-semicolon-insertion-expected.txt: * fast/js/resources/reparsing-semicolon-insertion.js: (commaParenTest): (commaParenThrowTest): 2009-01-22 Beth Dakin <bdakin@apple.com> Reviewed by Sam Weinig. Fix for https://bugs.webkit.org/show_bug.cgi?id=23461 LayoutTests/ fast/js/numeric-conversion.html is broken, and corresponding <rdar://problem/6514842> The basic problem here is that parseInt(Infinity) should be NaN, but we were returning 0. NaN matches Safari 3.2.1 and Firefox. * fast/js/numeric-conversion-expected.txt: * fast/js/resources/numeric-conversion.js: 2009-01-13 Beth Dakin <bdakin@apple.com> Reviewed by Darin Adler and Oliver Hunt. Updated test and results for <rdar://problem/6489314> REGRESSION: Business widget's front side fails to render correctly when flipping widget parseInt(NaN) should be NaN. * fast/js/numeric-conversion-expected.txt: * fast/js/resources/numeric-conversion.js: ++ b/WebCore/ChangeLog 2009-03-13 Adam Bergkvist <adam.bergkvist@ericsson.com> 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 <krit@webkit.org> 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 <lewing@novell.com> 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 <adam.treat@torchmobile.com> 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 <zack@kde.org> 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 <krit@webkit.org> 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 <adam.treat@torchmobile.com> 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 <adam.treat@torchmobile.com> 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): ++ b/WebKit/qt/ChangeLog 2009-03-02 Benjamin C Meyer <benjamin.meyer@torchmobile.com> Reviewed by George Staikos. https://bugs.webkit.org/show_bug.cgi?id=21230 On X11 match the behavior of Firefox and also copy the url to the clipboard selection when the action Copy Link Location is executed. * Api/qwebpage.cpp: (QWebPage::triggerAction):
* Long live Qt 4.5!Lars Knoll2009-03-231-0/+2721