Timeline


and

12/06/07:

23:27 Changeset [28514] by adachan@apple.com

Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
returning true when there's an error).

Reviewed by Steve.

  • platform/win/FileSystemWin.cpp: (WebCore::makeAllDirectories):
23:02 Changeset [28513] by ap@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=16091
JSCRE needs to import the PCRE test suite

We can use two files from PCRE test suite, as others either test for features not supported
in JS, or use internal debugging facilities of PCRE.

The files are checked in almost unmodified, I have only converted them to UTF-8 and removed two
huge test cases that were completely incompatible with JSC, and were polluting the output.

Many of the failures in results are just legitimate differences in behavior or possibly
problems with the test runner, but some may be genuine bugs and even regressions in JSC.

  • fast/regex: Added.
  • fast/regex/pcre-test-runner.js: Added.
  • fast/regex/test1-expected.txt: Added.
  • fast/regex/test1.html: Added.
  • fast/regex/test4-expected.txt: Added.
  • fast/regex/test4.html: Added.
  • fast/regex/testinput1: Added.
  • fast/regex/testinput4: Added.
  • fast/regex/testoutput1: Added.
  • fast/regex/testoutput4: Added.
22:17 Changeset [28512] by beidson@apple.com

Reviewed by Oliver's rubber stamp

Let's go ahead and call the correct UI Delegate method, shall we?

  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate
21:33 Changeset [28511] by kevino@webkit.org

Linux build fix - ensure that webcore is linked before jscore so that the linker will know which symbols it needs to link in. Also fix MSVC project file name typo for sample app.

19:59 Changeset [28510] by darin@apple.com
  • fix broken regression test
  • bindings/js/kjs_binding.cpp: (KJS::setDOMException): Oops, this was just supposed to be PERMISSION_DENIED.
19:18 Changeset [28509] by darin@apple.com

Reviewed by Sam Weinig.

  • WebCore.pro: Added ExceptionCode.cpp.
  • WebCore.vcproj/WebCore.vcproj: Added ExceptionCode.cpp.
  • WebCore.xcodeproj/project.pbxproj: Added ExceptionCode.cpp.
  • WebCoreSources.bkl: Added ExceptionCode.cpp.
  • bindings/js/kjs_binding.cpp: (KJS::setDOMException): Moved the code to decompose an ExceptionCode into ExceptionCode.h/cpp -- getExceptionCodeDescription. Also removed the many unneeded includes that were here. Had to keep one special case here, for SECURITY_ERR.
  • bindings/objc/ExceptionHandlers.mm: (WebCore::raiseDOMException): Changed to use the new getExceptionCodeDescription function so that this shares the exception name information that was previously only available to JavaScript.
  • dom/ExceptionCode.cpp: Copied from bindings/js/kjs_binding.cpp. (WebCore::getExceptionCodeDescription): Added some assertions, and made the function handle exception names in a slightly more robust way that is not subject to integer overflow. (Not a real world issue since we should never receive a bad exception code.)
  • dom/ExceptionCode.h: Added the ExceptionCodeDescription struct and the getExceptionCodeDescription function.
  • svg/SVGException.h: Added a missing #include and got rid of some comments. Some of the comments were mildly helpful, but others were incorrect. This now matches the other exception-related headers such as RangeException.h.
18:49 Changeset [28508] by beidson@apple.com

Reviewed by Darin

Fixed a glaring bug that would prevent a statement from getting run a second time

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute): Clear failure due to quota *before* we check the error and return early (WebCore::SQLStatement::clearFailureDueToQuota): Only clear the error if it was a quota error
18:10 Changeset [28507] by timothy@apple.com

Reviewed by Oliver Hunt.

Use keydown instead of keypress so keyIdentifier can be used.

  • page/inspector/ConsolePanel.js: Use keydown instead of keypress.
  • page/inspector/DatabasePanel.js: Ditto.
  • page/inspector/inspector.js: Ditto. Plus call removeEventListener before deleting windowLoaded.
18:05 Changeset [28506] by aroben@apple.com

Rename FontsTable.plist to FontsList.plist

Rubberstamped by Hyatt.

  • platform/graphics/win/FontDatabase.cpp:
18:00 Changeset [28505] by alice.liu@apple.com

Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab

Reviewed by Darin.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebView::shouldClose):
  • WebView.h:
17:51 Changeset [28504] by beidson@apple.com

Reviewed by Darin

