22:48 Changeset [29711] by eric@webkit.org

Reviewed by Nikolas & Oliver.

Tested by svg/custom/svg-features.html

  • dom/DOMImplementation.cpp: (WebCore::isSVG10Feature): use ENABLE(SVG_*) conditionals (WebCore::isSVG11Feature): use ENABLE(SVG_*) conditionals
22:18 Changeset [29710] by ggaren@apple.com


Reviewed by Maciej Stachowiak.

Fixed http://bugs.webkit.org/show_bug.cgi?id=16909
REGRESSION: Amazon.com crash (ActivationImp)

(and a bunch of other crashes)

Plus, a .7% SunSpider speedup to boot.

Replaced the buggy currentExec and savedExec mechanisms with an
explicit ExecState stack.

  • kjs/collector.cpp: (KJS::Collector::collect): Explicitly mark the ExecState stack.

(KJS::Collector::reportOutOfMemoryToAllExecStates): Slight change in
behavior: We no longer throw an exception in any global ExecStates,
since global ExecStates are more like pseudo-ExecStates, and aren't
used for script execution. (It's unclear what would happen if you left
an exception waiting around in a global ExecState, but it probably
wouldn't be good.)


Reviewed by Maciej Stachowiak.

Adapted WebCore to the fix for http://bugs.webkit.org/show_bug.cgi?id=16909
REGRESSION: Amazon.com crash (ActivationImp)

  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::~KJSProxy): No convenient way to make this assertion anymore. (It wasn't firing for anyone, anyway, so it's no big loss.)
  • bindings/objc/WebScriptObject.mm: (+[WebScriptObject throwException:]): Use the ExecState stack, instead of currentExec. (-[WebScriptObject setException:]): ditto. Also, a slight change in behavior: If no ExecStates are active, we no longer throw an exception in the global ExecState. The JavaScriptCore ChangeLog explains why. This also matches the behavior of +throwException.


Layout test for http://bugs.webkit.org/show_bug.cgi?id=16909
REGRESSION: Amazon.com crash (ActivationImp)

  • fast/js/exec-state-marking-expected.txt: Added.
  • fast/js/exec-state-marking.html: Added.
16:52 Changeset [29709] by zimmermann@webkit.org

Not reviewed. Try to fix Qt build, after the rmdir() fixes.

16:49 Changeset [29708] by zimmermann@webkit.org

Not reviewed. Another Wx build fix.

16:30 Changeset [29707] by darin@apple.com
  • try to fix Qt build
  • platform/qt/FileSystemQt.cpp: (WebCore::deleteEmptyDirectory): QDir::root().rmdir() instead of QDir::rmdir().
16:05 Changeset [29706] by zimmermann@webkit.org

Not reviewed. Yet another win/gtk build fix.

15:43 Changeset [29705] by zimmermann@webkit.org

Not reviewed. Another build fix for Gtk/Linux & Wx/Mac.

15:26 Changeset [29704] by zimmermann@webkit.org

Not reviewed. Build fix for Qt/Gtk & Wx.

15:16 Changeset [29703] by zimmermann@webkit.org

Not reviewed. Build fix for ports that don't build SVG: wx.

15:12 Changeset [29702] by zimmermann@webkit.org

Not reviewed. (First) Build fix for Qt/Gtk.

15:06 Changeset [29701] by alp@webkit.org

2008-01-21 Jan Michael Alonzo <jmalonzo@unpluggable.com>

Reviewed by Alp Toker.

Get errors when cross-compile webkit-gtk

14:56 Changeset [29700] by zimmermann@webkit.org

Reviewed by Eric. Older parts reviewed by Dan.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=16880 (SVGCSSFontFace should die, instead integrate within the FontCache.)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=16784 (In-document fonts work only as the first child to font-face-src)

Proper integration of SVG Fonts within the existing custom font concept, removing the need for a custom SVGCSSFontFace.
Integrate within the CSSFontFaceSource logic for caching support, as well as the framework for external SVG Fonts.

Proper handling of missing glyphs, using <missing-glyph> element. If that is not specified in a font, fallback to non-SVG font rendering.

14:43 Changeset [29699] by alp@webkit.org

2008-01-21 Alp Toker <alp@atoker.com>

GTK+ build fix for breakage introduced in r29698.

  • WebCoreSupport/ChromeClientGtk.h:
14:23 Changeset [29698] by darin@apple.com


Reviewed by John Sullivan.

  • fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
  • remove the default database quota setting
  • simplify the quota-related client calls by merging the one for a new database with the one for an existing database, adding a feature where you can get details about a database being created using the same functions that work on the other databases, and removing the parameters and return values, instead having clients use a function to set the quota
  • fix unsafe multi-thread access to the database tracker's quota map
  • fix bug in deleteAllDatabases where it would iterate a HashMap while modifying it

The tracker database is now only created when we set the quota for a database origin.
Thus asking for info about databases won't cause anything to be written to disk.

  • WebCore.base.exp: Updated.
  • bindings/js/GCController.cpp: Added an #if to get rid of an unused function warning.
  • page/Chrome.cpp: Removed database-related functions. There's no problem having the code deal directly with the client.
  • page/Chrome.h: Ditto. Also made Chrome inherit from Noncopyable.
  • page/ChromeClient.h: Replaced the two quota-related functions with a single one. The details about the state of databases in the origin are now available by asking for database details. There's also no need to pass the security origin, since it's easy to get that from the frame's document.
  • page/Settings.cpp: Removed the default quota setting.
  • page/Settings.h: Ditto.
  • platform/FileSystem.h: Added deleteEmptyDirectory.
  • platform/gtk/FileSystemGtk.cpp: (WebCore::deleteEmptyDirectory): Added.
  • platform/posix/FileSystemPOSIX.cpp: (WebCore::deleteEmptyDirectory): Added.
  • platform/qt/FileSystemQt.cpp: (WebCore::deleteEmptyDirectory): Added.
  • platform/win/FileSystemWin.cpp: (WebCore::deleteEmptyDirectory): Added.
  • platform/wx/FileSystemWx.cpp: (WebCore::deleteEmptyDirectory): Added placeholder.
  • storage/DatabaseDetails.h: Removed the isValid() function since its name is confusing -- we removed our other isValid() functions. For the few callers that need this, it's fine to just check name().isEmpty(). Made the member functions all const.
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::DatabaseTracker): Removed m_defaultQuota initialization. Added m_proposedDatabase and m_thread. (WebCore::DatabaseTracker::setDatabaseDirectoryPath): Got rid of code that would open the tracker database here. This might slightly speed up launch time, since we won't do the I/O until we have to, and before we were actually creating an SQL database in this code that's run when we go to the first webpage. (WebCore::DatabaseTracker::trackerDatabasePath): Added. (WebCore::DatabaseTracker::openTrackerDatabase): Added a boolean parameter telling this function whether to create the database. Made this function safe to call if the database is already open. Also made the function fail quietly if the path has not been set yet. (WebCore::DatabaseTracker::canEstablishDatabase): Got rid of the call to the establishEntryForOrigin function. The origin is now put in the tracker database when the quota is set to a non-zero value. When judging if there's enough space for the new database, require at least one byte even if estimatedSize is 0, and check for overflow. Also added code here to populate the origins map, which guarantees it will be ready when the database uses it on another thread later. Also changed this to call the new ChromeClient function. (WebCore::DatabaseTracker::hasEntryForDatabase): Added code to open the tracker database, since that's no longer done by setDatabaseDirectoryPath. (WebCore::DatabaseTracker::originPath): Added. (WebCore::DatabaseTracker::fullPathForDatabase): Added code so that this will return a null string for the proposed database if called from within the ChromeClient function. Also switched from empty string to null string for the error cases. (WebCore::DatabaseTracker::populateOrigins): Added code to open the tracker database. (WebCore::DatabaseTracker::databaseNamesForOrigin): Ditto. (WebCore::DatabaseTracker::detailsForNameAndOrigin): Ditto. Also added code that will return the details of the proposed database if called from within the ChromeClient function. This is how the client can learn of the display name and the estimated size of the new database. (WebCore::DatabaseTracker::setDatabaseDetails): Added code to open the tracker database. (WebCore::DatabaseTracker::quotaForOrigin): Made this code OK to call on a non-main thread by using m_quotaMapGuard to guard access to the map. Other code runs on the main thread only, and only functions that write to the map use the lock. (WebCore::DatabaseTracker::setQuota): Changed this function so it can insert the initial quota as well as updating an existing quota. Added locking since this function modifies the quota map. Added code to open the tracker database. Added an early exit if the quota is already correct, which is guarantees that if you set a quota to 0 it won't trigger creation of a tracker database. (WebCore::DatabaseTracker::addDatabase): Added code to open the tracker database. (WebCore::DatabaseTracker::deleteAllDatabases): Made a copy of the quota map before iterating it to find all the origins. This fixes a problem with the old code where it would modify the map while iterating it, which gives assertions in debug builds and unpredictable results. (WebCore::DatabaseTracker::deleteOrigin): Replaced deleteDatabasesWithOrigin with this function. Added code to open the tracker database if needed. Added code to delete the origin from the tracker database, and to close the tracker database and delete files and directories as needed if we are deleting the final origin. (WebCore::DatabaseTracker::deleteDatabase): Added code to open the tracker database if needed.
  • storage/DatabaseTracker.h: Renamed databasePath to databaseDirectoryPath for clarity, including the data member, and the getter and setter functions. Replaced deleteDatabasesWithOrigin with deleteOrigin. Removed the functions dealing with default origin quota. There is no default any more; origins start with no quota and the client must set a quota. Added trackerDatabasePath and originPath helper functions. Added a boolean parameter to openTrackerDatabase to tell it whether to create the database or not. Removed the establishEntryForOrigin function. Renamed m_originQuotaMap to just m_quotaMap, and added m_quotaMapGuard. Added a QuotaMap typedef. Added m_proposedDatabase, which holds the origin and details for the current proposed database during the client callback function that must decide whether to grant quota. Added a m_thread data member for debugging use to assert if functions that can only be called on a single thread are misused.
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Changed to call the new exceededDatabaseQuota function instead of the old one.
  • svg/graphics/SVGImageEmptyClients.h: Updated for the change to ChromeClient.


