Timeline



Oct 23, 2008:

10:39 PM Changeset in webkit [37841] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Attempt to fix GTK build.

  • GNUmakefile.am: Added new *.idl files that were missing.
10:05 PM Changeset in webkit [37840] by ddkilzer@apple.com
  • 20 edits
    25 adds in trunk

JavaScriptCore:

2008-10-23 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

  • wtf/Platform.h: ENABLE_GEOLOCATION defaults to 0

WebCore:

2008-10-23 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

Test: geolocation/geolocation-not-implemented.html

  • DerivedSources.make:
  • GNUmakefile.am: Added Geolocation support
  • WebCore.pro: Added Geolocation support
  • WebCore.vcproj/WebCore.vcproj: Added Geolocation support
  • WebCore.xcodeproj/project.pbxproj: Added Geolocation support
  • WebCoreSources.bkl: Added Geolocation support
  • bindings/js/JSCustomPositionCallback.cpp: Added. (WebCore::JSCustomPositionCallback::JSCustomPositionCallback): (WebCore::JSCustomPositionCallback::handleEvent):
  • bindings/js/JSCustomPositionCallback.h: Added. (WebCore::JSCustomPositionCallback::create):
  • bindings/js/JSCustomPositionErrorCallback.cpp: Added. (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback): (WebCore::JSCustomPositionErrorCallback::handleEvent):
  • bindings/js/JSCustomPositionErrorCallback.h: Added. (WebCore::JSCustomPositionErrorCallback::create):
  • bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom (WebCore::markDOMObjectWrapper):
  • bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
  • bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
  • bindings/js/JSGeolocationCustom.cpp: Added. (WebCore::JSGeolocation::getCurrentPosition): (WebCore::JSGeolocation::watchPosition):
  • bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation (WebCore::JSNavigator::mark):
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h: (WebCore::Document::setUsingGeolocation): (WebCore::Document::usingGeolocation):
  • loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation (WebCore::FrameLoader::canCachePage):
  • page/Geolocation.cpp: Added. (WebCore::Geolocation::GeoNotifier::GeoNotifier): (WebCore::Geolocation::GeoNotifier::timerFired): (WebCore::Geolocation::Geolocation): (WebCore::Geolocation::disconnectFrame): (WebCore::Geolocation::getCurrentPosition): (WebCore::Geolocation::watchPosition): (WebCore::Geolocation::clearWatch): (WebCore::Geolocation::stopUpdatingIfEmpty): (WebCore::Geolocation::sendErrorToOneShots): (WebCore::Geolocation::sendErrorToWatchers): (WebCore::Geolocation::sendPositionToOneShots): (WebCore::Geolocation::sendPositionToWatchers): (WebCore::Geolocation::handleError): (WebCore::Geolocation::geolocationServicePositionChanged): (WebCore::Geolocation::geolocationServiceErrorOccurred):
  • page/Geolocation.h: Added. (WebCore::Geolocation::create): (WebCore::Geolocation::~Geolocation): (WebCore::Geolocation::lastPosition): (WebCore::Geolocation::GeoNotifier::create):
  • page/Geolocation.idl: Added.
  • page/Geoposition.cpp: Added. (WebCore::Geoposition::toString):
  • page/Geoposition.h: Added. (WebCore::Geoposition::create): (WebCore::Geoposition::latitude): (WebCore::Geoposition::longitude): (WebCore::Geoposition::altitude): (WebCore::Geoposition::accuracy): (WebCore::Geoposition::altitudeAccuracy): (WebCore::Geoposition::heading): (WebCore::Geoposition::velocity): (WebCore::Geoposition::timestamp): (WebCore::Geoposition::Geoposition):
  • page/Geoposition.idl: Added.
  • page/Navigator.cpp: (WebCore::Navigator::disconnectFrame): disconnect Geolocation (WebCore::Navigator::geolocation): accessor for Geolocation
  • page/Navigator.h: (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
  • page/Navigator.idl: accessor for Geolocation
  • page/PositionCallback.h: Added. (WebCore::PositionCallback::~PositionCallback):
  • page/PositionCallback.idl: Added.
  • page/PositionError.h: Added. (WebCore::PositionError::): (WebCore::PositionError::create): (WebCore::PositionError::code): (WebCore::PositionError::message): (WebCore::PositionError::PositionError):
  • page/PositionError.idl: Added.
  • page/PositionErrorCallback.h: Added. (WebCore::PositionErrorCallback::~PositionErrorCallback):
  • page/PositionErrorCallback.idl: Added.
  • page/PositionOptions.h: Added. (WebCore::PositionOptions::create): (WebCore::PositionOptions::enableHighAccuracy): (WebCore::PositionOptions::setEnableHighAccuracy): (WebCore::PositionOptions::timeout): (WebCore::PositionOptions::setTimeout): (WebCore::PositionOptions::PositionOptions):
  • page/PositionOptions.idl: Added.
  • platform/GeolocationService.cpp: Added. (WebCore::GeolocationService::GeolocationService): (WebCore::GeolocationService::positionChanged): (WebCore::GeolocationService::errorOccurred):
  • platform/GeolocationService.h: Added. (WebCore::GeolocationServiceClient::~GeolocationServiceClient): (WebCore::GeolocationServiceClient::geolocationServicePositionChanged): (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred): (WebCore::GeolocationService::~GeolocationService):

LayoutTests:

2008-10-23 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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


Provide support for the Geolocation API


http://dev.w3.org/geo/api/spec-source.html

Tests to verify Geolocation isn't implemented (so that it didn't leak into
WebCore for platforms that do not support it).

  • geolocation: Added.
  • geolocation/geolocation-not-implemented-expected.txt: Added.
  • geolocation/geolocation-not-implemented.html: Added.
  • geolocation/geolocation-test.js: Added. (reset): (hanged): (watchPositionAndEnd): (watchPosition._positionCallback): (watchPosition): (watchPositionTestAndEnd): (watchPositionAndFail): (watchPositionAndTest._positionCallback): (watchPositionAndTest): (getCurrentPositionAndEnd): (getCurrentPosition._positionCallback): (getCurrentPosition): (getCurrentPositionTestAndEnd): (getCurrentPositionAndFail): (getCurrentPositionAndTest._positionCallback): (getCurrentPositionAndTest): (endTest): (relativeURL):
9:52 PM Changeset in webkit [37839] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-10-23 Alp Toker <alp@nuanti.com>

Fix typo in comment in previous commit. GTK -> GLIB

  • platform/gtk/guriescape.c:
9:32 PM Changeset in webkit [37838] by alp@webkit.org
  • 3 edits in trunk/WebCore

2008-10-23 Kalle Vahlman <kalle.vahlman@movial.com>

Reviewed by Alp Toker.

https://bugs.webkit.org/show_bug.cgi?id=21824
[GTK] FileSystem abstraction uses features from Glib 2.16

Wrap g_uri_unescape_string() to fix building with pre-2.16 Glib

  • platform/gtk/guriescape.c: (unescape_character): (_webcore_g_uri_unescape_segment): (_webcore_g_uri_unescape_string):
  • platform/gtk/guriescape.h:
8:44 PM Changeset in webkit [37837] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-10-23 Jan Michael Alonzo <jmalonzo@webkit.org>

Fix Gtk build typo introduced in http://trac.webkit.org/changeset/37826.

  • GNUmakefile.am:
8:23 PM Changeset in webkit [37836] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

8:23 PM Changeset in webkit [37835] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.26.5

New tag.

6:04 PM Changeset in webkit [37834] by darin@chromium.org
  • 2 edits in trunk/WebCore

2008-10-23 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

m_frame null checked but then dereferenced
https://bugs.webkit.org/show_bug.cgi?id=21845

This error was found using a static analysis tool, and so I do not know
how to produce a null m_frame on entry to this method. Hence, I have
not included a regression test.

  • page/EventHandler.cpp: (WebCore::EventHandler::allowDHTMLDrag): Add an early return.
5:18 PM Changeset in webkit [37833] by kmccullough@apple.com
  • 2 edits in trunk/LayoutTests

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Rubber stamped by Mark Rowe.

-Skipping the profiler tests until we know why they fail on tiger:
<rdar://problem/6316530> Profiler tests fail on tiger

  • platform/mac-tiger/Skipped:
4:58 PM Changeset in webkit [37832] by ddkilzer@apple.com
  • 5 edits in trunk

Bug 21832: Fix scripts using 'new File::Temp' for Perl 5.10

JavaScriptCore:

Bug 21832: Fix scripts using 'new File::Temp' for Perl 5.10

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

Reviewed by Sam Weinig.

  • pcre/dftables: Use imported tempfile() from File::Temp instead of 'new File::Temp' to make the script work with Perl 5.10.

WebKitTools:

Bug 21832: Fix scripts using 'new File::Temp' for Perl 5.10

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

Reviewed by Sam Weinig.

  • Scripts/bisect-builds: Use imported tempfile() from File::Temp instead of 'new File::Temp' to make the script work with Perl 5.10.
  • Scripts/sort-Xcode-project-file: Ditto.
3:29 PM Changeset in webkit [37831] by barraclough@apple.com
  • 7 edits in trunk/JavaScriptCore

2008-10-23 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Fix hideous pathological case performance when looking up repatch info, bug #21727.

When repatching JIT code to optimize we look up records providing information about
the generated code (also used to track recsources used in linking to be later released).
The lookup was being performed using a linear scan of all such records.

(1) Split up the different types of reptach information. This means we can search them

separately, and in some cases should reduce their size.

(2) In the case of property accesses, search with a binary chop over the data.
(3) In the case of calls, pass a pointer to the repatch info into the relink function.

  • VM/CTI.cpp: (JSC::CTI::CTI): (JSC::CTI::compileOpCall): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): (JSC::CTI::privateCompile): (JSC::CTI::unlinkCall): (JSC::CTI::linkCall):
  • VM/CTI.h:
  • VM/CodeBlock.cpp: (JSC::CodeBlock::dump): (JSC::CodeBlock::~CodeBlock): (JSC::CodeBlock::unlinkCallers): (JSC::CodeBlock::derefStructureIDs):
  • VM/CodeBlock.h: (JSC::StructureStubInfo::StructureStubInfo): (JSC::CallLinkInfo::CallLinkInfo): (JSC::CallLinkInfo::setUnlinked): (JSC::CallLinkInfo::isLinked): (JSC::getStructureStubInfoReturnLocation): (JSC::binaryChop): (JSC::CodeBlock::addCaller): (JSC::CodeBlock::getStubInfo):
  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitResolve): (JSC::CodeGenerator::emitGetById): (JSC::CodeGenerator::emitPutById): (JSC::CodeGenerator::emitCall): (JSC::CodeGenerator::emitConstruct):
  • VM/Machine.cpp: (JSC::Machine::cti_vm_lazyLinkCall):
3:12 PM Changeset in webkit [37830] by kmccullough@apple.com
  • 5 edits in trunk/LayoutTests

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Forgot to remove the tests from the skipped lists, this should have been
apart of the last checkin.

  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
3:10 PM Changeset in webkit [37829] by kmccullough@apple.com
  • 39 edits
    42 adds
    2 deletes in trunk/LayoutTests

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=21817
Bug 21817: Manual profiler tests should be made into layout tests

  • Added the expected results for the profiler tests and removed the tests from the skipped list.
  • Also removed two tests that were accidentally checked in previously.
  • Also changed the text on the tests to be more apparent how to run them manually.
  • fast/profiler/anonymous-event-handler-expected.txt: Added.
  • fast/profiler/anonymous-event-handler.html:
  • fast/profiler/anonymous-function-called-from-different-contexts-expected.txt: Added.
  • fast/profiler/anonymous-function-called-from-different-contexts.html:
  • fast/profiler/anonymous-function-calls-built-in-functions-expected.txt: Added.
  • fast/profiler/anonymous-function-calls-built-in-functions.html:
  • fast/profiler/anonymous-function-calls-eval-expected.txt: Added.
  • fast/profiler/anonymous-function-calls-eval.html:
  • fast/profiler/apply-expected.txt: Added.
  • fast/profiler/apply.html:
  • fast/profiler/built-in-function-calls-anonymous-expected.txt: Added.
  • fast/profiler/built-in-function-calls-anonymous.html:
  • fast/profiler/built-in-function-calls-user-defined-function-expected.txt: Added.
  • fast/profiler/built-in-function-calls-user-defined-function.html:
  • fast/profiler/call-expected.txt: Added.
  • fast/profiler/call-nodelist-as-function-expected.txt: Added.
  • fast/profiler/call-nodelist-as-function.html:
  • fast/profiler/call.html: Added.
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope-expected.txt: Added.
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html:
  • fast/profiler/compare-multiple-profiles-expected.txt: Added.
  • fast/profiler/compare-multiple-profiles.html:
  • fast/profiler/constructor-expected.txt: Added.
  • fast/profiler/constructor.html:
  • fast/profiler/dead-time-expected.txt: Added.
  • fast/profiler/dead-time.html:
  • fast/profiler/deep-recursion.html: Removed.
  • fast/profiler/document-dot-write-expected.txt: Added.
  • fast/profiler/document-dot-write.html:
  • fast/profiler/event-handler-expected.txt: Added.
  • fast/profiler/event-handler.html:
  • fast/profiler/execution-context-and-eval-on-same-line-expected.txt: Added.
  • fast/profiler/execution-context-and-eval-on-same-line.html:
  • fast/profiler/heavy-view-expected.txt: Added.
  • fast/profiler/heavy-view.html:
  • fast/profiler/inline-event-handler-expected.txt: Added.
  • fast/profiler/inline-event-handler.html:
  • fast/profiler/many-calls-in-the-same-scope-expected.txt: Added.
  • fast/profiler/many-calls-in-the-same-scope.html: Added.
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls-expected.txt: Added.
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html:
  • fast/profiler/multiple-and-different-scoped-function-calls-expected.txt: Added.
  • fast/profiler/multiple-and-different-scoped-function-calls.html:
  • fast/profiler/multiple-frames-expected.txt: Added.
  • fast/profiler/multiple-frames.html:
  • fast/profiler/multiple-windows.html: Removed.
  • fast/profiler/nested-anonymous-functon-expected.txt: Added.
  • fast/profiler/nested-anonymous-functon.html:
  • fast/profiler/nested-start-and-stop-profiler-expected.txt: Added.
  • fast/profiler/nested-start-and-stop-profiler.html:
  • fast/profiler/no-execution-context-expected.txt: Added.
  • fast/profiler/no-execution-context.html:
  • fast/profiler/one-execution-context-expected.txt: Added.
  • fast/profiler/one-execution-context.html:
  • fast/profiler/profile-calls-in-included-file-expected.txt: Added.
  • fast/profiler/profile-calls-in-included-file.html:
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting-expected.txt: Added.
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html:
  • fast/profiler/profiling-from-a-nested-location-expected.txt: Added.
  • fast/profiler/profiling-from-a-nested-location.html:
  • fast/profiler/simple-event-call-expected.txt: Added.
  • fast/profiler/simple-event-call.html:
  • fast/profiler/simple-no-level-change-expected.txt: Added.
  • fast/profiler/simple-no-level-change.html:
  • fast/profiler/start-and-stop-profiler-multiple-times-expected.txt: Added.
  • fast/profiler/start-and-stop-profiler-multiple-times.html:
  • fast/profiler/start-and-stop-profiling-in-the-same-function-expected.txt: Added.
  • fast/profiler/start-and-stop-profiling-in-the-same-function.html:
  • fast/profiler/start-but-dont-stop-profiling-expected.txt: Added.
  • fast/profiler/start-but-dont-stop-profiling.html:
  • fast/profiler/stop-profiling-after-setTimeout-expected.txt: Added.
  • fast/profiler/stop-profiling-after-setTimeout.html:
  • fast/profiler/stop-then-function-call-expected.txt: Added.
  • fast/profiler/stop-then-function-call.html:
  • fast/profiler/throw-exception-from-eval-expected.txt: Added.
  • fast/profiler/throw-exception-from-eval.html:
  • fast/profiler/two-execution-contexts-expected.txt: Added.
  • fast/profiler/two-execution-contexts.html:
  • fast/profiler/user-defined-function-calls-built-in-functions-expected.txt: Added.
  • fast/profiler/user-defined-function-calls-built-in-functions.html:
  • fast/profiler/window-dot-eval-expected.txt: Added.
  • fast/profiler/window-dot-eval.html:
2:56 PM Changeset in webkit [37828] by mitz@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by Sam Weinig with no hesitation.