Tweaked a comment and a few assertions from my last checkin

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute): (WebCore::SQLStatement::clearFailureDueToQuota): (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
17:04 Changeset [28503] by aroben@apple.com

Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision

WebKit/mac:

Remove some assertions we know can fire and replace them with a FIXME

Reviewed by Anders.

  • WebCoreSupport/WebFrameLoaderClient.mm:

WebKit/win:

Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision

It's possible for a second policy listener to be created while we're
waiting for a decision on the first policy listener. In this case we
would crash when the first policy listener had a decision made. Mac
WebKit already handles this by invalidating any existing policy
listener when creating a new one.

A test case is coming in a future commit.

Reviewed by Anders.

  • WebFrame.cpp: (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating any existing policy listener, and remove some assertions that we know can fire.
16:50 Changeset [28502] by beidson@apple.com

Reviewed by Darin

Finished hooking up UI Delegate for databases - Database operations will now enforce a size quota and
will ask the UI Delegate for more space when that quota is met

  • platform/sql/SQLiteDatabase.cpp: Add the new SQLResultFull constant
  • platform/sql/SQLiteDatabase.h: Ditto
  • storage/Database.cpp: (WebCore::Database::securityOriginData): Added this accessor, copying for thread safety (WebCore::Database::stringIdentifier): Ditto
  • storage/Database.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::SQLStatement): (WebCore::SQLStatement::execute): Change to return an enum that represents 3 states - success, error, and quota. If the result is quota, this statement expects that it might be run again, presumably after the user increases the quota (WebCore::SQLStatement::setFailureDueToQuota): Setup a quota failure, including a flag and the error (WebCore::SQLStatement::clearFailureDueToQuota): Clear a quota failure, for when the statement is rerun (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::SQLTransaction): (WebCore::SQLTransaction::performPendingCallback): Added an acceptable callback pointer (WebCore::SQLTransaction::openTransactionAndPreflight): Setup the quota in the database that will remain for this transaction. Note that in this patch, the quota being set is wrong - it makes sense to fix that in a follow up patch (WebCore::SQLTransaction::runStatements): Modified to add the ability to re-run a statement based on the UI delegate decision and whether the current statement was already run (WebCore::SQLTransaction::runCurrentStatement): Added another result condition - the Quota result - and handle it (WebCore::SQLTransaction::handleCurrentStatementError): Statements can now error-out from two places, so the code that handles a statement error was moved here (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Added - Consult the UI delegate for more quota, then reschedule the current statement on the database thread
  • storage/SQLTransaction.h:
15:32 Changeset [28501] by timothy@apple.com

Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
Only assert if the major version is zero, since zero is handled in the other cases.

  • WebView/WebView.mm: (callGestalt): Remove the ASSERT. (createMacOSXVersionString): ASSERT that major is not zero.
15:31 Changeset [28500] by sfalken@apple.com

<rdar://problem/5614257> Crash in timer / hashtable code due to uncaught exception


Don't use callback-based timers, since these cause Windows to eat Windows crashes
in code the timers call.


Windows appears to be defending against "shatter" attacks partially by setting
up a structured exception block while dispatching callback-based WM_TIMERs.


I verified this by adding a divide by zero into some timer callback code.
In the case where the timer was dispatched via a callback, the divide by zero
exception was silently handled and ignored, with execution continuing after
our call to DispatchMessage. When processed via the WNDPROC, no SEH
block was established by Windows, and our divide by zero generated a real
crash (which is what we wanted).


Windows handling our crashes for us led us to leave the timer data structures
in an invalid state so the next time a timer was set, we'd crash accessing an
invalid HashMap of timer data.


Reviewed by Hyatt.

  • platform/win/SharedTimerWin.cpp: (WebCore::TimerWindowWndProc): (WebCore::setSharedTimerFireTime):
14:36 Changeset [28499] by darin@apple.com

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string
  • WebView/WebView.mm: (callGestalt): Added. (createMacOSXVersionString): Added. (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string, right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4). (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.
14:11 Changeset [28498] by aroben@apple.com

Fix <rdar://5108390> Feed title is too low in blue banner

WebCore:

Fix <rdar://5108390> Feed title is too low in blue banner

Way back in r23069 we started applying the same font ascent hack that
Mac WebKit applies to Helvetica, Times, and Courier. We did this so
that those fonts would match the Mac metrics when we run the
regression tests. However, this hack was applying to Arial on Windows
when a site would specify the Helvetica font face because Windows will
alias the font names. Instead of removing the hack entirely, we
turn it off by default but provide some SPI so that DumpRenderTree can
turn it on.

Reviewed by Hyatt.

All tests pass.

  • platform/graphics/FontData.h: Add a new static method to turn on the hack on Windows only.
  • platform/graphics/win/FontDataWin.cpp: (WebCore::FontData::setShouldApplyMacAscentHack): Added. (WebCore::FontData::platformInit): Only perform the hack if shouldApplyMacAscentHack is true.

WebKit/win:

Add SPI so that DumpRenderTree can turn on the Mac font ascent hack

Reviewed by Hyatt.

  • Interfaces/IWebViewPrivate.idl: Added new method declaration.
  • WebView.cpp: (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to FontData.
  • WebView.h:

WebKitTools:

Explicitly turn on the Mac font ascent hack on Windows

This keeps our font metrics matching those from Mac.

Reviewed by Hyatt.

  • DumpRenderTree/win/DumpRenderTree.cpp: (main):
13:25 Changeset [28497] by mitz@apple.com
  • updated render tree results for r28483
  • svg/batik/text/textEffect2-expected.txt:
  • svg/batik/text/textProperties-expected.txt:
13:19 Changeset [28496] by ggaren@apple.com

WebCore:

Reviewed by Sam Weinig.

Fixed http://bugs.webkit.org/show_bug.cgi?id=16328
REGRESSION (r28470): Crash expanding a GMail conversation


  • page/Frame.cpp: (WebCore::Frame::scriptProxy): Only return 0 if JS seems disabled *and* we haven't created the proxy yet. If we've created the proxy already, a script may be in the midst of execution, even though we've lost our settings object. During execution, scripts assume they have free access to the proxy.

LayoutTests:

Reviewed by Sam Weinig.

Test for http://bugs.webkit.org/show_bug.cgi?id=16328
REGRESSION (r28470): Crash expanding a GMail conversation

  • fast/frames/location-put-after-removal.html: Added.
  • fast/frames/resources/location-put-after-removal-frame.html: Added.
  • fast/frames/resources/location-put-after-removal-frame-expected.txt: Updated.
13:17 Changeset [28495] by andersca@apple.com

Rename main.c to main.cpp here too.


  • DumpRenderTree/win/TestNetscapePlugin/main.cpp: Copied from DumpRenderTree/win/TestNetscapePlugin/main.c.
13:10 Changeset [28494] by weinig@apple.com

Rubber stamped by Geoff.

  • Scripts/do-webcore-rename: Don't rename kjs_css twice.
13:00 Changeset [28493] by darin@apple.com
  • Scripts/do-webcore-rename: Some more renaming plans.
12:37 Changeset [28492] by andersca@apple.com

Remove implementation of testGetIntIdentifier that was accidentally
removed somehow (possibly when I made PluginObject be a cpp file).


  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (pluginInvoke):
12:24 Changeset [28491] by darin@apple.com

JavaScriptCore:

Reviewed by Eric Seidel.

Test: fast/js/regexp-oveflow.html

  • pcre/pcre_compile.cpp: (calculateCompiledPatternLengthAndFlags): In the case where a single character character class is optimized to not use a character class at all, the preflight code was not setting the lastitemlength variable.

LayoutTests:

Reviewed by Eric Seidel.

  • fast/js/regexp-overflow-expected.txt: Updated.
  • fast/js/resources/regexp-overflow.js: Added test.
12:11 Changeset [28490] by alp@webkit.org

2007-12-06 Xan Lopez <xan@gnome.org>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16329
[GTK] Two small cleanups

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::createWindow): (WebKit::ChromeClient::addMessageToConsole): (WebKit::ChromeClient::runJavaScriptAlert): (WebKit::ChromeClient::runJavaScriptConfirm): (WebKit::ChromeClient::runJavaScriptPrompt): (WebKit::ChromeClient::setStatusbarText): (WebKit::ChromeClient::mouseDidMoveOverElement): (WebKit::ChromeClient::setToolTip):
  • WebCoreSupport/ChromeClientGtk.h:
  • WebView/webkitprivate.cpp: (WebKit::kit): s/m_webPage/m_webView/
  • WebView/webkitwebview.cpp: Chain up to the parent class to activate bindings instead of doing it explicitely.
12:02 Changeset [28489] by adele@apple.com

WebCore:

Reviewed by Oliver.

Fix for <rdar://problem/5631356> Toggling display property on video causes controls to get lost

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::attach): Call updateFromElement.
  • html/HTMLMediaElement.h:

LayoutTests:

Reviewed by Oliver.

Fix <rdar://problem/5631356> Toggling display property on video causes controls to get lost

  • media/video-display-toggle.html: Added.
  • platform/mac/media/video-display-toggle-expected.checksum: Added.
  • platform/mac/media/video-display-toggle-expected.png: Added.
  • platform/mac/media/video-display-toggle-expected.txt: Added.
11:33 Changeset [28488] by adachan@apple.com

Build fix.

Reviewed by Geoff.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
10:46 Changeset [28487] by antti@apple.com

Reviewed by Oliver.

Rename

Movie -> MediaPlayer
MoviePrivate -> MediaPlayerPrivate


Movie is QuickTime terminology and clashes with its C API.

  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::~HTMLMediaElement): (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): (WebCore::HTMLMediaElement::bufferingRate): (WebCore::HTMLMediaElement::load): (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): (WebCore::HTMLMediaElement::setReadyState): (WebCore::HTMLMediaElement::progressEventTimerFired): (WebCore::HTMLMediaElement::seek): (WebCore::HTMLMediaElement::currentTime): (WebCore::HTMLMediaElement::duration): (WebCore::HTMLMediaElement::playbackRate): (WebCore::HTMLMediaElement::setPlaybackRate): (WebCore::HTMLMediaElement::play): (WebCore::HTMLMediaElement::pause): (WebCore::HTMLMediaElement::setVolume): (WebCore::HTMLMediaElement::setMuted): (WebCore::HTMLMediaElement::pickMedia): (WebCore::HTMLMediaElement::checkIfSeekNeeded): (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): (WebCore::HTMLMediaElement::mediaPlayerCuePointReached): (WebCore::HTMLMediaElement::addCuePoint): (WebCore::HTMLMediaElement::buffered): (WebCore::HTMLMediaElement::seekable): (WebCore::HTMLMediaElement::effectiveStart): (WebCore::HTMLMediaElement::effectiveEnd): (WebCore::HTMLMediaElement::effectiveLoopStart): (WebCore::HTMLMediaElement::effectiveLoopEnd): (WebCore::HTMLMediaElement::updateMediaPlayer): (WebCore::HTMLMediaElement::willSaveToCache):
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::player):
  • html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::videoWidth): (WebCore::HTMLVideoElement::videoHeight):
  • platform/MIMETypeRegistry.cpp: (WebCore::initialiseSupportedMediaMIMETypes): (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType): (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
  • platform/MIMETypeRegistry.h:
  • platform/graphics/MediaPlayer.cpp: Copied from WebCore/platform/graphics/Movie.cpp. (WebCore::MediaPlayer::MediaPlayer): (WebCore::MediaPlayer::~MediaPlayer): (WebCore::MediaPlayer::load): (WebCore::MediaPlayer::cancelLoad): (WebCore::MediaPlayer::play): (WebCore::MediaPlayer::pause): (WebCore::MediaPlayer::duration): (WebCore::MediaPlayer::currentTime): (WebCore::MediaPlayer::seek): (WebCore::MediaPlayer::paused): (WebCore::MediaPlayer::seeking): (WebCore::MediaPlayer::naturalSize): (WebCore::MediaPlayer::hasVideo): (WebCore::MediaPlayer::networkState): (WebCore::MediaPlayer::readyState): (WebCore::MediaPlayer::volume): (WebCore::MediaPlayer::setVolume): (WebCore::MediaPlayer::rate): (WebCore::MediaPlayer::setRate): (WebCore::MediaPlayer::muted): (WebCore::MediaPlayer::setMuted): (WebCore::MediaPlayer::dataRate): (WebCore::MediaPlayer::setEndTime): (WebCore::MediaPlayer::addCuePoint): (WebCore::MediaPlayer::removeCuePoint): (WebCore::MediaPlayer::clearCuePoints): (WebCore::MediaPlayer::maxTimeBuffered): (WebCore::MediaPlayer::maxTimeSeekable): (WebCore::MediaPlayer::bytesLoaded): (WebCore::MediaPlayer::totalBytesKnown): (WebCore::MediaPlayer::totalBytes): (WebCore::MediaPlayer::setRect): (WebCore::MediaPlayer::visible): (WebCore::MediaPlayer::setVisible): (WebCore::MediaPlayer::paint): (WebCore::MediaPlayer::getSupportedTypes): (WebCore::MediaPlayer::networkStateChanged): (WebCore::MediaPlayer::readyStateChanged): (WebCore::MediaPlayer::volumeChanged): (WebCore::MediaPlayer::timeChanged): (WebCore::MediaPlayer::cuePointReached):
  • platform/graphics/MediaPlayer.h: Copied from WebCore/platform/graphics/Movie.h. (WebCore::MediaPlayerClient::~MediaPlayerClient): (WebCore::MediaPlayerClient::mediaPlayerNetworkStateChanged): (WebCore::MediaPlayerClient::mediaPlayerReadyStateChanged): (WebCore::MediaPlayerClient::mediaPlayerVolumeChanged): (WebCore::MediaPlayerClient::mediaPlayerTimeChanged): (WebCore::MediaPlayerClient::mediaPlayerCuePointReached):
  • platform/graphics/Movie.cpp: Removed.
  • platform/graphics/Movie.h: Removed.
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.cpp. (WebCore::mediaPlayerPrivateErrorCallback): (WebCore::mediaPlayerPrivateEOSCallback): (WebCore::mediaPlayerPrivateStateCallback): (WebCore::mediaPlayerPrivateBufferingCallback): (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::play): (WebCore::MediaPlayerPrivate::pause): (WebCore::MediaPlayerPrivate::duration): (WebCore::MediaPlayerPrivate::currentTime): (WebCore::MediaPlayerPrivate::seek): (WebCore::MediaPlayerPrivate::setEndTime): (WebCore::MediaPlayerPrivate::addCuePoint): (WebCore::MediaPlayerPrivate::removeCuePoint): (WebCore::MediaPlayerPrivate::clearCuePoints): (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded): (WebCore::MediaPlayerPrivate::cancelSeek): (WebCore::MediaPlayerPrivate::cuePointTimerFired): (WebCore::MediaPlayerPrivate::paused): (WebCore::MediaPlayerPrivate::seeking): (WebCore::MediaPlayerPrivate::naturalSize): (WebCore::MediaPlayerPrivate::hasVideo): (WebCore::MediaPlayerPrivate::setVolume): (WebCore::MediaPlayerPrivate::setMuted): (WebCore::MediaPlayerPrivate::setRate): (WebCore::MediaPlayerPrivate::dataRate): (WebCore::MediaPlayerPrivate::networkState): (WebCore::MediaPlayerPrivate::readyState): (WebCore::MediaPlayerPrivate::maxTimeBuffered): (WebCore::MediaPlayerPrivate::maxTimeSeekable): (WebCore::MediaPlayerPrivate::maxTimeLoaded): (WebCore::MediaPlayerPrivate::bytesLoaded): (WebCore::MediaPlayerPrivate::totalBytesKnown): (WebCore::MediaPlayerPrivate::totalBytes): (WebCore::MediaPlayerPrivate::cancelLoad): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::loadStateChanged): (WebCore::MediaPlayerPrivate::rateChanged): (WebCore::MediaPlayerPrivate::sizeChanged): (WebCore::MediaPlayerPrivate::timeChanged): (WebCore::MediaPlayerPrivate::volumeChanged): (WebCore::MediaPlayerPrivate::didEnd): (WebCore::MediaPlayerPrivate::loadingFailed): (WebCore::MediaPlayerPrivate::setRect): (WebCore::MediaPlayerPrivate::setVisible): (WebCore::MediaPlayerPrivate::paint): (WebCore::MediaPlayerPrivate::getSupportedTypes): (WebCore::MediaPlayerPrivate::createGSTPlayBin):
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.h.
  • platform/graphics/gtk/MoviePrivateGStreamer.cpp: Removed.
  • platform/graphics/gtk/MoviePrivateGStreamer.h: Removed.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.h.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.mm. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::createQTMovie): (WebCore::MediaPlayerPrivate::createQTMovieView): (WebCore::MediaPlayerPrivate::createQTTime): (WebCore::MediaPlayerPrivate::load): (WebCore::MediaPlayerPrivate::play): (WebCore::MediaPlayerPrivate::pause): (WebCore::MediaPlayerPrivate::duration): (WebCore::MediaPlayerPrivate::currentTime): (WebCore::MediaPlayerPrivate::seek): (WebCore::MediaPlayerPrivate::doSeek): (WebCore::MediaPlayerPrivate::cancelSeek): (WebCore::MediaPlayerPrivate::seekTimerFired): (WebCore::MediaPlayerPrivate::setEndTime): (WebCore::MediaPlayerPrivate::addCuePoint): (WebCore::MediaPlayerPrivate::removeCuePoint): (WebCore::MediaPlayerPrivate::clearCuePoints): (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded): (WebCore::MediaPlayerPrivate::cuePointTimerFired): (WebCore::MediaPlayerPrivate::paused): (WebCore::MediaPlayerPrivate::seeking): (WebCore::MediaPlayerPrivate::naturalSize): (WebCore::MediaPlayerPrivate::hasVideo): (WebCore::MediaPlayerPrivate::setVolume): (WebCore::MediaPlayerPrivate::setMuted): (WebCore::MediaPlayerPrivate::setRate): (WebCore::MediaPlayerPrivate::dataRate): (WebCore::MediaPlayerPrivate::networkState): (WebCore::MediaPlayerPrivate::readyState): (WebCore::MediaPlayerPrivate::maxTimeBuffered): (WebCore::MediaPlayerPrivate::maxTimeSeekable): (WebCore::MediaPlayerPrivate::maxTimeLoaded): (WebCore::MediaPlayerPrivate::bytesLoaded): (WebCore::MediaPlayerPrivate::totalBytesKnown): (WebCore::MediaPlayerPrivate::totalBytes): (WebCore::MediaPlayerPrivate::cancelLoad): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::loadStateChanged): (WebCore::MediaPlayerPrivate::rateChanged): (WebCore::MediaPlayerPrivate::sizeChanged): (WebCore::MediaPlayerPrivate::timeChanged): (WebCore::MediaPlayerPrivate::volumeChanged): (WebCore::MediaPlayerPrivate::didEnd): (WebCore::MediaPlayerPrivate::setRect): (WebCore::MediaPlayerPrivate::setVisible): (WebCore::MediaPlayerPrivate::paint): (WebCore::MediaPlayerPrivate::getSupportedTypes): (-[WebCoreMovieObserver initWithCallback:WebCore::]):
  • platform/graphics/mac/MoviePrivateQTKit.h: Removed.
  • platform/graphics/mac/MoviePrivateQTKit.mm: Removed.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::player):
  • rendering/RenderMedia.h:
  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::RenderVideo): (WebCore::RenderVideo::~RenderVideo): (WebCore::RenderVideo::videoSizeChanged): (WebCore::RenderVideo::paintReplaced): (WebCore::RenderVideo::layout): (WebCore::RenderVideo::updateFromElement): (WebCore::RenderVideo::updatePlayer):
  • rendering/RenderVideo.h:
10:26 HackingGtk edited by alp@atoker.com
Add a link to the GStreamer video backend code (diff)
10:01 Changeset [28486] by ggaren@apple.com

Build fix: access global object directly.

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::bindingInstance):
04:20 Changeset [28485] by mrowe@apple.com

Fix bug spotted by GCC 4.2. Remove extraneous semicolon that completely changed the meaning of allowPopUp.

Reviewed by Eric.

01:26 Changeset [28484] by alp@webkit.org

2007-12-06 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16173
Licensing change

Change license from BSD to LGPL.

12/05/07:

23:40 Changeset [28483] by rwlbuis@webkit.org

Reviewed by Mitz.

http://bugs.webkit.org/show_bug.cgi?id=15289
WebKit does not respect clip paths of a 0x0 rect

Make empty clip paths clip the whole referencing graphic.

22:25 Changeset [28482] by darin@apple.com

Reviewed by Maciej.

I don't know how to reproduce this in a test.

  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark): Call JSEventTargetNode::mark instead of DOMObject::mark. There's no difference right now, but it's best to call your base class, not your base's base.
  • bindings/js/kjs_events.h: Removed unneeded virtual from the JSUnprotectedEventListener::mark() function; it neither derives from or is derived from anyone else with a mark() function so there's no need for virtual.
  • bindings/js/kjs_window.cpp: (KJS::Window::mark): Call JSGlobalObject::mark, not JSObject::mark. This is the actual bug fix.
21:42 Changeset [28481] by alp@webkit.org

2007-12-05 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

http://bugs.webkit.org/show_bug.cgi?id=16145
[gtk] Implement media support in GTK backend

Reviewed by Alp Toker.

Remove old comments, fix variable names, match WebKit coding style.

  • platform/graphics/gtk/MoviePrivateGStreamer.cpp: (WebCore::moviePrivateEOSCallback): (WebCore::MoviePrivate::MoviePrivate): (WebCore::MoviePrivate::load): (WebCore::MoviePrivate::play): (WebCore::MoviePrivate::pause): (WebCore::MoviePrivate::currentTime): (WebCore::MoviePrivate::seek): (WebCore::MoviePrivate::cancelSeek): (WebCore::MoviePrivate::seeking): (WebCore::MoviePrivate::naturalSize): (WebCore::MoviePrivate::setVolume): (WebCore::MoviePrivate::setMuted): (WebCore::MoviePrivate::maxTimeBuffered): (WebCore::MoviePrivate::bytesLoaded): (WebCore::MoviePrivate::totalBytesKnown): (WebCore::MoviePrivate::totalBytes): (WebCore::MoviePrivate::updateStates): (WebCore::MoviePrivate::didEnd): (WebCore::MoviePrivate::paint): (WebCore::MoviePrivate::createGSTPlayBin):
  • platform/graphics/gtk/MoviePrivateGStreamer.h:
21:37 Changeset [28480] by mrowe@apple.com

Speculative wx build fix. Add PlugInInfoStore::pluginNameForMIMEType to the temporary link stubs.

21:25 Changeset [28479] by mrowe@apple.com

Qt Windows build fix. Include the time-related headers in the correct place.

21:22 Changeset [28478] by darin@apple.com

Not reviewed; just undoing a previous commit.

The real bug was the backwards ?: in the compile function, which Geoff just
fixed. Rolling out the incorrect earlier fix.

  • pcre/pcre_compile.cpp: (calculateCompiledPatternLengthAndFlags): Take out the unneeded preflight change. The regression test proves this is still working fine, so the bug remains fixed.
21:13 Changeset [28477] by alp@webkit.org

2007-12-05 Alp Toker <alp@atoker.com>

Rubber stamped by Mark Rowe.

Remove DEPENDPATH on the generated sources directory. This causes
trouble and is no longer necessary following the glib-genmarshal
generator split.

  • WebCore.pro:
20:14 Changeset [28476] by mrowe@apple.com

Build fix. Include headers before trying to use the things that they declare.

19:11 Changeset [28475] by ggaren@apple.com

Build fix: added some #includes.

  • kjs/JSImmediate.cpp:
19:07 Changeset [28474] by ggaren@apple.com

Build fix: added some #includes.

  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
19:02 Changeset [28473] by ggaren@apple.com

Build fix: Fixed #include spelling.

  • kjs/debugger.cpp:
18:57 Changeset [28472] by ggaren@apple.com

Build fix: added #include.

  • kjs/debugger.cpp:
18:51 Changeset [28471] by ggaren@apple.com

Build fix: added a forward declaration.

  • kjs/debugger.h:
18:47 Changeset [28470] by ggaren@apple.com

Build fix: added an #include.

  • kjs/error_object.cpp:
18:41 Changeset [28469] by ggaren@apple.com

Build fix: added an #include.

  • kjs/bool_object.cpp:
18:31 Changeset [28468] by ggaren@apple.com

JavaScriptCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and
functions accessing data members from Interpreter to JSGlobalObject.
Changed Interpreter member functions to static functions.


This resolves a bug in global object bootstrapping, where the global
ExecState could be used when uninitialized.


This is a big change, but it's mostly code motion and renaming.


Layout and JS tests, and testjsglue and testapi, pass. SunSpider reports
a .7% regression, but Shark sees no difference related to this patch,
and SunSpider reported a .7% speedup from an earlier step in this
refactoring, so I think it's fair to call that a wash.

JavaScriptGlue:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
subclass with JSGlobalObject subclass.


  • JSRun.cpp: (JSRun::JSRun): (JSRun::Evaluate): (JSRun::CheckSyntax):
  • JSRun.h: (JSGlueGlobalObject::JSGlueGlobalObject):
  • JSUtils.cpp: (KJSValueToCFTypeInternal):
  • JSValueWrapper.cpp: (getThreadGlobalExecState):

WebCore:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject. Changed Interpreter
member functions to static functions. Same for the subclass,
ScriptInterpreter.


This is a big change, but it's mostly code motion and renaming.

WebKit/mac:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]):

WebKit/win:

Reviewed by Darin Adler.

Third step in refactoring JSGlobalObject: Moved data members and data
member access from Interpreter to JSGlobalObject.


  • WebFrame.cpp: (WebFrame::globalContext): (WebFrame::attachScriptDebugger): (WebFrame::windowObjectCleared):
  • WebScriptDebugger.cpp: (WebScriptDebugger::WebScriptDebugger):
17:37 Changeset [28467] by alice.liu@apple.com

Reviewed by Antti.

Addressed <rdar://problem/5137284> fast/events/mouseout-dead-node.html fails on boomer

  • fast/events/mouseout-dead-node.html: Changed the questionable calls to mouseUp() to mouseMoveTo() to better simulate mouseovers
  • platform/win/Skipped: removed this test from skipped file
17:36 Changeset [28466] by sfalken@apple.com

<rdar://problem/5625327> Crash toggling check grammar w/ spelling when no spell checker exists.


Reviewed by Adam.

  • WebView.cpp: (WebView::setGrammarCheckingEnabled): Add null check
16:56 Changeset [28465] by aroben@apple.com
  • platform/win/Skipped: Add a crashing test.
16:33 Changeset [28464] by darin@apple.com

"Reviewed" by Geoff.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Removed assertion. (WebCore::FrameLoader::dispatchDidCommitLoad): This one too. The assertions are firing like crazy. Not sure why yet.
16:03 Changeset [28463] by ggaren@apple.com

Reviewed by Darin Adler. (Or vice versa.)


Fixed ASSERT during run-javascriptcore-tests. (Darin just added the
ASSERT, but the bug wasn't new.)

  • pcre/pcre_compile.cpp: (compile_branch): The ?: operator here was backwards, causing us to execute the loop too many times, adding stray KET opcodes to the compiled regular expression.
15:56 BuildBot edited by aroben@apple.com
Add a note about the just-in-time debugger registry key on Windows (diff)
15:34 Changeset [28462] by andersca@apple.com

Make the entry points extern "C".

  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp:
14:58 Changeset [28461] by darin@apple.com

Reviewed by Adam Roben.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::dispatchDidCommitLoad): Check m_creatingInitialEmptyDocument and don't deliver the client call in that case.
14:57 Changeset [28460] by andersca@apple.com

C++ warning fixes.


  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): (NPP_Destroy): (NPP_SetWindow): (NPP_NewStream): (NPP_HandleEvent): (NPP_URLNotify): (NPP_GetValue):
14:54 Changeset [28459] by andersca@apple.com

Add the .cpp files to the TestNetscapePlugIn target.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
14:48 Changeset [28458] by kmccullough@apple.com

Reviewed by Geoff.

  • Wait until local variable data is fully constructed before notifying the debugger of entering or leaving a call frame.
  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction):
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::execute):
14:42 Changeset [28457] by andersca@apple.com

Reviewed by Geoff.


Rename the TestNetscapePlugIn .c files to be .cpp.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c.
  • DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/TestObject.c.
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.c: Removed.
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: Copied from DumpRenderTree/TestNetscapePlugIn.subproj/main.c.
  • DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj:
14:30 Changeset [28456] by mrowe@apple.com

Fix 64-bit debug build.

Reviewed by Kevin Decker.

  • platform/text/mac/TextCodecMac.cpp:

(WebCore::TextCodecMac::decode): OSStatus is a long for 32-bit but int on 64-bit,
so we need to cast it to be able to use a single format specifier on both.

14:29 Changeset [28455] by mrowe@apple.com

Build fix for GCC 4.2. Cast via a union to avoid strict-aliasing issues.

Reviewed by Oliver.

14:27 Changeset [28454] by aroben@apple.com
  • platform/win/Skipped: Add another test failing due to fonts.
14:24 Changeset [28453] by aroben@apple.com

Fix case of keypresses from the Windows implementation of eventSender.keyDown

This fixes several regression tests.

Reviewed by Alice.

  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): Virtual keycodes for ASCII characters are always uppercase, so we need to check the case of the original character passed in to eventSender.keyDown.
14:08 Changeset [28452] by kdecker@apple.com

Corrected a Radar number in my previous ChangeLog entry.

13:51 Changeset [28451] by kdecker@apple.com

Reviewed by Hyatt.

<rdar://problem/5602071> Safari displays each pixel of 300 dpi US Patent TIFF Images, making them extremely large


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldUsePlugin): Allow plug-ins (with the exception of QuickTime) to takeover TIFF once again.
13:48 Changeset [28450] by timothy@apple.com

Add another Inspector screenshot for an upcoming blog post.

  • blog-files/InspectorDatabaseBrowser.png: Added.
13:16 Changeset [28449] by mrowe@apple.com

Fix testkjs in 64-bit.

When built for 64-bit the TCMalloc spin lock uses pthread mutexes rather than a custom spin lock
implemented in assembly. If we fail to initialize the pthread mutex, attempts to lock or unlock
it will fail and trigger a call to abort.

Reviewed by Darin.

  • wtf/FastMalloc.cpp: Initialize the spin lock so that we can later lock and unlock it.
  • wtf/TCSpinLock.h: Add an Init method to the optimised spin lock.
13:12 HackingGtk edited by alp@atoker.com
Mention bundled code (diff)
12:26 Changeset [28448] by alp@webkit.org

2007-12-05 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16290
[GTK] Pasting clipboard in rich text.

  • platform/gtk/PasteboardGtk.cpp: (Pasteboard::documentFragment): Implement rich text paste support.
12:10 Changeset [28447] by adele@apple.com

Reviewed by Hyatt.

Reverting fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

We need to just fix the underlying focus ring repaint problem.

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
12:01 Changeset [28446] by kmccullough@apple.com

WebCore:

Reviewed by Darin.

  • <rdar://5621435>
  • Security Fix. Instead of having it off by default, WebKit now must explicitly turn off local-resource restriction when needed for backwards compatibility reasons.
  • loader/FrameLoader.cpp:

WebKit/mac:

Reviewed by Darin.

  • <rdar://5621435>
  • Security Fix. Instead of having it off by default, WebKit now must explicitly turn off local-resource restriction when needed for backwards coimpatibility reasons.
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]):
11:38 Changeset [28445] by aroben@apple.com