Reviewed by John Sullivan.

  • updated for changes to database functions
  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::exceededDatabaseQuota):
  • WebCoreSupport/ChromeClientGtk.h:
  • WebView/webkitprivate.cpp: (webkit_init):


Reviewed by John Sullivan.

  • fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
  • add a missing export of WebDatabaseExpectedSizeKey
  • implement deleteOrigin: and remove deleteDatabasesWithOrigin:
  • Storage/WebDatabaseManager.mm: (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Updated to check for a null name instead of calling isValid(). (-[WebDatabaseManager deleteOrigin:]): Implemented. (WebKitInitializeDatabasesIfNecessary): Updated for name change.
  • Storage/WebDatabaseManagerPrivate.h: Removed deleteDatabasesWithOrigin:.
  • WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::exceededDatabaseQuota): Replaced the two different client functions we had before with a single one.
  • WebKit.exp: Added missing export for WebDatabaseExpectedSizeKey.
  • WebView/WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
  • WebView/WebPreferences.m: (+[WebPreferences initialize]): Removed the default for WebKitDefaultDatabaseQuotaKey.
  • WebView/WebPreferencesPrivate.h: Removed defaultDatabaseQuota and setDefaultDatabaseQuota:.
  • WebView/WebUIDelegatePrivate.h: Replaced the two different database quota delegate methods we had before with a single one.
  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): Removed the code to set the default database origin quota in WebCore::Settings based on WebPreferences.
  • WebView/WebViewInternal.h: Removed delegate method dispatch functions for unusual types of parameters that the database UI delegate methods had before.


Reviewed by John Sullivan.

  • updated for changes to ChromeClient database functions
  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::exceededDatabaseQuota):
  • WebCoreSupport/ChromeClientQt.h:


Reviewed by John Sullivan.

  • fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
  • fix incorrect value for WebDatabaseDisplayNameKey in header

  • Interfaces/IWebDatabaseManager.idl: Renamed detailsForDatabaseWithOrigin to detailsForDatabase. Replaced deleteDatabasesWithOrigin with deleteOrigin. Renamed deleteDatabaseWithOrigin to deleteDatabase. Fixed incorrect value for WebDatabaseDisplayNameKey.
  • Interfaces/IWebPreferencesPrivate.idl: Removed defaultDatabaseQuota and setDefaultDatabaseQuota.
  • Interfaces/IWebUIDelegatePrivate.idl: Replaced the two database quota functions with a single one.
  • WebChromeClient.cpp: (WebChromeClient::exceededDatabaseQuota): Replaced the two database quota functions with a single one.
  • WebChromeClient.h: Ditto.
  • WebDatabaseManager.cpp: (WebDatabaseManager::detailsForDatabase): Changed to check for a name of null to detect a nonexistent database rather than using isValid. (WebDatabaseManager::deleteOrigin): Updated for name change (actually a semantic change too, but both have the same name). (WebDatabaseManager::deleteDatabase): Updated for name change. (WebKitSetWebDatabasesPathIfNecessary): Ditto.
  • WebDatabaseManager.h: Updated for name changes.
  • WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
  • WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Removed the default for WebKitDefaultDatabaseQuotaKey.
  • WebPreferences.h: Removed defaultDatabaseQuota and setDefaultDatabaseQuota.
  • WebView.cpp: (WebView::notifyPreferencesChanged): Removed the code to set the default database origin quota in WebCore::Settings based on IWebPreferencesPrivate.


Reviewed by John Sullivan.

  • updated for changes to ChromeClient database functions
  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClientWx::exceededDatabaseQuota):
  • WebKitSupport/ChromeClientWx.h:
13:52 Changeset [29697] by zimmermann@webkit.org

Rubber stamped by Oliver.
Add missing layout test results.

13:19 Changeset [29696] by hyatt@apple.com


Fix for http://bugs.webkit.org/show_bug.cgi?id=16935

Fix a bug in layers where the positioned ancestor was being computed incorrectly (the root should not
automatically be included).

Reviewed by olliej

Added fast/layers/positioned-inside-root-with-margins.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::stackingContext): (WebCore::RenderLayer::enclosingPositionedAncestor):



Reviewed by olliej

  • fast/layers/positioned-inside-root-with-margins.html: Added.
  • platform/mac/fast/layers/positioned-inside-root-with-margins-expected.checksum: Added.
  • platform/mac/fast/layers/positioned-inside-root-with-margins-expected.png: Added.
  • platform/mac/fast/layers/positioned-inside-root-with-margins-expected.txt: Added.
11:00 Changeset [29695] by adele@apple.com

Adding media/{audio,video}-controls-rendering.html back to the skipped list, since they're still failing on some machines.

  • platform/win/Skipped:
08:59 Changeset [29694] by darin@apple.com

Reviewed by Mitz and Adam.

  • Scripts/svn-create-patch: Sort ChangeLog files first. Also slightly improved the sorting speed by doing all sort criteria in a single pass instead of three sorts.
03:37 QtWebKitContrib edited by hausmann@webkit.org
03:06 Changeset [29693] by hausmann@webkit.org

Benjamin Meyer <bmeyer@trolltech.com>

Change QWebHistoryInterface::addHistoryEntry() from const to non-const

03:06 Changeset [29692] by hausmann@webkit.org

Adam Treat <treat@kde.org>

  • Don't leak the d-pointer in QWebSettings.
02:47 Changeset [29691] by hausmann@webkit.org

Simon Hausmann <hausmann@webkit.org>

Update the WebKit version number from WebKit/win/WebKit.vcproj/VERSION.

This has the fortunate side-effect that gmail sends us sensible HTML/JS again :)

02:41 Changeset [29690] by hausmann@webkit.org

Fix KURL to QUrl conversion.

Stick to the encoded version of the URL and in addition to KURL we encode the
characters mentioned in section 2.4.3 of RFC 2396 as QUrl requires these, too.

This fixes fast/css/import-rule-regression-11590.html,
fast/css/import-style-update.html, svg/hixie/processing-model/003.xml and

02:40 Changeset [29689] by hausmann@webkit.org

Fix focus chain handling and cycling through focusable objects (links) using tab/backtab.

  • Fix GraphicsContext::drawFocusRing to also draw single focus rects.
  • Implemented QWebPage::focusNextPrevChild by sending fake tab/shift-tab events and make the return value depend on whether we successfully determined a focusable node or not.
  • Changed QWebView::focusNextPrevChild() to call the base QWidget implementation correctly if we could not handle the focus chain ourselves.
  • Changed the focus policy of QWebView to correctly use WheelFocus instead of ClickFocus.
  • Made ChromeClientQt::canTakeFocus() and takeFocus() dummy method since they are only used to control the situation of stepping out of the focus chain inside the page.
  • Made inclusion of links in the focus chain configurable through QWebSettings::LinksIncludedInFocusChain. The layout tests expect this to be disabled but for the user it seems sensible to have it on by default, hence the default in qwebsettings.cpp
02:40 Changeset [29688] by hausmann@webkit.org

Fix access key support and fast/forms/legend-access-key.html

SVN revision 26664 changed the default access key for the non-mac build to Alt
while this test relies on Ctrl.

02:39 Changeset [29687] by hausmann@webkit.org

Fix error reporting when parsing X(HT)ML fragments.

We use the regular XMLTokenizer write()/.../end() sequence to parse those
fragments, but we should not report any parsing errors inline inside the
content. Instead we should just return the error and the DOM layer will take
care of throwing an exception.

This fixes fast/innerHTML/innerHTML-changing-document-properties.xhtml

01:10 Changeset [29686] by hausmann@webkit.org

Holger Freyther <holger.freyther@trolltech.com>

Fix some issues with redirections.

  • Ensure that we deliver the response to the ResourceHandleClient only once by setting m_responseSent back to false only before calling start() for the redirection
  • Added 307 as another HTTP status code that causes a redirection after POST to become get, just like in MainResourceLoader::isPostOrRedirectAfterPost
  • Also set the HTTP method on the ResourceRequest to GET before passing it to willSendRequest.
  • willSendRequest's newRequest argument is actually an in/out argument and could be modified in theory, so set m_request accordingly after the call.
01:09 Changeset [29685] by hausmann@webkit.org

Holger Freyther <holger.freyther@trolltech.com>

Fixed WebCore::cookies() to return all cookies, not only the first one.

Fixes login into mail.yahoo.com.

01:01 Changeset [29684] by antti@apple.com

Try to make the test less timing dependent to fix occasional test bot failures.

  • media/video-seek-past-end-paused-expected.txt:
  • media/video-seek-past-end-paused.html:
00:36 Mobile edited by mrowe@apple.com


23:07 Changeset [29683] by alp@webkit.org

2008-01-20 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Attach the widget's style to its window and set the background to the
base background to avoid black flicker when repainting. This is
similar to what GtkTextView does.

  • WebView/webkitwebview.cpp:
21:34 Changeset [29682] by mrowe@apple.com

Remove code bracketed by REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM as we are no longer interested in supporting Safari 2 with TOT WebKit.

Reviewed by Dan Bernstein.

  • WebKit.xcodeproj/project.pbxproj: Don't define REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM as it is no longer used.
  • mac/WebView/WebView.mm:

(+[WebView initialize]):

20:30 Changeset [29681] by oliver@apple.com

Fix http://bugs.webkit.org/show_bug.cgi?id=16816 , rdar://problem/5682985

Reviewed by Mitz

Correctly trigger willPerformDragDestinationAction when a drop causes a
load to occur. The logic that originally did this was lost during the
great drag migration of '07.

20:04 Changeset [29680] by mitz@apple.com
  • update Tiger-specific results for r29667
  • platform/mac/editing/pasteboard/paste-RTFD-expected.txt:
18:01 Changeset [29679] by mitz@apple.com

Reviewed by Darin Adler.