Test: fast/text/bidi-embedding-pop-and-push-same.html

  • platform/text/BidiResolver.h: (WebCore::BidiResolver::embed): Changed to only add the embedding operation to a vector of pending operations.

(WebCore::BidiResolver::lowerExplicitEmbeddingLevel): Added. Moved the
code that used to be in the PDF case of embed() here, except the part
that sets the context.

(WebCore::BidiResolver::raiseExplicitEmbeddingLevel): Added. Moved the
code that used to be in the non-PDF case of embed() here, except the
part the sets the context.

(WebCore::BidiResolver::commitExplicitEmbedding): Added. Processes the
explicit embedding operations in the vector by creating an updated
context and determining the old and new embedding levels. If the levels
are not the same, calls {lower,raise}ExplicitEmbeddingLevel(). Always
sets the context to the new one.

(WebCore::BidiResolver::createBidiRunsForLine): Added calls to
commitExplicitEmbedding() after calling embed() and after calling
increment().

  • rendering/bidi.cpp: (WebCore::bidiFirst): Added calls to commitExplicitEmbedding() because this function increments the resolver.

(WebCore::RenderBlock::skipLeadingWhitespace): Ditto.

LayoutTests:

Reviewed by Sam Weinig with no hesitation.

  • fast/text/bidi-embedding-pop-and-push-same.html: Added.
  • platform/mac/fast/text/bidi-embedding-pop-and-push-same-expected.checksum: Added.
  • platform/mac/fast/text/bidi-embedding-pop-and-push-same-expected.png: Added.
  • platform/mac/fast/text/bidi-embedding-pop-and-push-same-expected.txt: Added.
2:35 PM Changeset in webkit [37827] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Build fix.

2:24 PM Changeset in webkit [37826] by jmalonzo@webkit.org
  • 3 edits
    1 add in trunk/WebCore

2008-10-23 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix. Not reviewed.

Add DNSCurl and DNSSoup to the Gtk build

  • GNUmakefile.am:
  • platform/gtk/TemporaryLinkStubs.cpp:
  • platform/network/soup/DNSSoup.cpp: Copied from WebCore/platform/network/curl/DNSCurl.cpp. (WebCore::prefetchDNS):
2:17 PM Changeset in webkit [37825] by eric@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Sam Weinig.

Un-break the Darwin build.

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
  • platform/graphics/cg/ImageCG.cpp:
2:13 PM Changeset in webkit [37824] by darin@chromium.org
  • 3 edits in trunk/WebCore

2008-10-23 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

Fix forward decls to be struct instead of class.
https://bugs.webkit.org/show_bug.cgi?id=21838

  • rendering/style/StyleRareInheritedData.h:
  • rendering/style/StyleRareNonInheritedData.h:
1:36 PM Changeset in webkit [37823] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-10-23 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Oliver Hunt.

  • platform/network/curl/ResourceRequest.h: A better implementation of CFURLRequest, rather than void*. This gives better compatibility with the WebKit.idl interface. (WebCore::ResourceRequest::cfURLRequest):
1:28 PM Changeset in webkit [37822] by kmccullough@apple.com
  • 41 edits in trunk/LayoutTests

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=21817
Bug 21817: Manual profiler tests should be made into layout tests

  • Here are the changes to the tests. The most significant part is the change to profiler-test-JS-resources.js where endTest will now notify the layout test controller if it was waiting and call the print function to iterate over all of the profiles and log their structure.
  • Most of these tests changed to include the layoutTestController, use endTest() or call the print function directly if there was some reason that they could not use endTest().
  • fast/profiler/resources/profiler-test-JS-resources.js: (endTest): Stop any waits and print the profile information. (printHeavyProfilesDataWithoutTime): Print all profile information in heavy view, without time. (printProfilesDataWithoutTime): Print all profile information in tree view, without time. (printProfileNodeWithoutTime): Print a profile node's informmation and all of it's children's information.
  • fast/profiler/anonymous-event-handler.html:
  • fast/profiler/anonymous-function-called-from-different-contexts.html:
  • fast/profiler/anonymous-function-calls-built-in-functions.html:
  • fast/profiler/anonymous-function-calls-eval.html:
  • fast/profiler/apply.html:
  • fast/profiler/built-in-function-calls-anonymous.html:
  • fast/profiler/built-in-function-calls-user-defined-function.html:
  • fast/profiler/call-nodelist-as-function.html:
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html:
  • fast/profiler/compare-multiple-profiles.html:
  • fast/profiler/constructor.html:
  • fast/profiler/dead-time.html:
  • fast/profiler/deep-recursion.html:
  • fast/profiler/document-dot-write.html:
  • fast/profiler/event-handler.html:
  • fast/profiler/execution-context-and-eval-on-same-line.html:
  • fast/profiler/heavy-view.html:
  • fast/profiler/inline-event-handler.html:
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html:
  • fast/profiler/multiple-and-different-scoped-function-calls.html:
  • fast/profiler/multiple-frames.html:
  • fast/profiler/nested-anonymous-functon.html:
  • fast/profiler/nested-start-and-stop-profiler.html:
  • fast/profiler/no-execution-context.html:
  • fast/profiler/one-execution-context.html:
  • fast/profiler/profile-calls-in-included-file.html:
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html:
  • fast/profiler/profiling-from-a-nested-location.html:
  • fast/profiler/simple-event-call.html:
  • fast/profiler/simple-no-level-change.html:
  • fast/profiler/start-and-stop-profiler-multiple-times.html:
  • fast/profiler/start-and-stop-profiling-in-the-same-function.html:
  • fast/profiler/start-but-dont-stop-profiling.html:
  • fast/profiler/stop-profiling-after-setTimeout.html:
  • fast/profiler/stop-then-function-call.html:
  • fast/profiler/throw-exception-from-eval.html:
  • fast/profiler/two-execution-contexts.html:
  • fast/profiler/user-defined-function-calls-built-in-functions.html:
  • fast/profiler/window-dot-eval.html:
12:59 PM Changeset in webkit [37821] by eric@webkit.org
  • 3 edits in trunk/WebCore

2008-10-23 Mike Pinkerton <pinkerton@chromium.org>

Reviewed by Eric Seidel.

PLATFORM(CHROMIUM) uses CG the same way PLATFORM(MAC) does so fix
ifdefs to reflect that.

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
  • platform/graphics/cg/ImageCG.cpp:
12:37 PM Changeset in webkit [37820] by pkasting@chromium.org
  • 6 edits in trunk

JavaScriptCore:

2008-10-23 Peter Kasting <pkasting@google.com>

Reviewed by Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=21833
Place JavaScript Debugger hooks under #if ENABLE(JAVASCRIPT_DEBUGGER).

  • wtf/Platform.h:

WebCore:

2008-10-23 Peter Kasting <pkasting@google.com>

Reviewed by Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=21833
Place JavaScript Debugger hooks under #if ENABLE(JAVASCRIPT_DEBUGGER).

  • inspector/InspectorController.cpp: (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::windowScriptObjectAvailable): (WebCore::InspectorController::close):
  • inspector/InspectorController.h:
  • page/Page.cpp: (WebCore::Page::Page):
12:24 PM Changeset in webkit [37819] by ddkilzer@apple.com
  • 2 edits in trunk/JavaScriptCore

Bug 21831: Fix create_hash_table for Perl 5.10

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

Reviewed by Sam Weinig.

  • kjs/create_hash_table: Escaped square brackets so that Perl 5.10 doesn't try to use @nameEntries.
12:20 PM Changeset in webkit [37818] by Darin Adler
  • 5 edits in trunk/LayoutTests

2008-10-23 Darin Adler <Darin Adler>

  • try to get buildbot green again
  • platform/gtk/Skipped: Added fast/profiler.
  • platform/mac/Skipped: Fixed typo: fast/profiler, not fast/profile.
  • platform/qt/Skipped: Added fast/profiler.
  • platform/win/Skipped: Fixed typo: fast/profiler, not fast/profile.
11:43 AM Changeset in webkit [37817] by kmccullough@apple.com
  • 1 edit
    43 copies
    2 adds in trunk/LayoutTests

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Forgot to actually check these files in from last time :(

  • fast/profiler: Added.
  • fast/profiler/anonymous-event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-event-handler.html.
  • fast/profiler/anonymous-function-called-from-different-contexts.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html.
  • fast/profiler/anonymous-function-calls-built-in-functions.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html.
  • fast/profiler/anonymous-function-calls-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html.
  • fast/profiler/apply.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-apply.html.
  • fast/profiler/built-in-function-calls-anonymous.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html.
  • fast/profiler/built-in-function-calls-user-defined-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html.
  • fast/profiler/call-nodelist-as-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-call-nodelist-as-function.html.
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html.
  • fast/profiler/compare-multiple-profiles.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-compare-multiple-profiles.html.
  • fast/profiler/constructor.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-constructor.html.
  • fast/profiler/dead-time.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-dead-time.html.
  • fast/profiler/deep-recursion.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-deep-recursion.html.
  • fast/profiler/document-dot-write.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-document-dot-write.html.
  • fast/profiler/event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-event-handler.html.
  • fast/profiler/execution-context-and-eval-on-same-line.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html.
  • fast/profiler/heavy-view.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-heavy-view.html.
  • fast/profiler/inline-event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-inline-event-handler.html.
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html.
  • fast/profiler/multiple-and-different-scoped-function-calls.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html.
  • fast/profiler/multiple-frames.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-frames.html.
  • fast/profiler/multiple-windows.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-windows.html.
  • fast/profiler/nested-anonymous-functon.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-nested-anonymous-functon.html.
  • fast/profiler/nested-start-and-stop-profiler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html.
  • fast/profiler/no-execution-context.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-no-execution-context.html.
  • fast/profiler/one-execution-context.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-one-execution-context.html.
  • fast/profiler/profile-calls-in-included-file.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profile-calls-in-included-file.html.
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html.
  • fast/profiler/profiling-from-a-nested-location.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html.
  • fast/profiler/resources: Added.
  • fast/profiler/resources/other-frame.html: Copied from ../WebCore/manual-tests/inspector/resources/other-frame.html.
  • fast/profiler/resources/other-window.html: Copied from ../WebCore/manual-tests/inspector/resources/other-window.html.
  • fast/profiler/resources/profiler-test-JS-resources.js: Copied from ../WebCore/manual-tests/inspector/resources/profiler-test-JS-resources.js.
  • fast/profiler/simple-event-call.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-simple-event-call.html.
  • fast/profiler/simple-no-level-change.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-simple-no-level-change.html.
  • fast/profiler/start-and-stop-profiler-multiple-times.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html.
  • fast/profiler/start-and-stop-profiling-in-the-same-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html.
  • fast/profiler/start-but-dont-stop-profiling.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html.
  • fast/profiler/stop-profiling-after-setTimeout.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html.
  • fast/profiler/stop-then-function-call.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-stop-then-function-call.html.
  • fast/profiler/throw-exception-from-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-throw-exception-from-eval.html.
  • fast/profiler/two-execution-contexts.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-two-execution-contexts.html.
  • fast/profiler/user-defined-function-calls-built-in-functions.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html.
  • fast/profiler/window-dot-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-window-dot-eval.html.
11:33 AM Changeset in webkit [37816] by kmccullough@apple.com
  • 4 edits
    43 deletes in trunk

WebCore:

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=21817
Bug 21817: Manual profiler tests should be made into layout tests

-Moving the tests before diffing so that it's clear what changed.

  • manual-tests/inspector/profiler-test-anonymous-event-handler.html: Removed.
  • manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Removed.
  • manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Removed.
  • manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Removed.
  • manual-tests/inspector/profiler-test-apply.html: Removed.
  • manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Removed.
  • manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Removed.
  • manual-tests/inspector/profiler-test-call-nodelist-as-function.html: Removed.
  • manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html: Removed.
  • manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Removed.
  • manual-tests/inspector/profiler-test-constructor.html: Removed.
  • manual-tests/inspector/profiler-test-dead-time.html: Removed.
  • manual-tests/inspector/profiler-test-deep-recursion.html: Removed.
  • manual-tests/inspector/profiler-test-document-dot-write.html: Removed.
  • manual-tests/inspector/profiler-test-event-handler.html: Removed.
  • manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Removed.
  • manual-tests/inspector/profiler-test-heavy-view.html: Removed.
  • manual-tests/inspector/profiler-test-inline-event-handler.html: Removed.
  • manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Removed.
  • manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Removed.
  • manual-tests/inspector/profiler-test-multiple-frames.html: Removed.
  • manual-tests/inspector/profiler-test-multiple-windows.html: Removed.
  • manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Removed.
  • manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Removed.
  • manual-tests/inspector/profiler-test-no-execution-context.html: Removed.
  • manual-tests/inspector/profiler-test-one-execution-context.html: Removed.
  • manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Removed.
  • manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Removed.
  • manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Removed.
  • manual-tests/inspector/profiler-test-simple-event-call.html: Removed.
  • manual-tests/inspector/profiler-test-simple-no-level-change.html: Removed.
  • manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Removed.
  • manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Removed.
  • manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html: Removed.
  • manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Removed.
  • manual-tests/inspector/profiler-test-stop-then-function-call.html: Removed.
  • manual-tests/inspector/profiler-test-throw-exception-from-eval.html: Removed.
  • manual-tests/inspector/profiler-test-two-execution-contexts.html: Removed.
  • manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Removed.
  • manual-tests/inspector/profiler-test-window-dot-eval.html: Removed.
  • manual-tests/inspector/resources/other-frame.html: Removed.
  • manual-tests/inspector/resources/other-window.html: Removed.
  • manual-tests/inspector/resources/profiler-test-JS-resources.js: Removed.

LayoutTests:

2008-10-23 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=21817
Bug 21817: Manual profiler tests should be made into layout tests

-Moving the tests before diffing so that it's clear what changed.

  • platform/mac/Skipped: Skipping until the new files are in place.
  • platform/win/Skipped:
  • fast/profiler: Added.
  • fast/profiler/anonymous-event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-event-handler.html.
  • fast/profiler/anonymous-function-called-from-different-contexts.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html.
  • fast/profiler/anonymous-function-calls-built-in-functions.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html.
  • fast/profiler/anonymous-function-calls-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html.
  • fast/profiler/apply.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-apply.html.
  • fast/profiler/built-in-function-calls-anonymous.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html.
  • fast/profiler/built-in-function-calls-user-defined-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html.
  • fast/profiler/call-nodelist-as-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-call-nodelist-as-function.html.
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html.
  • fast/profiler/compare-multiple-profiles.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-compare-multiple-profiles.html.
  • fast/profiler/constructor.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-constructor.html.
  • fast/profiler/dead-time.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-dead-time.html.
  • fast/profiler/deep-recursion.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-deep-recursion.html.
  • fast/profiler/document-dot-write.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-document-dot-write.html.
  • fast/profiler/event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-event-handler.html.
  • fast/profiler/execution-context-and-eval-on-same-line.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html.
  • fast/profiler/heavy-view.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-heavy-view.html.
  • fast/profiler/inline-event-handler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-inline-event-handler.html.
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html.
  • fast/profiler/multiple-and-different-scoped-function-calls.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html.
  • fast/profiler/multiple-frames.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-frames.html.
  • fast/profiler/multiple-windows.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-multiple-windows.html.
  • fast/profiler/nested-anonymous-functon.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-nested-anonymous-functon.html.
  • fast/profiler/nested-start-and-stop-profiler.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html.
  • fast/profiler/no-execution-context.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-no-execution-context.html.
  • fast/profiler/one-execution-context.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-one-execution-context.html.
  • fast/profiler/profile-calls-in-included-file.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profile-calls-in-included-file.html.
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html.
  • fast/profiler/profiling-from-a-nested-location.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html.
  • fast/profiler/resources: Added.
  • fast/profiler/resources/other-frame.html: Copied from ../WebCore/manual-tests/inspector/resources/other-frame.html.
  • fast/profiler/resources/other-window.html: Copied from ../WebCore/manual-tests/inspector/resources/other-window.html.
  • fast/profiler/resources/profiler-test-JS-resources.js: Copied from ../WebCore/manual-tests/inspector/resources/profiler-test-JS-resources.js.
  • fast/profiler/simple-event-call.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-simple-event-call.html.
  • fast/profiler/simple-no-level-change.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-simple-no-level-change.html.
  • fast/profiler/start-and-stop-profiler-multiple-times.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html.
  • fast/profiler/start-and-stop-profiling-in-the-same-function.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html.
  • fast/profiler/start-but-dont-stop-profiling.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html.
  • fast/profiler/stop-profiling-after-setTimeout.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html.
  • fast/profiler/stop-then-function-call.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-stop-then-function-call.html.
  • fast/profiler/throw-exception-from-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-throw-exception-from-eval.html.
  • fast/profiler/two-execution-contexts.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-two-execution-contexts.html.
  • fast/profiler/user-defined-function-calls-built-in-functions.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html.
  • fast/profiler/window-dot-eval.html: Copied from ../WebCore/manual-tests/inspector/profiler-test-window-dot-eval.html.
10:52 AM Changeset in webkit [37815] by andersca@apple.com
  • 3 edits in trunk/WebKitLibraries

2008-10-23 Anders Carlsson <andersca@apple.com>

Reviewed by John Sullivan.

Fix <rdar://problem/6306513> by adding a workaround for <rdar://problem/6304600>.

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
10:07 AM Changeset in webkit [37814] by abarth@webkit.org
  • 2 edits in trunk/WebCore

2008-10-23 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

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

Add accessor for SecurityOrigin::m_domainWasSetInDOM.

  • page/SecurityOrigin.h: (WebCore::SecurityOrigin::domainWasSetInDOM):
9:49 AM Changeset in webkit [37813] by Adam Roben
  • 3 edits in trunk/BugsSite

Fix Bug 21401: Comments field on "Review Patch" page should be initially filled with quoted patch

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

Reviewed by Dave Hyatt.

  • attachment.cgi: (edit): Retrieve the attachment data from the database instead of just its length. When the attachment is a patch, create a quotedpatch template variable that contains the patch data with each line prepended with "> ".
  • template/en/custom/attachment/reviewform.html.tmpl:
    • Changed the comments field to have a monospace font
    • Added an "Enter comments below:" caption above the comments field to make it clearer that this is where comments should go, now that the comments field is not initially empty
    • Fill the comments field with the quoted patch
8:55 AM Changeset in webkit [37812] by Darin Adler
  • 19 edits in trunk

JavaScriptCore:

2008-10-23 Darin Adler <Darin Adler>

1) slowness under MSVC, since it doesn't handle a