Expose WebView::setProhibitsMainFrameScrolling through IWebViewPrivate

Reviewed by Steve.

  • Interfaces/IWebViewPrivate.idl: Added declaration.
  • WebInspectorClient.cpp: (WebInspectorClient::createPage): Updated for change to setProhibitsMainFrameScrolling signature.
  • WebView.cpp: (WebView::setProhibitsMainFrameScrolling): Updated and robustified.
  • WebView.h:
11:36 Changeset [28444] by aroben@apple.com

Set the menu item identifier for all menu items

This allows WebKit clients to distinguish between submenus in the
context menu.

Reviewed by Darin.

No test possible.

  • platform/win/ContextMenuItemWin.cpp: (WebCore::ContextMenuItem::ContextMenuItem):
10:51 Changeset [28443] by aroben@apple.com

Learn from Tim's mistakes

  • DumpRenderTree/win/DumpRenderTree.cpp: (runTest): Reset the authorAndUserStylesEnabled preference for each test.
10:46 Changeset [28442] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • manual-tests/nested-plug-ins.html: Added.
  • manual-tests/resources/nested-plug-ins-inner-frame.html: Added.
  • manual-tests/resources/nested-plug-ins-outer-frame.html: Added.
  • platform/ScrollView.h:
  • platform/Widget.h: (WebCore::Widget::attachToWindow): Added. Tells the widget that it is connected via visible ScrollViews to the root ScrollView of the WebView. (WebCore::Widget::detachFromWindow): Added. Tells the widget that it is no longer connected via visible ScrollViews to the root ScrollView of the WebView.
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added m_visible and m_attachedToWindow members. (WebCore::ScrollView::attachToWindow): Added. Attaches all children if this view is visible. (WebCore::ScrollView::detachFromWindow): Added. Detaches all children if this view is visible (otherwise they would be detached already). (WebCore::ScrollView::show): Added. Attaches all children if this view is attached. (WebCore::ScrollView::hide): Added. Detaches all children if this view is attached (otherwise they would be detached already). (WebCore::ScrollView::isAttachedToWindow): Added.
  • platform/win/WidgetWin.cpp: (WebCore::Widget::setParent): Added calls to attachToWindow() and detachFromWindow() depending on whether the parent is set and attached or not.
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::setFocus): (WebCore::PluginViewWin::show): Changed to show the plug-in only if this view is attached. (WebCore::PluginViewWin::hide): Changed to hide the plug-in only if this view is attached (otherwise it would be hidden already). (WebCore::PluginViewWin::attachToWindow): Added. Shows the plug-in if this view is visible. (WebCore::PluginViewWin::detachFromWindow): Added. Hides the plug-in if this view is visible (otherwise it would be hidden already). (WebCore::PluginViewWin::PluginViewWin):
  • plugins/win/PluginViewWin.h: Added m_attachedToWindow member.

WebKit/win:

Reviewed by Darin Adler.

  • WebView.cpp: (WebView::initWithFrame): Attach the main frame's view.
10:15 Changeset [28441] by beidson@apple.com

Reviewed by Kevin Deckers rubberstamp

Disclose and export the Databases Directory defaults key

  • Storage/WebDatabaseManager.mm:
  • Storage/WebDatabaseManagerPrivate.h:
  • WebKit.exp:
09:07 HackingGtk edited by alp@atoker.com
Update link to the Cairo SVG backend in SVN, add link to the Cairo canvas (diff)
08:42 Changeset [28440] by alp@webkit.org

2007-12-05 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Initialize GTK+ and WebKit so the tests can run.

Reorganize the headers a little.

07:53 Changeset [28439] by alp@webkit.org

2007-12-05 Michael Natterer <mitch@imendio.com>

Reviewed by Alp Toker.

  • WebView/webkitwebview.cpp: split key and button event handlers into separate press and release functions.
07:16 Changeset [28438] by alp@webkit.org

2007-12-05 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

Handle events for Home and End keys.

  • WebView/webkitwebview.cpp: (webkit_web_view_key_event):
  • WebCoreSupport/EditorClientGtk.cpp: (EditorClient::handleKeypress):
04:35 Changeset [28437] by alp@webkit.org

2007-12-05 Michael Natterer <mitch@imendio.com>

Reviewed by Alp Toker.

  • WebView/webkitwebview.cpp
  • WebCoreSupport/ChromeClientGtk.cpp
  • WebCoreSupport/FrameLoaderClientGtk.cpp: canonicalize signal names.
01:32 QtWebKitTodo edited by hausmann@webkit.org
(diff)
00:26 Changeset [28436] by mitz@apple.com

Reviewed by Adam Roben.

  • fast/dom/ImageDocument-image-deletion-expected.txt: Added.
  • fast/dom/ImageDocument-image-deletion.html: Added.

12/04/07:

20:47 Changeset [28435] by oliver@apple.com

Fix gtk build

19:58 Changeset [28434] by oliver@apple.com

Merge TCMalloc r38

Reviewed by Mark Rowe and Geoff Garen.

It also result in a performance progression between 0.5% and
0.9% depending on the test, however most if not all of this
gain will be consumed by the overhead involved in the later
change to release memory to the system.

18:48 Changeset [28433] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

Potential GTK+ build fix for the glib-genmarshal issue.

Split the glib-genmarshal qmake generator in two; one for the source
file, another for the header.

  • WebCore.pro:
18:34 Changeset [28432] by andersca@apple.com

Remove IWebScriptScope include.


  • Drosera/win/DebuggerDocumentPlatform.cpp:
18:08 Changeset [28431] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

GTK+ build fix.

  • platform/PlugInInfoStore.h:
17:58 Changeset [28430] by sfalken@apple.com

Remove bad tag.

17:56 Changeset [28429] by sfalken@apple.com

New tag.

17:49 Changeset [28428] by sfalken@apple.com

New tag.

17:48 Changeset [28427] by sfalken@apple.com

Remove unnecessary tag.

17:46 Changeset [28426] by kdecker@apple.com

Reviewed by Anders.

<rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type

  • page/mac/WebCoreViewFactory.h: Added pluginNameForMIMEType: method.
  • platform/PlugInInfoStore.h:
  • platform/gtk/TemporaryLinkStubs.cpp: Added stub version of pluginNameForMIMEType. (PlugInInfoStore::pluginNameForMIMEType):
  • platform/mac/PlugInInfoStoreMac.mm: (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added.
  • platform/qt/PlugInInfoStoreQt.cpp: (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
  • plugins/win/PlugInInfoStoreWin.cpp: (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
  • WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory pluginNameForMIMEType:]): Added.
17:44 Changeset [28425] by sfalken@apple.com

Bump versions for submit

17:40 Changeset [28424] by sfalken@apple.com

New tag.

17:08 Changeset [28423] by adele@apple.com

WebCore:

Reviewed by Darin.

Fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle): Adjust outline-offset so it doesn't extend beyond the border to interfere with typing

LayoutTests:

Reviewed by Darin.

Test for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

  • fast/forms/textfield-outline.html: Added.
  • platform/mac/fast/forms/textfield-outline-expected.checksum: Added.
  • platform/mac/fast/forms/textfield-outline-expected.png: Added.
  • platform/mac/fast/forms/textfield-outline-expected.txt: Added.
17:05 Changeset [28422] by adachan@apple.com

Provide API for setting the default storage quota per database origin

Reviewed by Jon.

  • Interfaces/IWebPreferencesPrivate.idl: added SPI to get/set default database quota
  • WebPreferenceKeysPrivate.h:
  • WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): default database quota is 5MB (WebPreferences::longlongValueForKey): (WebPreferences::setLongLongValue): (WebPreferences::defaultDatabaseQuota): (WebPreferences::setDefaultDatabaseQuota):
  • WebPreferences.h:
  • WebView.cpp: (WebView::notifyPreferencesChanged): propagate default database quota change to WebCore settings.
16:46 Changeset [28421] by andersca@apple.com

Reviewed by Jon.

Always call NPP_NewStream, NPP_DestroyStream and NPP_URLNotify for JavaScript
result streams, even if the JavaScript expression threw an exception or returned undefined.
This matches what Firefox does.


  • plugins/win/PluginStreamWin.cpp: (WebCore::PluginStreamWin::sendJavaScriptStream): Handle the result string being null, and set the correct NPReason if it is.


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::performRequest): Always send the JavaScript stream, regardless of the result could be converted to a string or not.
16:30 Changeset [28420] by beidson@apple.com

Reviewed by Mark Rowe

Tweaked the way we typedef and cast these objc_msgSend calls

  • WebView/WebView.mm: (CallDelegateReturningUnsignedLongLong):
16:23 Changeset [28419] by weinig@apple.com

Rubber stamped by Mark Rowe.

Define CF as platform for mac and revert r28409

  • DumpRenderTree/DumpRenderTree.h:
  • DumpRenderTree/mac/DumpRenderTreeMac.h:
16:14 Changeset [28418] by weinig@apple.com

Reviewed by Adam Roben.

Remove http/tests/incremental/frame-focus-before-load.html from the skipped list
as it is no longer crashing. <rdar://problem/5507278>

  • platform/win/Skipped:
16:08 Changeset [28417] by adele@apple.com

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5622464> controls should show up for audio element

  • css/html4.css: Added styles for audio controls. This will need to be refined, since we may want a different look for audio controls.
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::attributeChanged): When the controls attribute changes detach and reattach if necessary. (WebCore::HTMLMediaElement::rendererIsNeeded): Added. (WebCore::HTMLMediaElement::createRenderer): Added. Uses RenderMedia.
  • html/HTMLMediaElement.h:
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::RenderMedia): Added constructor that doesn't take intrinsic size.
  • rendering/RenderMedia.h:

LayoutTests:

Reviewed by Hyatt.

Test for <rdar://problem/5622464> controls should show up for audio element

  • media/audio-controls-rendering.html: Added.
  • platform/mac/media/audio-controls-rendering-expected.checksum: Added.
  • platform/mac/media/audio-controls-rendering-expected.png: Added.
  • platform/mac/media/audio-controls-rendering-expected.txt: Added.
16:01 Changeset [28416] by sullivan@apple.com

Reviewed by Brady Eidson (with help from Mark Rowe)


Fixed return values for unsigned-long-long delegate methods

  • WebView/WebView.mm: (CallDelegateReturningUnsignedLongLong): redid the change that Brady did at home over the weekend but forgot to check in
15:53 Changeset [28415] by andersca@apple.com

JavaScriptCore:

Reviewed by Sam.

Make isSafeScript const.


  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::isSafeScript):

WebCore:

Reviewed by Sam.

Add isSafeScript(const JSGlobalObject*) so we won't get the JSGlobalObject
implementation, which always returns true(!).


  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript): Make the static isSafeScript method take two JSGlobalObjects.


  • bindings/js/kjs_window.h: (KJS::Window::isSafeScript): Implement isSafeScript and have it call the static method.
15:40 Changeset [28414] by weinig@apple.com

Define CF as platform for windows.

Reviewed by Adam Roben.

  • DumpRenderTree/win/DumpRenderTreeWin.h:
15:19 Changeset [28413] by kmccullough@apple.com

WebKit/win:

Reviewed by Adam and Darin.

  • Fixed a crasher where the top of the stack was not updated correctly. And set the eol style on IWebScriptCallFrame.idl file.
  • Interfaces/IWebScriptCallFrame.idl:
  • WebScriptDebugger.cpp: (WebScriptDebugger::atStatement): (WebScriptDebugger::leaveFrame):

WebKitTools:

Reviewed by Adam and Darin.

  • Removed a needless BSTR cleanup.
  • Drosera/win/DebuggerDocumentPlatform.cpp: (DebuggerDocument::getPlatformCurrentFunctionStack):
14:54 Changeset [28412] by aroben@apple.com

Hook up the authorAndUserStylesEnabled preference on Windows

WebKit/win:

Hook up the authorAndUserStylesEnabled preference

This is the Windows counterpart of r28071.

