Timeline


and

05/01/08:

23:37 Changeset [32802] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Explicitly set the pen style in wx port to keep pen style changes from affecting URL underline or text field drawing.

https://bugs.webkit.org/show_bug.cgi?id=18775

23:37 Changeset [32801] by mjs@apple.com

2008-05-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • bump up the numbers in this test to account for our now much higher recursion capability.
  • fast/js/deep-recursion-test.html:
23:24 Changeset [32800] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Implement popup menu support for wx port.

https://bugs.webkit.org/show_bug.cgi?id=18776

22:48 Changeset [32799] by adachan@apple.com

#include <wtf/StrHash.h> in identifier.cpp.

Reviewed by Maciej.

  • kjs/identifier.cpp:
22:16 Changeset [32798] by kevino@webkit.org

Reviewed by Eric Seidel.

Make sure we properly set the button for all mouse events, not just mouse down, set the click count to 0 for non-click events, and finally set the timestamp.

https://bugs.webkit.org/show_bug.cgi?id=18464

21:12 Changeset [32797] by oliver@apple.com

Bug 18827: SquirrelFish: Prevent getters and setters from destroying the current RegisterFile
<https://bugs.webkit.org/show_bug.cgi?id=18827>

Reviewed by Maciej and Geoff

Remove safe/unsafe RegisterFile concept, and instead just add additional
logic to ensure we always push/pop RegisterFiles when executing getters
and setters, similar to the logic for valueOf and toString.

20:00 Changeset [32796] by weinig@apple.com

2008-05-01 Sam Weinig <sam@webkit.org>

Add missing result.

  • fast/canvas/canvas-path-with-inf-nan-dimensions-expected.txt: Added.
19:34 Changeset [32795] by weinig@apple.com

2008-05-01 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe (in his infinite wisdom).

Auto-generate the JSXSLTProcessor binding.

  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty):
  • bindings/js/JSDOMWindowBase.h: (WebCore::JSDOMWindowBase::):
  • bindings/js/JSXSLTProcessor.cpp: Removed.
  • bindings/js/JSXSLTProcessor.h: Removed.
  • xml/XSLTProcessor.h:
19:27 Changeset [32794] by mrowe@apple.com

Versioning.

19:26 Changeset [32793] by mrowe@apple.com

Merge r32789.

19:23 Changeset [32792] by mrowe@apple.com

New tag.

19:08 Changeset [32791] by weinig@apple.com

WebCore:

2008-05-01 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Fixes:

This patch changes us to perform same-origin checks based on the lexical global object)
rather than dynamic global object, which is now possible we don't re-use the window on
navigations, but rather switch in a new one and re-use the outer shell. This is both
more secure and conforms with the HTML5 specification. Now that all the checks are
done based on the lexical global object, we can remove the SecurityOrigin::Reason
concept, as it was only around to work around an ebay.com bug that required the check to
be done that way.

An important thing to note is that we currently implement a stricter than necessary policy
and perform the same-origin check based on the currently active global object to avoid leaking
the document in cases when the target frame is navigated before access. This will be fixed in
an upcoming patch.

  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::allowsAccessFrom): (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage): (WebCore::JSDOMWindowBase::allowsAccessFromPrivate): (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage): (WebCore::JSDOMWindowBase::printErrorMessage): (WebCore::asJSDOMWindow):
  • bindings/js/JSDOMWindowBase.h:
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::checkOrigin): (WebCore::CanvasRenderingContext2D::createPattern):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::write): (WebCore::FrameLoader::setOpener): (WebCore::FrameLoader::shouldAllowNavigation):
  • page/DOMWindow.h: (WebCore::DOMWindow::setSecurityOrigin): (WebCore::DOMWindow::securityOrigin): (WebCore::DOMWindow::setURL): (WebCore::DOMWindow::url):
  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::canAccess): (WebCore::SecurityOrigin::isSecureTransitionTo):
  • platform/SecurityOrigin.h:

LayoutTests:

2008-05-01 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

  • http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
  • http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
  • http/tests/security/xss-eval-expected.txt:
18:34 Changeset [32790] by andersca@apple.com

WebCore:

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Mark.

Enable 64-bit NPAPI plugins.


  • WebCore.xcodeproj/project.pbxproj: Don't remove NPAPI related symbols from the 64-bit .exp file.


  • bridge/npruntime.h: Remove now unnecessary #error.

WebKit/mac:

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Mark.

64-bit NPAPI plugin build fixes.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): (-[WebBaseNetscapePluginView updateAndSetWindow]): (-[WebBaseNetscapePluginView start]): (-[WebBaseNetscapePluginView windowBecameKey:]):
  • Plugins/WebNetscapeDeprecatedFunctions.c:
  • Plugins/WebNetscapeDeprecatedFunctions.h:
  • Plugins/WebNetscapePluginEventHandler.mm: (WebNetscapePluginEventHandler::create):
  • Plugins/WebNetscapePluginEventHandlerCarbon.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm:
  • Plugins/WebPluginDatabase.m: (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
18:10 Changeset [32789] by sfalken@apple.com

2008-05-01 Steve Falkenburg <sfalken@apple.com>

Build fix.

18:02 Changeset [32788] by mjs@apple.com

2008-05-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver (a while ago)

  • just a wee bit more bindings speedup


Store the per-document Node --> JS wrapper cache in the document
instead of an external hashtable.

  • bindings/js/kjs_binding.cpp: (WebCore::ScriptInterpreter::getDOMNodeForDocument): (WebCore::ScriptInterpreter::forgetDOMNodeForDocument): (WebCore::ScriptInterpreter::putDOMNodeForDocument): (WebCore::ScriptInterpreter::forgetAllDOMNodesForDocument): (WebCore::ScriptInterpreter::markDOMNodesForDocument):
  • dom/Document.h: (WebCore::Document::wrapperCache):
17:15 Changeset [32787] by andersca@apple.com

WebCore:

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Tim.

Remove duplicate npfunctions.h header from WebKit.


  • WebCore.xcodeproj/project.pbxproj: Add npfunctions.h and set its role to private.


  • plugins/npfunctions.h: Merge Mac specific changes.

WebKit:

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Tim.

Remove npfunctions.h


  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Tim.

Remove duplicate npfunctions.h header from WebKit.

  • MigrateHeaders.make: Migrate npfunctions.h


  • Plugins/npfunctions.h: Removed.
16:58 Changeset [32786] by weinig@apple.com

2008-05-01 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Rename toJSDOMWindow(KJS::JSGlobalObject) to asJSDOMWindow, as all it does is
cast.

  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::toVoidCallback):
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::create):
  • bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::add): (WebCore::JSDOMApplicationCache::remove):
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::allowPopUp): (WebCore::createWindow): (WebCore::windowProtoFuncOpen): (WebCore::asJSDOMWindow):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::setLocation): (WebCore::JSDOMWindow::postMessage):
  • bindings/js/JSDatabaseCustom.cpp: (WebCore::JSDatabase::changeVersion): (WebCore::JSDatabase::transaction):
  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::setLocation):
  • bindings/js/JSLocationCustom.cpp: (WebCore::navigateIfAllowed): (WebCore::JSLocation::setHref): (WebCore::JSLocation::replace): (WebCore::JSLocation::reload): (WebCore::JSLocation::assign):
  • bindings/js/JSSQLTransactionCustom.cpp: (WebCore::JSSQLTransaction::executeSql):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::open):
  • page/JavaScriptDebugServer.cpp: (WebCore::toPage):
16:58 Changeset [32785] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

Disable an SVG font test that crashes.


http://bugs.webkit.org/show_bug.cgi?id=18830 tracks fixing the crash.


  • svg/W3C-SVG-1.1/fonts-glyph-02-t.svg: Removed.
  • svg/W3C-SVG-1.1/fonts-glyph-02-t.svg-disabled: Copied from svg/W3C-SVG-1.1/fonts-glyph-02-t.svg.
16:54 Changeset [32784] by mitz@apple.com

WebCore:

2008-05-01 Anatoli Papirovski <apapirovski@mac.com>

Reviewed by Dave Hyatt.

Test: fast/replaced/absolute-position-percentage-width.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcReplacedWidthUsing):

LayoutTests:

2008-05-01 Anatoli Papirovski <apapirovski@mac.com>

Reviewed by Dave Hyatt.

  • fast/replaced/absolute-position-percentage-width.html: Added.
  • platform/mac/fast/replaced/absolute-position-percentage-width-expected.checksum: Added.
  • platform/mac/fast/replaced/absolute-position-percentage-width-expected.png: Added.
  • platform/mac/fast/replaced/absolute-position-percentage-width-expected.txt: Added.
16:36 Changeset [32783] by mitz@apple.com
  • Windows build fix
  • platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs):
16:33 Changeset [32782] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by John.


Add null checks for the event handler.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView stopTimers]): (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
16:10 Changeset [32781] by mitz@apple.com

Reviewed by Darin Adler.

  • make synthetic bold and synthetic italics work in GDI text
  • account for synthetic bold in complex text on Windows
  • platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Adjusted the text rectangle's x coordinates to fit italics. Added a skew transform for synthetic italics and a second paint pass for synthetic bold.
  • platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::widthForGDIGlyph): Added the synthetic bold offset.
  • platform/graphics/win/UniscribeController.cpp: (WebCore::UniscribeController::shapeAndPlaceItem): Added the synthetic bold offset.
15:53 Changeset [32780] by alp@webkit.org

2008-05-01 Alp Toker <alp@nuanti.com>

Qt/Win build fix attempt following plugin changes. Add missing return
statements.

Also fixes some newly introduced coding style issues in the Qt port.

  • platform/qt/FileSystemQt.cpp: (WebCore::openTemporaryFile): (WebCore::closeFile): (WebCore::writeToFile): (WebCore::unloadModule):
15:39 Changeset [32779] by oliver@apple.com

Rename unsafeForReentry to safeForReentry to avoid double negatives.

RS=Geoff

15:21 Changeset [32778] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Fix 64-bit build.


  • Plugins/WebNetscapePluginEventHandlerCocoa.h:
  • Plugins/WebNetscapePluginEventHandlerCocoa.mm:
  • WebCoreSupport/WebFrameLoaderClient.mm:
15:01 Changeset [32777] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Fix build.


  • Plugins/npfunctions.h:
14:38 BuildingGtk edited by alp@atoker.com
Remove non-working link to Aplix wiki (feel free to re-add if this is … (diff)
14:37 HackingGtk edited by alp@atoker.com
Add plugin-related sources to bundled code list (diff)
14:28 Changeset [32776] by eric@webkit.org

Rubber-stamped by Sam Weinig.


Mark a couple UTF16 files as binary so windows-svn doesn't mutilate them on checkout.

  • fast/xsl/xslt-enc16.xml: add svn:mime-type application/octet-stream
  • fast/xsl/xslt-enc16to16.xml: add svn:mime-type application/octet-stream
13:43 Changeset [32775] by ddkilzer@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Export methods needed to subclass Widget. (See r32770.)

  • WebCore.base.exp:
13:25 Changeset [32774] by mrowe@apple.com

Versioning.

13:06 Changeset [32773] by mrowe@apple.com

Merge branch 'snowleopard-presubmission-2008-04-28' into safari-6526.3-local

12:59 Changeset [32772] by mrowe@apple.com

Versioning.

12:57 Changeset [32771] by mrowe@apple.com

New tag.

12:42 Changeset [32770] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Forward mouse move events to the Netscape plug-in view.


  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView handleMouseMoved:]): New method that just calls the current event handler.


  • Plugins/WebNetscapePluginEventHandlerCocoa.mm: (WebNetscapePluginEventHandlerCocoa::flagsChanged): NSFlagsChanged is not a regular keyboard event and some of the NSEvent accessors don't work on it so don't call them.


  • WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::NetscapePluginWidget): New Widget subclass to be used for Netscape plug-ins.


(NetscapePluginWidget::handleEvent):
Forward NSMouseMoved events to the plug-in.


(WebFrameLoaderClient::createPlugin):
Wrap the plug-in view in a NetscapePluginWidget.

12:15 Changeset [32769] by alice.liu@apple.com

2008-05-01 Alice Liu <alice.liu@apple.com>

Rubber-stamped by Sam Weinig.

fast/events/tabindex-focus-blur-all.html was timing out on some machines
Make this test faster by not doing += on innerHTML.

  • fast/events/resources/tabindex-focus-blur-all.js:
11:52 Changeset [32768] by ddkilzer@apple.com

Cleaned up ugly if/else statement.

11:34 Changeset [32767] by ddkilzer@apple.com

Clean up configuration usage in run-webkit-tests

Reviewed by Adam.

  • Scripts/run-webkit-tests: Parse configuration switches using passedConfiguration() from webkitdirs.pm like every other script. Note that we must still call setConfiguration() afterwards in case the --configuration switch was used. Use $configurationOption when running build-dumprendertree instead of recreating the switch.
11:15 Changeset [32766] by alp@webkit.org

2008-05-01 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>

Reviewed by Alp Toker.
Qt parts OK'ed by Simon Hausmann.

Based on work by several authors.

https://bugs.webkit.org/show_bug.cgi?id=14750
Added support for NPAPI plugins on Gtk and Qt-x11 ports.

11:14 Changeset [32765] by weinig@apple.com

2008-05-01 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Turn off deprecated warnings for WebNetscapePluginEventHandlerCarbon.mm.

  • WebKit.xcodeproj/project.pbxproj:
11:09 Changeset [32764] by weinig@apple.com

2008-05-01 Sam Weinig <sam@webkit.org>