class with a single pointer in it as efficiently
as a pointer

2) uninitialized pointers in Vector

  • API/APICast.h: (toRef):
  • VM/CTI.cpp: (JSC::CTI::asInteger):
  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::addConstant):
  • VM/CodeGenerator.h: (JSC::CodeGenerator::JSValueHashTraits::constructDeletedValue): (JSC::CodeGenerator::JSValueHashTraits::isDeletedValue):
  • VM/Machine.cpp: (JSC::Machine::cti_op_add): (JSC::Machine::cti_op_pre_inc): (JSC::Machine::cti_op_get_by_id): (JSC::Machine::cti_op_get_by_id_second): (JSC::Machine::cti_op_get_by_id_generic): (JSC::Machine::cti_op_get_by_id_fail): (JSC::Machine::cti_op_instanceof): (JSC::Machine::cti_op_del_by_id): (JSC::Machine::cti_op_mul): (JSC::Machine::cti_op_call_NotJSFunction): (JSC::Machine::cti_op_resolve): (JSC::Machine::cti_op_construct_NotJSConstruct): (JSC::Machine::cti_op_get_by_val): (JSC::Machine::cti_op_sub): (JSC::Machine::cti_op_lesseq): (JSC::Machine::cti_op_negate): (JSC::Machine::cti_op_resolve_base): (JSC::Machine::cti_op_resolve_skip): (JSC::Machine::cti_op_resolve_global): (JSC::Machine::cti_op_div): (JSC::Machine::cti_op_pre_dec): (JSC::Machine::cti_op_not): (JSC::Machine::cti_op_eq): (JSC::Machine::cti_op_lshift): (JSC::Machine::cti_op_bitand): (JSC::Machine::cti_op_rshift): (JSC::Machine::cti_op_bitnot): (JSC::Machine::cti_op_mod): (JSC::Machine::cti_op_less): (JSC::Machine::cti_op_neq): (JSC::Machine::cti_op_urshift): (JSC::Machine::cti_op_bitxor): (JSC::Machine::cti_op_bitor): (JSC::Machine::cti_op_call_eval): (JSC::Machine::cti_op_throw): (JSC::Machine::cti_op_next_pname): (JSC::Machine::cti_op_typeof): (JSC::Machine::cti_op_is_undefined): (JSC::Machine::cti_op_is_boolean): (JSC::Machine::cti_op_is_number): (JSC::Machine::cti_op_is_string): (JSC::Machine::cti_op_is_object): (JSC::Machine::cti_op_is_function): (JSC::Machine::cti_op_stricteq): (JSC::Machine::cti_op_nstricteq): (JSC::Machine::cti_op_to_jsnumber): (JSC::Machine::cti_op_in): (JSC::Machine::cti_op_del_by_val): (JSC::Machine::cti_vm_throw): Removed calls to payload functions.
  • VM/Register.h: (JSC::Register::Register): Removed overload for JSCell and call to payload function.
  • kjs/JSCell.h: Changed JSCell to derive from JSValue again. Removed JSValuePtr constructor. (JSC::asCell): Changed cast from reinterpret_cast to static_cast.
  • kjs/JSImmediate.h: Removed JSValuePtr class. Added typedef back.
  • kjs/JSValue.h: (JSC::JSValue::JSValue): Added empty protected inline constructor back. (JSC::JSValue::~JSValue): Same for destructor. Removed == and != operator for JSValuePtr.
  • kjs/PropertySlot.h: (JSC::PropertySlot::PropertySlot): Chnaged argument to const JSValue* and added a const_cast.
  • kjs/protect.h: Removed overloads and specialization for JSValuePtr.

JavaScriptGlue:

2008-10-23 Darin Adler <Darin Adler>

  • JSValueWrapper.cpp: (JSValueWrapper::GetValue): Added missing call to .get().
  • JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.

WebCore:

2008-10-23 Darin Adler <Darin Adler>

  • bindings/js/ScheduledAction.h:
  • inspector/InspectorController.cpp: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
6:27 AM Changeset in webkit [37811] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-10-22 Yael Aharon <yael.aharon@nokia.com>

Reviewed by Simon Hausmann.

emit scrollRequested unconditionally when scrolling.

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

6:26 AM Changeset in webkit [37810] by Simon Hausmann
  • 2 edits in trunk/WebKit

Fix the ChangeLog after in r37761 I changed the wrong file accidentially.

6:18 AM Changeset in webkit [37809] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-10-23 Simon Hausmann <Simon Hausmann>

Reviewed by Tor Arne.

Fix handling of mouse events when embedding QWebView into the
QGraphicsView.

QWebPage accepts or ignores events to indicate whether the web page
handled the event. However for QWebView to behave like a good widget
it should always accept the mouse events to indicate that it handled
them and that they should not be subject to event propagation.

The graphics view relies on acceptance of the initial mouse click to
make the embedded widget the focus item.

5:27 AM Changeset in webkit [37808] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-10-23 Simon Hausmann <Simon Hausmann>

Fix the Qt build.

5:23 AM Changeset in webkit [37807] by ap@webkit.org
  • 3 edits in trunk/LayoutTests

Reviewed by Maciej Stachowiak.

Fix fast/events/message-port.html to not be timing-dependent (it was failing on some bots).

  • fast/events/message-port.html:
  • fast/events/message-port-expected.txt:
3:15 AM Changeset in webkit [37806] by ap@webkit.org
  • 10 edits
    2 adds in trunk/WebCore

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=21825
JSDOMBinding should not blindly cast the global object to JSDOMWindow

  • bindings/js/JSDOMGlobalObject.cpp:
  • bindings/js/JSDOMGlobalObject.h:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl: Added JSDOMGlobalObject, a base class to be used by both Window and worker contexts.
  • bindings/js/JSDOMBinding.cpp: (WebCore::getCachedDOMStructure): (WebCore::cacheDOMStructure): (WebCore::getCachedDOMConstructor): (WebCore::cacheDOMConstructor): Cast to JSDOMGlobalObject, as DOM objects live in DOM global objects.
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::JSDOMWindowBase):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::mark): Moved constructor and structure tracking to JSDOMGlobalObject.
2:43 AM Changeset in webkit [37805] by abarth@webkit.org
  • 7 edits
    2 adds in trunk

WebCore:

2008-10-23 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

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

Update postMessage to send origin = "null" for non-serializable
origins to match latest spec. Merge SecurityOrigin::toString and
SecurityOrigin::toHTTPOrigin because they are now the same.

Test: http/tests/security/postMessage/data-url-sends-null-origin.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::outgoingOrigin): (WebCore::FrameLoader::loadURL): (WebCore::FrameLoader::addHTTPOriginIfNeeded): (WebCore::FrameLoader::loadItem):
  • loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests):
  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::toString):
  • page/SecurityOrigin.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult): (WebCore::XMLHttpRequest::didReceiveResponsePreflight):

LayoutTests:

2008-10-23 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

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

Add test coverage for postMessaging from a data URL.

  • http/tests/security/postMessage/data-url-sends-null-origin-expected.txt: Added.
  • http/tests/security/postMessage/data-url-sends-null-origin.html: Added.

Oct 22, 2008:

8:36 PM Changeset in webkit [37804] by oliver@apple.com
  • 6 edits in trunk/JavaScriptCore

Really "fix" CTI mode on windows 2k3.

Reviewed my Maciej Stachowiak

This adds new methods fastMallocExecutable and fastFreeExecutable
to wrap allocation for cti code. This still just makes fastMalloc
return executable memory all the time, which will be fixed in a
later patch.

However in windows debug builds all executable allocations will be
allocated on separate executable pages, which should resolve any
remaining 2k3 issues. Conveniently the 2k3 bot will now also fail
if there are any fastFree vs. fastFreeExecutable errors.

7:53 PM Changeset in webkit [37803] by ddkilzer@apple.com
  • 6 edits in trunk/WebCore

Bug 21781: WebCore::Settings should have a maximum decoded image size setting

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

Reviewed by Antti.

No tests since there is no change in behavior.

  • loader/CachedImage.cpp: (WebCore::CachedImage::maximumDecodedImageSize): Added. Returns WebCore::Settings::maximumDecodedImageSize() or 0 on error. (WebCore::CachedImage::data): Flag an error if the image being loaded is too big.
  • loader/CachedImage.h: (WebCore::CachedImage::maximumDecodedImageSize): Added declaration.
  • page/Settings.cpp: (WebCore::Settings::Settings): Initialize m_maximumDecodedImageSize to the maximum value of size_t.
  • page/Settings.h: (WebCore::Settings::setMaximumDecodedImageSize): Added method. (WebCore::Settings::maximumDecodedImageSize): Ditto.
7:31 PM Changeset in webkit [37802] by cwzwarich@webkit.org
  • 2 edits in trunk/LayoutTests

2008-10-22 Cameron Zwarich <zwarich@apple.com>

Reviewed by Kevin McCullough.

Check in changed test results for r37792.

  • fast/dom/Window/window-properties-expected.txt:
6:43 PM Changeset in webkit [37801] by Darin Adler
  • 2 edits in trunk/WebCore

2008-10-22 Mike Pinkerton <pinkerton@chromium.org>

Reviewed by Dan Bernstein.
Landed and tweaked a bit by Darin Adler.

Remove PLATFORM(MAC) wrapping USE(ATSUI). It's redundant and inhibits
its use for PLATFORM(CHROMIUM) in the future.

  • platform/graphics/SimpleFontData.h:
5:49 PM Changeset in webkit [37800] by dsmith@webkit.org
  • 3 edits
    2 adds in trunk

WebCore:

2008-10-22 David Smith <catfish.man@gmail.com>

Reviewed by andersca.


https://bugs.webkit.org/show_bug.cgi?id=19974
getElementsByClassName not live enough

Test: fast/dom/getElementsByClassName/015.html

  • dom/StyledElement.cpp: (WebCore::StyledElement::classAttributeChanged): call dispatchSubtreeModifiedEvent()

LayoutTests:

2008-10-22 David Smith <catfish.man@gmail.com>

Reviewed by andersca.


https://bugs.webkit.org/show_bug.cgi?id=19974
getElementsByClassName not live enough

  • fast/dom/getElementsByClassName/015-expected.txt: Added.
  • fast/dom/getElementsByClassName/015.html: Added.
5:11 PM Changeset in webkit [37799] by Darin Adler
  • 42 edits in trunk

JavaScriptCore:

2008-10-22 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