Assertion failure in FrameView::scheduleRelayout (!m_frame->document()
!m_frame->document()->inPageCache()) when going back from a page with a focused popup
  • dom/Document.cpp: (WebCore::Document::setFocusedNode): Bail out if the document is in the page cache. Documents in the back/forward cache are "frozen" and should not change state.
15:18 Changeset [29678] by weinig@apple.com


Reviewed by Sam Weinig.

Fix for http://bugs.webkit.org/show_bug.cgi?id=16775

We now use frame()->loader()->url() for postMessage, preventing a
malicious sender from overwriting the uri property (using a <base> tag,
for example). Also, use frame->loader()->url().host() instead of
instead of document()->SecurityOrigin()->domain() to reflect a recent
clarification in the HTML5 spec.

Tests: http/tests/security/postMessage/domain-affected-by-document-domain.html


  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):


Reviewed by Sam Weinig.

Tests for http://bugs.webkit.org/show_bug.cgi?id=16775

  • http/tests/security/postMessage: Added.
  • http/tests/security/postMessage/domain-and-uri-unaffected-by-base-tag-expected.txt: Added.
  • http/tests/security/postMessage/domain-and-uri-unaffected-by-base-tag.html: Added.
  • http/tests/security/postMessage/domain-unaffected-by-document-domain-expected.txt: Added.
  • http/tests/security/postMessage/domain-unaffected-by-document-domain.html: Added.
  • http/tests/security/postMessage/javascript-page-still-sends-domain-expected.txt: Added.
  • http/tests/security/postMessage/javascript-page-still-sends-domain.html: Added.
  • http/tests/security/postMessage/resources: Added.
  • http/tests/security/postMessage/resources/javascript-post-message-sender.html: Added.
  • http/tests/security/postMessage/resources/post-message-listener.html: Added.
13:22 Changeset [29677] by antti@apple.com


Reviewed by Adele.

Fix <rdar://problem/5695451>
Middle part of the media timeline missing on Windows if load failed

Add some null checking to avoid getting garbage results from the functions.

  • platform/graphics/MediaPlayer.cpp:
  • platform/graphics/win/QTMovieWin.cpp: (QTMovieWin::duration): (QTMovieWin::currentTime): (QTMovieWin::setCurrentTime): (QTMovieWin::maxTimeLoaded):


Reviewed by Adele.

Update test so it checks the state of time related properties after the failure.

  • media/video-error-does-not-exist-expected.txt:
  • media/video-error-does-not-exist.html:


20:53 Changeset [29676] by alp@webkit.org

Fix 'Reviewed by' typo in ChangeLog

20:49 Changeset [29675] by alp@webkit.org

2008-01-19 Alp Toker <alp@atoker.com>

Reviewed by Alp Toker.

Use of GST_PLUGIN_DEFINE_STATIC results in a module-level constructor

Epiphany/Webkit fails to start due to initializing threads twice

Don't call GST_PLUGIN_DEFINE_STATIC() as it performs g_thread_init()
in the global initializer, breaking subsequent calls to
g_thread_init() in applications.

  • platform/graphics/gtk/VideoSinkGStreamer.cpp:
20:25 WikiStart edited by webkit@mattlilek.com
Remove spam (diff)
10:51 Changeset [29674] by mrowe@apple.com

Allow the --http flag to run-webkit-tests to override
the default behaviour of disabling HTTP tests for Qt,
Gtk and Wx.

Reviewed by Alp Toker.

  • Scripts/run-webkit-tests:
10:34 Changeset [29673] by alp@webkit.org

2008-01-19 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Remove any fragment part from the URL to be requested just before
passing it to curl, otherwise curl sends it as part of the HTTP/local
file request, causing page loads to fail.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::startJob):
10:27 Changeset [29672] by mrowe@apple.com

Set svn:eol-style=native on .idl and .c files that were missed in r29663.

10:10 Changeset [29671] by mrowe@apple.com

2008-01-19 Mark Rowe <mrowe@apple.com>

Fix inconsistent line endings and set svn:eol-style=native
on IDL files that did not have it set.

  • Interfaces/IGEN_DOMObject.idl:
07:46 Changeset [29670] by alp@webkit.org

2008-01-19 Jan Michael Alonzo <jmalonzo@unpluggable.com>

Reviewed by Alp Toker.

Add svg foreign object and svg experimental to the GTK+/autotools
build system.

05:58 Changeset [29669] by alp@webkit.org

2008-01-19 Christian Dywan <christian@imendio.com>

Reviewed by Alp Toker.

[GTK] ChromeClientGtk is incompete

Implement these functions.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::windowRect): (WebKit::ChromeClient::pageRect): (WebKit::ChromeClient::scaleFactor): (WebKit::ChromeClient::focus): (WebKit::ChromeClient::unfocus): (WebKit::ChromeClient::canTakeFocus): (WebKit::ChromeClient::takeFocus): (WebKit::ChromeClient::canRunBeforeUnloadConfirmPanel):
02:43 Changeset [29668] by ddkilzer@apple.com

<rdar://problem/5695344> check-for-global-initializers script never checks any object files

Reviewed by Darin.

We now touch a check-for-global-initializers.timestamp file in
the TARGET_TEMP_DIR directory to determine when new object files
have been compiled and thus need to be checked. If the timestamp
file doesn't exist, all object files will be checked.

Previously the modification time of the "executable" (the
framework binary, e.g., WebKit.framework/WebKit) was used, but
since this was the last file modified at the end of the compile
phase, no object files would ever get checked!

Also added JSCustomSQLTransactionCallback.o to the list of files
since it has static initializers in Debug builds of WebCore.

  • Scripts/check-for-global-initializers:
02:12 Changeset [29667] by mitz@apple.com


Reviewed by Maciej Stachowiak.

  • fix <rdar://problem/5645813> CrashTracer: [USER] 6 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::destroy + 116

Test: editing/selection/inconsistent-in-removeChildNode.html

  • editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved): If the selection base or extent are not visible any more, adjust the selection.


Reviewed by Maciej Stachowiak.

  • test and updated results for <rdar://problem/5645813> CrashTracer: [USER] 6 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::destroy + 116
  • editing/selection/inconsistent-in-removeChildNode.html: Added.
  • platform/mac-leopard/editing/pasteboard/paste-RTFD-expected.txt:
  • platform/mac-leopard/editing/selection: Added.
  • platform/mac-leopard/editing/selection/inconsistent-in-removeChildNode-expected.checksum: Added.
  • platform/mac-leopard/editing/selection/inconsistent-in-removeChildNode-expected.png: Added.
  • platform/mac/editing/deleting/collapse-whitespace-3587601-fix-expected.txt:
  • platform/mac/editing/deleting/delete-3608462-fix-expected.txt:
  • platform/mac/editing/deleting/delete-4083333-fix-expected.txt:
  • platform/mac/editing/deleting/delete-leading-ws-001-expected.txt:
  • platform/mac/editing/deleting/delete-line-011-expected.txt:
  • platform/mac/editing/execCommand/find-after-replace-expected.txt:
  • platform/mac/editing/execCommand/paste-1-expected.txt:
  • platform/mac/editing/execCommand/paste-2-expected.txt:
  • platform/mac/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
  • platform/mac/editing/selection/inconsistent-in-removeChildNode-expected.txt: Added.
  • platform/mac/editing/selection/move-between-blocks-no-001-expected.txt:
  • platform/mac/editing/selection/replace-selection-1-expected.txt:
  • platform/mac/editing/style/remove-underline-across-paragraph-expected.txt:
  • platform/mac/editing/style/remove-underline-across-paragraph-in-bold-expected.txt:
  • platform/mac/editing/style/remove-underline-after-paragraph-in-bold-expected.txt:
  • platform/mac/editing/style/remove-underline-expected.txt:
  • platform/mac/editing/style/remove-underline-in-bold-expected.txt:
  • platform/mac/editing/style/unbold-in-bold-expected.txt:
01:43 Changeset [29666] by oliver@apple.com

Build fix for --svg-foreign-object path

Reviewed by Eric Seidel


23:49 Changeset [29665] by alp@webkit.org

2008-01-18 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

[GTK] REGRESSION: keyboard cursor doesn't blink

[GTK] REGRESSION: tab focusing doesn't work

  • WebView/webkitwebview.cpp: (webkit_web_view_focus_in_event): Added. Set the active frame. (webkit_web_view_class_init):
22:01 Changeset [29664] by slewis@apple.com

2008-01-18 Stephanie <slewis@apple.com>

Reviewed by Oliver.

Workaround for rdar:5695848. Set mime_type for local files based on file extension.

  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::doUpdateResourceResponse):
21:49 Changeset [29663] by darin@apple.com

set eol-style to native on tons of files to head off future mixed-line-ending problems

17:44 Changeset [29662] by adele@apple.com

Reviewed by Oliver.

Fix for <rdar://5683527> media/{audio,videocontrols-rendering.html failing

Remove platform specific results from media directory, since they should match the mac. Also, remove these tests from the skipped list.

  • platform/win/Skipped:
  • platform/win/media: Removed.
17:30 Changeset [29661] by adele@apple.com

Updating these results again. I accidently checked in the other results with some local changes.

  • platform/mac/media/audio-controls-rendering-expected.checksum:
  • platform/mac/media/audio-controls-rendering-expected.png:
  • platform/mac/media/video-controls-rendering-expected.checksum:
  • platform/mac/media/video-controls-rendering-expected.png:
  • platform/mac/media/video-display-toggle-expected.checksum:
  • platform/mac/media/video-display-toggle-expected.png:
  • platform/mac/media/video-seek-past-end-playing-expected.checksum:
  • platform/mac/media/video-seek-past-end-playing-expected.png:
17:11 Changeset [29660] by kmccullough@apple.com
  • Build fix.
  • kjs/ustring.h:
16:58 Changeset [29659] by bdakin@apple.com

Rubber stamped by Darin.

These are updated test results after http://bugs.webkit.org/
show_bug.cgi?id=15765 ASSERTION FAILED: m_frame->page() in
FrameLoader::tokenizerProcessedData using the new GMail interface
was checked in. This is a TEMPORARY fix until http://
bugs.webkit.org/show_bug.cgi?id=16853 really addresses this

  • http/tests/loading/gmail-assert-on-load-expected.txt:
  • http/tests/loading/onload-vs-immediate-refresh-expected.txt:
16:55 Changeset [29658] by kmccullough@apple.com

Rubber stamped by Geoff.

  • <rdar://5667267> editing/selection/5131716-1.html is failing The problem is when the fonts are not present, but they should be available now. This may have failed for other reasons in the past that are now fixed.
  • platform/win/Skipped:
16:24 Changeset [29657] by adachan@apple.com

<rdar://problem/5682340> REGRESSION (r28188): Context menu appears at wrong place when clicking in iframe whose parent is scrolled (16827)
Calling absolutePosition() in EventHandler::hitTestResultAtPoint() is extremely inefficient and passing in
true as fixed before was wrong. Use HitTestResult::localPoint() instead, and take into account border and padding widths.

Reviewed by Hyatt and Darin.

  • page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::operator=):
16:09 Changeset [29656] by adele@apple.com

Reviewed by Antti.

Adding pixel results for media tests.

  • platform/mac/media/audio-constructor-expected.checksum: Added.
  • platform/mac/media/audio-constructor-expected.png: Added.
  • platform/mac/media/audio-constructor-src-expected.checksum: Added.
  • platform/mac/media/audio-constructor-src-expected.png: Added.
  • platform/mac/media/broken-video-expected.checksum: Added.
  • platform/mac/media/broken-video-expected.png: Added.
  • platform/mac/media/constructors-expected.checksum: Added.
  • platform/mac/media/constructors-expected.png: Added.
  • platform/mac/media/fallback-expected.checksum: Added.
  • platform/mac/media/fallback-expected.png: Added.
  • platform/mac/media/progress-event-expected.checksum: Added.
  • platform/mac/media/progress-event-expected.png: Added.
  • platform/mac/media/remove-from-document-expected.checksum: Added.
  • platform/mac/media/remove-from-document-expected.png: Added.
  • platform/mac/media/unsupported-rtsp-expected.checksum: Added.
  • platform/mac/media/unsupported-rtsp-expected.png: Added.
  • platform/mac/media/unsupported-tracks-expected.checksum: Added.
  • platform/mac/media/unsupported-tracks-expected.png: Added.
  • platform/mac/media/video-append-source-expected.checksum: Added.
  • platform/mac/media/video-append-source-expected.png: Added.
  • platform/mac/media/video-autoplay-expected.checksum: Added.
  • platform/mac/media/video-autoplay-expected.png: Added.
  • platform/mac/media/video-buffered-expected.checksum: Added.
  • platform/mac/media/video-buffered-expected.png: Added.
  • platform/mac/media/video-controls-expected.checksum: Added.
  • platform/mac/media/video-controls-expected.png: Added.
  • platform/mac/media/video-currentTime-expected.checksum: Added.
  • platform/mac/media/video-currentTime-expected.png: Added.
  • platform/mac/media/video-currentTime-set-expected.checksum: Added.
  • platform/mac/media/video-currentTime-set-expected.png: Added.
  • platform/mac/media/video-currentTime-set2-expected.checksum: Added.
  • platform/mac/media/video-currentTime-set2-expected.png: Added.
  • platform/mac/media/video-dom-autoplay-expected.checksum: Added.
  • platform/mac/media/video-dom-autoplay-expected.png: Added.
  • platform/mac/media/video-dom-end-expected.checksum: Added.
  • platform/mac/media/video-dom-end-expected.png: Added.
  • platform/mac/media/video-dom-loopcount-expected.checksum: Added.
  • platform/mac/media/video-dom-loopcount-expected.png: Added.
  • platform/mac/media/video-dom-loopend-expected.checksum: Added.
  • platform/mac/media/video-dom-loopend-expected.png: Added.
  • platform/mac/media/video-dom-loopstart-expected.checksum: Added.
  • platform/mac/media/video-dom-loopstart-expected.png: Added.
  • platform/mac/media/video-dom-src-expected.checksum: Added.
  • platform/mac/media/video-dom-src-expected.png: Added.
  • platform/mac/media/video-dom-start-expected.checksum: Added.
  • platform/mac/media/video-dom-start-expected.png: Added.
  • platform/mac/media/video-end-expected.checksum: Added.
  • platform/mac/media/video-end-expected.png: Added.
  • platform/mac/media/video-error-abort-expected.checksum: Added.
  • platform/mac/media/video-error-abort-expected.png: Added.
  • platform/mac/media/video-error-does-not-exist-expected.checksum: Added.
  • platform/mac/media/video-error-does-not-exist-expected.png: Added.
  • platform/mac/media/video-load-networkState-expected.checksum: Added.
  • platform/mac/media/video-load-networkState-expected.png: Added.
  • platform/mac/media/video-load-readyState-expected.checksum: Added.
  • platform/mac/media/video-load-readyState-expected.png: Added.
  • platform/mac/media/video-loopcount-expected.checksum: Added.
  • platform/mac/media/video-loopcount-expected.png: Added.
  • platform/mac/media/video-loopend-expected.checksum: Added.
  • platform/mac/media/video-loopend-expected.png: Added.
  • platform/mac/media/video-loopstart-expected.checksum: Added.
  • platform/mac/media/video-loopstart-expected.png: Added.
  • platform/mac/media/video-muted-expected.checksum: Added.
  • platform/mac/media/video-muted-expected.png: Added.
  • platform/mac/media/video-no-autoplay-expected.checksum: Added.
  • platform/mac/media/video-no-autoplay-expected.png: Added.
  • platform/mac/media/video-pause-empty-events-expected.checksum: Added.
  • platform/mac/media/video-pause-empty-events-expected.png: Added.
  • platform/mac/media/video-play-empty-events-expected.checksum: Added.
  • platform/mac/media/video-play-empty-events-expected.png: Added.
  • platform/mac/media/video-play-pause-events-expected.checksum: Added.
  • platform/mac/media/video-play-pause-events-expected.png: Added.
  • platform/mac/media/video-play-pause-exception-expected.checksum: Added.
  • platform/mac/media/video-play-pause-exception-expected.png: Added.
  • platform/mac/media/video-poster-expected.checksum: Added.
  • platform/mac/media/video-poster-expected.png: Added.
  • platform/mac/media/video-seek-past-end-paused-expected.checksum: Added.
  • platform/mac/media/video-seek-past-end-paused-expected.png: Added.
  • platform/mac/media/video-seek-past-end-playing-expected.checksum: Added.
  • platform/mac/media/video-seek-past-end-playing-expected.png: Added.
  • platform/mac/media/video-seekable-expected.checksum: Added.
  • platform/mac/media/video-seekable-expected.png: Added.
  • platform/mac/media/video-seeking-expected.checksum: Added.
  • platform/mac/media/video-seeking-expected.png: Added.
  • platform/mac/media/video-size-expected.checksum: Added.
  • platform/mac/media/video-size-expected.png: Added.
  • platform/mac/media/video-source-expected.checksum: Added.
  • platform/mac/media/video-source-expected.png: Added.
  • platform/mac/media/video-source-media-expected.checksum: Added.
  • platform/mac/media/video-source-media-expected.png: Added.
  • platform/mac/media/video-source-type-expected.checksum: Added.
  • platform/mac/media/video-source-type-expected.png: Added.
  • platform/mac/media/video-src-change-expected.checksum: Added.
  • platform/mac/media/video-src-change-expected.png: Added.
  • platform/mac/media/video-src-expected.checksum: Added.
  • platform/mac/media/video-src-expected.png: Added.
  • platform/mac/media/video-src-remove-expected.checksum: Added.
  • platform/mac/media/video-src-remove-expected.png: Added.
  • platform/mac/media/video-src-set-expected.checksum: Added.
  • platform/mac/media/video-src-set-expected.png: Added.
  • platform/mac/media/video-src-source-expected.checksum: Added.
  • platform/mac/media/video-src-source-expected.png: Added.
  • platform/mac/media/video-start-expected.checksum: Added.
  • platform/mac/media/video-start-expected.png: Added.
  • platform/mac/media/video-volume-expected.checksum: Added.
  • platform/mac/media/video-volume-expected.png: Added.
  • platform/mac/media/video-width-height-expected.checksum: Added.
  • platform/mac/media/video-width-height-expected.png: Added.
16:04 Changeset [29655] by bdakin@apple.com


Reviewed by Darin, landed by Beth.

The call to HTMLTokenizer::write might result in a call to ::end which will invoke
HTMLParser::finished() or Document::finishedParsing(). HTMLParser::finished() will eventually
call Document::finishedParsing. The Document will delete the calling HTMLTokenizer and from the deleted
tokenizer we will call into FrameLoader::tokenizerProcessedData.
-) FrameLoader::tokenizerProcessedData calls FrameLoader::checkCompleted which gets called from the Document::finishedParsing


  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::timerFired):


Reviewed by Darin, landed by Beth.

-test for http://bugs.webkit.org/show_bug.cgi?id=15765
Gmail hitting an assert in FrameLoader::tokenizerProcessedData

  • http/tests/loading/gmail-assert-on-load-expected.txt: Added.
  • http/tests/loading/gmail-assert-on-load.html: Added.
  • http/tests/loading/resources/gmail-assert-on-load-frame.html: Added.
16:01 Changeset [29654] by weinig@apple.com

Reviewed by Beth Dakin.

Fix for <rdar://problem/5683524> http/tests/security/cross-frame-access-get.html is failing

  • Guard against possible timing related failures using polling.
  • http/tests/security/:
  • http/tests/security/resources/cross-frame-iframe-for-get-test.html:
16:00 Changeset [29653] by kmccullough@apple.com
  • Build fix.
  • kjs/ustring.cpp:
  • kjs/ustring.h: (KJS::UString::cost):
15:33 Changeset [29652] by weinig@apple.com

Remove incorrect addition of ChangeLog as changed in the ChangeLog.

15:20 Changeset [29651] by hyatt@apple.com

