⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jul 29, 2008:

11:14 PM Changeset in webkit [35443] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-07-29 Kevin Calhoun <kcalhoun@apple.com>

Reviewed by Adele.

Fix for <rdar://problem/6060647> Adopt QTMovieOpenForPlaybackAttribute flag

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie):
11:05 PM Changeset in webkit [35442] by ap@webkit.org
  • 15 edits in trunk

Reviewed by Geoff Garen.

Implement JSContextGroup APIs to make concurrent execution possible for
JavaScriptCore clients.

This changes the behavior of JSGlobalContextCreate(), so that it now uses a private context
group for each context, making JSlock implicit locking unnecessary.

  • API/JSContextRef.h:
  • API/JSContextRef.cpp: (JSContextGroupCreate): (JSContextGroupRetain): (JSContextGroupRelease): (JSGlobalContextCreate): (JSGlobalContextCreateInGroup): (JSGlobalContextRelease): (JSContextGetGroup): Added new methods. JSGlobalContextCreate() calls JSGlobalContextCreateInGroup() now.
  • API/APICast.h: (toJS): (toRef): Added converters for JSContextGroupRef.
  • API/JSBase.cpp: (JSGarbageCollect): JSGarbageCollect(0) is now a no-op, and the passed in context is actually used.
  • API/JSBase.h: Aded a typedef for JSContextGroupRef. Updated documentation for JSGarbageCollect().
  • kjs/JSGlobalData.cpp:
  • kjs/JSGlobalData.h: Removed support for JSGlobalData shared instance. JSGlobalData::isSharedInstance member variable still remains, to be deleted in a followup patch.
  • kjs/JSLock.cpp: (KJS::JSLock::JSLock): Disabled JSLock, to be deleted in a follow-up patch.


  • kjs/collector.cpp: (KJS::Heap::markOtherThreadConservatively): Removed an assertion that referenced JSGlobalData::sharedInstance.
  • kjs/collector.h: Made Heap destructor public, so that JSContextRelease can use it.

JavaScriptGlue:

  • JSRun.cpp: (JSRun::JSRun):
  • JSUtils.cpp: (getThreadGlobalExecState): Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared instance.
11:02 PM Changeset in webkit [35441] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-07-29 Kevin Calhoun <kcalhoun@apple.com>

Reviewed by Adele.

Fix for <rdar://problem/6031021> Make standalone video render more like the quicktime plugin to improve performance

For standalone video, use QTMovieView to draw.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovieView): Moved nil checks to setUpVideoRendering. Associate the QTMovieView with the WebCoreMovieObserver. If we're in a media document, allow QTMovieView to render in its default mode; otherwise tell it to draw synchronously. (WebCore::MediaPlayerPrivate::detachQTMovieView): Set the WebCoreMovieObserver's view to nil. (WebCore::MediaPlayerPrivate::createQTVideoRenderer): Nil check is now in setUpVideoRendering, which is the only caller of this. (WebCore::MediaPlayerPrivate::setUpVideoRendering): Added nil checks. Call createQTMovieView for media documents. (WebCore::MediaPlayerPrivate::tearDownVideoRendering): Call detachQTMovieView if a QTMovieView exists. (WebCore::MediaPlayerPrivate::setRect): Call setFrame on the QTMovieView if necessary. (-[WebCoreMovieObserver menuForEventDelegate:]): Added. Returns the frame view's menu. (-[WebCoreMovieObserver setView:]): Added.
10:55 PM Changeset in webkit [35440] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Reviewed by Geoff Garen.

Fix a leak of ThreadRegistrar objects.

As the heap is usually deleted when registered threads still exist, ThreadSpecific doesn't
have a chance to clean up per-thread object. Switched to native pthread calls, storing a
plain pointer that doesn't require cleanup.

  • kjs/collector.cpp: (KJS::PlatformThread::PlatformThread): (KJS::Heap::Thread::Thread): (KJS::Heap::Heap): (KJS::Heap::~Heap): (KJS::Heap::registerThread): (KJS::Heap::unregisterThread):
  • kjs/collector.h:
10:52 PM Changeset in webkit [35439] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=20169
Memory allocated with fastMalloc is freed with delete

  • VM/JSPropertyNameIterator.cpp: (KJS::JSPropertyNameIterator::invalidate): Free the array properly. (KJS::JSPropertyNameIterator::~JSPropertyNameIterator): Delete the array by calling invalidate().
10:42 PM Changeset in webkit [35438] by adele@apple.com
  • 7 edits in trunk/WebCore

2008-07-29 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein.

Fix for <rdar://problem/6073372> Move built-in controls below <video> element for standalone media documents

  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added -webkit-full-page-media pseudo class.
  • css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoFullPageMedia.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added case to apply PseudoFullPageMedia for elements in a full page media document.
  • css/html4.css: Added rule to shift control panel down for video in standalone media documents.
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::lowestPosition): Added implementation that takes the controls into account. This makes sure that scrollbars on the page will account for controls not directly contained in the RenderMedia. (WebCore::RenderMedia::rightmostPosition): ditto. (WebCore::RenderMedia::leftmostPosition): ditto.
  • rendering/RenderMedia.h:
10:34 PM Changeset in webkit [35437] by kevino@webkit.org
  • 3 edits in trunk/WebKit/wx

Reviewed by Sam Weinig.

Add tooltip support to the wx port.

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

10:00 PM Changeset in webkit [35436] by alice.liu@apple.com
  • 4 edits in trunk/WebKit/win

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

Reviewed by Geoff Garen.

Fix WebDocumentLoader leak on Windows.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createDocumentLoader):
  • WebDocumentLoader.cpp: (WebDocumentLoader::create):
  • WebDocumentLoader.h:
7:39 PM Changeset in webkit [35435] by weinig@apple.com
  • 29 edits
    12 adds in trunk

WebCore:

2008-07-29 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

<rdar://problem/6084585> Investigate upload progress events.

  • Add progress notifications for data being sent via a ResourceHandle.
  • Add XMLHttpRequestUpload support.

Upload notifications only work on the Mac right now as the CFNetwork API
on windows does not expose enough information.

Tests: http/tests/xmlhttprequest/upload-onload-event.html