Reviewed by Maciej.

  • Interfaces/IWebPreferencesPrivate.idl: Added new method declarations.
  • WebPreferenceKeysPrivate.h: Added a new preference key.
  • WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Set the default for the new preference. (WebPreferences::setAuthorAndUserStylesEnabled): Added. (WebPreferences::authorAndUserStylesEnabled): Added.
  • WebPreferences.h:
  • WebView.cpp: (WebView::notifyPreferencesChanged): Communicate the new preference down to WebCore::Settings.

WebKitTools:

Fix <rdar://5614497> setAuthorAndUserStylesEnabled is not implemented in DRT

Reviewed by Maciej.

  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setAuthorAndUserStylesEnabled): Implemented.

LayoutTests:

Remove a now-passing test from the Windows Skipped file

Reviewed by Maciej.

  • platform/win/Skipped:
14:52 Changeset [28411] by aroben@apple.com

Make the implementation of Frame::setNeedsReapplyStyles cross-platform

WebCore:

Make the implementation of Frame::setNeedsReapplyStyles cross-platform

Reviewed by Hyatt.

No change in functionality.

  • page/Frame.cpp: (WebCore::Frame::setNeedsReapplyStyles): Added. Invalidates the FrameView so that FrameView::layout will be called, which ends up calling reapplyStyles. (WebCore::Frame::needsReapplyStyles): Added. (WebCore::Frame::reapplyStyles): Renamed from reparseConfiguration. (WebCore::FramePrivate::FramePrivate):
  • page/Frame.h:
  • page/FramePrivate.h: Added new boolean member.
  • page/FrameView.cpp: (WebCore::FrameView::layout): Call Frame::reapplyStyles if needed. (WebCore::FrameView::needsLayout): Say that we need layout if the Frame needs styles reapplied.
  • page/mac/WebCoreFrameBridge.h: Removed setNeedsReapplyStyles.
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge reapplyStylesForDeviceType:]): Updated for rename.
  • bridge/win/FrameWin.cpp: Removed Frame::setNeedsReapplyStyles.
  • page/gtk/FrameGtk.cpp: Ditto.
  • page/mac/FrameMac.mm: Ditto.
  • page/qt/FrameQt.cpp: Ditto.
  • platform/wx/TemporaryLinkStubs.cpp: Ditto.

WebKit/mac:

Remove -[WebFrameBridge setNeedsReapplyStyles]

This functionality is now WebCore's responsibility.

Reviewed by Hyatt.

  • WebCoreSupport/WebFrameBridge.mm:
  • WebKit.order:
14:40 Changeset [28410] by sfalken@apple.com

Bump versions for submit

14:28 Changeset [28409] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

Prospective Win DRT build fix.

  • DumpRenderTree/DumpRenderTree.h:
13:46 Changeset [28408] by antti@apple.com

Reviewed by Adele.

Pass intrinsic size to the base class.

  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::RenderMedia):
13:38 Changeset [28407] by sfalken@apple.com

Build fix.

13:15 Changeset [28406] by aroben@apple.com

Merge r28391

2007-12-04 Adam Roben <aroben@apple.com>

Windows build fix

  • WebScriptCallFrame.cpp:
13:12 Changeset [28405] by jhoneycutt@apple.com

2007-12-04 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

Don't crash if our JavaPlugin DLL can't be found

  • WebFrame.cpp: (WebFrame::createJavaAppletWidget): Added null check
13:11 Changeset [28404] by sullivan@apple.com

Reviewed by Darin


Added deleteOrigin: SPI, which isn't fully implemented

  • Storage/WebDatabaseManagerPrivate.h:
  • Storage/WebDatabaseManager.mm: (-[WebDatabaseManager deleteOrigin:]): just calls deleteDatabasesWithOrigin: for now, but needs to delete origin itself too
13:11 Changeset [28403] by adele@apple.com

Reviewed by Darin.

Fix for <rdar://problem/5578209> REGRESSION: Crash in WebCore::DeprecatedValueListImpl::Private::copyList when going back on zoomerang.com/survey

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation): When the new url is exactly the same as the old url, don't treat it like a fragment navigation, since its going to cause a reload.
13:04 Changeset [28402] by aroben@apple.com

New tag.

12:26 Changeset [28401] by timothy@apple.com

Reviewed by Mark Rowe.

Remove a check for early versions of Leopard CFNetwork now that
Leopard has shipped.

  • Misc/WebKitVersionChecks.h: Remove WEBKIT_FIRST_CFNETWORK_VERSION_WITH_LARGE_DISK_CACHE_FIX.
  • WebView/WebView.mm: (+[WebView _setCacheModel:]): Remove the early Leopard CFNetwork check.
11:56 Changeset [28400] by kdecker@apple.com

2007-12-04 Kevin Decker <kdecker@apple.com>

Reviewed by Darin.

Revised fix for: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang

This fix is exactly the same as chageset 28359 with the exception of an added early return in
updateAndSetWindow to cover the additional case of when a plug-in isn't drawable.


The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would
only call into the NPP_SetWindow() function when we tell the plug-in to draw. This created havoc with
Flash because Flash expects the browser to call NPP_SetWindow() and provide a valid graphics context
regardless of whether or not it actually needs to draw.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned down an ASSERT that was too strict. (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow() function. Also tweaked a comment and added an early return if the plug-in can't draw.
11:47 Changeset [28399] by darin@apple.com

WebCore:

Reviewed by Kevin Decker.

  • added an assertion for a situation that leads to a Safari assertion: a commit that is not followed by a load completion
  • removed some unneeded FrameLoader stuff -- maybe some day we'll get this class cut down to size
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::FrameLoader): Added boolean for assertion. (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Added code to assert that we already sent a commit before sending a complete. (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): Call client directly instead of indirecting through a function. (WebCore::FrameLoader::loadItem): Ditto. (WebCore::FrameLoader::goToItem): Ditto. (WebCore::FrameLoader::addHistoryForCurrentLocation): Get the private browsing state from Settings instead of FrameLoaderClient. Also call client directly instead of indirecting through a function. (WebCore::FrameLoader::updateHistoryForReload): Call client directly instead of indirecting through a function. (WebCore::FrameLoader::dispatchDidCommitLoad): Added code to assert that we did not yet send a commit and set the flag that will be used to check that we don't do this twice in a row without an intervening completion call.
  • loader/FrameLoader.h: Added a boolean for the assertion. Removed six now-unneeded functions.
  • loader/FrameLoaderClient.h: Removed now-unneeded privateBrowsingEnabled function.
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willCacheResponse): Get the private browsing state from Settings instead of FrameLoaderClient.
  • svg/graphics/SVGImageEmptyClients.h: Removed obsolete privateBrowsingEnabled.

WebKit/gtk:

Reviewed by Kevin Decker.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: Removed obsolete privateBrowsingEnabled.
  • WebCoreSupport/FrameLoaderClientGtk.h: Ditto.

WebKit/mac:

Reviewed by Kevin Decker.

  • WebCoreSupport/WebFrameLoaderClient.h: Removed obsolete privateBrowsingEnabled.
  • WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
  • WebKit.order: Ditto.

WebKit/qt:

Reviewed by Kevin Decker.

  • WebCoreSupport/FrameLoaderClientQt.cpp: Removed obsolete privateBrowsingEnabled.
  • WebCoreSupport/FrameLoaderClientQt.h: Ditto.

WebKit/win:

Reviewed by Kevin Decker.

  • WebFrame.cpp: Removed obsolete privateBrowsingEnabled.
  • WebFrame.h: Ditto.

WebKit/wx:

Reviewed by Kevin Decker.

  • WebKitSupport/FrameLoaderClientWx.cpp: Removed obsolete privateBrowsingEnabled.
  • WebKitSupport/FrameLoaderClientWx.h: Ditto.
11:46 Changeset [28398] by timothy@apple.com

Update StringsNotToBeLocalized.txt.

11:21 Changeset [28397] by antti@apple.com

WebCore:

Reviewed by Adele.


Fix <rdar://problem/5624802>
Controller displays outside of <video> element when width and height aren't specified

  • Explicitly adjust size of the controls tree root.
  • Switch RenderMedia base class back to RenderReplaced. It is easier to manage the shadow tree by hand. This also allows better code sharing with other replaced element classes.
  • Move duplicated layout and painting code from subclasses up to RenderReplaced.

Test: media/video-controls-rendering.html

  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paintReplaced):
  • rendering/RenderHTMLCanvas.h:

Share code.

  • rendering/RenderImage.cpp: (WebCore::RenderImage::paintReplaced): (WebCore::RenderImage::minimumReplacedHeight):
  • rendering/RenderImage.h:

Share code.

  • rendering/RenderMedia.cpp: (WebCore::RenderMediaControlShadowRoot::RenderMediaControlShadowRoot): (WebCore::RenderMediaControlShadowRoot::setParent):

Add a subclass just to get through encapsulation to use setParent().

(WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):

Move initialization to the constructor.

(WebCore::RenderMedia::RenderMedia):
(WebCore::RenderMedia::~RenderMedia):
(WebCore::RenderMedia::layout):

Resize and layout the controller root by hand.

(WebCore::RenderMedia::firstChild):
(WebCore::RenderMedia::lastChild):
(WebCore::RenderMedia::removeChild):

Support one child renderer for controls.

(WebCore::RenderMedia::createControlsShadowRoot):

  • rendering/RenderMedia.h: (WebCore::RenderMedia::isMedia):

Switch base class to RenderReplaced, delete the now unnecessary stuff.

  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::layout): (WebCore::RenderReplaced::paint):
  • rendering/RenderReplaced.h: (WebCore::RenderReplaced::minimumReplacedHeight): (WebCore::RenderReplaced::paintReplaced):

Share code.

  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::videoSizeChanged):

Simplify, just request relayout.

(WebCore::RenderVideo::paintReplaced):
(WebCore::RenderVideo::layout):

  • rendering/RenderVideo.h:

Share code.

LayoutTests:

Reviewed by Adele.


Test for <rdar://problem/5624802>
Controller displays outside of <video> element when width and height aren't specified

  • media/remove-from-document.html: Improve coverage by doing relayout before finishing.
  • media/video-controls-rendering.html: Added.
  • platform/mac/media/video-controls-rendering-expected.checksum: Added.
  • platform/mac/media/video-controls-rendering-expected.png: Added.
  • platform/mac/media/video-controls-rendering-expected.txt: Added.
11:10 Changeset [28396] by alp@webkit.org

2007-12-04 Michael Natterer <mitch@imendio.com>

Reviewed by Alp Toker.

  • WebCore.pro: fix build of webkit-marshal by building the functions into a separate .cpp file instead of including them in the header. This way we can use the marshallers from more than one file without using bad hacks.

Add the generated sources directory to DEPENDPATH.

11:08 Changeset [28395] by darin@apple.com

JavaScriptCore:

Reviewed by Geoff.

Test: fast/js/regexp-overflow.html

  • pcre/pcre_compile.cpp: (calculateCompiledPatternLengthAndFlags): Add room for the additional BRA/KET that was generated in the compile code but not taken into account here.

LayoutTests:

Reviewed by Geoff.

  • fast/js/regexp-overflow-expected.txt: Updated.
  • fast/js/resources/regexp-overflow.js: Added test cases.
10:52 Changeset [28394] by aroben@apple.com

Merge r28392

10:36 Changeset [28393] by sfalken@apple.com

New tag.

10:28 Changeset [28392] by sfalken@apple.com

Build fix.

10:27 Changeset [28391] by aroben@apple.com

Windows build fix

  • WebScriptCallFrame.cpp:
09:58 Changeset [28390] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Link to Planet WebKit.

  • nav.inc:
08:50 Changeset [28389] by alp@webkit.org

2007-12-04 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16145
[gtk] Implement media support in GTK backend

This implements the media tags of HTML5 on the GTK+ port based on the
Mac port. Media tests pass although some tests required a small modifications:
As per the HTML5 spec, the loading of the clip should start only after
all script are done. But in the case of the tests, the loading starts
before some callbacks get registered. This has been discussed with
Antti Koivisto, and the tests should be updated.

There is only one known issue: one time in 10 tries, loading a buffered
clip will never end buffering. The buffering will stall at 97% for no
apparent reasons. Reloading the page usually works around the problem.
On the GStreamer side, some codecs don't return correct values, therefore
they make the tests fail. For instance H.264 will make the video-end
test fail. This should be fixed in GStreamer 0.10.15.