Update inline results after previous checkins. New results match Firefox more closely.

  • platform/mac/fast/inline/001-expected.checksum:
  • platform/mac/fast/inline/001-expected.png:
  • platform/mac/fast/inline/002-expected.checksum:
  • platform/mac/fast/inline/002-expected.png:
  • platform/mac/fast/inline/br-text-decoration-expected.checksum:
  • platform/mac/fast/inline/br-text-decoration-expected.png:
  • platform/mac/fast/inline/continuation-outlines-expected.checksum:
  • platform/mac/fast/inline/continuation-outlines-expected.png:
  • platform/mac/fast/inline/continuation-outlines-with-layers-expected.checksum:
  • platform/mac/fast/inline/continuation-outlines-with-layers-expected.png:
  • platform/mac/fast/inline/dirtyLinesForInline-expected.checksum:
  • platform/mac/fast/inline/dirtyLinesForInline-expected.png:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.checksum:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.png:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.txt:
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.checksum:
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.png:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.checksum:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.png:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.txt:
  • platform/mac/fast/inline/inline-borders-with-bidi-override-expected.checksum:
  • platform/mac/fast/inline/inline-borders-with-bidi-override-expected.png:
  • platform/mac/fast/inline/outline-continuations-expected.checksum:
  • platform/mac/fast/inline/outline-continuations-expected.png:
  • platform/mac/fast/inline/positionedLifetime-expected.checksum:
  • platform/mac/fast/inline/positionedLifetime-expected.png:
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.checksum:
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.png:
15:10 Changeset [29650] by hyatt@apple.com

Don't apply the border/margin/padding check to root line boxes, since their renderers
are blocks.

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically):
14:59 Changeset [29649] by hyatt@apple.com


Not reviewed: rolling out a previous patch.

Fixed <rdar://problem/5695439> Crash during GCController destructor on
quitting browser

Used svn merge to roll out r29603 because it introduced some crashes
on quit.

GC relies on static hash tables, so it's not safe to GC from a static
destructor, which might run after the static hash tables' destructors.

  • bindings/js/GCController.cpp: (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:


Fix for http://bugs.webkit.org/show_bug.cgi?id=15665

Reviewed by Beth

  • fast/inline/inline-padding-disables-text-quirk.html: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.checksum: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.png: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.txt: Added.
14:50 Changeset [29648] by ggaren@apple.com

Not reviewed: rolling out a previous patch.

Fixed <rdar://problem/5695439> Crash during GCController destructor on
quitting browser

Used svn merge to roll out r29603 because it introduced some crashes
on quit.

GC relies on static hash tables, so it's not safe to GC from a static
destructor, which might run after the static hash tables' destructors.

  • bindings/js/GCController.cpp: (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:
13:56 Changeset [29647] by hyatt@apple.com


Fix for http://bugs.webkit.org/show_bug.cgi?id=14975

Computed size of padding is incorrect because we default padding to auto. This is a made-up value that
was only used to implement cellpadding on tables. We needed this made-up value in order to tell that
padding wasn't set so that we could then apply cellpadding.

This patch rewrites cellpadding to be like other browsers. Instead of being a setting on the table
renderer that applies to all cells (even ones that were not <td>s), cellpadding is now mapped into the
style of <td>s. With this change it effectively becomes a content model feature and not a rendering

For example, a <td> will pick up cellpadding even when it is not a cell and/or the enclosing <table> is
not a table. Anonymous cells and CSS-display-type cells will now never pick up cellpadding. This behavior
is all consistent with other browsers.

Reviewed by Antti

Added fast/css/padding-no-renderer.html

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::canShareStyleWithElement): (WebCore::CSSStyleSelector::styleForElement):
  • css/CSSStyleSelector.h:
  • dom/StyledElement.cpp:
  • dom/StyledElement.h: (WebCore::StyledElement::canHaveAdditionalAttributeStyleDecls): (WebCore::StyledElement::additionalAttributeStyleDecls):
  • html/HTMLTableCellElement.cpp: (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
  • html/HTMLTableCellElement.h: (WebCore::HTMLTableCellElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableColElement.cpp: (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
  • html/HTMLTableColElement.h: (WebCore::HTMLTableColElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::parseMappedAttribute): (WebCore::HTMLTableElement::additionalAttributeStyleDecls): (WebCore::HTMLTableElement::addSharedCellDecls): (WebCore::HTMLTableElement::addSharedCellBordersDecl): (WebCore::HTMLTableElement::addSharedCellPaddingDecl): (WebCore::HTMLTableElement::addSharedGroupDecls): (WebCore::HTMLTableElement::attach):
  • html/HTMLTableElement.h: (WebCore::HTMLTableElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableSectionElement.cpp: (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
  • html/HTMLTableSectionElement.h: (WebCore::HTMLTableSectionElement::canHaveAdditionalAttributeStyleDecls):
  • rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paddingTop): (WebCore::RenderObject::paddingBottom): (WebCore::RenderObject::paddingLeft): (WebCore::RenderObject::paddingRight):
  • rendering/RenderStyle.cpp: (WebCore::StyleSurroundData::StyleSurroundData):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::initialPadding):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::RenderTable):
  • rendering/RenderTable.h:


Updated results for http://bugs.webkit.org/show_bug.cgi?id=14975

Reviewed by Antti

  • fast/css/computed-style-without-renderer-expected.txt:
  • fast/css/padding-no-renderer-expected.txt: Added.
  • fast/css/padding-no-renderer.html: Added.
  • platform/mac/fast/css/acid2-expected.checksum:
  • platform/mac/fast/css/acid2-expected.png:
  • platform/mac/fast/css/acid2-expected.txt:
  • platform/mac/fast/css/acid2-pixel-expected.checksum:
  • platform/mac/fast/css/acid2-pixel-expected.png:
  • platform/mac/fast/css/acid2-pixel-expected.txt:
  • platform/mac/fast/frames/viewsource-attribute-expected.checksum:
  • platform/mac/fast/frames/viewsource-attribute-expected.png:
  • platform/mac/fast/frames/viewsource-attribute-expected.txt:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.checksum:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.png:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
  • platform/mac/fast/table/add-before-anonymous-child-expected.checksum:
  • platform/mac/fast/table/add-before-anonymous-child-expected.png:
  • platform/mac/fast/table/add-before-anonymous-child-expected.txt:
  • platform/mac/fast/table/cell-absolute-child-expected.checksum:
  • platform/mac/fast/table/cell-absolute-child-expected.png:
  • platform/mac/fast/table/cell-absolute-child-expected.txt:
  • platform/mac/fast/table/frame-and-rules-expected.checksum:
  • platform/mac/fast/table/frame-and-rules-expected.png:
  • platform/mac/fast/table/frame-and-rules-expected.txt:
  • platform/mac/http/tests/misc/acid2-expected.checksum:
  • platform/mac/http/tests/misc/acid2-expected.png:
  • platform/mac/http/tests/misc/acid2-expected.txt:
  • platform/mac/http/tests/misc/acid2-pixel-expected.checksum:
  • platform/mac/http/tests/misc/acid2-pixel-expected.png:
  • platform/mac/http/tests/misc/acid2-pixel-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.png:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.txt:
13:52 Changeset [29646] by mitz@apple.com


Reviewed by Dave Hyatt.

  • fix <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren

Test: fast/table/insert-row-before-form.html

  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::addChild): Changed to ensure that the object a new cell is inserted before is a child of the row, and added an assertion that that object is either a cell or a form.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addChild): Changed to ensure that the object a new row is inserted before is a child of the table section, and added an assertion that that object is either a table row or a form.


Reviewed by Dave Hyatt.

  • tests for <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren
  • fast/table/insert-cell-before-form.html: Added.
  • fast/table/insert-row-before-form.html: Added.
  • platform/mac-leopard/fast/table: Added.
  • platform/mac-leopard/fast/table/insert-cell-before-form-expected.checksum: Added.
  • platform/mac-leopard/fast/table/insert-cell-before-form-expected.png: Added.
  • platform/mac-leopard/fast/table/insert-row-before-form-expected.checksum: Added.
  • platform/mac-leopard/fast/table/insert-row-before-form-expected.png: Added.
  • platform/mac/fast/table/insert-cell-before-form-expected.txt: Added.
  • platform/mac/fast/table/insert-row-before-form-expected.txt: Added.
13:50 Changeset [29645] by ddkilzer@apple.com

Fixed date.

13:35 Changeset [29644] by bdakin@apple.com

Checked in new results for another test affected by disabling SVG
foreign object.

  • platform/mac-leopard/svg/custom/stroke-width-click-expected.txt: Removed.
  • platform/mac/svg/custom/stroke-width-click-expected.checksum: Removed.
  • platform/mac/svg/custom/stroke-width-click-expected.png: Removed.
  • svg/custom/stroke-width-click-expected.txt:
13:33 Changeset [29643] by ggaren@apple.com

Reviewed by Brady Eidson.

Fixed <rdar://problem/5622424> World Leak dialog when closing a page
that has a Database

The problem was that each transaction and SQL statement would hold on
to its callback indefinitely. By design, callbacks often establish
reference cycles to temporarily protect their execution environments.
To break the cycle, we need to explicitly release each callback as soon
as it is no longer needed.

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::performCallback): Release our callback objects after performing our callback.
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::postflightAndCommit): Release our callback objects after the transaction has terminated. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): ditto.
13:20 Changeset [29642] by ddkilzer@apple.com

Fix typo in comment.

13:12 Changeset [29641] by sfalken@apple.com

Delete unneeded tag.

13:10 Changeset [29640] by sfalken@apple.com

New tag.

13:05 Changeset [29639] by kmccullough@apple.com


Reviewed by Geoff.

  • Correctly report cost of appended strings to trigger GC.
  • kjs/ustring.cpp: (KJS::): (KJS::UString::Rep::create): (KJS::UString::UString): Don't create unnecssary objects. (KJS::UString::cost): Report cost if necessary but also keep track of reported cost.
  • kjs/ustring.h:


Reviewed by Geoff.

  • Correctly report cost of appended strings to trigger GC.
  • fast/js/garbage-collect-after-string-appends-expected.txt: Added.
  • fast/js/garbage-collect-after-string-appends.html: Added.
  • fast/js/resources/garbage-collect-after-string-appends.js: Added.