http/tests/xmlhttprequest/upload-onloadstart-event.html
http/tests/xmlhttprequest/upload-onprogress-event.html
http/tests/xmlhttprequest/upload-progress-events.html

  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/JSEventTargetBase.cpp: (WebCore::toJS):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::mark):
  • bindings/js/JSXMLHttpRequestUploadCustom.cpp: Added. (WebCore::JSXMLHttpRequestUpload::mark): (WebCore::JSXMLHttpRequestUpload::onabort): (WebCore::JSXMLHttpRequestUpload::setOnabort): (WebCore::JSXMLHttpRequestUpload::onerror): (WebCore::JSXMLHttpRequestUpload::setOnerror): (WebCore::JSXMLHttpRequestUpload::onload): (WebCore::JSXMLHttpRequestUpload::setOnload): (WebCore::JSXMLHttpRequestUpload::onloadstart): (WebCore::JSXMLHttpRequestUpload::setOnloadstart): (WebCore::JSXMLHttpRequestUpload::onprogress): (WebCore::JSXMLHttpRequestUpload::setOnprogress): (WebCore::JSXMLHttpRequestUpload::addEventListener): (WebCore::JSXMLHttpRequestUpload::removeEventListener): (WebCore::JSXMLHttpRequestUpload::dispatchEvent):
  • dom/EventTarget.cpp: (WebCore::EventTarget::toXMLHttpRequestUpload):
  • dom/EventTarget.h:
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didSendData):
  • loader/ResourceLoader.h:
  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::didSendData):
  • loader/SubresourceLoader.h:
  • loader/SubresourceLoaderClient.h: (WebCore::SubresourceLoaderClient::didSendData):
  • page/DOMWindow.idl:
  • platform/network/FormData.cpp: (WebCore::FormData::FormData):
  • platform/network/FormData.h: (WebCore::FormData::alwaysStream): (WebCore::FormData::setAlwaysStream):
  • platform/network/ResourceHandleClient.h: (WebCore::ResourceHandleClient::didSendData):
  • platform/network/mac/FormDataStreamMac.h:
  • platform/network/mac/FormDataStreamMac.mm: (WebCore::getStreamFormDataMap): (WebCore::getStreamResourceHandleMap): (WebCore::associateStreamWithResourceHandle): (WebCore::disassociateStreamWithResourceHandle): (WebCore::DidSendDataCallbackData::DidSendDataCallbackData): (WebCore::performDidSendDataCallback): (WebCore::formCreate): (WebCore::formFinalize): (WebCore::formRead): (WebCore::setHTTPBody): (WebCore::httpBodyFromStream):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::cancel): (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::~XMLHttpRequest): (WebCore::XMLHttpRequest::upload): (WebCore::XMLHttpRequest::open): (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::networkError): (WebCore::XMLHttpRequest::abortError): (WebCore::XMLHttpRequest::didSendData):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::optionalUpload):
  • xml/XMLHttpRequest.idl:
  • xml/XMLHttpRequestUpload.cpp: Added. (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload): (WebCore::XMLHttpRequestUpload::addEventListener): (WebCore::XMLHttpRequestUpload::removeEventListener): (WebCore::XMLHttpRequestUpload::dispatchEvent): (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent): (WebCore::XMLHttpRequestUpload::dispatchAbortEvent): (WebCore::XMLHttpRequestUpload::dispatchErrorEvent): (WebCore::XMLHttpRequestUpload::dispatchLoadEvent): (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent): (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
  • xml/XMLHttpRequestUpload.h: Added. (WebCore::XMLHttpRequestUpload::create): (WebCore::XMLHttpRequestUpload::toXMLHttpRequestUpload): (WebCore::XMLHttpRequestUpload::associatedXMLHttpRequest): (WebCore::XMLHttpRequestUpload::disconnectXMLHttpRequest): (WebCore::XMLHttpRequestUpload::setOnAbortListener): (WebCore::XMLHttpRequestUpload::onAbortListener): (WebCore::XMLHttpRequestUpload::setOnErrorListener): (WebCore::XMLHttpRequestUpload::onErrorListener): (WebCore::XMLHttpRequestUpload::setOnLoadListener): (WebCore::XMLHttpRequestUpload::onLoadListener): (WebCore::XMLHttpRequestUpload::setOnLoadStartListener): (WebCore::XMLHttpRequestUpload::onLoadStartListener): (WebCore::XMLHttpRequestUpload::setOnProgressListener): (WebCore::XMLHttpRequestUpload::onProgressListener): (WebCore::XMLHttpRequestUpload::eventListeners): (WebCore::XMLHttpRequestUpload::refEventTarget): (WebCore::XMLHttpRequestUpload::derefEventTarget):
  • xml/XMLHttpRequestUpload.idl: Added.

LayoutTests:

2008-07-29 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

<rdar://problem/6084585> Investigate upload progress events

  • fast/dom/Window/window-properties-expected.txt:
  • http/tests/xmlhttprequest/upload-onload-event-expected.txt: Added.
  • http/tests/xmlhttprequest/upload-onload-event.html: Added.
  • http/tests/xmlhttprequest/upload-onloadstart-event-expected.txt: Added.
  • http/tests/xmlhttprequest/upload-onloadstart-event.html: Added.
  • http/tests/xmlhttprequest/upload-onprogress-event-expected.txt: Added.
  • http/tests/xmlhttprequest/upload-onprogress-event.html: Added.
  • http/tests/xmlhttprequest/upload-progress-events-expected.txt: Added.
  • http/tests/xmlhttprequest/upload-progress-events.html: Added.
  • platform/win/Skipped: Skip new tests on windows where the feature is not implemented yet.
4:33 PM Changeset in webkit [35434] by britto@apple.com
  • 2 edits in trunk/WebCore

2008-07-29 Maxime Britto <britto@apple.com>

Reviewed by Darin.

<rdar://problem/6095023> "When pan-scrolling, mouse click on hyperlink stop the pan-Scroll but follow the link after that."
With this patch we now stop the pan scroll and swallow the event to prevent any following action.

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent): If we were in pan scrolling mode we no longer just stop the pan scroll and continue with the function, we now stop and return true to attest that we swallowed the event.
3:59 PM Changeset in webkit [35433] by britto@apple.com
  • 3 edits
    2 adds in trunk