Update results with -webkit-box-reflect values.

  • fast/css/computed-style-expected.txt:
  • fast/css/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
10:48 Changeset [32763] by weinig@apple.com

JavaScriptCore:

2008-05-01 Sam Weinig <sam@webkit.org>

Fix build.

WebCore:

2008-05-01 Sam Weinig <sam@webkit.org>

Fix build.

  • ForwardingHeaders/wtf/StrHash.h: Added.
10:15 Changeset [32762] by andersca@apple.com

2008-05-01 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Move management of cache groups to ApplicationCacheStorage. Also,
application caches now start out with a null group and will have their group set
when the cache has finished loading.

  • loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::ApplicationCache): Initialize m_group to 0.


(WebCore::ApplicationCache::~ApplicationCache):
Null check the group.


(WebCore::ApplicationCache::setGroup):
New method for setting the group.


  • loader/appcache/ApplicationCache.h: (WebCore::ApplicationCache::create): Remove the group argument.


  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup): Let the storage know that the cache group has been destroyed.


(WebCore::ApplicationCacheGroup::cacheForMainRequest):
Call into the storage.


(WebCore::ApplicationCacheGroup::selectCache):
Call into the storage.


(WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
When there are no document loaders associated with the cache group,
set the newest cache to 0.


(WebCore::ApplicationCacheGroup::cacheDestroyed):
Delete the group if there are no associated caches.


(WebCore::ApplicationCacheGroup::setNewestCache):
New method that will set the newest cache and associate the group with the cache.


(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
Call setNewestCache instead.


  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::urlHostHash): Move host hash method here.


(WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
New method that finds a cache group with a given manifest URL or creates a new one.

(WebCore::ApplicationCacheStorage::cacheGroupForURL):
New method that returns a cache group for a given URL.


(WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
When the cache group has been destroyed, remove it from the hash map.


  • loader/appcache/ApplicationCacheStorage.h: Add new methods.I b
09:50 Changeset [32761] by alp@webkit.org

2008-05-01 Dan Winship <danw@gnome.org>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=18490
Add mostly-working file: support and mostly-broken ftp: support to
the soup backend.

  • platform/network/soup/ResourceHandleSoup.cpp (start): after doing basic checks, delegate to one of three submethods (startData): handles data: URLs (startHttp): handles http: and https: URLs, via libsoup (startGio, etc): handles file: and ftp: URLs, via gio. Lots of FIXMEs detailing the parts that don't fully work yet.
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleInternal.h: add new member variables for gio-based loading
09:32 Changeset [32760] by kmccullough@apple.com

2008-05-01 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Fix "sample" output so that it can be imported into Instruments
  • Also keep track of number of times a function is profiled.
  • JavaScriptCore.xcodeproj/project.pbxproj: Add StrHash.h which needed to be pulled out of identifier.cpp so that it could be used by the profiler and identifiers.
  • kjs/identifier.cpp: Ditto.
  • profiler/FunctionCallProfile.cpp: (KJS::FunctionCallProfile::printDataInspectorStyle): Inspector style printing should show microseconds. (KJS::FunctionCallProfile::printDataSampleStyle): Sample style printing now counts the number of times a function is in the stack tree and does not print microseconds since that does not make sense for a sampler.
  • profiler/FunctionCallProfile.h: Keep track of number of times a function is profiled. (KJS::FunctionCallProfile::numberOfCalls):
  • profiler/Profiler.cpp: (KJS::functionNameCountPairComparator): Comparator for sort function in printDataSampleStyle. (KJS::Profiler::printDataSampleStyle): Print the number of times that a function is listed in the stack tree in order of most times listed.
  • wtf/HashCountedSet.h: Added copyToVector since it didn't exist and is a more standard way to copy a HashSet to a Vector. I added on variant that takes a pair as the Vector's type and so the HashCountedSet simply fills in that pair with its internal pair, and another variant that takes a Vector of the type of the HashCountedSet and only fills in the Vector with the first element of the pair. (WTF::copyToVector):
  • wtf/StrHash.h: Added. (WTF::):
08:56 Changeset [32759] by alp@webkit.org

2008-05-01 Alp Toker <alp@nuanti.com>

Rubber-stamped by Anders.

GTK+ build fix for changes in r32752. Use int32, not int32_t types in
npapi.h.

Additional fix to use same signedness in npapi.h and Mac for the
interval parameter.

04:26 Changeset [32758] by oliver@apple.com

Bug 18827: SquirrelFish: Prevent getters and setters from destroying the current RegisterFile
<https://bugs.webkit.org/show_bug.cgi?id=18827>

Reviewed by Maciej

This patch makes getters and setters work. It does this by
tracking whether the RegisterFile is "safe", that is whether
the interpreter is in a state that in which it can handle
the RegisterFile being reallocated.

04/30/08:

22:00 Changeset [32757] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Release build fix: Always compile in "isGlobalObject", since it's
listed in our .exp file.

  • kjs/ExecState.cpp: (KJS::ExecState::isGlobalObject):
  • kjs/ExecState.h:
21:46 Changeset [32756] by oliver@apple.com

Minor code restructuring to prepare for getters and setters,
also helps exception semantics a bit.

Reviewed by Maciej

19:01 Changeset [32755] by jchaffraix@webkit.org

2008-04-30 Julien Chaffraix <jchaffraix@webkit.org>

Qt 4.3 build fix.

Fixes a brace error that made Qt 4.4 build but not Qt 4.3.

  • Api/qwebview.cpp: (QWebView::event):
18:31 Changeset [32754] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Fixed tyop.

  • kjs/ExecState.h:
18:29 Changeset [32753] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Debug build fix: export a missing symbol.

17:28 Changeset [32752] by andersca@apple.com

WebCore:

2008-04-30 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Add new Cocoa event model type declarations.


  • bridge/npapi.h:

WebKit:

2008-04-30 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Add Cocoa event handler.


  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-04-30 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Add new Cocoa event model and the NPN_ScheduleTimer/NPN_UnscheduleTimer methods.


  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (PluginTimer::PluginTimer): (PluginTimer::start): (PluginTimer::fired): (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): (-[WebBaseNetscapePluginView stopTimers]): (-[WebBaseNetscapePluginView restartTimers]): (-[WebBaseNetscapePluginView scrollWheel:]): (-[WebBaseNetscapePluginView flagsChanged:]): (-[WebBaseNetscapePluginView start]): (-[WebBaseNetscapePluginView eventModel]): (-[WebBaseNetscapePluginView fini]): (-[WebBaseNetscapePluginView getVariable:value:]): (-[WebBaseNetscapePluginView setVariable:value:]): (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): (-[WebBaseNetscapePluginView unscheduleTimer:]):
  • Plugins/WebBaseNetscapePluginViewInternal.h:
  • Plugins/WebBaseNetscapePluginViewPrivate.h:
  • Plugins/WebNetscapePluginEventHandler.h:
  • Plugins/WebNetscapePluginEventHandler.mm: (WebNetscapePluginEventHandler::create):
  • Plugins/WebNetscapePluginEventHandlerCarbon.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: (WebNetscapePluginEventHandlerCarbon::scrollWheel): (WebNetscapePluginEventHandlerCarbon::flagsChanged): (WebNetscapePluginEventHandlerCarbon::platformWindow):
  • Plugins/WebNetscapePluginEventHandlerCocoa.h: Added. (WebNetscapePluginEventHandlerCocoa::startTimers): (WebNetscapePluginEventHandlerCocoa::stopTimers):
  • Plugins/WebNetscapePluginEventHandlerCocoa.mm: Added. (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa): (WebNetscapePluginEventHandlerCocoa::drawRect): (WebNetscapePluginEventHandlerCocoa::mouseDown): (WebNetscapePluginEventHandlerCocoa::mouseDragged): (WebNetscapePluginEventHandlerCocoa::mouseEntered): (WebNetscapePluginEventHandlerCocoa::mouseExited): (WebNetscapePluginEventHandlerCocoa::mouseMoved): (WebNetscapePluginEventHandlerCocoa::mouseUp): (WebNetscapePluginEventHandlerCocoa::scrollWheel): (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): (WebNetscapePluginEventHandlerCocoa::keyDown): (WebNetscapePluginEventHandlerCocoa::keyUp): (WebNetscapePluginEventHandlerCocoa::flagsChanged): (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): (WebNetscapePluginEventHandlerCocoa::focusChanged): (WebNetscapePluginEventHandlerCocoa::platformWindow): (WebNetscapePluginEventHandlerCocoa::sendEvent):
  • Plugins/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
  • Plugins/npapi.m: (NPN_ScheduleTimer): (NPN_UnscheduleTimer):
  • Plugins/npfunctions.h:
17:08 Changeset [32751] by bdakin@apple.com

2008-04-30 Beth Dakin <bdakin@apple.com>

Reviewed by Sam Weinig.

This patch does three things:

  1. Adds support for the "img" ARIA role
  2. Switches over to a HashMap for converting ARIA role attributes to WebCore's AccessibilityRole type.
  3. Fixes a crash in the new ARIA code that I ran into while browsing with VoiceOver enabled.
  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::headingLevel): This is the crash fix. Make sure the node's renderer is not null before looking up its corresponding AccessibilityObject in the cache. (WebCore::AccessibilityObject::accessibilityIsIgnored): Account for ARIA images. (WebCore::createARIARoleMap): Switch to HashMap, and add "img" to the Map. (WebCore::RoleEntry::): Same. (WebCore::ariaRoleToWebCoreRole): Same. (WebCore::AccessibilityObject::ariaRoleAttribute): Same.
16:16 Changeset [32750] by beidson@apple.com

2008-04-30 Brady Eidson <beidson@apple.com>

Fix my WebPreferences revert check-in

  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]):
16:11 Changeset [32749] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


A little more ExecState refactoring: Now, only the global object creates
an ExecState.


Also inlined ExecState::lexicalGlobalObject().


SunSpider reports no change.

15:37 Changeset [32748] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Build fix: #ifdef'd out some code that doesn't work anymore.

15:33 Changeset [32747] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Build fix: supply a parameter that used to be implicit to
Interpreter::evaluate.

15:33 Changeset [32746] by beidson@apple.com

2008-04-30 Brady Eidson <beidson@apple.com>

Rubberstamped by John Sullivan

Revert the remainder of my original preferences changes from last week.
They caused a massive PLT regression (too many notifications being sent out
or listened to that weren't previously) and it's not in my schedule to refine
the preferences code instead of working on my feature!

  • WebView/WebView.mm: (-[WebView _updateSettingsFromPreferences:]): (-[WebView _commonInitializationWithFrameName:groupName:]):
15:25 Changeset [32745] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

WebCore build fix: forward-declare ScopeChain.

  • kjs/interpreter.h:
15:23 Changeset [32744] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Build fix: #ifdef'd out some code that doesn't work anymore.

  • bindings/objc/WebScriptObject.mm: (+[WebScriptObject throwException:]): (-[WebScriptObject setException:]):
15:10 Changeset [32743] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Build fix: supply missing parameter that used to be implicit.

  • JSRun.cpp: (JSRun::Evaluate):
15:10 Changeset [32742] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Build fix for JavaScriptGlue: export a missing symbol.

15:09 Changeset [32741] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


#ifdef'd out some debugger code that doesn't work anymore.

  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame scopeChain]):
14:52 Changeset [32740] by andersca@apple.com

2008-04-30 Anders Carlsson <andersca@apple.com>

Fix the 64-bit build.


  • Plugins/WebNetscapePluginEventHandler.h:
  • Plugins/WebNetscapePluginEventHandler.mm:
  • Plugins/WebNetscapePluginEventHandlerCarbon.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm:
13:49 Changeset [32739] by ggaren@apple.com

2008-04-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Removed a lot of unused bits from ExecState, moving them into
OldInterpreterExecState, the fake scaffolding class.


The clutter was making it hard to see the forest from the trees.


.4% SunSpider speedup, probably because ExecState::lexicalGlobalObject()
is faster now.

13:47 Google Summer of Code 2008 edited by ddkilzer@apple.com
(diff)
13:36 Changeset [32738] by rwlbuis@webkit.org

Reviewed by Nikolas.

https://bugs.webkit.org/show_bug.cgi?id=16447
onload called too many times for <svg:image>
https://bugs.webkit.org/show_bug.cgi?id=12282
SVG wastes time in malloc to send loadEvents to non-existent listeners

Postpone load event dispatching for image when externalResourcesRequired is true, delaying parents but not siblings, and make sure the load event is sent once for image in all cases.

13:21 Changeset [32737] by hyatt@apple.com

WebCore:

2008-04-30 David Hyatt <hyatt@apple.com>

Fix crashes when dynamically removing <video> elements with layers that establish stacking contexts. This
won't typically crash release builds because of arena recycling.