12:58 Changeset [29638] by adele@apple.com

Reviewed by Antti.

Fix for <rdar://problem/5679490> media controls fade in and out too jerkily and too slowly

  • rendering/RenderMedia.cpp: Shorten the duration for the fade in/out animation.
12:54 Changeset [29637] by aroben@apple.com

Build fix

  • Scripts/build-webkit:
12:16 Changeset [29636] by mrowe@apple.com


12:16 Changeset [29635] by mrowe@apple.com

Merge r29600.

12:11 Changeset [29634] by mrowe@apple.com

Merge r29580.

12:06 Changeset [29633] by bdakin@apple.com


Reviewed by Oliver.

Disables SVG foreign object for <rdar://problem/5686989> turn off
SVG foreignobject because it does not repaint/dirty correctly

  • DerivedSources.make:
  • WebCore.SVG.ForeignObject.exp: Added.
  • WebCore.SVG.exp:
  • bindings/js/JSSVGElementWrapperFactory.cpp: (WebCore::createJSSVGWrapper):
  • rendering/RenderForeignObject.cpp:
  • rendering/RenderForeignObject.h:
  • svg/SVGForeignObjectElement.cpp:
  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGLocatable.cpp: (WebCore::SVGLocatable::nearestViewportElement): (WebCore::SVGLocatable::farthestViewportElement):
  • svg/SVGUseElement.cpp: (WebCore::isDisallowedElement):
  • svg/svgtags.in:


Reviewed by Oliver.

Update build-webkit to account for foreign-object being disabled by

  • Scripts/build-webkit:


Reviewed by Oliver.

Changed test results from disabling SVG foreign object for <rdar://
problem/5686989> turn off SVG foreignobject because it does not
repaint/dirty correctly

  • platform/mac/svg/custom/baseval-animval-equality-expected.checksum: Replaced.
  • platform/mac/svg/custom/baseval-animval-equality-expected.png: Replaced.
  • platform/mac/svg/custom/baseval-animval-equality-expected.txt: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.checksum: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.png: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.txt: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.checksum: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.png: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.txt: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.checksum: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.png: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.txt: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.checksum: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.png: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.txt: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.checksum: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.png: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.txt: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.checksum: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.png: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.txt: Replaced.
12:05 Changeset [29632] by mrowe@apple.com

New tag.

11:58 Changeset [29631] by mrowe@apple.com

2008-01-18 Mark Rowe <mrowe@apple.com>

Rubber-stamped by Adam Roben.

Fix mixed line endings in FileSystemWin.cpp and set svn:eol-style to native
to try and keep them consistent in the future.

  • platform/win/FileSystemWin.cpp: (WebCore::fileSize): (WebCore::fileExists): (WebCore::deleteFile): (WebCore::pathByAppendingComponent): (WebCore::fileSystemRepresentation): (WebCore::makeAllDirectories): (WebCore::homeDirectoryPath): (WebCore::bundleName): (WebCore::storageDirectory): (WebCore::cachedStorageDirectory):
11:51 Changeset [29630] by antti@apple.com

Reviewed by Adam.

Fix unreachable code warning in RenderVideo on Windows.

Make switch cases explicit.

  • rendering/RenderImage.cpp: (WebCore::RenderImage::isWidthSpecified): (WebCore::RenderImage::isHeightSpecified):
  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::isWidthSpecified): (WebCore::RenderVideo::isHeightSpecified):
11:49 Changeset [29629] by timothy@apple.com


Reviewed by Adam Roben.

<rdar://problem/5693558> REGRESSION (r29581): no form field focus
rings and inactive text selection after loading a page
Bug 16910: [GTK] REGRESSION: keyboard cursor doesn't blink
Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance

  • page/FocusController.cpp: (WebCore::FocusController::setActive): Use focusedOrMainFrame() instead of focusedFrame() to call selectionController()->pageActivationChanged() for cases when the focusedFrame() has not been set yet.


Reviewed by Adam Roben.

<rdar://problem/5693558> REGRESSION (r29581): no form field focus rings
and inactive text selection after loading a page
Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance

The problem was other frames were changing the FocusController's active
status to false after the first responder frame set it to true. The last
frame to call _updateActiveState would win.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]): Only call page->focusController()->setActive() if the first responder is the current WebHTMLView or the WebFrameView. (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Removed, inlined code in _updateActiveState.
10:47 Changeset [29628] by ap@webkit.org

Reviewed by Brady.

Database origin tracking is broken.

  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::populateOrigins): Move reading from statement back into the loop (broken in r29386).
10:44 Changeset [29627] by aroben@apple.com

Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing


Rename _updateActiveState to _updateFocusedAndActiveState

Also renamed any related methods/members similarly.

Reviewed by Adele.

  • WebView/WebHTMLView.mm: (-[WebHTMLViewPrivate dealloc]): (-[WebHTMLView _cancelUpdateFocusedAndActiveStateTimer]): (-[WebHTMLView close]): (_updateFocusedAndActiveStateTimerCallback): (-[WebHTMLView viewWillMoveToWindow:]): (-[WebHTMLView viewDidMoveToWindow]): (-[WebHTMLView windowDidBecomeKey:]): (-[WebHTMLView windowDidResignKey:]): (-[WebHTMLView becomeFirstResponder]): (-[WebHTMLView resignFirstResponder]):
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h:


Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing

Restored the previous behavior of IWebViewPrivate::updateActiveState,
which DRT depends on, and renamed it to
IWebViewPrivate::updateFocusedAndActiveState to be clearer about its

Reviewed by Adele.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebViewWndProc): Removed some FIXMEs that we no longer want to fix because the current design is better. (WebView::updateActiveState): This is now just a method of WebView, not any of its public interfaces. (WebView::updateFocusedAndActiveState): Performs the tasks that the old IWebViewPrivate::updateActiveState performed.
  • WebView.h:


Updated for method renames

Reviewed by Adele.

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didCommitLoadForFrame:]):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setMainFrameIsFirstResponder): (LayoutTestController::setWindowIsKey):
  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webViewFocus:]):
  • DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didCommitLoadForFrame):


Reviewed by Adele.

  • platform/win/Skipped: Removed a fixed test, and a test that passes for me locally.
06:21 Changeset [29626] by ap@webkit.org

Fix plugin-related tests in Debug_Internal configuration, which are failing because of CRT version mismatch
between DRT and TestNetscapePlugin.

03:57 Changeset [29625] by hausmann@webkit.org

Coding style fixes and added a comment about the order of includes in the PCH.

03:30 Changeset [29624] by hausmann@webkit.org

Marius Storm-Olsen <marius@trolltech.com>

Add use of precompiled header, when building inside Qt.

Compiling WebKit was taking forever; 17 minutes on my machine for _one_ build! Adding the PCH at least brings it down to 12 minutes for one build, for me.

02:55 Changeset [29623] by hausmann@webkit.org

Fix fast/forms/button-state-restore.html

Similar to the fix for fast/forms/form-post-urlencoded.html transform POST
requests to data urls into GET.

02:55 Changeset [29622] by hausmann@webkit.org

Fix LayoutTests/fast/cookies/local-file-can-set-cookies.html

In WebCore::cookies() don't return the full raw form but only the name=value
part. This fixes the getter part of the above test. The above test also
requires a parsing fix in Qt 4.4's QNetworkCookie to fully pass.

02:55 Changeset [29621] by hausmann@webkit.org

Fix fast/dom/Window/window-resize.html

In DRT connect the page's geometryChangeRequest signal to a slot that
sets the geometry of the view widget.

02:54 Changeset [29620] by hausmann@webkit.org

Fix return type conversions from Qt slots to JS values.

This also fixes fast/dom/open-and-close-by-DOM.html, which called

When constructing the QVariant that holds the return type we cannot
use the QVarian(Type) constuctor as that will create a null variant.
We have to use the QVariant(Type, void *) constructor instead, just
like in QMetaObject::read() for example.

02:54 Changeset [29619] by hausmann@webkit.org

Fix svg/custom/path-getTotalLength.svg

Path::apply creates a PathElement and its points array on the stack,
to fill it in from the QPainterPath data and then use the platform
independent path applier functions to calculate properties such as
the length. For converting a QPainterPath::CurveToElement we need
three points in the path element. However we allocated only two
on the stack and as a result we got memory corruption and the
failing test.

02:54 Changeset [29618] by hausmann@webkit.org

Fix LayoutTests/fast/dom/document-attribute-js-null.html

Don't crash when trying to get/set cookies without a frameloader.

02:54 Changeset [29617] by hausmann@webkit.org

Fix fast/dom/xmlhttprequest-get.xhtml

For local file requests remove the content length and the last-modified
headers in the response.

02:53 Changeset [29616] by hausmann@webkit.org

Fix fast/forms/form-post-urlencoded.html.

Post requests on files don't really make sense, but for
fast/forms/form-post-urlencoded.html we still need to retrieve the file,
which means we map it to a Get instead.

02:37 Changeset [29615] by hausmann@webkit.org

Simon Hausmann <hausmann@webkit.org>

Make QNetworkReplyHandler::abort() more robust against multiple invocations.

During DRT runs I see cancel() being called on the same handle multiple times. Guard
against this a bit better by setting m_reply to 0 after we called abort() on it.

02:37 Changeset [29614] by hausmann@webkit.org

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Ask the WebCore::IconDatabase only if our URL is not empty. Otherwise we will see a crash in a HashSet.
  • It is crashing there because the StringImpl of an empty String is 0.
  • We avoid this crash by checking for isEmpty() in WebKit as there is no use to ask the iconDatabase for an empty string. We will fallback to the defaultIcon.
02:37 Changeset [29613] by hausmann@webkit.org

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • httpBody() can return 0 and other ports (cf/mac) check for this condition
  • Looking at the cf/mac implementation we might need to call setHTTPBody somewhere as well.
01:46 Changeset [29612] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation in Win64(3): Due to the size of size_t cast the return value explicitly to double() to make sure the right Value() constructor is called.

01:45 Changeset [29611] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation on Win64(2): Implemented currentThreadStackBase on X86-64 on Windows