2008-07-29 Maxime Britto <britto@apple.com>

Reviewed by adele.

Test: fast/events/autoscroll-in-textfield.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::canBeProgramaticallyScrolled): reverted a bad change introduced in r35244 nb:the test case introduced in r35244 is still working.

2008-07-29 Maxime Britto <britto@apple.com>

Reviewed by adele.
This test verifies that the autoscroll works within textfields.

  • fast/events/autoscroll-in-textfield-expected.txt: Added.
  • fast/events/autoscroll-in-textfield.html: Added.
3:47 PM Changeset in webkit [35432] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Attempt to fix the Qt build.

  • wtf/ThreadingQt.cpp: Add the extra argument to createThread.
3:38 PM Changeset in webkit [35431] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Mark Rowe.

  • update results for console.group and console.groupEnd
  • fast/dom/Window/window-properties-expected.txt:
1:58 PM Changeset in webkit [35430] by mrowe@apple.com
  • 3 edits in trunk/WebKit/mac

Tweak to the build fix to keep Dan happy.

1:28 PM Changeset in webkit [35429] by adele@apple.com
  • 6 edits
    2 adds in trunk

WebCore:

2008-07-29 Adele Peterson <adele@apple.com>

Reviewed by Sammy Weinig.

Fix for <rdar://problem/6103024>
When a QT movie is loaded directly in the browser, I can't pause it by single-clicking on the video

Test: media/video-click-dlbclick-standalone.html

  • loader/MediaDocument.cpp: (WebCore::MediaDocument::defaultEventHandler): For standalone media documents, match the default Quicktime plugin behavior to allow clicking and double-clicking to pause and play the media.
  • loader/MediaDocument.h: Added defaultEventHandler.
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::defaultEventHandler): Return early if the event has been handled.
  • rendering/MediaControlElements.cpp: (WebCore::MediaControlMuteButtonElement::defaultEventHandler): Correct what was probably a typo. Instead of "event->defaultHandled()", it is supposed to be "event->setDefaultHandled()". (WebCore::MediaControlPlayButtonElement::defaultEventHandler): ditto. (WebCore::MediaControlSeekButtonElement::defaultEventHandler): ditto. (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): ditto.

LayoutTests:

2008-07-29 Adele Peterson <adele@apple.com>

Reviewed by Sammy Weinig.

Test for <rdar://problem/6103024>
When a QT movie is loaded directly in the browser, I can't pause it by single-clicking on the video

  • media/video-click-dlbclick-standalone-expected.txt: Added.
  • media/video-click-dlbclick-standalone.html: Added.
1:13 PM Changeset in webkit [35428] by mrowe@apple.com
  • 3 edits in trunk/WebKit/mac

Build fix.

11:55 AM Changeset in webkit [35427] by mitz@apple.com
  • 7 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com

Test: fast/overflow/float-in-relpositioned.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::lowestPosition): Add this block's relative offset to floats' and positioned objects' lowest position. (WebCore::RenderBlock::rightmostPosition): Ditto. (WebCore::RenderBlock::leftmostPosition): Ditto.
  • rendering/RenderBox.cpp: (WebCore::RenderBox::lowestPosition): Removed redundant test. (WebCore::RenderBox::rightmostPosition): Ditto. (WebCore::RenderBox::leftmostPosition): Ditto.

LayoutTests:

Reviewed by Dave Hyatt.

  • test, updated test and results for <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com
  • fast/overflow/float-in-relpositioned.html: Added.
  • fast/repaint/containing-block-position-change.html: Changed to avoid a full repaint due to a scroll bar appearing.
  • platform/mac/fast/clip/015-expected.txt:
  • platform/mac/fast/overflow/float-in-relpositioned-expected.checksum: Added.
  • platform/mac/fast/overflow/float-in-relpositioned-expected.png: Added.
  • platform/mac/fast/overflow/float-in-relpositioned-expected.txt: Added.
  • platform/mac/fast/repaint/clipped-relative-expected.txt:
11:51 AM Changeset in webkit [35426] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/6048566> Repaint original element's position, not its offset position