A bit over 3% faster on V8 tests.

  • JavascriptCore.exp: Export leak-related functions..
  • API/JSCallbackConstructor.h: (JSC::JSCallbackConstructor::createStructureID): Set HasStandardGetOwnPropertySlot since this class doesn't override getPropertySlot.
  • API/JSCallbackFunction.h: (JSC::JSCallbackFunction::createStructureID): Ditto.
  • VM/ExceptionHelpers.cpp: (JSC::InterruptedExecutionError::InterruptedExecutionError): Use a structure that's created just for this class instead of trying to share a single "null prototype" structure.
  • VM/Machine.cpp: (JSC::Machine::cti_op_create_arguments_no_params): Rename Arguments::ArgumentsNoParameters to Arguments::NoParameters.


  • kjs/Arguments.h: Rename the enum from Arguments::ArgumentsParameters to Arguments::NoParametersType and the value from Arguments::ArgumentsNoParameters to Arguments::NoParameters. (JSC::Arguments::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot. (JSC::Arguments::Arguments): Added an assertion that there are no parameters.
  • kjs/DatePrototype.h: (JSC::DatePrototype::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/FunctionPrototype.h: (JSC::FunctionPrototype::createStructureID): Set HasStandardGetOwnPropertySlot since this class doesn't override getPropertySlot.
  • kjs/InternalFunction.h: (JSC::InternalFunction::createStructureID): Ditto.
  • kjs/JSArray.h: (JSC::JSArray::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/JSCell.h: Added declaration of fastGetOwnPropertySlot; a non-virtual version that uses the structure bit to decide whether to call the virtual version.
  • kjs/JSFunction.h: (JSC::JSFunction::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): Initialize new structures; removed nullProtoStructureID.
  • kjs/JSGlobalData.h: Added new structures. Removed nullProtoStructureID.
  • kjs/JSGlobalObject.h: (JSC::JSGlobalObject::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/JSNotAnObject.h: (JSC::JSNotAnObjectErrorStub::JSNotAnObjectErrorStub): Use a structure that's created just for this class instead of trying to share a single "null prototype" structure. (JSC::JSNotAnObjectErrorStub::isNotAnObjectErrorStub): Marked this function virtual for clarity and made it private since no one should call it if they already have a pointer to this specific type. (JSC::JSNotAnObject::JSNotAnObject): Use a structure that's created just for this class instead of trying to share a single "null prototype" structure. (JSC::JSNotAnObject::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/JSObject.h: (JSC::JSObject::createStructureID): Added HasStandardGetOwnPropertySlot. (JSC::JSObject::inlineGetOwnPropertySlot): Added. Used so we can share code between getOwnPropertySlot and fastGetOwnPropertySlot. (JSC::JSObject::getOwnPropertySlot): Moved so that functions are above the functions that call them. Moved the guts of this function into inlineGetOwnPropertySlot. (JSC::JSCell::fastGetOwnPropertySlot): Added. Checks the HasStandardGetOwnPropertySlot bit and if it's set, calls inlineGetOwnPropertySlot, otherwise calls getOwnPropertySlot. (JSC::JSObject::getPropertySlot): Changed to call fastGetOwnPropertySlot. (JSC::JSValue::get): Changed to call fastGetOwnPropertySlot.
  • kjs/JSWrapperObject.h: Made constructor protected to emphasize that this class is only a base class and never instantiated.
  • kjs/MathObject.h: (JSC::MathObject::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • kjs/NumberConstructor.h: (JSC::NumberConstructor::createStructureID): Ditto.
  • kjs/RegExpConstructor.h: (JSC::RegExpConstructor::createStructureID): Ditto.
  • kjs/RegExpObject.h: (JSC::RegExpObject::createStructureID): Ditto.
  • kjs/StringObject.h: (JSC::StringObject::createStructureID): Ditto.
  • kjs/TypeInfo.h: Added HasStandardGetOwnPropertySlot flag and hasStandardGetOwnPropertySlot accessor function.

JavaScriptGlue:

2008-10-22 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

  • JSRun.cpp: (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here. Set up flags in its new location in global object data, and set up a structure for UserObjectImp too. (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique structure, rather than using the default one from JSGlobalObject.
  • JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved the data into a separate data object. And added userObjectStructure, a Structure to be used by UserObjectImp.
  • JSUtils.cpp: Removed unused sharedGlobalData global. (JSObjectKJSValue): Pass Structure in when creating UserObjectImp. (unprotectGlobalObject): Use JSGlueGLobalObject type specifically. (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData. (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and getThreadGlobalExecState. Also now passes in a structure ID when creating the global object. (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
  • UserObjectImp.cpp: (UserObjectImp::UserObjectImp): Changed to take a structure.
  • UserObjectImp.h: (UserObjectImp::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.

WebCore:

2008-10-22 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::wrap): Change to use a unique structure for this class rather than sharing nullProtoStructureID, which no longer exists.
  • bindings/js/JSNamedNodesCollection.h: (WebCore::JSNamedNodesCollection::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • bindings/js/JSRGBColor.h: (WebCore::JSRGBColor::createStructureID): Ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Added createStructureID functions for the wrappers, constructors, and prototypes in any case where they override getOwnPropertySlot, without HasStandardGetOwnPropertySlot.
  • bridge/objc/objc_runtime.h: (JSC::Bindings::ObjcFallbackObjectImp::createStructureID): Added. Returns a structure without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
  • bridge/qt/qt_runtime.h: (JSC::Bindings::QtRuntimeMethod::createStructureID): Ditto.
  • bridge/runtime_array.h: (JSC::RuntimeArray::createStructureID): Ditto.
  • bridge/runtime_method.h: (JSC::RuntimeMethod::createStructureID): Ditto.
  • bridge/runtime_object.h: (JSC::RuntimeObjectImp::createStructureID): Ditto.
4:34 PM Changeset in webkit [37798] by Adam Roben
  • 2 edits in trunk/WebCore

Bring Windows Cairo Port's font handling in line with CG.
http://bugs.webkit.org/show_bug.cgi?id=21812.

Reviewed by Adam Roben.

  • platform/graphics/win/FontCacheWin.cpp: (WebCore::createGDIFont): Remove unnecessary special-case for Cairo TrueType font search. It should match CG in all font selections.
4:33 PM Changeset in webkit [37797] by Adam Roben
  • 7 edits
    1 add in trunk

WebCore:

2008-10-22 Brent Fulgham <bfulgham@gmail.com>

Correct build regressions in Cairo port for Windows.
http://bugs.webkit.org/show_bug.cgi?id=21724

Reviewed by Adam Roben.

  • WebCore.vcproj/WebCore.vcproj: Fixed include paths and post-build event for the Debug_Cairo and Release_Cairo configurations.
  • platform/graphics/win/GraphicsContextCairoWin.cpp: (WebCore::GraphicsContext::GraphicsContext): Update to newer constructor signature.
  • platform/network/curl/DNSCurl.cpp: Added. (WebCore::prefetchDNS):
  • platform/network/curl/ResourceRequest.h:
  • platform/win/ScrollbarThemeWin.cpp: (WebCore::ScrollbarTheme::nativeTheme):

WebKit/win:

2008-10-22 Brent Fulgham <bfulgham@gmail.com>

Correct build regressions in Cairo port for Windows.
http://bugs.webkit.org/show_bug.cgi?id=21724

Reviewed by Adam Roben.

  • WebView.cpp: (WebView::notifyPreferencesChanged): Don't try to call setShouldPaintNativeControls when SafariTheme support is disabled, as that function doesn't exist in that case.
4:31 PM Changeset in webkit [37796] by beidson@apple.com
  • 9 edits in trunk

LayoutTests:
2008-10-22 Brady Eidson <beidson@apple.com>

Reviewed by Adam Roben

<rdar://6261773> - autocomplete="off" doesn't work on Windows

Remove a skipped test that can now pass with proper DRT support


  • platform/win/Skipped: Remove security/autocomplete-cleared-on-back.html

WebKitTools:
2008-10-22 Brady Eidson <beidson@apple.com>

Reviewed by Adam Roben


<rdar://6261773> - autocomplete="off" doesn't work on Windows

Implement LayoutTestController::elementDoesAutoCompleteForElementWithId() on Windows


  • DumpRenderTree/win/LayoutTestControllerWin.cpp:


WebKit/win:
2008-10-22 Brady Eidson <beidson@apple.com>

Reviewed by Adam Roben


Move elementDoesAutoComplete() to IWebFramePrivate so it is exposed for DRT to use

  • Interfaces/IWebFramePrivate.idl:


  • WebFrame.cpp: (WebFrame::elementDoesAutoComplete):
  • WebFrame.h:


  • WebHTMLRepresentation.cpp: (WebHTMLRepresentation::elementDoesAutoComplete):
4:19 PM Changeset in webkit [37795] by mrowe@apple.com
  • 2 edits in branches/Safari-3-2-branch/WebCore

Merge r37793.

4:12 PM Changeset in webkit [37794] by timothy@apple.com
  • 1 edit in trunk/WebCore/inspector/front-end/ElementsTreeOutline.js

Add a license to ElementsTreeOutline.js that was left off when it was split out from ElementsPanel.js.

4:06 PM Changeset in webkit [37793] by beidson@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben

<rdar://6261773> - autocomplete="off" doesn't work on Windows

Visual Studio makes a poor decision regarding the combination of enums and bitfields, such that a
statement like "m_autocomplete = Off" followed by "return m_autocomplete == Off" would return "false"
instead of the much more correct "true."


In the past we have worked around this by declaring the bitfield member as an unsigned instead
of the enum type.

For more discussion, see http://trac.webkit.org/changeset/25329

  • html/HTMLInputElement.h: Work around insane Visual Studio enum issue *sigh*
4:05 PM Changeset in webkit [37792] by kmccullough@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

2008-10-22 Kevin McCullough <kmccullough@apple.com>

Reviewed by Oliver Hunt and Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=19225
Bug 19225: JSProfiler: Create automated profiler tests

  • This change exports profiles on the console object so that they can be iterated over via JavaScript, and thus can be used in automated tests.
  • bindings/js/JSConsoleCustom.cpp: Get the profiles and return an array that JS can use. (WebCore::JSConsole::profiles):
  • inspector/InspectorController.h: Use the new typedef. (WebCore::InspectorController::profiles):
  • page/Console.cpp: Keep our own array of profile objects. (WebCore::Console::profileEnd):
  • page/Console.h: Ditto. (WebCore::Console::profiles):
  • page/Console.idl: Expose the profiles to JS.
4:04 PM Changeset in webkit [37791] by kmccullough@apple.com
  • 6 edits in trunk/WebCore

2008-10-22 Kevin McCullough <kmccullough@apple.com>

Reviewed by Oliver Hunt and Tim Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=19225
Bug 19225: JSProfiler: Create automated profiler tests

  • This change exports profiles on the console object so that they can be iterated over via JavaScript, and thus can be used in automated tests.
  • bindings/js/JSConsoleCustom.cpp: Get the profiles and return an array that JS can use. (WebCore::JSConsole::profiles):
  • inspector/InspectorController.h: Use the new typedef. (WebCore::InspectorController::profiles):
  • page/Console.cpp: Keep our own array of profile objects. (WebCore::Console::profileEnd):
  • page/Console.h: Ditto. (WebCore::Console::profiles):
  • page/Console.idl: Expose the profiles to JS.
2:51 PM Changeset in webkit [37790] by hyatt@apple.com
  • 11 edits in trunk/WebCore

2008-10-22 David Hyatt <hyatt@apple.com>

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

Convert buttons over to use the new Theme API on OS X.

Reviewed by Adam Roben

  • platform/LengthBox.h: (WebCore::LengthBox::LengthBox):
  • platform/Theme.cpp: (WebCore::Theme::controlBorder): (WebCore::Theme::controlPadding):
  • platform/Theme.h: (WebCore::Theme::controlFont): (WebCore::Theme::controlSize): (WebCore::Theme::minControlSize): (WebCore::Theme::controlRequiresPreWhiteSpace):
  • platform/mac/ThemeMac.h: (WebCore::ThemeMac::controlRequiresPreWhiteSpace):
  • platform/mac/ThemeMac.mm: (WebCore::checkboxSize): (WebCore::radioSize): (WebCore::buttonSizes): (WebCore::buttonMargins): (WebCore::button): (WebCore::paintButton): (WebCore::ThemeMac::controlFont): (WebCore::ThemeMac::controlSize): (WebCore::ThemeMac::minControlSize): (WebCore::ThemeMac::controlBorder): (WebCore::ThemeMac::controlPadding): (WebCore::ThemeMac::inflateControlPaintRect): (WebCore::ThemeMac::paint):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): (WebCore::RenderTheme::paint): (WebCore::RenderTheme::controlStatesForRenderer): (WebCore::RenderTheme::isDefault): (WebCore::RenderTheme::adjustRadioStyle):
  • rendering/RenderTheme.h: (WebCore::RenderTheme::setRadioSize):
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustRepaintRect): (WebCore::menuListButtonSizes): (WebCore::RenderThemeMac::adjustMenuListStyle):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::paddingBox): (WebCore::InheritedFlags::setPaddingBox):
2:06 PM Changeset in webkit [37789] by cwzwarich@webkit.org
  • 6 edits in trunk/JavaScriptCore

2008-10-22 Cameron Zwarich <zwarich@apple.com>

Reviewed by Geoff Garen.

Bug 21803: Fuse op_jfalse with op_eq_null and op_neq_null
<https://bugs.webkit.org/show_bug.cgi?id=21803>

Fuse op_jfalse with op_eq_null and op_neq_null to make the new opcodes
op_jeq_null and op_jneq_null.

This is a 2.6% speedup on the V8 Raytrace benchmark, and strangely also
a 4.7% speedup on the V8 Arguments benchmark, even though it uses
neither of the two new opcodes.

  • VM/CTI.cpp: (JSC::CTI::privateCompileMainPass):
  • VM/CodeBlock.cpp: (JSC::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitJumpIfTrue): (JSC::CodeGenerator::emitJumpIfFalse):
  • VM/Machine.cpp: (JSC::Machine::privateExecute):
  • VM/Opcode.h:
12:53 PM Changeset in webkit [37788] by Simon Fraser
  • 1 edit
    6 moves in trunk/LayoutTests

2008-10-22 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

Moved tests from css3 to animations/transforms directories.

  • animations/change-keyframes-expected.txt: Renamed from LayoutTests/css3/change-keyframes-expected.txt.
  • animations/change-keyframes.html: Renamed from LayoutTests/css3/change-keyframes.html.
  • animations/keyframes-rule-expected.txt: Renamed from LayoutTests/css3/keyframes-rule-expected.txt.
  • animations/keyframes-rule.html: Renamed from LayoutTests/css3/keyframes-rule.html.
  • transforms/transform-value-types-expected.txt: Renamed from LayoutTests/css3/transform-value-types-expected.txt.
  • transforms/transform-value-types.html: Renamed from LayoutTests/css3/transform-value-types.html.
12:53 PM Changeset in webkit [37787] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

2008-10-22 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon Hausmann.

For public API, use the term boundingRect instead of boundingBox.

  • Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): (QWebHitTestResult::boundingRect):
  • Api/qwebframe.h:
  • Api/qwebframe_p.h:
12:35 PM Changeset in webkit [37786] by Simon Fraser
  • 5 edits
    2 adds in trunk

2008-10-22 Chris Marrin <cmarrin@apple.com>

Reviewed by Dave Hyatt

Make sure that the AtomicString that identifies a set of animation keyframes
stays live by keeping a copy in the WebKitCSSKeyframesRule.

Also call styleSheetChanged() when the keyframes name changes, but
add an internal method that doesn't call styleSheetChanged() for use
during normal stylesheet parsing.

Test: animations/change-keyframes-name.html

  • css/CSSGrammar.y:
  • css/WebKitCSSKeyframesRule.cpp: (WebCore::WebKitCSSKeyframesRule::setName):
  • css/WebKitCSSKeyframesRule.h: (WebCore::WebKitCSSKeyframesRule::setNameInternal):
11:32 AM Changeset in webkit [37785] by Darin Adler
  • 2 edits in trunk/WebKitTools

2008-10-22 Darin Adler <Darin Adler>

  • Scripts/do-webcore-rename: More renaming plans.
10:43 AM Changeset in webkit [37784] by ap@webkit.org
  • 6 edits in trunk/WebCore

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=21791
WebCore JS bindings should be able to use non-static hash tables for properties

Add a map for HashTables to WebCore JS client data.

This makes property access noticeably slower, so it is an opt-in. For classes that need to be
supported in workers in forseeable future this is not critical.

  • bindings/js/JSDOMBinding.cpp: (WebCore::DOMObjectHashTableMap::get): (WebCore::DOMObjectHashTableMap::mapFor): (WebCore::getHashTableForGlobalData): (WebCore::DOMObjectWrapperMap::mapFor): WebCore client data is now a class that contains both a DOM wrapper map and a property hash table one.
  • bindings/js/JSDOMBinding.h: Added getHashTableForGlobalData() to query the hash table map.
  • bindings/scripts/CodeGeneratorJS.pm: If the class has a NoStaticTables attribute, use JSDOMBinding map to access its property hash tables.
  • dom/MessageChannel.idl:
  • dom/MessagePort.idl: Added NoStaticTables attribute.
9:47 AM Changeset in webkit [37783] by darin@chromium.org
  • 2 edits in trunk/JavaScriptCore

2008-10-22 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

Should not define PLATFORM(WIN,MAC,GTK) when PLATFORM(CHROMIUM) is defined
https://bugs.webkit.org/show_bug.cgi?id=21757

PLATFORM(CHROMIUM) implies HAVE_ACCESSIBILITY

  • wtf/Platform.h:
9:16 AM Changeset in webkit [37782] by alp@webkit.org
  • 2 edits in trunk/WebKit/gtk

2008-10-22 Alp Toker <alp@nuanti.com>

Build fix for older GTK+ versions where GTK_TYPE_TARGET_LIST isn't
defined.

  • webkit/webkitwebview.cpp:
7:24 AM Changeset in webkit [37781] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-10-22 Cameron Zwarich <zwarich@apple.com>

Reviewed by Alexey Proskuryakov.

Correct opcode names in documentation.

  • VM/Machine.cpp: (JSC::Machine::privateExecute):
6:55 AM Changeset in webkit [37780] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-10-22 Gustavo Noronha Silva <Gustavo Noronha Silva>

Reviewed by Timothy Hatcher.

Build failure because of missing include
https://bugs.webkit.org/show_bug.cgi?id=21765

Build failure fix for WebKit/GTK+; added missing
include (GOwnPtr.h)

  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
6:51 AM Changeset in webkit [37779] by alp@webkit.org
  • 4 edits in trunk

2008-10-22 Alp Toker <alp@nuanti.com>

Reviewed by Adam Roben.

Fix crashes on older GTK+ versions (2.8). gtk_widget_style_get()
doesn't initialize values if the requested property doesn't exist, so
initialize the values to the documented defaults before calling it
where necessary. Additionally, avoid critical warnings by not calling
gtk_widget_style_get() when we know the property isn't available.

Note that this is an imported source file which doesn't follow the
WebKit coding style.

Avoid critical warnings on older GTK+ versions (2.8) by not checking
for GTK+ setting properties when we know they don't exist.

3:38 AM Changeset in webkit [37778] by alp@webkit.org
  • 5 edits in trunk

2008-10-22 Alp Toker <alp@nuanti.com>

Fix build for Cairo 1.2.

1:22 AM Changeset in webkit [37777] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

12:56 AM Changeset in webkit [37776] by darin@chromium.org
  • 3 edits in trunk/WebCore

2008-10-22 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

A little more PLATFORM(CHROMIUM) in WebCore
https://bugs.webkit.org/show_bug.cgi?id=21758

  • page/AccessibilityObject.h:
  • platform/graphics/Icon.h:
12:54 AM Changeset in webkit [37775] by abarth@webkit.org
  • 3 edits in trunk/LayoutTests

2008-10-22 Jungshik Shin <jshin@chromium.org>

Reviewed by Alexey Proskuryakov.
Landed by Adam Barth.

Replace x-mac-cyrillic by windows-1256.

  • http/tests/misc/frame-default-enc-same-domain-expected.txt:
  • http/tests/misc/frame-default-enc-same-domain.html:
12:15 AM Changeset in webkit [37774] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

12:14 AM Changeset in webkit [37773] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.26.2

New tag.

Oct 21, 2008:

11:49 PM Changeset in webkit [37772] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Attempt to make the win2k3 bot be more useful for testing

RS=Maciej Stachowiak.

Force FastMalloc to make all allocated pages executable in
a vague hope this will allow the Win2k3 bot to be able to
run tests.

Filed Bug 21783: Need more granular control over allocation of executable memory
to cover a more granular version of this patch.

11:07 PM Changeset in webkit [37771] by ap@webkit.org
  • 7 edits
    2 adds in trunk

Reviewed by Darin Adler.

Test: fast/events/message-channel-gc-3.html

https://bugs.webkit.org/show_bug.cgi?id=21769
MessagePort should be GC protected if there are messages to be delivered

  • dom/MessagePort.h: Removed pending activity count. Now we track if a close event is pending, and check if the queue is non-empty. (WebCore::MessagePort::workerContext): Added a stub implementation for a cross-heap GC bug fix (below).
  • dom/MessagePort.cpp: (WebCore::CloseMessagePortTimer::fired): (WebCore::MessagePort::MessagePort): (WebCore::MessagePort::queueCloseEvent): (WebCore::MessagePort::dispatchCloseEvent): (WebCore::MessagePort::hasPendingActivity): Track message and close event activity separately.
  • bindings/js/JSDOMBinding.cpp: (WebCore::markCrossHeapDependentObjectsForDocument): Fixed a bug in cross-heap GC that was causing same-heap ports to never be deleted.
  • wtf/MessageQueue.h: (WTF::::isEmpty): Added. Also added a warning for methods that return a snapshot of queue state, thus likely to cause race conditions.
8:10 PM Changeset in webkit [37770] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • remove unreachable code
  • platform/text/BidiResolver.h: (WebCore::::embed):
5:41 PM Changeset in webkit [37769] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

2008-10-21 Steve Falkenburg <sfalken@apple.com>

Exclude strings marked with UNLOCALIZED_STRING or UNLOCALIZED_LPCTSTR.

  • Scripts/extract-localizable-strings:
5:22 PM Changeset in webkit [37768] by Beth Dakin
  • 2 edits in trunk/WebCore

2008-10-21 Beth Dakin <Beth Dakin>

Reviewed by Darin Adler.

Fix for https://bugs.webkit.org/show_bug.cgi?id=20352
REGRESSION(r31030-31055): Choosing "Print window" from frame set
prints blank page
and corresponding: <rdar://problem/6142398>

viewHeight() and viewWidth() only return valuable information if we
are not printing. Everywhere else in the code, we make sure we are
not printing before we call these functions. Adding a check for
printing here fixes this bug, and framesets print again.

  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::layout):
5:16 PM Changeset in webkit [37767] by mrowe@apple.com
  • 3 edits in branches/Safari-3-2-branch/WebKit/win

Merge r37489.

5:16 PM Changeset in webkit [37766] by mrowe@apple.com
  • 2 edits in branches/Safari-3-2-branch/WebCore

Merge r37704.

5:16 PM Changeset in webkit [37765] by mrowe@apple.com
  • 8 edits in branches/Safari-3-2-branch

Merge r31577.

3:33 PM Changeset in webkit [37764] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

2008-06-03 Siraj Razick <siraj.razick@collabora.co.uk>

Reviewed by Simon Hausmann.

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

Expose boundingBox value in QWebHitTestResult

Add API function QRect QWebHitResult::boundingBox() const

API docs by Ariya.

2:29 PM Changeset in webkit [37763] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-10-21 Darin Adler <Darin Adler>

Reviewed by Maciej Stachowiak.

  • convert post-increment to pre-increment in a couple more places for speed

Speeds up V8 benchmarks a little on most computers. (But, strangely, slows
them down a little on my computer.)

  • kjs/nodes.cpp: (JSC::statementListEmitCode): Removed default argument, since we always want to specify this explicitly. (JSC::ForNode::emitCode): Tolerate ignoredResult() as the dst -- means the same thing as 0. (JSC::ReturnNode::emitCode): Ditto. (JSC::ThrowNode::emitCode): Ditto. (JSC::FunctionBodyNode::emitCode): Pass ignoredResult() so that we know we don't have to compute the result of function statements.
2:09 PM Changeset in webkit [37762] by pkasting@chromium.org
  • 2 edits in trunk/JavaScriptCore

2008-10-21 Peter Kasting <pkasting@google.com>

Reviewed by Maciej Stachowiak.

Fix an include of a non-public header to use "" instead of <>.

  • API/JSProfilerPrivate.cpp:
10:27 AM Changeset in webkit [37761] by Simon Hausmann
  • 2 edits in trunk/WebKit

2008-10-21 Yael <yael.aharon@nokia.com>

Reviewed by Simon Hausmann.

emit repaintRequested unconditionally when repaint is requested.

5:57 AM Changeset in webkit [37760] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-10-21 Yael Aharon <yael.aharon@nokia.com>

Reviewed by Simon.

Pixmap in canvas tag was not getting initialized.

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

Oct 20, 2008:

11:08 PM Changeset in webkit [37759] by weinig@apple.com
  • 10 edits in trunk

JavaScriptCore:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
REGRESSION: 12 JSC tests fail

The JSGlobalObject was mutating the shared nullProtoStructureID when
used in jsc. Instead of using nullProtoStructureID, use a new StructureID.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h: (JSC::::JSCallbackObject):
  • API/JSContextRef.cpp: (JSGlobalContextCreateInGroup):
  • kjs/JSGlobalObject.h: (JSC::JSGlobalObject::JSGlobalObject):
  • kjs/Shell.cpp: (GlobalObject::GlobalObject): (jscmain):

JavaScriptGlue:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
REGRESSION: 12 JSC tests fail

The JSGlobalObject constructor no longer takes a JSGlobalData
as an argument.

  • JSRun.cpp: (JSRun::JSRun):
  • JSRun.h: (JSGlueGlobalObject::JSGlueGlobalObject):
  • JSUtils.cpp: (getThreadGlobalExecState):
11:01 PM Changeset in webkit [37758] by Simon Fraser
  • 3 edits in trunk/WebCore

2008-10-20 Simon Fraser <Simon Fraser>

Reviewed by Dan Bernstein

Add a comment explaining layoutDelta(), and an assertion
that checks that delta changes were correctly paired during layout.

  • rendering/RenderView.cpp: (WebCore::RenderView::layout):
  • rendering/RenderView.h:
9:50 PM Changeset in webkit [37757] by timothy@apple.com
  • 2 edits in trunk/WebCore

Make auto-complete only suggest properties that are valid syntax
when using dot-notation. Also when completing numeric properties,
the quotes are omitted inside the brackets.

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

Reviewed by Oliver Hunt.

  • inspector/front-end/Console.js: (WebInspector.Console.prototype.completions): Skip properties that are not valid identifies when using dot-notation. And omit the quotes when completing numbers in bracket-notation.
9:50 PM Changeset in webkit [37756] by timothy@apple.com
  • 3 edits in trunk/WebCore

Fixes the Profiles panel in the Web Inspector, which was broken by
the JSValue base-class changes. Also renames some functions and
variables in JavaScriptProfileNode.cpp that where title case.

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

Reviewed by Oliver Hunt.

  • inspector/JavaScriptProfile.cpp: (WebCore::toJS): Use a JSObject pointer instead of JSValuePtr so the returned JSValuePtr will be treated as an object and not a value.
  • inspector/JavaScriptProfileNode.cpp: (WebCore::toJS): Ditto.
7:45 PM Changeset in webkit [37755] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Cameron Zwarich <zwarich@apple.com>

Reviewed by Maciej Stachowiak.

Remove an untaken branch in CodeGenerator::emitJumpIfFalse(). This
function is never called with a backwards target LabelID, and there is
even an assertion to this effect at the top of the function body.

  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::emitJumpIfFalse):
7:14 PM Changeset in webkit [37754] by weinig@apple.com
  • 19 edits in trunk

WebCore:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::detachedFromParent4):.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::detachFromParent):
  • loader/FrameLoaderClient.h:

WebKit/gtk:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:
  • WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

WebKit/qt:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • WebCoreSupport/FrameLoaderClientQt.cpp:
  • WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • WebFrame.cpp:
  • WebFrame.h:

WebKit/wx:

2008-10-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.

  • WebKitSupport/FrameLoaderClientWx.cpp:
  • WebKitSupport/FrameLoaderClientWx.h:
6:22 PM Changeset in webkit [37753] by Antti Koivisto
  • 2 edits in trunk/WebCore

2008-10-20 Antti Koivisto <Antti Koivisto>

Reviewed by Adele Peterson.

Fix https://bugs.webkit.org/show_bug.cgi?id=21763
REGRESSION (r36108-r36113): Can't load picture content on wired.com galleries
<rdar://problem/6285025


If we get 304 response we need to explicitly check if that completes the frame load.


No test case, simulating the condition is pretty difficult.

  • loader/loader.cpp: (WebCore::Loader::Host::didReceiveResponse):
6:05 PM Changeset in webkit [37752] by andersca@apple.com
  • 2 edits in trunk/WebCore

2008-10-20 Anders Carlsson <andersca@apple.com>

Reviewed by Mark Rowe.

Work around <rdar://problem/6301728>.


Don't assert that loads are deferred when we're using CFNetwork on Mac or Windows.


  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::didReceiveResponse): (WebCore::MainResourceLoader::didReceiveData): (WebCore::MainResourceLoader::didFinishLoading): (WebCore::MainResourceLoader::didFail):
5:20 PM Changeset in webkit [37751] by cwzwarich@webkit.org
  • 1 edit in trunk/JavaScriptCore/ChangeLog

2008-10-20 Cameron Zwarich <zwarich@apple.com>

Not reviewed.

Update the ChangeLog for previous commit to contain meaningful
information.

  • ChangeLog
5:10 PM Changeset in webkit [37750] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Cameron Zwarich <zwarich@apple.com>

Rubber-stamped by Sam Weinig.

  • VM/Machine.cpp: (JSC::Machine::privateExecute):
3:47 PM Changeset in webkit [37749] by Beth Dakin
  • 2 edits in trunk/WebCore

2008-10-20 Beth Dakin <Beth Dakin>

Reviewed by Adele Peterson.

Speculative fix for <rdar://problem/6242585> CrashTracer: [USER] 19
crashes in Safari at com.apple.WebCore
WebCore::ScrollView::visibleContentRect const + 153

d->m_view can be null and is null-checked at other points in the
code. The logs indicate that this crash occurs when closing a
window containing a PDF, so in case where we crash, the PDF's view
is probably already null. So the fix is to simply add a null-check.

  • page/Frame.cpp: (WebCore::Frame::selectionRect):
2:31 PM Changeset in webkit [37748] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-10-20 Adele Peterson <adele@apple.com>

Reviewed by Darin Adler.

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Removed stray increment that would screw up any form with multiple files in it.
2:27 PM Changeset in webkit [37747] by weinig@apple.com
  • 24 edits in trunk/JavaScriptCore

2008-10-16 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Fix for https://bugs.webkit.org/show_bug.cgi?id=21683
Don't create intermediate StructureIDs for builtin objects

Second stage in reduce number of StructureIDs created when initializing the
JSGlobalObject.

  • Use putDirectWithoutTransition for the remaining singleton objects to reduce the number of StructureIDs create for about:blank from 132 to 73.
  • kjs/ArrayConstructor.cpp: (JSC::ArrayConstructor::ArrayConstructor):
  • kjs/BooleanConstructor.cpp: (JSC::BooleanConstructor::BooleanConstructor):
  • kjs/BooleanPrototype.cpp: (JSC::BooleanPrototype::BooleanPrototype):
  • kjs/DateConstructor.cpp: (JSC::DateConstructor::DateConstructor):
  • kjs/ErrorConstructor.cpp: (JSC::ErrorConstructor::ErrorConstructor):
  • kjs/ErrorPrototype.cpp: (JSC::ErrorPrototype::ErrorPrototype):
  • kjs/FunctionConstructor.cpp: (JSC::FunctionConstructor::FunctionConstructor):
  • kjs/FunctionPrototype.cpp: (JSC::FunctionPrototype::FunctionPrototype): (JSC::FunctionPrototype::addFunctionProperties):
  • kjs/FunctionPrototype.h: (JSC::FunctionPrototype::createStructureID):
  • kjs/InternalFunction.cpp:
  • kjs/InternalFunction.h: (JSC::InternalFunction::InternalFunction):
  • kjs/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset):
  • kjs/JSObject.h:
  • kjs/MathObject.cpp: (JSC::MathObject::MathObject):
  • kjs/NumberConstructor.cpp: (JSC::NumberConstructor::NumberConstructor):
  • kjs/NumberPrototype.cpp: (JSC::NumberPrototype::NumberPrototype):
  • kjs/ObjectConstructor.cpp: (JSC::ObjectConstructor::ObjectConstructor):
  • kjs/RegExpConstructor.cpp: (JSC::RegExpConstructor::RegExpConstructor):
  • kjs/RegExpPrototype.cpp: (JSC::RegExpPrototype::RegExpPrototype):
  • kjs/StringConstructor.cpp: (JSC::StringConstructor::StringConstructor):
  • kjs/StringPrototype.cpp: (JSC::StringPrototype::StringPrototype):
  • kjs/StructureID.cpp: (JSC::StructureID::dumpStatistics):
  • kjs/StructureID.h: (JSC::StructureID::setPrototypeWithoutTransition):
1:42 PM Changeset in webkit [37746] by weinig@apple.com
  • 12 edits
    2 copies in trunk/WebCore

2008-10-20 Sam Weinig <sam@webkit.org>

Rubber-stamped by David Hyatt.

Split LengthBox and LengthSize into their own files.

  • GNUmakefile.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/Length.h: (WebCore::Length::blend):
  • platform/LengthBox.h: Copied from platform/Length.h. (WebCore::LengthBox::LengthBox): (WebCore::LengthBox::nonZero):
  • platform/LengthSize.h: Copied from platform/Length.h. (WebCore::LengthSize::LengthSize): (WebCore::LengthSize::setWidth): (WebCore::LengthSize::setHeight): (WebCore::LengthSize::height):
  • platform/Theme.h:
  • rendering/style/FillLayer.h:
  • rendering/style/NinePieceImage.h: (WebCore::NinePieceImage::NinePieceImage):
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleDashboardRegion.h:
  • rendering/style/StyleSurroundData.h:
  • rendering/style/StyleVisualData.h:
1:15 PM Changeset in webkit [37745] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Mac build fix
  • WebCore.xcodeproj/project.pbxproj:
12:30 PM Changeset in webkit [37744] by alp@webkit.org
  • 4 edits in trunk

2008-10-20 Alp Toker <alp@nuanti.com>

Fix autotools dist build target by listing recently added header
files only. Not reviewed.

12:27 PM Changeset in webkit [37743] by hyatt@apple.com
  • 7 edits
    1 add in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

Clean up some USE(NEW_THEME) ifdefs (I botched one of them and have broken non-Mac platforms). Also
refactor some of the code that I put in ThemeMac to be cross-platform, since it was in RenderTheme.cpp
originally.

ifdef some methods in RenderTheme.cpp also that are no longer needed with the new Theme.

Reviewed by Adam Roben

  • WebCore.xcodeproj/project.pbxproj:
  • platform/Theme.cpp: Added. (WebCore::Theme::controlSupportsBorder): (WebCore::Theme::controlSupportsPadding):
  • platform/Theme.h:
  • platform/mac/ThemeMac.h:
  • platform/mac/ThemeMac.mm:
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle):
  • rendering/RenderTheme.h:
12:18 PM Changeset in webkit [37742] by hyatt@apple.com
  • 7 edits in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

Rename LengthBox's members to have m_ in front of them.

Reviewed by Sam Weinig

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::valueForNinePieceImage): (WebCore::getPositionOffsetValue): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapNinePieceImage):
  • platform/Length.h: (WebCore::LengthBox::LengthBox): (WebCore::LengthBox::left): (WebCore::LengthBox::right): (WebCore::LengthBox::top): (WebCore::LengthBox::bottom): (WebCore::LengthBox::operator==): (WebCore::LengthBox::nonZero):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintNinePieceImage): (WebCore::RenderObject::addDashboardRegions):
  • rendering/style/RenderStyle.cpp: (WebCore::positionedObjectMoved): (WebCore::RenderStyle::setClip): (WebCore::RenderStyle::noneDashboardRegions):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::left): (WebCore::InheritedFlags::right): (WebCore::InheritedFlags::top): (WebCore::InheritedFlags::bottom): (WebCore::InheritedFlags::clipLeft): (WebCore::InheritedFlags::clipRight): (WebCore::InheritedFlags::clipTop): (WebCore::InheritedFlags::clipBottom): (WebCore::InheritedFlags::marginTop): (WebCore::InheritedFlags::marginBottom): (WebCore::InheritedFlags::marginLeft): (WebCore::InheritedFlags::marginRight): (WebCore::InheritedFlags::paddingTop): (WebCore::InheritedFlags::paddingBottom): (WebCore::InheritedFlags::paddingLeft): (WebCore::InheritedFlags::paddingRight): (WebCore::InheritedFlags::setLeft): (WebCore::InheritedFlags::setRight): (WebCore::InheritedFlags::setTop): (WebCore::InheritedFlags::setBottom): (WebCore::InheritedFlags::setDashboardRegion): (WebCore::InheritedFlags::setClipLeft): (WebCore::InheritedFlags::setClipRight): (WebCore::InheritedFlags::setClipTop): (WebCore::InheritedFlags::setClipBottom): (WebCore::InheritedFlags::setMarginTop): (WebCore::InheritedFlags::setMarginBottom): (WebCore::InheritedFlags::setMarginLeft): (WebCore::InheritedFlags::setMarginRight): (WebCore::InheritedFlags::setPaddingTop): (WebCore::InheritedFlags::setPaddingBottom): (WebCore::InheritedFlags::setPaddingLeft): (WebCore::InheritedFlags::setPaddingRight):