This version displays video in a pop up window. A place holder is drawn
on the page where the video should appear.

By default, it is turned off in WebCore.pro until GStreamer/X
detection issues are sorted out.

  • WebCore.pro: Disable video for now
  • platform/Logging.cpp: (WebCore::):
  • platform/Logging.h: Added a logging level for Media stuff
  • platform/graphics/Movie.cpp:
  • platform/graphics/gtk/MoviePrivateGStreamer.cpp: Added. (WebCore::moviePrivateErrorCallback): (WebCore::moviePrivateEOSCallback): (WebCore::moviePrivateStateCallback): (WebCore::moviePrivateBufferingCallback): (WebCore::moviePrivateWindowIDCallback): (WebCore::MoviePrivate::MoviePrivate): (WebCore::MoviePrivate::~MoviePrivate): (WebCore::MoviePrivate::load): (WebCore::MoviePrivate::play): (WebCore::MoviePrivate::pause): (WebCore::MoviePrivate::duration): (WebCore::MoviePrivate::currentTime): (WebCore::MoviePrivate::seek): (WebCore::MoviePrivate::setEndTime): (WebCore::MoviePrivate::addCuePoint): (WebCore::MoviePrivate::removeCuePoint): (WebCore::MoviePrivate::clearCuePoints): (WebCore::MoviePrivate::startCuePointTimerIfNeeded): (WebCore::MoviePrivate::cancelSeek): (WebCore::MoviePrivate::cuePointTimerFired): (WebCore::MoviePrivate::paused): (WebCore::MoviePrivate::seeking): (WebCore::MoviePrivate::naturalSize): (WebCore::MoviePrivate::hasVideo): (WebCore::MoviePrivate::setVolume): (WebCore::MoviePrivate::setMuted): (WebCore::MoviePrivate::setRate): (WebCore::MoviePrivate::dataRate): (WebCore::MoviePrivate::networkState): (WebCore::MoviePrivate::readyState): (WebCore::MoviePrivate::maxTimeBuffered): (WebCore::MoviePrivate::maxTimeSeekable): (WebCore::MoviePrivate::maxTimeLoaded): (WebCore::MoviePrivate::bytesLoaded): (WebCore::MoviePrivate::totalBytesKnown): (WebCore::MoviePrivate::totalBytes): (WebCore::MoviePrivate::cancelLoad): (WebCore::MoviePrivate::updateStates): (WebCore::MoviePrivate::loadStateChanged): (WebCore::MoviePrivate::rateChanged): (WebCore::MoviePrivate::sizeChanged): (WebCore::MoviePrivate::timeChanged): (WebCore::MoviePrivate::volumeChanged): (WebCore::MoviePrivate::didEnd): (WebCore::MoviePrivate::loadingFailed): (WebCore::MoviePrivate::setRect): (WebCore::MoviePrivate::setVisible): (WebCore::MoviePrivate::paint): (WebCore::MoviePrivate::getSupportedTypes): (WebCore::MoviePrivate::createGSTPlayBin):
  • platform/graphics/gtk/MoviePrivateGStreamer.h: Added.
06:12 Changeset [28388] by alp@webkit.org

2007-12-04 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

Fix a regression in key press propagation in r28386.

Fix indentation (was off by two spaces).

  • WebView/webkitwebview.cpp:
05:48 QtWebKitTodo edited by zecke2@selfish.org
(diff)
05:43 QtWebKitTodo edited by zecke2@selfish.org
(diff)
05:27 QtWebKitTodo edited by zecke2@selfish.org
CallOnMainThread is done, IconDataBase is outstanding (diff)
05:19 Changeset [28387] by zecke@webkit.org

Add the missing ChangeLog entries for r28349.

WebCore/ChangeLog:
2007-12-04 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Implement the InspectorClient for the Qt port
  • It does not support highlighting of nodes yet
  • Use QRC to open the internal page. The important thing is the '/' in the URL to make WebCore::Document::completeURL behave the way we want.
  • To make the InspectorClient work we will have to mark qrc as secure.
  • WebCore.pro:
  • loader/FrameLoader.cpp: (WebCore::localSchemes):
  • page/inspector/WebKit.qrc: Added.

WebKit/qt:
2007-12-04 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Implement the InspectorClient for the Qt port
  • It does not support highlighting of nodes yet
  • Use QRC to open the internal page. The important thing is the '/' in the URL to make WebCore::Document::completeURL behave the way we want.
  • To make the InspectorClient work we will have to mark qrc as secure.
  • Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate):
  • Api/qwebpage.h:
  • WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientWebPage::hideEvent): (WebCore::InspectorClientQt::InspectorClientQt): (WebCore::InspectorClientQt::inspectorDestroyed): (WebCore::InspectorClientQt::createPage): (WebCore::InspectorClientQt::localizedStringsURL): (WebCore::InspectorClientQt::showWindow): (WebCore::InspectorClientQt::closeWindow): (WebCore::InspectorClientQt::attachWindow): (WebCore::InspectorClientQt::detachWindow):
  • WebCoreSupport/InspectorClientQt.h:
05:14 Changeset [28386] by alp@webkit.org

2007-12-04 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=15911
[GTK] Use GtkBindingSet to make key bindings user-configurable

This patch doesn't cover the full range of bindings, only the ones
that seem obviously correct and have clear public API.

  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::handleKeypress): do not handle clipboard operations and select-all
  • WebView/webkitwebview.cpp: add cut, copy, paste and select-all signals and allow binding sets (issue #15911 and #16144)
  • WebView/webkitwebview.h:
04:34 Changeset [28385] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

Fix a clobbered copyright header.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:
04:16 Changeset [28384] by alp@webkit.org

2007-12-04 Xan Lopez <xan@gnome.org>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=15561
GTK port needs DumpRenderTree implementation

Start work on the GTK+ DRT.

This does not work yet, and there are a few lingering style issues
(nothing major) but this patch has been stuck in the bug tracker for
too long already.

00:40 Changeset [28383] by mrowe@apple.com

Roll out r28359 as it causes serious problems with tabbed browsing in Safari when viewing pages containing plugins (<rdar://problem/5627529>).

00:31 Changeset [28382] by alp@webkit.org

2007-12-04 Alp Toker <alp@atoker.com>

Rubber stamped by Mark Rowe.

Remove two unused variables to silence warnings.

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::fill): (WebCore::CanvasRenderingContext2D::stroke):

12/03/07:

23:35 Changeset [28381] by pewtermoose@webkit.org

Rubberstamped by Tim.

Make the bullets lickable.

  • wwwroot/planetwebkit.css:
23:19 Changeset [28380] by pewtermoose@webkit.org

Reviewed by Adam.

Make it sexy with awesome icon and tweaks from Tim.

  • templates/index.html.tmpl:
  • wwwroot/ie.css: Added.
  • wwwroot/images/ie-nav-blue.png: Added.
  • wwwroot/planetwebkit.css: Added.
22:59 Changeset [28379] by ddkilzer@apple.com

Added bug reference.

21:35 Changeset [28378] by aroben@apple.com

New tag.

21:17 Changeset [28377] by weinig@apple.com

Move JavaScriptCore thread testing code to pthread specific directory
and remove the dependance on CoreFoundation by using WTF::HashSet.

Reviewed by Geoff and Oliver.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/ForwardingHeaders/wtf/HashMap.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/HashSet.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/Vector.h: Added.
  • DumpRenderTree/JavaScriptThreading.h: Copied from DumpRenderTree/mac/JavaScriptThreading.h.
  • DumpRenderTree/mac/JavaScriptThreading.cpp: Removed.
  • DumpRenderTree/mac/JavaScriptThreading.h: Removed.
  • DumpRenderTree/pthreads: Added.
  • DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: Copied from DumpRenderTree/mac/JavaScriptThreading.cpp. (javaScriptThreads): (runJavaScriptThread): (startJavaScriptThreads): (stopJavaScriptThreads):
20:59 Changeset [28376] by aroben@apple.com

New tag.

20:57 Changeset [28375] by aroben@apple.com

Versioning.

17:08 Changeset [28374] by mitz@apple.com

2007-12-03 Andrew Bonventre <andybons@google.com>

Reviewed by Darin Adler.

  • Drosera/debugger.js: Fixed javascript error where document property should have been used instead of contentDocument in switchFunction that was breaking the select symbol dropdown menu. This is because window.frames will return a Window object and not a frame object like the author was originally expecting.
16:44 Changeset [28373] by sfalken@apple.com

Build fix.

16:28 Changeset [28372] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5134044> fast/frames/frame-src-attribute.html fails on Windows
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::visibleWidth): Do not return negative values. (WebCore::ScrollView::visibleHeight): Ditto.

LayoutTests:

Reviewed by Darin Adler.

  • remove passing test
  • platform/win/Skipped:
16:25 Changeset [28371] by mitz@apple.com

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame

Test: fast/events/resize-subframe.html

  • page/FrameView.cpp: (WebCore::FrameViewPrivate::FrameViewPrivate): Added a timer used when deferring tasks that need to be done after layout. (WebCore::FrameViewPrivate::reset): (WebCore::FrameView::~FrameView): (WebCore::FrameView::layout): Moved the updating of widget positions, loading plug-ins and sending events queued up during layout into performPostLayoutTasks(). performPostLayoutTasks() is called after layout unless the layout was triggered by a previous layout's post- layout tasks. In the latter case, performPostLayoutTasks() is scheduled to run later. (WebCore::FrameView::performPostLayoutTasks): Performs work that needs to be done after layout but which can result in arbitrary code execution and therefore may re-invalidate the layout. This includes updating widget positions, loading plug-ins, and dispatching layout- related DOM events (scroll, overflow and resize). (WebCore::FrameView::postLayoutTimerFired): (WebCore::FrameView::dispatchScheduledEvents):
  • page/FrameView.h:
  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreFrameBridge.mm: Removed -sendResizeEvent since this is handled by FrameView now.

WebKit/gtk:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView/webkitwebview.cpp: Remove the call to sendResizeEvent() since FrameView sends it now.