Test: fast/repaint/layout-state-relative.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::absolutePosition): Changed the LayoutState-enabled code path to account for the object's relative offset. (WebCore::RenderBox::computeAbsoluteRepaintRect): Ditto.

LayoutTests:

Reviewed by Dave Hyatt.

  • repaint test for <rdar://problem/6048566> Repaint original element's position, not its offset position
  • fast/repaint/layout-state-relative.html: Added.
  • platform/mac/fast/repaint/layout-state-relative-expected.checksum: Added.
  • platform/mac/fast/repaint/layout-state-relative-expected.png: Added.
  • platform/mac/fast/repaint/layout-state-relative-expected.txt: Added.
11:51 AM Changeset in webkit [35425] by Adam Roben
  • 2 edits in trunk/JavaScriptCore

Change Vector::find to return an index instead of an iterator

Indices are more natural than iterators when working with Vector.

Reviewed by John Sullivan.

  • wtf/Vector.h: (WTF::Vector::find): Changed to iterate the Vector manually and return the index of the found item, rather than an iterator. When the item could not be found, we return WTF::notFound.
11:28 AM Changeset in webkit [35424] by hyatt@apple.com
  • 3 adds in trunk/LayoutTests/platform/mac/fast/css/variables/alternate-syntax
11:27 AM Changeset in webkit [35423] by hyatt@apple.com
  • 1 edit
    5 adds in trunk/LayoutTests

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

Add a layout test for using multiple variable declaration blocks in a single style rule.

  • fast/css/variables/alternate-syntax/multiple-blocks-test.html: Added.
  • fast/css/variables/multiple-blocks-test.html: Added.
  • platform/mac/fast/css/variables/multiple-blocks-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/multiple-blocks-test-expected.png: Added.
  • platform/mac/fast/css/variables/multiple-blocks-test-expected.txt: Added.
11:10 AM Changeset in webkit [35422] by Adam Roben
  • 3 edits in trunk/WebKit/win

Export detachThread

Reviewed by Geoff Garen.

  • WebKit.vcproj/WebKit.def:
  • WebKit.vcproj/WebKit_debug.def:
11:04 AM Changeset in webkit [35421] by timothy@apple.com
  • 10 edits in trunk/WebCore

Fixed Bug 19158: Inspector should support console.group/console.groupEnd

<https://bugs.webkit.org/show_bug.cgi?id=19158>

Reviewed by Tim Hatcher and Adam Roben.

  • bindings/js/JSConsoleCustom.cpp: (WebCore::JSConsole::group): Added.
  • page/Console.cpp: (WebCore::Console::group): Added. (WebCore::Console::groupEnd): Added.
  • page/Console.h: (WebCore::):
  • page/Console.idl: Added group/groupEnd.
  • page/InspectorController.cpp: (WebCore::ConsoleMessage::ConsoleMessage): (WebCore::InspectorController::InspectorController): Added m_groupLevel. (WebCore::InspectorController::addMessageToConsole): Added groupLevel argument. (WebCore::InspectorController::startGroup): Increments m_groupLevel by one and calls js function if needed. (WebCore::InspectorController::endGroup): Decrements m_groupLevel by one and calls js function if needed. (WebCore::InspectorController::addScriptConsoleMessage): Added groupLevel argument. (WebCore::InspectorController::didCommitLoad): Resets m_groupLevel.
  • page/InspectorController.h:
  • page/inspector/Console.js: (WebInspector.Console): Added groupLevel and currentGroup topGroup. (WebInspector.Console.addMessage): Calls addMessage method in the currentGroup. (WebInspector.Console.startGroup): Added. (WebInspector.Console.endGroup): Added. (WebInspector.Console.clearMessages): Resets groupLevel and currentGroup. (WebInspector.ConsoleMessage): Added groupLevel property. (WebInspector.ConsoleMessage.MessageLevel.GroupTitle): Added. (WebInspector.ConsoleGroup): Added. (WebInspector.ConsoleGroup.addMessage): Adds console message to group. (WebInspector.ConsoleGroup._titleClicked): Adds "collapsed" style class.
  • page/inspector/inspector.css:
  • page/inspector/inspector.js: (WebInspector.startGroupInConsole): Calls console.startGroup (WebInspector.endGroupInConsole): Calls console.endGroup