12:03 PM Changeset in webkit [37741] by timothy@apple.com
  • 3 edits in trunk/WebCore

Make the Resource panel perform graph updates atomically, so when resources
are added the graph and summary graph update at the same time.

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

Reviewed by Kevin McCullough.

  • inspector/front-end/Resource.js: (WebInspector.Resource.prototype.get startTime): Return -1 if the _startTime property is undefined, null or 0. This allows callers to check for -1 and not the other values when there is no startTime yet. (WebInspector.Resource.prototype.get responseReceivedTime): Ditto. (WebInspector.Resource.prototype.get endTime): Ditto. (WebInspector.Resource.prototype.get duration): Remove an extra empty line. (WebInspector.Resource.prototype.get latency): Ditto. (WebInspector.Resource.prototype.get contentLength): Return 0 if the _duration property is undefined or null. This allows callers to always assume a number. (WebInspector.Resource.prototype.get expectedContentLength): Ditto. (WebInspector.Resource.prototype.get errors): Simplify the case where there is no _errors property yet. (WebInspector.Resource.prototype.set errors): Remove the check if the new value if the same as the previous value, since there is no work to guard. (WebInspector.Resource.prototype.get warnings): Simplify the case where there is no _warnings property yet. (WebInspector.Resource.prototype.set warnings): Remove the check if the new value if the same as the previous value, since there is no work to guard. (WebInspector.Resource.CompareByResponseReceivedTime): Add cases for when the responseReceivedTime is -1. (WebInspector.Resource.CompareByEndTime): Add cases for when the endTime is -1.
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.get searchableViews): If a resource does not have a _resourcesTreeElement yet, exclude it from the searchable views. (WebInspector.ResourcesPanel.prototype.set calculator): Set _staleResource to _resources and call refresh to refresh the entire graph. (WebInspector.ResourcesPanel.prototype.set needsRefresh): Set a timeout if the panel is visible that calls refresh. (WebInspector.ResourcesPanel.prototype.refresh): Create the resource tree element and graph for a resource if it hasn't been created yet. If the boundaries changed during the first stale resource pass, do a full pass of all resources when updating the graphs. (WebInspector.ResourcesPanel.prototype.reset): Remove the legend items. (WebInspector.ResourcesPanel.prototype.addResource): Don't create the tree element and graph, these are now created during the first refresh. (WebInspector.ResourcesPanel.prototype.removeResource): Null check _resourcesTreeElement. (WebInspector.ResourcesPanel.prototype.addMessageToResource): Ditto. (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto. (WebInspector.ResourcesPanel.prototype.refreshResource): Remove most of the work, just add the resource to the _staleResources and set needsRefresh. (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Null check _resourcesTreeElement. (WebInspector.ResourcesPanel.prototype._sortResourcesIfNeeded): Remove code to clear the timeout used by the deleted _sortResourcesSoonIfNeeded. Remove call to removeChild since the insertBefore call will do it if needed. (WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded): Remove code to clear the timeout used by the deleted _updateGraphDividersSoonIfNeeded. (WebInspector.ResourcesPanel.prototype._updateSummaryGraph): Remove code to clear the timeout used by the deleted _updateSummaryGraphSoon. No need to remove the totalLegendLabel, since all the legend items are removed in one pass right before. (WebInspector.ResourcesPanel.prototype._changeSortingFunction): Set the sortingFunction before the calculator so the correct sortingFunction is there when a refresh happens. (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphPercentages): Set start to 0 when the startTime is -1, since that looks best visually. Also set middle and end to the start and middle (respectfully) when startAtZero. This looks best visually. (WebInspector.ResourceGraph): Start the graph as hidden until the first refresh. (WebInspector.ResourceGraph.prototype.refresh): Remove the hidden class.
11:45 AM Changeset in webkit [37740] by hyatt@apple.com
  • 3 edits in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

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

Make sure that the haveMetadata flag is set to true for generated images from image buffers, so that
no attempt is made to re-cache the frame from a non-existent image source.

Reviewed by Sam Weinig

  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::BitmapImage):
  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::BitmapImage):