WebKit/mac:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView/WebHTMLView.mm: (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code that checked if the view had resized and sent the resize event, since FrameView sends resize events now.
  • WebView/WebHTMLViewInternal.h:

WebKit/win:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView.cpp: (WebViewWndProc): Removed call to sendResizeEvent() since FrameView sends them now.

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • fast/events/resize-subframe-expected.txt: Added.
  • fast/events/resize-subframe.html: Added.
14:56 Changeset [28370] by darin@apple.com

JavaScriptCore:

Reviewed by Geoff.

Test: fast/js/recursion-limit-equal.html

  • kjs/operations.cpp: (KJS::equal): Check the exception from toPrimitive.

LayoutTests:

Reviewed by Geoff.

  • fast/js/recursion-limit-equal-expected.txt: Added.
  • fast/js/recursion-limit-equal.html: Added.
  • fast/js/resources/recursion-limit-equal.js: Added.
14:15 Changeset [28369] by kmccullough@apple.com

WebKit/win:

Reviewed by Adam.

  • <rdar://5618942> Drosera: Console window does not process everything correctly.
  • <rdar://5619005> Drosera: could be sped up by moving the WebScriptScope stuff into the WebScriptCallFrame.
  • Now the console can correctly process objects and does not receive notifications from JavaScriptCore about the JavaScript in Drosera's own process.
  • Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup functions from WebScriptScope to here.
  • Interfaces/WebKit.idl: Removed WebScriptScope.
  • WebKit.vcproj/Interfaces.vcproj: Ditto.
  • WebKit.vcproj/WebKit.vcproj: Ditto.
  • WebKit.vcproj/WebKitGUID.vcproj: Ditto.
  • WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here. (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now returns a string value for things that are not strings. (WebScriptCallFrame::variableNames): Moved from WebScriptScope. (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope. (WebScriptCallFrame::jsValueToString): Helper functions that converts any JSValue to a String.
  • WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
  • WebScriptDebugger.cpp: Added nested guards so that Drosera does not receive notifications about JavaScript that Drosera is running just the JavaScript WebKit is running. (WebScriptDebugger::WebScriptDebugger): (WebScriptDebugger::sourceParsed): (WebScriptDebugger::callEvent): (WebScriptDebugger::atStatement): (WebScriptDebugger::returnEvent): (WebScriptDebugger::exception):
  • WebScriptDebugger.h: Ditto.
  • WebScriptScope.cpp: Removed.
  • WebScriptScope.h: Removed.

WebKitTools:

Reviewed by Adam.

  • <rdar://5618942> Drosera: Console window does not process everything correctly.
  • <rdar://5619005> Drosera: could be sped up by moving the WebScriptScope stuff into the WebScriptCallFrame.
  • Now the console can correctly process objects and does not receive notifications from JavaScriptCore about the JavaScript in Drosera's own process.
  • Drosera/win/DebuggerDocumentPlatform.cpp: (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed):
14:14 Changeset [28368] by mitz@apple.com
  • fix a copy-and-paste-o
  • bindings/npruntime.cpp: (_NPN_GetIntIdentifier):
14:12 Changeset [28367] by slewis@apple.com

Check to see if we are building a debug root

  • Scripts/check-for-global-initializers:
14:07 Changeset [28366] by mitz@apple.com

JavaScriptCore:

Reviewed by Darin Adler.

  • fix an ASSERT when getIntIdentifier is called with 0 or -1
  • bindings/npruntime.cpp: (_NPN_GetIntIdentifier): We cannot use the hashmap for 0 and -1 since they are the empty value and the deleted value. Instead, keep the identifiers for those two integers in a static array.

WebKitTools:

Reviewed by Darin Adler.

  • added a testGetIntIdentifier() method to TestNetscapePlugIn
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c: (pluginInvoke):

LayoutTests:

Reviewed by Darin Adler.

  • added a test of the behavior of getIntIdentifier with the integers 0 and -1
  • plugins/getintidentifier-special-values-expected.txt: Added.
  • plugins/getintidentifier-special-values.html: Added.
13:43 Changeset [28365] by timothy@apple.com

Reviewed by Darin.

Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations
to return a pointer to the implementation struct instead of a copy of the struct. This changes
all of the callers to dereference the pointer to access the struct fields.

  • Plugins/WebNullPluginView.mm: (-[WebNullPluginView reportFailure]):
  • WebCoreSupport/WebFrameBridge.mm:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): (WebFrameLoaderClient::assignIdentifierToInitialRequest): (WebFrameLoaderClient::dispatchWillSendRequest): (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidReceiveResponse): (WebFrameLoaderClient::willCacheResponse): (WebFrameLoaderClient::dispatchDidReceiveContentLength): (WebFrameLoaderClient::dispatchDidFinishLoading): (WebFrameLoaderClient::dispatchDidFailLoading): (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): (WebFrameLoaderClient::dispatchDidCancelClientRedirect): (WebFrameLoaderClient::dispatchWillPerformClientRedirect): (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): (WebFrameLoaderClient::dispatchWillClose): (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): (WebFrameLoaderClient::dispatchDidReceiveTitle): (WebFrameLoaderClient::dispatchDidCommitLoad): (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): (WebFrameLoaderClient::dispatchDidFailLoad): (WebFrameLoaderClient::dispatchDidFinishDocumentLoad): (WebFrameLoaderClient::dispatchDidFinishLoad): (WebFrameLoaderClient::dispatchDidFirstLayout):
  • WebView/WebView.mm: (WebViewGetResourceLoadDelegateImplementations): (WebViewGetFrameLoadDelegateImplementations): (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
  • WebView/WebViewInternal.h:
13:37 Changeset [28364] by timothy@apple.com

Fix the build, move JSDOMWindow.h to the Copy Generated Headers phase.

13:25 Changeset [28363] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15767
Text decorations do not respect "visibility" property

Only paint decorations if visibility is "visible".

12:35 Changeset [28362] by timothy@apple.com

Reviewed by Brady Eidson.

<rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations
<rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading
<rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit:
WebViewGetResourceLoadDelegateImplementations + 28

  • WebView/WebView.mm: (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the implementation cache. This just prevents us from calling getMethod() multiple times just to zero. (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto. (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct if the WebView is nil. This fixes the crashes. (WebViewGetFrameLoadDelegateImplementations): Ditto.
12:24 Changeset [28361] by alice.liu@apple.com

Removing passing tests

  • platform/win/Skipped:
11:55 Changeset [28360] by sfalken@apple.com

Fix build.

  • WebCore.vcproj/WebCore.vcproj:
11:47 Changeset [28359] by kdecker@apple.com

i Reviewed by Darin.

Fixed: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang

The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would only call into the NPP_SetWindow()
function when we tell the plug-in to draw. This created havoc with Flash because Flash expects the browser to call NPP_SetWindow()
and provide a valid graphics context regardless of whether or not it actually needs to draw.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned down an ASSERT that was too strict. (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow() function.
11:19 Changeset [28358] by sfalken@apple.com

Bump version.

10:57 Changeset [28357] by zimmermann@webkit.org

Reviewed by David.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=15645
Don't allow selectors to interfere with the SVG shadow tree (<use> internal non-exposed tree).

10:44 Changeset [28356] by zimmermann@webkit.org

Rubber stamped by Mark.
Commit missing layout test results from my last commit (fix for bug 15403)

10:09 Changeset [28355] by zecke@webkit.org

2007-12-03 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Mark.

Always include config.h at the beginning of the file.

  • Api/qwebsettings.cpp:
10:09 Changeset [28354] by mitz@apple.com

WebCore:

Reviewed by Adam Roben.

  • fix <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild

Test: fast/dom/Document/replaceChild-null-oldChild.html

  • dom/Document.cpp: (WebCore::Document::canReplaceChild):

LayoutTests:

Reviewed by Adam Roben.

  • test for <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild
  • fast/dom/Document/replaceChild-null-oldChild-expected.txt: Added.
  • fast/dom/Document/replaceChild-null-oldChild.html: Added.
  • fast/dom/Document/resources/replaceChild-null-oldChild.js: Added.
10:05 Changeset [28353] by zecke@webkit.org
  • Avoid crashes by making sure everything is layouted before we start painting. This avoids a crash in Widget::invalidateRect because QPainter::begin would fail
  • The QWebFrame::layout() methods and calls are left untouched because this would be an API decision.

Signed-off-by: Simon

10:02 Changeset [28352] by zecke@webkit.org
  • Implement GraphicsContext::fillRoundedRect similiar to the CoreGraphics implementation only addPath is not called this seems to be only needed for CoreGraphics.

Signed-off-by: Simon

10:01 Changeset [28351] by zecke@webkit.org
  • SubClass QWebPage to handle hide and close events.
  • Forward these events to the InspectorController
  • The other options would have been using an eventFilter on the webpage and making InspectorClient a QObject or creating a QObject Observer.
  • Provide a simple QWebPage* createWindow implementation. This is needed to make FrameLoaderClientQt::dispatchCreatePage stop crashing in the case of the inspector client.

Signed-off-by: Simon

10:01 Changeset [28350] by zecke@webkit.org
  • Coding Style fixes

Signed-off-by: Simon

10:00 Changeset [28349] by zecke@webkit.org
  • Implement the InspectorClient for the Qt port
  • It does not support highlighting of nodes yet
  • Use QRC to open the internal page. The important thing is the '/' in the URL to make WebCore::Document::completeURL behave the way we want.
  • To make the InspectorClient work we will have to mark qrc as secure.

Signed-off-by: Simon

09:58 Changeset [28348] by zecke@webkit.org
  • Allow adding the Inspect ContextMenuItem to our Menu
  • Open the Inspector when Inspect was activated. This requires that we keep the innerNonSharedNode from the HitTest around. This forces us to include <wtf/RefPtr.h> in the private header. It is the first non Qt header but should be okay.

Signed-off-by: Simon

09:57 Changeset [28347] by zecke@webkit.org
  • Add the Developer Extras to the WebAttribute and propagate it to WebCore::Settings. This will enable the Inspect Element menu item
  • CodingStyle fixes in QWebSettings
  • Enable the Developer Extras in the QtLauncher

Signed-off-by: Simon

07:46 Changeset [28346] by darin@apple.com

JavaScriptCore:

Reviewed by Mitz.

Test: fast/js/sparse-array.html

  • kjs/array_instance.cpp: (KJS::ArrayInstance::inlineGetOwnPropertySlot): Check sparse array cutoff before looking in hash map. Can't avoid the branch because we can't look for 0 in the hash. (KJS::ArrayInstance::deleteProperty): Ditto.

LayoutTests:

Reviewed by Mitz.

  • fast/js/resources/sparse-array.js: Added.
  • fast/js/sparse-array-expected.txt: Added.
  • fast/js/sparse-array.html: Added.
04:57 Changeset [28345] by alp@webkit.org

2007-12-03 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Don't delete the decoder if it's already been created. The one we have
is fine.

Cairo image cleanups. Nothing substantial.

Notify ImageObservers where appropriate.

  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::draw): (WebCore::Image::drawPattern):
  • platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/gtk/ImageGtk.cpp:
04:04 Changeset [28344] by hausmann@webkit.org

Fixed crash when rendering form elements with Qt 4.4

QPainter::device() is not guaranteed to return a QWidget, so do the safe "cast" with the
help of QPaintDevice::devType().
Also fall back to the QApplication::style() if we don't have a widget.

02:36 Changeset [28343] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Sam Weinig.

  • Add FrameLoader::shouldTreatSchemeAsLocal which is similar to shouldTreatURLAsLocal.
  • Make use of FrameLoader::shouldTreatSchemeAsLocal in SecurityOrigin and do not hardcode "file". This is needed for the WebKit/qt port to make the Web Inspector work as it using the qrc protocol instead of file.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldTreatSchemeAsLocal):
  • loader/FrameLoader.h:
  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::isSecureTransitionTo):
02:34 Changeset [28342] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Sam Weinig.

Only add applewebdata to the localSchemes when building for the
mac. This is in preparation of adding qrc for the Qt port there
as well and http://bugs.webkit.org/show_bug.cgi?id=15938.

According to Anders applewebdata is not used on the win port.

  • loader/FrameLoader.cpp: (WebCore::localSchemes):
02:33 Changeset [28341] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Sam Weinig.

Fix a typo. It is contains and not containts

  • loader/FrameLoader.cpp:
01:25 Changeset [28340] by mrowe@apple.com

2007-12-03 Mark Rowe <mrowe@apple.com>

Speculative Windows build fix.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
01:19 Changeset [28339] by mrowe@apple.com

2007-12-03 Mark Rowe <mrowe@apple.com>

wx build fix.

  • WebView.cpp: (wxWebView::RunScript):
01:10 Changeset [28338] by ap@webkit.org

Reviewed by Oliver.

Added eventSender.dispatchMessage() - will be used to test Windows keyboard input
in a more fine-grained manner than eventSender.keyDown().

  • DumpRenderTree/win/EventSender.cpp: (getConstantCallback): (dispatchMessageCallback):
01:05 Changeset [28337] by aroben@apple.com

Another speculative Windows build fix

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
00:58 Changeset [28336] by alp@webkit.org

2007-12-03 Alp Toker <alp@atoker.com>

Add another missing DEPENDPATH.

Noticed when fixing the build.

  • WebCore.pro:
00:52 Changeset [28335] by aroben@apple.com

Speculative Windows build fix

  • plugins/win/PluginViewWin.cpp: (WebCore::getString):
00:43 Changeset [28334] by aroben@apple.com

Speculative Windows build fix

  • WebFrame.cpp: (WebFrame::globalContext): (WebFrame::windowObjectCleared):
  • WebScriptDebugger.cpp: (WebScriptDebugger::WebScriptDebugger):
00:13 Changeset [28333] by ggaren@apple.com

Removed unnecessary and possibly incorrect #include from my last
check-in.

  • Api/qwebframe.cpp:
00:10 Changeset [28332] by ggaren@apple.com

GTK Build fix: get globalExec from the right place.

  • WebView/webkitwebframe.cpp:
00:06 Changeset [28331] by ggaren@apple.com

Qt build fix: Get globalExec() from the right place.

00:02 Changeset [28330] by ggaren@apple.com

Build fix: added symbols to the right .exp file.

  • WebCore.base.exp:

12/02/07:

23:53 Changeset [28329] by ggaren@apple.com

Build fix: added an #include.

  • kjs/collector.cpp:
23:43 Changeset [28328] by ggaren@apple.com

JavaScriptCore:

Reviewed by Eric Seidel.

Second step in refactoring JSGlobalObject: moved virtual functions from
Interpreter to JSGlobalObject.


Layout and JS tests pass. SunSpider reports a .7% speedup -- don't
believe his lies.

JavaScriptGlue:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.


  • JSRun.cpp:
  • JSRun.h:
  • JSValueWrapper.cpp: (getThreadGlobalExecState):
  • JavaScriptGlue.cpp: (JSRunCopyGlobalObject): (JSRunEvaluate):

WebCore:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.


Moved virtual ScriptInterpreter functions to Window.

WebKit/mac:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.

  • WebView/WebFrame.mm: (-[WebFrame globalContext]): Use the toRef function instead of manually casting.
21:52 QtWebKitContrib edited by hausmann@webkit.org
(diff)
20:57 Changeset [28327] by darin@apple.com

WebCore:

Reviewed by Mitz.

There were two problems here:

1) Incorrect HTMLCollection behavior led to us trying to insert a

new row inside an existing row instead of next to it. The fix for
this is to make HTMLCollection work better for table-related
collections.

2) HTMLTableRowElement::insertCell would return a bad pointer if

the insertion failed. The code should have failed, but not crashed,
so it's worth fixing that too.

While fixing the HTMLCollection issues, I did some clean-up of that
class and its derived classes.

Test: fast/dom/HTMLTableElement/rows.html
Test: fast/dom/HTMLTableElement/tBodies.html
Test: fast/dom/HTMLTableRowElement/cells.html
Test: fast/dom/HTMLTableRowElement/insertCell.html
Test: fast/dom/HTMLTableSectionElement/rows.html

  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::toJS): Updated because collectionType() was renamed to type().
  • html/HTMLCollection.cpp: (WebCore::HTMLCollection::HTMLCollection): Updated for data member name changes. Also added a protected constructor for use by derived classes that pass in a CollectionInfo. (WebCore::HTMLCollection::CollectionInfo::copyCacheMap): Moved out of the header. (WebCore::isTableSection): Added. (WebCore::HTMLCollection::itemAfter): Renamed from traverseNextItem, because the old name was grammatically incorrect and thus a bit confusing. Changed to operate on Element* instead of Node*, and use 0 to start rather than passing in the base node (required since the base node can be a document, which is not an element). Generalized the code that made NodeChildren not descend into deeper descendants so it can be used for TRCells, TSectionRows, TableTBodies, and TableRows. Reformatted the switch statement and got rid of the "found" boolean since we can just return when we find something. Got rid of the default case, and instead listed all the enum values. Also changed to use a for loop for clarity. (WebCore::HTMLCollection::calcLength): Updated for itemAfter changes. (WebCore::HTMLCollection::item): Ditto. (WebCore::HTMLCollection::nextItem): Ditto. (WebCore::HTMLCollection::checkForNameMatch): Updated to take an Element instead of a Node pointer. (WebCore::HTMLCollection::namedItem): More of the same. (WebCore::HTMLCollection::updateNameCache): Ditto. (WebCore::HTMLCollection::namedItems): Ditto. (WebCore::HTMLCollection::nextNamedItem): Ditto. (WebCore::HTMLCollection::tags): Ditto.
  • html/HTMLCollection.h: Added a type FormElements, so that the HTMLFormCollection would not have a type of DocImages, which is what it previously did. Changed the base parameter to be a PassRefPtr to make it clear we take ownership of it. Added a comment explaining why we should change the name CollectionInfo. Made a lot more members private instead of protected. Renamed traverseNextItem to itemAfter. Changed most functions to take Element* instead of Node*.
  • html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::formCollectionInfo): Added. (WebCore::HTMLFormCollection::HTMLFormCollection): Updated to pass collection info into the base class. (WebCore::HTMLFormCollection::calcLength): Updated to use base() so we don't need to get at m_base directly. (WebCore::HTMLFormCollection::item): Same, but for info(). (WebCore::HTMLFormCollection::getNamedItem): Removed unused first argument. (WebCore::HTMLFormCollection::getNamedFormItem): Got rid of unneeded checks that the base is still an element and still a form, since that's guaranteed. (WebCore::HTMLFormCollection::nextItem): Use info(). (WebCore::HTMLFormCollection::nextNamedItemInternal): Node instead of Element, some name changes. (WebCore::HTMLFormCollection::namedItem): Update for changes elsewhere. (WebCore::HTMLFormCollection::nextNamedItem): Ditto, also rewrote loop to be much simpler. (WebCore::HTMLFormCollection::updateNameCache): More of the same.
  • html/HTMLFormCollection.h: Changed constructor to take an HTMLFormElement, using a PassRefPtr to communicate transfer of ownership. Made everything private instead of protected. Removed unneeded override of firstItem. Made getNamedItem and nextNamedItemInternal non-virtual. Removed unused first argument of getNamedItem. Added declaration of formCollectionInfo.
  • html/HTMLNameCollection.cpp: (WebCore::HTMLNameCollection::HTMLNameCollection): Updated to pass collection info into the base class. (WebCore::HTMLNameCollection::itemAfter): Reformatted a bit and changed into a for loop.
  • html/HTMLNameCollection.h: Updated for name changes. Made function private instead of public. Used PassRefPtr in constructor.
  • html/HTMLOptionsCollection.cpp: (WebCore::HTMLOptionsCollection::HTMLOptionsCollection): Updated to pass collection info into the base class. (WebCore::HTMLOptionsCollection::add): Updated for public/private changes in the base class. (WebCore::HTMLOptionsCollection::selectedIndex): Ditto. (WebCore::HTMLOptionsCollection::setSelectedIndex): Ditto. (WebCore::HTMLOptionsCollection::setLength): Ditto.
  • html/HTMLOptionsCollection.h: Changed constructor parameter to be a PassRefPtr.
  • html/HTMLTableRowElement.cpp: (WebCore::HTMLTableRowElement::insertCell): Changed code to use RefPtr and PassRefPtr since this creates a new object. This alone fixed the crash. Also cleaned up logic a bit to be more readable.
  • html/HTMLTableRowElement.h: Changed insertCell to return a PassRefPtr. Also reordered functions a bit to make things a little more logical and removed the unused ncols data member.
  • html/HTMLTableSectionElement.cpp: (WebCore::HTMLTableSectionElement::rows): Pass TSectionRows, not TableRows. This mistake was harmless before because TableRows and TSectionRows were handled identically inside HTMLCollection, but that is no longer the case with this fix.
  • bindings/scripts/CodeGeneratorJS.pm: Add an include to cope with the fact that HTMLOptionsCollection no longer includes HTMLOptionElement. I don't think this really should be a special case -- might be worth returning later to see if this can be optimized.