9:23 AM Changeset in webkit [35420] by Adam Roben
  • 2 edits in trunk/JavaScriptCore

Windows build fix

  • wtf/ThreadingWin.cpp: (WTF::setThreadName): Move a misplaced assertion to here... (WTF::createThread): ...from here.
9:11 AM Changeset in webkit [35419] by Adam Roben
  • 15 edits in trunk

Add support for setting thread names on Windows

JavaScriptCore:

Add support for setting thread names on Windows

These thread names make it much easier to identify particular threads
in Visual Studio's Threads panel.

WTF::createThread now takes a const char* representing the thread's
name. On Windows, we throw a special exception to set this string as
the thread's name. Other platforms do nothing with this name for now.

Reviewed by Anders Carlsson.

  • JavaScriptCore.exp: Export the new version of createThread that takes 3 arguments (the old one continues to be exported for backward compatibility).
  • wtf/Threading.h: Add a threadName argument to createThread.
  • wtf/ThreadingGtk.cpp: (WTF::createThread):
  • wtf/ThreadingNone.cpp: (WTF::createThread): Updated for function signature change.
  • wtf/ThreadingPthreads.cpp: (WTF::createThread): Updated for function signature change. We keep around the old 2-argument version of createThread for backward compatibility.
  • wtf/ThreadingWin.cpp: (WTF::setThreadName): Added. This function's implementation came from MSDN. (WTF::initializeThreading): Set the name of the main thread. (WTF::createThread): Call setThreadName. We keep around the old 2-argument version of createThread for backward compatibility.

WebCore:

Add names for WebCore's threads

Reviewed by Anders Carlsson.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::open):
  • storage/DatabaseThread.cpp: (WebCore::DatabaseThread::start):
  • storage/LocalStorageThread.cpp: (WebCore::LocalStorageThread::start): Pass in names to createThread.
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::runLoaderThread): (WebCore::ResourceHandle::loaderRunLoop): Changed to use WTF::createThread.

WebKit/win:

Export the new version of createThread

Reviewed by Anders Carlsson.

  • WebKit.vcproj/WebKit.def:
  • WebKit.vcproj/WebKit_debug.def: Also moved the old version of createThread into the deprecated section.
1:16 AM Changeset in webkit [35418] by ap@webkit.org
  • 8 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.

Store UString::Rep::isStatic bit in identifierTable pointer instead of reportedCost for
slightly nicer code and a 0.5% SunSpider improvement.

Jul 28, 2008:

5:37 PM Changeset in webkit [35417] by andersca@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Kevin Decker.

Based on a patch from Dimcho Balev.


Windows part of


https://bugs.webkit.org/show_bug.cgi?id=18676
<rdar://problem/6106578>
Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs

  • plugins/PluginStream.cpp: (WebCore::PluginStream::wantsAllStreams):
  • plugins/PluginStream.h:
4:38 PM Changeset in webkit [35416] by jchaffraix@webkit.org
  • 11 edits
    2 adds in branches/XBL2

WebCore:

2008-07-28 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Bug 20196: [XBL] Re-enable CSS binding attachment

  • Re-enable legacy CSS attachment code.
  • Add XBLBindingManager bits so that it also creates / removes the required bindings.
  • Renamed '-webkit-binding' property to 'binding' (the name in the specification)

Test: fast/xbl/xbl-css-attachment.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::removeBindings): Added remove bindings and the style information associated.
  • css/CSSStyleSelector.h:
  • dom/Element.cpp: (WebCore::Element::hasBinding): Update the style as it will cause binding updates.
  • rendering/style/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::BindingURI::BindingURI):
  • rendering/style/RenderStyle.h:
  • xbl/XBLBindingManager.cpp: (WebCore::XBLBindingManager::addBinding): Limit to one binding per element with the same uri as the CSS attachment code can be hit twice.

LayoutTests:

2008-07-28 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Test case for bug 20196: [XBL] Re-enable CSS binding attachment

  • fast/xbl/xbl-css-attachment-expected.txt: Added.
  • fast/xbl/xbl-css-attachment.html: Added.