11:23 AM Changeset in webkit [37739] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by John Sullivan.

  • make hasARenderedDescendant() have internal linkage
  • editing/CompositeEditCommand.cpp: (WebCore::hasARenderedDescendant):
11:04 AM Changeset in webkit [37738] by alp@webkit.org
  • 2 edits in trunk

2008-10-20 Alp Toker <alp@nuanti.com>

Partial GTK+/Win32 build fix. Lowercase library name to enable linking
when cross-compiling Windows binaries from Linux: -lWs2_32 -> -lws2_32

  • configure.ac:
10:57 AM Changeset in webkit [37737] by Chris Fleizach
  • 3 edits
    2 adds in trunk

Bug 21721: 1 crash in Safari at com.apple.WebCore • WebCore::RenderTableSection::numColumns const + 12

10:42 AM Changeset in webkit [37736] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Anders Carlsson.

  • VM/Machine.cpp: (JSC::Machine::tryCacheGetByID): Removed a redundant and sometimes incorrect cast, which started ASSERTing after Darin's last checkin.
10:40 AM Changeset in webkit [37735] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

Avoid some stderr spew from CG by checking if we have a decoder yet in ImageSourceCG.

Reviewed by Darin Adler

  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::repetitionCount): (WebCore::ImageSource::frameDurationAtIndex):
10:28 AM Changeset in webkit [37734] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Re-enable CTI, which I accidentally disabled while checking in fixes
to bytecode.

  • wtf/Platform.h:
10:10 AM Changeset in webkit [37733] by alp@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Alp Toker <alp@nuanti.com>

Rubber-stamped by Mark Rowe.

Typo fix in function name: mimimum -> minimum.

  • kjs/DateMath.cpp: (JSC::minimumYearForDST): (JSC::equivalentYearForDST):
10:06 AM Changeset in webkit [37732] by alp@webkit.org
  • 9 edits in trunk

2008-10-20 Alp Toker <alp@nuanti.com>

Reviewed by Mark Rowe.

Use pthread instead of GThread where possible in the GTK+ port. This
fixes issues with global initialisation, particularly on GTK+/Win32
where a late g_thread_init() will cause hangs.

Fix the pthread conditionals in the FTP code to correctly define
threadsafe *_r functions on Windows. Partly fixes the GTK+/Win32
build.

9:50 AM Changeset in webkit [37731] by hyatt@apple.com
  • 15 edits in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

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

Convert checkboxes and radio buttons on OS X over to the new Theme API.

Reviewed by Adam Roben

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapFillSize):
  • platform/Length.h: (WebCore::LengthSize::LengthSize): (WebCore::LengthSize::operator==): (WebCore::LengthSize::width): (WebCore::LengthSize::height): (WebCore::LengthSize::setWidth): (WebCore::LengthSize::setHeight):
  • platform/Theme.h: (WebCore::Theme::controlSize): (WebCore::Theme::controlSupportsBorder): (WebCore::Theme::controlSupportsPadding): (WebCore::Theme::paint): (WebCore::Theme::inflateControlPaintRect):
  • platform/ThemeTypes.h: (WebCore::):
  • platform/mac/ThemeMac.h:
  • platform/mac/ThemeMac.mm: (WebCore::): (WebCore::controlSizeForFont): (WebCore::sizeFromFont): (WebCore::setControlSize): (WebCore::updateStates): (WebCore::inflateRect): (WebCore::checkboxSizes): (WebCore::checkboxMargins): (WebCore::checkboxSize): (WebCore::checkbox): (WebCore::paintCheckbox): (WebCore::radioSizes): (WebCore::radioMargins): (WebCore::radioSize): (WebCore::radio): (WebCore::paintRadio): (WebCore::ThemeMac::baselinePositionAdjustment): (WebCore::ThemeMac::controlSize): (WebCore::ThemeMac::controlSupportsBorder): (WebCore::ThemeMac::controlSupportsPadding): (WebCore::ThemeMac::inflateControlPaintRect): (WebCore::ThemeMac::paint):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::calculateBackgroundSize):
  • rendering/RenderObject.cpp: (WebCore::mustRepaintFillLayers):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): (WebCore::RenderTheme::paint): (WebCore::RenderTheme::baselinePosition): (WebCore::RenderTheme::adjustRepaintRect): (WebCore::RenderTheme::controlStatesForRenderer): (WebCore::RenderTheme::isFocused):
  • rendering/RenderTheme.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustRepaintRect):
  • rendering/style/FillLayer.cpp: (WebCore::FillLayer::operator==):
9:48 AM Changeset in webkit [37730] by ggaren@apple.com
  • 20 edits
    2 adds in trunk

JavaScriptCore:

2008-10-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


Fixed https://bugs.webkit.org/show_bug.cgi?id=21735
Emit profiling instrumentation only if the Web Inspector's profiling
feature is enabled

22.2% speedup on empty function call benchmark.
2.9% speedup on v8 benchmark.
0.7% speedup on SunSpider.


Lesser but similar speedups in bytecode.

  • VM/CTI.cpp: (JSC::CTI::compileOpCall): (JSC::CTI::privateCompileMainPass): (JSC::CTI::privateCompileSlowCases): Nixed JITed profiler hooks. Profiler hooks now have their own opcodes. Added support for compiling profiler hook opcodes.


(JSC::CodeBlock::dump): Dump support for the new profiling opcodes.

  • VM/CodeGenerator.h:
  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::CodeGenerator): (JSC::CodeGenerator::emitCall): (JSC::CodeGenerator::emitConstruct): Conditionally emit profiling hooks around call and construct, at the call site. (It's easier to get things right this way, if you have profiled code calling non-profiled code. Also, you get a slightly more accurate profile, since you charge the full cost of the call / construct operation to the callee.)


Also, fixed a bug where construct would fetch the ".prototype" property
from the constructor before evaluating the arguments to the constructor,
incorrectly allowing an "invalid constructor" exception to short-circuit
argument evaluation. I encountered this bug when trying to make
constructor exceptions work with profiling.

  • VM/Machine.cpp: (JSC::Machine::callEval): Removed obsolete profiler hooks.

(JSC::Machine::throwException): Added a check for an exception thrown
within a call instruction. We didn't need this before because the call
instruction would check for a valid call before involing the profiler.
(JSC::Machine::execute): Added a didExecute hook at the end of top-level
function invocation, since op_ret no longer does this for us.

(JSC::Machine::privateExecute): Removed obsolete profiler hooks. Added
profiler opcodes. Changed some ++vPC to vPC[x] notation, since the
latter is better for performance, and it makes reasoning about the
current opcode in exception handling much simpler.

(JSC::Machine::cti_op_call_NotJSFunction): Removed obsolete profiler
hooks.

(JSC::Machine::cti_op_create_arguments_no_params): Added missing
CTI_STACK_HACK that I noticed when adding CTI_STACK_HACK to the new
profiler opcode functions.

(JSC::Machine::cti_op_profile_will_call):
(JSC::Machine::cti_op_profile_did_call): The new profiler opcode
functions.

(JSC::Machine::cti_op_construct_NotJSConstruct): Removed obsolete profiler
hooks.

  • VM/Machine.h: (JSC::Machine::isCallOpcode): Helper for exception handling.
  • VM/Opcode.h: Declare new opcodes.
  • kjs/JSGlobalObject.h: (JSC::JSGlobalObject::supportsProfiling): Added virtual interface that allows WebCore to specify whether the target global object has the Web Inspector's profiling feature enabled.
  • profiler/Profiler.cpp: (JSC::Profiler::willExecute): (JSC::Profiler::didExecute): (JSC::Profiler::createCallIdentifier):
  • profiler/Profiler.h: Added support for invoking the profiler with an arbitrary JSValue*, and not a known object. We didn't need this before because the call instruction would check for a valid call before involing the profiler.

WebCore:

2008-10-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.

Fixed https://bugs.webkit.org/show_bug.cgi?id=21735
Emit profiling instrumentation only if the Web Inspector's profiling
feature is enabled

  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::supportsProfiling):
  • bindings/js/JSDOMWindowBase.h: Implemented the interface for specifying whether a target global object has the Web Inspector's profiling feature enabled.
  • inspector/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::recompileAllJSFunctionsSoon): (WebCore::JavaScriptDebugServer::didAddListener): (WebCore::JavaScriptDebugServer::didRemoveListener):
  • inspector/JavaScriptDebugServer.h: Exported an API for recompiling, used by the Settings object.
  • page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setDeveloperExtrasEnabled):
  • page/Settings.h: Recompile when the developer menu is enabled/disabled for the first time, to add/remove profiling hooks. In the future, with better Web Inspector UI, we can do this on a page-by-page basis, instead of a global basis.

LayoutTests:

2008-10-18 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.

Test for bugs fixed while working on https://bugs.webkit.org/show_bug.cgi?id=21735
Emit profiling instrumentation only if the Web Inspector's profiling
feature is enabled

  • fast/js/exception-thrown-from-new-expected.txt: Added.
  • fast/js/exception-thrown-from-new.html: Added.
9:42 AM Changeset in webkit [37729] by ap@webkit.org
  • 2 edits in trunk/LayoutTests

Add Worker to the results - although it is just a stub right now, it is present in the list
of window properties.

  • fast/dom/Window/window-properties-expected.txt:
9:22 AM Changeset in webkit [37728] by Darin Adler
  • 5 edits in trunk/JavaScriptCore

2008-10-20 Darin Adler <Darin Adler>