01:45 Changeset [29610] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation on Win64(1): Define WTF_PLATFORM_X86_64 correctly on Win64.

01:37 Changeset [29609] by hausmann@webkit.org
  • Remove our windowClipRect reimplementation and instead have our own Widget::invalidate implementation that is invalidating IntRect(0, 0, width(), height()) without trying to clip it (in contrast to Widget::invalidateRect)
01:36 Changeset [29608] by hausmann@webkit.org
  • Change the coordinate transformation in the PlatformMouseEvent handlers
  • We want to convert from coordinates of the containing window to our local position on the scrollbar.
01:36 Changeset [29607] by hausmann@webkit.org
  • Make the qDebug more usable. Do not have an additional newline and print the untranslated coordinates as well.
01:36 Changeset [29606] by hausmann@webkit.org
  • Dead code, remove it
01:36 Changeset [29605] by hausmann@webkit.org
  • Coding-Style fixes.
01:35 Changeset [29604] by hausmann@webkit.org
  • Coding-Style fix


20:05 Changeset [29603] by ggaren@apple.com

Reviewed by Darin Adler.

Fixed: lots of WebCore leaks reported when quitting Safari

If we're quitting with a GC still scheduled, do the GC before quitting.
That way, WebCore's leak counters won't count objects that were
scheduled for GC.

  • bindings/js/GCController.cpp: (WebCore::GCController::~GCController): (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:
19:29 Changeset [29602] by alp@webkit.org

2008-01-17 Alp Toker <alp@atoker.com>

Reviewed by Oliver Hunt.

gdk_screen_get_font_options() returns NULL if no default options are
set so we always have to NULL check to avoid crashes later on since
Cairo doesn't accept NULL font options.

  • platform/graphics/gtk/FontPlatformDataGtk.cpp: (WebCore::FontPlatformData::FontPlatformData):
17:58 Changeset [29601] by antti@apple.com

Reviewed by Adele.

Windows fix for <rdar://problem/5605682>
Disallow streaming protocols for media elements
and <rdar://problem/5668711>
Limit the container and codec types that the <video> tag supports

  • Disable unsupported QuickTime tracks types.
  • Disallow streaming protocols (for now).
17:14 Changeset [29600] by sfalken@apple.com


Build fix.

  • WebKit.vcproj/WebKit.make:


Build fix.

  • Drosera/DroseraWin.make:
17:14 Changeset [29599] by slewis@apple.com

2008-01-17 Stephanie <slewis@apple.com>


Move some new failing tests to the skipped list

  • platform/win/Skipped:
16:34 Changeset [29598] by sfalken@apple.com

Added Vista crash logging information.

Reviewed by Adam.

  • quality/crashlogs.html:
16:21 Changeset [29597] by oliver@apple.com

Support smart copy and paste during drag and drop

Reviewed by Alice

In order for the drag and drop tests in Windows DRT to pass
we need to support smart cut and paste operations during
drag and drop on windows.

There is no layout test as drag and drop is still unsupported
on windows. Once supported smart drag/drop is tested by existing

16:10 Changeset [29596] by sullivan@apple.com

Reviewed by Darin

  • fixed <rdar://problem/5692068> -1 WebFrameView world leaks reported after closing view source window
  • WebView/WebFrameView.mm: (-[WebFrameView initWithCoder:]): override to bump the global WebFrameView count
15:58 Changeset [29595] by darin@apple.com
  • Scripts/run-webkit-tests: Fixed a bug number.
13:33 Changeset [29594] by oliver@apple.com

<rdar://problem/5692940> Crash when attempting to get text properties in SVG with no renderer

Reviewed by Anders

We use the element renderer to calculate the text element bounds,
however there was no check against the possibility of the text dimension
properties being requested on a element with no renderer (eg. unattached,
display: none).

13:05 Changeset [29593] by andersca@apple.com

Reviewed by Oliver.

CrashTracer: [USER] 1302 crashes in Safari at com.apple.WebCore: WTF::Vector<char, 0ul>::reserveCapacity + 78

When loading full-frame plug-ins, disable buffering data for the main resource loader. Otherwise, this can cause us
to crash when loading large files such as movies in the browser. We already do this for embedded plug-ins.

  • WebCore.base.exp:
  • loader/DocumentLoader.h: (WebCore::DocumentLoader::mainResourceLoader): New accessor method.

  • loader/PluginDocument.cpp: (WebCore::PluginTokenizer::writeRawData): Disable buffering for the main resource loader.

  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::setShouldBufferData):
  • loader/ResourceLoader.h: Have this free the buffer when disabling buffering.
12:45 Changeset [29592] by antti@apple.com

Fix Windows build.

  • kjs/regexp_object.cpp: (KJS::regExpProtoFuncToString):
12:39 Changeset [29591] by aroben@apple.com

More Qt/GTK+ build fixing.

  • platform/gtk/ScrollViewGtk.cpp:
  • platform/qt/ScrollViewQt.cpp:
12:06 Changeset [29590] by ap@webkit.org

Reviewed by Darin.

<rdar://problem/5692566> fast/encoding/mailto-always-utf-8.html fails when run after

Test: fast/dom/Window/window-property-shadowing_.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Clear the frame name, too.
11:50 Changeset [29589] by ap@webkit.org

Reviewed by Adam Roben.

run-webkit-tests complains about missing FindSafari.exe

  • Scripts/webkitdirs.pm: Append _debug as appropriate.
11:27 Changeset [29588] by weinig@apple.com

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=16901
Convert remaining JS function objects to use the new PrototypeFunction class

  • Moves Boolean, Function, RegExp, Number, Object and Global functions to their own static function implementations so that they can be used with the PrototypeFunction class. SunSpider says this is 1.003x as fast.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset):
  • kjs/array_object.h:
  • kjs/bool_object.cpp: (KJS::BooleanInstance::BooleanInstance): (KJS::BooleanPrototype::BooleanPrototype): (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::BooleanObjectImp::BooleanObjectImp): (KJS::BooleanObjectImp::implementsConstruct): (KJS::BooleanObjectImp::construct): (KJS::BooleanObjectImp::callAsFunction):
  • kjs/bool_object.h: (KJS::BooleanInstance::classInfo):
  • kjs/error_object.cpp: (KJS::ErrorPrototype::ErrorPrototype): (KJS::errorProtoFuncToString):
  • kjs/error_object.h:
  • kjs/function.cpp: (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnEscape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::PrototypeFunction):
  • kjs/function.h:
  • kjs/function_object.cpp: (KJS::FunctionPrototype::FunctionPrototype): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall):
  • kjs/function_object.h:
  • kjs/number_object.cpp: (KJS::NumberPrototype::NumberPrototype): (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision):
  • kjs/number_object.h: (KJS::NumberInstance::classInfo): (KJS::NumberObjectImp::classInfo): (KJS::NumberObjectImp::):
  • kjs/object_object.cpp: (KJS::ObjectPrototype::ObjectPrototype): (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString):
  • kjs/object_object.h:
  • kjs/regexp_object.cpp: (KJS::RegExpPrototype::RegExpPrototype): (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString):
  • kjs/regexp_object.h:
11:23 Changeset [29587] by mitz@apple.com

Name the test for a recent bug fix.

11:06 Changeset [29586] by aroben@apple.com

Qt/GTK+ build fix.

  • platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive):
  • platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive):
10:55 Changeset [29585] by mitz@apple.com

Reviewed by Dave Hyatt.

  • make more test pass on Windows by using @font-face to force font fallback to match Mac OS X.
  • editing/deleting/5144139-2.html:
  • fast/encoding/invalid-UTF-8.html:
  • fast/events/updateLayoutForHitTest.html:
  • fast/forms/select-visual-hebrew.html:
  • fast/forms/select-writing-direction-natural.html:
  • fast/forms/visual-hebrew-text-field.html:
  • fast/text/in-rendered-text-rtl.html:
  • fast/text/international/bidi-L2-run-reordering.html:
  • fast/text/international/bidi-LDB-2-CSS.html:
  • fast/text/international/bidi-LDB-2-HTML.html:
  • fast/text/international/bidi-LDB-2-formatting-characters.html:
  • fast/text/international/bidi-european-terminators.html:
  • fast/text/international/bidi-ignored-for-first-child-inline.html:
  • fast/text/international/bidi-innertext.html:
  • fast/text/international/bidi-listbox-atsui.html:
  • fast/text/international/bidi-listbox.html:
  • fast/text/international/bidi-menulist.html:
  • fast/text/international/bidi-override.html:
  • fast/text/international/resources: Added.
  • fast/text/international/resources/Mac-compatible-font-fallback.css: Added.
  • fast/text/international/rtl-caret.html:
  • platform/mac/editing/deleting/5144139-2-expected.txt:
  • platform/win/Skipped:
09:46 Changeset [29584] by aroben@apple.com
  • platform/win/Skipped: Added another failure.
09:46 Changeset [29583] by aroben@apple.com

Trigger activation changes at the right time by listening for WM_NCACTIVATE

This is the final part of <rdar://5006915> Inactive look for Aqua

WebView now listens to messages sent to its top-level parent window.
When the top-level parent receives a WM_NCACTIVATE message, WebView
recalculates whether it is contained within the current active window.

Reviewed by Darin.

  • Interfaces/IWebViewPrivate.idl: (IWebViewPrivate::windowAncestryDidChange): Added. WebKit clients should call this when they change the parent window chain of a WebView.
  • WebView.cpp: (WebView::WebView): Initialize new member. (findTopLevelParent): Added. (WebViewWndProc):
    • Separated activation handling from focus handling, now that activation handling is taken care of by updateActiveState exclusively.
    • Compare top-level parents in our WM_KILLFOCUS handler so that we really know if focus is staying inside our top-level window.
    • Update our active state on WM_WINDOWPOSCHANGED.
    • Added a WM_TIMER handler.