4:34 PM Changeset in webkit [35415] by beidson@apple.com
  • 6 edits
    4 adds in trunk

WebCore:

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

Reviewed by Sam Weinig

Test: security/autocomplete-cleared-on-back.html

<rdar://problem/6093281> - autocomplete="off" should work when going back

Taken care of in two ways:
1 - Listening for the page cache notification to clear the form, in cases where the page

is being restored from the page cache

2 - Not saving such form elements when doing the normal "save state" to a history item,

for cases with no page cache

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::~HTMLFormElement): (WebCore::HTMLFormElement::parseMappedAttribute): (WebCore::HTMLFormElement::didRestoreFromCache): (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
  • html/HTMLFormElement.h:
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement): (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::saveState): (WebCore::HTMLInputElement::parseMappedAttribute): (WebCore::HTMLInputElement::needsCacheCallback): (WebCore::HTMLInputElement::registerForCacheCallbackIfNeeded): Only register if the type or attribute indicate we should. (WebCore::HTMLInputElement::unregisterForCacheCallbackIfNeeded): Only unregister if both the type and attribute are clear of needing registration. (WebCore::HTMLInputElement::didRestoreFromCache): (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
  • html/HTMLInputElement.h:

LayoutTests:

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

Reviewed by Sam Weinig

<rdar://problem/6093281> - autocomplete="off" should work when going back

  • security/autocomplete-cleared-on-back-expected.txt: Added.
  • security/autocomplete-cleared-on-back.html: Added.
  • security/resources: Added.
  • security/resources/autocomplete-cleared-on-back2.html: Added.
3:50 PM Changeset in webkit [35414] by hyatt@apple.com
  • 14 edits
    16 adds in trunk

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

Add support for CSS variable declaration blocks.

Reviewed by Sam

Added tests in fast/css/variables.

  • css/CSSGrammar.y:
  • css/CSSMutableStyleDeclaration.h: (WebCore::CSSMutableStyleDeclaration::isMutableStyleDeclaration):
  • css/CSSParser.cpp: (WebCore::CSSParser::addVariableDeclarationBlock):
  • css/CSSParser.h:
  • css/CSSProperty.cpp: (WebCore::CSSProperty::cssText):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::addMatchedDeclaration): (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
  • css/CSSStyleSelector.h:
  • css/CSSValueList.h: (WebCore::CSSValueList::isValueList):
  • css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration): (WebCore::CSSVariablesDeclaration::getVariableValue): (WebCore::CSSVariablesDeclaration::removeVariable): (WebCore::CSSVariablesDeclaration::addParsedVariable): (WebCore::CSSVariablesDeclaration::getParsedSimpleVariable): (WebCore::CSSVariablesDeclaration::getParsedComplexVariable):
  • css/CSSVariablesDeclaration.h: (WebCore::CSSVariablesDeclaration::create):
  • css/StyleBase.cpp: (WebCore::StyleBase::cssText):
  • css/StyleBase.h: (WebCore::StyleBase::isValueList): (WebCore::StyleBase::isMutableStyleDeclaration):
3:46 PM Changeset in webkit [35413] by andersca@apple.com
  • 4 edits
    4 adds in trunk

../../../../../../LayoutTests:

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

Reviewed by Sam.

<rdar://problem/6098335>
https://bugs.webkit.org/show_bug.cgi?id=20150


Add tests.


  • http/tests/xmlhttprequest/resources/forbidden.txt: Added.
  • http/tests/xmlhttprequest/resources/redirect.php: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect.html: Added.

../../../../../../WebCore:

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

Reviewed by Sam.

<rdar://problem/6098335>
https://bugs.webkit.org/show_bug.cgi?id=20150


Handle willSendRequest correctly.

  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::willSendRequest): Make sure to keep the previous URL around so we know when to call willSendRequest.


  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::processSyncLoadResults): Abort if we don't have access to the response URL.


(WebCore::XMLHttpRequest::willSendRequest):
Dispatch a network error if we can't access the new URL.

2:15 PM Changeset in webkit [35412] by jchaffraix@webkit.org
  • 4 edits
    1 add in branches/XBL2/WebCore