Reviewed by Geoff Garen.

  • get CTI working on Windows again
  • VM/CTI.cpp: (JSC::CTI::emitCTICall): Add an overload for functions that return JSObject*.
  • VM/CTI.h: Use JSValue* and JSObject* as return types for cti_op functions. Apparently, MSVC doesn't handle returning the JSValuePtr struct in a register. We'll have to look into this more.
  • VM/Machine.cpp: (JSC::Machine::cti_op_convert_this): (JSC::Machine::cti_op_add): (JSC::Machine::cti_op_pre_inc): (JSC::Machine::cti_op_new_object): (JSC::Machine::cti_op_get_by_id): (JSC::Machine::cti_op_get_by_id_second): (JSC::Machine::cti_op_get_by_id_generic): (JSC::Machine::cti_op_get_by_id_fail): (JSC::Machine::cti_op_instanceof): (JSC::Machine::cti_op_del_by_id): (JSC::Machine::cti_op_mul): (JSC::Machine::cti_op_new_func): (JSC::Machine::cti_op_push_activation): (JSC::Machine::cti_op_call_NotJSFunction): (JSC::Machine::cti_op_new_array): (JSC::Machine::cti_op_resolve): (JSC::Machine::cti_op_construct_JSConstructFast): (JSC::Machine::cti_op_construct_NotJSConstruct): (JSC::Machine::cti_op_get_by_val): (JSC::Machine::cti_op_sub): (JSC::Machine::cti_op_lesseq): (JSC::Machine::cti_op_negate): (JSC::Machine::cti_op_resolve_base): (JSC::Machine::cti_op_resolve_skip): (JSC::Machine::cti_op_resolve_global): (JSC::Machine::cti_op_div): (JSC::Machine::cti_op_pre_dec): (JSC::Machine::cti_op_not): (JSC::Machine::cti_op_eq): (JSC::Machine::cti_op_lshift): (JSC::Machine::cti_op_bitand): (JSC::Machine::cti_op_rshift): (JSC::Machine::cti_op_bitnot): (JSC::Machine::cti_op_new_func_exp): (JSC::Machine::cti_op_mod): (JSC::Machine::cti_op_less): (JSC::Machine::cti_op_neq): (JSC::Machine::cti_op_urshift): (JSC::Machine::cti_op_bitxor): (JSC::Machine::cti_op_new_regexp): (JSC::Machine::cti_op_bitor): (JSC::Machine::cti_op_call_eval): (JSC::Machine::cti_op_throw): (JSC::Machine::cti_op_next_pname): (JSC::Machine::cti_op_typeof): (JSC::Machine::cti_op_is_undefined): (JSC::Machine::cti_op_is_boolean): (JSC::Machine::cti_op_is_number): (JSC::Machine::cti_op_is_string): (JSC::Machine::cti_op_is_object): (JSC::Machine::cti_op_is_function): (JSC::Machine::cti_op_stricteq): (JSC::Machine::cti_op_nstricteq): (JSC::Machine::cti_op_to_jsnumber): (JSC::Machine::cti_op_in): (JSC::Machine::cti_op_push_new_scope): (JSC::Machine::cti_op_del_by_val): (JSC::Machine::cti_op_new_error): (JSC::Machine::cti_vm_throw): Change these functions to return pointer types, and never JSValuePtr.
  • VM/Machine.h: Ditto.
9:09 AM Changeset in webkit [37727] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2008-10-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


Fixed some recent break-age in bytecode mode.

  • VM/CodeBlock.cpp: (JSC::CodeBlock::printStructureIDs): Fixed up an ASSERT caused by Gavin's last checkin. This is a temporary fix so I can keep on moving. I'll send email about what I think is an underlying problem soon.
  • VM/Machine.cpp: (JSC::Machine::privateExecute): Removed a redundant and sometimes incorrect cast, which started ASSERTing after Darin's last checkin.
8:54 AM Changeset in webkit [37726] by hyatt@apple.com
  • 6 edits
    2 moves in trunk/WebCore

2008-10-20 David Hyatt <hyatt@apple.com>

Move Length to platform/.

Reviewed by Adam Roben

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • platform/Length.cpp: Copied from rendering/Length.cpp.
  • platform/Length.h: Copied from rendering/Length.h.
8:39 AM Changeset in webkit [37725] by alp@webkit.org
  • 4 edits in trunk/WebKit/gtk

2008-10-20 Alp Toker <alp@nuanti.com>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=21303
[GTK] Scrolling glitches

Implement a buffering scheme to avoid full repaints when scrolling
views or subframes significantly improving scrolling performance.

Improve rendering performance by coalescing large numbers of small
repaints.

Also fixes long-running issues with scrollbar positioning and frame
invalidation.

Rendering in the GTK+ port should be more similar to other ports after
these changes.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::repaint): (WebKit::ChromeClient::scroll):
  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::forceLayout):
  • webkit/webkitwebview.cpp:
8:29 AM Changeset in webkit [37724] by Darin Adler
  • 2 edits in trunk/WebCore

2008-10-20 Darin Adler <Darin Adler>

  • try to fix Qt build
  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Add asObject calls. (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
8:28 AM Changeset in webkit [37723] by Darin Adler
  • 3 edits in trunk/WebCore

2008-10-20 Darin Adler <Darin Adler>

  • try to fix Qt build
  • bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::mark): Use JSValue* instead of JSValuePtr. (JSC::Bindings::QtField::valueFromInstance): Ditto.
  • bridge/qt/qt_instance.h: Ditto.
8:24 AM Changeset in webkit [37722] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-10-20 Darin Adler <Darin Adler>

  • another similar Windows build fix
  • VM/CTI.cpp: Changed return type to JSObject* instead of JSValuePtr.
8:19 AM Changeset in webkit [37721] by Darin Adler
  • 3 edits in trunk/JavaScriptCore

2008-10-20 Darin Adler <Darin Adler>

  • try to fix Windows build
  • VM/CTI.cpp: Use JSValue* instead of JSValuePtr for ctiTrampoline.
  • VM/CTI.h: Ditto.
8:16 AM Changeset in webkit [37720] by Darin Adler
  • 3 edits in trunk/WebCore

2008-10-20 Darin Adler <Darin Adler>

  • try to fix Tiger build
  • bridge/objc/objc_instance.mm: (ObjcInstance::invokeMethod): Add a const_cast to remove the unwanted volatile qualifier. (ObjcInstance::invokeDefaultMethod): Ditto. (ObjcInstance::getValueOfUndefinedField): Ditto.
  • bridge/objc/objc_runtime.mm: (JSC::Bindings::ObjcField::valueFromInstance): Ditto.
8:14 AM Changeset in webkit [37719] by ap@webkit.org
  • 1 edit in trunk/WebCore/rendering/RenderLayer.cpp

Commit a file that was missing from the previous check-in.

8:13 AM Changeset in webkit [37718] by ap@webkit.org
  • 24 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=21750
Eliminate the notion of "temporary events"

We mark some events as temporary when dispatching, for the sole reason of
manually calling forgetDOMObject when done dispatching.

There doesn't seem to be any reason to call it manually, as JSEvent destructor
will do this automatically right away.

  • bindings/js/ScriptController.cpp:
  • bindings/js/ScriptController.h: Removed ScriptController::finishedWithEvent(), which was called after dispatching a temporary event.
  • dom/ContainerNode.cpp: (WebCore::dispatchChildInsertionEvents): (WebCore::dispatchChildRemovalEvents):
  • dom/EventTarget.h:
  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchEvent): (WebCore::EventTargetNode::dispatchGenericEvent): (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent): (WebCore::EventTargetNode::dispatchWindowEvent): (WebCore::EventTargetNode::dispatchUIEvent): (WebCore::EventTargetNode::dispatchKeyEvent): (WebCore::EventTargetNode::dispatchMouseEvent): (WebCore::EventTargetNode::dispatchWheelEvent): (WebCore::EventTargetNode::dispatchWebKitAnimationEvent): (WebCore::EventTargetNode::dispatchWebKitTransitionEvent): (WebCore::EventTargetNode::dispatchEventForType): (WebCore::EventTargetNode::dispatchProgressEvent): (WebCore::EventTargetNode::dispatchStorageEvent):
  • dom/EventTargetNode.h:
  • dom/MessagePort.cpp: (WebCore::MessagePort::dispatchMessages): (WebCore::MessagePort::dispatchCloseEvent): (WebCore::MessagePort::dispatchEvent):
  • dom/MessagePort.h:
  • editing/Editor.cpp: (WebCore::Editor::dispatchCPPEvent): (WebCore::dispatchEditableContentChangedEvents):
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment):
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText):
  • loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::dispatchEvent): (WebCore::DOMApplicationCache::callListener):
  • loader/appcache/DOMApplicationCache.h:
  • page/EventHandler.cpp: (WebCore::EventHandler::dispatchDragEvent): (WebCore::EventHandler::keyEvent): (WebCore::EventHandler::handleTextInputEvent):
  • page/FrameView.cpp: (WebCore::FrameView::scheduleEvent): (WebCore::FrameView::updateOverflowStatus): (WebCore::FrameView::dispatchScheduledEvents):
  • page/FrameView.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::updateOverflowStatus):
  • svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossible):
  • svg/SVGElementInstance.cpp: (WebCore::SVGElementInstance::dispatchEvent):
  • svg/SVGElementInstance.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dispatchEvent): (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent): (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent):
  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequestUpload.cpp: (WebCore::XMLHttpRequestUpload::dispatchEvent): (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent):
  • xml/XMLHttpRequestUpload.h: Don't pass the tempEvent boolean around.
7:34 AM Changeset in webkit [37717] by ap@webkit.org
  • 2 edits in trunk/WebKit/mac

Reviewed by Oliver Hunt.

<rdar://problem/6277777> REGRESSION (r36954): XMLHttpRequest not working when
certain WebView delegate actions are taken

  • WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): Don't accidentally create a window shell if there is none yet.
4:32 AM Changeset in webkit [37716] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-10-20 Alp Toker <alp@nuanti.com>

Remove unused includes only. Partial GTK+/Win build fix.

  • platform/graphics/gtk/SimpleFontDataPango.cpp:
2:24 AM Changeset in webkit [37715] by ap@webkit.org
  • 4 edits
    6 adds in trunk/WebCore

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=21705
Implement Web Workers client-side API

The implementation is experimental, and disabled by default. It doesn't quite match the
published draft, being influenced by further WHATWG discussions.

This only implements the client-side API, and does not actually create any threads or
global contexts yet.

  • DerivedSources.make: Added DedicatedWorker. SharedWorker is not implemented yet, as I'm still not sure if having separate classes for these helps at all.
  • WebCore.xcodeproj/project.pbxproj: Added new files.
  • bindings/js/JSDOMWindowBase.cpp: (jsDOMWindowBaseWorker): (WebCore::JSDOMWindowBase::put): (setJSDOMWindowBaseWorker): Added window.Worker constructor. Moved JSXSLTProcessorConstructor.h include out of ifdef to match prevailing style.
  • bindings/js/JSDedicatedWorkerConstructor.cpp: Added.
  • bindings/js/JSDedicatedWorkerConstructor.h: Added.
  • bindings/js/JSDedicatedWorkerCustom.cpp: Added. The implementation of event listeners are left custom intentionally, for easier implementation of listeners that are not tied to any Document in the future.
  • dom/DedicatedWorker.cpp: Added.
  • dom/DedicatedWorker.h: Added.
  • dom/DedicatedWorker.idl: Added. Added an implementation that can only load requested scripts for now.
12:29 AM Changeset in webkit [37714] by Darin Adler
  • 4 edits in trunk/JavaScriptCore

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Cameron Zwarich.

  • VM/Machine.cpp: (JSC::Machine::cti_op_call_profiler): Use asFunction. (JSC::Machine::cti_vm_lazyLinkCall): Ditto. (JSC::Machine::cti_op_construct_JSConstructFast): Use asObject.
  • kjs/JSCell.h: Re-sort friend classes. Eliminate inheritance from JSValue. Changed cast in asCell from static_cast to reinterpret_cast. Removed JSValue::getNumber(double&) and one of JSValue::getObject overloads.
  • kjs/JSValue.h: Made the private constructor and destructor both non-virtual and also remove the definitions. This class can never be instantiated or derived.

Oct 19, 2008:

11:29 PM Changeset in webkit [37713] by Darin Adler
  • 2 edits in trunk/WebCore

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

  • fix assertion seen when opening inspector
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Removed unneeded asObject cast.
10:58 PM Changeset in webkit [37712] by Darin Adler
  • 12 edits in trunk/JavaScriptCore

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Cameron Zwarich.

Change JSValuePtr from a typedef into a class. This allows us to support
conversion from JSCell* to JSValuePtr even if JSCell isn't derived from
JSValue.

  • JavaScriptCore.exp: Updated symbols that involve JSValuePtr, since it's now a distinct type.
  • API/APICast.h: (toRef): Extract the JSValuePtr payload explicitly since we can't just cast any more.
  • VM/CTI.cpp: (JSC::CTI::asInteger): Ditto.
  • VM/CodeGenerator.cpp: (JSC::CodeGenerator::addConstant): Get at the payload directly. (JSC::CodeGenerator::emitLoad): Added an overload of JSCell* because otherwise classes derived from JSValue end up calling the bool overload instead of JSValuePtr.
  • VM/CodeGenerator.h: Ditto. Also update traits to use JSValue* and the payload functions.
  • VM/Register.h: Added a JSCell* overload and use of payload functions.
  • kjs/JSCell.h: (JSC::asCell): Use payload function. (JSC::JSValue::asCell): Use JSValue* instead of JSValuePtr. (JSC::JSValuePtr::JSValuePtr): Added. Constructor that takes JSCell* and creates a JSValuePtr.
  • kjs/JSImmediate.h: Added JSValuePtr class. Also updated makeValue and makeInt to work with JSValue* and the payload function.
  • kjs/JSValue.h: Added == and != operators for JSValuePtr. Put them here because eventually all the JSValue functions should go here except what's needed by JSImmediate. Also fix asValue to use JSValue* instead of JSValuePtr.
  • kjs/PropertySlot.h: Change constructor to take JSValuePtr.
  • kjs/protect.h: Update gcProtect functions to work with JSCell* as well as JSValuePtr. Also updated the ProtectedPtr<JSValuePtr> specialization to work more directly. Also changed all the call sites to use gcProtectNullTolerant.
8:49 PM Changeset in webkit [37711] by mitz@apple.com
  • 10 edits
    1 delete in trunk/WebCore

Rubber-stamped by Timothy Hatcher.

  • remove empty directories and correct the MIME type of inspector images
  • page/inspector: Removed.
  • page/inspector/Images: Removed.
8:43 PM Changeset in webkit [37710] by timothy@apple.com
  • 2 edits in trunk/WebCore

Make the Web Inspector Resources panel open quicker and change graphs
faster. There was some accidental n2 logic at fault when updating the
graph boundaries.

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

Reviewed by Darin Adler.

  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.set calculator): Return early for a null calculator. Remove the second argument passed to _refreshAllResources. (WebInspector.ResourcesPanel.prototype.refresh): Call updateBoundaries on the calculator for all the stale resources before calling refreshResource. Pass true for the first argument of refreshResource to skip the boundary update. (WebInspector.ResourcesPanel.prototype._updateGraphBoundariesIfNeeded): Remove the second argument passed to _refreshAllResources. (WebInspector.ResourcesPanel.prototype._refreshAllResourcesSoon): Remove the skipSort argument since every passed true, and it would be bad to pass false. (WebInspector.ResourcesPanel.prototype._refreshAllResources): Ditto. And if skipBoundaryUpdate is false, call updateBoundaries on the calculator for all the resources before calling refreshResource. Pass true for the first argument of refreshResource to skip the boundary update.
8:43 PM Changeset in webkit [37709] by timothy@apple.com
  • 4 edits
    7 adds in trunk/WebCore

Visually distinguish resources that loaded from the memory cache.

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

Reviewed by Dan Bernstein.

  • English.lproj/localizedStrings.js: New string.
  • inspector/front-end/Images/timelineHollowPillBlue.png: Added.
  • inspector/front-end/Images/timelineHollowPillGray.png: Added.
  • inspector/front-end/Images/timelineHollowPillGreen.png: Added.
  • inspector/front-end/Images/timelineHollowPillOrange.png: Added.
  • inspector/front-end/Images/timelineHollowPillPurple.png: Added.
  • inspector/front-end/Images/timelineHollowPillRed.png: Added.
  • inspector/front-end/Images/timelineHollowPillYellow.png: Added.
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels): Add the "(from cache)" suffix to the tooltip. (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): Add the "(from cache)" suffix to the tooltip. (WebInspector.ResourceGraph): Add the "resource-cached" class.
  • inspector/front-end/inspector.css: New styles to make the timeline bars use the hollow pill images.
8:43 PM Changeset in webkit [37708] by timothy@apple.com
  • 2 edits in trunk/WebCore

Update the scroll position in the Resources panel when loading
a new page or toggling on small resource rows.

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

Reviewed by Darin Adler.

  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.reset): Scroll to the top, since all the resource are being removed. (WebInspector.ResourcesPanel.prototype.removeResource): Call _adjustScrollPosition in case the view is shorter and needs scrolled. (WebInspector.ResourcesPanel.prototype._toggleLargerResources): Ditto. (WebInspector.ResourcesPanel.prototype._adjustScrollPosition): Check the height of the sidebar against the scrollTop and height of the resourcesContainerElement. If the sidebar is shorter, scroll up so the last resource is at the bottom again.
8:43 PM Changeset in webkit [37707] by timothy@apple.com
  • 5 edits
    2 adds in trunk/WebCore

Show per resource times and sizes when hovering over the bar graph for a resource.

https://bugs.webkit.org/show_bug.cgi?id=14300
rdar://problem/5712802