(WebView::initWithFrame): Call windowAncestryDidChange after setting
up our HWND as a child of the host window.
(WebView::windowReceivedMessage): Added. Update our active state when
our top-level parent receives a WM_NCACTIVATE message.
(WebView::updateActiveStateSoon): Added.
(WebView::setHostWindow): Call windowAncestryDidChange after changing
the host window.
(WebView::updateActiveState): We are active if our top-level parent is
the same as the top-level parent of the active window.
(WebView::windowAncestryDidChange): Added. Recalculates our top-level
parent and registers as a listener for the new top-level parent's

  • WebView.h: Made WebView and WindowMessageListener so that it can utilize WindowMessageBroadcaster to listen to its top-level parent's messages.
09:45 Changeset [29582] by aroben@apple.com

Update scroll bars/form controls when FocusController::isActive changes


Update scroll bars/form controls when FocusController::isActive changes

Part of <rdar://5006915> Inactive look for Aqua controls

Reviewed by Darin.

All tests pass.

  • page/FocusController.cpp: (WebCore::FocusController::setActive): Update control tints when the active state changes.
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints): On Windows, we have to ask ScrollView to paint so that the outermost scroll bars will paint. On Mac, the outermost scroll bars are taken care of by NSScroller.
  • platform/PopupMenu.h: Updated for ScrollBarClient changes.
  • platform/ScrollBar.h: Added a new ScrollBarClient method.
  • platform/win/PlatformScrollBarSafari.cpp: (WebCore::PlatformScrollbar::paint): Invalidate when updating control tints so that we can paint with the new tint later. (WebCore::PlatformScrollbar::paintButton): Pass the active state down to SafariTheme. (WebCore::PlatformScrollbar::paintTrack): Ditto. (WebCore::PlatformScrollbar::paintThumb): Ditto.
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive): Added. (WebCore::ScrollView::paint): Pass paint calls on down if we're updating control tints so the scroll bars can invalidate.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::isActive): Added.
  • rendering/RenderLayer.h:
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::isActive): Added.
  • rendering/RenderListBox.h:
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::isActive): Added.
  • rendering/RenderTheme.h:
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::determineState): Pass the active state down to SafariTheme.


Updated for ScrollBarClient changes

Reviewed by Darin.

  • WebScrollBar.h: (WebScrollBar::isActive): Added.
09:44 Changeset [29581] by aroben@apple.com

Move focused/active state from Frame to SelectionController/FocusController


Move focused/active state from Frame to SelectionController/FocusController

This is the first part of <rdar://5006915> Inactive look for Aqua

The following methods were moved/renamed:

  • Frame::setIsActive -> FocusController::setActive
  • Frame::isActive -> SelectionController::isActiveAndFocused
  • Frame::setWindowHasFocus -> SelectionController::setFocused

Active state is now correctly a Page-level concept.

The Mac parts of this patch were written by Darin.

Reviewed by Darin.

All tests pass.

  • WebCore.base.exp: Updated for method renames.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkOneSelector): Ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): Initialize new member. (WebCore::SelectionController::focusedOrActiveStateChanged): New private method. Most of this code came from Frame::setIsActive. (WebCore::SelectionController::pageActivationChanged): Added. (WebCore::SelectionController::setFocused): Added. Replaces Frame::setWindowHasFocus. (WebCore::SelectionController::isFocusedAndActive): Added. Replaces Frame::isActive.
  • editing/SelectionController.h:
  • page/FocusController.cpp: (WebCore::FocusController::FocusController): Initialize new member. (WebCore::FocusController::setFocusedFrame): Changed to just call SelectionController::setFocused, since active state has doesn't change when the focused frame changes. (WebCore::FocusController::setActive): Added. Replaces Frame::setIsActive.
  • page/FocusController.h: (WebCore::FocusController::isActive): Added.
  • page/Frame.cpp: (WebCore::Frame::setDocument): Updated for method renames. (WebCore::Frame::setFocusedNodeIfNeeded): Ditto. (WebCore::Frame::updateSecureKeyboardEntryIfActive): Ditto. (WebCore::FramePrivate::FramePrivate): Removed initialization of removed members.
  • page/Frame.h:
  • page/FramePrivate.h:
  • page/mac/WebCoreFrameBridge.h: Removed -selectionColor.
  • page/mac/WebCoreFrameBridge.mm: Ditto.
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): Updated for method renames. (WebCore::RenderListBox::paintItemBackground): Ditto.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::selectionBackgroundColor): Ditto. (WebCore::RenderObject::selectionForegroundColor): Ditto.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Ditto.
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::isFocused): Ditto.


Updated for renames/removal of WebCore methods.

Reviewed by Darin.

  • Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerSelectionColor]): Changed to ask isFocusedAndActive directly, instead of going through the frame bridge.
  • WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]): Updated for method renames.


Updated for changes to WebCore methods

Focus and active state are now handled (somewhat) separately. Future
patches will further separate these concepts.

Reviewed by Darin.

  • WebView.cpp: (WebViewWndProc): Updated for method renames. (WebView::updateActiveState): Only change the active state here. Focus is handled inside WM_SETFOCUS and WM_KILLFOCUS message handlers.


Updated for WebCore method renames.

Reviewed by Darin.

  • WebView.cpp: (wxWebView::OnSetFocus): (wxWebView::OnKillFocus): (wxWebView::OnActivate):
08:52 Mobile edited by dacarson@gmail.com
08:37 Mobile edited by dacarson@gmail.com
08:20 Changeset [29580] by sfalken@apple.com


Rubber-stamped by Jon Honeycutt.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
08:06 Mobile edited by dacarson@gmail.com
08:03 Mobile edited by dacarson@gmail.com
07:54 Changeset [29579] by hausmann@webkit.org
  • Make the nice 'safari' feature work on our port. When viewing a single image, clicking on the image will zoom it.
  • It seems like our platform can only determine the size of the image once it is completely loaded. Call m_doc->imageChanged on the last chunk of data as well.
07:53 Changeset [29578] by hausmann@webkit.org

Minor documentation fixes

07:51 Changeset [29577] by hausmann@webkit.org

Fix form elements not focusing correctly after the qt widget lost its focus.

When receiving a focus out event notify the focus controller. Otherwise its
m_focusedFrame variable remains unchanged and setFocusedFrame on a focusIn
event shortcuts and doesn't call setActive(true).

07:44 Changeset [29576] by hausmann@webkit.org

Lots of updates to the documentation.

06:06 Changeset [29575] by hausmann@webkit.org

Added a urlChanged signals to QWebFrame and QWebView.

06:05 Changeset [29574] by hausmann@webkit.org

Fixed docs and sanity checks in QWebSettings::setIconDatabaseEnabled

06:04 Changeset [29573] by hausmann@webkit.org

Added QWebView::createWindow() which is forwarded from QWebPage::createWindow() for convenience.

06:03 Changeset [29572] by hausmann@webkit.org

Set the library version of QtWebKit to the Qt version.

06:03 Changeset [29571] by hausmann@webkit.org

add a 0 pointer check.

Fixes a crash in the demo web browser.

05:03 Changeset [29570] by hausmann@webkit.org

Fix QWebFrame::title().

For the titleChanged() signal we use the documentloader's title. For the property we have to use the same
instead of Document::title() as the latter is not trimmed and not suited for a window caption.

05:01 Changeset [29569] by hausmann@webkit.org

Re-enable gzip compression as accepted encoding, now that the bug is fixed in Qt 4.4's network module.

04:07 Changeset [29568] by hausmann@webkit.org

2008-01-17 Simon Hausmann <hausmann@webkit.org>

Another Windows build fix, setCookies accidentially had a const
Document pointer.

03:48 Changeset [29567] by hausmann@webkit.org

2008-01-17 Simon Hausmann <hausmann@webkit.org>

MSVC Windows build fix. Forward declaring Document in CookieJar.h
seems not enough for MSVC.

03:37 Changeset [29566] by hausmann@webkit.org


Add a document parameter to WebCore::cookies, setCookies and cookiesEnabled.

02:45 Changeset [29565] by hausmann@webkit.org

Windows build fix.

02:04 Changeset [29564] by hausmann@webkit.org

Fix linking on MinGW and at least one MSVC platform by having gmtimeQt in the correct namespace.

02:01 Changeset [29563] by hausmann@webkit.org

Don't link QtWebKit against libQtXml when building against Qt 4.4.

This is not necessary anymore since QXmlStream has been moved into QtCore.

01:49 Changeset [29562] by hausmann@webkit.org

Follow QWidget::keyPressEvent advice and call parents.

Without this, Back does not work in Qtopia, for example.

01:49 Changeset [29561] by hausmann@webkit.org

Fix compilation on arm

01:48 Changeset [29560] by hausmann@webkit.org

Fix compilation against Qt 4.3 after the recent KURL <> QUrl conversion fixes.

01:48 Changeset [29559] by hausmann@webkit.org

Fix compilation against Qt 4.4 without files that are specific for the Qt 4.3 build.

Signed-off-by: Holger

01:46 Changeset [29558] by hausmann@webkit.org

Fixes compilation with MinGW.

Neither localtime_r nor localtime_s are available on MingW, so instead of
calling back to the thread-unsafe localtime use QDateTime instead.

Signed-off-by: Simon Hausmann <hausmann@webkit.org>

01:44 Changeset [29557] by hausmann@webkit.org

Fixes compilation with QT_NO_DRAGANDDROP

01:16 Changeset [29556] by hausmann@webkit.org

Fix compilation

01:04 Changeset [29555] by mitz@apple.com


Reviewed by Dave Hyatt.

  • fix determinePitch for segmented fonts

Covered by and existing test.

  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::determinePitch): If the primary font is segmented, treat as fixed pitch only if it has only one segment and that segment is fixed-pitch.


Reviewed by Dave Hyatt.

  • update results for fixing determinePitch for segmented fonts
  • platform/mac/fast/css/font-face-implicit-local-font-expected.txt:
00:27 Changeset [29554] by sfalken@apple.com

Add preprocessor define accidently dropped in my unification,
and required by some builds. Fixes an issue that caused both
debug and release DLLs to be loaded.

Rubber-stamped by Jon Honeycutt.

  • win/tools/vsprops/debug_internal.vsprops:
Note: See TracTimeline for information about the timeline view.