Reviewed by Dan Bernstein


  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::~RenderLayer): Make sure to remove the reflection's child layer from its parent.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::~RenderMedia): (WebCore::RenderMedia::destroy): (WebCore::RenderMedia::removeChild):
  • rendering/RenderMedia.h: Adjust the teardown of RenderMedia so that it does all of its teardown inside destroy() (this makes it more like other renderers and doesn't leave you staring at a trashed layer hierarchy in the RenderMedia destructor).

LayoutTests:

2008-04-30 David Hyatt <hyatt@apple.com>

Add test for video crasher.

Reviewed by Dan Bernstein

  • media/video-layer-crash.html: Added.
  • platform/mac/media/video-layer-crash-expected.checksum: Added.
  • platform/mac/media/video-layer-crash-expected.png: Added.
  • platform/mac/media/video-layer-crash-expected.txt: Added.
11:00 Changeset [32736] by rwlbuis@webkit.org

Fix the ChangeLogs so it includes the details about r32719.

10:57 Changeset [32735] by mitz@apple.com

Adding Radar link

10:55 Changeset [32734] by mitz@apple.com

2008-04-30 Rémi Zara <remi_zara@mac.com>

Reviewed by Dave Hyatt.

fix https://bugs.webkit.org/show_bug.cgi?id=18618
REGRESSION (r31823-r31847): Patterns are upside down

  • svg/graphics/cg/SVGPaintServerPatternCg.cpp: (WebCore::patternCallback): flip the y axis when drawing the tile
10:32 Changeset [32733] by timothy@apple.com

Fixes an undefined type exception that fires when adding a resource to the inspector
that has a MIME type warning.

Reviewed by Adam Roben.

  • page/inspector/Resource.js:

(WebInspector.Resource.prototype._addTip): Call WebInspector.console instead of
WebInspector.consolePanel.
(WebInspector.Resource.prototype._checkWarning): Ditto.

10:32 Changeset [32732] by timothy@apple.com

Fixes the bug where the selected resource would be deselected after
changing the sort order in the Resources panel.

Reviewed by Dan Bernstein.

  • page/inspector/ResourcesPanel.js:

(WebInspector.ResourcesPanel.prototype._sortResourcesIfNeeded):
Rememebr if the tree element that we are sorting was selected, so
the selection can be restored after it is re-inserted. The onSelect
is suppressed since we don't need to show the resource again.

10:31 Changeset [32731] by timothy@apple.com

Fixes the regression where error bubbles in source views always show
"undefined" for the content because the message property on
ConsoleMessage was removed. Adds support for a plain text formated
message that is stored in the message proeprty.

Reviewed by Adam Roben.

  • page/inspector/Console.js:

(WebInspector.Console.prototype._format): Add a plainText argument that is passed to
the formatters.
(WebInspector.Console.prototype._formatvalue): Add a plainText argument, and a comment
about needing to honor it if the textContent of the output doesn't make sense.
(WebInspector.Console.prototype._formatvalue): Ditto.
(WebInspector.Console.prototype._formatstring): Ditto.
(WebInspector.Console.prototype._formatregexp): Ditto.
(WebInspector.Console.prototype._formatarray): Ditto.
(WebInspector.Console.prototype._formatnode): Ditto.
(WebInspector.Console.prototype._formatobject): Ditto.
(WebInspector.Console.prototype._formaterror): Ditto.
(WebInspector.ConsoleMessage): Call _format passing true for plainText. Get the
textContnet of the result and assign to the message proeprty. This property is
referenced from the SourceView.
(WebInspector.ConsoleMessage.prototype._format): Add a plainText argument. Build the
result element as a local and return it, instead of using formatedMessage directly.

10:31 Changeset [32730] by timothy@apple.com

Adds a helper function to convert a JSValueRef to a String.

Reviewed by Adam Roben.

  • page/InspectorController.cpp:

(WebCore::toString): Converts a JSValueRef to a String.
(WebCore::search): Use toString.
(WebCore::InspectorController::handleException): Ditto.

09:08 Changeset [32729] by hausmann@webkit.org

2008-04-30 Tor Arne Vestbø <tavestbo@trolltech.com>

Rubber-stamped by Simon

Updated the expected test results to reflect the fact that most render objects now are anonymous.

06:41 Changeset [32728] by hausmann@webkit.org

2008-04-30 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Build the Qt port with SVG Foreign Object support.

05:49 Changeset [32727] by hausmann@webkit.org

2008-04-30 Simon Hausmann <hausmann@webkit.org>

Reviewed by Holger.

Fix null pointer deference triggered by
LayoutTests/fast/loader/cancel-load-during-port-block-timer.html

03:25 Changeset [32726] by hausmann@webkit.org

2008-04-30 Tor Arne Vestbø <tavestbo@trolltech.com>

Rubber-stamped by Simon.

Updated the expected test results to the current font metrics.

03:22 Changeset [32725] by hausmann@webkit.org

2008-04-30 Simon Hausmann <hausmann@webkit.org>

Rubber-stamped by Holger.

Updated the skip list for the Qt port to exclude features currently
not implemented.

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

2008-04-30 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

In focusIn and focusOut event always update the active state of the
focus controller. Fixes ~400 failing layout tests due to missing
editing callbacks that relied on the correct focus.

02:07 Changeset [32723] by zecke@webkit.org

2008-04-30 Sean Egan <seanegan@gmail.com>

Reviewed and modified by Holger.

https://bugs.webkit.org/show_bug.cgi?id=17626
Support setting background color and a 16-bit alpha channel.

  • webkit/webkitprivate.h:
  • webkit/webkitwebview.cpp:
  • webkit/webkitwebview.h:
01:12 Changeset [32722] by hyatt@apple.com

2008-04-29 David Hyatt <hyatt@apple.com>

Improve the performance of masks by adding code to set more precise clips on the transparency layers
used to paint the content under the mask, and then also avoid creating transparency layers for the masks
themselves in common cases.

Reviewed by Dan Bernstein

  • platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawTiledImage): Fix a bug in drawTiledImage where the composite mode got lost in the double stretch case for nine piece images.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintFillLayers): (WebCore::InlineFlowBox::paintFillLayer): (WebCore::InlineFlowBox::paintMask): Optimize to only push a transparency layer for the mask if multiple images are combining. Add a new composite operator argument for use when painting fill layers to do direct destination-in compositing while painting images.
  • rendering/InlineFlowBox.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::paintMask): (WebCore::RenderBox::paintMaskImages): Optimize to only push a transparency layer for the mask if multiple images are combining.

(WebCore::RenderBox::maskClipRect):
A new method that attempts to compute a precise clip rect for the mask images.

(WebCore::RenderBox::paintFillLayers):
(WebCore::RenderBox::paintFillLayer):
(WebCore::RenderBox::paintFillLayerExtended):

  • rendering/RenderBox.h: Added the composite operator argument to the paintFillLayer methods.
  • rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::paintMask): Call the new base class paintMaskImages method for optimized mask painting.
  • rendering/RenderLayer.cpp: (WebCore::transparencyClipBox): Fix a coordinate space issue with transparencyClipBox when masks were used. The border box was in the wrong coordinate space. Moved the code into the layer's boundingBox() method instead.

(WebCore::RenderLayer::paintLayer):
Removed the code that always pushed a transparency layer before painting masks.

(WebCore::RenderLayer::boundingBox):
Call maskClipRect to shrink the bounding box of the layer to fit the mask clip.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintNinePieceImage): Added a composite operator argument for direct destination-in painting of nine piece images.
  • rendering/RenderObject.h: (WebCore::RenderObject::maskClipRect): (WebCore::RenderObject::paintFillLayerExtended): Base class stubs for RenderBox-implemented methods.
  • rendering/RenderTable.cpp: (WebCore::RenderTable::paintMask):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::paintMask): Modified to call the new paintMaskImages function.
  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::draw): SVG images now respect composite modes by pushing a transparency layer when the composite mode is anything other than source-over.
00:45 Changeset [32721] by hausmann@webkit.org

2008-04-30 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Rob Buis.

Fixed crash or assertion if SVG_FOREIGN_OBJECT is not enabled

00:45 Changeset [32720] by hausmann@webkit.org

2008-04-30 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Rob Buis.

Fixed compile, due to API change in XMLSerializer

04/29/08:

23:13 Changeset [32719] by rwlbuis@webkit.org

Reviewed by Eric.

https://bugs.webkit.org/show_bug.cgi?id=11939
Quirksmode: Ignores media types in stylesheet PIs

Transfer the xml-stylesheet pseudo attribute media to the css
stylesheet created from the ProcessingInstruction.

Tests: fast/css/xml-stylesheet-media-processing.xhtml

22:10 Changeset [32718] by oliver@apple.com

Bug 18643: SQUIRRELFISH: need to support implicit function calls (valueOf, toString, getters/setters)
<https://bugs.webkit.org/show_bug.cgi?id=18643>

Reviewed by Maciej

Prevent static slot optimisation for new variables and functions in
globally re-entrant code called from an an implicit function call.

This is necessary to prevent us from needing to resize the global
slot portion of the root RegisterFile during an implicit (and hence
unguarded) function call.

20:38 Changeset [32717] by adachan@apple.com

Support text shadow in WebDrawText().
Remove DrawTextAtPoint() since it is only called by WebDrawText().

Reviewed by Adam.

  • WebKit.vcproj/WebKit.def:
  • WebKit.vcproj/WebKit_debug.def:
  • WebKitGraphics.cpp: (WebDrawText):
  • WebKitGraphics.h:


20:27 Changeset [32716] by ddkilzer@apple.com

BUILD FIX for export of WTF::RefCounted<WebCore::FormData>::deref()

On the buildbot, this is a fatal error:

ld: symbols names listed in -exported_symbols_list: WebKitBuild/Release/DerivedSources/WebCore/WebCore.exp not in linked objects
ZN3WTF10RefCountedIN7WebCore8FormDataEE5derefEv
/usr/bin/libtool: internal link edit command failed

Newer dev tools only produce a warning:

ld warning: cannot export hidden symbol ZN3WTF10RefCountedIN7WebCore8FormDataEE5derefEv from WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/i386/DocumentLoader.o

  • WebCore.base.exp: Remove hidden symbol from export list.
20:21 Changeset [32715] by ddkilzer@apple.com

2008-04-29 David D. Kilzer <ddkilzer@apple.com>

BUILD FIX for Release build.

  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: (WebNetscapePluginEventHandlerCarbon::drawRect): Declare acceptedEvent separately so the compiler doesn't complain about an unused variable. (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): Ditto.
19:16 Changeset [32714] by andersca@apple.com

WebKit:

2008-04-29 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Add new event handlers.


  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-04-29 Anders Carlsson <andersca@apple.com>

Reviewed by Adam.

Refactor the Carbon event handling code out into a separate class in preparation for adding
the Cocoa event handling code.


  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): (-[WebBaseNetscapePluginView sendActivateEvent:]): (-[WebBaseNetscapePluginView sendDrawRectEvent:]): (-[WebBaseNetscapePluginView stopTimers]): (-[WebBaseNetscapePluginView restartTimers]): (-[WebBaseNetscapePluginView setHasFocus:]): (-[WebBaseNetscapePluginView mouseDown:]): (-[WebBaseNetscapePluginView mouseUp:]): (-[WebBaseNetscapePluginView mouseEntered:]): (-[WebBaseNetscapePluginView mouseExited:]): (-[WebBaseNetscapePluginView mouseDragged:]): (-[WebBaseNetscapePluginView keyUp:]): (-[WebBaseNetscapePluginView keyDown:]): (-[WebBaseNetscapePluginView cut:]): (-[WebBaseNetscapePluginView copy:]): (-[WebBaseNetscapePluginView paste:]): (-[WebBaseNetscapePluginView selectAll:]): (-[WebBaseNetscapePluginView start]): (-[WebBaseNetscapePluginView stop]): (-[WebBaseNetscapePluginView fini]): (-[WebBaseNetscapePluginView drawRect:]): (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): (-[WebBaseNetscapePluginView viewDidMoveToWindow]): (-[WebBaseNetscapePluginView windowBecameKey:]): (-[WebBaseNetscapePluginView windowResignedKey:]): (-[WebBaseNetscapePluginView windowDidMiniaturize:]): (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]): (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]): (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): (-[WebBaseNetscapePluginView _viewHasMoved]):
  • Plugins/WebBaseNetscapePluginViewInternal.h:
  • Plugins/WebNetscapePluginEmbeddedView.h:
  • Plugins/WebNetscapePluginEventHandler.h: Added. (WebNetscapePluginEventHandler::~WebNetscapePluginEventHandler): (WebNetscapePluginEventHandler::currentEventIsUserGesture): (WebNetscapePluginEventHandler::WebNetscapePluginEventHandler):
  • Plugins/WebNetscapePluginEventHandler.mm: Added. (WebNetscapePluginEventHandler::create):
  • Plugins/WebNetscapePluginEventHandlerCarbon.h: Added.
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: Added. (WebNetscapePluginEventHandlerCarbon::WebNetscapePluginEventHandlerCarbon): (getCarbonEvent): (modifiersForEvent): (WebNetscapePluginEventHandlerCarbon::sendNullEvent): (WebNetscapePluginEventHandlerCarbon::drawRect): (WebNetscapePluginEventHandlerCarbon::mouseDown): (WebNetscapePluginEventHandlerCarbon::mouseUp): (WebNetscapePluginEventHandlerCarbon::mouseEntered): (WebNetscapePluginEventHandlerCarbon::mouseExited): (WebNetscapePluginEventHandlerCarbon::mouseDragged): (WebNetscapePluginEventHandlerCarbon::mouseMoved): (WebNetscapePluginEventHandlerCarbon::keyDown): (keyMessageForEvent): (WebNetscapePluginEventHandlerCarbon::keyUp): (WebNetscapePluginEventHandlerCarbon::focusChanged): (WebNetscapePluginEventHandlerCarbon::windowFocusChanged): (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): (WebNetscapePluginEventHandlerCarbon::installKeyEventHandler): (WebNetscapePluginEventHandlerCarbon::removeKeyEventHandler): (WebNetscapePluginEventHandlerCarbon::nullEventTimerFired): (WebNetscapePluginEventHandlerCarbon::startTimers): (WebNetscapePluginEventHandlerCarbon::stopTimers): (WebNetscapePluginEventHandlerCarbon::sendEvent):
17:53 Changeset [32713] by ddkilzer@apple.com