Reviewed by Cameron Zwarich.

  • English.lproj/localizedStrings.js: Add new strings.
  • inspector/front-end/Images/graphLabelCalloutLeft.png: Added.
  • inspector/front-end/Images/graphLabelCalloutRight.png: Added.
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.refreshResource): Pass the calculator to the ResourceGraph.refresh function. (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels): Default implementation returns the formatted value. (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): Return discrete values for the latency and download times. Also generate a custom tooltip. (WebInspector.ResourceGraph): Add a mouseover event listener that calls refreshLabelPositions. (WebInspector.ResourceGraph.prototype.refreshLabelPositions): Added. Updates the label positions in case the bar has changed size. (WebInspector.ResourceGraph.prototype.refresh): Set the label text and tooltips.
  • inspector/front-end/inspector.css: New styles for the labels.
5:28 PM Changeset in webkit [37706] by Darin Adler
  • 60 edits in trunk

JavaScriptCore:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • VM/Machine.cpp: (JSC::fastToUInt32): Call toUInt32SlowCase function; no longer a member of JSValue.
  • kjs/JSNumberCell.h: (JSC::JSNumberCell::toInt32): Ditto. (JSC::JSNumberCell::toUInt32): Ditto.
  • kjs/JSValue.cpp: (JSC::toInt32SlowCase): Made a non-member function. (JSC::JSValue::toInt32SlowCase): Changed to call non-member function. (JSC::toUInt32SlowCase): More of the same. (JSC::JSValue::toUInt32SlowCase): Ditto.
  • kjs/JSValue.h: Moved static member function so they are no longer member functions at all.
  • VM/CTI.h: Removed forward declaration of JSValue.
  • VM/ExceptionHelpers.h: Ditto.
  • kjs/CallData.h: Ditto.
  • kjs/ConstructData.h: Ditto.
  • kjs/JSGlobalObjectFunctions.h: Ditto.
  • kjs/PropertyMap.h: Ditto.
  • kjs/StructureID.h: Ditto.
  • kjs/collector.h: Ditto.
  • kjs/completion.h: Ditto.
  • kjs/grammar.y: (JSC::makeBitwiseNotNode): Call new non-member toInt32 function. (JSC::makeLeftShiftNode): More of the same. (JSC::makeRightShiftNode): Ditto.
  • kjs/protect.h: Added a specialization for ProtectedPtr<JSValuePtr> so this can be used with JSValuePtr.

JavaScriptGlue:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • JSValueWrapper.h: Use JSValuePtr instead of JSValue*.

WebCore:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • bindings/js/JSCustomXPathNSResolver.h: Removed declaration of JSValue and used JSValuePtr instead.
  • bindings/js/JSEventTarget.h: Ditto.
  • bindings/js/JSNodeFilterCondition.h: Ditto.
  • bindings/js/ScheduledAction.h: Ditto.
  • bindings/js/ScriptController.h: Ditto.
  • bindings/objc/WebScriptObjectPrivate.h: Ditto.
  • bridge/c/c_utility.h: Ditto.
  • bridge/jni/jni_jsobject.h: Ditto.
  • bridge/jni/jni_utility.h: Ditto.
  • bridge/objc/WebScriptObject.h: Ditto.
  • dom/Traversal.h: Ditto.
  • inspector/InspectorController.cpp: Ditto.
  • inspector/JavaScriptProfile.h: Ditto.
  • inspector/JavaScriptProfileNode.h: Ditto.
  • loader/FrameLoader.h: Ditto.
  • page/Console.h: Ditto.
  • plugins/MimeTypeArray.h: Ditto.
  • plugins/Plugin.h: Ditto.
  • plugins/PluginArray.h: Ditto.
  • plugins/PluginView.cpp: (WebCore::getString): Ditto. (WebCore::PluginView::performRequest): Ditto.
  • plugins/gtk/PluginViewGtk.cpp: Ditto.
  • plugins/qt/PluginViewQt.cpp: Ditto.
  • plugins/win/PluginViewWin.cpp: Ditto.
  • bridge/qt/qt_class.cpp: (JSC::Bindings::QtClass::fallbackObject): Use JSValuePtr and JSObject* instead of JSValue*.
  • bridge/qt/qt_class.h: Ditto.
  • bridge/qt/qt_instance.cpp: (JSC::Bindings::QtInstance::mark): Ditto. (JSC::Bindings::QtInstance::invokeMethod): Ditto. (JSC::Bindings::QtInstance::defaultValue): Ditto. (JSC::Bindings::QtInstance::stringValue): Ditto. (JSC::Bindings::QtInstance::numberValue): Ditto. (JSC::Bindings::QtInstance::booleanValue): Ditto. (JSC::Bindings::QtInstance::valueOf): Ditto. (JSC::Bindings::QtField::valueFromInstance): Ditto. (JSC::Bindings::QtField::setValueToInstance): Ditto.
  • bridge/qt/qt_instance.h: Ditto.
  • bridge/qt/qt_runtime.cpp: Ditto. (JSC::Bindings::valueRealType): Ditto. (JSC::Bindings::convertValueToQVariant): Ditto. (JSC::Bindings::convertQVariantToValue): Ditto. (JSC::Bindings::findMethodIndex): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto. (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto. (JSC::Bindings::QtRuntimeConnectionMethod::call): Ditto. (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto. (JSC::Bindings::QtArray::setValueAt): Ditto. (JSC::Bindings::QtArray::valueAt): Ditto.
  • bridge/qt/qt_runtime.h: Ditto.
  • bridge/testqtbindings.cpp: (main): Use JSValuePtr.

WebKit/mac:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • WebView/WebFrame.mm: (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Use JSValuePtr instead of JSValue.
  • WebView/WebScriptDebugger.h: Removed declaration of JSValue.

WebKit/qt:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • Api/qwebframe.cpp: (QWebFrame::evaluateJavaScript): Use JSValuePtr.

WebKit/win:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::jsValueToString): Use JSValuePtr. (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Ditto. (WebScriptCallFrame::valueForVariable): Put more code inside and ifdef. (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString): Ditto.
  • WebScriptCallFrame.h: Use JSValuePtr.
  • WebView.cpp: (WebView::stringByEvaluatingJavaScriptFromString): Use JSValuePtr.

WebKit/wx:

2008-10-19 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Remove most uses of JSValue, which will be removed in a future patch.

  • WebFrame.cpp: (wxWebFrame::RunScript): Use JSValuePtr.
9:58 AM Changeset in webkit [37705] by Darin Adler
  • 80 edits in trunk

JavaScriptCore:

2008-10-18 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Tweak a little more to get closer to where we can make JSValuePtr a class.

  • API/APICast.h: (toJS): Change back to JSValue* here, since we're converting the pointer type.
  • VM/CTI.cpp: (JSC::CTI::unlinkCall): Call asPointer.
  • VM/CTI.h: Cast to JSValue* here, since it's a pointer cast.
  • kjs/DebuggerCallFrame.h: (JSC::DebuggerCallFrame::DebuggerCallFrame): Call noValue.
  • kjs/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): Call noValue.
  • kjs/JSImmediate.cpp: (JSC::JSImmediate::toObject): Remove unneeded const_cast.
  • kjs/JSWrapperObject.h: (JSC::JSWrapperObject::JSWrapperObject): Call noValue.

JavaScriptGlue:

2008-10-18 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Tweak a little more to get closer to where we can make JSValuePtr a class.

  • JSObject.cpp: (nativeCallFunction): Call asObject.
  • JSUtils.cpp: (KJSValueToJSObject): Use JSValuePtr and asObject. (JSObjectKJSValue): Ditto. (KJSValueToCFTypeInternal): Ditto. (KJSValueToCFType): Ditto.
  • JSUtils.h: Ditto.
  • UserObjectImp.cpp: (UserObjectImp::callAsFunction): Use JSValuePtr and asObject. (UserObjectImp::userObjectGetter): Ditto. (UserObjectImp::getOwnPropertySlot): Ditto. (UserObjectImp::put): Ditto. (UserObjectImp::toPrimitive): Ditto.
  • UserObjectImp.h: Ditto.

WebCore:

2008-10-18 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Tweak a little more to get closer to where we can make JSValuePtr a class.

  • bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor): Use asObject. (WebCore::constructAudio): Ditto.
  • bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::nameGetter): Ditto.
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::toHTMLCanvasStyle): Use asString and asObject. (WebCore::JSCanvasRenderingContext2D::setFillColor): Ditto. (WebCore::JSCanvasRenderingContext2D::setStrokeColor): Ditto. (WebCore::JSCanvasRenderingContext2D::drawImage): Ditto. (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): Ditto. (WebCore::JSCanvasRenderingContext2D::setShadow): Ditto. (WebCore::JSCanvasRenderingContext2D::createPattern): Ditto.
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Use JSValuePtr.
  • bindings/js/JSDOMBinding.cpp: (WebCore::setDOMException): Use noValue.
  • bindings/js/JSDOMBinding.h: (WebCore::getDOMPrototype): Use asObject.
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::showModalDialog): Use noValue. (jsDOMWindowBaseEvent): Use asObject. (jsDOMWindowBaseImage): Ditto. (jsDOMWindowBaseMessageChannel): Ditto. (jsDOMWindowBaseOption): Ditto. (jsDOMWindowBaseXMLHttpRequest): Ditto. (jsDOMWindowBaseAudio): Ditto. (jsDOMWindowBaseXSLTProcessor): Ditto. (WebCore::JSDOMWindowBase::childFrameGetter): Ditto. (WebCore::JSDOMWindowBase::indexGetter): Ditto. (WebCore::JSDOMWindowBase::namedItemGetter): Ditto. (WebCore::JSDOMWindowBase::getOwnPropertySlot): Ditto. (WebCore::JSDOMWindowBase::findJSEventListener): Ditto. (WebCore::JSDOMWindowBase::findOrCreateJSEventListener): Ditto. (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener): Ditto. (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener): Ditto. (windowProtoFuncOpen): Use noValue. (WebCore::toJSDOMWindow): Use asObject.
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::setTimeoutOrInterval): Use asString. (WebCore::toDOMWindow): Use asObject.
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): Use noValue. (WebCore::JSLazyEventListener::parseCode): Use asObject.
  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::nameGetter): Use asObject.
  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): Ditto.
  • bindings/js/JSHTMLElementCustom.cpp: (WebCore::JSHTMLElement::pushEventHandlerScope): Ditto.
  • bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): Ditto.
  • bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): Ditto.
  • bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto. (WebCore::constructHTMLOptionElement): Ditto.
  • bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::remove): Ditto.
  • bindings/js/JSImageConstructor.cpp: (WebCore::JSImageConstructor::JSImageConstructor): Ditto. (WebCore::constructImage): Ditto.
  • bindings/js/JSInspectedObjectWrapper.cpp: (WebCore::JSInspectedObjectWrapper::wrap): Ditto.
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): Use noValue.
  • bindings/js/JSMessageChannelConstructor.cpp: (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Use asObject. (WebCore::JSMessageChannelConstructor::construct): Ditto.
  • bindings/js/JSMimeTypeArrayCustom.cpp: (WebCore::JSMimeTypeArray::nameGetter): Ditto.
  • bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): Ditto.
  • bindings/js/JSNamedNodesCollection.cpp: (WebCore::JSNamedNodesCollection::lengthGetter): Ditto. (WebCore::JSNamedNodesCollection::indexGetter): Ditto.
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter): Ditto.
  • bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::nameGetter): Ditto.
  • bindings/js/JSPluginArrayCustom.cpp: (WebCore::JSPluginArray::nameGetter): Ditto.
  • bindings/js/JSPluginCustom.cpp: (WebCore::JSPlugin::nameGetter): Ditto.
  • bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): Ditto. (WebCore::runtimeObjectPropertyGetter): Ditto.
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::asWrapper): Ditto. (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Ditto. (WebCore::JSQuarantinedObjectWrapper::construct): Ditto.
  • bindings/js/JSRGBColor.cpp: (jsRGBColorRed): Ditto. (jsRGBColorGreen): Ditto. (jsRGBColorBlue): Ditto.
  • bindings/js/JSSQLResultSetRowListCustom.cpp: (WebCore::JSSQLResultSetRowList::item): Use noValue.
  • bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): Use asObject. (WebCore::JSStorage::deleteProperty): Ditto. (WebCore::JSStorage::customPut): Ditto.
  • bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): Ditto.
  • bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): Ditto.
  • bindings/js/JSXSLTProcessorCustom.cpp: (WebCore::JSXSLTProcessor::importStylesheet): Ditto. (WebCore::JSXSLTProcessor::transformToFragment): Ditto. (WebCore::JSXSLTProcessor::transformToDocument): Ditto.
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate): Use noValue.
  • bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]): Ditto.
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject evaluateWebScript:]): Use JSValuePtr. (-[WebScriptObject valueForKey:]): Ditto. (-[WebScriptObject webScriptValueAtIndex:]): Ditto. (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): Use asObject and asString.
  • bindings/scripts/CodeGeneratorJS.pm: Use asObject.
  • bridge/c/c_instance.h: Use JSValuePtr.
  • bridge/c/c_runtime.cpp: (JSC::Bindings::CField::setValueToInstance): Ditto.
  • bridge/c/c_utility.cpp: (JSC::Bindings::convertValueToNPVariant): Use asObject.
  • bridge/jni/jni_instance.cpp: (JavaInstance::booleanValue): Use JSValuePtr. (JavaInstance::invokeMethod): Ditto. And noValue.
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::getSlot): Ditto. (JavaJSObject::convertValueToJObject): Ditto.
  • bridge/jni/jni_runtime.cpp: (JavaField::dispatchValueFromInstance): Ditto. (JavaField::valueFromInstance): Ditto. (JavaField::dispatchSetValueToInstance): Ditto. (JavaField::setValueToInstance): Ditto. (JavaArray::setValueAt): Ditto. (JavaArray::valueAt): Ditto.
  • bridge/jni/jni_runtime.h: Ditto.
  • bridge/jni/jni_utility.cpp: (JSC::Bindings::convertArrayInstanceToJavaArray): Take a JSArray* instead of a JSValue*. (JSC::Bindings::convertValueToJValue): Use asObject and asArray.
  • bridge/objc/objc_class.h: Use JSValuePtr.
  • bridge/objc/objc_instance.h: Ditto.
  • bridge/objc/objc_runtime.h: Ditto.
  • bridge/objc/objc_runtime.mm: (JSC::Bindings::callObjCFallbackObject): Use asObject.
  • bridge/objc/objc_utility.h: Use JSValuePtr.
  • bridge/objc/objc_utility.mm: (JSC::Bindings::convertValueToObjcValue): Use JSValuePtr and asObject. (JSC::Bindings::convertObjcValueToValue): Use jsUndefined() instead of 0.
  • bridge/runtime.cpp: (JSC::Bindings::Instance::getValueOfField): Use JSValuePtr. (JSC::Bindings::Instance::setValueOfField): Ditto.
  • bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): Use JSValuePtr and asObject. (JSC::RuntimeArray::indexGetter): Ditto.
  • bridge/runtime_array.h: Ditto.
  • bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): Ditto. (JSC::callRuntimeMethod): Ditto.
  • bridge/runtime_object.cpp: (JSC::RuntimeObjectImp::fallbackObjectGetter): Ditto. (JSC::RuntimeObjectImp::fieldGetter): Ditto. (JSC::RuntimeObjectImp::methodGetter): Ditto.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::executeScript): Use noValue.
  • page/Console.cpp: (WebCore::Console::trace): Use asInternalFunction.

WebKit/mac:

2008-10-18 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

Tweak a little more to get closer to where we can make JSValuePtr a class.

  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame _convertValueToObjcValue:]): Use JSValuePtr. (-[WebScriptCallFrame exception]): Ditto. (-[WebScriptCallFrame evaluateWebScript:]): Ditto. And noValue.
  • WebView/WebScriptDebugger.mm: (WebScriptDebugger::WebScriptDebugger): Use new DebuggerCallFrame constructor that doesn't require explicitly passing an exception.
  • WebView/WebView.mm: (aeDescFromJSValue): Use JSValuePtr. (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto.
9:41 AM Changeset in webkit [37704] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Timothy Hatcher.

  • lower the default button repaint frequency
  • rendering/RenderButton.cpp: (WebCore::RenderButton::styleDidChange): Changed the timer interval from 0.01 to 0.03.
12:56 AM Changeset in webkit [37703] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

12:55 AM Changeset in webkit [37702] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.26.1

New tag.

Note: See TracTimeline for information about the timeline view.