LayoutTests:

Reviewed by Mitz.

  • fast/dom/HTMLTableElement/resources: Added.
  • fast/dom/HTMLTableElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableElement/resources/rows.js: Added.
  • fast/dom/HTMLTableElement/resources/tBodies.js: Added.
  • fast/dom/HTMLTableElement/rows-expected.txt: Added.
  • fast/dom/HTMLTableElement/rows.html: Added.
  • fast/dom/HTMLTableElement/tBodies-expected.txt: Added.
  • fast/dom/HTMLTableElement/tBodies.html: Added.
  • fast/dom/HTMLTableRowElement: Added.
  • fast/dom/HTMLTableRowElement/cells-expected.txt: Added.
  • fast/dom/HTMLTableRowElement/cells.html: Added.
  • fast/dom/HTMLTableRowElement/insertCell-expected.txt: Added.
  • fast/dom/HTMLTableRowElement/insertCell.html: Added.
  • fast/dom/HTMLTableRowElement/resources: Added.
  • fast/dom/HTMLTableRowElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableRowElement/resources/cells.js: Added.
  • fast/dom/HTMLTableSectionElement: Added.
  • fast/dom/HTMLTableSectionElement/resources: Added.
  • fast/dom/HTMLTableSectionElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableSectionElement/resources/rows.js: Added.
  • fast/dom/HTMLTableSectionElement/rows-expected.txt: Added.
  • fast/dom/HTMLTableSectionElement/rows.html: Added.
20:41 Changeset [28326] by darin@apple.com
  • Scripts/do-webcore-rename: More planned renaming.
17:05 Changeset [28325] by zimmermann@webkit.org

Reviewed by Adam.

RenderSVGViewportContainer sets wrong width/height.
Share code with RenderSVGContainer in a central calcBounds() function.

Fixes:

15:40 Changeset [28324] by weinig@apple.com

Rubber stamped by Anders.

Use [NSURL absoluteString] instead of [NSURL description] in order to get
more uniform results cross platform.

  • DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[NSURL _drt_descriptionSuitableForTestResult]):
15:32 Changeset [28323] by weinig@apple.com

Rubber stamped by Niko.

Rename FrameLoaderDelegate.h/cpp to FrameLoadDelegate.h/cpp.

  • DumpRenderTree/win/DumpRenderTree.cpp:
  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/win/FrameLoadDelegate.cpp: Copied from DumpRenderTree/win/FrameLoaderDelegate.cpp.
  • DumpRenderTree/win/FrameLoadDelegate.h: Copied from DumpRenderTree/win/FrameLoaderDelegate.h.
  • DumpRenderTree/win/FrameLoaderDelegate.cpp: Removed.
  • DumpRenderTree/win/FrameLoaderDelegate.h: Removed.
12:20 Changeset [28322] by beidson@apple.com

Reviewed by Darin

databaseChanged notifications were being sent out on the database thread - they need to be on the main thread
like all other notifications we send out!

  • platform/SecurityOriginData.cpp: (WebCore::SecurityOriginData::copy): Add a deep copy method, for when an object thread hops
  • platform/SecurityOriginData.h:
  • storage/DatabaseTracker.cpp: (WebCore::notificationMutex): (WebCore::notificationQueue): (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged): Add the origin/name pair to a queue (WebCore::DatabaseTracker::scheduleForNotification): Schedule to deliver this queue of notifications on the main thread (WebCore::DatabaseTracker::notifyDatabasesChanged): Deliver all notifications in the queue
  • storage/DatabaseTracker.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::postflightAndCommit): scheduleNotifyDatabaseChanged() instead of "notify now!" (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
12:18 WebKit Team edited by rwlbuis@webkit.org
(diff)
11:32 Changeset [28321] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=16002
Load SVG (and other) UA StyleSheets dynamically when needed

Load svg sheet when needed.

06:13 QtWebKitTodo edited by hausmann@webkit.org
(diff)
04:59 Changeset [28320] by mrowe@apple.com

Speculative Windows build fix.

04:02 Changeset [28319] by zimmermann@webkit.org

Rubber stamped by Eric.

Move platform/graphics/svg to graphics/svg as discussed on webkit-dev.
Updated all project files.

03:22 Changeset [28318] by zimmermann@webkit.org

Reviewed by Maciej.
Fix IDL lookup in subdirectories. Missing 'my' prefix for the 'thisDir' variable.

03:08 BuildingGtk edited by alp@atoker.com
Mention the Debian WebKit packaging team and its mailing lists (diff)
00:32 Changeset [28317] by aroben@apple.com

Add another screenshot

  • blog-files/InspectElementMenu.png: Added.
00:16 Changeset [28316] by alp@webkit.org

2007-12-01 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

Wrap type definitions in webkitdefines.h with G_BEGIN_DECLS, which
takes care of extern "C".

Introduce a webkit.h convenience header.

Remove another left-over from the old API.

00:07 Changeset [28315] by aroben@apple.com

Add some Inspector screenshots for an upcoming blog post

Rubberstamped by Mark Rowe.

  • blog-files/InspectorCSSEditing.png: Added.
  • blog-files/InspectorFonts.png: Added.
Note: See TracTimeline for information about the timeline view.