Another BUILD FIX for ENABLE(DASHBOARD_SUPPORT)

  • dom/make_names.pl: Added #if ENABLE(DASHBOARD_SUPPORT) to Dashboard code.
17:31 Changeset [32712] by ddkilzer@apple.com

Top:

BUILD FIX for ENABLE(DASHBOARD_SUPPORT)

  • configure.ac: Added conditional for ENABLE_DASHBOARD_SUPPORT.

JavaScriptCore:

BUILD FIX for ENABLE(DASHBOARD_SUPPORT)

  • wtf/Platform.h: Defined ENABLE(DASHBOARD_SUPPORT) to 1 only for PLATFORM(MAC) and PLATFORM(WIN). Changed default to 0 for other ports.

WebCore:

BUILD FIX for ENABLE(DASHBOARD_SUPPORT)

  • DerivedSources.make: Removed duplication of targets for generating CSSPropertyNames.h and CSSValueKeywords.h.
  • GNUmakefile.am: Ditto. Added support for ENABLE_DASHBOARD_SUPPORT.
  • WebCore.pro: Added support for ENABLE_DASHBOARD_SUPPORT. Made both SVG and non-SVG variables of GENERATOR 6-A use new DASHBOARDSUPPORTCSSPROPERTIES variable.
17:13 Changeset [32711] by adachan@apple.com

Added missing return.

  • platform/win/COMPtr.h: (WTF::):
17:07 Changeset [32710] by alp@webkit.org

2008-04-29 Alp Toker <alp@nuanti.com>

GTK+ build fix attempt following breakage in r32700 which
conditionalised dashboard support.

  • GNUmakefile.am:
16:15 Changeset [32709] by mrowe@apple.com

Versioning.

16:14 Changeset [32708] by mrowe@apple.com

Merge r32706.

16:10 Changeset [32707] by mrowe@apple.com

New tag.

16:08 Changeset [32706] by mrowe@apple.com

2008-04-29 Mark Rowe <mrowe@apple.com>

Reviewed by David Harrison.

Ensure that WebDynamicScrollBarsView defines WebCoreScrollbarAlwaysOn to keep Mail building.

  • WebKit.exp:
  • WebView/WebDynamicScrollBarsView.h:
  • WebView/WebDynamicScrollBarsView.m:
16:00 Changeset [32705] by mitz@apple.com

2008-04-29 Anatoli Papirovski <apapirovski@mac.com>

Reviewed by Dan Bernstein.

Modified the SVG test case for RGB and RGBA parsing - mixing percentage and
numerical values is illegal.

  • svg/custom/rgbcolor-syntax.svg:
15:23 Changeset [32704] by aroben@apple.com

Restore the beloved COMPtr::operator&

WebCore:

Restore the beloved COMPtr::operator&

  • platform/win/COMPtr.h: Removed the HashTableDeletedValueType constructor and isHashTableDeletedValue and hashTableDeletedValue functions. (WTF::): Changed constructDeletedValue to play nicely with COMPtr::operator&.

WebKit/win:

Restore the beloved COMPtr::operator&

WebKitTools:

Restore the beloved COMPtr::operator&

15:03 SquirrelFishPerfIdeas edited by ggaren@apple.com
(diff)
14:53 Changeset [32703] by aroben@apple.com

Fixed ChangeLog order

14:50 Changeset [32702] by aroben@apple.com

Fix assertion on launch on Windows

  • platform/graphics/win/FontPlatformData.h: Pass WTF::HashTableDeletedValue to the m_font constructor instead of a bogus -1 value. This is needed because m_font is a RefPtr.
14:48 Changeset [32701] by aroben@apple.com

Windows build fixes

Replace COMPtr::operator& with COMPtr::adoptionPointer.

14:31 Changeset [32700] by ddkilzer@apple.com

JavaScriptCore:

2008-04-29 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin.

Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)

  • wtf/Platform.h:

WebCore:

2008-04-29 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin.

Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)

  • DerivedSources.make:
  • WebCore.DashboardSupport.exp: Added.
  • WebCore.base.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::setLocation):
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cleanup): (WebCore::CSSPrimitiveValue::cssText):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/DashboardRegion.h:
  • css/DashboardSupportCSSPropertyNames.in: Added.
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::importNode):
  • dom/Document.h:
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::fill): (WebCore::CanvasRenderingContext2D::stroke): (WebCore::CanvasRenderingContext2D::clip):
  • html/CanvasRenderingContext2D.h:
  • html/HTMLCanvasElement.cpp:
  • html/HTMLCanvasElement.h:
  • page/Chrome.cpp:
  • page/ChromeClient.h:
  • page/Frame.cpp: (WebCore::Frame::paint):
  • page/Frame.h:
  • page/FrameView.cpp: (WebCore::FrameView::layout):
  • page/FrameView.h:
  • page/Settings.cpp: (WebCore::Settings::Settings):
  • page/Settings.h:
  • page/mac/EventHandlerMac.mm: (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
  • page/mac/FrameMac.mm:
  • page/mac/WebDashboardRegion.h:
  • page/mac/WebDashboardRegion.m:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::setHasHorizontalScrollbar): (WebCore::RenderLayer::setHasVerticalScrollbar): (WebCore::RenderLayer::updateScrollInfoAfterLayout):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle):
  • rendering/RenderObject.h:
  • rendering/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::operator==): (WebCore::RenderStyle::diff):
  • rendering/RenderStyle.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::setRequestHeader):

WebKit/mac:

2008-04-29 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin.

Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:
  • WebView/WebClipView.m: (-[WebClipView scrollWheel:]):
  • WebView/WebHTMLView.mm: (-[WebHTMLView addMouseMovedObserver]): (-[WebHTMLView removeMouseMovedObserver]): (-[WebHTMLView acceptsFirstMouse:]):
  • WebView/WebUIDelegatePrivate.h:
  • WebView/WebView.mm: (-[WebViewPrivate init]):
  • WebView/WebViewPrivate.h:
14:07 Changeset [32699] by aroben@apple.com

Windows build fix

WebCore:

Windows build fix

This removes COMPtr::operator&, which didn't jive with HashTable. It
is replaced by COMPtr::adoptionPointer.

Discussed with Darin Adler and Anders Carlsson.

  • platform/win/COMPtr.h: Replaced operator& with adoptionPointer.

WebKit/win:

Windows build fix

Replaced uses of COMPtr::operator& with COMPtr::adoptionPointer.

14:02 Changeset [32698] by aroben@apple.com

Fix a Windows build error

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::variableNames): Don't use ::adopt now that PropertyNameArray has no swap function.
13:49 Changeset [32697] by hyatt@apple.com

Add reflection example photo.

13:39 Changeset [32696] by ggaren@apple.com

2008-04-29 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


In nested program code, don't propogate "this" back to the parent
register file. ("this" should remain constant in the parent register
file, regardless of the scripts it invokes.)

  • VM/RegisterFile.cpp: (KJS::RegisterFile::copyGlobals):
13:34 Changeset [32695] by hyatt@apple.com

WebCore:

2008-04-29 David Hyatt <hyatt@apple.com>

Implement the new box-reflect property in CSS. This property enables real-time reflections on
objects (yes you can reflect <video>!).

Reviewed by Dan Bernstein

Test cases added in fast/reflections/

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::valueForReflection): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseReflect): (WebCore::BorderImageParseContext::commitBorderImage): (WebCore::CSSParser::parseBorderImage): (WebCore::parseGradientColorStop): (WebCore::CSSParser::parseTransform):
  • css/CSSParser.h:
  • css/CSSPropertyNames.in:
  • css/CSSReflectValue.cpp: Added. (WebCore::CSSReflectValue::cssText):
  • css/CSSReflectValue.h: Added. (WebCore::): (WebCore::CSSReflectValue::CSSReflectValue): (WebCore::CSSReflectValue::direction): (WebCore::CSSReflectValue::offset): (WebCore::CSSReflectValue::mask): (WebCore::CSSReflectValue::setDirection): (WebCore::CSSReflectValue::setOffset): (WebCore::CSSReflectValue::setMask):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::mapNinePieceImage):
  • css/CSSStyleSelector.h:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesVertically): (WebCore::InlineFlowBox::paintMask):
  • rendering/Length.h: (WebCore::Length::calcFloatValue):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::overflowHeight): (WebCore::RenderBlock::overflowWidth): (WebCore::RenderBlock::overflowLeft): (WebCore::RenderBlock::overflowTop): (WebCore::RenderBlock::overflowRect): (WebCore::RenderBlock::layoutBlock):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::setStyle): (WebCore::RenderBox::paintMask): (WebCore::RenderBox::imageChanged): (WebCore::RenderBox::computeAbsoluteRepaintRect):
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::~RenderLayer): (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::enclosingPositionedAncestor): (WebCore::RenderLayer::enclosingTransformedAncestor): (WebCore::RenderLayer::isTransparent): (WebCore::transparencyClipBox): (WebCore::RenderLayer::operator delete): (WebCore::RenderLayer::destroy): (WebCore::RenderLayer::removeOnlyThisLayer): (WebCore::RenderLayer::insertOnlyThisLayer): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::updateZOrderLists): (WebCore::RenderLayer::updateOverflowList): (WebCore::RenderLayer::collectLayers): (WebCore::RenderLayer::shouldBeOverflowOnly): (WebCore::RenderLayer::styleChanged): (WebCore::RenderLayer::reflectionLayer): (WebCore::RenderLayer::createReflection): (WebCore::RenderLayer::updateReflectionStyle):
  • rendering/RenderLayer.h: (WebCore::RenderLayer::hasReflection): (WebCore::RenderLayer::reflection): (WebCore::RenderLayer::paintingInsideReflection):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::requiresLayer): (WebCore::RenderObject::setStyle): (WebCore::RenderObject::updateImage): (WebCore::RenderObject::reflectionBox): (WebCore::RenderObject::reflectionOffset):
  • rendering/RenderObject.h: (WebCore::RenderObject::hasTransform): (WebCore::RenderObject::setHasReflection): (WebCore::RenderObject::hasReflection):
  • rendering/RenderReplica.cpp: Added. (WebCore::RenderReplica::RenderReplica): (WebCore::RenderReplica::~RenderReplica): (WebCore::RenderReplica::layout): (WebCore::RenderReplica::calcPrefWidths): (WebCore::RenderReplica::paint):
  • rendering/RenderReplica.h: Added. (WebCore::RenderReplica::renderName): (WebCore::RenderReplica::requiresLayer):
  • rendering/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::StyleRareNonInheritedData::reflectionDataEquivalent): (WebCore::RenderStyle::diff): (WebCore::RenderStyle::applyTransform):
  • rendering/RenderStyle.h: (WebCore::TranslateTransformOperation::apply): (WebCore::StyleReflection::StyleReflection): (WebCore::StyleReflection::operator==): (WebCore::StyleReflection::operator!=): (WebCore::StyleReflection::direction): (WebCore::StyleReflection::offset): (WebCore::StyleReflection::mask): (WebCore::StyleReflection::setDirection): (WebCore::StyleReflection::setOffset): (WebCore::StyleReflection::setMask): (WebCore::RenderStyle::boxReflect): (WebCore::RenderStyle::setBoxReflect): (WebCore::RenderStyle::initialBoxReflect):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::layout): (WebCore::RenderTable::paintMask):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::requiresLayer): (WebCore::RenderTableCell::paintMask):

LayoutTests:

2008-04-29 David Hyatt <hyatt@apple.com>

Implement support for the new box-reflect property. Tests of the new property.

Reviewed by Dan Bernstein

  • fast/reflections: Added.
  • fast/reflections/reflection-computed-style-expected.txt: Added.
  • fast/reflections/reflection-computed-style.html: Added.
  • fast/reflections/reflection-direction.html: Added.
  • fast/reflections/reflection-masks.html: Added.
  • fast/reflections/reflection-nesting.html: Added.
  • fast/reflections/resources: Added.
  • fast/reflections/resources/kate.png: Added.
  • fast/reflections/resources/vignette-mask.png: Added.
13:27 Changeset [32694] by bdakin@apple.com

2008-04-29 Beth Dakin <bdakin@apple.com>

Reviewed by Alice.

Initial implementation of the following ARIA roles: button,
checkbox, heading, link, radio, textbox.

  • html/HTMLAttributeNames.in: Add 'role' to list of attributes.
  • page/AccessibilityObject.cpp: When an ARIA role is set, the role overrides whatever the actual
11:09 Changeset [32693] by kmccullough@apple.com

2008-04-29 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

-<rdar://problem/5770054> JavaScript profiler (10928)
-Keep call count.

  • profiler/FunctionCallProfile.cpp: (KJS::FunctionCallProfile::FunctionCallProfile): (KJS::FunctionCallProfile::didExecute): Implements call count and fixed a bug where a stackIndex of 0 was causing the assert to be hit. (KJS::FunctionCallProfile::stopProfiling): (KJS::FunctionCallProfile::endAndRecordCall):
  • profiler/FunctionCallProfile.h:
10:36 Changeset [32692] by timothy@apple.com

Make the exceptions that the InspectorController catches log the
original file and line number, if present on the exception object.

Reviewed by Adam Roben.

  • page/InspectorController.cpp:

(WebCore::InspectorController::callFunction): Pass the context to HANDLE_EXCEPTION.
(WebCore::InspectorController::~InspectorController): Ditto.
(WebCore::InspectorController::scriptObjectReady): Ditto.
(WebCore::InspectorController::addScriptResource): Ditto.
(WebCore::InspectorController::updateScriptResourceRequest): Ditto.
(WebCore::InspectorController::updateScriptResourceResponse): Ditto.
(WebCore::InspectorController::updateScriptResource): Ditto.
(WebCore::InspectorController::addDatabaseScriptResource): Ditto.
(WebCore::InspectorController::addScriptConsoleMessage): Ditto.
(WebCore::InspectorController::handleException): Take a context. Pull the line
and sourceURL properties off the exception if it is an object.

  • page/InspectorController.h: Change handleException to take a context.
10:12 Changeset [32691] by timothy@apple.com

Remove .idl and .in files from WebCore's framework Resources.

10:05 Changeset [32690] by timothy@apple.com

Fixes a regression where the Page's debugger would not be reattached
when a new JSDOMWindow is created.

Reviewed by Sam Weinig.

  • bindings/js/kjs_proxy.cpp:

(WebCore::KJSProxy::clear): Call attachDebugger after creating the JSDOMWindow.

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore): For the case where the CachedPage doesn't
contain a window, reattach the debugger to the new JSDOMWindow by calling
proxy->attachDebugger. Also restore the setPageGroupIdentifier.

09:50 Changeset [32689] by mitz@apple.com

WebCore:

2008-04-29 Anatoli Papirovski <apapirovski@mac.com>

Reviewed by Darin Adler.

Fix for https://bugs.webkit.org/show_bug.cgi?id=18355
Fixed RGB and RGBA parsing to ignore the declaration when the value is not
"either three integer values or three percentage values."

  • css/CSSParser.cpp: (WebCore::CSSParser::parseColorParameters):

LayoutTests:

2008-04-29 Anatoli Papirovski <apapirovski@mac.com>

Reviewed by Darin Adler.

Fix for https://bugs.webkit.org/show_bug.cgi?id=18355
Updated the results of the layout test for "RGB color syntax error handling".

  • platform/mac/css2.1/t040306-syntax-01-f-expected.checksum:
  • platform/mac/css2.1/t040306-syntax-01-f-expected.png:
  • platform/mac/css2.1/t040306-syntax-01-f-expected.txt:
07:41 Changeset [32688] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Fix crash when setHtml gets called from slots connected to QWebPage::unsupportedContent

Ben found this crash in the demo browser.

In void MainResourceLoader::continueAfterContentPolicy(PolicyAction contentPolicy,

case PolicyDownload:

frameLoader()->client()->download(m_handle.get(), request(), m_handle.get()->request(), r);
receivedError(interruptionForPolicyChangeError());

We are in a policy check, the download() call will call setHtml, which will start loading
the data into a frame. The loading will cancel all policy checks and call ResourceLoader::releaseResources
which will set m_frame to 0. Then we return and invoke interruptionForPolicyChangeError() which
will use the m_frame->loader() but it is gone. Do not call into receivedError and
interruptionForPolicyChangeError if we are gone anyway...

07:34 Changeset [32687] by hausmann@webkit.org

Qt/Windows build fix. The externally declared hash tables are actually
declared const and the const is mangled in the symbol name, so when
importing they also need to be marked const.

When compiling without MULTIPLE_THREADS use a const HashTable&
instead of a HashTable& in ThreadClassInfoHashTables to avoid
initializing the latter with a const reference.

07:16 Changeset [32686] by hausmann@webkit.org

Simon Hausmann <hausmann@webkit.org>

Updated the layout tests after the latest submits to the Qt port
to our new baseline, after numerous fixes in RenderThemeQt
and assorted.

Updated the Skipped file with new expected failures that need
fixing.

02:47 Changeset [32685] by hausmann@webkit.org

Lincoln Ramsay <lincoln.ramsay@trolltech.com>

Fix compilation with QT_NO_PRINTER

01:51 Changeset [32684] by hausmann@webkit.org

Ariya Hidayat <ariya.hidayat@trolltech.com>

Ensure that relative URL is converted to absolute URL.

This is necessary because loading a relative URL is not really supported
(the web page may load, but the subsequent URLs for images and links will
not be resolved properly).
This also fixes https://bugs.webkit.org/show_bug.cgi?id=18484

01:51 Changeset [32683] by hausmann@webkit.org

Ariya Hidayat <ariya.hidayat@trolltech.com>

Simplification of Qt Launcher (no animation and use standard progress bar widget)

Status bar shows the hovered link without any animation. Progress bar just uses the standard QProgressBar (no custom widget). The launcher is leaner and faster to use under the debugger and/or valgrind.

01:51 Changeset [32682] by hausmann@webkit.org

Ariya Hidayat <ariya.hidayat@trolltech.com>

Update the cursor when the frame/page loading is finished.

This fixes https://bugs.webkit.org/show_bug.cgi?id=18712

01:51 Changeset [32681] by hausmann@webkit.org

Simon Hausmann <shausman@trolltech.com>

Fixes: QWebPage::acceptNavigationRequest not being called / linkClicked() not being emitted when clicking on <a href="..." target="_blank"> kind of links.

Call QWebPage::acceptNavigationRequest when the creation of a new window with
URL is requested. The frame pointer is set to null in this case.

01:47 Changeset [32680] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Rely on auto-boxing of C++ for the QCursor c'tor

01:47 Changeset [32679] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Add the remaining cursors that defaulted to PointerCursor

01:47 Changeset [32678] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Use the WebCore facility to do the scrolling. Move some code around.

01:42 Changeset [32677] by alice.liu@apple.com

WebCore:

2008-04-29 Alice Liu <alice.liu@apple.com>

Reviewed by Beth Dakin.

Comply with HTML5 spec about parsing tabindex property according to
integer parsing rules

Test: fast/parser/tabindex-parsing.html

  • html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute):

LayoutTests:

2008-04-29 Alice Liu <alice.liu@apple.com>

Reviewed by Beth Dakin.

Comply with HTML5 spec about parsing tabindex property according to
integer parsing rules

  • fast/parser/tabindex-parsing-expected.txt: Added.
  • fast/parser/tabindex-parsing.html: Added.
01:36 Changeset [32676] by hausmann@webkit.org

Fixes: Fix timing problem where scrollbars in subframes were sometimes not property repainted.

https://bugs.webkit.org/show_bug.cgi?id=18482

We need to repaint scrollbars after a geometry change, and also make sure
the computed clipping rect for the corners between scrollbars is propagated
to the chrome client without beeing intersected by the visible content rect
of the frame.

00:49 Changeset [32675] by hausmann@webkit.org

Ariya Hidayat <ariya.hidayat@trolltech.com>

fix potential crash when loading image(s)

Crash may occur. If compiled with 4.3, the variable is not initialized.

00:43 Changeset [32674] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Calling QWebView::setCursor will override the WebCore Cursor.
Calling QWebView::setCursor will override the WebCore Cursor using
QWidget::unsetCursor will revert to the WebCore Cursor.

For detecting the unset we have to compare the shape of the
cursor to the default arrow. Qt::WA_SetCursor can not be used
as it is set unconditionally but conditionally removed.

Calling QWidget::setCursor will immediately send the CursorChange
event. We listen to this event to decide if we currently use a
WebCore cursor, got a cursor from outside, or revert to the default.

This should be race free and work reliable, the manual test for this
is WebCore/manual-tests/cursor.html

00:34 Changeset [32673] by hausmann@webkit.org

Kavindra Devi Palaraja <kdpalara@trolltech.com>

Documentation fixes:

  • Fixed a qdoc warning
  • Mention that fav icons can be of arbitrary size
  • Fix signature of QWebPage::acceptNavigationRequest show in the documentation

04/28/08:

23:14 Changeset [32672] by rwlbuis@webkit.org

Reviewed by Maciej.

Build fix for Tiger.

23:05 Changeset [32671] by mitz@apple.com

WebCore:

Reviewed by Maciej Stachowiak.

  • rendering/InlineTextBox.cpp: (WebCore::paintTextWithShadows): The loop was doing one extra pass without shadow even in cases where the last pass with a shadow was painting the text at the right position (rather than outside the clip). Fixed that. The only case where a separate pass without shadow is needed is when there is text-stroke, since in that case all shadow passes paint the text outside the clip.

LayoutTests:

Reviewed by Maciej Stachowiak.

  • platform/mac/fast/css/shadow-multiple-expected.checksum:
  • platform/mac/fast/css/shadow-multiple-expected.png:
  • platform/mac/fast/repaint/shadow-multiple-horizontal-expected.checksum:
  • platform/mac/fast/repaint/shadow-multiple-horizontal-expected.png:
  • platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.checksum:
  • platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png:
  • platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.checksum:
  • platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.png:
  • platform/mac/fast/repaint/shadow-multiple-vertical-expected.checksum:
  • platform/mac/fast/repaint/shadow-multiple-vertical-expected.png:
22:53 SquirrelFishPerfIdeas edited by mjs@apple.com
(diff)
22:51 SquirrelFishPerfIdeas edited by mjs@apple.com
(diff)
22:30 SquirrelFishPerfIdeas edited by ggaren@apple.com
(diff)
21:10 Changeset [32670] by oliver@apple.com

Restore base pointer when popping a global RegisterFile

Reviewed by Geoff

20:57 Changeset [32669] by oliver@apple.com

Bug 18643: SQUIRRELFISH: need to support implicit function calls (valueOf, toString, getters/setters)
<https://bugs.webkit.org/show_bug.cgi?id=18643>

Reviewed by Geoff

Partial fix. This results in all implicit calls to toString or valueOf
executing in a separate RegisterFile, so ensuring that the the pointers
in the triggering interpreter don't get trashed. This still leaves the
task of preventing new global re-entry from toString and valueOf from
clobbering the RegisterFile.

20:14 Changeset [32668] by beidson@apple.com

WebCore:

2008-04-28 Brady Eidson <beidson@apple.com>

Reviewed by Sam Weinig

Add Storage.clear(), per updates to HTML5

Tests: storage/domstorage/localstorage/clear.html

storage/domstorage/sessionstorage/clear.html

  • storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::areaCleared):
  • storage/LocalStorageArea.h:
  • storage/SessionStorageArea.cpp: (WebCore::SessionStorageArea::areaCleared):
  • storage/SessionStorageArea.h:
  • storage/Storage.cpp: (WebCore::Storage::clear):
  • storage/Storage.h:
  • storage/Storage.idl:
  • storage/StorageArea.cpp: (WebCore::StorageArea::internalClear):
  • storage/StorageArea.h: (WebCore::StorageArea::clear):

LayoutTests:

2008-04-28 Brady Eidson <beidson@apple.com>

Reviewed by Sam Weinig

Add Storage.clear(), per updates to HTML5

  • storage/domstorage/localstorage/clear-expected.txt: Added.
  • storage/domstorage/localstorage/clear.html: Added.
  • storage/domstorage/sessionstorage/clear-expected.txt: Added.
  • storage/domstorage/sessionstorage/clear.html: Added.
18:54 Changeset [32667] by ggaren@apple.com

2008-04-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Simplified activation object a bit: No need to store the callee
in the activation object -- we can pull it out of the call frame
when needed, instead.


SunSpider reports no change.

18:30 Changeset [32666] by adele@apple.com

WebCore:

2008-04-28 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler.

WebCore part of fix for <rdar://problem/3709505>
Safari should have a way to upload bundles from the file upload control (as zip)

  • WebCore.base.exp: Added symbols.
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ask the application if a file will need to be replaced before it's uploaded. It will also give the replacement filename which is used to determine the correct mime-type and to construct the correct header.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm): Asks the application to generate any files for the form data before a form submission starts. (WebCore::FrameLoader::loadItem): ditto.
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didReceiveResponse): Tells the FormData from the request to remove any generated files if it needs to. (WebCore::ResourceLoader::didCancel): ditto. (WebCore::ResourceLoader::didFail): ditto.
  • platform/network/FormData.cpp: (WebCore::FormData::FormData): Initializes m_hasGeneratedFiles, which keeps track of whether there are files that will need to be removed. (WebCore::FormData::~FormData): Added. Assert that there are no files that need to be removed, but if there are, release builds will still remove them here. (WebCore::FormData::appendFile): Passes along a shouldGenerateFile flag to the FormDataElement. (WebCore::FormData::generateFiles): Added. Iterates through the FormDataElements, and using the ChromeClient pointer, asks the application to create any compressed files so the FormDataElements can store the paths. (WebCore::FormData::removeGeneratedFilesIfNeeded): Added. Removes generated files and their directories (if empty).
  • platform/network/FormData.h: (WebCore::FormDataElement::FormDataElement): Added a boolean to track whether the file will need to be generated, and a string to hold the path of the generated file.
  • platform/network/mac/FormDataStreamMac.mm: (WebCore::advanceCurrentStream): Uses the generated file path instead of the original file path when streaming the file. (WebCore::setHTTPBody): Uses the generated file path when determining the size of the file to be uploaded.
  • platform/FileSystem.h: Added directoryName.
  • platform/posix/FileSystemPOSIX.cpp: (WebCore::directoryName): Added.
  • platform/gtk/FileSystemGtk.cpp: (WebCore::directoryName): Added empty implementation.
  • platform/qt/FileSystemQt.cpp: (WebCore::directoryName): ditto.
  • platform/win/FileSystemWin.cpp: (WebCore::directoryName): ditto.
  • platform/wx/FileSystemWx.cpp: (WebCore::directoryName): ditto.

Added new ChromeClient methods to give the application control over the file compression for uploading.

  • page/Chrome.cpp: (WebCore::ChromeClient::shouldReplaceWithGeneratedFileForUpload): Added a default implementation. (WebCore::ChromeClient::generateReplacementFile): ditto.
  • page/ChromeClient.h:

WebKit/mac:

2008-04-28 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler.

WebKit part of fix for <rdar://problem/3709505>
Safari should have a way to upload bundles from the file upload control (as zip)

Added UIDelegate methods to let the application handle generating replacement files for uploads.
In this case, Safari will create archived files for bundles so they can be uploaded properly.

  • DefaultDelegates/WebDefaultUIDelegate.m: (-[WebDefaultUIDelegate webView:shouldReplaceUploadFile:usingGeneratedFilename:]): (-[WebDefaultUIDelegate webView:generateReplacementFile:]):
  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::shouldReplaceWithGeneratedFileForUpload): (WebChromeClient::generateReplacementFile):
  • WebView/WebUIDelegatePrivate.h:
18:28 Changeset [32665] by andersca@apple.com

WebCore:

2008-04-28 Anders Carlsson <andersca@apple.com>

Reviewed by Sam, Mark, Adele and Darin.

Add a (currently not called) method for opening the application cache database.


  • WebCore.base.exp:
  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::setCacheDirectory): (WebCore::ApplicationCacheStorage::openDatabase):
  • loader/appcache/ApplicationCacheStorage.h:

WebKit/mac:

2008-04-28 Anders Carlsson <andersca@apple.com>

Reviewed by Sam, Mark, Adele and Darin.

Initialize the application cache path.


  • WebView/WebView.mm: (WebKitInitializeApplicationCachePathIfNecessary): (-[WebView _commonInitializationWithFrameName:groupName:]):
18:18 Changeset [32664] by alice.liu@apple.com

WebCore:

2008-04-28 Alice Liu <alice.liu@apple.com>

Reviewed by Darin.

Fix <rdar://problem/4911289> Add tabindex property to all children
of HTMLElement (7138)
http://bugs.webkit.org/show_bug.cgi?id=7138

Test: fast/events/tabindex-focus-blur-all.html

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/objc/DOMPrivate.h: -DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h are no longer needed
  • bindings/objc/PublicDOMInterfaces.h: -Moving focus, blur, tabindex to HTMLElement from its descendants.
  • dom/Node.cpp: (WebCore::Node::Node): (WebCore::Node::isFocusable): (WebCore::Node::isKeyboardFocusable): -The concept of being focusable now needs to account for tabindex attribute.
  • dom/Node.h: -Need to use a bit to keep track of whether tabindex was explicitly set to 0 or was just initialized to 0. (WebCore::Node::tabIndex): -Make this virtual so that Anchors and GenericFormElements can determine tabindex without accounting for focusability (WebCore::Node::setTabIndexExplicitly): -Renamed setTabIndex() to setTabIndexExplicitly() so as not to hide behind and/or be confused for HTMLElement::setTabIndex
  • html/HTMLAnchorElement.cpp:
  • html/HTMLAnchorElement.h: (WebCore::HTMLAnchorElement::tabIndex):
  • html/HTMLGenericFormElement.cpp:
  • html/HTMLGenericFormElement.h: (WebCore::HTMLGenericFormElement::tabIndex): -Anchors and form elements are normally focusable, and need to avert the check for focusability in HTMLElement::tabIndex because tabIndex could be queried before a first layout happens.
  • html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute): -Function Node::setTabIndex changed to Node::setTabIndexExplicitly (WebCore::HTMLElement::isFocusable): -The concept of being focusable now needs to account for tabindex attribute. (WebCore::HTMLElement::tabIndex): -HTML5 specifies that querying tabindex for elements that aren't focusable shall return -1 (WebCore::HTMLElement::setTabIndex): -New default implementation
  • html/HTMLElement.h:
  • html/HTMLLegendElement.cpp: (WebCore::HTMLLegendElement::focus): -Now with HTML5's enhanced specification of tabindex, legend elements themselves shall focus (if they should), and not the first form element they encapsulate. This matches Firefox behavior. HTMLLabelElements still forward focus to the encapsulated element. This also matches other browsers.
  • html/HTMLAreaElement.cpp: (WebCore::HTMLAreaElement::isFocusable):
  • html/HTMLAreaElement.h: -HTMLAreaElement isn't subject to the same focusability requirements as its parent, HTMLAnchorElement. Default HTMLElement implementation is desired.
  • html/HTMLFieldSetElement.cpp: (WebCore::HTMLFieldSetElement::isFocusable):
  • html/HTMLLegendElement.cpp: (WebCore::HTMLLegendElement::isFocusable):
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::isFocusable):
  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::isFocusable): -These elements aren't subject to the same focusability requirements as their parent, HTMLGenericFormElement. Default HTMLElement implementation is desired.
  • html/HTMLAnchorElement.idl:
  • html/HTMLAreaElement.idl:
  • html/HTMLButtonElement.idl:
  • html/HTMLElement.idl:
  • html/HTMLInputElement.idl:
  • html/HTMLLabelElement.idl:
  • html/HTMLLegendElement.idl:
  • html/HTMLObjectElement.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLTextAreaElement.idl: -Moving tabindex attribute, focus and blur methods from descendants of HTMLElement to HTMLElement

WebKit/mac:

2008-04-28 Alice Liu <alice.liu@apple.com>

Reviewed by Darin.

Fix <rdar://problem/4911289> Add tabindex property to all children
of HTMLElement (7138)
http://bugs.webkit.org/show_bug.cgi?id=7138

  • MigrateHeaders.make: Removing DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h because now that focus() has been moved to DOMHTMLElement.h, these files are no longer needed.

LayoutTests:

2008-04-28 Alice Liu <alice.liu@apple.com>

Reviewed by Sam Weinig.

Fix <rdar://problem/4911289> Add tabindex property to all children
of HTMLElement (7138)
http://bugs.webkit.org/show_bug.cgi?id=7138

minor updates to these existing tests:

  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/plugin-attributes-enumeration-expected.txt:
  • fast/dom/resources/domListEnumeration.js:
  • fast/events/resources/abe.png: Added.
  • fast/events/resources/tabindex-focus-blur-all-frame1.html: Added.
  • fast/events/resources/tabindex-focus-blur-all-frame2.html: Added.
  • fast/events/resources/tabindex-focus-blur-all-iframe1.html: Added.
  • fast/events/resources/tabindex-focus-blur-all-iframe2.html: Added.
  • fast/events/resources/tabindex-focus-blur-all.js: Added.
  • fast/events/tabindex-focus-blur-all-expected.txt: Added.
  • fast/events/tabindex-focus-blur-all.html: Added.
17:26 Changeset [32663] by ggaren@apple.com

2008-04-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


RS by Oliver Hunt on moving JSArguments.cpp out of AllInOneFile.cpp.

Substantially more handling of "arguments": "arguments" works fully
now, but "f.arguments" still doesn't work.

Fixes 10 regression tests.


SunSpider reports no regression.

  • kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject): Reconstruct an arguments List to pass to the arguments object constructor.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/AllInOneFile.cpp: Removed JSActivation.cpp from AllInOneFile.cpp because that seems to make GCC happy. (Previously, I had added JSActivation.cpp to AllInOneFile.cpp because *that* seemed to make GCC happy. So it goes.)
16:39 Changeset [32662] by ggaren@apple.com

2008-04-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Groundwork for more handling of "arguments". I'm not checking in the
actual handling of "arguments" yet, because it still needs a little
fiddling to avoid a performance regression.


SunSpider reports no change.

  • VM/Machine.cpp: (KJS::initializeCallFrame): Put argc in the register file, so the arguments object can find it later, to determine arguments.length.
  • kjs/nodes.h: (KJS::FunctionBodyNode::): Added a special code accessor for when you know the code has already been generated, and you don't have a scopeChain to supply for potential code generation. (This is the case when the activation object creates the arguments object.)
16:04 Changeset [32661] by oliver@apple.com

Replace unsafe use of auto_ptr in Vector with manual memory
management.

Reviewed by Geoff

14:28 Changeset [32660] by mitz@apple.com

WebCore:

Reviewed by Dave Hyatt.

  • support multiple box- and text-shadows

Tests: fast/css/shadow-multiple.html

fast/repaint/shadow-multiple-horizontal.html
fast/repaint/shadow-multiple-strict-horizontal.html
fast/repaint/shadow-multiple-strict-vertical.html
fast/repaint/shadow-multiple-vertical.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::valueForShadow): Changed to account for reversing the order of the shadow values in the ShadowData list.
  • css/CSSValueList.cpp: (WebCore::CSSValueList::prepend): Added.
  • css/CSSValueList.h:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): Changed to account for all shadows in overflow calculation. (WebCore::InlineFlowBox::placeBoxesVertically): Ditto. (WebCore::InlineFlowBox::paint): Changed to account for all shadows when testing for intersection with the damage rect. (WebCore::InlineFlowBox::paintTextDecorations): Changed to paint all shadows.
  • rendering/InlineTextBox.cpp: (WebCore::paintTextWithShadows): Factored out from paint() and changed to paint all shadows. (WebCore::InlineTextBox::paint): Moved the text painting code out to paintTextWithShadows(). Changed to not paint shadows for markers and composition underlines and in "force black text" mode. (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintDecoration): Changed to paint all shadows.
  • rendering/InlineTextBox.h: Changed some public methods to private or protected.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::overflowHeight): Changed to account for all shadows. (WebCore::RenderBlock::overflowWidth): Ditto. (WebCore::RenderBlock::overflowLeft): Ditto. (WebCore::RenderBlock::overflowTop): Ditto. (WebCore::RenderBlock::overflowRect): Ditto. (WebCore::RenderBlock::layoutBlock): Ditto.
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): Ditto.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateRects): Ditto.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintBoxShadow): Changed to paint all shadows. Changed to avoid clipping out the box if it has a fully opaque background. (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Changed to account for all shadows. (WebCore::RenderObject::selectionForegroundColor): Cleaned up. (WebCore::RenderObject::adjustRectForOutlineAndShadow): Changed to account for all shadows.
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::adjustOverflowForBoxShadow): Ditto.
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::setTextShadow): Changed to prepend when adding so that the stacking order of shadows when painting will be "first o top". (WebCore::RenderStyle::setBoxShadow): Ditto.
  • rendering/RenderTable.cpp: (WebCore::RenderTable::layout): Changed to account for all shadows.

LayoutTests:

Reviewed by Dave Hyatt.

  • add rendering and invalidation tests for multiple shadows
  • fast/css/shadow-multiple.html: Added.
  • fast/repaint/shadow-multiple-horizontal.html: Added.
  • fast/repaint/shadow-multiple-strict-horizontal.html: Added.
  • fast/repaint/shadow-multiple-strict-vertical.html: Added.
  • fast/repaint/shadow-multiple-vertical.html: Added.
  • platform/mac/fast/css/shadow-multiple-expected.checksum: Added.
  • platform/mac/fast/css/shadow-multiple-expected.png: Added.
  • platform/mac/fast/css/shadow-multiple-expected.txt: Added.
  • platform/mac/fast/repaint/shadow-multiple-horizontal-expected.checksum: Added.
  • platform/mac/fast/repaint/shadow-multiple-horizontal-expected.png: Added.
  • platform/mac/fast/repaint/shadow-multiple-horizontal-expected.txt: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.checksum: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.png: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-horizontal-expected.txt: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.checksum: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.png: Added.
  • platform/mac/fast/repaint/shadow-multiple-strict-vertical-expected.txt: Added.
  • platform/mac/fast/repaint/shadow-multiple-vertical-expected.checksum: Added.
  • platform/mac/fast/repaint/shadow-multiple-vertical-expected.png: Added.
  • platform/mac/fast/repaint/shadow-multiple-vertical-expected.txt: Added.
12:47 Changeset [32659] by aroben@apple.com

Fix some more Windows build errors in COMPtr

  • platform/win/COMPtr.h: (WTF::): Define DefaultHash<COMPtr<P> > by using PtrHash<COMPtr<P> >, which is just a copy of PtrHash<RefPtr<P> >.
12:39 Changeset [32658] by aroben@apple.com

Fix some Windows build errors in WebKit

  • Interfaces/WebKit.idl: Touched to force Interfaces to rebuild.
  • WebKitPrefix.cpp: Touched to force WebKit to rebuild.
12:28 Changeset [32657] by aroben@apple.com

Fix some Windows build errors in COMPtr

  • platform/win/COMPtr.h: Explicitly name the WTF namespace when using HashTableDeletedValueType.
12:22 Changeset [32656] by aroben@apple.com

Fix some Windows build errors in FontPlatfomrData

  • platform/graphics/win/FontPlatformData.h: Removed the Deleted constructor and replaced it with a HashTableDeletedValueType constructor. Also added isHashTableDeletedValue() and hashTableDeletedFontValue().
12:14 Changeset [32655] by hyatt@apple.com

WebCore:

2008-04-28 David Hyatt <hyatt@apple.com>

https://bugs.webkit.org/show_bug.cgi?id=18780

Canvas can't draw itself into its own buffer. Make sure the dirtying call comes after the image()
has been accessed. Technically willDraw should be renamed to didDraw and all calls should be moved
to after draws have occurred (since if the draw op itself wants to reference the image it shouldn't get
a dirty copy either), but I'll take that up with olliej when he wakes up. :)

Reviewed by Dan Bernstein

Added fast/canvas/canvasDrawsIntoSelf.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::drawImage):

LayoutTests:

2008-04-28 David Hyatt <hyatt@apple.com>

Add layout test for canvas self-drawing bug.