2008-07-28 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Bug 20171: [XBL] Add <binding> 'element' attribute

  • DerivedSources.make: Add attrs file.
  • GNUmakefile.am: Ditto.
  • WebCore.pro: Ditto.
  • xbl/xblattrs.in: Added.
1:04 PM Changeset in webkit [35411] by ggaren@apple.com
  • 25 edits in trunk

JavaScriptCore:

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

Reviewed by Sam Weinig.

Renamed "ConstructTypeNative" => "ConstructTypeHost".

WebCore:

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

Reviewed by Sam Weinig.

Renamed "ConstructTypeNative" => "ConstructTypeHost".

12:23 PM Changeset in webkit [35410] by andersca@apple.com
  • 2 edits in trunk

Add radar number

12:20 PM Changeset in webkit [35409] by andersca@apple.com
  • 10 edits in trunk

../../../../../../WebCore:

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

Reviewed by Kevin Decker.

Based on a patch by Dimcho Balev.

https://bugs.webkit.org/show_bug.cgi?id=18676
Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs


  • bridge/npapi.h: Add new enum values.


  • loader/NetscapePlugInStreamLoader.cpp: (WebCore::NetscapePlugInStreamLoader::didReceiveResponse): When the plug-in indicates that it wants all streams to be delivered, don't cancel the stream if an error occurs.


  • loader/NetscapePlugInStreamLoader.h: (WebCore::NetscapePlugInStreamLoaderClient::wantsAllStreams): Add new client method.

../../../../../../WebKit/mac:

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

Reviewed by Kevin Decker.

Based on a patch by Dimcho Balev.


https://bugs.webkit.org/show_bug.cgi?id=18676
Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs

  • Plugins/WebBaseNetscapePluginStream.h: Add NPP_GetValue pointer.


  • Plugins/WebBaseNetscapePluginStream.mm: (-[WebBaseNetscapePluginStream setPlugin:]): Initialize NPP_GetValue.


(-[WebBaseNetscapePluginStream wantsAllStreams]):
Call NPP_GetValue.


  • Plugins/WebPlugInStreamLoaderDelegate.h:
  • WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h:
  • WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: (WebNetscapePlugInStreamLoaderClient::wantsAllStreams): Implement this and call down to the stream.
9:59 AM Changeset in webkit [35408] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Adam.

<rdar://problem/6105529>
https://bugs.webkit.org/show_bug.cgi?id=19659
Turning off plugins causes crash


When an active page has plug-ins, and plug-ins are disabled, they will be stopped and will
end up in a state where they don't have an event handler. Because of this, we need to
check that the plug-in has been started before calling the event handler.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView sendActivateEvent:]): (-[WebBaseNetscapePluginView sendDrawRectEvent:]): (-[WebBaseNetscapePluginView setHasFocus:]): (-[WebBaseNetscapePluginView mouseDown:]): (-[WebBaseNetscapePluginView mouseUp:]): (-[WebBaseNetscapePluginView mouseEntered:]): (-[WebBaseNetscapePluginView mouseExited:]): (-[WebBaseNetscapePluginView handleMouseMoved:]): (-[WebBaseNetscapePluginView mouseDragged:]): (-[WebBaseNetscapePluginView scrollWheel:]): (-[WebBaseNetscapePluginView keyUp:]): (-[WebBaseNetscapePluginView keyDown:]): (-[WebBaseNetscapePluginView flagsChanged:]): (-[WebBaseNetscapePluginView cut:]): (-[WebBaseNetscapePluginView copy:]): (-[WebBaseNetscapePluginView paste:]): (-[WebBaseNetscapePluginView selectAll:]): (-[WebBaseNetscapePluginView drawRect:]): (-[WebBaseNetscapePluginView inputContext]):
12:37 AM Changeset in webkit [35407] by mrowe@apple.com
  • 2 edits in trunk/WebKitSite

2008-07-28 Robert Blaut <webkit@blaut.biz>

Reviewed by Mark Rowe.

Fix for bug: Website provides no guidance on debugging
<https://bugs.webkit.org/show_bug.cgi?id=3643>

  • building/debug.html: added info about Xcode Debugging Guide.
Note: See TracTimeline for information about the timeline view.