Reviewed by Dan Bernstein

  • fast/canvas/canvasDrawingIntoSelf.html: Added.
  • platform/mac/fast/canvas/canvasDrawingIntoSelf-expected.checksum: Added.
  • platform/mac/fast/canvas/canvasDrawingIntoSelf-expected.png: Added.
  • platform/mac/fast/canvas/canvasDrawingIntoSelf-expected.txt: Added.
12:12 Changeset [32654] by ap@webkit.org

Windows build fix.

  • kjs/ExecState.h: For whatever reason, MSVC couldn't generate a default constructor for a struct that had a "const List" member. Removing the const qualifier makes the problem go away.
11:58 Changeset [32653] by ap@webkit.org

Reviewed by Geoff Garen.

<rdar://problem/5825192> Replace use of Gestalt with BSD sysctl

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::isAvailable): There is no need to check QuickTime version post-Tiger, as it will never be below 7.3 again. This change may make library loading happen earlier in some cases, hopefully, that's not a big deal.
11:22 Changeset [32652] by ap@webkit.org

Reviewed by Darin.

Fix run-webkit-tests --threading
and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
Proxy server issue in Sunday's Nightly

Changed ClassInfo objects for built-in objects to hold a getter function returning
a per-thread instance. This makes it safe to share these ClassInfo objects between threads -
and these are the only ones that need to be shared.

11:15 Changeset [32651] by hyatt@apple.com

WebCore:

2008-04-28 David Hyatt <hyatt@apple.com>

https://bugs.webkit.org/show_bug.cgi?id=18779

The arguments in drawImage were reversed when I switched away from the image buffer method.

Reviewed by Tim Hatcher

Added fast/canvas/drawImage.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::drawImage):

LayoutTests:

2008-04-28 David Hyatt <hyatt@apple.com>

Add layout test for canvas.

Reviewed by Tim Hatcher

  • fast/canvas/drawImage.html: Added.
  • platform/mac/fast/canvas/drawImage-expected.checksum: Added.
  • platform/mac/fast/canvas/drawImage-expected.png: Added.
  • platform/mac/fast/canvas/drawImage-expected.txt: Added.
10:18 Changeset [32650] by darin@apple.com

2008-04-28 Darin Adler <darin@apple.com>

Reviewed by Adam.

  • make sure RefPtr's default hash doesn't ref/deref when computing the hash
  • remove remnants of the hash table storage type optimization
  • wtf/HashFunctions.h: Used "using" to get the hash and equal functions from PtrHash<P*> into PtrHash<RefPtr<P>>.
  • wtf/HashMap.h: Replaced uses of PairBaseHashTraits with PairHashTraits. Eliminated storage-related typedefs. Removed constructor, destructor, copy constructor, and destructor since the compiler-generated ones are fine. Removed refAll and derefAll. Took out unnnecessary typecasts. Removed use of RefCounter.
  • wtf/HashSet.h: Eliminated storage-related typedefs. Removed constructor, destructor, copy constructor, and destructor since the compiler-generated ones are fine. Removed refAll and derefAll. Removed unneeded template arguents from HashSetTranslatorAdapter. Eliminated unneeded HashSetTranslator template.
  • wtf/HashTable.h: Tweaked formatting. Removed NeedsRef, RefCounterBase, RefCounter, HashTableRefCounterBase, HashTableRefCounter, and Assigner class templates.
  • wtf/HashTraits.h: Removed StorageTraits, needsRef, PairBaseHashTraits, and HashKeyStorageTraits.
  • wtf/RefPtrHashMap.h: Made all the same fixes as in HashMap. Also made the corresponding changes to RefPtrHashMapRawKeyTranslator.
10:06 Changeset [32649] by darin@apple.com

2008-04-28 Darin Adler <darin@apple.com>

Reviewed by Adam.

  • fix Windows build
  • win/tools/vsprops/common.vsprops: Add warning 4344 to the list of disabled warnings. It's really a warning about a bug they fixed in MSVC -- not helpful to us in WebKit.
09:54 Changeset [32648] by darin@apple.com

2008-04-28 Darin Adler <darin@apple.com>

Reviewed by Mitz.

  • fix assertion hit every time you view www.apple.com
  • kjs/PropertyNameArray.cpp: (KJS::PropertyNameArray::add): Changed assertion to allow null and empty strings. Now to find out why we have a property named "" and if that's a bug!
08:25 Changeset [32647] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Fix the crash on http://www.orad.pl. We called end too early.

  1. we need a ::write that will pause the parser due a pending script
  2. we need a second write to queue data (tricky part)
  3. we need to get a finish call (document loaded)
  4. we resume the script and parse, schedule loading of a new script and have called end
  5. we resume the new script and we get a crash

This bug is hard to trigger, e.g. if the web server is only allowing
one connection per client/IP. This is why we need to sleep in the scripts. We
want to make sure that the page is first fully received before serving the
scripts.

08:24 Changeset [32646] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Update the Skipped list, we pass most of the http/tests/misc

08:24 Changeset [32645] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Reset dumping resource load callbacks to false for the next test

08:14 Changeset [32644] by hausmann@webkit.org

Ariya Hidayat <ahidayat@trolltech.com>

Fix rounded corner on combo box with CSS border

08:14 Changeset [32643] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

Fix QWebView::loadFinished isn't always emitted

Replaced loadDone() with loadFinished(bool) and moved the signals for progress
tracking (start, progres, and finish) to the page instead of the frame. This
ensures that we emit loadFinished even when a subframe started the actual load.

This causes a few regressions in the layout tests that we for now accept for
the sake of the correct API. Layout tests we can fix any time though, including
patch release, the API however we can't change anymore in patch releases.

08:09 Changeset [32642] by hausmann@webkit.org

Ariya Hidayat <ahidayat@trolltech.com>

Fix CSS border does not show up for combo boxes

Do not clear the border when painting the combo box for 'select' form element

08:09 Changeset [32641] by hausmann@webkit.org

Kavindra Devi Palaraja <kdpalara@trolltech.com>

Added more documentation for QWebSettings, QWebPluginFactory and QWebFrame

08:09 Changeset [32640] by hausmann@webkit.org

Ariya Hidayat <ahidayat@trolltech.com>

Fix document/frame title not reset when loading a new URI

We should assume first the frame has no title. If it has, then the dispatchDidReceiveTitle()
will be called very soon with the correct title.
This properly resets the title when we navigate to a URI without a title.

08:08 Changeset [32639] by hausmann@webkit.org

Olivier Goffart <ogoffart@trolltech.com>

Avoid comparing to 0 in qFuzzyCompare for increased
numeric stability.

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

David Boddie <dboddie@trolltech.com>

Minor documentation changes.

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

Benjamin Meyer <bmeyer@trolltech.com>

Fixes: Pages returning 404 with content are not displayed.

A web page that returns 404 can still have content.

07:50 Changeset [32636] by hausmann@webkit.org

Paul Olav Tvete <paul@trolltech.com>

Fix compiler warning

07:29 Changeset [32635] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

Prevent middle-click from triggering open URL from clipboard when the event has already been accepted.

07:29 Changeset [32634] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

Fix scrollbar behavior in QtWebKit to match QScrollBar.

Right click context menu is now supported, along with
middle click to center slider thumb over mouse cursor.

07:24 Changeset [32633] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

Implemented channel-based logging for QtWebKit.

Comma-separated log channels are read from the QT_WEBKIT_LOG environment variable.
Warnings for notImplemented() is still output by default, but can be disabled
by setting DISABLE_NI_WARNINGS=1.

06:52 Changeset [32632] by hausmann@webkit.org

Simon Hausmann <shausman@trolltech.com>

Removed setHtml(const QByteArray &) overload as it breaks the common use of the setHtml() API.

06:52 Changeset [32631] by hausmann@webkit.org

Kavindra Devi Palaraja <kdpalara@trolltech.com>

Doc - adding more documentation to QWebFrame, QWebPage and QWebView

06:50 Changeset [32630] by hausmann@webkit.org

Simon Hausmann <shausman@trolltech.com>

Fixes: Popups/Context menu in WebKit appearing at the wrong location when embedded in the graphics view or using multiple screens

Give the popups the right parent widget and the right coordinates relative within the parent.

06:45 Changeset [32629] by hausmann@webkit.org

Benjamin Meyer <bmeyer@trolltech.com>

Doc: Add see also's (and a few minor whitespace/typo corrections)

06:45 Changeset [32628] by hausmann@webkit.org

Kavindra Devi Palaraja <kdpalara@trolltech.com>

Submitting more documentation for QWebPage

06:45 Changeset [32627] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

Fixes: Tabbing to a checkbox/button doesn't work on Win/X11

Respect platform settings for tabbing to all controls.

06:45 Changeset [32626] by hausmann@webkit.org

Tor Arne Vestbø <tavestbo@trolltech.com>

First part of the fix for tabbing to a checkbox/button doesn't work on Win/X11

Draw controls instead of pimitive elements, to get focus rects for free.

06:44 Changeset [32625] by hausmann@webkit.org

Lincoln Ramsay <lincoln.ramsay@trolltech.com>

Compile when QT_NO_CLIPBOARD is defined.

06:44 Changeset [32624] by hausmann@webkit.org

David Boddie <dboddie@trolltech.com>

Minor documentation fix.

06:34 Changeset [32623] by hausmann@webkit.org

Ariya Hidayat <ariya.hidayat@trolltech.com>

Draw the arrow button on the styled combo box using the fallback ("Windows") style

06:30 Changeset [32622] by hausmann@webkit.org

Fix positioning of native widgets (plugins).

Correctly convert the coordinates of the Widget in Widget::setFrameGeometry()
to be relative to the containing toplevel QWidget using convertToContainingWindow().

Note: convertToContainingWindow() takes child coordinates.

06:30 Changeset [32621] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

plugins: fix scrolling issues

When scrolling you can see artefacts that remain on the screen, they
seem to originate from the backingstore handling. I'm not entirely sure
where they come from, my workarounds involved a
data->m_widget->parentWidget()->update() call in Widget::geometryChanged or
handling widgets with a native QWidget embedded like web pages with a
static background. This needs more investigations, I think the ScrollView
change is cleaner than the brute force in Widget::geometryChanged

Focus handling seems to be broken as well and needs further work, we don't
clip plugin QWidgets and they can draw out of their bounds, e.g. on the ScrollBar,
the z-order is likely not honored as well.

06:29 Changeset [32620] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Add manual test to test placement of QWidgets in iframe's

06:29 Changeset [32619] by hausmann@webkit.org

Holger Hans Peter Freyther <zecke@selfish.org>

Implement QWebPage::createPlugin

The code is coming from the demo browser and needed here
for some manual tests.

04:59 Changeset [32618] by hausmann@webkit.org

Qt/Win build fix. Include config.h to get the implicit MathExtras.h
inclusion correct with regards to rand_s.

04:21 Changeset [32617] by hausmann@webkit.org

Fix the build with ENABLE_DATABASE=0 (Qt/Windows) by including
SecurityOrigin.h. It's used in the file and also implicitly included
through the database headers.

03:52 Changeset [32616] by hausmann@webkit.org

Prospective Wx build fix.

03:52 Changeset [32615] by hausmann@webkit.org

2008-04-28 Simon Hausmann <hausmann@webkit.org>

Reviewed by Alp.

Gtk build fix, similar to the changes done in r32609.

03:24 Changeset [32614] by hausmann@webkit.org

2008-04-28 Simon Hausmann <hausmann@webkit.org>

Prospective build fix. After r32609 it seems the workaround here
is not needed anymore. With gcc 4.2/4.3 before 32609 the workaround
is needed for compilation, after 32609 compilation only succeeds
without the workaround.

  • plugins/PluginPackage.h: Removed workaround of extra StorageTraits specification for the custom hash function of PluginPackage used in PluginSet.
03:10 Changeset [32613] by hausmann@webkit.org

2008-04-28 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

https://bugs.webkit.org/show_bug.cgi?id=18713

Fix scrollbar painting issues in QtWebKit.

Hovering and click-draging outside of the scrollbar would
produce unexpected and inconcistent results. We also didn't
pass on leave-events to the underlying WebKit code, which
was nessecary to implement the paint fix.

00:41 Changeset [32612] by oliver@apple.com

Bug 17173: HTML5 Canvas API requires us to ignore certain operations
<https://bugs.webkit.org/show_bug.cgi?id=17173>

Reviewed by Maciej

This fixes the semantics of a number of Canvas functions to match
the new HTML5 non-throwing semantics.

Test: fast/canvas/canvas-path-with-inf-nan-dimensions.html

04/27/08:

23:57 Changeset [32611] by mrowe@apple.com

2008-04-27 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej Stachowiak.

Fix crash inside PtrHash::hash when loading a page.

  • wtf/HashFunctions.h: Explicitly use the superclass implementation of hash to avoid infinite recursion.
23:49 Changeset [32610] by rwlbuis@webkit.org

Reviewed by Adele.

https://bugs.webkit.org/show_bug.cgi?id=18652
onchange events don't seem to fire for input[type=range] controls.

Fire changeEvent when dragging the slider.

22:59 Changeset [32609] by darin@apple.com

JavaScriptCore:

2008-04-25 Darin Adler <darin@apple.com>

Reviewed by Maciej.

  • fix <rdar://problem/5657459> REGRESSION: JavaScriptCore no longer builds with GCC 4.2 due to pointer aliasing warnings

Fix this by removing the HashTable optimizations that allowed us to share a back end
implementation between hash tables with integers, pointers, RefPtr, and String objects
as keys. The way it worked was incompatible with strict aliasing.

This increases code size. On Mac OS X we'll have to regenerate .order files to avoid
slowing down Safari startup times.

This creates a slight slowdown in SunSpider, mitigated by the following four speedups:

  • speed up array put slightly by moving a branch (was already done for get)
  • speed up symbol table access by adding a function named inlineGet to HashMap and using that in symbolTableGet/Put
  • speed up PropertyNameArray creation by reducing the amount of reference count churn and uniqueness checking when adding names and not doing any allocation at all when building small arrays
  • speed up conversion of strings to floating point numbers by eliminating the malloc/free of the buffer for the ASCII copy of the string; a way to make things even faster would be to change strtod to take a UTF-16 string

Note that there is considerable unused complexity now in HashSet/Map/Table to support
"storage types", which is no longer used. Will do in a separate patch.

  • API/JSCallbackObjectFunctions.h: (KJS::JSCallbackObject<Base>::getPropertyNames): Removed explicit cast to Identifier to take advantage of the new PropertyNameArray::add overload and avoid reference count churn.
  • API/JSObjectRef.cpp: (JSPropertyNameAccumulatorAddName): Ditto.
  • JavaScriptCore.exp: Updated PropertyNameArray::add entry point name.
  • kjs/JSVariableObject.cpp: Removed now-unneeded IdentifierRepHashTraits::nullRepPtr definition (see below). (KJS::JSVariableObject::getPropertyNames): Removed explicit cast to Identifier.
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet): Use inlineGet for speed. Also changed to do early exit instead of nesting the body inside an if. (KJS::JSVariableObject::symbolTablePut): Ditto.
  • kjs/PropertyNameArray.cpp: (KJS::PropertyNameArray::add): Changed implementation to take a raw pointer instead of a reference to an identifier. Do uniqueness checking by searching the vector when the vector is short, only building the set once the vector is large enough.
  • kjs/PropertyNameArray.h: Added an overload of add for a raw pointer, and made the old add function call that one. Added an addKnownUnique function for use when the new name is known to be different from any other in the array. Changed the vector to have an inline capacity of 20.
  • kjs/SymbolTable.h: Changed IdentifierRepHash to inherit from the default hash for a RefPtr so we don't have to define so much. Added an overload of the hash function for a raw pointer as required by the new RefPtrHashMap. Got rid of the now-unneeded IdentifierRepHashTraits -- the default traits now work fine. Added a definition of empthValueIsZero to SymbolTableIndexHashTraits; not having it was incorrect, but harmless.
  • kjs/array_instance.cpp: (KJS::ArrayInstance::put): Move the maxArrayIndex check inside the branch that checks the index against the length, as done in the get function.
  • kjs/function.cpp: (KJS::globalFuncKJSPrint): Changed to use the new getCString instead of cstring.
  • kjs/internal.cpp: Removed printInfo debugging function, a client of cstring. If we need a debugging function we can easily make a better one and we haven't used this one in a long time.
  • kjs/internal.h: Ditto.
  • kjs/object.cpp: (KJS::JSObject::getPropertyNames): Removed explicit cast to Identifier.
  • kjs/property_map.cpp: (KJS::PropertyMap::getEnumerablePropertyNames): Ditto. Also added a special case for the case where the propertyNames array is empty -- in that case we know we're adding a set of names that are non-overlapping so we can use addKnownUnique.
  • kjs/ustring.cpp: (KJS::UString::getCString): Replaces cstring. Puts the C string into a CStringBuffer, which is a char Vector with an inline capacity. Also returns a boolean to indicate if the converion was lossy, which eliminates the need for a separate is8Bit call. (KJS::UString::toDouble): Changed to call getCString instead of cstring.
  • kjs/ustring.h: Ditto.
  • wtf/HashFunctions.h: Overload the hash and equal functions for RefPtr's default hash to take raw pointers. This works with the changes to RefPtrHashMap to avoid introducing refcount churn.
  • wtf/HashMap.h: Removed special code to convert the deleted value to the empty value when writing a new value into the map. This is now handled elsewhere. (WTF::HashMap::get): Removed code that checks for an empty hash table before calling HashTable::lookup; it's slightly more efficient to do this check inside lookup.
  • wtf/HashTable.h: (WTF::HashTable::isDeletedBucket): Changed to use isDeletedValue instead of using deletedValue and the equality operator. (WTF::HashTable::deleteBucket): Changed to use constructDeletedValue instead of using deletedValue and the assignment operator. (WTF::HashTable::checkKey): Added. Factors out the check for values that are empty or deleted keys that's used in various functions below. (WTF::HashTable::lookup): Changed to use checkKey, check for a 0 table, and also made public for use by RefPtrHashMap. (WTF::HashTable::lookupForWriting): Changed to use checkKey. (WTF::HashTable::fullLookupForWriting): Changed to use checkKey. (WTF::HashTable::add): Changed to use checkKey, and call initializeBucket on a deleted bucket before putting a new entry into it. (WTF::HashTable::addPassingHashCode): Ditto. (WTF::HashTable::deallocateTable): Check isDeletedBucket before calling ~ValueType.
  • wtf/HashTraits.h: Got ridd of all the HashTraits specialization for the integer types, since GeneicHashTraitsBase already deals with integers separately. Put the deleted value support into GenericHashTraitsBase. Changed FloatHashTraits to inherit from GenericHashTraits, and define construct/isDeletedValue rather than deletedValue. Removed the ref and deref functions from RefPtr's HashTraits, and defined construct/isDeletedValue. Eliminated DeletedValueAssigner. Changed PairHashTraits to define construct/isDeletedValue, and also merged PairBaseHashTraits in with PairHashTraits. Got rid of all specialization of HashKeyStorageTraits. We'll remove that, and the needsRef data member, later.
  • wtf/RefPtr.h: Added HashTableDeletedValueType, an enum type with a single value, HashTableDeletedValue. Used that type to make a new constructor to construct deleted values and also added an isHashTableDeletedValue function.
  • wtf/RefPtrHashMap.h: Added RefPtrHashMapRawKeyTranslator and used it to implement the raw pointer functions. This is a way to continue to avoid refcount thrash. We can't use the old way because it depended on the underlying map using a non-RefPtr type. (WTF::HashMap::find): Use find with RefPtrHashMapRawKeyTranslator. (WTF::HashMap::contains): Use contains with RefPtrHashMapRawKeyTranslator. (WTF::HashMap::inlineAdd): Use add with RefPtrHashMapRawKeyTranslator. (WTF::HashMap::get): Removed code that checks for an empty hash table before calling HashTable::lookup; it's slightly more efficient to do this check inside lookup. (WTF::HashMap::inlineGet): Added. Just like get, but marked inline for use in the symbol table code.

WebCore:

2008-04-25 Darin Adler <darin@apple.com>

Reviewed by Maciej.

  • update for compatibility with HashTable that no longer has optimization to share implementation between hash tables with integers, pointers, RefPtr, and String objects as keys
  • bindings/js/JSSVGPODTypeWrapper.h: (WebCore::PODTypeReadWriteHashInfo::PODTypeReadWriteHashInfo): Added constructor for HashTableDeletedValue. (WebCore::PODTypeReadWriteHashInfo::isHashTableDeletedValue): Added. (WebCore::PODTypeReadWriteHashInfoTraits::constructDeletedValue): Added. (WebCore::PODTypeReadWriteHashInfoTraits::isDeletedValue): Added.
  • dom/Document.cpp: Made changedDocuments internal to the file rather than a static data member of Document. (WebCore::FormElementKey::ref): Removed unneeded check for deleted value -- this will never be called on a deleted element. (WebCore::FormElementKey::deref): Ditto.
  • dom/Document.h: Added HashTableDeletedValue constructor and isHashTableDeletedValue to FormElementKey. Changed FormElementKeyHashTraits to use construct/isDeletedValue. Got rid of the changedDocuments data member. Changed iconURL to be an inline that returns a const String&.
  • dom/StyledElement.cpp: Changed MappedAttributeKeyTraits to use construct/isDeletedValue.
  • page/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::getAXID): Call isDeletedValue instead of deletedValue.
  • platform/SecurityOriginHash.h: Added overload so that SecurityOriginHash can work with raw pointers as well as RefPt (helpful with the new RefPtrHashMap). Eliminated SecurityOriginTraits, since we can now use the default traits. Changed the value of safeToCompareToEmptyOrDeleted to false, since it's not safe to compare a deleted value using this hash function. I don't think it was safe before either; I'm not sure why it didn't cause a problem before.
  • platform/cf/SchedulePair.h: Removed SchedulePairTraits -- custom traits are no longer needed.
  • platform/graphics/FontCache.cpp: (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): Added constructor for HashTableDeletedValue. (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue): Added. (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): Added. (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue): Added. (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue): Added. (WebCore::FontDataCacheKeyTraits::constructDeletedValue): Added. (WebCore::FontDataCacheKeyTraits::isDeletedValue): Added.
  • platform/graphics/IntSizeHash.h: Changed HashTraits<IntSize> to use construct/isDeletedValue.
  • platform/graphics/mac/FontPlatformData.h: (WebCore::FontPlatformData::FontPlatformData): Added constructor for HashTableDeletedValue. (WebCore::FontPlatformData::isHashTableDeletedValue): Added. (WebCore::FontPlatformData::hashTableDeletedFontValue): Added.
  • platform/text/PlatformString.h: (WebCore::String::swap): Added. Avoids any refcount churn when swapping two strings. (WebCore::String::String): Added constructor for HashTableDeletedValue. (WebCore::String::isHashTableDeletedValue): Added. (WebCore::swap): Added. Avoids any refcount churn when swapping two strings.
  • platform/text/StringHash.h: Changed specialization of HashTraits for WebCore::String to use the deleted value now defined in that class and removed the code to do ref/deref. Removed HashKeyStorageTraits specializations.


  • platform/win/COMPtr.h: Changed specialization of HashTraits for COMPtr to use the deleted value now defined in that class and removed the code to do ref/deref. Removed HashKeyStorageTraits specializations. (COMPtr::COMPtr): Added constructor for HashTableDeletedValue. (COMPtr::isHashTableDeletedValue): Added. (COMPtr::query): Removed inline keyword not needed since functions defined in the class definition are automatically marked inline. (COMPtr::hashTableDeletedValue): Added.
  • storage/DatabaseTracker.h: Removed now-unneeded SecurityOriginTraits.
  • storage/LocalStorage.h: Ditto.
  • storage/OriginQuotaManager.h: Ditto.
  • storage/SessionStorage.h: Ditto.
  • svg/SVGAnimatedTemplate.h: (WebCore::SVGAnimatedTypeWrapperKey::SVGAnimatedTypeWrapperKey): Added constructor for HashTableDeletedValue. (WebCore::SVGAnimatedTypeWrapperKey::isHashTableDeletedValue): Added. (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue): Added. (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue): Added.
22:44 Changeset [32608] by mrowe@apple.com

2008-04-27 Mark Rowe <mrowe@apple.com>

Reviewed by Tim Hatcher.

Initialize the extra member of the xmlEntity struct when using libxml2 >= 2.6.27.

  • dom/XMLTokenizer.cpp: (WebCore::):
22:37 Changeset [32607] by kevino@webkit.org

Add methods to check if there is a previous/next page in the history. Also some coding style cleanup.

https://bugs.webkit.org/show_bug.cgi?id=18757

22:08 Changeset [32606] by mjs@apple.com

2008-04-27 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Bug 18746: SQUIRRELFISH: indirect eval used when direct eval should be used
<https://bugs.webkit.org/show_bug.cgi?id=18746>

Change the base to the correct value of the 'this' object after the direct
eval test instead of before.

Fixes 5 layout tests.

  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • kjs/nodes.cpp: (KJS::EvalFunctionCallNode::emitCode):
21:46 Changeset [32605] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

Test: editing/selection/move-left-right.html

  • editing/SelectionController.cpp: (WebCore::SelectionController::modifyMovingRight): Added. Currently implemented for character granularity, all other being treated as "forward". (WebCore::SelectionController::modifyMovingForward): Renamed modifyMovingRightForward() to this. (WebCore::SelectionController::modifyMovingLeft): Added. Currently implemented for character granularity, all other being treated as "backward". (WebCore::SelectionController::modifyMovingBackward): Renamed modifyMovingLeftBackward() to this. (WebCore::SelectionController::modify): Changed to call either the visual (left/right) or logical (backward/forward) methods depending on the 'dir' argument for moves.
  • editing/SelectionController.h:
  • editing/VisiblePosition.cpp: (WebCore::VisiblePosition::leftVisuallyDistinctCandidate): Added. (WebCore::VisiblePosition::left): Added. (WebCore::VisiblePosition::rightVisuallyDistinctCandidate): Added. (WebCore::VisiblePosition::right): Added.
  • editing/VisiblePosition.h:

LayoutTests:

Reviewed by Darin Adler.

  • editing/selection/move-left-right-expected.txt: Added.
  • editing/selection/move-left-right.html: Added.
  • platform/mac/editing/selection/move-left-right-expected.txt: Added.
21:32 Changeset [32604] by weinig@apple.com

WebCore:

2008-04-27 Sam Weinig <sam@webkit.org>

Reviewed by Maciej Stachowiak.

Fix for <rdar://problem/5893385> Need to provide access to the CanvasRenderingContext2D prototype
Add a JS constructor for CanvasRenderingContext2D.

  • html/CanvasRenderingContext2D.idl:
  • page/DOMWindow.idl:

LayoutTests:

2008-04-27 Sam Weinig <sam@webkit.org>

Reviewed by Maciej Stachowiak.

Update test to reflect add the CanvasRenderingContext2d constructor.

  • fast/dom/Window/window-properties-expected.txt:
Note: See TracTimeline for information about the timeline view.