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

Timeline



Jul 16, 2008:

11:51 PM Changeset in webkit [35214] by jhoneycutt@apple.com
  • 2 edits in trunk/WebKitTools

2008-07-16 Jon Honeycutt <jhoneycutt@apple.com>

CygwinDownloader fails to install necessary packages
https://bugs.webkit.org/show_bug.cgi?id=20075

Reviewed by Mark Rowe.

  • CygwinDownloader/cygwin-downloader.zip: Rebuilt after two broken mirrors removed in r34116. Set MIME type to application/octet-stream.
11:20 PM Changeset in webkit [35213] by jhoneycutt@apple.com
  • 2 edits in trunk/WebKitTools

2008-07-16 Jon Honeycutt <jhoneycutt@apple.com>

CygwinDownloader's make-zip.sh script fails
https://bugs.webkit.org/show_bug.cgi?id=20074

Reviewed by Mark Rowe.

  • CygwinDownloader/cygwin-downloader.py:
11:17 PM Changeset in webkit [35212] by jhoneycutt@apple.com
  • 2 edits in trunk/WebCore

2008-07-16 Jon Honeycutt <jhoneycutt@apple.com>

REGRESSION: Can't create windowless plug-in with Flash 9
https://bugs.webkit.org/show_bug.cgi?id=20070

Reviewed by Mark Rowe.

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::determineQuirks): Reverse argument order; PlatformModuleVersion constructor takes leastSig, mostSig.
11:13 PM Changeset in webkit [35211] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by mitz.

Make ATSULayoutParameters a real C++ class
(Give it a destructor to clean up after itself)
(Also use OwnArrayPtr instead of manual member cleanup)

  • platform/graphics/mac/FontMac.mm: (WebCore::ATSULayoutParameters::ATSULayoutParameters): (WebCore::ATSULayoutParameters::~ATSULayoutParameters): (WebCore::overrideLayoutOperation): (WebCore::ATSULayoutParameters::initialize): (WebCore::Font::selectionRectForComplexText): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText):
11:12 PM Changeset in webkit [35210] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by mitz.

Make ownership of copied UChar buffer clearer
(and more leak-proof) by using a OwnArrayPtr.

No functional changes, thus no tests.

  • platform/graphics/mac/FontMac.mm: (WebCore::copyRunForDirectionalOverrideIfNecessary): (WebCore::Font::selectionRectForComplexText): (WebCore::Font::drawComplexText): (WebCore::Font::offsetForPositionForComplexText):
10:27 PM Changeset in webkit [35209] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

Fix JavaScript in 64-bit by using a pointer-sized integer
type in the Register union. Also includes a rename of
the intType constant to IntType.

Rubber-stamped by Geoff Garen.

  • VM/Machine.cpp:

(KJS::Machine::initializeCallFrame):

  • VM/Register.h:

(KJS::Register::):
(KJS::Register::Register):

9:04 PM Changeset in webkit [35208] by eric@webkit.org
  • 4 edits
    1 add in trunk/WebCore

Reviewed by Sam.

Split out TextRun into its own header file.
Re-order members to place all bools together
(to allow compilers to better pack the struct)

No functional changes, thus no tests.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/Font.h: Moved TextRun into its own file.
  • platform/graphics/TextRun.h: Split out from Font.h
6:16 PM Changeset in webkit [35207] by dino@apple.com
  • 3 edits
    3 adds in trunk

2008-07-16 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

AnimationController needs to adjust z-index in the blended
style in case opacity or transform were changed by blending.

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

Test: transitions/opacity-transition-zindex.html

  • page/AnimationController.cpp: (WebCore::AnimationController::updateImplicitAnimations):
5:41 PM Changeset in webkit [35206] by Nikolas Zimmermann
  • 6 edits in trunk/WebCore

Reviewed by Sam.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=20052
Export the tag & attribute names as string literals for SVGNames/XLinkNames and one property in HTMLNames.

5:22 PM Changeset in webkit [35205] by Nikolas Zimmermann
  • 5 edits in trunk/LayoutTests

Rubber stamped by Eric.
Update pixel test results for two tests that have been changed.

4:34 PM Changeset in webkit [35204] by Nikolas Zimmermann
  • 46 edits
    1 add in trunk/WebCore

Reviewed by Eric.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=10745 (SVGLength object needs some weight loss)
Don't store a context pointer in SVGLength, saving memory.

3:47 PM Changeset in webkit [35203] by ggaren@apple.com
  • 22 edits in trunk

JavaScriptCore:

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

Reviewed by Oliver Hunt.


First step toward putting doubles in registers: Turned Register into a
proper abstraction layer. It is no longer possible to cast a Register
to a JSValue*, or a Register& to a JSValue*&, or to access the union
inside a Register directly.


SunSpider reports no change.


In support of this change, I had to make the following mechanical changes
in a lot of places:


  1. Clients now use explicit accessors to read data out of Registers, and implicit copy constructors to write data into registers.


So, assignment that used to look like


x.u.jsValue = y;


now looks like


x = y;


And access that used to look like


x = y.u.jsValue;


now looks like


x = y.jsValue();

  1. I made generic flow control specific in opcodes that made their flow control generic by treating a Register& as a JSValue*&. This had the added benefit of removing some exception checking branches from immediate number code.
  1. I beefed up PropertySlot to support storing a Register* in a property slot. For now, only JSVariableObject's symbolTableGet and symbolTablePut use this functionality, but I expect more clients to use it in the future.


  1. I changed ArgList to be a buffer of Registers, not JSValue*'s, and I changed ArgList iterator clients to iterate Registers, not JSValue*'s.

WebCore:

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

Reviewed by Oliver Hunt.

Support for JavaScriptCore's first step toward putting doubles in
registers: Treat ArgList iterators as Register*'s, not JSValue*'s.

  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction):
2:41 PM Changeset in webkit [35202] by adachan@apple.com
  • 2 edits in trunk/JavaScriptCore

Fixed build.

  • kjs/JSGlobalObject.cpp:
2:24 PM Changeset in webkit [35201] by Nikolas Zimmermann
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Anders Carlsson.
Add missing layout test results.

1:37 PM Changeset in webkit [35200] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-07-16 Kevin McCullough <kmccullough@apple.com>

Reviewed by Sam and Geoff.

<rdar://problem/5958840> Navigating to another page while profiler is
attached results in slow JavaScript for all time.

  • The UNLIKELY keeps this from being a sunspider performance regression.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::~JSGlobalObject): Stop the profiler associated with this exec state.
1:19 PM Changeset in webkit [35199] by weinig@apple.com
  • 6 edits in trunk/JavaScriptCore

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

Reviewed by Steve Falkenburg.

Replace adopting UString constructor in favor of explicit
static adopt method.

  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString):
  • kjs/StringConstructor.cpp: (KJS::stringFromCharCode):
  • kjs/StringPrototype.cpp: (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase):
  • kjs/ustring.cpp: (KJS::UString::adopt):
  • kjs/ustring.h: (KJS::UString::UString): (KJS::UString::~UString):
3:14 AM Changeset in webkit [35198] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-07-16 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

http://trolltech.com/developer/task-tracker/index_html?method=entry&id=216179
Fix potential crash (on Qt for Windows port) when performing JavaScript date
conversion.

  • kjs/DateMath.cpp: (KJS::getLocalTime): For the Qt port, prefer to use Windows code, i.e. localtime_s() instead of localtime() since the latter might crash (on Windows) given a non-sensible, e.g. NaN, argument.
1:24 AM Changeset in webkit [35197] by ap@webkit.org
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Fix a typo in ChangeLog.

1:20 AM Changeset in webkit [35196] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Anders and Geoff.

https://bugs.webkit.org/show_bug.cgi?id=20023
Failed assertion in PropertyNameArray.cpp

This is already tested by testapi.

  • API/JSObjectRef.cpp: (JSPropertyNameAccumulatorAddName): Add the string to identifier table to appeaase PropertyNameArray.
1:07 AM Changeset in webkit [35195] by ap@webkit.org
  • 5 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Dereference identifiers when deleting a hash table (fixes leaks with private JSGlobalData
objects).

  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::~JSGlobalData):
  • kjs/lookup.cpp: (KJS::HashTable::deleteTable):
  • kjs/lookup.h:
  • kjs/lexer.cpp: (KJS::Lexer::~Lexer) HashTable cannot have a destructor, because check-for-global-initializers complains about having a global constructor then.
12:58 AM Changeset in webkit [35194] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Check pthread_key_create return value.

This check was helpful when debugging a crash in run-webkit-tests --threaded that happened
because JSGlobalData objects were not deleted, and we were running out of pthread keys soon.
It also looks useful for production builds.

  • wtf/ThreadSpecific.h: (WTF::::ThreadSpecific):

Jul 15, 2008:

9:53 PM Changeset in webkit [35193] by weinig@apple.com
  • 19 edits
    3 adds in trunk

WebKitTools:

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

Reviewed by Anders Carlsson.

Refactor accessibility testing code.

We now have:

  • AccessibilityController Controller which has access to the WebView and can provide the focused element, root element and in the future, elementAtPoint.
  • AccessibilityUIElement Object which provides access to the data provided by the Accessibility APIs.
  • DumpRenderTree/AccessibilityController.cpp: (getFocusedElementCallback): (getRootElementCallback): (AccessibilityController::getJSClass):
  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/AccessibilityUIElement.cpp: Added. (allAttributesCallback): (attributesOfLinkedUIElementsCallback): (attributesOfChildrenCallback): (getRoleCallback): (getTitleCallback): (getDescriptionCallback): (getWidthCallback): (getHeightCallback): (getIntValueCallback): (getMinValueCallback): (getMaxValueCallback): (finalize): (AccessibilityUIElement::makeJSAccessibilityUIElement): (AccessibilityUIElement::getJSClass):
  • DumpRenderTree/AccessibilityUIElement.h: Added. (AccessibilityUIElement::platformUIElement):
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::AccessibilityController): (AccessibilityController::~AccessibilityController): (AccessibilityController::focusedElement): (AccessibilityController::rootElement):
  • DumpRenderTree/mac/AccessibilityUIElementMac.mm: Added. (AccessibilityUIElement::AccessibilityUIElement): (descriptionOfValue): (attributesOfElement): (nsStringToJSStringRef): (concatenateAttributeAndValue): (AccessibilityUIElement::getLinkedUIElements): (AccessibilityUIElement::getChildren): (AccessibilityUIElement::attributesOfLinkedUIElements): (AccessibilityUIElement::attributesOfChildren): (AccessibilityUIElement::allAttributes): (AccessibilityUIElement::role): (AccessibilityUIElement::title): (AccessibilityUIElement::description): (AccessibilityUIElement::width): (AccessibilityUIElement::height): (AccessibilityUIElement::intValue): (AccessibilityUIElement::minValue): (AccessibilityUIElement::maxValue):

LayoutTests:

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

Reviewed by Anders Carlsson.

Update for refactored accessibility testing code.

  • accessibility/aria-describedby-on-input.html:
  • accessibility/aria-labelledby-on-input.html:
  • accessibility/aria-range-value.html:
  • accessibility/aria-range.html:
  • accessibility/aria-roles.html:
  • accessibility/aria-slider.html:
  • accessibility/aria-spinbutton.html:
  • accessibility/document-attributes.html:
  • accessibility/image-map1.html:
  • accessibility/image-map2.html:
  • accessibility/internal-link-anchors.html:
  • accessibility/radio-button-checkbox-size.html:
  • accessibility/radio-button-group-members.html:
9:11 PM Changeset in webkit [35192] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

9:10 PM Changeset in webkit [35191] by mrowe@apple.com
  • 1 copy in tags/Safari-6527.2

New tag.

8:17 PM Changeset in webkit [35190] by britto@apple.com
  • 9 edits in trunk/WebCore

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

Reviewed by Eric.

https://bugs.webkit.org/show_bug.cgi?id=17589
<rdar://problem/5770893>
Retrieve the wheel sensitivity setting from windows system settings for the horizontal and the vertical scrolling.
Allows the page scrolling with the wheel (if activated in windows settings) on both horizontal and vertical ways
For the other platforms, nothing is changed but if someone want to activate this feature
he/she has to retrieve the settings and fill out the m_lineScrollSensitivity and/or m_charScrollSensitivity in his/her PlatformWheelEvent constructor.

  • ChangeLog:
  • page/EventHandler.cpp: (WebCore::scrollAndAcceptEvent): static inline function to avoid copy/paste in the member functions (WebCore::EventHandler::handleWheelEvent): Call to the above mentionned static inline function with the right parameters
  • platform/PlatformWheelEvent.h: (WebCore::PlatformWheelEvent::deltaX): Now returns the delta multiplied by the user settings for the number of lines to scroll (WebCore::PlatformWheelEvent::deltaY): Now returns the delta multiplied by the user settings for the number of chars to scroll (WebCore::PlatformWheelEvent::isPageXScrollModeEnabled): (WebCore::PlatformWheelEvent::isPageYScrollModeEnabled):
  • platform/gtk/WheelEventGtk.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  • platform/mac/WheelEventMac.mm: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  • platform/qt/WheelEventQt.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  • platform/win/ScrollViewWin.cpp: Added the page scroll (horiz/vertical) and reduced the number of pixels to scroll per line to keep the standard behavior with the factor (WebCore::adjustDeltaForPageScrollMode): static inline function to avoid copy/paste in the member functions (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::wheelEvent):
  • platform/win/WheelEventWin.cpp: Retrieves the new values by using the win32 API. (WebCore::PlatformWheelEvent::PlatformWheelEvent):
  • platform/wx/MouseWheelEventWx.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior (WebCore::PlatformWheelEvent::PlatformWheelEvent):
8:09 PM Changeset in webkit [35189] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix - adding AccessibilityImageMapLink.cpp to the wx build.

4:46 PM Changeset in webkit [35188] by kmccullough@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

2008-07-15 Kevin McCullough <kmccullough@apple.com>

Reviewed by Dan.

<rdar://problem/5620273> REGRESSION: Apparent caching between form
submits twice (on Maconomy) (18401)

Frames did not set the createdByParser flag even when they were.

  • html/HTMLElementFactory.cpp: (WebCore::frameConstructor): (WebCore::iframeConstructor):

LayoutTests:

2008-07-15 Kevin McCullough <kmccullough@apple.com>

Reviewed by Dan.

<rdar://problem/5620273> REGRESSION: Apparent caching between form
submits twice (on Maconomy) (18401)

  • fast/forms/form-and-frame-interaction-retains-values-expected.txt: Added.
  • fast/forms/form-and-frame-interaction-retains-values.html: Added.
  • fast/forms/resources/form-and-frame-interaction-retains-values-main.html: Added.
  • fast/forms/resources/form-and-frame-interaction-retains-values-submit.html: Added.
4:20 PM Changeset in webkit [35187] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Sam Weinig.

  • update results for the addition of the compareDocumentPosition-related constants
  • fast/dom/domListEnumeration-expected.txt:
3:53 PM Changeset in webkit [35186] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

Test: fast/reflections/inline-crash.html

  • rendering/RenderInline.cpp: (WebCore::RenderInline::setStyle): Added setHasReflection(false). Inline flows never have reflections.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/reflections/inline-crash.html: Added.
  • platform/mac/fast/reflections/inline-crash-expected.checksum: Added.
  • platform/mac/fast/reflections/inline-crash-expected.png: Added.
  • platform/mac/fast/reflections/inline-crash-expected.txt: Added.
2:24 PM Changeset in webkit [35185] by hyatt@apple.com
  • 3 edits
    4 adds in trunk

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

Allow <style> and <link> pretty much anywhere. They will still be moved to the <head> if
no <body> exists yet though.

Reviewed by Sam

Added fast/css/style-parsed-outside-of-head.html

  • html/HTMLElement.cpp: (WebCore::inlineTagList):
10:48 AM Changeset in webkit [35184] by kmccullough@apple.com
  • 10 edits in trunk

JavaScriptCore:

2008-07-15 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

Rename pageGroupIdentifier to profileGroup to keep mention of a
pageGroup out of JavaScriptCore.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::init):
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::setProfileGroup): (KJS::JSGlobalObject::profileGroup):
  • profiler/ProfileGenerator.cpp: (KJS::ProfileGenerator::create): (KJS::ProfileGenerator::ProfileGenerator):
  • profiler/ProfileGenerator.h: (KJS::ProfileGenerator::profileGroup):
  • profiler/Profiler.cpp: (KJS::Profiler::startProfiling): (KJS::dispatchFunctionToProfiles): (KJS::Profiler::willExecute): (KJS::Profiler::didExecute):

WebCore:

2008-07-15 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

Rename pageGroupIdentifier to profileGroup to keep mention of a
pageGroup out of JavaScriptCore.

  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::clear): (WebCore::ScriptController::initScript):
  • history/CachedPage.cpp: (WebCore::CachedPage::restore):
10:06 AM Changeset in webkit [35183] by adele@apple.com
  • 2 edits in trunk/LayoutTests

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

Updating results for my fix to <rdar://problem/5784890>.

  • http/tests/misc/xhtml-expected.txt:
9:49 AM Changeset in webkit [35182] by Adam Roben
  • 9 edits in trunk

Add WebKit[Set]ShouldUseFontSmoothing functions

WebCore:

WebCore part of adding WebKit[Set]ShouldUseFontSmoothing functions

<rdar://6059127>

Reviewed by John Sullivan.

  • platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Pass the result of WebCoreShouldUseFontSmoothing() into wkSetFontSmoothingStyle.
  • platform/win/WebCoreTextRenderer.cpp: (WebCore::WebCoreSetShouldUseFontSmoothing): (WebCore::WebCoreShouldUseFontSmoothing): Added.
  • platform/win/WebCoreTextRenderer.h:

WebKit/win:

Add WebKit[Set]ShouldUseFontSmoothing functions

<rdar://6059127>

Reviewed by John Sullivan.

  • WebKit.vcproj/WebKit.def:
  • WebKit.vcproj/WebKit_debug.def: Export the new functions.
  • WebKitGraphics.cpp: (WebKitSetShouldUseFontSmoothing): (WebKitShouldUseFontSmoothing): Call through to the relevant WebCore functions.
  • WebKitGraphics.h:
9:32 AM Changeset in webkit [35181] by mitz@apple.com
  • 7 edits in trunk/LayoutTests

Rubber-stamped by Anders Carlsson.

  • platform/mac/tables/mozilla/bugs/bug26553-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug26553-expected.png:
  • platform/mac/tables/mozilla/bugs/bug26553-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug57828-2-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug57828-2-expected.png:
  • platform/mac/tables/mozilla/bugs/bug57828-2-expected.txt:
8:34 AM Changeset in webkit [35180] by Adam Roben
  • 2 edits in trunk/WebCore

Windows build fix

  • WebCore.vcproj/WebCore.vcproj: Add AccessibilityImageMapLink.{cpp,h} to the project.
1:14 AM Changeset in webkit [35179] by zecke@webkit.org
  • 3 edits in trunk/WebCore

2008-07-15 Holger Hans Peter Freyther <zecke@selfish.org>

Build fix for the Gtk+ and Qt platform.

  • GNUmakefile.am: Add AccessibilityImageMapLink.cpp to the build
  • WebCore.pro: Add AccessibilityImageMapLink.cpp to the build

Jul 14, 2008:

11:16 PM Changeset in webkit [35178] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Tiger build fix
  • platform/mac/WidgetMac.mm: (WebCore::Widget::paint):
7:17 PM Changeset in webkit [35177] by mrowe@apple.com
  • 4 edits in trunk/JavaScriptCore

Fix https://bugs.webkit.org/show_bug.cgi?id=20037
Bug 20037: GCC 4.2 build broken due to strict aliasing violation.

Reviewed by Sam Weinig.

  • kjs/ustring.cpp:

(KJS::UString::Rep::computeHash): Add a version of computeHash that takes a char* and explicit length.

  • kjs/ustring.h:
  • profiler/CallIdentifier.h:

(WTF::): Use new version of computeHash that takes a char* and explicit length to avoid unsafe aliasing.

5:16 PM Changeset in webkit [35176] by mitz@apple.com
  • 5 edits in trunk

WebCore:

Reviewed by John Sullivan.

  • WebCore part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
  • platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Changed to account for the case of drawing into a bitmap context that is not a window's backing store. In that case, -displayRectIgnoringOpacity:inContext: is used to redirect the drawing to the correct context, after setting up the right transform on it. For subframes, additional code ensures that the scroll view will not paint the background behind a transparent frame.

WebKit/mac:

Reviewed by John Sullivan.

  • WebKit part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Changed to account for the case of being drawn into a bitmap context that is not a window's backing store. In that case, there are no valid "rects being drawn" to clip to.
  • WebView/WebHTMLView.mm: (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Added an override of this NSView method which is used in for -cacheDisplayInRect:toBitmapImageRep:. Like two existing NSView drawing machinery overrides, it sets subviews aside before invoking the superclass implementation. On Tiger, it also updates the layout.
4:15 PM Changeset in webkit [35175] by sfalken@apple.com
  • 2 edits in trunk/WebKit/win

Don't include autoversion.h in WebKitDLL.cpp.
autoversion.h changes for every build, so we don't want to include it unless necessary.

Rubber stamped by Ada Chan.

  • WebKitDLL.cpp:
3:43 PM Changeset in webkit [35174] by Chris Fleizach
  • 14 edits
    6 adds in trunk

<rdar://problem/6038106> AXChildren returned for this web area is null

The accessibility of image maps needed to be brought inline with the new AX architecture

3:31 PM Changeset in webkit [35173] by weinig@apple.com
  • 5 edits in trunk/WebCore

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

Rubber-stamped by David Hyatt.

Remove unused ExceptionCode parameter from compareDocumentPosition.

  • dom/Document.cpp: (WebCore::Document::addStyleSheetCandidateNode):
  • dom/Node.cpp: (WebCore::Node::compareDocumentPosition):
  • dom/Node.h:
  • dom/Node.idl:
3:10 PM Changeset in webkit [35172] by hyatt@apple.com
  • 13 edits
    9 adds in trunk

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

Fix for bugzilla bug 5476, link and style elements should be allowed outside the <head>.

Reviewed by Sam

Added fast/css/style-outside-head.html
Added fast/css/link-outside-head.html

  • dom/Document.cpp: (WebCore::Document::addStyleSheetCandidateNode): (WebCore::Document::removeStyleSheetCandidateNode): (WebCore::Document::recalcStyleSelector):
  • dom/Document.h:
  • dom/Node.cpp: (WebCore::Node::compareDocumentPosition):
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::checkStyleSheet): (WebCore::ProcessingInstruction::insertedIntoDocument): (WebCore::ProcessingInstruction::removedFromDocument): (WebCore::ProcessingInstruction::finishParsingChildren):
  • dom/ProcessingInstruction.h: (WebCore::ProcessingInstruction::setCreatedByParser):
  • dom/StyleElement.cpp: (WebCore::StyleElement::removedFromDocument):
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs): (WebCore::XMLTokenizer::processingInstruction): (WebCore::):
  • html/HTMLElementFactory.cpp: (WebCore::linkConstructor):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::HTMLLinkElement): (WebCore::HTMLLinkElement::insertedIntoDocument): (WebCore::HTMLLinkElement::removedFromDocument): (WebCore::HTMLLinkElement::finishParsingChildren):
  • html/HTMLLinkElement.h: (WebCore::HTMLLinkElement::setCreatedByParser):
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::insertedIntoDocument): (WebCore::HTMLStyleElement::removedFromDocument):
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::insertedIntoDocument): (WebCore::SVGStyleElement::removedFromDocument):
3:08 PM Changeset in webkit [35171] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

2008-07-14 Steve Falkenburg <sfalken@apple.com>

Build fix.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
2:48 PM Changeset in webkit [35170] by Adam Roben
  • 2 edits in trunk/WebKitTools

Attempted Windows build fix

  • DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj: Add CoreFoundation/OSXCompatibilityHeadersGNUCompatibility to the include path.
2:21 PM Changeset in webkit [35169] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Mark Rowe.

Sort interface extended attributes to appease *the* Mark Rowe.

  • page/DOMWindow.idl:
2:16 PM Changeset in webkit [35168] by andersca@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

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

Reviewed by Geoff.

<rdar://problem/6073974>
https://bugs.webkit.org/show_bug.cgi?id=18106
The "onscroll" event bubbles, which is inconsistent with Firefox and IE

Don't bubble the scroll event.


  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset):
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::valueChanged):

LayoutTests:

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

Reviewed by Geoff.

<rdar://problem/6073974>
https://bugs.webkit.org/show_bug.cgi?id=18106
The "onscroll" event bubbles, which is inconsistent with Firefox and IE


Add test.


  • fast/events/scroll-event-does-not-bubble-expected.txt: Added.
  • fast/events/scroll-event-does-not-bubble.html: Added.
1:58 PM Changeset in webkit [35167] by adele@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Geoff.

Fix for <rdar://problem/5784890> REGRESSION (Safari 3): Can't edit SpeedStream 4100 DSL modem settings

The web server on this particular piece of hardware doesn't handle "text/xml" in the
Accept header if the headers are sent in a certain order. Safari 2 used to send "*/*" in
the Accept header. Firefox 2 sent "text/xml" but in an acceptable order for the web
server. And Firefox 3 doesn't send "text/xml" at all in the Accept header since it
is being deprecated in favor of "application/xml". We decided that the best solution is
to match Firefox 3 and stop sending "text/xml" in the Accept header.

No test. There appears to be no way to get the raw headers in the original order in perl/php.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
1:56 PM Changeset in webkit [35166] by weinig@apple.com
  • 5 edits
    3 adds in trunk

WebCore:

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

Reviewed by Adele Peterson.

Fix for <rdar://problem/5769819>

Test: http/tests/security/cross-frame-access-object-prototype.html

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::getPropertyAttributes): Perform security check. (WebCore::JSDOMWindow::defineGetter): Ditto. (WebCore::JSDOMWindow::defineSetter): Ditto. (WebCore::JSDOMWindow::lookupGetter): Ditto. (WebCore::JSDOMWindow::lookupSetter): Ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Add support for custom versions of all the core JSObject functionality.
  • page/DOMWindow.idl: Override remaining core JSObject functionality, to inject security checks.

LayoutTests:

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

Reviewed by Adele Peterson.

Test for <rdar://problem/5769819>

  • http/tests/security/cross-frame-access-object-prototype-expected.txt: Added.
  • http/tests/security/cross-frame-access-object-prototype.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-object-prototype-test.html: Added.
1:37 PM Changeset in webkit [35165] by hyatt@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Fix a crashing bug in ListHashSet's -- operator. Make sure that end() can be -- by special-casing the null
position.

Reviewed by Maciej

  • wtf/ListHashSet.h: (WTF::ListHashSetConstIterator::operator--):
1:04 PM Changeset in webkit [35164] by hyatt@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Buidl fix. Make sure the second insertBefore method returns a value.

  • wtf/ListHashSet.h: (WTF::::insertBefore):
12:21 PM Changeset in webkit [35163] by Adam Roben
  • 9 edits in trunk

Windows build fixes

JavaScriptCore:

Windows build fix

  • JavaScriptCore.vcproj/jsc/jsc.vcproj: Added include/pthreads to the include path.

WebCore:

Windows build fixes

  • WebCore.vcproj/WebCore.vcproj: Add include/pthreads to the include path.
  • bindings/scripts/CodeGeneratorCOM.pm: Touched this to force COM bindings to regenerate.
  • loader/FTPDirectoryDocument.cpp:
  • loader/FTPDirectoryParser.cpp: Fixed some duplicate macro definitions now that we're including pthread.h again.

WebKit/win:

Windows build fix

  • WebJavaScriptCollector.cpp: (WebJavaScriptCollector::objectCount): Updated to match -[WebCoreStatistics javaScriptsObjectCount].
11:23 AM Changeset in webkit [35162] by ap@webkit.org
  • 8 edits in trunk

Reviewed by Kevin McCullough.

Make JSGlobalData refcounted in preparation to adding a way to create contexts that share
global data.

  • JavaScriptCore.exp:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::create):
  • kjs/JSGlobalData.h: Made contructor private, and added a static create() method. Made the class inherit from RefCounted.
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::globalData): JSGlobalData is now owned by JSGlobalObject (except for the shared one, and the common WebCore one, which are never deleted).
  • kjs/Shell.cpp: (main): Create JSGlobalData with create() method.

WebCore:

  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData): Create JSGlobalData with create() method.
7:13 AM Changeset in webkit [35161] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-07-14 Simon Hausmann <Simon Hausmann>

Reviewed by Holger.

Make listDirectory() in the Qt port work with empty namefilters.
Don't include . and .. to avoid scanning the parent directory.

5:12 AM Changeset in webkit [35160] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

2008-07-14 Simon Hausmann <Simon Hausmann>

Fix the single-threaded build.

4:28 AM Changeset in webkit [35159] by ap@webkit.org
  • 40 edits
    2 adds in trunk

Reviewed by Geoff Garen.

Eliminate per-thread JavaScript global data instance support and make arbitrary
global data/global object combinations possible.

3:20 AM Changeset in webkit [35158] by Simon Hausmann
  • 4 edits in trunk/WebCore

2008-07-14 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

MinGW build fixes

  • plugins/win/PluginDatabaseWin.cpp:
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginView::handleKeyboardEvent): (WebCore::PluginView::handleMouseEvent):
  • svg/SynchronizableTypeWrapper.h: (WebCore::::SynchronizableTypeWrapper):

Jul 13, 2008:

10:23 PM Changeset in webkit [35157] by weinig@apple.com
  • 2 edits
    1 add in trunk/WebCore

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

Reviewed by Oliver Hunt and Dan Bernstein.

Fix for <rdar://problem/5888127>
https://bugs.webkit.org/show_bug.cgi?id=18699

  • Match Firefox in restricting the size of custom cursor to images to 128x128 px.
  • Restrict custom cursor hotspots to values within the bounds of the cursor image.
  • manual-tests/cursor-max-size.html: Added.
  • page/EventHandler.cpp: (WebCore::EventHandler::selectCursor):
7:46 PM Changeset in webkit [35156] by adachan@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows build fix: Add wtf/RefCountedLeakCounter to the project.

3:50 PM Changeset in webkit [35155] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix.

Jul 12, 2008:

6:18 PM Changeset in webkit [35154] by mitz@apple.com
  • 2 edits in trunk

Remove conflict markers.

4:42 PM Changeset in webkit [35153] by weinig@apple.com
  • 1 edit
    2 moves in trunk/LayoutTests

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

Rubber-stamped by Oliver Hunt.

Update version of Selectors API test from http://ejohn.org/apps/selectortest/
and fix the spelling of the authors name.

  • fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt: Copied from fast/dom/SelectorAPI/ressig-SelectorsAPI-test-expected.txt.
  • fast/dom/SelectorAPI/resig-SelectorsAPI-test.xhtml: Copied from fast/dom/SelectorAPI/ressig-SelectorsAPI-test.xhtml.
  • fast/dom/SelectorAPI/ressig-SelectorsAPI-test-expected.txt: Removed.
  • fast/dom/SelectorAPI/ressig-SelectorsAPI-test.xhtml: Removed.
4:32 PM Changeset in webkit [35152] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Oliver Hunt.

Test: fast/block/basic/min-pref-width-nowrap-floats.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::calcInlinePrefWidths): Fixed a case where a float's width was added to the minimum preferred widths instead of just acting as a lower bound on the minimum preferred width (since the float can always be pushed down to be the only thing on the line).

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/block/basic/min-pref-width-nowrap-floats.html: Added.
  • platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.checksum: Added.
  • platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.png: Added.
  • platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.txt: Added.
2:33 PM Changeset in webkit [35151] by ddkilzer@apple.com
  • 3 edits
    2 adds in trunk/WebCore

Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page

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

Reviewed by Darin.

Test: WebCore/manual-tests/hash-ref.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::load(const KURL& newURL, const String& referrer,

FrameLoadType newLoadType, const String& frameName, Event* event,
PassRefPtr<FormState> formState)): Extracted logic into

shouldScrollToAnchor() for determining when to scroll to an anchor.

(WebCore::FrameLoader::load(DocumentLoader* loader, FrameLoadType type,

PassRefPtr<FormState> formState)): Added check for

shouldScrollToAnchor() to catch cases when the user manually added a
hash ref to the URL in the address bar. This is the bug fix.

(WebCore::FrameLoader::shouldReload): Simplified early return logic.
We only need to check if the destinationURL has a hash ref, not the
currentURL, per the comment in the method.

(WebCore::FrameLoader::shouldScrollToAnchor): Added. Logic extracted
from the FrameLoader::load(const KURL& newURL, ...) method. Fixed order
of arguments to shouldReload() since they were backwards, although the
previous logic in the method made this irrelevant.

(WebCore::FrameLoader::loadItem): Removed call to shouldReload(). Since
we're navigating to a HistoryItem, it doesn't make sense to ask whether
we need to reload the page or not. Additionally, the logic at the end
of shouldReload() is also checked in urlsMatchItem(), so there's no need
to call the method. This fixed the fast/css/target-fragment-match.html
test from continuously reloading after the other changes.

  • loader/FrameLoader.h: (WebCore::FrameLoader::shouldScrollToAnchor): Added.
  • manual-tests/hash-ref.html: Added.
  • manual-tests/resources/hash-ref-test.html: Added.
1:09 AM Changeset in webkit [35150] by jmalonzo@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-07-12 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk, Qt and Wx build fix: Add wtf/RefCountedLeakCounter in the
build scripts

12:49 AM Changeset in webkit [35149] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/fast/dom/Window/window-properties-expected.txt

Update layout test results for new compareDocumentPosition method

Jul 11, 2008:

10:51 PM Changeset in webkit [35148] by Stephanie Lewis
  • 22 edits
    1 move
    4 adds in trunk

2008-07-11 Stephanie Lewis <Stephanie Lewis>

Reviewed by Darin Adler and Oliver Hunt.

JavaScriptCore:

Refactor RefCounting Leak counting code into a common class.

In order to export the symbols I needed to put the debug defines inside the function names


Before we had a separate channel for each Logging each Leak type. Since the leak channels were only used in one location, and only at quit for simplicity I combined them all into one leak channel.

  • JavaScriptCore.exp:
  • JavaScriptCore.xcodeproj/project.pbxproj: add new class
  • kjs/nodes.cpp: remove old leak counting code
  • wtf/RefCountedLeakCounter.cpp: Added. create a common leak counting class
  • wtf/RefCountedLeakCounter.h: Added.

WebCore:

No Functionality Changed. Change all the leak counting code to use the new WTF leak counter class.

  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback): (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::~JSEventListener):
  • dom/Node.cpp: (WebCore::Node::Node): (WebCore::Node::~Node):
  • dom/Range.cpp: (WebCore::Range::Range): (WebCore::Range::~Range):
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::~CachedPage):
  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::SubresourceLoader): (WebCore::SubresourceLoader::~SubresourceLoader):
  • page/Frame.cpp: (WebCore::Frame::Frame): (WebCore::Frame::~Frame):
  • page/Page.cpp: (WebCore::Page::Page): (WebCore::Page::~Page):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::~RenderObject):
  • rendering/bidi.cpp: (WebCore::throw): (WebCore::BidiRun::operator delete):

WebKit

Move WebPreferences.m to objc++ so it can include the new WTF leak counting class.

  • WebKit.xcodeproj/project.pbxproj:

Disable WTF leak messages when using fast teardown. Use full document teardown while running in debug.

  • WebView/WebPreferences.m: Removed.
  • WebView/WebPreferences.mm: Copied from http:/svn.webkit.org/repository/webkit/trunk/WebKit/mac/WebView/WebPreferences.m. (+[WebPreferences initialize]): if running in Default enable full document teardown (-[WebPreferences editableLinkBehavior]): (-[WebPreferences setFullDocumentTeardownEnabled:]):
  • WebView/WebView.mm: (-[WebView _close]): disable leak messages if using fast teardown

WebKitTools:

Make sure we read WebCore Leak messages. Force full document teardown for DumpRenderTree.

Up timeout limit, some slower machines were timing out before crashtracer finished writing out to disk and quitting DRT.

  • DumpRenderTree/mac/DumpRenderTree.mm: (setDefaultsToConsistentValuesForTesting): (resetWebViewToConsistentStateBeforeTesting):
  • Scripts/run-webkit-tests:
7:52 PM Changeset in webkit [35147] by hyatt@apple.com
  • 1 edit in trunk/WebCore/dom/Node.h

Clean up some funny whitespace from my previous Node.h checkin

7:50 PM Changeset in webkit [35146] by weinig@apple.com
  • 7 edits
    3 adds in trunk

WebCore:

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

Reviewed by Mark Rowe.

Update getSubStringLength and selectSubString methods exception throwing conditions
based on SVG working group errata.

Test: svg/custom/selectSubString.html

  • svg/SVGTextContentElement.cpp: (WebCore::SVGTextContentElement::getSubStringLength): (WebCore::SVGTextContentElement::selectSubString):

LayoutTests:

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

Reviewed by Mark Rowe.

Update getSubStringLength and selectSubString methods exception throwing conditions
based on SVG working group errata.

  • svg/custom/acid3-test-77-expected.txt:
  • svg/custom/acid3-test-77.html:
  • svg/custom/getSubStringLength-expected.txt:
  • svg/custom/resources/getSubStringLength.js:
  • svg/custom/resources/selectSubString.js: Added.
  • svg/custom/selectSubString-expected.txt: Added.
  • svg/custom/selectSubString.html: Added.
7:28 PM Changeset in webkit [35145] by weinig@apple.com
  • 5 edits
    3 adds in trunk

WebCore:

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

Reviewed by Mark Rowe.

We can only use the Id fast path for querySelector and querySelectorAll
if the selector is purely an Id selector.

Test: fast/dom/SelectorAPI/id-fastpath.html

  • dom/Node.cpp: (WebCore::Node::querySelector):
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList):

LayoutTests:

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

Reviewed by Mark Rowe.

We can only use the Id fast path for querySelector and querySelectorAll
if the selector is purely an Id selector.

  • fast/dom/SelectorAPI/id-fastpath-expected.txt: Added.
  • fast/dom/SelectorAPI/id-fastpath.html: Added.
  • fast/dom/SelectorAPI/resources/id-fastpath.js: Added.
  • fast/dom/SelectorAPI/ressig-SelectorsAPI-test-expected.txt:
7:24 PM Changeset in webkit [35144] by hyatt@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Add an insertBefore method to ListHashSet to allow for insertions in the middle of the list (rather than just
at the end).

Reviewed by Anders

  • wtf/ListHashSet.h: (WTF::::insertBefore): (WTF::::insertNodeBefore):
7:13 PM Changeset in webkit [35143] by hyatt@apple.com
  • 35 edits in trunk

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

Implement the DOM level 3 compareDocumentPosition method on Node.

Reviewed by Darin

  • dom/Node.cpp: (WebCore::Node::compareDocumentPosition):
  • dom/Node.h:
  • dom/Node.idl:
5:29 PM Changeset in webkit [35142] by weinig@apple.com
  • 8 edits
    2 copies in trunk/JavaScriptCore

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

Rubber-stamped by Darin Adler.

Move call function to CallData.cpp and construct to ConstructData.cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/CallData.cpp: Copied from kjs/JSValue.cpp.
  • kjs/ConstructData.cpp: Copied from kjs/JSValue.cpp.
  • kjs/JSValue.cpp:
3:51 PM Changeset in webkit [35141] by beidson@apple.com
  • 2 edits in trunk/WebCore

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

Rubberstamped by Sam

Removed unneeded export

  • WebCore.base.exp:
3:42 PM Changeset in webkit [35140] by kmccullough@apple.com
  • 2 edits in trunk/WebCore

2008-07-11 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

<rdar://problem/6067178> REGRESSION: Start profile button in profiler
now profiles inspector rather than actual page (19833)

  • The JSQuarantinedObjectWrapper should use the wrapped exec state so that calls to it execute in its quarantined world.
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::call):
3:40 PM Changeset in webkit [35139] by dino@apple.com
  • 2 edits in trunk/WebCore

2008-07-11 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

StyleRareNonInheritedData needs to initialize and compare
m_maskBoxImage.
<https://bugs.webkit.org/show_bug.cgi?id=20005>

  • rendering/style/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==):
3:34 PM Changeset in webkit [35138] by dino@apple.com
  • 3 edits
    2 adds in trunk

2008-07-11 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

Bug 18885: RenderLayer::enclosingPositionedAncestor() should
look for transforms, since transforms create containing
blocks.
<https://bugs.webkit.org/show_bug.cgi?id=18885>

Test: fast/transforms/transform-positioned-ancestor.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::stackingContext): (WebCore::RenderLayer::enclosingPositionedAncestor): (WebCore::RenderLayer::enclosingTransformedAncestor):
3:30 PM Changeset in webkit [35137] by jmalonzo@webkit.org
  • 3 edits in trunk/WebCore

2008-07-11 Jacob Refstrup <jacob.refstrup@hp.com>

Reviewed by Darin Adler

http://bugs.webkit.org/show_bug.cgi?id=19978
GTK port always ends up with # at the end of resource URLs (and hence can't load files)

  • Optimized KURL::removeRef() and used it rather than setRef("") which after r35040 does the wrong thing.
  • platform/KURL.cpp: (WebCore::KURL::removeRef):
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::initializeHandle):
3:07 PM Changeset in webkit [35136] by jmalonzo@webkit.org
  • 7 edits in trunk/WebKit/gtk

2008-07-08 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Christian Dywan.

Replace 'const' with G_CONST_RETURN macro to make it flexible to
disable constness

  • webkit/webkitnetworkrequest.cpp:
  • webkit/webkitnetworkrequest.h:
  • webkit/webkitwebframe.cpp:
  • webkit/webkitwebframe.h:
  • webkit/webkitwebhistoryitem.cpp:
  • webkit/webkitwebhistoryitem.h:
2:46 PM Changeset in webkit [35135] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

Reviewed by Anders.

Skip the printing tests since they fail between machines.
https://bugs.webkit.org/show_bug.cgi?id=20011

  • platform/mac/Skipped:
2:19 PM Changeset in webkit [35134] by weinig@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

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

Rubber-stamped by Oliver Hunt.

Import Selectors API test from http://ejohn.org/apps/selectortest/.

  • fast/dom/SelectorAPI/ressig-SelectorsAPI-test-expected.txt: Added.
  • fast/dom/SelectorAPI/ressig-SelectorsAPI-test.xhtml: Added.
2:17 PM Changeset in webkit [35133] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

Reviewed by cpst.

Update results to match the buildbot (even though this now fails on my machine)
I think the failure for me is possibly leopard vs. tiger or git vs. svn.

  • webarchive/test-xml-stylesheet-expected.webarchive:
11:51 AM Changeset in webkit [35132] by sfalken@apple.com
  • 2 edits in tags/Safari-6527.1.2/WebKit/win

Merged r35130.

11:37 AM Changeset in webkit [35131] by sfalken@apple.com
  • 1 copy in tags/Safari-6527.1.2

New tag.

11:35 AM Changeset in webkit [35130] by sfalken@apple.com
  • 2 edits in trunk/WebKit/win

Build fix.

10:02 AM Changeset in webkit [35129] by Simon Hausmann
  • 2 edits in trunk/WebCore

008-07-11 Simon Hausmann <Simon Hausmann>

Fix the Qt/Windows build, include windows.h for HWND directly
instead of implicit inclusion through Timer.h.

9:54 AM Changeset in webkit [35128] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix popularity tracking for cached resources, which regressed in r23923
  • loader/Cache.cpp: (WebCore::Cache::requestResource): Changed to increase the access count whenever this function returns a CachedResource and the cache is enabled, instead of only when creating a new CachedResources. The incorrect behavior resulted in all resources in the cache having an access count of exactly 1 at all times. (WebCore::Cache::requestUserCSSStyleSheet): Ditto.
8:43 AM Changeset in webkit [35127] by Simon Hausmann
  • 11 edits in trunk/WebCore

2008-07-11 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Enable Netscape plugins for the Qt/Windows build.

This required various smaller fixes across a wider set of
files described below.

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

2008-07-11 Simon Hausmann <Simon Hausmann>

Rubber-stamped by Holger.

Enable Database and Icondatabase functionality for the Qt/Windows
build when building inside Qt, as we can use the builtin copy of
sqlite then.

4:51 AM Changeset in webkit [35125] by dino@apple.com
  • 5 edits in trunk/LayoutTests

Updated test results for
https://bugs.webkit.org/show_bug.cgi?id=19864

  • css3/transform-computed-style-001-expected.txt:
  • fast/css/computed-style-expected.txt:
  • fast/css/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
4:28 AM Changeset in webkit [35124] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-07-11 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Adam Roben.

Fix compile with MinGW since it does not like friend static function.

  • plugins/PluginView.h:
  • plugins/win/PluginViewWin.cpp:
3:33 AM Changeset in webkit [35123] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-07-11 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Fix Qt/Win32 build.

  • platform/graphics/qt/GraphicsContextQt.cpp:
12:34 AM Changeset in webkit [35122] by weinig@apple.com
  • 21 edits
    9 adds
    2 deletes in trunk

WebCore:

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

Reviewed by Oliver Hunt.

Add support for NSResolver to resolve namespaces for querySelector
and querySelectorAll.

  • Namespace resolution is done after parsing by iterating over all the parts of the CSSSelector.

Tests: fast/dom/SelectorAPI/NSResolver-basic.xhtml

fast/dom/SelectorAPI/NSResolver-exceptions.xhtml

  • GNUmakefile.am: Updated with new files.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • WebCoreSources.bkl: Ditto.
  • bindings/js/JSDOMBinding.cpp: (WebCore::execStateFromNode):
  • bindings/js/JSDOMBinding.h: Move execStateFromNode here from NodeFilter.
  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::querySelector): Don't throw a NOT_SUPPORTED_ERR for NSResolver and instead create one if the argument is not undefined or null. (WebCore::JSDocument::querySelectorAll): Ditto.
  • bindings/js/JSDocumentFragmentCustom.cpp: (WebCore::JSDocumentFragment::querySelector): Ditto. (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
  • bindings/js/JSElementCustom.cpp: (WebCore::JSElement::querySelector): Ditto. (WebCore::JSElement::querySelectorAll): Ditto.
  • bindings/js/JSNSResolver.cpp: Added. (WebCore::JSNSResolver::JSNSResolver): (WebCore::JSNSResolver::mark): (WebCore::JSNSResolver::lookupNamespaceURI): Try and get the function from the passed in argument, either the value itself, or the result of getting the lookupNamespaceURI property, and call it. (WebCore::toNSResolver):
  • bindings/js/JSNSResolver.h: Added. (WebCore::JSNSResolver::create):
  • dom/Document.idl: Update with NSResolver parameter.
  • dom/DocumentFragment.idl: Ditto.
  • dom/Element.idl: Ditto.
  • dom/NSResolver.h: Added. (WebCore::NSResolver::~NSResolver): (WebCore::NSResolver::mark): Abstract base class.
  • dom/NSResolver.idl: Added.
  • dom/Node.cpp: (WebCore::forEachTagSelector): (WebCore::forEachSelector): Functions to iterate over all parts of the selector.

(WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
Functor to be passed to forEachSelector to determine if a selector
needs namespace resolution, for the case when no NSResolver is passed
and we need to determine whether to throw a NAMESPACE_ERR.

(WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
(WebCore::ResolveNamespaceFunctor::operator()):
Functor to resolve namespaces for the selector.

(WebCore::selectorNeedsNamespaceResolution):
(WebCore::resolveNamespacesForSelector):
(WebCore::Node::querySelector): Resolve namepspaces, including the defaultNamespace
if a NSResolver is passed in.
(WebCore::Node::querySelectorAll): Ditto.

  • dom/Node.h:
  • dom/NodeFilter.cpp:
  • dom/NodeFilter.h:
  • dom/NodeIterator.h: (WebCore::NodeIterator::nextNode): (WebCore::NodeIterator::previousNode):
  • dom/TreeWalker.h: (WebCore::TreeWalker::parentNode): (WebCore::TreeWalker::firstChild): (WebCore::TreeWalker::lastChild): (WebCore::TreeWalker::previousSibling): (WebCore::TreeWalker::nextSibling): (WebCore::TreeWalker::previousNode): (WebCore::TreeWalker::nextNode): Use the version of execStateFromNode in JSDOMBinding.

LayoutTests:

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

Reviewed by Oliver Hunt.

Add support for NSResolver to resolve namespaces for querySelector
and querySelectorAll.

  • fast/dom/SelectorAPI/NSResolver-basic-expected.txt: Added.
  • fast/dom/SelectorAPI/NSResolver-basic.xhtml: Added.
  • fast/dom/SelectorAPI/NSResolver-exceptions-expected.txt: Added.
  • fast/dom/SelectorAPI/NSResolver-exceptions.xhtml: Added.
  • fast/dom/SelectorAPI/not-supported-NSResolver-expected.txt: Removed.
  • fast/dom/SelectorAPI/not-supported-NSResolver.html: Removed.
  • fast/dom/SelectorAPI/resources/NSResolver-exceptions.js: Added.

Jul 10, 2008:

11:10 PM Changeset in webkit [35121] by mrowe@apple.com
  • 8 edits in trunk

Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.

Reviewed by Sam Weinig.

11:10 PM Changeset in webkit [35120] by mrowe@apple.com
  • 6 edits in trunk

Fix the Tiger build by omitting annotations from methods declared in categories when using old versions of GCC.

Reviewed by Sam Weinig.

10:15 PM Changeset in webkit [35119] by mrowe@apple.com
  • 2 edits in tags/Safari-6527.1.1/WebKit/win

Build fix.

10:02 PM Changeset in webkit [35118] by sfalken@apple.com
  • 2 edits in trunk/WebKit/win

Build fix.

9:54 PM Changeset in webkit [35117] by dino@apple.com
  • 3 edits
    3 adds in trunk

Reviewed by hyatt.

Calculate computed style for -webkit-transform property
https://bugs.webkit.org/show_bug.cgi?id=19864

Test: css3/transform-computed-style-001.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::computedTransform):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

handles -webkit-transform property now

  • manual-tests/computed-transform-value.html: Added.
6:05 PM Changeset in webkit [35116] by mrowe@apple.com
  • 4 edits in tags/Safari-6527.1.1

Versioning.

6:05 PM Changeset in webkit [35115] by mrowe@apple.com
  • 2 edits in tags/Safari-6527.1.1/WebCore

Merge r35112.

6:03 PM Changeset in webkit [35114] by mrowe@apple.com
  • 1 copy in tags/Safari-6527.1.1

New tag.

5:46 PM Changeset in webkit [35113] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

  • fix a parse error in inspector.js
  • page/inspector/inspector.js: Added missing brace.
5:43 PM Changeset in webkit [35112] by Adam Roben
  • 2 edits in trunk/WebCore

Build fix

  • WebCore.vcproj/QTMovieWin.vcproj: Add OSXCompatibilityHeadersGNUCompatibility to the include path.
5:28 PM Changeset in webkit [35111] by Chris Fleizach
  • 4 edits in trunk/WebCore

<rdar://problem/6067408> AX: internal anchors broken

Fixes a broken accessibility test

5:01 PM Changeset in webkit [35110] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Build fix.

4:47 PM Changeset in webkit [35109] by weinig@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Mark Rowe.

Remove no-op debug method.

  • css/CSSSelector.cpp:
  • css/CSSSelector.h:
4:21 PM Changeset in webkit [35108] by weinig@apple.com
  • 15 edits
    4 adds in trunk

WebCore:

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

Reviewed by Dave Hyatt and Darin Adler.

Add support for calling querySelector and querySelectorAll on DocumentFragments

  • Fixes bug where nodes not in the document tree would not match based on ID due to over optimization.

Test: fast/dom/SelectorAPI/detached-element.html

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/JSDocumentFragmentCustom.cpp: Added. (WebCore::JSDocumentFragment::querySelector): Add custom code matching JSElement and JSDocument that checks for a 2nd arguments and throws an exception indicating we do not currently support the optional NSResolver part of the Selectors API spec. (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
  • dom/DocumentFragment.idl: Add querySelector and querySelectorAll declarations.
  • dom/Node.cpp: (WebCore::Node::querySelector): Make the CSS parser parse the selector according to the strictness of the document so that mixed case ID selectors match in quirks mode. Also, don't use the fast ID path if the root is not in the DOM tree, as it won't work. (WebCore::Node::querySelectorAll): Ditto.
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList): Don't use the fast ID path if the root is not in the DOM tree, as it won't work.

LayoutTests:

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

Reviewed by Dave Hyatt and Darin Adler,

Add support for calling querySelector and querySelectorAll on DocumentFragments

  • Add test for nodes not in the document tree.
  • fast/dom/SelectorAPI/detached-element-expected.txt: Added.
  • fast/dom/SelectorAPI/detached-element.html: Added.
  • fast/dom/SelectorAPI/dumpNodeList-expected.txt:
  • fast/dom/SelectorAPI/dumpNodeList.html:
  • fast/dom/SelectorAPI/not-supported-NSResolver-expected.txt:
  • fast/dom/SelectorAPI/not-supported-NSResolver.html:
  • fast/dom/SelectorAPI/resources/detached-element.js: Added.
  • fast/dom/Window/window-properties-expected.txt:
4:06 PM Changeset in webkit [35107] by pewtermoose@webkit.org
  • 2 edits in trunk/WebCore

2008-07-10 Anthony Ricaud <rik24d@gmail.com>

Bug 19389: querySelectorAll exception while searching invalid CSS selector
<https://bugs.webkit.org/show_bug.cgi?id=19389>

Reviewed by Tim Hatcher.

  • page/inspector/inspector.js: Added a try/catch block.
4:02 PM Changeset in webkit [35106] by pewtermoose@webkit.org
  • 2 edits in trunk/WebCore

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

Correct a build regression due to an uninitialized variable.

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

Reviewed by Darin.

  • platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs):
3:59 PM Changeset in webkit [35105] by Adam Roben
  • 3 edits in trunk/WebCore

Fix Bug 19580: REGRESSION (r34432): PGO-only crash in HTMLCollection::resetCollectionInfo (codegen issue?)

<https://bugs.webkit.org/show_bug.cgi?id=19580>
<rdar://6029794>

Reviewed by Cameron Zwarich.

  • WebCore.vcproj/WebCore.vcproj: Disable LTCG for HTMLFormElement.cpp, which was causing some bad codegen in HTMLFormElement::elements.
  • html/HTMLFormElement.cpp: Touched this file to force it to rebuild.
3:53 PM Changeset in webkit [35104] by andersca@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Jon.

<rdar://problem/6067135>
WebKit should respond true to a query for NPNVSupportsWindowless.


Handle NPNVSupportsWindowless and return true.


  • bridge/npapi.h:
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginView::getValue):
3:38 PM Changeset in webkit [35103] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

Build fix.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
2:56 PM Memory Use edited by ggaren@apple.com
(diff)
1:50 PM Changeset in webkit [35102] by kmccullough@apple.com
  • 6 edits in trunk

JavaScriptCore:

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

Reviewed by Darin.

-Minor cleanup. Renamed callTree() to head() and no longer use m_head
directly but instead keep it private and access via a method().

  • profiler/HeavyProfile.cpp: (KJS::HeavyProfile::HeavyProfile): (KJS::HeavyProfile::generateHeavyStructure): (KJS::HeavyProfile::addNode):
  • profiler/Profile.h: (KJS::Profile::head):
  • profiler/ProfileGenerator.cpp: (KJS::ProfileGenerator::ProfileGenerator):

WebCore:

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

Reviewed by Darin.

-Minor cleanup. Renamed callTree() to head() and no longer use m_head
directly but instead keep it private and access via a method().

  • page/JavaScriptProfile.cpp: (WebCore::getHeadCallback):
1:38 PM Memory Use edited by ggaren@apple.com
(diff)
1:35 PM Memory Use edited by ggaren@apple.com
(diff)
12:31 PM Changeset in webkit [35101] by dino@apple.com
  • 5 edits
    1 add in trunk/WebCore

When a mask image changes, ensure that elements
that use that mask image are repainted correctly.

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

Reviewed by Dave Hyatt

  • manual-tests/canvas-mask-redraw.html Manual testcase
  • rendering/RenderBox.cpp: (WebCore::RenderBox::imageChanged): (WebCore::RenderBox::repaintLayerRectsForImage):
  • rendering/RenderBox.h: Loop through background layers and mask layers, and if this image is used in a layer, compute a repaint rect and repaint.
  • rendering/RenderImage.cpp: (WebCore::RenderImage::imageChanged): If this image has a mask, call the base class method.
  • rendering/RenderObject.cpp: Remove a bogus 'return'.
12:05 PM Changeset in webkit [35100] by dino@apple.com
  • 3 edits
    2 adds in trunk

Transforms create a containing block, so
RenderLayer::shouldBeOverflowOnly() needs to look for transforms.
<https://bugs.webkit.org/show_bug.cgi?id=18886>

Reviewed by Dave Hyatt

Test: fast/transforms/transform-overflow.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::shouldBeOverflowOnly):

11:08 AM Changeset in webkit [35099] by Adam Roben
  • 2 edits in trunk/WebKit/win

Windows build fix

  • WebKit.vcproj/resource.h: Revert some changes that VS made to this file in r35083.
10:59 AM Changeset in webkit [35098] by andersca@apple.com
  • 3 edits in trunk/WebKit/mac

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

Reviewed by Mark.


Add availability macros for the new WebPlugin methods.

  • Plugins/WebPlugin.h:
  • Plugins/WebPluginViewFactory.h:
10:55 AM Changeset in webkit [35097] by ap@webkit.org
  • 7 edits
    2 deletes in trunk/JavaScriptCore

Reviewed by Mark Rowe.

Eliminate CollectorHeapIntrospector.

CollectorHeapIntrospector was added primarily in the hopes to improve leaks tool output,
a result that it didn't deliver. Also, it helped by labeling JSC heap regions as reported by
vmmap tool, but at the same time, it made them mislabeled as malloc'd ones - the correct
way to label mapped regions is to use a VM tag.

So, it makes more sense to remove it completely than to make it work with multiple heaps.

  • JavaScriptCore.exp:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/AllInOneFile.cpp:
  • kjs/InitializeThreading.cpp: (KJS::initializeThreading):
  • kjs/collector.cpp:
  • kjs/collector.h:
  • kjs/CollectorHeapIntrospector.cpp: Removed.
  • kjs/CollectorHeapIntrospector.h: Removed.
10:33 AM Changeset in webkit [35096] by kmccullough@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-07-09 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

<rdar://problem/5951532> JSProfiler: Implement heavy (or bottom-up)
view (19228)

  • Implemented the time and call count portionof heavy. Now all that we need is some UI.
  • profiler/CallIdentifier.h: Removed an unused constructor.
  • profiler/HeavyProfile.cpp: (KJS::HeavyProfile::HeavyProfile): Set the initial time of the head node so that percentages work correctly. (KJS::HeavyProfile::mergeProfiles): Sum the times and call count of nodes being merged.
  • profiler/ProfileNode.cpp: Set the intital values of time and call count when copying ProfileNodes. (KJS::ProfileNode::ProfileNode):
3:01 AM Changeset in webkit [35095] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

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

Gtk build fix.

  • GNUmakefile.am: Add HeavyProfile.cpp
12:12 AM Changeset in webkit [35094] by oliver@apple.com
  • 60 edits
    9 deletes in trunk/WebCore

2008-07-09 Alex Mathews <possessedpenguinbob@gmail.com>

Reviewed by Oliver Hunt.

bug 19835: WebKit needs cross-platform filter system
<https://bugs.webkit.org/show_bug.cgi?id=19835>

More class refactoring in preparation for cross-platform filter
implementation.

Jul 9, 2008:

10:52 PM Changeset in webkit [35093] by mrowe@apple.com
  • 4 edits in tags/Safari-6527.1

Versioning.

10:52 PM Changeset in webkit [35092] by mrowe@apple.com
  • 12 edits in tags/Safari-6527.1

Merge r35089.

10:40 PM Changeset in webkit [35091] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

10:38 PM Changeset in webkit [35090] by mrowe@apple.com
  • 1 copy in tags/Safari-6527.1

New tag.

10:32 PM Changeset in webkit [35089] by mrowe@apple.com
  • 12 edits in trunk

Don't warn about deprecated functions in production builds.

Reviewed by Geoff Garen.

9:51 PM Changeset in webkit [35088] by beidson@apple.com
  • 6 edits
    3 adds in trunk

WebCore:

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

Reviewed by Darin

<rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
has been installed in a frame tree.

The root of this problem was that calling init() on a new frame could end up calling arbitrary
javascript that might end up removing the frame from the tree. This opened up a small can of worms
such as the frame not having yet been installed in its frame tree, and other assumed behavior while
destroying the frame.

Test: fast/loader/frame-creation-removal.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::endIfNotLoadingMainResource): If the frame doesn't have a page, don't close up the document and parser because they don't exist, and this frame is on its way out. (WebCore::FrameLoader::finishedParsing): We can't rely on the refCount check to discover "am I being deleted?" because we no longer store refCounts of 0. The new check is "do I have a FrameView?" while will always be false if the Frame is being destroyed.

WebKit/mac:

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

Reviewed by Darin

<rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
has been installed in a frame tree.

The root of this problem was that calling init() on a new frame could end up calling arbitrary
javascript that might end up removing the frame from the tree. This opened up a small can of worms
such as the frame not having yet been installed in its frame tree, and other assumed behavior while
destroying the frame.

Note that each platforms WebKit API layer needs to make this new guarantee:
"The new Frame must be installed in its FrameTree before newCoreFrame->init() is called"
I am fixing Mac, and Windows and GTK already have this property. Wx currently has subframes disabled
but will need to add this guarantee when re-enabling, and Qt is currently vulnerable to this same bug.

Alternately, the way frames are created right now is roundabout and asinine, and this is a key
architectural improvement we can make in the future so the individual platform clients are no longer
vulnerable to this problem, which should really have been a WebCore issue.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createFrame): Don't bother null checking the newCoreFrame - can't be NULL. Don't appendChild() the new frame here. Null-check the new frame's page before loading the URL into it, as it might already have been removed from the page.
  • WebView/WebFrame.mm: (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): If there is an ownerElement, go ahead and install the new frame in the frame tree *before* calling init() on it.

LayoutTests:

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

Reviewed by Darin

Test for <rdar://problem/5823684>

  • fast/loader/frame-creation-removal-expected.txt: Added.
  • fast/loader/frame-creation-removal.html: Added.
  • fast/loader/resources/frame-creation-removal-iframe.html: Added.
9:32 PM Changeset in webkit [35087] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-07-09 Darin Adler <Darin Adler>

8:33 PM Memory Use edited by ggaren@apple.com
(diff)
8:31 PM WikiStart edited by ggaren@apple.com
(diff)
8:31 PM Memory Use edited by ggaren@apple.com
(diff)
8:30 PM Memory Use created by ggaren@apple.com
8:11 PM Changeset in webkit [35086] by dino@apple.com
  • 2 edits in trunk/WebCore

Changed to use the correct license in header comment (via Darin)

  • css/WebKitCSSTransformValue.idl:
6:39 PM Changeset in webkit [35085] by kevino@webkit.org
  • 2 edits in trunk/JavaScriptCore

wx biuld fix. Add HeavyProfile.cpp to build files.

6:02 PM Changeset in webkit [35084] by dino@apple.com
  • 9 edits
    1 add in trunk/WebCore

Add DOM interface for WebKitCSSTransformValue.
https://bugs.webkit.org/show_bug.cgi?id=19863

Reviewed by Hyatt.

  • bindings/objc/DOMInternal.h:
  • css/WebKitCSSTransformValue.idl: Added.
  • bindings/scripts/CodeGeneratorObjC.pm:

make sure new class inherits from CSSValue not Node

  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:

Adding new generated files

5:22 PM Changeset in webkit [35083] by britto@apple.com
  • 19 edits
    3 adds in trunk

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

Reviewed by NOBODY (OOPS!).

http://bugs.webkit.org/show_bug.cgi?id=14227
Add the middle click panning feature to the windows release.
Details on almost each method below.
Manual test is included in the patch.

  • ChangeLog:
  • WebCore.vcproj/WebCore.vcproj:
  • manual-tests/panScroll.html: Added.
  • manual-tests/resources/big-page.html: Added.
  • page/EventHandler.cpp: Added the panScroll start/stop handlers and adapted the autoscroll for both to share some functions. (WebCore::EventHandler::EventHandler): Initialize the new class members for the panScroll (WebCore::EventHandler::handleMouseDraggedEvent): Prevent the autoscroll to trigger if the panScroll is in progress (WebCore::EventHandler::handleMouseReleaseEvent): Prevent the autoscroll to stop the panScroll on mouse release (WebCore::EventHandler::handleAutoscroll): Added the specific calls for the panScroll (save mouse position, draw the panScroll icon) to the shared code (WebCore::EventHandler::autoscrollTimerFired): Specify the calls to perform for each function (autoscroll and panScroll) (WebCore::EventHandler::stopAutoscrollTimer): Specify the calls to perform for each function (autoscroll and panScroll) (WebCore::EventHandler::handleMousePressEvent): Trigger for the panScroll. Test is the button is the middle button and try to find a renderer where the panScroll is possible. If it finds one, it calls the handleAutoscroll method.
  • page/EventHandler.h: (WebCore::EventHandler::panScrollInProgress): Getter used by the sub frames's EventHandler to notice the main frame EventHandler (WebCore::EventHandler::setPanScrollInProgress): Setter used by the sub frames's EventHandler to notice the main frame EventHandler
  • platform/ScrollView.h: Added a method used by the RenderObject to test if the view can be scrolled. Added the print/remove panScroll icon methods between the windows platform flags
  • platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::isScrollable): Not implemented : returns true
  • platform/mac/ScrollViewMac.mm: Implemented because it was useful for the autoscroll feature. (WebCore::ScrollView::isScrollable):
  • platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::isScrollable): Not implemented : returns true
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added a boolean and an IntPoint to draw the icon. (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): If the icon must be drawn, define the rect to invalidate to erase the previous icon and to display the new one. (WebCore::ScrollView::updateContents): I split this method to be able to invalidate a rect with window coordinates instead of contents coordinates. This function now converts the contents coord in window coord and calls the new updateWindowRect() method (WebCore::ScrollView::updateWindowRect): New method which performs the work that was doing the end of the old updateContents : invalidate a rect with window coordinates (WebCore::ScrollView::isScrollable): checks is the view has scrollbars (WebCore::ScrollView::printPanScrollIcon): sets the boolean and the IntPoint for the icon. Invalidate his rect and ask for repaint. (WebCore::ScrollView::removePanScrollIcon): sets the boolean to false. Invalidate his rect and ask for repaint. (WebCore::ScrollView::paint): Modified to draw the icon if needed.
  • platform/wx/ScrollViewWx.cpp: (WebCore::ScrollView::isScrollable): Not implemented : returns true
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::panScrollFromPoint): Receives the Middle click location and retrieves the currentMouse position from the EventHandler. With these informations it computes the direction to scroll to and the speed then calls for the final scroll.
  • rendering/RenderLayer.h:
  • rendering/RenderListBox.cpp: Adapt the panScroll to the ListBox object to scroll by lines instead of pixels (WebCore::RenderListBox::panScroll): (WebCore::RenderListBox::scrollToward): (WebCore::RenderListBox::autoscroll):
  • rendering/RenderListBox.h: (WebCore::RenderListBox::shouldPanScroll):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::shouldAutoscroll): Improved the verification to avoid triggering the autoscroll/panScroll when the root object can't scroll (WebCore::RenderObject::panScroll): Calls the RenderLayer's panScrollFromPoint() method
  • rendering/RenderObject.h: (WebCore::RenderObject::stopPanScroll):

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

Reviewed by NOBODY (OOPS!).


Added the panning icon in the ressources.
Its name is compass.png to make a difference with moveCursor.png (from the WebCore ressources)

  • ChangeLog:
  • WebKit.vcproj/WebKit.rc:
  • WebKit.vcproj/panIcon.png: Added.
  • WebKit.vcproj/resource.h:
  • WebKitDLL.cpp: Declared the new ressource with the name "panIcon" (loadResourceIntoBuffer):
5:17 PM Changeset in webkit [35082] by eric@webkit.org
  • 5 edits in trunk

Reviewed by bdash.

Fix copying of expected results to correct location

  • Scripts/run-webkit-tests:
5:12 PM Changeset in webkit [35081] by dino@apple.com
  • 10 edits
    2 moves in trunk/WebCore

Rename CSSTransformValue to WebKitCSSTransformValue as it is non-standard for
the moment. Also, WebKitCSSTransformValue is a CSSValueList (comma sep)
https://bugs.webkit.org/show_bug.cgi?id=19861

Reviewed by Hyatt

  • css/CSSParser.cpp:
  • css/CSSStyleSelector.cpp:
  • css/CSSTransformValue.cpp: Removed.
  • css/CSSTransformValue.h: Removed.
  • css/CSSValueList.h:
  • css/WebKitCSSTransformValue.cpp: Added.
  • css/WebKitCSSTransformValue.h: Added.
  • GNUmakefile.am:
  • WebCore.order:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:

updated for new file names

4:37 PM Changeset in webkit [35080] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-07-09 Kevin McCullough <kmccullough@apple.com>

  • Windows build fix.
4:24 PM Changeset in webkit [35079] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-07-09 Kevin McCullough <kmccullough@apple.com>

  • Build fix.
  • profiler/HeavyProfile.cpp: (KJS::HeavyProfile::mergeProfiles):
4:17 PM Changeset in webkit [35078] by eric@webkit.org
  • 8 edits
    3 adds in trunk

Updated printing test patch

4:07 PM Changeset in webkit [35077] by kmccullough@apple.com
  • 9 edits
    2 adds in trunk/JavaScriptCore

2008-07-09 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff and Adam.

<rdar://problem/5951532> JSProfiler: Implement Bottom-Up view (19228)

  • This is the plumbing for bottom-up, but does not include calculating time, mostly because I'm still undclear about what the end result should look like.
  • This, obviously, does not include the UI to expose this in the inspector yet.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • profiler/CallIdentifier.h: (KJS::CallIdentifier::CallIdentifier): (WTF::): Added HashTraits for CallIdentifiers to be used by a HashMap.
  • profiler/HeavyProfile.cpp: Added. (KJS::HeavyProfile::HeavyProfile): (KJS::HeavyProfile::generateHeavyStructure): (KJS::HeavyProfile::addNode): (KJS::HeavyProfile::mergeProfiles): (KJS::HeavyProfile::addAncestorsAsChildren):
  • profiler/HeavyProfile.h: Added. (KJS::HeavyProfile::create): (KJS::HeavyProfile::heavyProfile): (KJS::HeavyProfile::treeProfile):
  • profiler/Profile.cpp: Removed old commented out includes.
  • profiler/Profile.h: The m_head is needed by the HeavyProfile so it is now protected as opposed to private.
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): Created a constructor to copy ProfileNodes. (KJS::ProfileNode::findChild): Added a null check to make HeavyProfile children finding easier and avoid a potential crasher.
  • profiler/ProfileNode.h: Mostly moved things around but also added some functionality needed by HeavyProfile. (KJS::ProfileNode::create): (KJS::ProfileNode::functionName): (KJS::ProfileNode::url): (KJS::ProfileNode::lineNumber): (KJS::ProfileNode::head): (KJS::ProfileNode::setHead): (KJS::ProfileNode::setNextSibling): (KJS::ProfileNode::actualTotalTime): (KJS::ProfileNode::actualSelfTime):
  • profiler/TreeProfile.cpp: Implemented the ability to get a HeavyProfile. (KJS::TreeProfile::heavyProfile):
  • profiler/TreeProfile.h:
3:42 PM Changeset in webkit [35076] by eric@webkit.org
  • 6 edits
    20 moves in trunk

Reviewed by weinig.

Add Content-Type support to DumpRenderTree and run-webkit-tests
and move expected.txt files to expected.webarchive

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

  • DumpRenderTree/cg/ImageDiffCG.cpp: (compareImages): (main):
  • DumpRenderTree/cg/PixelDumpSupportCG.cpp: (printPNG):
  • DumpRenderTree/mac/DumpRenderTree.mm: (dump):
  • Scripts/run-webkit-tests:
2:30 PM Changeset in webkit [35075] by adele@apple.com
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

Fixing my typo from the last checkin

2:11 PM Changeset in webkit [35074] by hyatt@apple.com
  • 4 edits in trunk/WebCore

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

Switch transitions back to a "destination" model as far as choosing which transitions should apply on a style
change. Preserve the behavior of allowing stale transitions (in the absence of property changes) to run to
completion.

Reviewed by Dean

  • manual-tests/transitions.html:
  • manual-tests/transitions2.html:
  • page/AnimationController.cpp: (WebCore::ImplicitAnimation::reset): (WebCore::CompositeImplicitAnimation::animate): (WebCore::AnimationControllerPrivate::get): (WebCore::AnimationController::updateImplicitAnimations):
1:46 PM Changeset in webkit [35073] by adele@apple.com
  • 5 edits in trunk/WebCore

2008-07-09 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Added the virtual function Node::isTextControl() in order to simplify text field and textarea checks.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Clean up in PseudoReadOnly and PseudoReadWrite cases removing unnecessary checks and casts in favor of the sole isTextControl() check.
  • dom/Node.h: Added base isTextControl().
  • html/HTMLInputElement.h: Added isTextControl() which wraps HTMLInputElement::isTextField().
  • html/HTMLTextAreaElement.h: Added isTextControl().
1:36 PM Changeset in webkit [35072] by rwlbuis@webkit.org
  • 66 edits in trunk

Reviewed by Eric.

https://bugs.webkit.org/show_bug.cgi?id=15431
SVGRenderStyle should store pre-modified resource URIs

Store pre-modified resource URIs to decrease string
operations during layout/rendering.

12:55 PM Changeset in webkit [35071] by andersca@apple.com
  • 5 edits in trunk/WebKit/mac

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

Reviewed by Darin.

Make some WebPlugin and WebPluginFactory SPI public.


  • Plugins/WebPlugin.h:
  • Plugins/WebPluginPrivate.h:
  • Plugins/WebPluginViewFactory.h:
  • Plugins/WebPluginViewFactoryPrivate.h:
11:35 AM Changeset in webkit [35070] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Mitz.

Remove an unused instance variable.

  • loader/DocumentLoader.h:
10:23 AM Changeset in webkit [35069] by mitz@apple.com
  • 9 edits in trunk/WebCore

Reviewed by Anders Carlsson.

  • remove unused #includes
  • dom/XMLTokenizer.cpp:
  • html/PreloadScanner.cpp:
  • loader/CachedCSSStyleSheet.cpp:
  • loader/CachedScript.cpp:
  • loader/CachedXBLDocument.cpp:
  • loader/CachedXSLStyleSheet.cpp:
  • page/mac/FrameMac.mm:
  • xml/XSLTProcessor.cpp:

Jul 8, 2008:

11:28 PM Changeset in webkit [35068] by ggaren@apple.com
  • 5 edits in trunk

JavaScriptCore:

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

Reviewed by Oliver Hunt.


Added support for checking if an object has custom properties in its
property map. WebCore uses this to optimize marking DOM wrappers.

WebCore:

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

Reviewed by Oliver Hunt.


Only artificially mark JS DOM wrappers if they have custom properties.


21X speedup on http://nerget.com/jstests/dom-mandelbrot.html.


No, that is not a typo.

  • bindings/js/JSDOMBinding.cpp: (WebCore::ScriptInterpreter::markDOMNodesForDocument):
4:46 PM Changeset in webkit [35067] by jhoneycutt@apple.com
  • 5 edits in trunk

2008-07-08 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

Port r34988 to Mac: don't call NPP_DestroyStream if NPP_NewStream was
unsuccessful.

  • Plugins/WebBaseNetscapePluginStream.h: Added new member, newStreamSuccessful.
  • Plugins/WebBaseNetscapePluginStream.mm: (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): Initialize new member. (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): If NPP_NewStream is successful, set newStreamSuccessful to YES. (-[WebBaseNetscapePluginStream _destroyStream]): Only call NPP_DestroyStream if newStreamSuccessful is true.

Port r34988 to Mac: allow tests to define JavaScript to execute when
NPP_DestroyStream or NPP_URLNotify is called.

  • DumpRenderTree/TestNetscapePlugIn.subproj/main.cpp: (NPP_New): Remove initialization that happens in pluginAllocate. Look for new arguments onStreamDestroy and onURLNotify. (NPP_Destroy): Free onStreamDestroy and onURLNotify. (executeScript): Code moved from onStreamLoad. (NPP_NewStream): Call executeScript. (NPP_DestroyStream): Same. (NPP_URLNotify): Same.
3:32 PM Changeset in webkit [35066] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

Fix to previous patch for handling mouse up events.

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

1:20 PM Changeset in webkit [35065] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Brady Eidson.

  • initialize the Archives log channel's state
  • platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
11:45 AM Changeset in webkit [35064] by dino@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

2008-07-08 Simon Fraser <Simon Fraser>

Reviewed by Darin.

Dean forgot to add this file needed for the tests.

  • traversal/resources/node-iterator-009-data.xml: Added.
11:38 AM Changeset in webkit [35063] by kmccullough@apple.com
  • 1 edit
    1 add in trunk/WebCore

2008-07-08 Kevin McCullough <kmccullough@apple.com>

Added manual test for the new heavy view.

  • manual-tests/inspector/profiler-test-heavy-view.html: Added.
9:40 AM Changeset in webkit [35062] by Darin Adler
  • 2 edits in trunk/WebCore

2008-07-08 Darin Adler <Darin Adler>

Reviewed by Mitz.

  • fix <rdar://problem/6043731> REGRESSION (3-4): RedEnvelope.com looks wrong due to OpenCube QuickMenu appVersion check
  • page/Navigator.cpp: (WebCore::shouldHideFourDot): Add dqm_loader.js as another filename.
9:24 AM Changeset in webkit [35061] by mitz@apple.com
  • 18 edits in trunk

WebCore:

Reviewed by John Sullivan.

  • WebCore part of <rdar://problem/6008409> Need a way to disable updates in offscreen views

Added a setting, updatesWhenOffscreen(), which controls whether an
offscreen web view gets marked as needing update when its contents
change (the existing behavior) or not (a new behavior), in which case it
will be marked as needing update just before it goes on screen. The
existing behavior (updating while offscreen) remains the default.

  • WebCore.base.exp: Added Settings::setUpdatesWhenOffscreen().
  • page/FrameView.cpp: (WebCore::FrameView::shouldUpdateWhenOffscreen): Added. Returns the value from settings.
  • page/FrameView.h:
  • page/Settings.cpp: (WebCore::Settings::setUpdatesWhenOffscreen): Added.
  • page/Settings.h: (WebCore::Settings::updatesWhenOffscreen): Added.
  • platform/ScrollView.h:
  • platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::updateContents): Added code to return early and not call -setNeedsDisplayInRect: if the view is not in a visible window and the setting is not to update when offscreen.

WebKit/mac:

Reviewed by John Sullivan.

  • WebKit part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
  • WebView/WebHTMLView.mm: (-[WebHTMLView addWindowObservers]): Added code to observe when the window goes onscreen. (-[WebHTMLView removeWindowObservers]): Added. (-[WebHTMLView windowWillOrderOnScreen:]): Added. If the view is set to not update when offscreen, calls -setNeedsDisplay: just before it comes onscreen.
  • WebView/WebPreferenceKeysPrivate.h: Added preference key.
  • WebView/WebPreferences.m: (+[WebPreferences initialize]): Made updates when offscreen on by default. (-[WebPreferences updatesWhenOffscreen]): Added. (-[WebPreferences setUpdatesWhenOffscreen:]): Added.
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): Added code to update the updatesWhenOffscreen setting in WebCore.

WebKitLibraries:

Reviewed by John Sullivan.

  • WebKitSystemInterface part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
  • WebKitSystemInterface.h: Added WKWindowWillOrderOnScreenNotification.
  • libWebKitSystemInterfaceLeopard.a: Updated.
  • libWebKitSystemInterfaceTiger.a: Updated.
8:45 AM Changeset in webkit [35060] by ap@webkit.org
  • 2 edits in trunk/JavaScriptGlue

Reviewed by Darin.

<rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
Apple Installer

The problem was that JSUserObject::getCallData() was setting call type to native, but
left callData.native.function uninitialized.

  • JSObject.cpp: (JSUserObject::getCallData): Initialize callData.native.function. (nativeCallFunction): Call UserObjectImp::callAsFunction().
1:29 AM Changeset in webkit [35059] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

Prospective Gtk/Wx build fixes, add ProfileGenerator.cpp to the build.

1:22 AM Changeset in webkit [35058] by Simon Hausmann
  • 4 edits in trunk

Fix the Qt build and the SVG filter enabled build in general.

Jul 7, 2008:

9:17 PM Changeset in webkit [35057] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Anders Carlsson.

Remove extraneous null check.

  • dom/Node.cpp: (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):
9:15 PM Changeset in webkit [35056] by weinig@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

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

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
Use of CSS3 Namespaces syntax in Selectors API should throw an exception

  • Throw an NAMESPACE_ERR exception if a non-null or "*" namespace is used in a selector passed to querySelector or querySelectorAll.

Test: fast/dom/SelectorAPI/not-supported-namespace-in-selector.html

  • dom/Node.cpp: (WebCore::selectorNeedsNamespaceResolution): (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):

LayoutTests:

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

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
Use of CSS3 Namespaces syntax in Selectors API should throw an exception

  • fast/dom/SelectorAPI/not-supported-namespace-in-selector-expected.txt: Added.
  • fast/dom/SelectorAPI/not-supported-namespace-in-selector.html: Added.
8:30 PM Changeset in webkit [35055] by ddkilzer@apple.com
  • 4 edits in trunk/JavaScriptCore

releaseFastMallocFreeMemory() should always be defined

Reviewed by Darin.

  • JavaScriptCore.exp: Changed to export C++ binding for WTF::releaseFastMallocFreeMemory() instead of C binding for releaseFastMallocFreeMemory().
  • wtf/FastMalloc.cpp: Moved definitions of releaseFastMallocFreeMemory() to be in the WTF namespace regardless whether FORCE_SYSTEM_MALLOC is defined.
  • wtf/FastMalloc.h: Moved releaseFastMallocFreeMemory() from extern "C" binding to WTF::releaseFastMallocFreeMemory().
8:19 PM Changeset in webkit [35054] by dino@apple.com
  • 18 edits
    4 adds in trunk

2008-07-07 Simon Fraser <Simon Fraser>

Reviewed by Darin.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19933
nodeIterator with filter fails on documents not in a frame

Tests: traversal/node-iterator-009.html

traversal/tree-walker-006.html

  • bindings/js/JSNodeFilterCondition.cpp:
  • bindings/js/JSNodeFilterCondition.h:
  • bindings/js/JSNodeFilterCustom.cpp:
  • bindings/js/JSNodeIteratorCustom.cpp:
  • bindings/js/JSTreeWalkerCustom.cpp:
  • bindings/objc/DOM.mm:
  • dom/NodeFilter.cpp:
  • dom/NodeFilter.h:
  • dom/NodeFilterCondition.cpp:
  • dom/NodeFilterCondition.h:
  • dom/NodeIterator.cpp:
  • dom/NodeIterator.h:
  • dom/Traversal.cpp:
  • dom/Traversal.h:
  • dom/TreeWalker.cpp:
  • dom/TreeWalker.h:


6:25 PM Changeset in webkit [35053] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-07-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19926: URL causes crash within a minute
<https://bugs.webkit.org/show_bug.cgi?id=19926>

Add a check that lastGlobalObject is non-null in Machine::execute()
before copying its globals to the current register file.

In theory, it is possible to make a test case for this, but it will
take a while to get it right.

  • VM/Machine.cpp: (KJS::Machine::execute):
6:13 PM Changeset in webkit [35052] by adele@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

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

Reviewed by Dan Bernstein.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19924
<rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.

  • page/DragController.cpp: (WebCore::DragController::concludeDrag): Check that the file control is enabled before taking dropped files.

LayoutTests:

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

Reviewed by Dan Bernstein.

Test for https://bugs.webkit.org/show_bug.cgi?id=19924
<rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.

  • fast/forms/dragging-to-disabled-file-input-expected.txt: Added.
  • fast/forms/dragging-to-disabled-file-input.html: Added.
5:46 PM Changeset in webkit [35051] by adele@apple.com
  • 6 edits in trunk

WebCore:

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

Reviewed by Beth.

Fix for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime

Change default volume setting to 1.0.

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement):
  • platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer):

LayoutTests:

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

Reviewed by Beth.

Test for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime

  • media/video-volume-expected.txt:
  • media/video-volume.html:
5:29 PM Changeset in webkit [35050] by Darin Adler
  • 4 edits in trunk/WebCore

2008-07-07 Darin Adler <Darin Adler>

Reviewed by Mark Rowe.

  • fix <rdar://problem/6020441> REGRESSION: Layers on NWA.com render ugly

The old version of the OpenCube QuickMenu library used on this site still has code
that detects Netscape 4 by checking appVersion to see if it has the substring "4."
in it. We decided to special-case the filename of the script and tweak the appVersion
for files with that name.

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::ScriptController): Replace m_processingInlineCode with m_sourceURL. Use false instead of 0 to initialize a boolean. (WebCore::ScriptController::evaluate): Call argument sourceURL, not filename. Store current sourceURL in m_sourceURL. This fixes a mistake in the code that maintained the value of m_processingInlineCode, since the old code set it to false rather than restoring it. Renamed a local variable named sourceURL to exceptionSourceURL for clarity. (WebCore::ScriptController::processingUserGesture): Code that formerly used m_processingInlineCode to detect that it was evaluating code with no URL now uses m_sourceURL to do the same check.
  • bindings/js/ScriptController.h: Renamed filename argument to sourceURL; it has always been a URL, not a file path. Added a public sourceURL function and m_sourceURL and removed m_processingInlineCode.
  • page/Navigator.cpp: (WebCore::shouldHideFourDot): Added. Returns true if the currently running script has a source URL ending in "/dqm_script.js" and if the settings say we should do site-specific quirks (really JavaScript-library-specific in this case). (WebCore::Navigator::appVersion): Replace "4." with "4_" if shouldHideFourDot is true.
4:51 PM Changeset in webkit [35049] by cwzwarich@webkit.org
  • 2 edits in trunk/WebCore

2008-07-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19907: REGRESSION(r34824-r34941): Reproducible crash trying to log in to MediaTemple.net Account Center
<https://bugs.webkit.org/show_bug.cgi?id=19907>

Clear exceptions set on ExecStates before returning from NPAPI
callbacks, in order to avoid causing problems for the next script that
executes.

While fixing this bug, the question was raised of whether we are
correctly propagating exception information back to the caller:

Bug 19936: Correctly propagate exception information from NPAPI callbacks
<https://bugs.webkit.org/show_bug.cgi?id=19936>

  • bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_Enumerate):
4:26 PM Changeset in webkit [35048] by Beth Dakin
  • 5 edits
    2 adds in trunk

WebKitTools:

2008-07-07 Beth Dakin <Beth Dakin>

Reviewed by Anders.

This patch extends DRT accessibility tests to add the ability to
query the intValue, minValue, and maxValue of the focused element.

  • DumpRenderTree/AccessibilityController.cpp: (intValueOfFocusedElementCallback): (minValueOfFocusedElementCallback): (maxValueOfFocusedElementCallback): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::intValueOfFocusedElement): (AccessibilityController::minValueOfFocusedElement): (AccessibilityController::maxValueOfFocusedElement):

LayoutTests:

2008-07-07 Beth Dakin <Beth Dakin>

Reviewed by Anders.

New test that uses the ability to query int value, min value, and
max value in the accessibility tests.

  • accessibility/aria-range-value-expected.txt: Added.
  • accessibility/aria-range-value.html: Added.
4:07 PM Changeset in webkit [35047] by mitz@apple.com
  • 5 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix <rdar://problem/6057650> REGRESSION (r35025): Crash beneath FontCache::invalidate() when activating Safari with no windows open
  • css/CSSFontFaceSource.cpp: (WebCore::CSSFontFaceSource::getFontData): Added a null check because docLoader() can return 0 now.
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::docLoader): Added a null check of m_document. (WebCore::CSSFontSelector::addFontFaceRule): Ditto. (WebCore::CSSFontSelector::fontLoaded): Ditto. (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto. (WebCore::fontDataForGenericFamily): Added a null check of document.
  • css/CSSFontSelector.h: (WebCore::CSSFontSelector::clearDocument): Added.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a call to CSSFontSelector::clearDocument(). When the style selector is destroyed, there is no guarantee that the document will continue to exist.
3:39 PM Changeset in webkit [35046] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-07-07 Darin Adler <Darin Adler>

Rubber stamped by Adele.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Fix a typo in a comment.
3:38 PM Changeset in webkit [35045] by jchaffraix@webkit.org
  • 3 edits in trunk/WebCore

WebCore:

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

Not reviewed.

No svg build fix.

  • DerivedSources.make: Add JSSVGElementWrapperFactory.cpp target.
  • svg/animation/SMILTimeContainer.cpp: Add ENABLE(SVG) guard.
3:33 PM Changeset in webkit [35044] by sfalken@apple.com
  • 5 edits in trunk

JavaScriptCore:

2008-07-07 Steve Falkenburg <sfalken@apple.com>

Build fixes.

WebKitTools:

2008-07-07 Steve Falkenburg <sfalken@apple.com>

Fix build.

  • DumpRenderTree/win/ImageDiff.vcproj:
3:02 PM Changeset in webkit [35043] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Darin.

Speculative fix for
<rdar://problem/5839800>
CrashTracer: [USER] 5802 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389


Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins].


My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications.
This is usually protected by _private->closed, but in this case it might still be false.

  • WebView/WebHTMLView.mm: (-[WebHTMLView close]):
2:34 PM Changeset in webkit [35042] by adele@apple.com
  • 5 edits
    10 adds in trunk

WebCore:

2008-07-07 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Support for CSS3 :read-only and :read-write pseudoclasses for readonly text controls.

URL: http://www.w3.org/TR/web-forms-2/#relation

Tests: fast/css/readonly-pseudoclass-opera-001.html

fast/css/readonly-pseudoclass-opera-002.html
fast/css/readonly-pseudoclass-opera-003.html
fast/css/readonly-pseudoclass-opera-004.html
fast/css/readonly-pseudoclass-opera-005.html

  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added "read-only" and "read-write" values for PseudoType extraction.
  • css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoReadOnly and PseudoReadWrite entries in PseudoType enum.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Checks to determine whether to match :read-only and :read-write pseudoclasses on text controls.

LayoutTests:

2008-07-07 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Test suite for :read-only and :read-write pseudoclasses, imported from
Opera.

  • fast/css/readonly-pseudoclass-opera-001-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-001.html: Added.
  • fast/css/readonly-pseudoclass-opera-002-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-002.html: Added.
  • fast/css/readonly-pseudoclass-opera-003-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-003.html: Added.
  • fast/css/readonly-pseudoclass-opera-004-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-004.html: Added.
  • fast/css/readonly-pseudoclass-opera-005-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-005.html: Added.
2:29 PM Changeset in webkit [35041] by weinig@apple.com
  • 6 edits
    2 adds in trunk

WebCore:

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

Reviewed by Geoffrey Garen.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
querySelectorAll should throw an exception if a NSResolver is passed in.

  • Throw an NOT_SUPPORTED_ERR if a non-null or undefined parameter is passed as the second argument to querySelector or querySelectorAll.

Test: fast/dom/SelectorAPI/not-supported-NSResolver.html

  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::querySelector): (WebCore::JSDocument::querySelectorAll):
  • bindings/js/JSElementCustom.cpp: (WebCore::JSElement::querySelector): (WebCore::JSElement::querySelectorAll):
  • dom/Document.idl:
  • dom/Element.idl:

LayoutTests:

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

Reviewed by Geoffrey Garen.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
querySelectorAll should throw an exception if a NSResolver is passed in.

  • fast/dom/SelectorAPI/not-supported-NSResolver-expected.txt: Added.
  • fast/dom/SelectorAPI/not-supported-NSResolver.html: Added.
1:35 PM Changeset in webkit [35040] by beidson@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

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

Reviewed by Mitz and Geoff

Test: fast/loader/empty-ref-versus-no-ref.html

Fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>
"all DOM operations stop working when location.hash set to '#'"

The underlying problem is that KURL didn't really know the difference between "empty ref"
and "no ref at all" when changing the ref. So changing to the empty ref in JS ended up
affecting removal of the ref, which ended up causing an infinite load load, also killing
javascript.

  • platform/KURL.cpp: (WebCore::KURL::setRef): Changed "isEmpty()" to "isNull()", since NULL has the special meaning of "no ref at all" while empty means "empty ref"

LayoutTests:

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

Reviewed by Mitz and Geoff

Test the fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>

  • fast/loader/empty-ref-versus-no-ref-expected.txt: Added.
  • fast/loader/empty-ref-versus-no-ref.html: Added.
11:12 AM Changeset in webkit [35039] by kmccullough@apple.com
  • 10 edits
    2 adds in trunk

JavaScriptCore:

2008-07-07 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

When the profiler is running it gathers information and creates a
Profile. After it finishes the Profile can be sorted and have other
data refinements run over it. Both of these were done in the same class
before. Now I split the gathering operations into a new class called
ProfileGenerator.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • profiler/Profile.cpp: Removed code related to the gather stage of a Profile's creation. (KJS::Profile::create): (KJS::Profile::Profile):
  • profiler/Profile.h: Ditto. (KJS::Profile::title): (KJS::Profile::callTree): (KJS::Profile::setHead):
  • profiler/ProfileGenerator.cpp: Added. This is the class that will handle the stage of creating a Profile. Once the Profile is finished being created, this class goes away. (KJS::ProfileGenerator::create): (KJS::ProfileGenerator::ProfileGenerator): (KJS::ProfileGenerator::title): (KJS::ProfileGenerator::willExecute): (KJS::ProfileGenerator::didExecute): (KJS::ProfileGenerator::stopProfiling): (KJS::ProfileGenerator::didFinishAllExecution): (KJS::ProfileGenerator::removeProfileStart): (KJS::ProfileGenerator::removeProfileEnd):
  • profiler/ProfileGenerator.h: Added. (KJS::ProfileGenerator::profile): (KJS::ProfileGenerator::originatingGlobalExec): (KJS::ProfileGenerator::pageGroupIdentifier): (KJS::ProfileGenerator::client): (KJS::ProfileGenerator::stoppedProfiling):
  • profiler/Profiler.cpp: Now operates with the ProfileGenerator instead of the Profile. (KJS::Profiler::startProfiling): (KJS::Profiler::stopProfiling): (KJS::Profiler::didFinishAllExecution): It is here that the Profile is handed off to its client and the Profile Generator is no longer needed. (KJS::dispatchFunctionToProfiles): (KJS::Profiler::willExecute): (KJS::Profiler::didExecute):
  • profiler/Profiler.h: Cleaned up the includes and subsequently the forward declarations. Also use the new ProfileGenerator. (KJS::ProfilerClient::~ProfilerClient): (KJS::Profiler::currentProfiles):
  • profiler/TreeProfile.cpp: Use Profile's new interface. (KJS::TreeProfile::create): (KJS::TreeProfile::TreeProfile):
  • profiler/TreeProfile.h:

WebCore:

2008-07-07 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

Because profiler.h no longer #includes profile.h we need to explicitly
include it in console.cpp.

  • page/Console.cpp:
10:59 AM Changeset in webkit [35038] by Nikolas Zimmermann
  • 6 edits in trunk/WebCore

Not reviewed. Build fix.
Fix --svg-filters build (affects Qt build, mac/win don't have it on by default)

9:01 AM Changeset in webkit [35037] by weinig@apple.com
  • 18 edits in trunk/JavaScriptCore

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

Reviewed by Cameron Zwarich.

Third step in broad cleanup effort.

[ File list elided ]

7:28 AM Changeset in webkit [35036] by mrowe@apple.com
  • 2 edits in trunk/WebKit

Fix references to WebRenderNode.h and WebRenderNode.mm in Xcode project so that they don't have an unnecessary ".." in the path.

7:12 AM Changeset in webkit [35035] by Nikolas Zimmermann
  • 101 edits
    4 moves
    6 adds in trunk

Reviewed by Antti.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

Revised version of the patch, not using pointer-to-member function callbacks anymore - after discussion with Adam Roben.
Remove unneccessary parameters of all macros. Hopefully build on Windows works as expected now, watching build bot...

5:55 AM Changeset in webkit [35034] by Nikolas Zimmermann
  • 11 edits in trunk/WebCore

Reviewed by Oliver.

Working on: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

Splitting up large patch in small chunk: Land valueAsString() implementation on it's own.

Added valueAsString() conversion for all SVG primitive types, needed by the SVG<->XML synchronization layer.
Unify "null value for a SVG animated type" concept, which was implemented in SVGDocumentExtensions before, in SVGAnimatedTemplate.

2:33 AM Changeset in webkit [35033] by jchaffraix@webkit.org
  • 3 edits in branches/XBL2/WebCore

WebCore:

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

Reviewed by Eric.

Disable renderer creation for XBLElement and
XBLDocument.

  • xbl/XBLDocument.h: (WebCore::XBLDocument::XBLDocument):
  • xbl/XBLElement.h: (WebCore::XBLElement::createRendererIfNeeded):
1:14 AM Changeset in webkit [35032] by jchaffraix@webkit.org
  • 4 edits
    1 add in branches/XBL2/WebCore

WebCore:

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

Reviewed by Eric.

Bug 19918: [XBL] Add XBLDocument.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Added XBLDocument creation.
  • dom/Document.h: (WebCore::Document::isXBLDocument):
  • xbl/XBLDocument.h: Added. (WebCore::XBLDocument::create): (WebCore::XBLDocument::isXBLDocument): (WebCore::XBLDocument::XBLDocument):

Jul 6, 2008:

11:14 PM Changeset in webkit [35031] by weinig@apple.com
  • 6 edits in trunk

WebCore:

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

Reviewed by Dan Bernstein.

Rename "Access-Contol-Origin" to "Origin" to match the latest
Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):

LayoutTests:

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

Reviewed by Dan Bernstein.

Rename "Access-Contol-Origin" to "Origin" to match the latest
Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)

  • http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-expected.txt:
  • http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
9:17 PM Changeset in webkit [35030] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Windows build
  • WebCore.vcproj/WebCore.vcproj:
8:10 PM Changeset in webkit [35029] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • add missing brace
  • platform/graphics/qt/FontCacheQt.cpp:
8:08 PM Changeset in webkit [35028] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Qt build
  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::FontCache::addClient): (WebCore::FontCache::removeClient):
7:49 PM Changeset in webkit [35027] by weinig@apple.com
  • 71 edits in trunk

JavaScriptCore:

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

Reviewed by Cameron Zwarich.

Second step in broad cleanup effort.

[ File list elided ]

WebCore:

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

Reviewed by Cameron Zwarich.

Add #include for kjs/protect.h.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::loadRequestAsynchronously):
7:40 PM Changeset in webkit [35026] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Save a few more bits in RenderStyle

Reviewed by Darin.

No test cases added since there is no change in behavior.

This changes WebCore::StyleMarqueeData from using 6 bits to 5 bits,
WebCore::RenderStyle::inherited_flags from using 36 bits to 35 bits,
and WebCore::RenderStyle::noninherited_flags from using 49 bits to
47 bits.

  • rendering/style/RenderStyle.h: (WebCore::StyleMarqueeData::behavior): Reduce from 3 bits to 2 bits since EMarqueeBehavior has 4 items. (WebCore::RenderStyle::inherited_flags._text_align): Reduce from 4 bits to 3 bits since ETextAlign has 8 items. (WebCore::RenderStyle::noninherited_flags._overflowX): Reduce from 4 bits to 3 bits since EOverflow has 6 items. (WebCore::RenderStyle::noninherited_flags._overflowY): Ditto.
5:00 PM Changeset in webkit [35025] by mitz@apple.com
  • 11 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix <rdar://problem/5735163> WebCore caching makes text look wrong after font changes; need to respond appropriately instead
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::CSSFontSelector): Added a call to FontCache::addClient(). (WebCore::CSSFontSelector::~CSSFontSelector): Added a call to FontCache::removeClient(). (WebCore::CSSFontSelector::fontCacheInvalidated): Added. Called by the font cache when it is invalidated, and ensures that the document is updated.
  • css/CSSFontSelector.h:
  • platform/graphics/Font.cpp: (WebCore::Font::operator==): Added code to compare the font fallback lists' font cache generations.
  • platform/graphics/FontCache.cpp: (WebCore::FontCache::addClient): Added. (WebCore::FontCache::removeClient): Added. (WebCore::FontCache::generation): Added. (WebCore::FontCache::invalidate): Added. Deletes the platform data cache, increments the generation counter, and notifies all clients.
  • platform/graphics/FontCache.h:
  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::FontFallbackList): Added initialization of m_generation. (WebCore::FontFallbackList::invalidate): Added code to reset m_generation. (WebCore::FontFallbackList::fontDataAt): Added an assertion. (WebCore::FontFallbackList::fontDataForCharacters): Ditto. (WebCore::FontFallbackList::setPlatformFont): Ditto.
  • platform/graphics/FontFallbackList.h: (WebCore::FontFallbackList::generation): Added. Returns the font cache generation used to populate the list.
  • platform/graphics/FontSelector.h: (WebCore::FontSelector::fontCacheInvalidated): Added.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::fontCacheATSNotificationCallback): Added. Calls FontCache::invalidate(). (WebCore::FontCache::platformInit): Added code to register for ATS notifications.
  • svg/SVGFontFaceElement.cpp: Removed unneeded #inlcudes.

Jul 5, 2008:

10:35 PM Changeset in webkit [35024] by mrowe@apple.com
  • 3 edits
    2 deletes in trunk/WebKit

Remove WebSearchableTextView as it has been unused for some time now.

Reviewed by John Sullivan.

10:35 PM Changeset in webkit [35023] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC.

Reviewed by John Sullivan.

10:26 PM Changeset in webkit [35022] by weinig@apple.com
  • 43 edits in trunk/JavaScriptCore

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

Reviewed by Cameron Zwarich.

First step in broad cleanup effort.

[ File list elided ]

5:10 PM Changeset in webkit [35021] by weinig@apple.com
  • 17 edits
    3 moves in trunk

JavaScriptCore:

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

Rubber-stamped by Cameron Zwarich.

Rename list.h/cpp to ArgList.h/cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.h:
  • kjs/AllInOneFile.cpp:
  • kjs/ArgList.cpp: Copied from JavaScriptCore/kjs/list.cpp.
  • kjs/ArgList.h: Copied from JavaScriptCore/kjs/list.h.
  • kjs/IndexToNameMap.cpp:
  • kjs/JSGlobalData.cpp:
  • kjs/JSGlobalData.h:
  • kjs/JSObject.h:
  • kjs/collector.cpp:
  • kjs/list.cpp: Removed.
  • kjs/list.h: Removed.

WebCore:

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

Rubber-stamped by Cameron Zwarich.

Rename list.h/cpp to ArgList.h/cpp.

  • ForwardingHeaders/kjs/ArgList.h: Copied from WebCore/ForwardingHeaders/kjs/list.h.
  • ForwardingHeaders/kjs/list.h: Removed.
  • WebCore.vcproj/WebCore.vcproj:
  • bridge/qt/qt_instance.cpp:
  • page/Console.cpp:
4:40 PM Changeset in webkit [35020] by weinig@apple.com
  • 6 edits in trunk/JavaScriptCore

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

Fix non-AllInOne builds again.

  • kjs/BooleanPrototype.cpp:
  • kjs/ErrorPrototype.cpp:
  • kjs/FunctionPrototype.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/ObjectPrototype.cpp:
4:36 PM Changeset in webkit [35019] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Fix build on case-sensitive build systems.

  • kjs/IndexToNameMap.cpp:
4:32 PM Changeset in webkit [35018] by weinig@apple.com
  • 11 edits in trunk/JavaScriptCore

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

Fix build.

  • kjs/Arguments.cpp:
  • kjs/BooleanPrototype.cpp:
  • kjs/DateConstructor.cpp:
  • kjs/ErrorPrototype.cpp:
  • kjs/FunctionPrototype.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/ObjectPrototype.cpp:
  • kjs/RegExpPrototype.cpp:
  • kjs/StringConstructor.cpp:
  • kjs/lookup.cpp:
4:26 PM Changeset in webkit [35017] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Fix non-AllInOne build.

  • kjs/JSGlobalObject.cpp:
4:19 PM Changeset in webkit [35016] by weinig@apple.com
  • 17 edits
    10 copies
    1 add in trunk

JavaScriptCore:

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

Rubber-stamped by Cameron Zwarich.

Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and
the functions on the global object out of JSFunction.h/cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/Arguments.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/Arguments.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/GlobalEvalFunction.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/GlobalEvalFunction.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/IndexToNameMap.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/IndexToNameMap.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/JSActivation.cpp:
  • kjs/JSFunction.cpp:
  • kjs/JSFunction.h:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSGlobalObjectFunctions.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/JSGlobalObjectFunctions.h: Copied from JavaScriptCore/kjs/JSFunction.h. The functions on the global object should be in JSGlobalObject.cpp, but putting them there was a 0.5% regression.
  • kjs/PrototypeFunction.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/PrototypeFunction.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/Shell.cpp:
  • kjs/lexer.cpp:
  • kjs/ustring.cpp:

WebCore:

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

Rubber-stamped by Cameron Zwarich.

Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and
the functions on the global object out of JSFunction.h/cpp.

  • ForwardingHeaders/kjs/PrototypeFunction.h: Added.
  • bindings/js/JSDOMBinding.cpp:
1:44 PM Changeset in webkit [35015] by mitz@apple.com
  • 4 edits in trunk/WebCore

Rubber-stamped by Sam Weinig.

  • rename BidiIterator and BidiState

Renamed BidiIterator to InlineIterator and BidiState
to InlineBidiResolver. Renamed variables of type InlineBidiResolver{*,&}
to "resolver".

  • rendering/RenderBlock.h:
  • rendering/RootInlineBox.h:
  • rendering/bidi.cpp: (WebCore::InlineIterator::InlineIterator): (WebCore::operator==): (WebCore::operator!=): (WebCore::bidiNext): (WebCore::bidiFirst): (WebCore::InlineIterator::increment): (WebCore::InlineBidiResolver::increment): (WebCore::InlineIterator::atEnd): (WebCore::InlineIterator::current): (WebCore::InlineIterator::direction): (WebCore::chopMidpointsAt): (WebCore::checkMidpoints): (WebCore::addMidpoint): (WebCore::appendRunsForObject): (WebCore::InlineBidiResolver::appendRun): (WebCore::RenderBlock::bidiReorderLine): (WebCore::buildCompactRuns): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::determineStartPosition): (WebCore::RenderBlock::determineEndPosition): (WebCore::RenderBlock::matchedEndLine): (WebCore::skipNonBreakingSpace): (WebCore::requiresLineBox): (WebCore::RenderBlock::generatesLineBoxesForInlineChild): (WebCore::RenderBlock::skipWhitespace): (WebCore::shouldSkipWhitespaceAfterStartObject): (WebCore::RenderBlock::findNextLineBreak):
10:57 AM Changeset in webkit [35014] by ddkilzer@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Fixed ChangeLog entry for r35006.

3:35 AM Changeset in webkit [35013] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-07-05 Jan Michael Alonzo <jmalonzo@webkit.org>

Rubber-stamped by Oliver Hunt

Coding style fix

  • html/CanvasRenderingContext2D.cpp: Indentation fix

Jul 4, 2008:

11:44 PM Changeset in webkit [35012] by oliver@apple.com
  • 2 edits in trunk/WebCore

Fix windows build

11:18 PM Changeset in webkit [35011] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Really fix the mac build.

10:59 PM Changeset in webkit [35010] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Fix Qt build.

  • bridge/qt/qt_instance.cpp:
10:47 PM Changeset in webkit [35009] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Fix mac build.

10:44 PM Changeset in webkit [35008] by weinig@apple.com
  • 5 edits in trunk/JavaScriptCore

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

Fix non-AllInOne builds.

  • kjs/Error.cpp:
  • kjs/GetterSetter.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/operations.cpp:
10:35 PM Changeset in webkit [35007] by weinig@apple.com
  • 31 edits
    4 copies
    1 add in trunk

JavaScriptCore:

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

Rubber-stamped by Dan Bernstein.

Split Error and GetterSetter out of JSObject.h.

  • API/JSCallbackObjectFunctions.h:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/ClassInfo.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/Error.cpp: Copied from JavaScriptCore/kjs/JSObject.cpp.
  • kjs/Error.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/GetterSetter.cpp:
  • kjs/GetterSetter.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/JSObject.cpp:
  • kjs/JSObject.h:
  • kjs/nodes.h:

JavaScriptGlue:

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

Rubber-stamped by Dan Bernstein.

  • JSObject.h: Rename the header guard as it now conflicts with the JSObject in JavaScriptCore.

WebCore:

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

Rubber-stamped by Dan Bernstein.

Split Error and GetterSetter out of JSObject.h.

  • ForwardingHeaders/kjs/Error.h: Added.
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  • bindings/js/JSClipboardCustom.cpp:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/JSEventTargetBase.cpp:
  • bindings/js/JSHTMLDocumentCustom.cpp:
  • bindings/js/JSXMLHttpRequestCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/NP_jsobject.cpp:
  • bridge/jni/jni_instance.cpp:
  • bridge/jni/jni_runtime.cpp:
  • bridge/objc/objc_instance.mm:
  • bridge/objc/objc_runtime.mm:
  • bridge/objc/objc_utility.h:
  • bridge/runtime_array.cpp:
  • bridge/runtime_method.cpp:
  • bridge/runtime_object.cpp:
9:51 PM Changeset in webkit [35006] by ddkilzer@apple.com
  • 5 edits
    2 adds in trunk

WebCore:

Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives

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

Reviewed by Dan Bernstein.

Tests: webarchive/archive-empty-frame-dom-expected.txt

webarchive/doctype.html

  • editing/markup.cpp: (WebCore::createFullMarkup): If the Node is a Document or a DocumentType, don't prepend the <!DOCTYPE> tag since that will cause it to be duplicated.
  • loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::create): Ditto.

LayoutTests:

Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives

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

Reviewed by Dan Bernstein.

  • webarchive/archive-empty-frame-dom-expected.txt: Updated test results now that we don't emit two <!DOCTYPE> tags.
  • webarchive/doctype-expected.txt: Added.
  • webarchive/doctype.html: Added.
9:34 PM Changeset in webkit [35005] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-07-04 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix

  • GNUmakefile.am:
3:43 PM Changeset in webkit [35004] by cwzwarich@webkit.org
  • 3 edits in trunk/WebCore

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

Reviewed by Eric Seidel.

Bring our implementation of the Netscape plugin API closer to current
code style guidelines.

  • bridge/NP_jsobject.cpp: (getListFromVariantArgs): (jsAllocate): (jsDeallocate): (_NPN_CreateScriptObject): (_NPN_CreateNoScriptObject): (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_Enumerate):
  • bridge/npruntime_impl.h:
5:04 AM Changeset in webkit [35003] by Simon Hausmann
  • 5 edits in trunk/WebCore

Fix the Qt/Windows build.

4:37 AM Changeset in webkit [35002] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Mac build for real, don't define listDirectory() twice.

3:55 AM Changeset in webkit [35001] by Simon Hausmann
  • 3 edits in trunk/WebCore

Prospective Mac build fix.

3:41 AM Changeset in webkit [35000] by Simon Hausmann
  • 5 edits
    3 deletes in trunk/WebCore

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

Reviewed by Simon.

Move duplicated code from each PluginDatabaseXX-implementation
to PluginDabase.cpp -- ifdefed based on the XP_PLATFORM we are
compiling plugins for.

This make the code cleaner and we can share common patterns.
The only implementation left which is specific is the Win
implementation (also used by QtWebKit/Win), but we might
want to move that too.

3:41 AM Changeset in webkit [34999] by Simon Hausmann
  • 7 edits in trunk/WebCore/platform

2008-06-25 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

Add an abstraction for listing files in a directory to FileSystem.h.

Currently this is only implemented for the Qt and GTK port. The other
ports have a default implementations which call notImplemented().

3:10 AM Changeset in webkit [34998] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-07-04 Benjamin C Meyer <ben@meyerhome.net>

Reviewed by Simon.

Update the webkit version in the QtWebKit useragent string to match trunk

1:28 AM Changeset in webkit [34997] by Simon Hausmann
  • 5 edits in trunk

Fix the Wx build

12:46 AM Changeset in webkit [34996] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Gtk build, adapt to renamed files.

12:37 AM Changeset in webkit [34995] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Qt build, adapt to renamed files.

12:25 AM Changeset in webkit [34994] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Fix output path of recently-added script phase to reference the correct file.
This prevents Xcode from running the script phase unnecessarily, which caused
the generated header to be recreated and lead to AllInOneFile.cpp rebuilding.

Reviewed by Oliver Hunt.

Jul 3, 2008:

10:21 PM Changeset in webkit [34993] by oliver@apple.com
  • 8 edits
    8 moves
    1 add in trunk/WebCore

Move filter implementations to platform directory.

Reviewed by Eric Seidel

6:10 PM Changeset in webkit [34992] by oliver@apple.com
  • 19 edits
    3 deletes in trunk/WebCore

2008-07-03 Alex Mathews <possessedpenguinbob@gmail.com>

Reviewed by Oliver Hunt.

Bug 19835: WebKit needs cross-platform filter system
<https://bugs.webkit.org/show_bug.cgi?id=19835>

More class refactoring in preparation for cross-platform filter
implementation.

5:06 PM Changeset in webkit [34991] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

Follow-up to the 64-bit build fix. Use intptr_t rather than ssize_t as the latter is non-standard and does not exist on Windows.

4:22 PM Changeset in webkit [34990] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

Fix the 64-bit build.

2:37 PM Changeset in webkit [34989] by mitz@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by John Sullivan.

  • fix <rdar://problem/6020930> Bidi Problem When Resizing Window

Test: fast/text/international/bidi-AN-after-empty-run.html

  • platform/text/BidiResolver.h: (WebCore::::appendRun): Changed to reset the current direction and "end of run" direction even in the empty run case.
  • rendering/bidi.cpp: (WebCore::BidiState::appendRun): Ditto.

LayoutTests:

Reviewed by John Sullivan.

  • test for <rdar://problem/6020930> Bidi Problem When Resizing Window
  • fast/text/international/bidi-AN-after-empty-run.html: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.checksum: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt: Added.
1:52 PM Changeset in webkit [34988] by jhoneycutt@apple.com
  • 7 edits
    2 adds in trunk

<rdar://5983747> Safari crashes trying to load the SilverLight plugin

If a plug-in returned an error code from NPP_NewStream, we would call
NPP_DestroyStream while cleaning up the request. We now only call
NPP_DestroyStream if NPP_NewStream was successful, matching Firefox.

Reviewed by Anders.

12:35 PM Changeset in webkit [34987] by hyatt@apple.com
  • 3 edits in trunk/WebCore

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

Revise Dan's fix for an assert on Windows, since layoutIfNeededRecursive doesn't exist on the
Mac. Revert updateControlTints and add the layout call outside of it in the already-existing
!PLATFORM(MAC) ifdef in FocusController's setActive method.

Reviewed by ggaren, weinig

  • page/FocusController.cpp: (WebCore::FocusController::setActive):
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints):
12:13 PM Changeset in webkit [34986] by ap@webkit.org
  • 3 edits
    2 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19884
Locating a store at www.366.ru doesn't work

Test: fast/forms/submit-with-base.html

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Treat empty action the same as missing one - ignore base URL.
12:06 PM Changeset in webkit [34985] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Sam Weinig.


Removed checking for the array get/put fast case from the array code.
Callers who want the fast case should call getIndex and/or setIndex
instead. (get_by_val and put_by_val already do this.)


SunSpider reports no change overall, but a 1.4% speedup on fannkuch and
a 3.6% speedup on nsieve.

11:51 AM Changeset in webkit [34984] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by John Sullivan.

  • fix <rdar://problem/6048904> Assert in WebCore::Frame::paint in Windows
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints): Changed to update layout recursively and not just for the top-level frame.
11:26 AM Changeset in webkit [34983] by mitz@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows build fix

11:13 AM Changeset in webkit [34982] by cwzwarich@webkit.org
  • 2 edits in trunk/WebCore

2008-07-03 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19853: REGRESSION (r34838): Crash when visiting http://www.thewebsiteisdown.com/salesguy.html
https://bugs.webkit.org/show_bug.cgi?id=19853

Remove the body of _NPN_SetException(), because it was simply calling
throwError(), which sets an exception on an ExecState but does not
actually handle it. The presence of an exception on the global ExecState
causes assertions that there is no exception set on that ExecState to
fail, as well as causing Machine::execute() to mistakingly return 0 in
some cases, as it assumes the presence of an exception implies that it
has run out of memory.

  • bridge/NP_jsobject.cpp: (_NPN_SetException):
10:57 AM Changeset in webkit [34981] by mitz@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Anders Carlsson.

  • Windows build fix
  • VM/Machine.cpp: (KJS::Machine::Machine):
6:01 AM Changeset in webkit [34980] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-07-03 Maciej Katafiasz <mathrick@gmail.com>

Gtk build fix with SVG filters enabled

  • GNUmakefile.am: Include missing SVG filter sources
1:06 AM Changeset in webkit [34979] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-07-03 Simon Hausmann <Simon Hausmann>

Reviewed by Alexey Proskuryakov.

Fix the non-threaded build.

12:54 AM Changeset in webkit [34978] by Simon Hausmann
  • 4 edits in trunk

Fix the Qt build

12:44 AM Changeset in webkit [34977] by ap@webkit.org
  • 6 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Don't create unnecessary JSGlobalData instances.

  • kjs/JSGlobalData.h:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::threadInstanceExists): (KJS::JSGlobalData::sharedInstanceExists): (KJS::JSGlobalData::threadInstance): (KJS::JSGlobalData::sharedInstance): (KJS::JSGlobalData::threadInstanceInternal): (KJS::JSGlobalData::sharedInstanceInternal): Added methods to query instance existence.
  • kjs/InitializeThreading.cpp: (KJS::initializeThreadingOnce): Initialize thread instance static in a new way.
  • API/JSBase.cpp: (JSGarbageCollect):
  • kjs/collector.cpp: (KJS::Heap::collect): Check for instance existence before accessing it.
12:10 AM Changeset in webkit [34976] by ggaren@apple.com
  • 2 edits in trunk/LayoutTests

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

Reviewed by Mark Rowe.


Updated this test result to match our new, smaller recursion limit.
With the new limit, an exception is thrown on entry to the document.write
script, which is why you see an exception logged to the console, instead
of caught inside the script.

  • fast/js/global-recursion-on-full-stack-expected.txt:

Jul 2, 2008:

11:58 PM Changeset in webkit [34975] by ggaren@apple.com
  • 2 edits in trunk/LayoutTests

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

Reviewed by Mark Rowe.


Updated this test to match our lower recursion limit, and to signal
failure as failure.

  • fast/js/deep-recursion-test.html:
11:48 PM Changeset in webkit [34974] by ggaren@apple.com
  • 6 edits in trunk/JavaScriptCore

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

Reviewed by Cameron Zwarich.


Fixed https://bugs.webkit.org/show_bug.cgi?id=19862
REGRESSION (r34907): Gmail crashes in JavaScriptCore code while editing drafts


I was never able to reproduce this issue, but Cameron could, and he says
that this patch fixes it.


The crash seems tied to a timer or event handler callback. In such a case,
the sole reference to the global object may be in the current call frame,
so we can't depend on the global object to mark the call frame area in
the register file.


The new GC marking rule is: the global object is not responsible for
marking the whole register file -- it's just responsible for the globals
section it's tied to. The heap is responsible for marking the call frame area.

11:40 PM Changeset in webkit [34973] by oliver@apple.com
  • 2 edits in trunk/LayoutTests

Reduce test runtime to avoid timeout on slow hardware with debug builds.

RS=Mark Rowe

11:10 PM Changeset in webkit [34972] by beidson@apple.com
  • 7 edits
    2 adds in trunk

WebCore:

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

Reviewed by Mitz Pettel and John Sullivan

Fix for <rdar://problem/5549871> - Crash when calling [WebView stopLoading:] or [WebFrame stopLoading]
inside of the frame load delegate method -webView:didStartProvisionalLoadForFrame:.

Test: fast/loader/stop-provisional-loads.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Since the provisionalDocumentLoader may have been cleared by the prepareForLoadStart() call, null check it again.

WebKitTools:

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

Reviewed by Mitz Pettel and John Sullivan

Add the ability to tell DRT to call stopLoading on a WebFrame inside of a didStartProvisionalLoadForFrame
load delegate.

Required to add a layout test for the fix for <rdar://problem/5549871>

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]): If stopProvisionalFrameLoads is set, call [WebFrame stopLoading] to test for the crash reflected in 5549871

All of the following are infrastructure to add the layoutTestController.setStopProvisionalFrameLoads() call:

  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (setStopProvisionalFrameLoadsCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h: (LayoutTestController::stopProvisionalFrameLoads): (LayoutTestController::setStopProvisionalFrameLoads):

LayoutTests:

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

Reviewed by Mitz Pettel and John Sullivan

Fix for <rdar://problem/5549871> - Crash when calling [WebView stopLoading:] or [WebFrame stopLoading]
inside of the frame load delegate method -webView:didStartProvisionalLoadForFrame:.

  • fast/loader/stop-provisional-loads-expected.txt: Added.
  • fast/loader/stop-provisional-loads.html: Added.
10:55 PM Changeset in webkit [34971] by oliver@apple.com
  • 7 edits
    1 delete in trunk/WebCore

2008-07-01 Alex Mathews <possessedpenguinbob@gmail.com>

Reviewed by Oliver Hunt.

Renaming of class SVGFEBlend to FEBlend as well as removing
a little bit of antiquated code. This includes the removal of
SVGFEBlendCg.mm; the feBlend element will now no longer
render.

  • WebCore.xcodeproj/project.pbxproj:
  • svg/FilterBuilder.h: (WebCore::FilterBuilder::add): (WebCore::FilterBuilder::getEffectById):
  • svg/SVGFEBlendElement.cpp: (WebCore::SVGFEBlendElement::SVGFEBlendElement): (WebCore::SVGFEBlendElement::parseMappedAttribute): (WebCore::SVGFEBlendElement::filterEffect): (WebCore::SVGFEBlendElement::build):
  • svg/SVGFEBlendElement.h:
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/graphics/filters/SVGFEBlend.cpp: (WebCore::FEBlend::FEBlend): (WebCore::FEBlend::create): (WebCore::FEBlend::in2): (WebCore::FEBlend::setIn2): (WebCore::FEBlend::blendMode): (WebCore::FEBlend::setBlendMode): (WebCore::FEBlend::apply): (WebCore::FEBlend::dump):
  • svg/graphics/filters/SVGFEBlend.h: (WebCore::):
  • svg/graphics/filters/cg/SVGFEBlendCg.mm: Removed.
9:55 PM Changeset in webkit [34970] by mrowe@apple.com
  • 2 edits in trunk/WebKitSite

Update a URL that was out of date.

  • building/checkout.html:
9:55 PM Changeset in webkit [34969] by mrowe@apple.com
  • 5 edits
    2 adds in trunk/JavaScriptCore

Add the ability to trace JavaScriptCore garabge collections using dtrace.

Reviewed by Sam Weinig.

  • JavaScriptCore.xcodeproj/project.pbxproj: Generate the dtrace probe header

file when building on a new enough version of Mac OS X.

  • JavaScriptCorePrefix.h: Add our standard Mac OS X version detection macros.
  • kjs/Tracing.d: Declare three dtrace probes.
  • kjs/Tracing.h: Include the generated dtrace macros if dtrace is available,

otherwise provide versions that do nothing.

  • kjs/collector.cpp:

(KJS::Heap::collect): Fire dtrace probes when starting a collection, after the
mark phase has completed, and when the collection is complete.

  • wtf/Platform.h: Define HAVE_DTRACE when building on a new enough version of Mac OS X.
9:54 PM Changeset in webkit [34968] by ggaren@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

A single tear rolling down my cheek, I fix a performance measurement that was skewed due to a locally modified test.

9:37 PM Changeset in webkit [34967] by ggaren@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

ChangeLog fixup

9:37 PM Changeset in webkit [34966] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Rubber stamped by Oliver Hunt.


Reduced the max register file size from 8MB to 2MB.

We still allow about 20,000 levels of recursion.

8:31 PM Changeset in webkit [34965] by alp@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-07-02 Alp Toker <alp@nuanti.com>

Build fix for r34960. Add TreeProfile.cpp to build.

  • GNUmakefile.am:
5:47 PM Changeset in webkit [34964] by ggaren@apple.com
  • 8 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.

Optimized a[n] get for cases where a is an array or a string, and a[n]
put for cases where a is an array.


SunSpider says 9.0% faster.

5:10 PM Changeset in webkit [34963] by Beth Dakin
  • 8 edits
    6 adds in trunk

WebCore:

2008-07-02 Beth Dakin <Beth Dakin>

Reviewed by Darin.

Fix for <rdar://problem/6015523> Implement ARIA ranges/sliders
and
<rdar://problem/5934355> Need to implement ARIA role="spinbutton"

  • page/AccessibilityObject.h: (WebCore::AccessibilityObject::isSlider):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isSlider): (WebCore::AccessibilityRenderObject::valueForRange): (WebCore::AccessibilityRenderObject::maxValueForRange): (WebCore::AccessibilityRenderObject::minValueForRange): (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): We were addressing the generic has-an-ARIA-role case too early here. (WebCore::AccessibilityRenderObject::focusedUIElement): This is a bug I ran into while testing role='spinbutton', spinbutton is a role that can have an active descendant. But we were always trying to forward focus to the active descendant, even if one was not specified. (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant): 'spinbutton' maps to ProgressIndicatorRole. (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::canSetValueAttribute):
  • page/AccessibilityRenderObject.h:
  • page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

2008-07-02 Beth Dakin <Beth Dakin>

Reviewed by Darin.

Tests for <rdar://problem/6015523> Implement ARIA ranges/sliders
and
<rdar://problem/5934355> Need to implement ARIA role="spinbutton"

  • accessibility/aria-range-expected.txt: Added.
  • accessibility/aria-range.html: Added.
  • accessibility/aria-slider-expected.txt: Added.
  • accessibility/aria-slider.html: Added.
  • accessibility/aria-spinbutton-expected.txt: Added.
  • accessibility/aria-spinbutton.html: Added.

This test used to have a section for slider. It was a mistake for
that to be checked in since slider was not implemented until not.

  • accessibility/aria-roles-expected.txt:
  • accessibility/aria-roles.html:
5:05 PM Changeset in webkit [34962] by kmccullough@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-07-02 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

-Small cleanup in preparation for implementing Bottom-up.

  • profiler/CallIdentifier.h: Rename debug function to make it clear of its output and intention to be debug only. (KJS::CallIdentifier::operator const char* ): Implement in terms of c_str. (KJS::CallIdentifier::c_str):
  • profiler/ProfileNode.cpp: Impelment findChild() which will be needed by the bottom-up implementation. (KJS::ProfileNode::findChild):
  • profiler/ProfileNode.h: Added comments to make the collections of functions more clear. (KJS::ProfileNode::operator==): (KJS::ProfileNode::c_str):
5:04 PM Changeset in webkit [34961] by cwzwarich@webkit.org
  • 5 edits in trunk

2008-07-02 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Bug 19776: Number.toExponential() is incorrect for numbers between 0.1 and 1
<https://bugs.webkit.org/show_bug.cgi?id=19776>

Perform the sign check for the exponent on the actual exponent value,
which is 1 less than the value of decimalPoint, instead of on the value
of decimalPoint itself.

JavaScriptCore:

  • kjs/NumberPrototype.cpp: (KJS::exponentialPartToString):

LayoutTests:

  • fast/js/number-toExponential-expected.txt:
  • fast/js/resources/number-toExponential.js:
3:50 PM Changeset in webkit [34960] by kmccullough@apple.com
  • 4 edits
    2 adds in trunk/JavaScriptCore

2008-07-02 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

<rdar://problem/5951532> JSProfiler: Implement Bottom-Up view (19228)

  • Subclass TreeProfile as I prepare for a HeavyProfile to be comming later.
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • profiler/Profile.cpp: By default we create a TreeProfile. (KJS::Profile::create):
  • profiler/Profile.h: Changes to the Profile class to make it amenable to be inherited from. (KJS::Profile::~Profile):
  • profiler/TreeProfile.cpp: Added. (KJS::TreeProfile::create): (KJS::TreeProfile::TreeProfile): (KJS::TreeProfile::heavyProfile):
  • profiler/TreeProfile.h: Added. (KJS::TreeProfile::treeProfile):
3:37 PM Changeset in webkit [34959] by mitz@apple.com
  • 2 edits in trunk/WebKit/win
  • try to fix the Windows build
  • WebScriptCallFrame.cpp:
3:05 PM Changeset in webkit [34958] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Adam Roben.

  • Windows build fix

Renamed the ERROR token in the XPath grammar to XPATH_ERROR, because
the ERROR macro is defined in <wingdi.h>.

  • xml/XPathGrammar.y:
  • xml/XPathParser.cpp: (WebCore::XPath::Parser::lexString): (WebCore::XPath::Parser::nextTokenInternal):
10:40 AM Changeset in webkit [34957] by kmccullough@apple.com
  • 4 edits
    1 add in trunk/JavaScriptCore

2008-07-02 Kevin McCullough <kmccullough@apple.com>

Reviewed by Dan.

Broke CallIdentifier out into its own file. I did this because it's
going to grow a lot soon and I wanted this to be a separate patch.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • profiler/CallIdentifier.h: Added. (KJS::CallIdentifier::CallIdentifier): (KJS::CallIdentifier::operator==): (KJS::CallIdentifier::operator!=): (KJS::CallIdentifier::operator const char* ): (KJS::CallIdentifier::toString):
  • profiler/ProfileNode.h:
5:00 AM Changeset in webkit [34956] by ap@webkit.org
  • 58 edits
    1 add in trunk

Inspired and reviewed by Mark Rowe.

Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.

4:42 AM Changeset in webkit [34955] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Gtk build

4:28 AM Changeset in webkit [34954] by vestbo@webkit.org
  • 10 edits in trunk

Build fixes

4:18 AM Changeset in webkit [34953] by mrowe@apple.com
  • 3 edits in trunk/LayoutTests

Fix https://bugs.webkit.org/show_bug.cgi?id=19850
Bug 19850: REGRESSION (r34887): SVGEllipseElement-dom-cx-attr.html and SVGEllipseElement-svgdom-cx-prop.html are failing

Rubber-stamped by Oliver Hunt.

Update the coordinates used when clicking to initiate the test so that the test does not fail on Tiger.

  • svg/dynamic-updates/resources/SVGEllipseElement-dom-cx-attr.js:
  • svg/dynamic-updates/resources/SVGEllipseElement-svgdom-cx-prop.js:
4:15 AM WebKit Team edited by vestbo@webkit.org
(diff)
3:08 AM Changeset in webkit [34952] by cwzwarich@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-07-02 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Add a test for a situation mentioned in:

Bug 19523: delete does not work in javascript
<https://bugs.webkit.org/show_bug.cgi?id=19523>

  • fast/js/delete-multiple-global-blocks-expected.txt: Added.
  • fast/js/delete-multiple-global-blocks.html: Added.
2:23 AM Changeset in webkit [34951] by ap@webkit.org
  • 3 edits in trunk/WebCore

Build fix.

  • plugins/PluginView.cpp: (WebCore::PluginView::start): (WebCore::getString): (WebCore::PluginView::performRequest): (WebCore::PluginView::bindingInstance):
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginView::dispatchNPEvent): (WebCore::PluginView::setNPWindowRect): (WebCore::PluginView::stop): Pass false to JSLock and JSLock::DropAllLocks constructors.
12:57 AM Changeset in webkit [34950] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Another non-AllInOne build fix.

  • kjs/JSGlobalObject.cpp: Include JSLock.h here, too.
12:35 AM Changeset in webkit [34949] by oliver@apple.com
  • 6 edits
    3 adds in trunk

<rdar://problem/5974306> CanvasRenderingContext2D becomes invalid when source canvas element is collected

Reviewed by Geoff Garen.

In order to fix this we now make the rendering context and the canvas element
share the same reference count, ensuring that references to the rendering
context will force the canvas element to remain live as well.

Test: fast/canvas/canvas-longlived-context.html

12:33 AM Changeset in webkit [34948] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Non-AllInOne build fix.

  • kjs/interpreter.cpp: Include JSLock.h.
12:00 AM Changeset in webkit [34947] by ap@webkit.org
  • 91 edits
    2 adds in trunk

Reviewed by Darin.

Disable JSLock for per-thread contexts.

No change on SunSpider.

  • kjs/JSGlobalData.h:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData): (KJS::JSGlobalData::sharedInstance): Added isSharedInstance as a better way to tell whether the instance is shared (legacy).
  • kjs/JSLock.cpp: (KJS::createJSLockCount): (KJS::JSLock::lockCount): (KJS::setLockCount): (KJS::JSLock::JSLock): (KJS::JSLock::lock): (KJS::JSLock::unlock): (KJS::JSLock::currentThreadIsHoldingLock): (KJS::JSLock::DropAllLocks::DropAllLocks): (KJS::JSLock::DropAllLocks::~DropAllLocks):
  • kjs/JSLock.h: (KJS::JSLock::JSLock): (KJS::JSLock::~JSLock): Made JSLock and JSLock::DropAllLocks constructors take a parameter to decide whether to actually lock a mutex, or only to increment recursion count. We cannot turn it into no-op if we want to keep existing assertions working. Made recursion count per-thread, now that locks may not lock.
  • API/JSBase.cpp: (JSEvaluateScript): Take JSLock after casting JSContextRef to ExecState* (which doesn't need locking in any case), so that a decision whether to actually lock can be made. (JSCheckScriptSyntax): Ditto. (JSGarbageCollect): Only lock while collecting the shared heap, not the per-thread one.
  • API/JSObjectRef.cpp: (JSClassCreate): Don't lock, as there is no reason to. (JSClassRetain): Ditto. (JSClassRelease): Ditto. (JSPropertyNameArrayRetain): Ditto. (JSPropertyNameArrayRelease): Only lock while deleting the array, as that may touch identifier table. (JSPropertyNameAccumulatorAddName): Adding a string also involves an identifier table lookup, and possibly modification.
  • API/JSStringRef.cpp: (JSStringCreateWithCharacters): (JSStringCreateWithUTF8CString): (JSStringRetain): (JSStringRelease): (JSStringGetUTF8CString): (JSStringIsEqual):
  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString): JSStringRef operations other than releasing do not need locking.
  • VM/Machine.cpp: Don't include unused JSLock.h.
  • kjs/CollectorHeapIntrospector.cpp: (KJS::CollectorHeapIntrospector::statistics): Don't take the lock for real, as heap introspection pauses the process anyway. It seems that the existing code could cause deadlocks.
  • kjs/Shell.cpp: (functionGC): (main): (jscmain): The test tool uses a per-thread context, so no real locking is required.
  • kjs/collector.h: (KJS::Heap::setGCProtectNeedsLocking): Optionally protect m_protectedValues access with a per-heap mutex. This is only needed for WebCore Database code, which violates the "no data migration between threads" by using ProtectedPtr on a background thread. (KJS::Heap::isShared): Keep a shared flag here, as well.
  • kjs/protect.h: (KJS::::ProtectedPtr): (KJS::::~ProtectedPtr): (KJS::::operator): (KJS::operator==): (KJS::operator!=): ProtectedPtr is ony used from WebCore, so it doesn't need to take JSLock. An assertion in Heap::protect/unprotect guards agains possible future unlocked uses of ProtectedPtr in JSC.
  • kjs/collector.cpp: (KJS::Heap::Heap): Initialize m_isShared. (KJS::Heap::~Heap): No need to lock for real during destruction, but must keep assertions in sweep() working. (KJS::destroyRegisteredThread): Registered thread list is only accessed for shared heap, so locking is always needed here. (KJS::Heap::registerThread): Ditto. (KJS::Heap::markStackObjectsConservatively): Use m_isShared instead of comparing to a shared instance for a small speedup. (KJS::Heap::setGCProtectNeedsLocking): Create m_protectedValuesMutex. There is currently no way to undo this - and ideally, Database code will be fixed to lo longer require this quirk. (KJS::Heap::protect): Take m_protectedValuesMutex (if it exists) while accessing m_protectedValues. (KJS::Heap::unprotect): Ditto. (KJS::Heap::markProtectedObjects): Ditto. (KJS::Heap::protectedGlobalObjectCount): Ditto. (KJS::Heap::protectedObjectCount): Ditto. (KJS::Heap::protectedObjectTypeCounts): Ditto.
  • kjs/ustring.cpp:
  • kjs/ustring.h: Don't include JSLock.h, which is no longer used here. As a result, an explicit include had to be added to many files in JavaScriptGlue, WebCore and WebKit.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::init):
  • API/JSCallbackConstructor.cpp: (KJS::constructJSCallback):
  • API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::call):
  • API/JSCallbackObjectFunctions.h: (KJS::::init): (KJS::::getOwnPropertySlot): (KJS::::put): (KJS::::deleteProperty): (KJS::::construct): (KJS::::hasInstance): (KJS::::call): (KJS::::getPropertyNames): (KJS::::toNumber): (KJS::::toString): (KJS::::staticValueGetter): (KJS::::callbackGetter):
  • API/JSContextRef.cpp: (JSGlobalContextCreate): (JSGlobalContextRetain): (JSGlobalContextRelease):
  • API/JSValueRef.cpp: (JSValueIsEqual): (JSValueIsStrictEqual): (JSValueIsInstanceOfConstructor): (JSValueMakeNumber): (JSValueMakeString): (JSValueToNumber): (JSValueToStringCopy): (JSValueToObject): (JSValueProtect): (JSValueUnprotect):
  • JavaScriptCore.exp:
  • kjs/PropertyNameArray.h: (KJS::PropertyNameArray::globalData):
  • kjs/interpreter.cpp: (KJS::Interpreter::checkSyntax): (KJS::Interpreter::evaluate): Pass a parameter to JSLock/JSLock::DropAllLocks to decide whether the lock needs to be taken.

Jul 1, 2008:

11:35 PM Changeset in webkit [34946] by ap@webkit.org
  • 5 edits in trunk/JavaScriptCore

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19834
Failed assertion in JavaScriptCore/VM/SegmentedVector.h:82

Creating a global object with a custom prototype resets it twice (wasteful!).
So, addStaticGlobals() was called twice, but JSGlobalObject::reset() didn't reset
the register array.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): Call setRegisterArray(0, 0).
  • kjs/JSVariableObject.h: Changed registerArray to OwnArrayPtr. Also, added private copy constructor and operator= to ensure that no one attempts to copy this object (for whatever reason, I couldn't make Noncopyable work).
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::addStaticGlobals): Allocate registerArray with new[].
  • kjs/JSVariableObject.cpp: (KJS::JSVariableObject::copyRegisterArray): Allocate registerArray with new[]. (KJS::JSVariableObject::setRegisterArray): Avoid hitting an assertion in OwnArrayPtr when "changing" the value from 0 to 0.
10:39 PM Changeset in webkit [34945] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.


Removed and/or reordered exception checks in array-style a[n] access.


SunSpider says 1.4% faster.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): No need to check for exceptions before calling toString, toNumber and/or get. If the call ends up being observable through toString, valueOf, or a getter, we short-circuit it there, instead. In the op_del_by_val case, I removed the incorrect comment without actually removing the code, since I didn't want to tempt the GCC fates!
  • kjs/JSObject.cpp: (KJS::callDefaultValueFunction): Added exception check to prevent toString and valueOf functions from observing execution after an exception has been thrown. This removes some of the burden of exception checking from the machine.

(KJS::JSObject::defaultValue): Removed redundant exception check here.

  • kjs/PropertySlot.cpp: (KJS::PropertySlot::functionGetter): Added exception check to prevent getter functions from observing execution after an exception has been thrown. This removes some of the burden of exception checking from the machine.
9:28 PM Changeset in webkit [34944] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Oliver Hunt.

  • fix a CSSParserValueList leak seen on the build bot
  • css/CSSParser.cpp: (WebCore::BorderImageParseContext::commitBorderImage):
9:21 PM Changeset in webkit [34943] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.


Optimized a[n] get and put for cases where n is an immediate unsigned
value.


SunSpider says 3.5% faster.

8:27 PM Changeset in webkit [34942] by oliver@apple.com
  • 2 edits
    5 adds in trunk/WebCore

2008-07-01 Alex Mathews <possessedpenguinbob@gmail.com>

Reviewed by Oliver Hunt.

Prep for more Filter class name changes. Added the first few files for
the new Filter architecture to come.

7:12 PM Changeset in webkit [34941] by mrowe@apple.com
  • 2 edits in trunk/WebKitSite

Update the path to the configuration file.

6:08 PM Changeset in webkit [34940] by cwzwarich@webkit.org
  • 5 edits in trunk

2008-07-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Bug 19844: JavaScript Switch statement modifies "this"
<https://bugs.webkit.org/show_bug.cgi?id=19844>

Use a temporary when generating code for switch clauses to avoid
overwriting 'this' or a local variable.

JavaScriptCore:

  • kjs/nodes.cpp: (KJS::CaseBlockNode::emitCodeForBlock):

LayoutTests:

  • fast/js/codegen-temporaries-expected.txt:
  • fast/js/resources/codegen-temporaries.js:
5:11 PM Changeset in webkit [34939] by sfalken@apple.com
  • 3 edits in trunk/WebKitLibraries

Bump version numbers.


Reviewed by Mark Rowe.

  • win/tools/scripts/PRODUCTVERSION:
  • win/tools/scripts/VERSION:
5:08 PM Changeset in webkit [34938] by christian@webkit.org
  • 4 edits in trunk

Gtk+ build fix.

4:46 PM Changeset in webkit [34937] by kmccullough@apple.com
  • 4 edits in trunk

JavaScriptCore:

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

Build fix.

WebKit/mac:

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

Build fix.

  • WebView/WebView.mm:
4:44 PM Changeset in webkit [34936] by andersca@apple.com
  • 8 edits in trunk

WebCore:

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

Reviewed by Darin.

Add PluginMainThreadScheduler.{cpp|h} to build.


  • WebCore.base.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • plugins/PluginMainThreadScheduler.cpp:

WebKit/mac:

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

Reviewed by Darin.

Use the PluginMainThreadScheduler, and implement NPN_PluginThreadAsyncCall.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView _createPlugin]): Register the plug-in instance.


(-[WebBaseNetscapePluginView _destroyPlugin]):
Unegister the plug-in instance.


  • Plugins/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]): Set NPN_PluginThreadAsyncCall.


  • Plugins/npapi.mm: (NPN_PluginThreadAsyncCall): Implement this.
3:34 PM Changeset in webkit [34935] by mitz@apple.com
  • 9 edits in trunk

WebCore:

Reviewed by Darin Adler.

  • move the method to set the base writing direction from Frame to Editor
  • WebCore.base.exp: Updated.
  • editing/Editor.cpp: (WebCore::Editor::setBaseWritingDirection): Changed the parameter to a WritingDirection enum value and added the special behavior when the focused node is a text field or a text area.
  • editing/Editor.h:
  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected): Changed back to call the Editor method.
  • page/Frame.cpp: Removed setSelectionBaseWritingDirection().
  • page/Frame.h:

WebKit/mac:

Reviewed by Darin Adler.

  • WebKit part of moving the method to set the base writing direction from Frame to Editor
  • WebView/WebHTMLView.mm: (-[WebHTMLView toggleBaseWritingDirection:]): Changed back to call the Editor method. (-[WebHTMLView changeBaseWritingDirection:]): Ditto. (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
3:21 PM Changeset in webkit [34934] by Darin Adler
  • 2 edits in trunk/WebCore

2008-07-01 Darin Adler <Darin Adler>

Reviewed by Oliver.

  • slight tweak of the setHash fix
  • bindings/js/JSLocationCustom.cpp: (WebCore::JSLocation::setHash): Use oldRef instead of recomputing url.ref().
3:19 PM Changeset in webkit [34933] by mitz@apple.com
  • 4 edits in trunk

JavaScriptCore:

Reviewed by Anders Carlsson.

  • Mac release build fix

WebCore:

Reviewed by Anders Carlsson.

  • Mac release build fix
  • page/Console.cpp:
2:20 PM Changeset in webkit [34932] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Anders Carlsson.

  • fix <rdar://problem/6045896> REGRESSION: Leak in WebCore::StringImpl::create
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cleanup):
2:11 PM Changeset in webkit [34931] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Try and fix mac builds.

2:06 PM Changeset in webkit [34930] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Jon.

Don't add the Mozilla user agent quirk for Flash 10.


  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::isPluginBlacklisted): (WebCore::PluginPackage::determineQuirks):
1:06 PM Changeset in webkit [34929] by ddkilzer@apple.com
  • 4 edits in trunk/WebCore

Move data: URL parsing code in HTMLObjectElement to KURL

Reviewed by Ada and Darin.

No test cases added since there is no change in behavior.

  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::isImageType): Extracted data: URL parsing code into WebCore::mimeTypeFromDataURL() in KURL.cpp.
  • platform/KURL.cpp: (WebCore::mimeTypeFromDataURL): Added.
  • platform/KURL.h: (WebCore::mimeTypeFromDataURL): Added.
12:08 PM Changeset in webkit [34928] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Dave Hyatt.

  • fix <rdar://problem/6045890> REGRESSION: Leak in WebCore::CSSParser::createFloatingValueList()
  • css/CSSParser.cpp: (WebCore::CSSParser::addUnresolvedProperty):
12:05 PM Changeset in webkit [34927] by cwzwarich@webkit.org
  • 3 edits
    2 adds in trunk

2008-07-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Brady Eidson.

Bug 19822: REGRESSION (r30243): setting location.hash to "#" causes a reload
<https://bugs.webkit.org/show_bug.cgi?id=19822>

Change JSLocation::setHash() to not schedule navigation in the case
where the old fragment is the null String and the new fragment is an
empty String.

WebCore:

  • bindings/js/JSLocationCustom.cpp: (WebCore::JSLocation::setHash):

LayoutTests:

  • http/tests/loading/location-hash-reload-cycle-expected.txt: Added.
  • http/tests/loading/location-hash-reload-cycle.html: Added.
11:31 AM Changeset in webkit [34926] by andersca@apple.com
  • 6 edits
    2 adds in trunk/WebCore

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

Reviewed by Adam.

Add PluginMainThreadScheduler, a singleton which is responsible for scheduling plug-in
callbacks on the main thread. Use this to implement NPN_PluginThreadAsyncCall on Windows.


  • WebCore.vcproj/WebCore.vcproj: Add PluginMainThreadScheduler.{cpp|h}


  • plugins/PluginMainThreadScheduler.cpp: Added.
  • plugins/PluginMainThreadScheduler.h: Added.
  • plugins/PluginView.cpp: (WebCore::PluginView::start): Register with the thread scheduler.


  • plugins/npapi.cpp: (NPN_PluginThreadAsyncCall): Call the thread scheduler.


  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::load): Initialize the NPN_PluginThreadAsyncCall callback.


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginView::stop): Unregister with the scheduler. This makes sure that we won't try to deliver callbacks after the plug-in has been destroyed.
11:02 AM Changeset in webkit [34925] by Adam Roben
  • 105 edits
    2 moves
    2 adds
    7 deletes in trunk

Roll out r34913, as it broke the Windows build due to bad casting

WebCore:

Roll out r34913, as it broke the Windows build due to bad casting

r34913 introduced code that assigned pointers-to-member from a derived
class into a base class pointer-to-member type (e.g., assigned a void
(SVGUseElement::*)() into a void (SVGElement::*)()). This is bad
because it could allow us to call SVGUseElement member functions on a
different SVGElement-derived class. MSVC rightly flagged this as an
error.

Rubberstamped by Anders Carlsson.

LayoutTests:

Roll out r34913, as it broke the Windows build due to bad casting

Rubberstamped by Anders Carlsson.

10:56 AM Changeset in webkit [34924] by Darin Adler
  • 2 edits in trunk/WebCore

2008-07-01 Darin Adler <Darin Adler>

  • fix build
  • bindings/scripts/CodeGeneratorJS.pm: Fix warnings that indicate this was not working propertly.
10:46 AM Changeset in webkit [34923] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix <rdar://problem/6045893> REGRESSION: Leak in WebCore::HTMLCanvasElement::createPlatformImage() const
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createPattern):
10:39 AM Changeset in webkit [34922] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Fix non-AllInOne builds.

  • kjs/DateMath.cpp:
10:32 AM Changeset in webkit [34921] by weinig@apple.com
  • 17 edits
    3 copies
    1 add in trunk

JavaScriptCore:

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

Reviewed by Darin Adler.

Split JSCell and JSNumberCell class declarations out of JSValue.h

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/JSPropertyNameIterator.h:
  • kjs/AllInOneFile.cpp:
  • kjs/JSCell.cpp: Copied from JavaScriptCore/kjs/JSValue.cpp.
  • kjs/JSCell.h: Copied from JavaScriptCore/kjs/JSValue.h. (KJS::JSValue::getJSNumber):
  • kjs/JSNumberCell.cpp:
  • kjs/JSNumberCell.h: Copied from JavaScriptCore/kjs/JSValue.h.
  • kjs/JSObject.h:
  • kjs/JSString.cpp: (KJS::jsString): (KJS::jsOwnedString):
  • kjs/JSString.h: (KJS::JSValue::toThisJSString):
  • kjs/JSValue.cpp:
  • kjs/JSValue.h:

WebCore:

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

Reviewed by Darin Adler.

Split JSCell and JSNumberCell class declarations out of JSValue.h

  • ForwardingHeaders/kjs/JSNumberCell.h: Added.
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/c/c_instance.cpp:
10:27 AM Changeset in webkit [34920] by Chris Fleizach
  • 8 edits
    2 adds in trunk

<rdar://problem/6041580> REGRESSION: AX: AXSize of radio buttons is 0,0

Fixed incorrect AXSize of radio buttons and checkboxes when they don't have labels

9:42 AM Changeset in webkit [34919] by andersca@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Build fixes.


  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::addStaticGlobals):
7:40 AM Changeset in webkit [34918] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Antti Koivisto.

  • fix SVG pointer-events layout test failures
  • css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue):
7:29 AM Changeset in webkit [34917] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-07-01 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

Don't show the tooltip instantly in the QtLauncher.

Let the QWebView handle tooltips by itself, so we get
the expected delay as everywhere else.

5:21 AM Changeset in webkit [34916] by Nikolas Zimmermann
  • 5 edits
    60 adds in trunk

Reviewed by Antti.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=19841
Fix two small problems in the gradient & pattern code.

Added 12 new layout tests: svg/dynamic-updates/SVGLinearGradientElement*.html

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

2008-07-01 Simon Hausmann <Simon Hausmann>

Fix the build, include SVGTransformList.h instead of
SVGTransformlist.h

5:01 AM Changeset in webkit [34914] by ap@webkit.org
  • 5 edits
    2 moves
    2 adds in trunk

Reviewed by Antti.

<rdar://problem/6033080> REGRESSION: Some CH characters display as garbage on webpage for
the first time.

Test: fast/encoding/preload-encoding.html

  • html/PreloadScanner.cpp: (WebCore::PreloadScanner::tokenize): Reset charset when entering a tag, not just when starting a load.
4:33 AM Changeset in webkit [34913] by Nikolas Zimmermann
  • 105 edits
    4 moves
    5 adds in trunk

Reviewed by Antti & Eric.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

SVG Errata states: "All SVG DOM objects that directly correspond to an
attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
means that any changes made to the attribute are immediately reflected in the
corresponding SVG DOM object." (see linked URL on bug report)

Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).

Add a new synchronization layer to handle SVG DOM -> XML changes.

4:10 AM Changeset in webkit [34912] by oliver@apple.com
  • 23 edits in trunk/WebCore

Class name changes for SVG Light Effect files.

Reviewed by Nikolas Zimmermann.

The class names that changed :

SVGLightSource -> LightSource
SVGDistantLightSource -> DistantLightSource
SVGPointLightSource -> PointLightSource
SVGSpotLightSource -> SpotLightSource

Every other file that is changed is just propagating the class name changes to
dependent files.

1:39 AM Changeset in webkit [34911] by alp@webkit.org
  • 2 edits in trunk/WebCore

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

Rubber-stamped by Holger.

autotools cleanup: move some GTK+-specific sources from libwebcore to
libwebcoregtk.

  • GNUmakefile.am:
1:19 AM Changeset in webkit [34910] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Oliver Hunt.

  • fix the non-SVG build
  • css/CSSValueKeywords.in: Added 'all'.
  • css/SVGCSSValueKeywords.in: Removed 'all'.
12:09 AM Changeset in webkit [34909] by ggaren@apple.com
  • 2 edits in trunk/WebKit/mac

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

Build fix: forgot to check in this file.

  • WebView/WebScriptDebugger.mm: (WebScriptDebugger::WebScriptDebugger):
12:07 AM Changeset in webkit [34908] by Simon Hausmann
  • 4 edits in trunk

Build fixes, include OwnPtr.h and DateInstance.h

12:01 AM Changeset in webkit [34907] by ggaren@apple.com
  • 6 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.


Fixed a global object leak caused by the switch to one register file.


Don't unconditionally mark the register file, since that logically
makes all global variables GC roots, even when their global object is
no longer reachable.


Instead, make the global object associated with the register file
responsible for marking the register file.

Jun 30, 2008:

10:45 PM Changeset in webkit [34906] by ggaren@apple.com
  • 16 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.


Removed the "registerBase" abstraction. Since the register file never
reallocates, we can keep direct pointers into it, instead of
<registerBase, offset> tuples.


SunSpider says 0.8% faster.

7:49 PM Changeset in webkit [34905] by adele@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-30 Adele Peterson <adele@apple.com>

Reviewed by Oliver.

Fix for <rdar://problem/5882050> clicking in hidden close box area of empty searchfield causes mousedown to stop firing

Test: fast/forms/search-hidden-cancel-button.html

  • html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler): Don't start capturing mouse events if the cancel button isn't visible. This was causing the button to start but never stop capturing mouse events.

LayoutTests:

2008-06-30 Adele Peterson <adele@apple.com>

Reviewed by Oliver.

Test for <rdar://problem/5882050> clicking in hidden close box area of empty searchfield causes mousedown to stop firing

  • fast/forms/search-hidden-cancel-button-expected.txt: Added.
  • fast/forms/search-hidden-cancel-button.html: Added.
7:21 PM Changeset in webkit [34904] by oliver@apple.com
  • 11 edits in trunk/JavaScriptCore

Fix build by adding all (hopefully) the missing includes.

6:56 PM Changeset in webkit [34903] by cwzwarich@webkit.org
  • 3 edits
    3 adds in trunk

2008-06-30 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 19830: REGRESSION (r34883): Google Reader doesn't show up feed list on sidebar
<https://bugs.webkit.org/show_bug.cgi?id=19830>

Ensure that we do not eliminate a write to a local register when doing
peephole optimizations.

JavaScriptCore:

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse):

LayoutTests:

  • fast/js/codegen-peephole-locals-expected.txt: Added.
  • fast/js/codegen-peephole-locals.html: Added.
  • fast/js/resources/codegen-peephole-locals.js: Added.
6:18 PM Changeset in webkit [34902] by adele@apple.com
  • 1 edit in trunk/WebCore/dom/Node.cpp

Fixing * placement

6:11 PM Changeset in webkit [34901] by weinig@apple.com
  • 19 edits
    1 copy
    1 add in trunk

JavaScriptCore:

2008-06-30 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Alder.

Split InternalFunction into its own header file.

  • API/JSCallbackFunction.h:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/ArrayConstructor.h:
  • kjs/BooleanConstructor.h:
  • kjs/DateConstructor.h:
  • kjs/ErrorConstructor.h:
  • kjs/FunctionConstructor.h:
  • kjs/FunctionPrototype.h:
  • kjs/InternalFunction.h: Copied from kjs/JSFunction.h.
  • kjs/JSFunction.h:
  • kjs/NativeErrorConstructor.h:
  • kjs/NumberConstructor.h:
  • kjs/ObjectConstructor.h:
  • kjs/RegExpConstructor.h:
  • kjs/StringConstructor.h:
  • profiler/Profiler.cpp:

WebCore:

2008-06-30 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Split InternalFunction into its own header file.

  • ForwardingHeaders/kjs/InternalFunction.h: Added.
  • bridge/runtime_method.h:
5:47 PM Changeset in webkit [34900] by adele@apple.com
  • 11 edits
    2 adds in trunk

WebCore:

2008-06-30 Adele Peterson <adele@apple.com>

Reviewed by Anders.

Fix for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas

Test: editing/selection/select-all-textarea.html

  • dom/Node.cpp: (WebCore::Node::shadowAncestorNode): Break out code to find the root of the shadow tree into a new helper function. (WebCore::Node::shadowTreeRootNode): Added helper function.
  • dom/Node.h:
  • dom/Range.cpp: (WebCore::Range::shadowTreeRootNode): Added helper function.
  • dom/Range.h:
  • editing/Selection.cpp: (WebCore::Selection::shadowTreeRootNode): ditto.
  • editing/Selection.h:
  • editing/SelectionController.h: (WebCore::SelectionController::shadowTreeRootNode): ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): If the selection is in a shadow tree, only select the contents of that shadow tree, not the whole document.
  • page/Frame.cpp: (WebCore::Frame::findString): Use the new shadowTreeRootNode helper functions. (WebCore::Frame::markAllMatchesForText): ditto.

LayoutTests:

2008-06-30 Adele Peterson <adele@apple.com>

Reviewed by Anders.

Test for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas

  • editing/selection/select-all-textarea-expected.txt: Added.
  • editing/selection/select-all-textarea.html: Added.
4:05 PM Changeset in webkit [34899] by Chris Fleizach
  • 12 edits
    4 adds in trunk

<rdar://problem/4180780> Add attribute to get all the radio buttons in a set

Adds ability for radio buttons to return an array of the other radio buttons in its radio group.
Updates DumpRenderTree to support the linked ui elements attribute

3:52 PM Changeset in webkit [34898] by weinig@apple.com
  • 5 edits
    4 deletes in trunk/JavaScriptCore

2008-06-30 Sam Weinig <sam@webkit.org>

Reviewed by Kevin McCullough.

Remove empty files Instruction.cpp, LabelID.cpp, Register.cpp and RegisterID.cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Instruction.cpp: Removed.
  • VM/LabelID.cpp: Removed.
  • VM/Register.cpp: Removed.
  • VM/RegisterID.cpp: Removed.
3:43 PM Changeset in webkit [34897] by weinig@apple.com
  • 10 edits
    2 moves in trunk/JavaScriptCore

2008-06-30 Sam Weinig <sam@webkit.org>

Rubber-stamped (reluctantly) by Kevin McCullough.

Rename date_object.h/cpp to DateInstance.h/cpp

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/DateConstructor.cpp:
  • kjs/DateInstance.cpp: Copied from kjs/date_object.cpp.
  • kjs/DateInstance.h: Copied from kjs/date_object.h.
  • kjs/DatePrototype.cpp:
  • kjs/DatePrototype.h:
  • kjs/date_object.cpp: Removed.
  • kjs/date_object.h: Removed.
3:10 PM Changeset in webkit [34896] by mitz@apple.com
  • 7 edits in trunk

WebCore:

Reviewed by Adele Peterson.

  • WebCore part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
  • WebCore.base.exp: Removed Editor::setBaseWritingDirection() and added Frame::setSelectionBaseWritingDirection().
  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected): Changed to call Frame::setSelectionBaseWritingDirection().
  • page/Frame.cpp: (WebCore::Frame::setSelectionBaseWritingDirection): Added. If the focused node is a text field or text area, changes its 'dir' attribute. This is what IE does when the user changes the writing direction in a text control. Otherwise, calls down to Editor::setBaseWritingDirection().
  • page/Frame.h:

WebKit/mac:

Reviewed by Adele Peterson.

  • WebKit/mac part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
  • WebView/WebHTMLView.mm: (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call WebCore::Frame::setSelectionBaseWritingDirection() instead of WebCore::Editor::setBaseWritingDirection(). (-[WebHTMLView changeBaseWritingDirection:]): Ditto. (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
2:12 PM Changeset in webkit [34895] by ddkilzer@apple.com
  • 4 edits in trunk/WebCore

Improve HTMLObjectElement data encapsulation

Reviewed by Dave Hyatt.

HTMLObjectElement has some public member variables that should be
private with accessor methods.

No test cases added since there is no change in behavior.

  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::HTMLObjectElement): Reorder initialization of member variables to match defined order in header.
  • html/HTMLObjectElement.h: (WebCore::HTMLObjectElement::classId): Added. (WebCore::HTMLObjectElement::url): Added. (WebCore::HTMLObjectElement::serviceType): Added.
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Use new accessor methods in HTMLObjectElement now that its member variables are private.
2:09 PM Changeset in webkit [34894] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Anders Carlsson.

  • remove unused member variable
  • page/Page.h: Removed Page::m_focusedNode.
1:52 PM Changeset in webkit [34893] by weinig@apple.com
  • 10 edits
    4 copies
    1 move in trunk/JavaScriptCore

2008-06-30 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Remove internal.cpp and move its contents to there own .cpp files.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/GetterSetter.cpp: Copied from kjs/internal.cpp.
  • kjs/InternalFunction.cpp: Copied from kjs/internal.cpp.
  • kjs/JSNumberCell.cpp: Copied from kjs/internal.cpp.
  • kjs/JSString.cpp: Copied from kjs/internal.cpp.
  • kjs/JSString.h:
  • kjs/LabelStack.cpp: Copied from kjs/internal.cpp.
  • kjs/NumberConstructor.cpp:
  • kjs/NumberObject.cpp: (KJS::constructNumber): (KJS::constructNumberFromImmediateNumber):
  • kjs/internal.cpp: Removed.
10:00 AM Changeset in webkit [34892] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Adam.

<rdar://problem/6014209>
Crash when loading manifest from application cache fails


There is no need to set any handles to 0 after calling cacheUpdateFailed(), since
that is done inside the function. Furthermore, after calling cacheUpdateFailed() the cache
group could be deleted causing us to access freed memory and then crashing.


  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::didReceiveResponse): (WebCore::ApplicationCacheGroup::didFail): (WebCore::ApplicationCacheGroup::didFailToLoadManifest):
8:58 AM Changeset in webkit [34891] by Adam Roben
  • 13 edits in trunk

Fix <rdar://5954749> Assertion failure due to HashTable's use of operator&

JavaScriptCore:

Fix <rdar://5954749> Assertion failure due to HashTable's use of
operator&

HashTable was passing &value to constructDeletedValue, which in
classes like WebCore::COMPtr would cause an assertion. We now pass
value by reference instead of by address so that the HashTraits
implementations have more flexibility in constructing the deleted
value.

Reviewed by Ada Chan.

  • VM/CodeGenerator.h: Updated for changes to HashTraits.
  • wtf/HashTable.h: (WTF::::deleteBucket): Changed to pass bucket by reference instead of by address. (WTF::::checkKey): Ditto.
  • wtf/HashTraits.h: (WTF::): Updated HashTraits for HashTable change.

WebCore:

Fix <rdar://5954749> Assertion failure due to HashTable's use of
operator&

Reviewed by Ada Chan.

  • bindings/js/JSSVGPODTypeWrapper.h:
  • dom/Document.h:
  • dom/StyledElement.cpp:
  • platform/graphics/FontCache.cpp:
  • platform/graphics/IntSizeHash.h: (WTF::):
  • platform/text/StringHash.h:
  • platform/win/COMPtr.h:
  • svg/SVGAnimatedTemplate.h: Updated all custom HashTraits for HashTable changes.
8:10 AM Changeset in webkit [34890] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

8:09 AM Changeset in webkit [34889] by mrowe@apple.com
  • 1 copy in tags/Safari-6527

New tag.

4:37 AM Changeset in webkit [34888] by Simon Hausmann
  • 1 edit
    14 deletes in trunk/WebKit/qt

2008-06-30 Simon Hausmann <Simon Hausmann>

Rubber-stamped by Niko.

Removed the obsolete and unmaintained WebKitPart. The integration of
QtWebKit into KDE is now done in the webkitkde component inside KDE.

4:28 AM Changeset in webkit [34887] by Nikolas Zimmermann
  • 113 edits in trunk/LayoutTests

Reviewed by Antti.

Fix all existing tests in svg/dynamic-updates to actually reflect repainting changes, by
removing the timing dependency. Instead model them like frame-getSVGDocument.html by
not including the <script src="js-test-post.js"> element within the TEMPLATE.html but
by dynamically injecting it, if the test actually finished.

4:21 AM Changeset in webkit [34886] by ap@webkit.org
  • 5 edits in trunk/JavaScriptCore

Reviewed by Cameron Zwarich.

Make RegisterFile really unmap memory on destruction.

This fixes run-webkit-tests --threaded, which ran out of address space in a few seconds.

  • VM/RegisterFile.cpp: (KJS::RegisterFile::~RegisterFile): Unmap all the memory, not just 1/4 of it.
  • kjs/JSGlobalObject.h: Don't include RegisterFile.h, so that changes to it don't make half of WebCore rebuild.
  • VM/Machine.h: Don't forward declare RegisterFile, as RegisterFile.h is included already.
  • VM/RegisterFile.h: (KJS::RegisterFile::RegisterFile): Assert that the allocation succeeded.
2:38 AM Changeset in webkit [34885] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-30 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Rubber-stamped by Oliver.

Correct the documentation for op_put_by_index.

  • VM/Machine.cpp: (KJS::Machine::privateExecute):
1:09 AM Changeset in webkit [34884] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-30 Simon Hausmann <Simon Hausmann>

Fix the Qt build.

Added missing includes and changed getItem array calls to use get()
instead.

Jun 29, 2008:

11:17 PM Changeset in webkit [34883] by cwzwarich@webkit.org
  • 6 edits in trunk/JavaScriptCore

2008-06-29 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 19821: Merge the instruction pair (less, jfalse)
<https://bugs.webkit.org/show_bug.cgi?id=19821>

This is a 2.4% win on SunSpider. I needed to add an ALWAYS_INLINE
intrinisc to CodeGenerator::rewindBinaryOp() to avoid a massive
regression in regexp-dna.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::rewindBinaryOp): (KJS::CodeGenerator::emitJumpIfFalse):
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.cpp: (KJS::):
  • VM/Opcode.h:
7:07 PM Changeset in webkit [34882] by dsmith@webkit.org
  • 2 edits in trunk/WebCore

2008-06-29 David Smith <catfish.man@gmail.com>

Rubberstamped by Sam Weinig.

Change a redundant node->isElement() check to an ASSERT for a 1.3% speedup on getElementsByTagName.

  • dom/TagNodeList.cpp: (WebCore::TagNodeList::nodeMatches):
6:41 PM Changeset in webkit [34881] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix SVG layout test regressions
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule): Made this function work again with primitive values, because the @font-face rules SVG fonts create still use a single primitive value rather than a value list.
5:58 PM Changeset in webkit [34880] by mitz@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

2008-06-29 Dan Bernstein <mitz@apple.com>

  • add a missing file from the last check-in
  • fast/css/resources/font-face-descriptor-multiple-values-parsing.js: Added.
5:31 PM Changeset in webkit [34879] by mitz@apple.com
  • 5 edits
    6 adds in trunk

WebCore:

Reviewed by Sam Weinig.

  • fix <rdar://problem/5734440> Specifying a font-weight for @font-face not working

Tests: fast/css/font-face-descriptor-multiple-values-parsing.html

fast/css/font-face-descriptor-multiple-values.html

  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule): Changed to work with value lists for the descriptor properties.
  • css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): Initialize m_hasFontFaceOnlyValues. (WebCore::CSSParser::parseValue): Added a call to deleteFontFaceOnlyValues() if necessary. (WebCore::CSSParser::parseDeclaration): Ditto. (WebCore::CSSParser::clearProperties): Added code to reset m_hasFontFaceOnlyValues to false. (WebCore::CSSParser::parseFontStyle): Added. If there is a single valid identifier other than 'all', creates a CSSPrimitiveValue and assigns it to the property. If 'all' is the only value, or if there are multiple valid identifiers that are not 'all', creates a CSSValueList and assigns it to the property, and sets m_hasFontFaceOnlyValues to true. (WebCore::CSSParser::parseFontVariant): Ditto. (WebCore::CSSParser::parseFontWeight): Ditto. (WebCore::CSSParser::createStyleRule): Added a call to deleteFontFaceOnlyValues(). (WebCore::CSSParser::createFontFaceRule): Added code to change font descriptor properties that had only one value, and therefore were assigned a CSSPrimitiveValue, into CSSValueLists containing that value. (WebCore::CSSParser::deleteFontFaceOnlyValues): Added. Retroactively invalidates font descriptor properties that had values that are only allowed in @font-face. Those are identified by having CSSValueLists rather than CSSPrimitiveValues as their values.
  • css/CSSParser.h: Added m_hasFontFaceOnlyValues, a flag that says that font descriptor property values that are only valid in @font-face were encountered. This is used when the style declaration is created (and we finally know if it is @font-face or not) to delete invalid properties if needed.

LayoutTests:

Reviewed by Sam Weinig.

  • tests for <rdar://problem/5734440> Specifying a font-weight for @font-face not working
  • fast/css/font-face-descriptor-multiple-values-parsing-expected.txt: Added.
  • fast/css/font-face-descriptor-multiple-values-parsing.html: Added.
  • fast/css/font-face-descriptor-multiple-values.html: Added.
  • platform/mac/fast/css/font-face-descriptor-multiple-values-expected.checksum: Added.
  • platform/mac/fast/css/font-face-descriptor-multiple-values-expected.png: Added.
  • platform/mac/fast/css/font-face-descriptor-multiple-values-expected.txt: Added.
3:22 PM Changeset in webkit [34878] by weinig@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Fix non-AllInOne builds.

  • kjs/JSObject.cpp:
  • kjs/JSValue.cpp:
3:18 PM Changeset in webkit [34877] by weinig@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Build fix for Qt.

  • kjs/DateMath.cpp:
  • kjs/DatePrototype.cpp:
3:14 PM Changeset in webkit [34876] by weinig@apple.com
  • 20 edits
    8 copies
    2 moves in trunk/JavaScriptCore

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

Rubber-stamped by Cameron Zwarich.

Splits ErrorConstructor, ErrorPrototype, NativeErrorConstructor and
NativeErrorPrototype out of error_object.h/cpp and renames it ErrorInstance.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/ArrayConstructor.cpp:
  • kjs/ArrayPrototype.cpp:
  • kjs/BooleanPrototype.cpp:
  • kjs/DatePrototype.cpp:
  • kjs/ErrorConstructor.cpp: Copied from kjs/error_object.cpp.
  • kjs/ErrorConstructor.h: Copied from kjs/error_object.h.
  • kjs/ErrorInstance.cpp: Copied from kjs/error_object.cpp.
  • kjs/ErrorInstance.h: Copied from kjs/error_object.h.
  • kjs/ErrorPrototype.cpp: Copied from kjs/error_object.cpp.
  • kjs/ErrorPrototype.h: Copied from kjs/error_object.h.
  • kjs/JSGlobalObject.cpp:
  • kjs/JSObject.cpp:
  • kjs/JSValue.cpp:
  • kjs/NativeErrorConstructor.cpp: Copied from kjs/error_object.cpp.
  • kjs/NativeErrorConstructor.h: Copied from kjs/error_object.h.
  • kjs/NativeErrorPrototype.cpp: Copied from kjs/error_object.cpp.
  • kjs/NativeErrorPrototype.h: Copied from kjs/error_object.h.
  • kjs/NumberPrototype.cpp:
  • kjs/RegExpConstructor.cpp:
  • kjs/RegExpObject.cpp:
  • kjs/RegExpPrototype.cpp:
  • kjs/StringPrototype.cpp:
  • kjs/error_object.cpp: Removed.
  • kjs/error_object.h: Removed.
  • kjs/internal.cpp:
3:02 PM Changeset in webkit [34875] by jchaffraix@webkit.org
  • 9 edits
    5 adds in branches/XBL2/WebCore

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

Reviewed by Eric.

Add the <xbl> element. The hierarchy is inspired from svg:

  • XBLElement is the base class for all XBL elements.
  • XBLXBLElement represents the <xbl> element tag.
  • DerivedSources.make: Added build system information.
  • GNUmakefile.am: Ditto.
  • WebCore.pro: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • dom/Document.cpp: (WebCore::Document::createElement): Create XBL elements if we are in XBL namespace.
  • dom/Node.h: (WebCore::Node::isXBLElement):
  • dom/make_names.pl:
  • page/Frame.cpp: (WebCore::Frame::Frame): Added XBLNames structures initialization.
  • xbl: Added.
  • xbl/XBLElement.h: Added. (WebCore::XBLElement::XBLElement): (WebCore::XBLElement::isXBLElement):
  • xbl/XBLXBLElement.cpp: Added.
  • xbl/XBLXBLElement.h: Added. (WebCore::XBLXBLElement::XBLXBLElement):
  • xbl/xbltags.in: Added.
1:25 PM Changeset in webkit [34874] by weinig@apple.com
  • 2 edits in trunk/WebKitTools

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

Fix Tiger build.

  • DumpRenderTree/mac/EventSendingController.mm: (eventTypeForMouseButtonAndAction):
1:21 PM Changeset in webkit [34873] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

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

Fix non-AllInOne build.

  • kjs/DateConstructor.cpp:
  • kjs/DateMath.cpp:
  • kjs/JSObject.cpp:
12:53 PM Changeset in webkit [34872] by weinig@apple.com
  • 15 edits
    4 copies in trunk/JavaScriptCore

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

Rubber-stamped by Oliver Hunt.

Splits DateConstructor and DatePrototype out of date_object.h/cpp
Moves shared Date code into DateMath.

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/DateConstructor.cpp: Copied from kjs/date_object.cpp.
  • kjs/DateConstructor.h: Copied from kjs/date_object.h.
  • kjs/DateMath.cpp: (KJS::ymdhmsToSeconds): (KJS::): (KJS::skipSpacesAndComments): (KJS::findMonth): (KJS::parseDate): (KJS::timeClip): (KJS::formatDate): (KJS::formatDateUTCVariant): (KJS::formatTime):
  • kjs/DateMath.h: (KJS::gmtoffset):
  • kjs/DatePrototype.cpp: Copied from kjs/date_object.cpp.
  • kjs/DatePrototype.h: Copied from kjs/date_object.h.
  • kjs/JSGlobalObject.cpp:
  • kjs/JSObject.cpp:
  • kjs/date_object.cpp:
  • kjs/date_object.h:
  • kjs/internal.cpp:
12:24 PM Changeset in webkit [34871] by eric@webkit.org
  • 5 edits
    3 adds in trunk

Reviewed by darin.

Add multi-button mouseevent support to DRT
https://bugs.webkit.org/show_bug.cgi?id=15173

It's now possible to specify the mouse button with:
eventSender.mouseDown(1); eventSender.mouseUp(1); etc.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/EventSendingController.h:
  • DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): (eventTypeForMouseButtonAndAction): (-[EventSendingController updateClickCountForButton:]): (-[EventSendingController mouseDown:]): (-[EventSendingController mouseUp:]): (-[EventSendingController mouseMoveToX:Y:]): (-[EventSendingController contextClick]):
1:19 AM Changeset in webkit [34870] by jmalonzo@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-06-29 Jan Michael Alonzo <jmalonzo@webkit.org>

Rubber-stamped by Cameron Zwarich

Fix Gtk non-AllInOne build

  • GNUmakefile.am: include JSVariableObject.cpp
  • kjs/RegExpConstructor.cpp: include RegExpObject.h
  • kjs/RegExpObject.h: forward declare RegExpPrototype

Jun 28, 2008:

10:56 PM Changeset in webkit [34869] by Darin Adler
  • 2 edits in trunk/WebKit/mac

2008-06-28 Darin Adler <Darin Adler>

  • fix build
  • WebView/WebView.mm: (aeDescFromJSValue): Use get instead of getItem, which no longer exists.
10:38 PM Changeset in webkit [34868] by Darin Adler
  • 8 edits
    3 adds in trunk

JavaScriptCore:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

Test: fast/js/array-holes.html

  • kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncConcat): Changed to use getProperty instead of JSArray::getItem -- need to handle properties from the prototype chain instead of ignoring them.
  • kjs/JSArray.cpp: Removed getItem.
  • kjs/JSArray.h: Ditto.

WebCore:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

  • bridge/jni/jni_utility.cpp: (KJS::Bindings::convertArrayInstanceToJavaArray): Use get instead of getItem, since we always want to consider values from the prototypes when looking at JavaScript arrays.

LayoutTests:

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Sam and Cameron.

  • fast/js/array-holes-expected.txt: Added.
  • fast/js/array-holes.html: Added.
  • fast/js/resources/array-holes.js: Added.
8:56 PM Changeset in webkit [34867] by Darin Adler
  • 3 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Cameron.

SunSpider says 1.8% faster.

  • kjs/JSArray.cpp: (KJS::JSArray::JSArray): Initialize m_fastAccessCutoff when creating arrays. Also updated for new location of m_vectorLength. (KJS::JSArray::getItem): Updated for new location of m_vectorLength. (KJS::JSArray::getSlowCase): Added. Broke out the non-hot parts of getOwnPropertySlot to make the hot part faster. (KJS::JSArray::getOwnPropertySlot): Added a new faster case for indices lower than m_fastAccessCutoff. We can do theese with no additional checks or branches. (KJS::JSArray::put): Added a new faster case for indices lower than m_fastAccessCutoff. We can do theese with no additional checks or branches. Moved the maxArrayIndex handling out of this function. Added code to set m_fastAccessCutoff when the very last hole in an array is filled; this is how the cutoff gets set for most arrays. (KJS::JSArray::putSlowCase): Moved the rest of the put function logic in here, to make the hot part of the put function faster. (KJS::JSArray::deleteProperty): Added code to lower m_fastAccessCutoff when a delete makes a new hole in the array. (KJS::JSArray::getPropertyNames): Updated for new location of m_vectorLength. (KJS::JSArray::increaseVectorLength): Ditto. (KJS::JSArray::setLength): Added code to lower m_fastAccessCutoff when setLength makes the array smaller. (KJS::JSArray::mark): Updated for new location of m_vectorLength. (KJS::JSArray::sort): Ditto. Set m_fastAccessCutoff after moving all the holes to the end of the array. (KJS::JSArray::compactForSorting): Ditto. (KJS::JSArray::checkConsistency): Added consistency checks fro m_fastAccessCutoff and updated for the new location of m_vectorLength.
  • kjs/JSArray.h: Added declarations for slow case functions. Replaced m_vectorLength with m_fastAccessCutoff.
7:33 PM Changeset in webkit [34866] by cwzwarich@webkit.org
  • 5 edits in trunk

2008-06-28 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Sam.

When executing a native call, check for an exception before writing the
return value.

JavaScriptCore:

  • VM/Machine.cpp: (KJS::Machine::privateExecute):

LayoutTests:

  • fast/js/exception-sequencing-expected.txt:
  • fast/js/exception-sequencing.html:
7:21 PM Changeset in webkit [34865] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Mark Rowe <mrowe@apple.com>

Build fix. Flag headers as private or public as is appropriate.
These settings were accidentally removed during some project file cleanup.

5:44 PM Changeset in webkit [34864] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

  • allow document markers to touch or overlap if they are not of the same type

Cannot be tested in DumpRenderTree

  • dom/Document.cpp: (WebCore::Document::addMarker):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintDocumentMarkers):
5:09 PM Changeset in webkit [34863] by weinig@apple.com
  • 14 edits
    4 copies in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Splits RegExpConstructor and RegExpPrototype out of RegExpObject.h/cpp

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/RegExpConstructor.cpp: Copied from kjs/RegExpObject.cpp.
  • kjs/RegExpConstructor.h: Copied from kjs/RegExpObject.h.
  • kjs/RegExpObject.cpp:
  • kjs/RegExpObject.h:
  • kjs/RegExpPrototype.cpp: Copied from kjs/RegExpObject.cpp.
  • kjs/RegExpPrototype.h: Copied from kjs/RegExpObject.h.
  • kjs/StringPrototype.cpp:
  • kjs/internal.cpp:
4:44 PM Changeset in webkit [34862] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Fix non-AllInOne builds.

  • kjs/StringConstructor.cpp:
4:30 PM Changeset in webkit [34861] by weinig@apple.com
  • 12 edits
    5 copies
    3 moves
    2 adds in trunk

JavaScriptCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Rename string_object.h/cpp to StringObject.h/cpp and split out StringObjectThatMasqueradesAsUndefined,
StringConstructor and StringPrototype.

  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/StringConstructor.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringConstructor.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringObject.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringObject.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringObjectThatMasqueradesAsUndefined.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/StringPrototype.cpp: Copied from JavaScriptCore/kjs/string_object.cpp.
  • kjs/StringPrototype.h: Copied from JavaScriptCore/kjs/string_object.h.
  • kjs/internal.cpp:
  • kjs/string_object.cpp: Removed.
  • kjs/string_object.h: Removed.

WebCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Update includes after remaming string_object.h to StringObject.h and
splitting out StringObjectThatMasqueradesAsUndefined, StringConstructor
and StringPrototype.

  • ForwardingHeaders/kjs/StringObject.h: Copied from WebCore/ForwardingHeaders/kjs/string_object.h.
  • ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Added.
  • ForwardingHeaders/kjs/StringPrototype.h: Added.
  • ForwardingHeaders/kjs/string_object.h: Removed.
  • bindings/js/JSCSSStyleDeclarationCustom.cpp:
3:57 PM Changeset in webkit [34860] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix: JSVariableObject is now part of AllInOne

  • GNUmakefile.am:
3:22 PM Changeset in webkit [34859] by jchaffraix@webkit.org
  • 17 edits in branches/XBL2/WebCore

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Change XBL legacy code's guard to ENABLE(DEPRECATED_XBL)
to enable compilation.

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document):
  • dom/Document.h:
  • loader/Cache.cpp: (WebCore::createResource): (WebCore::Cache::getStatistics):
  • loader/Cache.h:
  • loader/CachedResource.h: (WebCore::CachedResource::):
  • loader/CachedResourceClient.h:
  • loader/CachedXBLDocument.cpp:
  • loader/CachedXBLDocument.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource):
  • loader/DocLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
  • loader/loader.cpp: (WebCore::Loader::determinePriority):
  • rendering/style/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==):
  • rendering/style/RenderStyle.h:
3:21 PM Changeset in webkit [34858] by Darin Adler
  • 8 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

  • pcre/pcre_compile.cpp: (jsRegExpCompile): Compile in the string if REGEXP_HISTOGRAM is on.
  • pcre/pcre_exec.cpp: (jsRegExpExecute): Add hook to time execution. (Histogram::~Histogram): Print a sorted list of what took time. (Histogram::add): Accumulate records of what took time. (HistogramTimeLogger::~HistogramTimeLogger): Hook that calls Histogram::add at the right moment and creates the global histogram object.
  • pcre/pcre_internal.h: Define REGEXP_HISTOGRAM.
  • pcre/pcre_tables.cpp: Added missing include of "config.h". Not needed any more, but an omissions an earlier version of this patch detected.
  • pcre/pcre_ucp_searchfuncs.cpp: Ditto.
  • pcre/pcre_xclass.cpp: Ditto.
2:54 PM Changeset in webkit [34857] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Try and fix the Windows build again.

  • kjs/RegExpObject.cpp:
  • kjs/date_object.cpp:
  • kjs/error_object.cpp:
2:45 PM Changeset in webkit [34856] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Darin Adler.

Remove unused StringConstructorFunction class.

  • kjs/string_object.h:
2:40 PM Changeset in webkit [34855] by weinig@apple.com
  • 14 edits in trunk/JavaScriptCore

2008-06-28 Sam Weinig <sam@webkit.org>

Fix windows build.

  • kjs/ArrayPrototype.cpp:
  • kjs/BooleanPrototype.cpp:
  • kjs/BooleanPrototype.h:
  • kjs/FunctionPrototype.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/JSObject.cpp:
  • kjs/MathObject.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/NumberPrototype.h:
  • kjs/ObjectConstructor.cpp:
  • kjs/RegExpObject.h:
  • kjs/error_object.h:
  • kjs/string_object.cpp:
2:22 PM Changeset in webkit [34854] by weinig@apple.com
  • 32 edits
    8 copies
    3 moves
    1 add in trunk

JavaScriptCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Oliver Hunt.

Splits FunctionConstructor out of FunctionPrototype.h/cpp
Splits NumberConstructor and NumberPrototype out of NumberObject.h/cpp
Rename object_object.h/cpp to ObjectPrototype.h/cpp and split out ObjectConstructor.

  • API/JSCallbackConstructor.cpp:
  • API/JSClassRef.cpp:
  • API/JSObjectRef.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/ArrayConstructor.cpp:
  • kjs/ArrayConstructor.h:
  • kjs/FunctionConstructor.cpp: Copied from JavaScriptCore/kjs/FunctionPrototype.cpp.
  • kjs/FunctionConstructor.h: Copied from JavaScriptCore/kjs/FunctionPrototype.h.
  • kjs/FunctionPrototype.cpp:
  • kjs/FunctionPrototype.h:
  • kjs/JSFunction.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/MathObject.h:
  • kjs/NumberConstructor.cpp: Copied from JavaScriptCore/kjs/NumberObject.cpp.
  • kjs/NumberConstructor.h: Copied from JavaScriptCore/kjs/NumberObject.h.
  • kjs/NumberObject.cpp:
  • kjs/NumberObject.h:
  • kjs/NumberPrototype.cpp: Copied from JavaScriptCore/kjs/NumberObject.cpp.
  • kjs/NumberPrototype.h: Copied from JavaScriptCore/kjs/NumberObject.h.
  • kjs/ObjectConstructor.cpp: Copied from JavaScriptCore/kjs/object_object.cpp.
  • kjs/ObjectConstructor.h: Copied from JavaScriptCore/kjs/object_object.h.
  • kjs/ObjectPrototype.cpp: Copied from JavaScriptCore/kjs/object_object.cpp.
  • kjs/ObjectPrototype.h: Copied from JavaScriptCore/kjs/object_object.h.
  • kjs/RegExpObject.h:
  • kjs/Shell.cpp:
  • kjs/error_object.h:
  • kjs/internal.cpp:
  • kjs/nodes.cpp:
  • kjs/object_object.cpp: Removed.
  • kjs/object_object.h: Removed.
  • kjs/string_object.h:

WebCore:

2008-06-28 Sam Weinig <sam@webkit.org>

Rubber-stamped by Oliver Hunt.

Update includes after remaming object_object.h to ObjectPrototype.h and
splitting FunctionConstructor out of FunctionPrototype.h

  • ForwardingHeaders/kjs/FunctionConstructor.h: Added.
  • ForwardingHeaders/kjs/ObjectPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/object_object.h.
  • ForwardingHeaders/kjs/object_object.h: Removed.
  • bindings/js/JSEventListener.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/qt/qt_instance.cpp:
2:11 PM Applications using WebKit edited by bug@insecti.com
new browser this year! (diff)
1:24 PM SquirrelFishPerfIdeas edited by erich@atlasocean.com
(diff)
10:49 AM Changeset in webkit [34853] by mitz@apple.com
  • 5 edits in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement): Changed to not load an image if the 'src' attribute is the empty string and the document's base URI is a file: URL.

LayoutTests:

Reviewed by Darin Adler.

  • updated test and results for <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
  • fast/images/load-img-with-empty-src-expected.txt:
  • fast/images/load-img-with-empty-src.html:
9:03 AM Changeset in webkit [34852] by Darin Adler
  • 4 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

SunSpider says 0.9% faster.

  • VM/CodeGenerator.h: (KJS::CodeGenerator::tempDestination): Create a new temporary for ignoredResult() too, just as we would for 0. (KJS::CodeGenerator::finalDestination): Use the temporary if the register passed in is ignoredResult() too, just as we would for 0. (KJS::CodeGenerator::destinationForAssignResult): Return 0 if the passed in register is ignoredResult(), just as we would for 0. (KJS::CodeGenerator::moveToDestinationIfNeeded): Return 0 if the register passed in is ignoredResult(). What matters is that we don't want to emit a move. The return value won't be looked at. (KJS::CodeGenerator::emitNode): Allow ignoredResult() and pass it through to the node's emitCode function.
  • VM/RegisterID.h: (KJS::ignoredResult): Added. Special value to indicate the result of a node will be ignored and need not be put in any register.
  • kjs/nodes.cpp: (KJS::NullNode::emitCode): Do nothing if dst == ignoredResult(). (KJS::BooleanNode::emitCode): Ditto. (KJS::NumberNode::emitCode): Ditto. (KJS::StringNode::emitCode): Ditto. (KJS::RegExpNode::emitCode): Ditto. (KJS::ThisNode::emitCode): Ditto. (KJS::ResolveNode::emitCode): Do nothing if dst == ignoredResult() and the identifier resolves to a local variable. (KJS::ObjectLiteralNode::emitCode): Do nothing if dst == ignoredResult() and the object is empty. (KJS::PostIncResolveNode::emitCode): If dst == ignoredResult(), then do nothing for the local constant case, and do a pre-increment in all the other cases. (KJS::PostDecResolveNode::emitCode): Ditto. (KJS::PostIncBracketNode::emitCode): Ditto. (KJS::PostDecBracketNode::emitCode): Ditto. (KJS::PostIncDotNode::emitCode): Ditto. (KJS::PostDecDotNode::emitCode): Ditto. (KJS::DeleteValueNode::emitCode): Pass ignoredResult() when evaluating the expression. (KJS::VoidNode::emitCode): Ditto. (KJS::TypeOfResolveNode::emitCode): If dst == ignoredResult(), do nothing if the identifier resolves to a local variable, and don't bother generating a typeof opcode in the other case. (KJS::TypeOfValueNode::emitCode): Ditto. (KJS::PreIncResolveNode::emitCode): Do nothing if dst == ignoredResult() and the identifier resolves to a local constant. (KJS::PreDecResolveNode::emitCode): Ditto. (KJS::AssignResolveNode::emitCode): Turn ignoredResult() into 0 in a couple places, because we need to put the result into a register so we can assign it. At other sites this is taken care of by functions like finalDestination. (KJS::CommaNode::emitCode): Pass ignoredResult() when evaluating the first expression. (KJS::ForNode::emitCode): Pass ignoredResult() when evaluating the first and third expressions. (KJS::ForInNode::emitCode): Pass ignoredResult() when evaluating the first expression.
8:50 AM Changeset in webkit [34851] by Darin Adler
  • 7 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver.

SunSpider says 0.8% faster.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Added argv and argc parameters to new_array.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): Ditto.
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewArray): Added.
  • VM/CodeGenerator.h: Added ElementNode* argument to emitNewArray.
  • kjs/nodes.cpp: (KJS::ArrayNode::emitCode): Pass the ElementNode to emitNewArray so it can be initialized with as many elements as possible. If the array doesn't have any holes in it, that's all that's needed. If there are holes, then emit some separate put operations for the other values in the array and for the length as needed.
  • kjs/nodes.h: Added some accessors to ElementNode so the code generator can iterate through elements and generate code to evaluate them. Now ArrayNode does not need to be a friend. Also took out some unused PlacementNewAdoptType constructors.
8:33 AM Changeset in webkit [34850] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Darin Adler <Darin Adler>

Reviewed by Oliver Hunt.

  • kjs/nodes.h: Remove obsolete PlacementNewAdopt constructors. We no longer mutate the AST in place.
3:48 AM Changeset in webkit [34849] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-28 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Oliver Hunt.

Build fix

  • VM/Machine.cpp: include stdio.h
3:47 AM Changeset in webkit [34848] by Nikolas Zimmermann
  • 79 edits
    6 moves
    29 adds in trunk/LayoutTests

Reviewed by Oliver.

Update all (except four) SVG pixel tests, after a long time.
Four tests are broken in trunk, filed bugs 19798 & 19799.

Add all missing png/checksum files, and move files around which were misplaced.

3:23 AM Changeset in webkit [34847] by Nikolas Zimmermann
  • 2 edits in trunk/WebKitTools

Reviewed by Oliver.

Copy <test>-expected.png from the right location to /tmp/layout-test-results.
Use $expectedPixelDir instead of $expectedDir. Allows using SVG pixel tests again.

12:17 AM Changeset in webkit [34846] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Reviewed by Oliver Hunt.

  • make a test valid
  • fast/images/load-img-with-empty-src.html: Renamed the "status" variable to "results", because "status" is a Window property.

Jun 27, 2008:

11:09 PM Changeset in webkit [34845] by weinig@apple.com
  • 8 edits
    9 adds in trunk

WebCore:

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

Reviewed by Dan Bernstein.

<rdar://problem/6025499> Make Cross-site XHR match the final specification

Update the implemented subset of Access-Control for XMLHttpRequest to the
latest version. (Editor's Draft 25 May 2008)

  • Now differentiates between simple and non-simple cross-site requests, the later requiring a preflight.
  • Now sends request headers cross-site, limited by a blacklist.
  • Now allows access to cross-site response headers, limited by a whitelist.
  • Now sends request entity body for non-get cross-site requests after preflight.

Tests: http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html

http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html
http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html

  • xml/XMLHttpRequest.cpp: (WebCore::isOnAccessControllRequestHeaderBlackList): (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): (WebCore::isOnAccessControlResponseHeaderWhitelist): (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::makeSameOriginRequest): (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult): (WebCore::XMLHttpRequest::loadRequestAsynchronously): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::clearRequest): (WebCore::XMLHttpRequest::setRequestHeader): (WebCore::XMLHttpRequest::setRequestHeaderInternal): (WebCore::XMLHttpRequest::getAllResponseHeaders): (WebCore::XMLHttpRequest::getResponseHeader): (WebCore::XMLHttpRequest::didFinishLoading): (WebCore::XMLHttpRequest::didFinishLoadingPreflight): (WebCore::XMLHttpRequest::didReceiveResponse): (WebCore::XMLHttpRequest::didReceiveResponsePreflight): (WebCore::XMLHttpRequest::didReceiveData):
  • xml/XMLHttpRequest.h:

LayoutTests:

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

Reviewed by Dan Bernstein.

<rdar://problem/6025499> Make Cross-site XHR match the final specification
Add tests for the updated implemented subset of Access-Control for XMLHttpRequest.

  • http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html: Added.
  • http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html: Added.
  • http/tests/xmlhttprequest/access-control-basic-not-get-allow-async-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-not-get-allow-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-allow-print-headers.cgi: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-get-fail-non-simple.cgi: Added.
  • http/tests/xmlhttprequest/resources/access-control-basic-whitelist-response-headers.cgi: Added.
  • http/tests/xmlhttprequest/set-dangerous-headers-expected.txt:
10:20 PM Changeset in webkit [34844] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by Oliver Hunt.

Fix platforms that don't use AllInOne.cpp

  • kjs/BooleanConstructor.h:
  • kjs/BooleanPrototype.h:
  • kjs/FunctionPrototype.cpp:
9:29 PM Changeset in webkit [34843] by weinig@apple.com
  • 21 edits
    6 copies in trunk/JavaScriptCore

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

Rubber-stamped by Oliver Hunt.

Splits ArrayConstructor out of ArrayPrototype.h/cpp
Splits BooleanConstructor and BooleanPrototype out of BooleanObject.h/cpp

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/ArrayConstructor.cpp: Copied from kjs/ArrayPrototype.cpp.
  • kjs/ArrayConstructor.h: Copied from kjs/ArrayPrototype.h.
  • kjs/ArrayPrototype.cpp:
  • kjs/ArrayPrototype.h:
  • kjs/BooleanConstructor.cpp: Copied from kjs/BooleanObject.cpp.
  • kjs/BooleanConstructor.h: Copied from kjs/BooleanObject.h.
  • kjs/BooleanObject.cpp:
  • kjs/BooleanObject.h:
  • kjs/BooleanPrototype.cpp: Copied from kjs/BooleanObject.cpp.
  • kjs/BooleanPrototype.h: Copied from kjs/BooleanObject.h.
  • kjs/CommonIdentifiers.h:
  • kjs/FunctionPrototype.cpp:
  • kjs/JSArray.cpp:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/Shell.cpp:
  • kjs/internal.cpp:
  • kjs/nodes.cpp:
  • kjs/string_object.cpp:
9:02 PM Changeset in webkit [34842] by oliver@apple.com
  • 15 edits in trunk/JavaScriptCore

Bug 18626: SQUIRRELFISH: support the "slow script" dialog <https://bugs.webkit.org/show_bug.cgi?id=18626>
<rdar://problem/5973931> Slow script dialog needs to be reimplemented for squirrelfish

Reviewed by Sam

Adds support for the slow script dialog in squirrelfish. This requires the addition
of three new op codes, op_loop, op_loop_if_true, and op_loop_if_less which have the
same behaviour as their simple jump equivalents but have an additional time out check.

Additional assertions were added to other jump instructions to prevent accidentally
creating loops with jump types that do not support time out checks.

Sunspider does not report a regression, however this appears very sensitive to code
layout and hardware, so i would expect up to a 1% regression on other systems.

Part of this required moving the old timeout logic from JSGlobalObject and into Machine
which is the cause of a number of the larger diff blocks.

7:54 PM Changeset in webkit [34841] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Rubber-stamped by Mark Rowe.

Clean up sorting in WebCore.xcodeproj.

  • WebCore.xcodeproj/project.pbxproj:
5:24 PM Changeset in webkit [34840] by jmalonzo@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk and Qt build fix: Remove RegisterFileStack from the build
scripts.

4:31 PM Changeset in webkit [34839] by adele@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-06-27 Adele Peterson <adele@apple.com>

Reviewed by Geoff.

Build fixes.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • VM/RegisterFile.h: (KJS::RegisterFile::RegisterFile):
  • kjs/JSGlobalObject.cpp:
  • kjs/collector.cpp:
3:35 PM Changeset in webkit [34838] by ggaren@apple.com
  • 30 edits
    2 adds
    2 deletes in trunk

JavaScriptCore:

2008-06-27 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


One RegisterFile to rule them all!


SunSpider reports a 0.2% speedup.

This patch removes the RegisterFileStack abstraction and replaces it with
a single register file that


(a) allocates a fixed storage area, including a fixed area for global
vars, so that no operation may cause the register file to reallocate


and

(b) swaps between global storage areas when executing code in different
global objects.


This patch also changes the layout of the register file so that all call
frames, including call frames for global code, get a header. This is
required to support re-entrant global code. It also just makes things simpler.


  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addGlobalVar): New function. Differs from addVar in that


(a) global vars don't contribute to a CodeBlock's numLocals count, since
global storage is fixed and allocated at startup


and


(b) references to global vars get shifted to elide intermediate stack
between "r" and the global storage area.


  • VM/Machine.cpp: (KJS::Machine::dumpRegisters): Updated this function to match the new register file layout, and added the ability to dump exact identifiers for the different parts of a call frame.


(KJS::Machine::unwindCallFrame): Updated this function to match the new
register file layout.


(KJS::Machine::execute): Updated this function to initialize a call frame
header for global code, and to swap global storage areas when switching
to execution in a new global object.


(KJS::Machine::privateExecute): Got rid of "safeForReentry" and re-reading
of registerBase because the register file is always safe for reentry now,
and registerBase never changes.


  • VM/Machine.h: Moved the call frame header enum from Machine to RegisterFile, to resolve a header dependency problem (a good sign that the enum belonged in RegisterFile all along!)
  • VM/RegisterFile.cpp:
  • VM/RegisterFile.h: Changed RegisterFile to mmap a fixed size register area. This allows us to avoid re-allocting the register file later on. Instead, we rely on the OS to allocate physical pages to the register file as necessary.
  • VM/RegisterFileStack.cpp: Removed. Tada!
  • VM/RegisterFileStack.h: Removed. Tada!
  • kjs/DebuggerCallFrame.cpp: Updated this class to match the new register file layout, greatly simplifying it in the process.
  • kjs/JSActivation.h:
  • kjs/JSActivation.cpp: Moved some of this logic up to JSVariableObject, since the global object now needs to be able to tear off its registers just like the activation object.
  • kjs/JSFunction.cpp: No need to fiddle with the register file anymore.
  • kjs/JSGlobalObject.h:
  • kjs/JSGlobalObject.cpp: Updated JSGlobalObject to support moving its global storage area into and out of the register file.
  • kjs/PropertySlot.cpp: No need to fiddle with the register file anymore.
  • kjs/collector.cpp: Renamed markStackObjectConservatively to markConservatively, since we don't just mark stack objects this way.


Also, added code to mark the machine's register file.

  • kjs/config.h: Moved some platforms #defines from here...
  • wtf/Platform.h: ...to here, to support mmap/VirtualAlloc detection in RegisterFile.h.

LayoutTests:

2008-06-26 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Added a test for what happens when a script exceeds the limit on declared
global variables.

  • fast/js/global-var-limit-expected.txt: Added.
  • fast/js/global-var-limit.html: Added.
  • fast/js/global-recursion-on-full-stack-expected.txt: Updated for new (slightly more correct) behavior. Since the stack overflow happens in the middle of a try/catch block, it should be caught, instead of logged to the console.
3:24 PM Changeset in webkit [34837] by jmalonzo@webkit.org
  • 2 edits in trunk/WebKitTools

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Christian Dywan.

[Gtk] Initialize webview settings before running DRT tests
http://bugs.webkit.org/show_bug.cgi?id=19778

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (setDefaultsToConsistentStateValuesForTesting): (main):
3:24 PM Changeset in webkit [34836] by jmalonzo@webkit.org
  • 3 edits in trunk/WebCore

2008-06-27 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Darin Adler.

Remove unnecessary options to make_names.pl command line
http://bugs.webkit.org/show_bug.cgi?id=19777

  • DerivedSources.make:
  • GNUmakefile.am:
2:08 PM Changeset in webkit [34835] by mitz@apple.com
  • 4 edits in trunk

PlanetWebKit:

Reviewed by Timothy Hatcher.

  • wwwroot/planetwebkit.css: Reduced text shadow offsets.

WebKitSite:

Reviewed by Timothy Hatcher.

  • css/main.css: Reduced text shadow offsets.
1:35 PM Changeset in webkit [34834] by Adam Roben
  • 3 edits in trunk/WebKit/win

Change WebKitGraphics truncation functions to return the length of the truncated string

Reviewed by Darin Adler.

  • WebKitGraphics.cpp: (CenterTruncateStringToWidth): (RightTruncateStringToWidth): Return the length.
  • WebKitGraphics.h: The truncation functions now return an unsigned int that is the length of the truncated string. The whole file has been marked extern "C" to keep the symbols for these functions from changing (which would break nightly builds).
11:11 AM Changeset in webkit [34833] by abarth@webkit.org
  • 4 edits in trunk/LayoutTests/platform/mac/fast/parser

Fix mime-types. Not sure how to do this with git.

11:09 AM Changeset in webkit [34832] by abarth@webkit.org
  • 3 edits
    10 adds in trunk

WebCore:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

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

Properly handle untermianted <!-- comments in <textarea>s.

Tests: fast/parser/open-comment-in-script-tricky.html

fast/parser/open-comment-in-style.html
fast/parser/open-comment-in-textarea.html

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

LayoutTests:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

Test our handling of unterminated <!-- comments in various special
parsing contexts. This change does not test our handling of
unterminated comments in <title> or <iframe> because I'm unsure whether
our behaviour is correct.

  • fast/parser/open-comment-in-script-tricky-expected.txt: Added.
  • fast/parser/open-comment-in-script-tricky.html: Added.
  • fast/parser/open-comment-in-style.html: Added.
  • fast/parser/open-comment-in-textarea.html: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/open-comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/open-comment-in-textarea-expected.txt: Added.
11:09 AM Changeset in webkit [34831] by abarth@webkit.org
  • 3 edits
    16 adds in trunk

WebCore:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

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

Text areas in Wikipedia edit pages are empty, following content is missing

Don't treat entities as comment starters in parseSpecial.

Tests: fast/parser/comment-in-iframe.html

fast/parser/entity-comment-in-iframe.html
fast/parser/entity-comment-in-script-tricky.html
fast/parser/entity-comment-in-style.html
fast/parser/entity-comment-in-textarea.html
fast/parser/entity-comment-in-title.html

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

LayoutTests:

2008-06-27 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

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

Test that entities are not used to start comments.

  • fast/parser/comment-in-iframe-expected.txt: Added.
  • fast/parser/comment-in-iframe.html: Added.
  • fast/parser/entity-comment-in-iframe-expected.txt: Added.
  • fast/parser/entity-comment-in-iframe.html: Added.
  • fast/parser/entity-comment-in-script-tricky-expected.txt: Added.
  • fast/parser/entity-comment-in-script-tricky.html: Added.
  • fast/parser/entity-comment-in-style.html: Added.
  • fast/parser/entity-comment-in-textarea.html: Added.
  • fast/parser/entity-comment-in-title-expected.txt: Added.
  • fast/parser/entity-comment-in-title.html: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/entity-comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.txt: Added.
7:32 AM Changeset in webkit [34830] by jchaffraix@webkit.org
  • 7 edits in branches/XBL2

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • configure.ac: Add XBL checks.

WebCore:

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • GNUmakefile.am: Add XBL compilation flags and legacy files.
  • WebCore.pro: Ditto.

WebKitTools:

2008-06-27 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Add build-webkit --xbl option.

  • Scripts/build-webkit: Add the option and the build systems' bit.
5:40 AM Changeset in webkit [34829] by Antti Koivisto
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-27 Antti Koivisto <Antti Koivisto>

Reviewed by Oliver.


<rdar://problem/6030720>
REGRESSION: Discrete animation between incompatible paths does not work

Fall back to discrete path animation if paths are not suitable for morphing.


Test: svg/custom/animate-path-discrete.svg


  • svg/SVGAnimateElement.cpp: (WebCore::SVGAnimateElement::calculateAnimatedValue):

LayoutTests:

2008-06-27 Antti Koivisto <Antti Koivisto>

Reviewed by Oliver.


<rdar://problem/6030720>
REGRESSION: Discrete animation between incompatible paths does not work

  • svg/custom/animate-path-discrete.svg: Added.
  • platform/mac/svg/custom/animate-path-discrete-expected.txt: Added.
5:26 AM Changeset in webkit [34828] by jchaffraix@webkit.org
  • 1 copy in branches/XBL2

Create XBL2 branch.

12:00 AM Changeset in webkit [34827] by Darin Adler
  • 2 edits in trunk/WebKitTools

2008-06-26 Darin Adler <Darin Adler>

  • Scripts/check-for-weak-vtables: Fixed comment.

Jun 26, 2008:

9:54 PM Changeset in webkit [34826] by Darin Adler
  • 1 edit
    1 copy in trunk/WebKitTools

2008-06-26 Darin Adler <Darin Adler>

  • Scripts/check-for-weak-vtables: Added.
9:44 PM Changeset in webkit [34825] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Speculative fix for the Windows build.

9:32 PM Changeset in webkit [34824] by mrowe@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-26 Mark Rowe <mrowe@apple.com>

Reviewed by Darin Adler and Geoff Garen.

Fix the malloc zone introspection functions so that malloc_zone_statistics does not give
bogus output in an application that uses JavaScriptCore.

  • kjs/CollectorHeapIntrospector.cpp: (KJS::CollectorHeapIntrospector::statistics): Return statistics about memory allocated by the collector.
  • kjs/CollectorHeapIntrospector.h:
  • wtf/FastMalloc.cpp: Zero out the statistics. FastMalloc doesn't track this information at present. Returning zero for all values is preferable to returning bogus data.
8:28 PM Changeset in webkit [34823] by dsmith@webkit.org
  • 7 edits in trunk

WebCore:

2008-06-26 David Smith <catfish.man@gmail.com>

Reviewed by Sam Weinig.


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


Optimize simple id selectors in querySelector/querySelectorAll.
~4.4x speedup on the 4 subtests of http://webkit.org/perf/slickspeed/ that it applies to.

  • dom/Document.h: (WebCore::Document::containsMultipleElementsWithId): Added to allow optimizing the common case of no duplicates
  • dom/Node.cpp: (WebCore::Node::querySelector): Uses getElementById instead of DOM traversal where possible now
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList): Uses getElementById instead of DOM traversal where possible now

LayoutTests:

2008-06-26 David Smith <catfish.man@gmail.com>

Reviewed by Sam Weinig.


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


Optimize simple id selectors in querySelector/querySelectorAll.
~4.4x speedup on the 4 subtests of http://webkit.org/perf/slickspeed/ that it applies to.

  • fast/dom/SelectorAPI/dumpNodeList-expected.txt:
  • fast/dom/SelectorAPI/dumpNodeList.html: Add tests for finding ids not in the document, and finding duplicate ids
8:24 PM Changeset in webkit [34822] by mitz@apple.com
  • 8 edits
    2 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: editing/selection/find-in-text-control.html

  • WebCore.base.exp: Updated the TextIterator constructor signature.
  • editing/TextIterator.cpp: (WebCore::TextIterator::TextIterator): Added an enterTextControls boolean parameter that determines whether the iterator should visit text inside text areas and text fields. Added code to initialize the m_inShadowContent member variable based on whether the range is in shadow content. (WebCore::TextIterator::advance): Added code to step out of shadow content. (WebCore::TextIterator::handleReplacedElement): Added code to enter text controls if desired. (WebCore::CharacterIterator::CharacterIterator): Added an enterTextControls boolean parameter that determines whether the iterator should visit text inside text areas and text fields. This is passed to the TextIterator constructor. (WebCore::findPlainText): Changed to use a CharacterIterator that visits text controls.
  • editing/TextIterator.h: Added member variables to track whether the current node is in a shadow tree and whether the iterator should visit text controls.
  • page/Frame.cpp: (WebCore::Frame::findString): Changed to find inside text controls. (WebCore::Frame::markAllMatchesForText): Ditto.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::innerTextElement): Added.
  • rendering/RenderTextControl.h: Added innerTextElement(), a private accessor method that is accessible to TextIterator through class friendship.

LayoutTests:

Reviewed by Darin Adler.

  • editing/selection/find-in-text-control-expected.txt: Added.
  • editing/selection/find-in-text-control.html: Added.
7:53 PM Changeset in webkit [34821] by Darin Adler
  • 24 edits in trunk/JavaScriptCore

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • optimize UString append and the replace function a bit

SunSpider says 1.8% faster.

  • VM/JSPropertyNameIterator.cpp: Added include of JSString.h, now needed because jsString returns a JSString*.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): Removed the toObject call from native function calls. Also removed code to put the this value into a register.
  • kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): Rewrite to handle false and true separately.
  • kjs/FunctionPrototype.cpp: (KJS::constructFunction): Use single-character append rather than building a string for each character.
  • kjs/JSFunction.cpp: (KJS::globalFuncUnescape): Ditto.
  • kjs/JSImmediate.cpp: (KJS::JSImmediate::prototype): Added. Gets the appropriate prototype for use with an immediate value. To be used instead of toObject when doing a get on an immediate value.
  • kjs/JSImmediate.h: Added prototype.
  • kjs/JSObject.cpp: (KJS::JSObject::toString): Tweaked formatting.
  • kjs/JSObject.h: (KJS::JSValue::get): Use prototype instead of toObject to avoid creating an object wrapper just to search for properties. This also saves an unnecessary hash table lookup since the object wrappers themselves don't have any properties.
  • kjs/JSString.h: Added toThisString and toThisJSString.
  • kjs/JSValue.cpp: (KJS::JSCell::toThisString): Added. (KJS::JSCell::toThisJSString): Added. (KJS::JSCell::getJSNumber): Added. (KJS::jsString): Changed return type to JSString*. (KJS::jsOwnedString): Ditto.
  • kjs/JSValue.h: (KJS::JSValue::toThisString): Added. (KJS::JSValue::toThisJSString): Added. (KJS::JSValue::getJSNumber): Added.
  • kjs/NumberObject.cpp: (KJS::NumberObject::getJSNumber): Added. (KJS::integer_part_noexp): Append C string directly rather than first turning it into a UString. (KJS::numberProtoFuncToString): Use getJSNumber to check if the value is a number rather than isObject(&NumberObject::info). This works for immediate numbers, number cells, and NumberObject instances. (KJS::numberProtoFuncToLocaleString): Ditto. (KJS::numberProtoFuncValueOf): Ditto. (KJS::numberProtoFuncToFixed): Ditto. (KJS::numberProtoFuncToExponential): Ditto. (KJS::numberProtoFuncToPrecision): Ditto.
  • kjs/NumberObject.h: Added getJSNumber.
  • kjs/PropertySlot.cpp: Tweaked comment.
  • kjs/internal.cpp: (KJS::JSString::toThisString): Added. (KJS::JSString::toThisJSString): Added. (KJS::JSString::getOwnPropertySlot): Changed code that searches the prototype chain to start with the string prototype and not create a string object. (KJS::JSNumberCell::toThisString): Added. (KJS::JSNumberCell::getJSNumber): Added.
  • kjs/lookup.cpp: (KJS::staticFunctionGetter): Moved here, because there's no point in having a function that's only used for a function pointer be inline. (KJS::setUpStaticFunctionSlot): New function for getStaticFunctionSlot.
  • kjs/lookup.h: (KJS::staticValueGetter): Don't mark this inline. It doesn't make sense to have a function that's only used for a function pointer be inline. (KJS::getStaticFunctionSlot): Changed to get properties from the parent first before doing any handling of functions. This is the fastest way to return the function once the initial setup is done.
  • kjs/string_object.cpp: (KJS::StringObject::getPropertyNames): Call value() instead of getString(), avoiding an unnecessary virtual function call (the call to the type() function in the implementation of the isString() function). (KJS::StringObject::toString): Added. (KJS::StringObject::toThisString): Added. (KJS::StringObject::toThisJSString): Added. (KJS::substituteBackreferences): Rewrote to use a appending algorithm instead of a the old one that tried to replace in place. (KJS::stringProtoFuncReplace): Merged this function and the replace function. Replaced the hand-rolled dynamic arrays for source ranges and replacements with Vector. (KJS::stringProtoFuncToString): Handle JSString as well as StringObject. Removed the separate valueOf implementation, since it can just share this. (KJS::stringProtoFuncCharAt): Use toThisString, which handles JSString as well as StringObject, and is slightly more efficient than the old code too. (KJS::stringProtoFuncCharCodeAt): Ditto. (KJS::stringProtoFuncConcat): Ditto. (KJS::stringProtoFuncIndexOf): Ditto. (KJS::stringProtoFuncLastIndexOf): Ditto. (KJS::stringProtoFuncMatch): Ditto. (KJS::stringProtoFuncSearch): Ditto. (KJS::stringProtoFuncSlice): Ditto. (KJS::stringProtoFuncSplit): Ditto. (KJS::stringProtoFuncSubstr): Ditto. (KJS::stringProtoFuncSubstring): Ditto. (KJS::stringProtoFuncToLowerCase): Use toThisJSString. (KJS::stringProtoFuncToUpperCase): Ditto. (KJS::stringProtoFuncToLocaleLowerCase): Ditto. (KJS::stringProtoFuncToLocaleUpperCase): Ditto. (KJS::stringProtoFuncLocaleCompare): Ditto. (KJS::stringProtoFuncBig): Use toThisString. (KJS::stringProtoFuncSmall): Ditto. (KJS::stringProtoFuncBlink): Ditto. (KJS::stringProtoFuncBold): Ditto. (KJS::stringProtoFuncFixed): Ditto. (KJS::stringProtoFuncItalics): Ditto. (KJS::stringProtoFuncStrike): Ditto. (KJS::stringProtoFuncSub): Ditto. (KJS::stringProtoFuncSup): Ditto. (KJS::stringProtoFuncFontcolor): Ditto. (KJS::stringProtoFuncFontsize): Ditto. (KJS::stringProtoFuncAnchor): Ditto. (KJS::stringProtoFuncLink): Ditto.
  • kjs/string_object.h: Added toString, toThisString, and toThisJSString.
  • kjs/ustring.cpp: (KJS::UString::append): Added a version that takes a character pointer and size, so we don't have to create a UString just to append to another UString.
  • kjs/ustring.h:
7:18 PM Changeset in webkit [34820] by Darin Adler
  • 2 edits in trunk/WebCore

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • bridge/runtime.h: Added include of JSString.h since jsString will soon change to return a JSString*.
7:17 PM Changeset in webkit [34819] by Darin Adler
  • 3 edits in trunk/JavaScriptGlue

2008-06-26 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString will soon be changed to return a JSString*.
  • UserObjectImp.cpp: Ditto.
5:08 PM Changeset in webkit [34818] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Adele Peterson <adele@apple.com>

Fix suggested by Eric Carlson, added by me, reviewed by Adam.

Fix for <rdar://problem/5733006> <video> and <audio> element should not prompt user for missing files

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie): Set object with key QTMovieAskUnresolvedDataRefsAttribute to NO in the attributes dictionary passed to -[QTMovie initWithAttributes:]
5:03 PM Changeset in webkit [34817] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

<rdar://problem/6031969> Crash in SecurityOrigin code going Forward to a page in the back/forward cache

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::open): Make sure to update the SecurityOrigin and URL of the DOMWindow when opening a CachedPage.
3:54 PM Changeset in webkit [34816] by Beth Dakin
  • 4 edits in trunk

WebKitTools:

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Sam.

Do not include AXPosition in the dump of all of the accessibility
attributes since it is screen-specific.

  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::allAttributesOfFocusedElement):

LayoutTests:

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Sam.

Updated results that will pass on all platforms.

  • accessibility/document-attributes-expected.txt:
3:45 PM Changeset in webkit [34815] by eric@webkit.org
  • 5 edits in trunk/WebCore

Reviewed by Beth Dakin.

CSS @import statements can cause DocLoader to use
a dead Frame pointer.
https://bugs.webkit.org/show_bug.cgi?id=19618

The fix is to get rid of the Frame pointer on DocLoader.

I also took this opportunity to clean up Document::detach
a little to make it clear why we clear the m_frame pointer
there, and to note that in the future we should stop
using Node::detach to mean "tear down the whole rendering
tree and detach from the frame".

Test: I don't know how to make a good test for this, the test
we have is network timing dependent and does not make a good
layout test.

  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::detach): (WebCore::Document::clearFramePointer):
  • dom/Document.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::frame):
  • loader/DocLoader.h:
3:22 PM Changeset in webkit [34814] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

2008-06-26 Sam Weinig <sam@webkit.org>

Update result after adding new progress events to XMLHttpRequest.

  • fast/dom/xmlhttprequest-get-expected.txt:
2:32 PM Changeset in webkit [34813] by Beth Dakin
  • 3 edits in trunk/WebKitTools

2008-06-26 Beth Dakin <Beth Dakin>

Reviewed by Anders.

This is a speculative fix for the failing layout test on the build
bot. It seems that the problem that the Build Bot is having is
Tiger-specific. On Tiger, [NSValue description] was not very smart.
So I replaced our call to description with a hand-rolled equivalent
that will match on both platforms.

  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (descriptionOfValue):
1:13 PM Changeset in webkit [34812] by andersca@apple.com
  • 4 edits
    2 adds in trunk/WebKit

WebKit:

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Add MainThreadObjectDeallocator to sources.


  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread
if necessary. Use this for the WebView class.


  • WebView/MainThreadObjectDeallocator.h: Added.
  • WebView/MainThreadObjectDeallocator.mm: Added. (deallocCallback): (scheduleDeallocateOnMainThread):
  • WebView/WebView.mm: (-[WebViewPrivate dealloc]): (+[WebView initialize]):
12:07 PM Changeset in webkit [34811] by andersca@apple.com
  • 2 edits in trunk/WebCore

2008-06-26 Anders Carlsson <andersca@apple.com>

Reviewed by Brady.

Don't enumerate document.applets trying to determine if a page contains applets.
Instead, set m_containsPlugIns to true when an applet has been created.


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::canCachePage): (WebCore::FrameLoader::createJavaAppletWidget):
11:59 AM Changeset in webkit [34810] by ap@webkit.org
  • 14 edits in trunk

Reviewed by Maciej.

Make JSGlobalData per-thread.

No change on SunSpider total.

  • wtf/ThreadSpecific.h: Re-enabled the actual implementation.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::~JSGlobalObject): Re-added a JSLock-related assertion. We'll probably want to preserve these somehow to keep legacy behavior in working condition. (KJS::JSGlobalObject::init): Initialize globalData pointer earlier, so that it is ready when updating JSGlobalObject linked list.
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::head): Changed head() to be non-static, and to use JSGlobalData associated with the current object.
  • kjs/InitializeThreading.cpp: (KJS::initializeThreadingOnce): Removed a no longer needed Heap::registerAsMainThread() call.
  • kjs/JSGlobalData.h: Removed a lying lie comment - parserObjectExtraRefCounts is not transient, and while newParserObjects may conceptually be such, there is still some node manipulation going on outside Parser::parse which touches it.
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::~JSGlobalData): Delete recently added members. (KJS::JSGlobalData::sharedInstance): Actually use a separate instance.
  • kjs/collector.cpp: (KJS::Heap::Heap): (KJS::Heap::~Heap): Added a destructor, which unconditionally deletes everything. (KJS::Heap::sweep): Removed code related to "collect on main thread only" logic. (KJS::Heap::collect): Ditto. (KJS::Heap::globalObjectCount): Explicitly use per-thread instance of JSGlobalObject linked list now that JSGlobalObject::head() is not static. Curently, WebCoreStatistics methods only work with the main thread currently anyway. (KJS::Heap::protectedGlobalObjectCount): Ditto.
  • kjs/collector.h: Removed code related to "collect on main thread only" logic.
11:37 AM Changeset in webkit [34809] by ap@webkit.org
  • 4 edits
    3 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19767
REGRESSION: Crash in sort() when visiting http://www.onnyturf.com/subway/

  • kjs/JSArray.cpp: (KJS::AVLTreeAbstractorForArrayCompare::set_balance_factor): Made changing balance factor from -1 to +1 work correctly.
  • wtf/AVLTree.h: (KJS::AVLTreeDefaultBSet::operator[]): Added an assertion that catches this slightly earlier.
10:17 AM Changeset in webkit [34808] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-26 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

[svg] Disable plugins for SVG images
The Qt platform allows to have a plugin factory per Page. Now SVG Images
are using a Page and dummy/empty clients for Chrome. The only way to get
the kit from the WebCore::Page is to go through the ChromeClient but this
is not possible when the ChromeClient is an empty client. This leads to a
crash in PluginDataQt.cpp. One way to avoid this would have been the
addition of a rtti like field to ChromeClient to see if it is an empty
client. The other possibility is to not enable plugins for images.

The SVGImage relies on the fact that the document is a SVGDocument and
that the rootElement is a SVGSVGElement. If plugins are used we could
end up with a PluginDocument and crash badly. Do not try to use plugins
if plugins are disabled for the WebCore::Page.

10:17 AM Changeset in webkit [34807] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-25 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

CodingStyle fixes

10:17 AM Changeset in webkit [34806] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-25 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Simon.

[svg] Make QtWebKit build more of the SVG support
Add the proper defines and files, update SVGResourceFilterQt.cpp
to be enabled by the filter option and not by experimental svg support

8:41 AM Changeset in webkit [34805] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mark.

<rdar://problem/5984270>
REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread


  • WebView/WebView.mm: (tigerMailReleaseIMP): New method that makes sure that the final release happens on the main thread.


(-[WebView release]):
New method that just calls [super release];


(+[WebView initialize]):
When running under Tiger mail, replace the release method with tigerMailReleaseIMP.

6:51 AM BuildingOnWindows edited by baudel@ilog.fr
Feedback on my experience building webkit: missing cygwin packages (diff)

Jun 25, 2008:

6:52 PM Changeset in webkit [34804] by mjs@apple.com
  • 3 edits in trunk/WebKitSite

2008-06-25 Maciej Stachowiak <mjs@apple.com>

Not reviewed, web site fix.


Remove blank lines in an attempt to fix feeds.

  • blog/wp-content/themes/webkit/index.php:
  • blog/wp-content/themes/webkit/links.php:
6:10 PM Changeset in webkit [34803] by mitz@apple.com
  • 1 edit
    1 move in trunk/LayoutTests

2008-06-25 Jean-Charles Verdié <jcverdie@pleyo.com>

Reviewed by Geoffrey Garen.

  • dom/xhtml/level2/html/HTMLFrameElement09.xhtml: Removed.
  • dom/xhtml/level2/html/HTMLFrameElement09.xhtml-disabled: Copied from LayoutTests/dom/xhtml/level2/html/HTMLFrameElement09.xhtml.
5:22 PM Changeset in webkit [34802] by Beth Dakin
  • 6 edits
    8 adds in trunk

WebKitTools:

2008-06-25 Beth Dakin <Beth Dakin>

Reviewed by Sam Weinig.

This patch adds support to the AccessibilityController to query the
following attributes specifically, without a full attribute dump:
AXRole, AXTitle, and AXDescription.

  • DumpRenderTree/AccessibilityController.cpp: (allAttributesForFocusedElementCallback): (roleOfFocusedElementCallback): (titleOfFocusedElementCallback): (descriptionOfFocusedElementCallback): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::allAttributesForFocusedElement): (concatenateAttributeAndValue): (AccessibilityController::roleOfFocusedElement): (AccessibilityController::titleOfFocusedElement): (AccessibilityController::descriptionOfFocusedElement):

LayoutTests:

2008-06-25 Beth Dakin <Beth Dakin>

Reviewed by Sam Weinig.

New tests that exercise the ability to query the following
accessibility attributes individually: role, title, and
description.

  • accessibility/aria-describedby-on-input-expected.txt: Added.
  • accessibility/aria-describedby-on-input.html: Added.
  • accessibility/aria-labelledby-on-input-expected.txt: Added.
  • accessibility/aria-labelledby-on-input.html: Added.
  • accessibility/aria-roles-expected.txt: Added.
  • accessibility/aria-roles.html: Added.
  • accessibility/document-attributes.html:
  • accessibility/resources: Added.
  • accessibility/resources/cake.png: Added.
4:44 PM Changeset in webkit [34801] by weinig@apple.com
  • 3 edits in trunk/WebCore

2008-06-25 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Move XMLHttpRequestState enum into XMLHttpRequest and rename to State.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::readyState): (WebCore::XMLHttpRequest::changeState): (WebCore::XMLHttpRequest::open):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::create): (WebCore::XMLHttpRequest::):
2:44 PM Changeset in webkit [34800] by timothy@apple.com
  • 6 edits
    1 copy in trunk

Fixes an ASSERT in the profiler when starting multiple profiles
with the same name inside the same function/program.

Reviewed by Kevin McCullough.

  • profiler/Profile.cpp: (KJS::Profile::Profile): Initialize m_stoppedCallDepth to zero. (KJS::Profile::stopProfiling): Set the current node to the parent, because we are in a call that will not get a didExecute call. (KJS::Profile::removeProfile): Increment m_stoppedCallDepth to account for didExecute not being called for profile. (KJS::Profile::willExecute): Increment m_stoppedCallDepth if stopped. (KJS::Profile::didExecute): Decrement m_stoppedCallDepth if stopped and greater than zero, and return early.
  • profiler/Profile.h: Added stoppedProfiling().
  • profiler/Profiler.cpp: (KJS::Profiler::findProfile): Removed. (KJS::Profiler::startProfiling): Don't return early for stopped profiles. (KJS::Profiler::stopProfiling): Skipp stopped profiles. (KJS::Profiler::didFinishAllExecution): Code clean-up.
  • profiler/Profiler.h: Removed findProfile.
2:22 PM Changeset in webkit [34799] by justin.garcia@apple.com
  • 10 edits
    4 adds in trunk

WebCore:

2008-06-25 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/5994480> Line break lost on some pastes


Merging the the first paragraph of inserted content with the content that came
before the selection that was pasted into would also move content after
the selection that was pasted into if:


1) Only one paragraph was being pasted, and it was not wrapped in a block
2) The selection that was pasted into ended at the end of a block
3) The next paragraph didn't start at the start of a block.


Insert a line break just after the inserted content to separate it from what
comes after and prevent that from happening.


Doing this exposed a bug in deletion where it would insert an unnecessary placeholder
when deleting a paragraph that started or ended with an input element. This was
because its m_startBlock and m_endBlock were still computed with the old deprecated
enclosingBlockFlowOrTableElement().


  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData): Use the new method for getting an enclosing block. (WebCore::DeleteSelectionCommand::doApply): The new method for getting an enclosing block will return 0 if it reaches the root editable element before finding a block, so if we're deleting inside an inline editable root, m_start/endBlock will be 0. Removed an early return for this case (we already have test coverage for it).
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): Insert a line break just after the inserted content to separate it from what comes after.
  • dom/Node.h: Removed enclosingBlockFlowOrTableElement().
  • dom/Node.cpp: Ditto.

LayoutTests:

2008-06-25 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.


<rdar://problem/5994480> Line break lost on some pastes


These demonstrate fixes:

  • editing/inserting/5994480.html: Added.
  • editing/inserting/5994480-expected.txt: Added.
  • editing/inserting/5994480-2.html: Added.
  • editing/inserting/5994480-2-expected.txt: Added.


The changes made in this fix caused more of the unrendered text from the original
file to be preserved and show up in the test results. We insert a line break after
inserted content to separate it from content that comes after and prevent it from
being merged. In these what came after was unrendered whitespace that was previously
clobbered by the merge:

  • platform/mac/editing/pasteboard/paste-match-style-001-expected.txt:
  • platform/mac/editing/pasteboard/paste-text-010-expected.txt:
  • platform/mac/editing/pasteboard/smart-paste-001-expected.txt:
  • platform/mac/editing/style/style-boundary-005-expected.txt:
1:51 PM Changeset in webkit [34798] by ddkilzer@apple.com
  • 1 edit in trunk/BugsSite/ChangeLog

Fixed date.

11:49 AM Changeset in webkit [34797] by ddkilzer@apple.com
  • 2 edits in trunk/BugsSite

Make PrettyPatch handle diffs with no Index or diff headers

Part of Bug 19290: More patches not handled by PrettyPatch.rb
<https://bugs.webkit.org/show_bug.cgi?id=19290>

Reviewed by Adam.

  • PrettyPatch/PrettyPatch.rb: (PrettyPatch.DIFF_HEADER_FORMATS): Added regular expression to match on "+++ " lines for patches with no "Index" or "diff" header. (PrettyPatch.FileDiff.initialize): Look for filename on "+++ " line when the first line of a patch has no "Index" or "diff" header. (PrettyPatch.FileDiff.parse): Added haveSeenDiffHeader state variable to determine when no "Index" or "diff" header has been found, but a new patch has started with a "--- " line.
11:21 AM Changeset in webkit [34796] by andersca@apple.com
  • 3 edits in trunk/WebCore

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Dave Hyatt.

Fix refcount leak in CSSVariablesRule.

  • css/CSSParser.cpp: (WebCore::CSSParser::createVariablesRule):
  • css/CSSVariablesRule.h: (WebCore::CSSVariablesRule::create): (WebCore::CSSVariablesRule::setDeclaration):
10:31 AM Changeset in webkit [34795] by andersca@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/6007111>
https://bugs.webkit.org/show_bug.cgi?id=19516
DOM modification causes Access Violation (NULL pointer?)


Null check the document element.


  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):

LayoutTests:

2008-06-25 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/6007111>
https://bugs.webkit.org/show_bug.cgi?id=19516
DOM modification causes Access Violation (NULL pointer?)

  • fast/dom/HTMLHtmlElement/duplicate-html-element-crash-expected.txt: Added.
  • fast/dom/HTMLHtmlElement/duplicate-html-element-crash.html: Added.
9:36 AM Changeset in webkit [34794] by mitz@apple.com
  • 23 edits
    9 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5873639> REGRESSION (r31620): css2.1/t1506-c525-font-wt-00-b fails on Windows

Tests: fast/css/font-face-locally-installed.html

fast/css/font-face-multiple-faces.html

  • WebCore.vcproj/WebCore.vcproj: Added FontTraitsMask.h.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/CSSFontFace.h: Made CSSFontFace store descriptors from the @font-face rule, as follows: (WebCore::CSSFontFace::create): Added a FontTraitsMask argument. (WebCore::CSSFontFace::traitsMask): Added this accessor. (WebCore::CSSFontFace::addRange): Added. (WebCore::CSSFontFace::ranges): Added. (WebCore::CSSFontFace::UnicodeRange::UnicodeRange): (WebCore::CSSFontFace::UnicodeRange::from): (WebCore::CSSFontFace::UnicodeRange::to): (WebCore::CSSFontFace::CSSFontFace): Added a FontTraitsMask and a vector of UnicodeRanges as member variables.
  • css/CSSFontFaceSource.cpp: Changed the hash key from the font size alone to the font size and the synthetic style bits, needed if the same source supplies different synthesized versions. (WebCore::CSSFontFaceSource::pruneTable): (WebCore::CSSFontFaceSource::getFontData):
  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::~CSSFontSelector): Added code to delete the contents of the font face, locally-installed font face and segmented font tables. (WebCore::CSSFontSelector::addFontFaceRule): Changed this function to not create segmented font faces, but instead just collect font faces and annotate them with descriptors (traits and unicode ranges). (WebCore::compareFontFaces): Added. Used in getFontData() to sort the font faces by proximity to the desired traits. (WebCore::CSSFontSelector::getFontData): Changed to create the segmented font face here and cache it.
  • css/CSSFontSelector.h:
  • css/CSSSegmentedFontFace.cpp: Changed to keep a vector of font faces instead of font face ranges, as font faces now know their Unicode ranges. (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace): (WebCore::CSSSegmentedFontFace::isLoaded): (WebCore::CSSSegmentedFontFace::isValid): (WebCore::CSSSegmentedFontFace::appendFontFace): (WebCore::CSSSegmentedFontFace::getFontData): Removed the synthetic traits parameters, and instead changed to set them on each FontData separately based on the difference between the desired traits and the font face's traits.
  • css/CSSSegmentedFontFace.h:
  • platform/graphics/FontCache.h: Removed fontExists() and added getTraitsInFamily().
  • platform/graphics/FontDescription.cpp: (WebCore::FontDescription::traitsMask): Added.
  • platform/graphics/FontDescription.h:
  • platform/graphics/FontTraitsMask.h: Added.
  • platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): Changed to fill in with glyphs from all fonts in the segmented font, using each font in turn to fill in characters not covered by earlier fonts.
  • platform/graphics/gtk/FontCacheGtk.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::FontCache::getTraitsInFamily): Added.
  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/graphics/win/FontCacheWin.cpp: (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData): Added. (WebCore::traitsInFamilyEnumProc): Added. (WebCore::FontCache::getTraitsInFamily): Added.
  • platform/graphics/wx/FontCacheWx.cpp: (WebCore::FontCache::getTraitsInFamily): Added a stub.
  • platform/mac/WebFontCache.h:
  • platform/mac/WebFontCache.mm: (toTraitsMask): Added. (+[WebFontCache getTraits:inFamily:]): Added.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/css/font-face-locally-installed.html: Added.
  • fast/css/font-face-multiple-faces.html: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.checksum: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.png: Added.
  • platform/mac/fast/css/font-face-locally-installed-expected.txt: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.checksum: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.png: Added.
  • platform/mac/fast/css/font-face-multiple-faces-expected.txt: Added.
  • platform/win/Skipped: Removed css2.1/t1506-c525-font-wt-00-b.html.
1:38 AM Changeset in webkit [34793] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-25 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Alexey Proskuryakov.

Attempt to fix Windows debug build. The compiler gives a warning when
Structured Exception Handling and destructors are used in the same
function. Using manual locking and unlocking instead of constructors
and destructors should fix the warning.

  • kjs/Shell.cpp: (main):
12:15 AM Changeset in webkit [34792] by ap@webkit.org
  • 4 edits in trunk/JavaScriptCore

Forgot to address a review comment about better names for tracked objects, doing it now.

  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData):
  • kjs/JSGlobalData.h:
  • kjs/nodes.cpp: (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::ref): (KJS::ParserRefCounted::deref): (KJS::ParserRefCounted::hasOneRef): (KJS::ParserRefCounted::deleteNewObjects):
12:07 AM Changeset in webkit [34791] by ap@webkit.org
  • 11 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Remove more threadInstance() calls.

  • kjs/JSFunction.cpp: (KJS::JSFunction::getParameterName): (KJS::IndexToNameMap::unMap): (KJS::Arguments::deleteProperty):
  • kjs/JSFunction.h: Access nullIdentifier without going to thread specific storage.
  • JavaScriptCore.exp:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::JSGlobalData):
  • kjs/JSGlobalData.h:
  • kjs/Parser.cpp: (KJS::Parser::parse):
  • kjs/Parser.h: (KJS::ParserRefCountedData::ParserRefCountedData): (KJS::Parser::parse):
  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::ref): (KJS::ParserRefCounted::deref): (KJS::ParserRefCounted::hasOneRef): (KJS::ParserRefCounted::deleteNewObjects): (KJS::Node::Node): (KJS::StatementNode::StatementNode): (KJS::BreakpointCheckStatement::BreakpointCheckStatement): (KJS::ConstDeclNode::ConstDeclNode): (KJS::BlockNode::BlockNode): (KJS::ForInNode::ForInNode): (KJS::ScopeNode::ScopeNode): (KJS::ProgramNode::ProgramNode): (KJS::ProgramNode::create): (KJS::EvalNode::EvalNode): (KJS::EvalNode::create): (KJS::FunctionBodyNode::FunctionBodyNode): (KJS::FunctionBodyNode::create):
  • kjs/nodes.h: (KJS::ExpressionNode::): (KJS::NullNode::): (KJS::BooleanNode::): (KJS::NumberNode::): (KJS::ImmediateNumberNode::): (KJS::StringNode::): (KJS::RegExpNode::): (KJS::ThisNode::): (KJS::ResolveNode::): (KJS::ElementNode::): (KJS::ArrayNode::): (KJS::PropertyNode::): (KJS::PropertyListNode::): (KJS::ObjectLiteralNode::): (KJS::BracketAccessorNode::): (KJS::DotAccessorNode::): (KJS::ArgumentListNode::): (KJS::ArgumentsNode::): (KJS::NewExprNode::): (KJS::EvalFunctionCallNode::): (KJS::FunctionCallValueNode::): (KJS::FunctionCallResolveNode::): (KJS::FunctionCallBracketNode::): (KJS::FunctionCallDotNode::): (KJS::PrePostResolveNode::): (KJS::PostIncResolveNode::): (KJS::PostDecResolveNode::): (KJS::PostfixBracketNode::): (KJS::PostIncBracketNode::): (KJS::PostDecBracketNode::): (KJS::PostfixDotNode::): (KJS::PostIncDotNode::): (KJS::PostDecDotNode::): (KJS::PostfixErrorNode::): (KJS::DeleteResolveNode::): (KJS::DeleteBracketNode::): (KJS::DeleteDotNode::): (KJS::DeleteValueNode::): (KJS::VoidNode::): (KJS::TypeOfResolveNode::): (KJS::TypeOfValueNode::): (KJS::PreIncResolveNode::): (KJS::PreDecResolveNode::): (KJS::PrefixBracketNode::): (KJS::PreIncBracketNode::): (KJS::PreDecBracketNode::): (KJS::PrefixDotNode::): (KJS::PreIncDotNode::): (KJS::PreDecDotNode::): (KJS::PrefixErrorNode::): (KJS::UnaryOpNode::UnaryOpNode): (KJS::UnaryPlusNode::): (KJS::NegateNode::): (KJS::BitwiseNotNode::): (KJS::LogicalNotNode::): (KJS::BinaryOpNode::BinaryOpNode): (KJS::ReverseBinaryOpNode::ReverseBinaryOpNode): (KJS::MultNode::): (KJS::DivNode::): (KJS::ModNode::): (KJS::AddNode::): (KJS::SubNode::): (KJS::LeftShiftNode::): (KJS::RightShiftNode::): (KJS::UnsignedRightShiftNode::): (KJS::LessNode::): (KJS::GreaterNode::): (KJS::LessEqNode::): (KJS::GreaterEqNode::): (KJS::InstanceOfNode::): (KJS::InNode::): (KJS::EqualNode::): (KJS::NotEqualNode::): (KJS::StrictEqualNode::): (KJS::NotStrictEqualNode::): (KJS::BitAndNode::): (KJS::BitOrNode::): (KJS::BitXOrNode::): (KJS::LogicalAndNode::): (KJS::LogicalOrNode::): (KJS::ConditionalNode::): (KJS::ReadModifyResolveNode::): (KJS::AssignResolveNode::): (KJS::ReadModifyBracketNode::): (KJS::AssignBracketNode::): (KJS::AssignDotNode::): (KJS::ReadModifyDotNode::): (KJS::AssignErrorNode::): (KJS::CommaNode::): (KJS::VarDeclCommaNode::): (KJS::ConstStatementNode::): (KJS::SourceElements::SourceElements): (KJS::EmptyStatementNode::): (KJS::DebuggerStatementNode::): (KJS::ExprStatementNode::): (KJS::VarStatementNode::): (KJS::IfNode::): (KJS::IfElseNode::): (KJS::DoWhileNode::): (KJS::WhileNode::): (KJS::ForNode::): (KJS::ContinueNode::): (KJS::BreakNode::): (KJS::ReturnNode::): (KJS::WithNode::): (KJS::LabelNode::): (KJS::ThrowNode::): (KJS::TryNode::): (KJS::ParameterNode::): (KJS::FuncExprNode::): (KJS::FuncDeclNode::): (KJS::CaseClauseNode::): (KJS::ClauseListNode::): (KJS::CaseBlockNode::): (KJS::SwitchNode::): Changed ParserRefCounted to hold a JSGlobalData pointer, and used it to replace threadInstance calls.

Jun 24, 2008:

11:34 PM Changeset in webkit [34790] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Alexey Proskuryakov.

Make the JavaScript shell collect the heap from main() instead of
jscmain() to suppress leak messages in debug builds.

  • kjs/Shell.cpp: (main): (jscmain):
9:35 PM Changeset in webkit [34789] by abarth@webkit.org
  • 4 edits
    2 adds in trunk

WebCore:

2008-06-24 Anonymous

Reviewed by Darin Adler. Committed by Adam Barth.

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

Check for a null documentElement() to fix four crashes.

  • WebCore/dom/Document.cpp:
  • WebCore/dom/Node.cpp:

LayoutTests:

2008-06-24 Anonymous

Reviewed by Darin Adler. Committed by Adam Barth.

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

Check for a null documentElement() to fix four crashes.

  • LayoutTests/fast/dom/documentElement-null-expected.txt: Added.
  • LayoutTests/fast/dom/documentElement-null.html: Added.
9:32 PM Changeset in webkit [34788] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests/platform/mac/fast/parser

Fix png mime-type

9:14 PM Changeset in webkit [34787] by abarth@webkit.org
  • 3 edits
    12 adds in trunk

WebCore:

2008-06-24 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

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

Correctly parse <!-- </textarea> --> inside a <textarea>, matching
Internet Explorer, Firefox, Opera, and HTML 5.

Tests: fast/parser/comment-in-script-tricky.html

fast/parser/comment-in-style.html
fast/parser/comment-in-textarea.html
fast/parser/comment-in-title.html

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

LayoutTests:

2008-06-24 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

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

Test that we correctly parse comments containing end tags in CDATA and
RCDATA contexts.

  • fast/parser/comment-in-script-tricky-expected.txt: Added.
  • fast/parser/comment-in-script-tricky.html: Added.
  • fast/parser/comment-in-style.html: Added.
  • fast/parser/comment-in-textarea.html: Added.
  • fast/parser/comment-in-title-expected.txt: Added.
  • fast/parser/comment-in-title.html: Added.
  • platform/mac/fast/parser/comment-in-style-expected.checksum: Added.
  • platform/mac/fast/parser/comment-in-style-expected.png: Added.
  • platform/mac/fast/parser/comment-in-style-expected.txt: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.checksum: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.png: Added.
  • platform/mac/fast/parser/comment-in-textarea-expected.txt: Added.
7:41 PM Changeset in webkit [34786] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Reviewed by Mark Rowe.

  • add another test using remote fonts to the Tiger skipped list
  • platform/mac-tiger/Skipped: Added fast/css/font-weight-1.html.
7:04 PM Changeset in webkit [34785] by mrowe@apple.com
  • 2 edits in trunk/LayoutTests

2008-06-24 Mark Rowe <mrowe@apple.com>

Exclude the newly-added accessibilityController from the dumped window properties.

  • fast/dom/Window/window-properties.html:
5:41 PM Changeset in webkit [34784] by cwzwarich@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Make the conversion of the pair (less, jtrue) to jless use register
reference counting information for safety instead of requiring callers
to decide whether it is safe.

No changes on SunSpider codegen.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJumpIfTrue):
  • VM/CodeGenerator.h:
  • kjs/nodes.cpp: (KJS::DoWhileNode::emitCode): (KJS::WhileNode::emitCode): (KJS::ForNode::emitCode): (KJS::CaseBlockNode::emitCodeForBlock):
5:36 PM Changeset in webkit [34783] by mitz@apple.com
  • 3 edits in trunk/WebKitTools

Reviewed by Stephanie Lewis.

  • move the linker flags from the debug configuration in the project to the shared configuration
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
5:03 PM Changeset in webkit [34782] by mitz@apple.com
  • 2 edits in trunk/WebKitTools
  • try to fix the Tiger build
  • DumpRenderTree/mac/AccessibilityControllerMac.mm:
4:03 PM Changeset in webkit [34781] by cwzwarich@webkit.org
  • 6 edits in trunk/JavaScriptCore

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Rubber stamped by Oliver.

Roll out r34777 due to multiple assertion failures on tests.

  • ChangeLog:
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitJump): (KJS::CodeGenerator::emitJumpIfTrueMayCombine): (KJS::CodeGenerator::emitJumpIfTrue): (KJS::CodeGenerator::emitJumpIfFalse): (KJS::CodeGenerator::emitJumpScopes):
  • VM/LabelID.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Machine.h:
  • VM/Opcode.h:
3:31 PM Changeset in webkit [34780] by justin.garcia@apple.com
  • 5 edits
    2 adds in trunk

WebCore:

2008-06-24 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): If asked to preserveStyle, we apply styles from the moved paragraph to the destination with applyStyle, which does selection preservation when it needs to apply block styles. Selection preservation uses relatively untested code in TextIterator to count VisiblePositions which fails in this particular test case because it doesn't handle changes in editability properly. We can avoid this bug by not applying block styles from moved paragraphs. This is something that should be done anyway, since the moved paragraph should assume the block styles of the destination.
  • editing/EditCommand.cpp: (WebCore::EditCommand::styleAtPosition): Added a FIXME about how it is misleading for this function to also include the typing style.
  • editing/TextIterator.h: Added a FIXME about how the code path used for selection preservation is buggy and should be phased out when we rewrite moveParagraphs.

LayoutTests:

2008-06-24 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo

  • editing/deleting/6026335-expected.txt: Added.
  • editing/deleting/6026335.html: Added.
2:30 PM Changeset in webkit [34779] by kmccullough@apple.com
  • 1 edit
    1 add in trunk/WebCore

2008-06-24 Kevin McCullough <kmccullough@apple.com>

-Added a manual test for the profiler.

  • manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Added.
2:22 PM Changeset in webkit [34778] by kmccullough@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-06-24 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim.

<rdar://problem/6031594> JSProfiler: Profiler goes into an infinite
loop sometimes.
<rdar://problem/6031603> JSProfiler: Profiler asserts in debug and
give the wrong times in release

Fixed two issues found by Tim in the same test.

  • profiler/Profile.cpp: (KJS::Profile::removeProfileStart): No longer take profile's time from all ancestors, but instead attribute it to its parent. Also add an Assert to ensure we only delete the child we mean to. (KJS::Profile::removeProfileEnd): Ditto for profileEnd. (KJS::Profile::didExecute): Cleaned up the execution order and correctly attribute all of the parent's time to the new node.
  • profiler/ProfileNode.cpp: If this node does not have a startTime it should not get a giant total time, but instead be 0. (KJS::ProfileNode::endAndRecordCall):
  • profiler/ProfileNode.h: (KJS::ProfileNode::removeChild): Should reset the sibling pointers since one of them has been removed.
2:19 PM Changeset in webkit [34777] by oliver@apple.com
  • 6 edits in trunk/JavaScriptCore

Groundwork for reimplementing the slow script dialog

Reviewed by Cameron.

Add special loop opcodes as groundwork for slow script
termination. Also added a few assertions to prevent us
from accidentally coalescing conditional jump operands
in a way that might bypass the slow script opcodes.

2:02 PM Changeset in webkit [34776] by Beth Dakin
  • 9 edits
    6 adds in trunk

WebKitTools:

2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>

Reviewed by Darin.

Fix for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests

This patch adds some basic support for accessibility layout tests
on the Mac.

  • DumpRenderTree/AccessibilityController.cpp: Added. (AccessibilityController::AccessibilityController): (AccessibilityController::~AccessibilityController): (dumpCurrentAttributesCallback): (AccessibilityController::makeWindowObject): (AccessibilityController::getJSClass): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h: Added.
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: Added. (descriptionOfValue): (AccessibilityController::dumpCurrentAttributes):
  • DumpRenderTree/mac/DumpRenderTree.mm:
  • DumpRenderTree/mac/FrameLoadDelegate.h:
  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):

LayoutTests:

2008-06-24 Sam Weinig and Beth Dakin <Beth Dakin and sam@webkit.org>

Reviewed by Darin.


First test for <rdar://problem/5884881> Make DumpRenderTree support
accessibility tests

  • accessibility: Added.
  • accessibility/document-attributes-expected.txt: Added.
  • accessibility/document-attributes.html: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
1:09 PM Changeset in webkit [34775] by weinig@apple.com
  • 7 edits
    7 adds in trunk

WebCore:

2008-06-24 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Add support for loadstart, abort and error events for XMLHttpRequests.

Tests: http/tests/xmlhttprequest/onabort-event.html

http/tests/xmlhttprequest/onerror-event.html
http/tests/xmlhttprequest/onloadstart-event.html

  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::mark): (WebCore::JSXMLHttpRequest::onreadystatechange): (WebCore::JSXMLHttpRequest::onabort): (WebCore::JSXMLHttpRequest::setOnabort): (WebCore::JSXMLHttpRequest::onerror): (WebCore::JSXMLHttpRequest::setOnerror): (WebCore::JSXMLHttpRequest::onload): (WebCore::JSXMLHttpRequest::onloadstart): (WebCore::JSXMLHttpRequest::setOnloadstart): (WebCore::JSXMLHttpRequest::onprogress):
  • dom/EventNames.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::networkError): (WebCore::XMLHttpRequest::abortError): (WebCore::XMLHttpRequest::didFail): (WebCore::XMLHttpRequest::updateAndDispatchOnProgress): (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent): (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent): (WebCore::XMLHttpRequest::dispatchAbortEvent): (WebCore::XMLHttpRequest::dispatchErrorEvent): (WebCore::XMLHttpRequest::dispatchLoadEvent): (WebCore::XMLHttpRequest::dispatchLoadStartEvent): (WebCore::XMLHttpRequest::dispatchProgressEvent):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setOnAbortListener): (WebCore::XMLHttpRequest::onAbortListener): (WebCore::XMLHttpRequest::setOnErrorListener): (WebCore::XMLHttpRequest::onErrorListener): (WebCore::XMLHttpRequest::setOnLoadStartListener): (WebCore::XMLHttpRequest::onLoadStartListener):
  • xml/XMLHttpRequest.idl:

LayoutTests:

2008-06-24 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Add tests for loadstart, abort and error events for XMLHttpRequests

  • http/tests/xmlhttprequest/onabort-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onabort-event.html: Added.
  • http/tests/xmlhttprequest/onerror-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onerror-event.html: Added.
  • http/tests/xmlhttprequest/onloadstart-event-expected.txt: Added.
  • http/tests/xmlhttprequest/onloadstart-event.html: Added.
  • http/tests/xmlhttprequest/resources/get.txt: Added.
1:03 PM Changeset in webkit [34774] by sullivan@apple.com
  • 2 edits in trunk/WebKitTools

2008-06-24 John Sullivan <sullivan@apple.com>

Reviewed by Dan Bernstein

  • Scripts/extract-localizable-strings: add UI_STRING_LOCALIZE_LATER, LPCTSTR_UI_STRING_LOCALIZE_LATER, and LOG_WARNING to the list of debugging macros, to avoid noise when keeping the list of localized string exceptions up to date
1:00 PM Changeset in webkit [34773] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2008-06-24 Darin Adler <Darin Adler>

Reviewed by Cameron.

  • kjs/JSObject.cpp: (KJS::JSObject::put): Remove an untested optimization I checked in by accident. The two loops up the prototype chain both need to start from this; instead the second loop was starting where the first loop left off.
12:56 PM Changeset in webkit [34772] by andersca@apple.com
  • 2 edits in trunk/WebCore

2008-06-24 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

<rdar://problem/5957606>
CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::DocumentLoader::cancelPendingSubstituteLoad + 23

Remove the loader from the document loader after calling didFail, so that the loader will be deferred corectly
in case the call do didFail starts a new run loop.


  • loader/NetscapePlugInStreamLoader.cpp: (WebCore::NetscapePlugInStreamLoader::didCancel):
12:54 PM Changeset in webkit [34771] by mitz@apple.com
  • 5 edits
    14 adds in trunk

WebKitTools:

Rubber-stamped by Darin Adler.

  • add a font family for testing font-weight
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linker flags to create data sections for the WeightWatcher fonts.
  • DumpRenderTree/fonts: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher100.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher200.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher300.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher400.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher500.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher600.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher700.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher800.ttf: Added.
  • DumpRenderTree/fonts/WebKitWeightWatcher900.ttf: Added.
  • DumpRenderTree/mac/DumpRenderTree.mm: (activateFonts): Renamed activateAhemFont to this and made it activate the WeightWatcher fonts in addition to Ahem. (prepareConsistentTestingEnvironment): Adjusted for the name change.
  • DumpRenderTree/win/DumpRenderTree.cpp: (initialize): Added the WeightWatcher fonts.

LayoutTests:

Rubber-stamped by Darin Adler.

  • add font-weight test for a family that has 9 weights
  • fast/css/font-weight-1.html: Added.
  • platform/mac/fast/css/font-weight-1-expected.checksum: Added.
  • platform/mac/fast/css/font-weight-1-expected.png: Added.
  • platform/mac/fast/css/font-weight-1-expected.txt: Added.
12:50 PM Changeset in webkit [34770] by sfalken@apple.com
  • 2 edits in trunk/JavaScriptCore

Build fix.

  • kjs/nodes.cpp:
11:06 AM Changeset in webkit [34769] by sullivan@apple.com
  • 2 edits in trunk/WebKit

2008-06-24 John Sullivan <sullivan@apple.com>

Rubber-stamped by Sam Weinig

  • StringsNotToBeLocalized.txt: brought this file up to date
8:43 AM Changeset in webkit [34768] by ap@webkit.org
  • 3 edits in trunk/WebCore

Release build fix.

  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent): Initialize callbackCallType, as the compiler is not smart enough to figure out data flow.
7:33 AM Changeset in webkit [34767] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

2008-06-24 Joerg Bornemann <joerg.bornemann@trolltech.com>

Reviewed by Simon.

For the Qt build on Windows don't depend on the presence of GNU CPP
but use MSVC's preprocessor instead.
dftables accepts a --preprocessor option which is set in pcre.pri for MSVC platforms.

5:35 AM Changeset in webkit [34766] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19723
REGRESSION(r34648): Some SVG tests crash when running under --threaded

  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::destroy): Do not attempt to paint during document destruction, because rendering structures are not kept in a consistent state then.
4:28 AM Changeset in webkit [34765] by Simon Hausmann
  • 6 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Darin.

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

Return bool from GraphicsContext::getShadow() so the tests aren't duplicated so
many times in Cairo and Qt ports.

3:58 AM Changeset in webkit [34764] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Simon.

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

Clean up and remove unused platform shadow code.

Minor edits by Simon, removed unused TextShadow struct.

3:35 AM Changeset in webkit [34763] by Simon Hausmann
  • 3 edits in trunk/WebCore

2008-06-24 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Simon.

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

Implemented basic text-shadow support for the Qt port.

3:27 AM Changeset in webkit [34762] by Simon Hausmann
  • 8 edits in trunk

Fix the Qt build, adapt to various JSCore API changes.

3:07 AM Changeset in webkit [34761] by ap@webkit.org
  • 3 edits in trunk/WebCore

Remove XMLHttpRequestProgressEvent.cpp from more project files.

  • GNUmakefile.am:
  • WebCore.pro:
2:51 AM Changeset in webkit [34760] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Cameron Zwarich.

Make ParserRefCountedCounter actually perform a leak check.

  • kjs/nodes.cpp: (KJS::ParserRefCountedCounter::~ParserRefCountedCounter): Check for leaks in destructor, not in constructor. (KJS::ParserRefCountedCounter::increment): (KJS::ParserRefCountedCounter::decrement): (KJS::ParserRefCounted::ParserRefCounted): (KJS::ParserRefCounted::~ParserRefCounted): While at it, also made counting thread-safe.
2:39 AM Changeset in webkit [34759] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-24 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

For the Qt port, fix linking with MinGW.

  • WebCore.pro:
2:38 AM Changeset in webkit [34758] by cwzwarich@webkit.org
  • 3 edits
    3 adds in trunk

2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 19730: REGRESSION (r34497): Text in alerts in "Leisure suit Larry" is not wrapped
<https://bugs.webkit.org/show_bug.cgi?id=19730>

Do not convert the pair (less, jtrue) to jless when jtrue is a jump
target. An example of this is when the condition of a while loop is a
LogicalOrNode.

JavaScriptCore:

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitLabel):

LayoutTests:

  • fast/js/codegen-loops-logical-nodes-expected.txt: Added.
  • fast/js/codegen-loops-logical-nodes.html: Added.
  • fast/js/resources/codegen-loops-logical-nodes.js: Added.
2:06 AM Changeset in webkit [34757] by Simon Hausmann
  • 3 edits in trunk/JavaScriptCore

2008-06-20 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Adam Roben.

Fix compile with MinGW.

  • kjs/Shell.cpp:
  • wtf/Threading.h: (WTF::atomicIncrement): (WTF::atomicDecrement):

Jun 23, 2008:

10:34 PM Changeset in webkit [34756] by mrowe@apple.com
  • 4 edits in trunk/JavaScriptCore

Prepration for returning memory to the OS on Windows. Track whether a portion of a span of memory was returned to the OS.
If it was, ask that it be recommitted before returning it to the application as an allocated region.

Reviewed by Oliver Hunt.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_PageHeap::New): If the span was decommitted, ask that it be recommitted before returning it.
(WTF::TCMalloc_PageHeap::AllocLarge): Ditto.
(WTF::TCMalloc_PageHeap::Carve): When splitting a span, ensure that the decommitted state propogates to the two new spans.
(WTF::TCMalloc_PageHeap::Delete): When merging a span, ensure that the resulting span is marked as decommitted if any of the
spans being merged were marked as decommitted.
(WTF::TCMalloc_PageHeap::IncrementalScavenge): Mark as decommitted after releasing the span.
(WTF::TCMalloc_Central_FreeList::FetchFromSpans): Add an assertion to catch a decommitted span being returned to the application
without first being recommitted.
(WTF::TCMalloc_Central_FreeList::Populate): Ditto.

  • wtf/TCSystemAlloc.cpp: Stub out TCMalloc_SystemCommit.
  • wtf/TCSystemAlloc.h:
10:34 PM Changeset in webkit [34755] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Remove the sample member of Span when NO_TCMALLOC_SAMPLES is defined.

Reviewed by Sam Weinig.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_PageHeap::Delete): Only update Span::sample if NO_TCMALLOC_SAMPLES is not defined.
(WTF::TCMallocStats::do_free): Ditto.

10:23 PM Changeset in webkit [34754] by Darin Adler
  • 120 edits in trunk

JavaScriptCore:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

More preparation toward making functions work on primitive types without
creating wrapper objects. No speedup this time, but prepares for a future
speedup without slowing things down.

SunSpider reports no change.

  • Eliminated the implementsCall, callAsFunction and construct virtual functions from JSObject. Instead, the CallData and ConstructData for a native function includes a function pointer that the caller can use directly. Changed all call sites to use CallData and ConstructData.
  • Changed the "this" argument to native functions to be a JSValue rather than a JSObject. This prepares us for passing primitives into these functions. The conversion to an object now must be done inside the function. Critically, if it's a function that can be called on a DOM window object, then we have to be sure to call toThisObject on the argument before we use it for anything even if it's already an object.
  • Eliminated the practice of using constructor objects in the global object to make objects of the various basic types. Since these constructors can't be replaced by script, there's no reason to involve a constructor object at all. Added functions to do the construction directly.
  • Made some more class members private and protected, including virtual function overrides. This can catch code using unnecessarily slow virtual function code paths when the type of an object is known statically. If we later find a new reason use the members outside the class it's easy to make them public again.
  • Moved the declarations of the native implementations for functions out of header files. These can have internal linkage and be declared inside the source file.
  • Changed PrototypeFunction to take function pointers with the right arguments to be put directly into CallData. This eliminates the need to have a separate PrototypeReflexiveFunction, and reveals that the real purpose of that class included something else specific to eval -- storage of a cached global object. So renamed PrototypeReflexiveFunction to GlobalEvalFunction.
  • API/JSCallbackConstructor.cpp: (KJS::constructJSCallback): (KJS::JSCallbackConstructor::getConstructData):
  • API/JSCallbackConstructor.h:
  • API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::implementsHasInstance): (KJS::JSCallbackFunction::call): (KJS::JSCallbackFunction::getCallData):
  • API/JSCallbackFunction.h: (KJS::JSCallbackFunction::classInfo):
  • API/JSCallbackObject.h: (KJS::JSCallbackObject::classRef): (KJS::JSCallbackObject::classInfo):
  • API/JSCallbackObjectFunctions.h: (KJS::::getConstructData): (KJS::::construct): (KJS::::getCallData): (KJS::::call):
  • API/JSObjectRef.cpp: (JSObjectMakeFunction): (JSObjectIsFunction): (JSObjectCallAsFunction): (JSObjectCallAsConstructor):
  • JavaScriptCore.exp:
  • VM/Machine.cpp: (KJS::jsTypeStringForValue): (KJS::Machine::privateExecute):
  • kjs/ArrayPrototype.cpp: (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncJoin): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncPop): (KJS::arrayProtoFuncPush): (KJS::arrayProtoFuncReverse): (KJS::arrayProtoFuncShift): (KJS::arrayProtoFuncSlice): (KJS::arrayProtoFuncSort): (KJS::arrayProtoFuncSplice): (KJS::arrayProtoFuncUnShift): (KJS::arrayProtoFuncFilter): (KJS::arrayProtoFuncMap): (KJS::arrayProtoFuncEvery): (KJS::arrayProtoFuncForEach): (KJS::arrayProtoFuncSome): (KJS::arrayProtoFuncIndexOf): (KJS::arrayProtoFuncLastIndexOf): (KJS::ArrayConstructor::ArrayConstructor): (KJS::constructArrayWithSizeQuirk): (KJS::constructWithArrayConstructor): (KJS::ArrayConstructor::getConstructData): (KJS::callArrayConstructor): (KJS::ArrayConstructor::getCallData):
  • kjs/ArrayPrototype.h:
  • kjs/BooleanObject.cpp: (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::constructBoolean): (KJS::constructWithBooleanConstructor): (KJS::BooleanConstructor::getConstructData): (KJS::callBooleanConstructor): (KJS::BooleanConstructor::getCallData): (KJS::constructBooleanFromImmediateBoolean):
  • kjs/BooleanObject.h:
  • kjs/CallData.h: (KJS::):
  • kjs/ConstructData.h: (KJS::):
  • kjs/FunctionPrototype.cpp: (KJS::callFunctionPrototype): (KJS::FunctionPrototype::getCallData): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall): (KJS::constructWithFunctionConstructor): (KJS::FunctionConstructor::getConstructData): (KJS::callFunctionConstructor): (KJS::FunctionConstructor::getCallData): (KJS::constructFunction):
  • kjs/FunctionPrototype.h:
  • kjs/JSArray.cpp: (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): (KJS::JSArray::sort): (KJS::constructEmptyArray): (KJS::constructArray):
  • kjs/JSArray.h: (KJS::JSArray::classInfo):
  • kjs/JSFunction.cpp: (KJS::JSFunction::call): (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnescape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::PrototypeFunction): (KJS::PrototypeFunction::getCallData): (KJS::GlobalEvalFunction::GlobalEvalFunction): (KJS::GlobalEvalFunction::mark):
  • kjs/JSFunction.h: (KJS::InternalFunction::classInfo): (KJS::InternalFunction::functionName): (KJS::JSFunction::classInfo): (KJS::GlobalEvalFunction::cachedGlobalObject):
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): (KJS::JSGlobalObject::mark):
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObject): (KJS::JSGlobalObject::evalFunction):
  • kjs/JSImmediate.cpp: (KJS::JSImmediate::toObject):
  • kjs/JSNotAnObject.cpp:
  • kjs/JSNotAnObject.h:
  • kjs/JSObject.cpp: (KJS::JSObject::put): (KJS::callDefaultValueFunction): (KJS::JSObject::defaultValue): (KJS::JSObject::lookupGetter): (KJS::JSObject::lookupSetter): (KJS::JSObject::hasInstance): (KJS::JSObject::fillGetterPropertySlot): (KJS::Error::create): (KJS::constructEmptyObject):
  • kjs/JSObject.h: (KJS::GetterSetter::GetterSetter): (KJS::GetterSetter::getter): (KJS::GetterSetter::setGetter): (KJS::GetterSetter::setter): (KJS::GetterSetter::setSetter):
  • kjs/JSValue.cpp: (KJS::JSCell::deleteProperty): (KJS::call): (KJS::construct):
  • kjs/JSValue.h:
  • kjs/MathObject.cpp: (KJS::mathProtoFuncAbs): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCeil): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncFloor): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncMax): (KJS::mathProtoFuncMin): (KJS::mathProtoFuncPow): (KJS::mathProtoFuncRandom): (KJS::mathProtoFuncRound): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
  • kjs/MathObject.h:
  • kjs/NumberObject.cpp: (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision): (KJS::NumberConstructor::NumberConstructor): (KJS::constructWithNumberConstructor): (KJS::NumberConstructor::getConstructData): (KJS::callNumberConstructor): (KJS::NumberConstructor::getCallData): (KJS::constructNumber): (KJS::constructNumberFromImmediateNumber):
  • kjs/NumberObject.h: (KJS::NumberObject::classInfo): (KJS::NumberConstructor::classInfo):
  • kjs/PropertySlot.cpp: (KJS::PropertySlot::functionGetter):
  • kjs/RegExpObject.cpp: (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString): (KJS::callRegExpObject): (KJS::RegExpObject::getCallData): (KJS::constructRegExp): (KJS::constructWithRegExpConstructor): (KJS::RegExpConstructor::getConstructData): (KJS::callRegExpConstructor): (KJS::RegExpConstructor::getCallData):
  • kjs/RegExpObject.h: (KJS::RegExpConstructor::classInfo):
  • kjs/Shell.cpp: (GlobalObject::GlobalObject): (functionPrint): (functionDebug): (functionGC): (functionVersion): (functionRun): (functionLoad): (functionReadline): (functionQuit):
  • kjs/date_object.cpp: (KJS::gmtoffset): (KJS::formatLocaleDate): (KJS::fillStructuresUsingDateArgs): (KJS::DateInstance::getTime): (KJS::DateInstance::getUTCTime): (KJS::DateConstructor::DateConstructor): (KJS::constructDate): (KJS::DateConstructor::getConstructData): (KJS::callDate): (KJS::DateConstructor::getCallData): (KJS::dateParse): (KJS::dateNow): (KJS::dateUTC): (KJS::dateProtoFuncToString): (KJS::dateProtoFuncToUTCString): (KJS::dateProtoFuncToDateString): (KJS::dateProtoFuncToTimeString): (KJS::dateProtoFuncToLocaleString): (KJS::dateProtoFuncToLocaleDateString): (KJS::dateProtoFuncToLocaleTimeString): (KJS::dateProtoFuncValueOf): (KJS::dateProtoFuncGetTime): (KJS::dateProtoFuncGetFullYear): (KJS::dateProtoFuncGetUTCFullYear): (KJS::dateProtoFuncToGMTString): (KJS::dateProtoFuncGetMonth): (KJS::dateProtoFuncGetUTCMonth): (KJS::dateProtoFuncGetDate): (KJS::dateProtoFuncGetUTCDate): (KJS::dateProtoFuncGetDay): (KJS::dateProtoFuncGetUTCDay): (KJS::dateProtoFuncGetHours): (KJS::dateProtoFuncGetUTCHours): (KJS::dateProtoFuncGetMinutes): (KJS::dateProtoFuncGetUTCMinutes): (KJS::dateProtoFuncGetSeconds): (KJS::dateProtoFuncGetUTCSeconds): (KJS::dateProtoFuncGetMilliSeconds): (KJS::dateProtoFuncGetUTCMilliseconds): (KJS::dateProtoFuncGetTimezoneOffset): (KJS::dateProtoFuncSetTime): (KJS::setNewValueFromTimeArgs): (KJS::setNewValueFromDateArgs): (KJS::dateProtoFuncSetMilliSeconds): (KJS::dateProtoFuncSetUTCMilliseconds): (KJS::dateProtoFuncSetSeconds): (KJS::dateProtoFuncSetUTCSeconds): (KJS::dateProtoFuncSetMinutes): (KJS::dateProtoFuncSetUTCMinutes): (KJS::dateProtoFuncSetHours): (KJS::dateProtoFuncSetUTCHours): (KJS::dateProtoFuncSetDate): (KJS::dateProtoFuncSetUTCDate): (KJS::dateProtoFuncSetMonth): (KJS::dateProtoFuncSetUTCMonth): (KJS::dateProtoFuncSetFullYear): (KJS::dateProtoFuncSetUTCFullYear): (KJS::dateProtoFuncSetYear): (KJS::dateProtoFuncGetYear):
  • kjs/date_object.h: (KJS::DateInstance::internalNumber): (KJS::DateInstance::classInfo):
  • kjs/error_object.cpp: (KJS::errorProtoFuncToString): (KJS::constructError): (KJS::constructWithErrorConstructor): (KJS::ErrorConstructor::getConstructData): (KJS::callErrorConstructor): (KJS::ErrorConstructor::getCallData): (KJS::NativeErrorConstructor::construct): (KJS::constructWithNativeErrorConstructor): (KJS::NativeErrorConstructor::getConstructData): (KJS::callNativeErrorConstructor): (KJS::NativeErrorConstructor::getCallData):
  • kjs/error_object.h: (KJS::NativeErrorConstructor::classInfo):
  • kjs/internal.cpp: (KJS::JSNumberCell::toObject): (KJS::JSNumberCell::toThisObject): (KJS::GetterSetter::mark): (KJS::GetterSetter::toPrimitive): (KJS::GetterSetter::toBoolean): (KJS::GetterSetter::toNumber): (KJS::GetterSetter::toString): (KJS::GetterSetter::toObject): (KJS::InternalFunction::InternalFunction): (KJS::InternalFunction::implementsHasInstance):
  • kjs/lookup.h: (KJS::HashEntry::):
  • kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): (KJS::FuncExprNode::makeFunction):
  • kjs/object_object.cpp: (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString): (KJS::ObjectConstructor::ObjectConstructor): (KJS::constructObject): (KJS::constructWithObjectConstructor): (KJS::ObjectConstructor::getConstructData): (KJS::callObjectConstructor): (KJS::ObjectConstructor::getCallData):
  • kjs/object_object.h:
  • kjs/string_object.cpp: (KJS::replace): (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink): (KJS::stringFromCharCode): (KJS::StringConstructor::StringConstructor): (KJS::constructWithStringConstructor): (KJS::StringConstructor::getConstructData): (KJS::callStringConstructor): (KJS::StringConstructor::getCallData):
  • kjs/string_object.h:

JavaScriptGlue:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

  • JSValueWrapper.cpp: (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead of the old callAsFunction.

WebCore:

2008-06-23 Darin Adler <Darin Adler>

Reviewed by Geoff.

Update for JavaScript changes.

  • Use CallData and ConstructData instead of the obsolete implementsCall, callAsFunction, and construct functions.
  • Updated native function arguments, specifically to allow a JSValue rather than a JSObject for the this argument, and to call toThisObject as needed when treating it as an object.
  • Made some more class members private and protected, including virtual function overrides.
  • Eliminated the use of getCallData in the JavaScript bridging code as a way to check if an instance supports invokeDefaultMethod.
  • Eliminated unnecessary polymorphism in the NodeIterator and TreeWalker classes. They were using virtual functions simply to share an instance of the RefCounted template, which was not helpful.
  • bindings/js/JSAudioConstructor.cpp: (WebCore::constructAudio): (WebCore::JSAudioConstructor::getConstructData):
  • bindings/js/JSAudioConstructor.h: (WebCore::JSAudioConstructor::document): (WebCore::JSAudioConstructor::classInfo):
  • bindings/js/JSClipboardCustom.cpp: (WebCore::JSClipboard::types):
  • bindings/js/JSCustomSQLStatementCallback.cpp: (WebCore::JSCustomSQLStatementCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::JSCustomSQLTransactionCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp: (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::handleEvent):
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
  • bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject):
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::windowProtoFuncAToB): (WebCore::windowProtoFuncBToA): (WebCore::windowProtoFuncOpen): (WebCore::windowProtoFuncSetTimeout): (WebCore::windowProtoFuncClearTimeout): (WebCore::windowProtoFuncSetInterval): (WebCore::windowProtoFuncAddEventListener): (WebCore::windowProtoFuncRemoveEventListener): (WebCore::windowProtoFuncShowModalDialog): (WebCore::windowProtoFuncNotImplemented): (WebCore::toJSDOMWindow):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::classInfo):
  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSLazyEventListener::parseCode):
  • bindings/js/JSEventTargetBase.cpp: (WebCore::retrieveEventTargetAndCorrespondingNode): (WebCore::jsEventTargetAddEventListener): (WebCore::jsEventTargetRemoveEventListener): (WebCore::jsEventTargetDispatchEvent):
  • bindings/js/JSEventTargetBase.h:
  • bindings/js/JSHTMLAppletElementCustom.cpp: (WebCore::JSHTMLAppletElement::customGetOwnPropertySlot): (WebCore::JSHTMLAppletElement::customPut): (WebCore::JSHTMLAppletElement::getCallData):
  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::callHTMLCollection): (WebCore::JSHTMLCollection::getCallData):
  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open):
  • bindings/js/JSHTMLEmbedElementCustom.cpp: (WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot): (WebCore::JSHTMLEmbedElement::customPut): (WebCore::JSHTMLEmbedElement::getCallData):
  • bindings/js/JSHTMLInputElementBase.cpp: (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
  • bindings/js/JSHTMLInputElementBase.h:
  • bindings/js/JSHTMLObjectElementCustom.cpp: (WebCore::JSHTMLObjectElement::customGetOwnPropertySlot): (WebCore::JSHTMLObjectElement::customPut): (WebCore::JSHTMLObjectElement::getCallData):
  • bindings/js/JSHTMLOptionElementConstructor.cpp: (WebCore::constructHTMLOptionElement): (WebCore::JSHTMLOptionElementConstructor::getConstructData):
  • bindings/js/JSHTMLOptionElementConstructor.h: (WebCore::JSHTMLOptionElementConstructor::document): (WebCore::JSHTMLOptionElementConstructor::classInfo):
  • bindings/js/JSImageConstructor.cpp: (WebCore::constructImage): (WebCore::JSImageConstructor::getConstructData):
  • bindings/js/JSImageConstructor.h: (WebCore::JSImageConstructor::document): (WebCore::JSImageConstructor::classInfo):
  • bindings/js/JSInspectedObjectWrapper.h: (WebCore::JSInspectedObjectWrapper::classInfo):
  • bindings/js/JSInspectorCallbackWrapper.cpp: (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeChain):
  • bindings/js/JSNodeFilterCondition.cpp: (WebCore::JSNodeFilterCondition::JSNodeFilterCondition): (WebCore::JSNodeFilterCondition::mark): (WebCore::JSNodeFilterCondition::acceptNode):
  • bindings/js/JSNodeFilterCondition.h: (WebCore::JSNodeFilterCondition::create):
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter):
  • bindings/js/JSNodeListCustom.cpp: (WebCore::callNodeList): (WebCore::JSNodeList::getCallData): (WebCore::JSNodeList::canGetItemsForName): (WebCore::JSNodeList::nameGetter):
  • bindings/js/JSPluginElementFunctions.cpp: (WebCore::runtimeObjectGetter): (WebCore::runtimeObjectPropertyGetter): (WebCore::runtimeObjectCustomGetOwnPropertySlot): (WebCore::runtimeObjectCustomPut): (WebCore::runtimeObjectGetCallData): (WebCore::pluginInstance): (WebCore::getRuntimeObject): (WebCore::callPlugin):
  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSQuarantinedObjectWrapper.cpp: (WebCore::JSQuarantinedObjectWrapper::put): (WebCore::JSQuarantinedObjectWrapper::construct): (WebCore::JSQuarantinedObjectWrapper::getConstructData): (WebCore::JSQuarantinedObjectWrapper::hasInstance): (WebCore::JSQuarantinedObjectWrapper::call): (WebCore::JSQuarantinedObjectWrapper::getCallData):
  • bindings/js/JSQuarantinedObjectWrapper.h: (WebCore::JSQuarantinedObjectWrapper::className):
  • bindings/js/JSRGBColor.cpp:
  • bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::constructXMLHttpRequest): (WebCore::JSXMLHttpRequestConstructor::getConstructData):
  • bindings/js/JSXMLHttpRequestConstructor.h: (WebCore::JSXMLHttpRequestConstructor::document): (WebCore::JSXMLHttpRequestConstructor::classInfo):
  • bindings/js/JSXSLTProcessorConstructor.cpp: (WebCore::constructXSLTProcessor): (WebCore::JSXSLTProcessorConstructor::getConstructData):
  • bindings/js/JSXSLTProcessorConstructor.h: (WebCore::JSXSLTProcessorConstructor::classInfo):
  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::ScheduledAction): (WebCore::ScheduledAction::execute):
  • bindings/js/ScheduledAction.h:
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke):
  • bridge/c/c_instance.cpp: (KJS::Bindings::CInstance::supportsInvokeDefaultMethod):
  • bridge/c/c_instance.h:
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::call):
  • bridge/objc/objc_instance.h:
  • bridge/objc/objc_instance.mm: (ObjcInstance::supportsInvokeDefaultMethod):
  • bridge/objc/objc_runtime.h: (KJS::Bindings::ObjcFallbackObjectImp::propertyName): (KJS::Bindings::ObjcFallbackObjectImp::classInfo):
  • bridge/objc/objc_runtime.mm: (Bindings::webScriptObjectClass): (Bindings::webUndefinedClass): (ObjcFallbackObjectImp::ObjcFallbackObjectImp): (callObjCFallbackObject): (ObjcFallbackObjectImp::getCallData):
  • bridge/qt/qt_instance.h:
  • bridge/runtime.cpp: (KJS::Bindings::Instance::createRuntimeObject): (KJS::Bindings::Instance::getInstance):
  • bridge/runtime.h: (KJS::Bindings::Field::~Field): (KJS::Bindings::Method::~Method): (KJS::Bindings::Class::~Class): (KJS::Bindings::Instance::supportsInvokeDefaultMethod):
  • bridge/runtime_method.cpp: (KJS::callRuntimeMethod): (KJS::RuntimeMethod::getCallData):
  • bridge/runtime_method.h: (KJS::RuntimeMethod::methods):
  • bridge/runtime_object.cpp: (RuntimeObjectImp::defaultValue): (callRuntimeObject): (RuntimeObjectImp::getCallData):
  • bridge/runtime_object.h: (KJS::RuntimeObjectImp::getInternalInstance): (KJS::RuntimeObjectImp::classInfo):
  • dom/NodeIterator.h:
  • dom/Traversal.cpp:
  • dom/Traversal.h:
  • dom/TreeWalker.h:
8:00 PM Changeset in webkit [34753] by abarth@webkit.org
  • 7 edits in trunk/WebCore

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

Reviewed by Darin Adler.

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

Move isAllowedToLoadLocalResources into SecurityOrigin.

  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::setURL): (WebCore::Document::initSecurityContext):
  • dom/Document.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::canLoad):
  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::SecurityOrigin): (WebCore::SecurityOrigin::isLocal):
  • platform/SecurityOrigin.h: (WebCore::SecurityOrigin::protocol): (WebCore::SecurityOrigin::host): (WebCore::SecurityOrigin::domain): (WebCore::SecurityOrigin::port): (WebCore::SecurityOrigin::canLoadLocalResources): (WebCore::SecurityOrigin::grantLoadLocalResources):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::setRequestHeader):
5:23 PM Changeset in webkit [34752] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix Windows build.

5:19 PM Changeset in webkit [34751] by cwzwarich@webkit.org
  • 3 edits
    3 adds in trunk

2008-06-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 19716: REGRESSION (SquirrelFish): Reproducible crash after entering a username at mint.com
<https://bugs.webkit.org/show_bug.cgi?id=19716>

When unwinding callframes for exceptions, check whether the callframe
was created by a reentrant native call to JavaScript after tearing off
the local variables instead of before.

JavaScriptCore:

  • VM/Machine.cpp: (KJS::Machine::unwindCallFrame):

LayoutTests:

  • fast/js/reentrant-call-unwind-expected.txt: Added.
  • fast/js/reentrant-call-unwind.html: Added.
  • fast/js/resources/reentrant-call-unwind.js: Added.
5:00 PM Changeset in webkit [34750] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Fix a math error in my last change.


Reviewed by Ada Chan.

  • platform/win/FileSystemWin.cpp: (WebCore::openTemporaryFile):
4:48 PM Changeset in webkit [34749] by kmccullough@apple.com
  • 2 edits in trunk/WebCore

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

-Build fix.

  • WebCore.vcproj/WebCore.vcproj:
4:20 PM Changeset in webkit [34748] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/6024267> VO unable to read massive emails because AccessibilityObject::lengthForVisiblePositionRange makes the string

Improves performance of asking for the length/string of text marker ranges

2:41 PM Changeset in webkit [34747] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Get testapi passing again in a debug build.

Reviewed by Oliver Hunt.

  • API/testapi.c:

(main): Update the expected output of calling JSValueMakeString on a function object.

1:58 PM Changeset in webkit [34746] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Added our own mechanism for generating temporary file names.


Reviewed by Ada Chan, Darin Adler.

  • platform/win/FileSystemWin.cpp: (WebCore::openTemporaryFile):
1:57 PM Changeset in webkit [34745] by ddkilzer@apple.com
  • 3 edits in trunk/LayoutTests

2008-06-23 David Kilzer <ddkilzer@apple.com>

Updated test for Bug 15823: getPropertyValue for border returns null, should compute the shorthand value

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

Rubber-stamped by Darin.

  • fast/css/getPropertyValue-border-expected.txt: Updated results.
  • fast/css/getPropertyValue-border.html: Test all combinations of (mismatched) border values.
1:33 PM Changeset in webkit [34744] by weinig@apple.com
  • 4 edits in trunk/WebCore

2008-06-23 Sam Weinig <sam@webkit.org>

Remove XMLHttpRequestProgressEvent.cpp from project files.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
1:30 PM Changeset in webkit [34743] by weinig@apple.com
  • 1 edit
    1 delete in trunk/WebCore

2008-06-23 Sam Weinig <sam@webkit.org>

Reviewed by Dave Hyatt.

Remove empty file.

  • xml/XMLHttpRequestProgressEvent.cpp: Removed.
1:28 PM Changeset in webkit [34742] by weinig@apple.com
  • 3 edits in trunk/WebCore

2008-06-23 Sam Weinig <sam@webkit.org>

Rubber-stamped by Tim Hatcher.

Rename XMLHttpRequest::sameOriginRequest to XMLHttpRequest::makeSameOriginRequest
and XMLHttpRequest::crossSiteAccessRequest to XMLHttpRequest::makeCrossSiteAccessRequest.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::makeSameOriginRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
  • xml/XMLHttpRequest.h:
1:07 PM Changeset in webkit [34741] by weinig@apple.com
  • 5 edits in trunk/WebCore

2008-06-23 Sam Weinig <sam@webkit.org>

Reviewed by Alexey Proskuryakov.

Some XMLHttpRequest re-organization to aid further enhancements coming soon.

  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::send): Explicitly call overloaded versions of send, instead of always calling though send(DOMString).
  • dom/Document.idl: Adds native converter.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::open): (WebCore::XMLHttpRequest::initSend): (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::sameOriginRequest): (WebCore::XMLHttpRequest::crossSiteAccessRequest): (WebCore::XMLHttpRequest::abort): (WebCore::XMLHttpRequest::clearResponse): (WebCore::XMLHttpRequest::clearRequest): (WebCore::XMLHttpRequest::genericError): (WebCore::XMLHttpRequest::dispatchProgressEvent):
  • xml/XMLHttpRequest.h: (WebCore::XMLHttpRequest::setOnReadyStateChangeListener): Inline. (WebCore::XMLHttpRequest::onReadyStateChangeListener): Ditto. (WebCore::XMLHttpRequest::setOnLoadListener): Ditto. (WebCore::XMLHttpRequest::onLoadListener): Ditto. (WebCore::XMLHttpRequest::setOnProgressListener): Ditto. (WebCore::XMLHttpRequest::onProgressListener): Ditto. Makes the request entity body a member variable so that the send method can be more easily broken up.
10:33 AM Changeset in webkit [34740] by timothy@apple.com
  • 5 edits
    2 adds in trunk/WebCore

Make profiles of the same name in the Inspector group in the
sidebar under a collapsable item that contains all the runs.

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

Reviewed by Darin Adler.

  • English.lproj/localizedStrings.js: New strings.
  • page/inspector/Images/profileGroupIcon.png: Added.
  • page/inspector/Images/profileSmallIcon.png: Added.
  • page/inspector/ProfilesPanel.js: (WebInspector.ProfilesPanel.prototype.reset): Clear _profileGroups. Remove the "some-expandable" class from the sidebarTree. (WebInspector.ProfilesPanel.prototype.addProfile): Append new profiles that have the same name as a previous profile into a group. When a group has 2 profiles a ProfileGroupSidebarTreeElement is made and the ProfileSidebarTreeElements are appended to the group's element. (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): Return _mainTitle is it is set. (WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle): Set _mainTitle which is an override title. (WebInspector.ProfileGroupSidebarTreeElement): Inherit SidebarTreeElement. (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect): Show the last profile in the group when selected.
  • page/inspector/SidebarTreeElement.js: (WebInspector.SidebarTreeElement.prototype.get small): Return _small. (WebInspector.SidebarTreeElement.prototype.set small): Set _small and update the style to match. (WebInspector.SidebarTreeElement.prototype.onattach): Set the small class if the small property is true.
  • page/inspector/inspector.css: New styles for profiles groups and for the small profiles.
9:24 AM Changeset in webkit [34739] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Geoff.

Make changedDocuments a HashSet.

  • dom/Document.cpp: (WebCore::Document::setDocumentChanged): (WebCore::Document::updateDocumentsRendering):
8:19 AM Changeset in webkit [34738] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

2008-06-23 Benjamin C Meyer <ben@meyerhome.net>

Reviewed by Simon.

Add function to retrieve the standard context menu

1:10 AM Changeset in webkit [34737] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Mark Rowe.

Restore a collectOnMainThreadOnly call that was accidentally removed in r34659. It will not
be needed when heaps are actually per-thread, but this isn't the case yet, and collecting
on a different thread causes crashes.

  • bindings/js/JSDOMBinding.h: (WebCore::DOMObject::DOMObject):

Jun 22, 2008:

6:30 PM Changeset in webkit [34736] by mrowe@apple.com
  • 3 edits in trunk/WebKitSite

2008-06-22 Aaron Digulla <digulla@hepe.com>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=18993
Bug 18993: Update of buttons in editing toolbar demo lags behind

  • demos/editingToolbar/FancyToolbar.js:
  • demos/editingToolbar/index.html:
6:25 PM Changeset in webkit [34735] by mrowe@apple.com
  • 3 edits
    2 adds in trunk

2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=19465
Bug 19465: Cursor sometimes gets 'stuck' in textareas when trying to navigate with arrow keys

Test: editing/input/textarea-arrow-navigation.html

  • rendering/RenderText.cpp: (WebCore::RenderText::positionForCoordinates): In the case when the next position is to the right of the last text box but the text offset is 0, set the affinity to DOWNSTREAM instead of UPSTREAM so that the cursor doesn't remain on the previous line.
6:20 PM Changeset in webkit [34734] by mrowe@apple.com
  • 3 edits
    2 adds in trunk

2008-06-22 Robert Blaut <webkit@blaut.biz>

Reviewed by Darin Adler.

Fix for https://bugs.webkit.org/show_bug.cgi?id=17421
Bug 17421: Lack of end tag for SELECT element causes the rest of page to not be rendered

Test: fast/parser/input-textarea-inside-select-element.html

  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):
6:06 PM Changeset in webkit [34733] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2008-06-22 David Krause <david.krause@gmail.com>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=19426
Bug 19426: LOW_BANDWIDTH_DISPLAY build broken

Change ref to addClient and deref to removeClient in code wrapped
by USE(LOW_BANDWIDTH_DISPLAY) to match changes in r31834.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addLowBandwidthDisplayRequest): (WebCore::FrameLoader::removeAllLowBandwidthDisplayRequests): (WebCore::FrameLoader::notifyFinished):
6:02 PM Changeset in webkit [34732] by mrowe@apple.com
  • 6 edits
    2 adds in trunk

2008-06-22 Robert Blaut <webkit@blaut.biz>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=19520
Bug 19520: WebKit incorrectly accepts hidden as the value of outline-style

Test: fast/css/outline-hidden-illegal-value.html

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutline):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintOutline):
  • rendering/style/RenderStyle.h: (WebCore::RenderStyle::outlineWidth): (WebCore::RenderStyle::outlineOffset):
5:58 PM Changeset in webkit [34731] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2008-06-22 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Dan Bernstein.

Fix https://bugs.webkit.org/show_bug.cgi?id=19675
Bug 19675: [GTK] negative text-shadows are not rendered

  • platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs): The IntSize::isEmpty() call checks that the sizes are > 0, while we need to check for != 0.
5:55 PM Changeset in webkit [34730] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2008-06-22 kuchhal <kuchhal@yahoo.com>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=19696
Bug 19696: Memory leak in WebCore/editing/DeleteButtonController.cpp

  • editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::createDeletionUI): Delete the Image instance if the platform resource could not be loaded.
5:52 PM Changeset in webkit [34729] by mrowe@apple.com
  • 2 edits in trunk/WebCore

2008-06-22 kuchhal <kuchhal@yahoo.com>

Reviewed by Darin Adler.

Fix https://bugs.webkit.org/show_bug.cgi?id=19697
Bug 19697: Redundant releaseRef causing memory leak

  • platform/win/ClipboardUtilitiesWin.cpp: (WebCore::fragmentFromCF_HTML):

Jun 21, 2008:

6:35 PM Changeset in webkit [34728] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Print a blank line when exiting the jsc interactive mode to ensure that the shell
prompt will start on a new line.

Reviewed by Sam Weinig.

  • kjs/Shell.cpp:

(runInteractive):

6:35 PM Changeset in webkit [34727] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Tweak the paths of the items in the "tests" group to clean things up a little.

Rubber-stamped by Sam Weinig.

6:35 PM Changeset in webkit [34726] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Fix jsc to link against libedit.dylib rather than libedit.2.dylib.

Rubber-stamped by Sam Weinig.

6:35 PM Changeset in webkit [34725] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Copy the JavaScriptCore shell (jsc) into JavaScriptCore.framework so that it will be included in nightly builds.
https://bugs.webkit.org/show_bug.cgi?id=19691

Reviewed by Sam Weinig.

6:24 PM Changeset in webkit [34724] by weinig@apple.com
  • 3 edits in trunk/WebCore

2008-06-21 Sam Weinig <sam@webkit.org>

Fix Windows build.

  • bindings/scripts/CodeGeneratorCOM.pm:
  • html/HTMLInputElement.idl:
5:35 PM Changeset in webkit [34723] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fix a typo "new" in the keywords list for hte JavaScript
syntax highlighter. And adds "get" and "set" to the keyword list.

Reviewed by Sam Weinig.

  • page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine): Fixes the "new" typo and adds "get" and "set".
4:49 PM Changeset in webkit [34722] by ddkilzer@apple.com
  • 3 edits
    12 adds in trunk

WebCore:

Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely

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

Reviewed by Darin.

Tests: fast/parser/entity-end-iframe-tag.html

fast/parser/entity-end-script-tag.html
fast/parser/entity-end-style-tag.html
fast/parser/entity-end-textarea-tag.html
fast/parser/entity-end-title-tag.html
fast/parser/entity-end-xmp-tag.html

Previously the parser accepted end tags for textarea, title and
iframe elements that contained entity-escaped characters such as
'&lt;'. The fix is to save the position of the last entity-escaped
character converted and to use that to make sure the end tag does
not contain an escaped character.

Note that this was not an issue for script, style and xmp elements
since they already ignored entity-escaped characters.

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): When looking for a closing tag, ignore any text with entity-escaped characters by making sure lastDecodedEntityPosition is less than the first character of the end tag.

LayoutTests:

Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely

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

Reviewed by Darin.

The entity-end-textarea-tag.html contains 11 test cases: one
for each character in '</textarea>'. The rest of the tests
only test one encoding: '<' as '&lt;'.

  • fast/parser/entity-end-iframe-tag-expected.txt: Added.
  • fast/parser/entity-end-iframe-tag.html: Added.
  • fast/parser/entity-end-script-tag-expected.txt: Added.
  • fast/parser/entity-end-script-tag.html: Added.
  • fast/parser/entity-end-style-tag-expected.txt: Added.
  • fast/parser/entity-end-style-tag.html: Added.
  • fast/parser/entity-end-textarea-tag-expected.txt: Added.
  • fast/parser/entity-end-textarea-tag.html: Added.
  • fast/parser/entity-end-title-tag-expected.txt: Added.
  • fast/parser/entity-end-title-tag.html: Added.
  • fast/parser/entity-end-xmp-tag-expected.txt: Added.
  • fast/parser/entity-end-xmp-tag.html: Added.
2:42 PM Changeset in webkit [34721] by weinig@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-21 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)

Test: fast/dynamic/insertAdjacentHTML-allowed-parents.html

  • html/HTMLElement.cpp: (WebCore::HTMLElement::insertAdjacentHTML): Don't use innerHTML logic for creating the DocumentFragment from the html string.

LayoutTests:

2008-06-21 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Test for https://bugs.webkit.org/show_bug.cgi?id=19647
REGRESSION: Problem with extjs (insertAdjacentHTML)

  • fast/dynamic/insertAdjacentHTML-allowed-parents-expected.txt: Added.
  • fast/dynamic/insertAdjacentHTML-allowed-parents.html: Added.
1:33 PM Changeset in webkit [34720] by abarth@webkit.org
  • 5 edits in trunk/WebCore

2008-06-21 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

Log error messages to the console when we deny a request for a URL.
These error messages do not appear in LayoutTests, but they do
appear in the WebInspector.

  • dom/XMLTokenizer.cpp: (WebCore::shouldAllowExternalLoad):
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): (WebCore::DocLoader::printAccessDeniedMessage):
  • loader/DocLoader.h:
  • xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc):
1:33 PM Changeset in webkit [34719] by abarth@webkit.org
  • 3 edits
    4 adds in trunk

WebCore:

2008-06-21 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

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

XSL style sheets allowed across origins

Block cross-orgin loads of XSL style sheets, matching Internet
Explorer, Firefox, and Opera. Also, we now block loading of XBL
across origins, matching Firefox. The XBL behavior does not appear
testable because XBL seems to not be enabled.

Test: http/tests/security/cross-origin-xsl-BLOCKED.html

  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource):

LayoutTests:

2008-06-21 Adam Barth <abarth@webkit.org>

Reviewed by Sam Weinig.

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

Test that we block cross-orign loads of XSL style sheets.

  • http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Added.
  • http/tests/security/cross-origin-xsl-BLOCKED.html: Added.
  • http/tests/security/resources/cross-origin-xsl.xml: Added.
  • http/tests/security/resources/forbidden-stylesheet.xsl: Added.
12:16 PM Changeset in webkit [34718] by mitz@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Adding bug title and URLs

12:13 PM Changeset in webkit [34717] by mitz@apple.com
  • 2 edits in trunk/WebCore

2008-06-21 Marvin Decker <marv.decker@gmail.com>

Reviewed by Dave Hyatt.

Adds a NULL check for getting the small caps page of glyph data. The
page() function can explicitly return null in some cases, and every
other usage in this function does the check.

  • platform/graphics/Font.cpp: (WebCore::Font::glyphDataForCharacter):
10:55 AM Changeset in webkit [34716] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Alexey Proskuryakov.

  • update results for newly-added CSS variables, file and file list global constructors
  • fast/dom/Window/window-properties-expected.txt:
10:49 AM Changeset in webkit [34715] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

2008-06-21 Alex Taylor <darwin@milliamp.org>

Reviewed by Dan Bernstein.

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

Adds support for border-radius on legend elements.
Fieldsets with a legend and rounded borders now have a clipping region set
around the legend.


Test: fast/borders/fieldsetBorderRadius.html

  • rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::paintBoxDecorations): (WebCore::RenderFieldset::paintBorderMinusLegend): Removed a FIXME.

LayoutTests:

2008-06-21 Alex Taylor <darwin@milliamp.org>

Reviewed by Dan Bernstein.

<https://bugs.webkit.org/show_bug.cgi?id=12425>
Test support for border-radius on fieldset elements.

  • fast/borders/fieldsetBorderRadius.html: Added.
  • platform/mac/fast/borders/fieldsetBorderRadius-expected.checksum: Added.
  • platform/mac/fast/borders/fieldsetBorderRadius-expected.png: Added.
  • platform/mac/fast/borders/fieldsetBorderRadius-expected.txt: Added.
10:36 AM Changeset in webkit [34714] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix. Adding CSSVariable* API sources to the Bakefiles.

1:28 AM Changeset in webkit [34713] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Mark Rowe.

Fix the build for non-Mac Darwin platforms by disabling their support
for readline in the JavaScript shell.

  • kjs/config.h:
12:04 AM Changeset in webkit [34712] by timothy@apple.com
  • 5 edits in trunk/JavaScriptCore

Use member function pointers for the Profile::forEach function.
Eliminating a few static functions and simplified things a little.

Reviewed by Alexey Proskuryakov.

  • JavaScriptCore.exp: Change the symbol for forEach.
  • profiler/Profile.cpp: (KJS::Profile::forEach): Use a member function pointer.
  • profiler/Profile.h: (KJS::Profile::sortTotalTimeDescending): Pass a function pointer. (KJS::Profile::sortTotalTimeAscending): Ditto. (KJS::Profile::sortSelfTimeDescending): Ditto. (KJS::Profile::sortSelfTimeAscending): Ditto. (KJS::Profile::sortCallsDescending): Ditto.
  • profiler/ProfileNode.h: (KJS::ProfileNode::sortTotalTimeDescending): No longer static. (KJS::ProfileNode::sortTotalTimeAscending): Ditto. (KJS::ProfileNode::sortSelfTimeDescending): Ditto. (KJS::ProfileNode::sortSelfTimeAscending): Ditto. (KJS::ProfileNode::sortCallsDescending): Ditto.

Jun 20, 2008:

11:32 PM Changeset in webkit [34711] by cwzwarich@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-06-20 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Remove unused destructors.

  • kjs/nodes.cpp:
  • kjs/nodes.h:
9:39 PM Changeset in webkit [34710] by timothy@apple.com
  • 3 edits in trunk/JavaScriptCore

Fixed an ASSERT(m_actualSelfTime <= m_actualTotalTime) when starting
and stopping a profile from the Develop menu. Also prevents
inserting an incorrect parent node as the new head after profiling
is stopped from the Develop menu.

Reviewed by Dan Bernstein.

  • profiler/Profile.cpp: (KJS::Profile::stopProfiling): If the current node is already the head then there is no more need to record future nodes in didExecute. (KJS::Profile::didExecute): Move the code of setupCurrentNodeAsStopped into here since this was the only caller. When setting the total time keep any current total time while adding the self time of the head. (KJS::Profile::setupCurrentNodeAsStopped): Removed.
  • profiler/Profile.h: Removed setupCurrentNodeAsStopped.
6:22 PM Changeset in webkit [34709] by weinig@apple.com
  • 2 edits in trunk/WebCore

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

Fix Windows build.

  • bindings/scripts/CodeGeneratorCOM.pm:
3:59 PM Changeset in webkit [34708] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix: Add files missing in the previous fix (r34705)

  • GNUmakefile.am:
3:29 PM Changeset in webkit [34707] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • fix leak of mask images
  • rendering/RenderObject.cpp: (WebCore::RenderObject::arenaDelete): Added a call to removeClient() on the mask box image.
3:27 PM Changeset in webkit [34706] by pewtermoose@webkit.org
  • 3 edits in trunk/WebKitTools

2008-06-20 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Darin.

Extend the build-webkit (and set-webkit-configuration) script to
support Cairo-based webkit builds. (see http://bugs.webkit.org/show_bug.cgi?17952)

  • Scripts/build-webkit: Add --cairo-win32 to the help message
  • Scripts/webkitdirs.pm: Extend the 'determinePassedConfiguration subroutine to recognize the --cairo-win32 flag. When present, the build configuration is changed from Debug/Release to Debug_Cairo/Release_Cairo. This flag is only active when the isCygwin() test is true.
3:23 PM Changeset in webkit [34705] by jmalonzo@webkit.org
  • 7 edits in trunk/WebCore

2008-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix for r34702, r34700 and r34693
Qt build fix for r34700 and r34693

  • GNUmakefile.am:
  • WebCore.pro:
  • platform/gtk/RenderThemeGtk.cpp:
  • platform/gtk/RenderThemeGtk.h:
  • platform/qt/RenderThemeQt.cpp:
  • platform/qt/RenderThemeQt.h:
3:14 PM Changeset in webkit [34704] by kevino@webkit.org
  • 3 edits in trunk/JavaScriptCore

!USE(MULTIPLE_THREADS) on Darwin build fix

2:51 PM Changeset in webkit [34703] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-20 Kevin McCullough <kmccullough@apple.com>

-Leopard Build Fix.

  • profiler/Profile.cpp: (KJS::Profile::removeProfileStart): (KJS::Profile::removeProfileEnd):
2:43 PM Changeset in webkit [34702] by weinig@apple.com
  • 14 edits
    6 adds in trunk/WebCore

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

Reviewed by Adele Peterson.

Add 'files' property to the HTMLInputElement, which returns a FileList object
(when type=file, null otherwise) containing a list of all the files selected.
It currently always contains only 0 or 1 files as multifile input is not supported
yet. The list contains File objects which contains the name and size of the file.
The inspiration for these interfaces is from:

Also fixes <rdar://problem/6022802>

  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/objc/DOMInternal.h:
  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/IDLStructure.pm:
  • html/File.cpp: Added. (WebCore::File::File): (WebCore::File::fileSize):
  • html/File.h: Added. (WebCore::File::create): (WebCore::File::fileName): (WebCore::File::path):
  • html/File.idl: Added.
  • html/FileList.cpp: Added. (WebCore::FileList::FileList): (WebCore::FileList::item):
  • html/FileList.h: Added. (WebCore::FileList::create): (WebCore::FileList::length): (WebCore::FileList::isEmpty): (WebCore::FileList::clear): (WebCore::FileList::append):
  • html/FileList.idl: Added.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::appendFormData): (WebCore::HTMLInputElement::value): (WebCore::HTMLInputElement::setValue): (WebCore::HTMLInputElement::setValueFromRenderer): (WebCore::HTMLInputElement::files):
  • html/HTMLInputElement.h:
  • html/HTMLInputElement.idl:
  • page/DOMWindow.idl:
2:19 PM Changeset in webkit [34701] by hyatt@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

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

Make sure CSS variables work inside the inline style attribute.

Reviewed by Beth

Added fast/css/variables/inline-style-test.html

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::removeProperty): (WebCore::CSSMutableStyleDeclaration::addParsedProperties):

LayoutTests:

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

Make sure CSS variables work inside the inline style attribute.

Reviewed by Beth

  • fast/css/variables/inline-style-test.html: Added.
  • platform/mac/fast/css/variables/inline-style-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/inline-style-test-expected.png: Added.
  • platform/mac/fast/css/variables/inline-style-test-expected.txt: Added.
1:47 PM Changeset in webkit [34700] by hyatt@apple.com
  • 13 edits
    14 adds in trunk

WebCore:

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

Add support for the CSSVariablesRule and CSSVariablesDeclaration DOM APIs. These allow querying of
variables names and values, as well as iteration, setting and removal.

Reviewed by Sam

Added multiple new tests to fast/css/variables/

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp: (WebCore::toJS):
  • bindings/objc/DOMInternal.h:
  • bindings/scripts/CodeGeneratorJS.pm:
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::parserValue):
  • css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::removeVariable): (WebCore::CSSVariablesDeclaration::setVariable): (WebCore::CSSVariablesDeclaration::setCssText): (WebCore::CSSVariablesDeclaration::setChanged):
  • css/CSSVariablesDeclaration.h:
  • css/CSSVariablesDeclaration.idl: Added.
  • css/CSSVariablesRule.h:
  • css/CSSVariablesRule.idl: Added.

LayoutTests:

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

Add tests of the DOM APIs for addition, removal and iteration.

Reviewed by Sam

  • fast/css/variables/remove-variable-test.html: Added.
  • fast/css/variables/set-variable-test.html: Added.
  • fast/css/variables/variable-iteration-test.html: Added.
  • platform/mac/fast/css/variables/remove-variable-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/remove-variable-test-expected.png: Added.
  • platform/mac/fast/css/variables/remove-variable-test-expected.txt: Added.
  • platform/mac/fast/css/variables/set-variable-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/set-variable-test-expected.png: Added.
  • platform/mac/fast/css/variables/set-variable-test-expected.txt: Added.
  • platform/mac/fast/css/variables/variable-iteration-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/variable-iteration-test-expected.png: Added.
  • platform/mac/fast/css/variables/variable-iteration-test-expected.txt: Added.
1:47 PM Changeset in webkit [34699] by kmccullough@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

2008-06-20 Kevin McCullough <kmccullough@apple.com>

Just giving credit.

  • ChangeLog:
12:47 PM Changeset in webkit [34698] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-20 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim.

<rdar://problem/6024846> JSProfiler: ASSERT hit in Profiler.

  • Because InspectorController can call startProfiling() and stopProfiling() we cannot assert that console.profile() and console.profileEnd() will be in the profile tree.
  • profiler/Profile.cpp: (KJS::Profile::removeProfileStart): (KJS::Profile::removeProfileEnd):
12:38 PM Changeset in webkit [34697] by kmccullough@apple.com
  • 1 edit
    1 add in trunk/WebCore

2008-06-20 Kevin McCullough <kmccullough@apple.com>

Rubber stamped by Adele.

  • manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Added.
12:36 PM Changeset in webkit [34696] by kmccullough@apple.com
  • 13 edits
    1 add in trunk

JavaScriptCore:

2008-06-20 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim.

<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)

  • Now we profile one more stack frame up from the last frame to allocate the time spent in it, if it exists.
  • JavaScriptCore.exp:
  • VM/Machine.cpp: We need to let the profiler know when the JS program has finished since that is what will actually stop the profiler instead of just calling stopProfiling(). (KJS::Machine::execute):
  • profiler/Profile.cpp: (KJS::Profile::create): Moved from Profile.h since it was getting pretty long. (KJS::Profile::Profile): We now have a client, which is a listener who we will return this profile to, once it has actually finished. (KJS::Profile::stopProfiling): Instead of fully stopping the profiler here, we set the flag and keep it profiling in the background. (KJS::Profile::didFinishAllExecution): This is where the profiler actually finishes and creates the (idle) node if one should be made. (KJS::Profile::removeProfileStart): Don't use m_currentNode since it is needed by the profiler as it runs silently in the background. (KJS::Profile::removeProfileEnd): Ditto. (KJS::Profile::willExecute): Don't profile new functions if we have stopped profiling. (KJS::Profile::didExecute): Only record one more return as all the remaining time will be attributed to that function. (KJS::Profile::setupCurrentNodeAsStopped): Sets the current node's time.
  • profiler/Profile.h: Added functions and variables for the above changes. (KJS::Profile::client):
  • profiler/ProfileNode.h: (KJS::CallIdentifier::toString): Debug method.
  • profiler/Profiler.cpp: Added support for the ProfilerClient. (KJS::Profiler::startProfiling): (KJS::Profiler::stopProfiling): No longer return sthe profile. (KJS::Profiler::didFinishAllExecution): Now returns the profile to the client instead of stopProfiling.
  • profiler/Profiler.h: (KJS::ProfilerClient::~ProfilerClient): Clients will implement this interface.

WebCore:

2008-06-20 Kevin McCullough <kmccullough@apple.com>

Reviewed by Tim.

<rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
if profiling is started and finished within the same function. (19230)

  • Now we profile one more stack frame up from the last frame to allocate the time spent in it, if it exists.
  • page/Console.cpp:
  • manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Added. (WebCore::Console::profile): When stating the profiler give a client for the callback of when the profile actually finishes. (WebCore::Console::profileEnd): No longer needs to handle the return of the profile object since it will be retruned in the client's callback. (WebCore::Console::finishedProfiling): Implemenet the ProfileClient callback method.
  • page/Console.h: Inherit from the ProfileClient.
  • page/InspectorController.cpp: (WebCore::InspectorController::startUserInitiatedProfiling): Use the client callback. (WebCore::InspectorController::stopUserInitiatedProfiling): Does not need to handle the profile being returned as it is now handled by the client callback. (WebCore::InspectorController::finishedProfiling): Implement the ProfileClient callback method.
  • page/InspectorController.h: Inherit from the ProfileClient.
12:26 PM Changeset in webkit [34695] by timothy@apple.com
  • 2 edits in trunk/WebCore

Makes the JavaScript syntax highlighter process lines in chunks
so the user interface isn't blocked for large script files.

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

Reviewed by Adam Roben.

  • page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype._addMessageToSource): Use the cells property on the row instead of getElementsByTagName. (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Use the cells property on the row instead of getElementsByTagName. Added a nested processChunk function that highlights 10 lines at a time This processChunk function is called at an interval of 25ms. The code is still highlighted quickly, and the user can't tell it wasn't highlighted all at once.
12:26 PM Changeset in webkit [34694] by timothy@apple.com
  • 3 edits in trunk/WebCore

Fixes a bug where the source view in the Resources panel had a
couple of extra pixels at the bottom when fully scrolled.

Reviewed by Adam Roben.

  • page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype.set autoSizesToFitContentHeight): Call removeStyleClass instead of addStyleClass for "webkit-height-sized-to-fit" when sizing to fit is being disabled.
  • page/inspector/inspector.css: (.resource-view.headers-visible .source-view-frame): Added the vertical-align: top property to prevent line alignment from adding extra pixels on the bottom.
12:26 PM Changeset in webkit [34693] by timothy@apple.com
  • 41 edits
    2 adds in trunk

Fixes: Bug 19679: iframes with a height of 32,768px or greater do not layout correctly

WebCore:

2008-06-19 Timothy Hatcher <timothy@apple.com>

Changed all lineHeight, baselinePosition and verticalPositionHint
calls to return int instead of short. The short was overflowing
when a value greater than 32,767 was encountered.

Fixes: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679

Reviewed by Dave Hyatt.

Test: fast/css/line-height-overflow.html

  • rendering/RenderBR.cpp: (WebCore::RenderBR::baselinePosition):
  • rendering/RenderBR.h:
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::lineHeight):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderListBox.cpp:
  • rendering/RenderListBox.h:
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::lineHeight):
  • rendering/RenderListMarker.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::verticalPositionHint):
  • rendering/RenderObject.h: (WebCore::):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::lineHeight):
  • rendering/RenderPath.h:
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::lineHeight):
  • rendering/RenderReplaced.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::lineHeight):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGHiddenContainer.cpp: (WebCore::RenderSVGHiddenContainer::lineHeight):
  • rendering/RenderSVGHiddenContainer.h:
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::lineHeight):
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSlider.cpp:
  • rendering/RenderSlider.h:
  • rendering/RenderTableCell.cpp:
  • rendering/RenderTableCell.h:
  • rendering/RenderTableCol.h:
  • rendering/RenderTableRow.h:
  • rendering/RenderTableSection.h:
  • rendering/RenderText.cpp:
  • rendering/RenderText.h:
  • rendering/RenderTextControl.cpp:
  • rendering/RenderTextControl.h:
  • rendering/RenderTheme.cpp:
  • rendering/RenderTheme.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:
  • rendering/RenderThemeSafari.cpp:
  • rendering/RenderThemeSafari.h:

LayoutTests:

2008-06-19 Timothy Hatcher <timothy@apple.com>

Test for: iframes with a height of 32,768px or greater do not layout correctly
https://bugs.webkit.org/show_bug.cgi?id=19679

Reviewed by Dave Hyatt.

  • fast/css/line-height-overflow.html: Added.
  • platform/mac/fast/css/line-height-overflow-expected.txt: Added.
12:19 PM Changeset in webkit [34692] by mitz@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: fast/table/prepend-in-anonymous-table.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addChildToFlow): Added code to handle the case of inserting before a child that has been wrapped by an anonymous table, in which case if the new child is the type that needs to be in a table, it is inserted into the table, and otherwise it is inserted before the table.
  • rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Added table-column-group alongside table-caption as content that can exist inside an anonymous table without being wrapped in a table section.

LayoutTests:

Reviewed by Darin Adler.

  • fast/table/prepend-in-anonymous-table.html: Added.
  • platform/mac/fast/table/prepend-in-anonymous-table-expected.checksum: Added.
  • platform/mac/fast/table/prepend-in-anonymous-table-expected.png: Added.
  • platform/mac/fast/table/prepend-in-anonymous-table-expected.txt: Added.
11:36 AM Changeset in webkit [34691] by hyatt@apple.com
  • 8 edits
    4 adds
    4 deletes in trunk

WebCore:

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

Allow CSS variables to support arbitrary expressions as values instead of just a single term.

Reviewed by Sam

Removed fast/css/variables/single-term-test.html and replaced with multiple-term-test.html

  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::addVariable):
  • css/CSSParser.h:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::addMatchedDeclaration):
  • css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration): (WebCore::CSSVariablesDeclaration::getVariableValue): (WebCore::CSSVariablesDeclaration::addParsedVariable): (WebCore::CSSVariablesDeclaration::getParsedVariable):
  • css/CSSVariablesDeclaration.h: (WebCore::CSSVariablesDeclaration::create):

LayoutTests:

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

Allow CSS variables to support arbitrary expressions as values instead of just a single term.

Reviewed by Sam

  • fast/css/variables/single-term-test.html: Removed.
  • fast/css/variables/multiple-term-test.html: Added.
  • platform/mac/fast/css/variables/multiple-term-test-expected.checksum: Added.
  • platform/mac/fast/css/variables/multiple-term-test-expected.png: Added.
  • platform/mac/fast/css/variables/multiple-term-test-expected.txt: Added.
  • platform/mac/fast/css/variables/single-term-test-expected.checksum: Removed.
  • platform/mac/fast/css/variables/single-term-test-expected.png: Removed.
  • platform/mac/fast/css/variables/single-term-test-expected.txt: Removed.
10:17 AM Changeset in webkit [34690] by Darin Adler
  • 4 edits in trunk/LayoutTests

2008-06-20 Darin Adler <Darin Adler>

  • updated results for some recent changes
  • fast/dom/Window/window-properties-expected.txt: Updated results to reflect the new rule type, VARIABLES_RULE (Hyatt's CSS variables patch).
  • fast/forms/plaintext-mode-1-expected.txt: Updated test and results to expect ForeColor to be disabled when the region is plain-text-only. Justin's execCommand patch for https://bugs.webkit.org/show_bug.cgi?id=16049.
  • fast/forms/plaintext-mode-1.html: Ditto.
8:22 AM Changeset in webkit [34689] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Surpress compiler warning (int vs unsigned comparison).

  • wtf/unicode/qt4/UnicodeQt4.h: (WTF::Unicode::toLower):
3:03 AM Changeset in webkit [34688] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-06-20 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>

Reviewed by Simon.

https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated

3:03 AM Changeset in webkit [34687] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-06-20 Marco Barisione <marco.barisione@collabora.co.uk>

Reviewed by Simon.

https://bugs.webkit.org/show_bug.cgi?id=19082
[Qt] Full-page plugins not activated

2:06 AM Changeset in webkit [34686] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-06-19 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Timothy Hatcher.

Introduce compiler define for MinGW, to have COMPILER(MINGW).

  • wtf/Platform.h:

Jun 19, 2008:

10:43 PM Changeset in webkit [34685] by mitz@apple.com
  • 3 edits in trunk/LayoutTests

Reviewed by Sam Weinig.

  • two more updated results for the last patch
  • platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
  • platform/mac/fast/invalid/020-expected.txt:
8:30 PM Changeset in webkit [34684] by ap@webkit.org
  • 15 edits in trunk

Reviewed by Geoff.

7:53 PM Changeset in webkit [34683] by mitz@apple.com
  • 9 edits
    3 moves
    9 adds
    9 deletes in trunk

WebCore:

Reviewed by John Sullivan.

  • fix a bug where anonymous tables were inserted in the wrong place

Tests: tables/mozilla/bugs/bug2479-2.html

tables/mozilla/bugs/bug278266.html
tables/mozilla/bugs/bug8411.xml

  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::addChild): Changed to create an anonymous table and insert it before beforeChild unless the insertion point is right after an existing anonymous table, in which case the existing table is used.

LayoutTests:

Reviewed by John Sullivan.

  • updated tests and results after fixing a bug where anonymous tables were inserted in the wrong place
  • fast/forms/form-hides-table.html: Wrapped every case in a block in order to prevent cross-talk.
  • platform/mac/fast/forms/form-hides-table-expected.checksum:
  • platform/mac/fast/forms/form-hides-table-expected.png:
  • platform/mac/fast/forms/form-hides-table-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.checksum: Added.
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.png: Added.
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.txt: Added.
  • platform/mac/tables/mozilla/bugs/bug2479-4-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug278266-expected.checksum: Added.
  • platform/mac/tables/mozilla/bugs/bug278266-expected.png: Added.
  • platform/mac/tables/mozilla/bugs/bug278266-expected.txt: Added.
  • platform/mac/tables/mozilla/bugs/bug8411-expected.checksum: Added.
  • platform/mac/tables/mozilla/bugs/bug8411-expected.png: Added.
  • platform/mac/tables/mozilla/bugs/bug8411-expected.txt: Added.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.checksum: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.png: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.txt: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.checksum: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.png: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug278266-expected.txt: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.checksum: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.png: Removed.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug8411-expected.txt: Removed.
  • platform/mac/tables/mozilla_expected_failures/other/test4-expected.txt:
  • tables/mozilla/bugs/bug2479-2.html: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug2479-2.html.
  • tables/mozilla/bugs/bug278266.html: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug278266.html.
  • tables/mozilla/bugs/bug8411.xml: Copied from LayoutTests/tables/mozilla_expected_failures/bugs/bug8411.xml.
  • tables/mozilla_expected_failures/bugs/bug2479-2.html: Removed.
  • tables/mozilla_expected_failures/bugs/bug278266.html: Removed.
  • tables/mozilla_expected_failures/bugs/bug8411.xml: Removed.
6:19 PM Changeset in webkit [34682] by justin.garcia@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-06-19 Justin Garcia <justin.garcia@apple.com>

Reviewed by Oliver.

<https://bugs.webkit.org/show_bug.cgi?id=16049>
execCommand('backColor') fails on collapsed selections

  • editing/EditorCommand.cpp: (WebCore::CommandEntry::): Enable BackColor for caret selections, and disable ForeColor in plaintext-only regions.

LayoutTests:

2008-06-19 Justin Garcia <justin.garcia@apple.com>

Reviewed by Oliver.


<https://bugs.webkit.org/show_bug.cgi?id=16049>
execCommand('backColor') fails on collapsed selections

  • editing/execCommand/16049-expected.txt: Added.
  • editing/execCommand/16049.html: Added.
5:24 PM Changeset in webkit [34681] by justin.garcia@apple.com
  • 21 edits
    8 adds in trunk

WebCore:

2008-06-19 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.

<https://bugs.webkit.org/show_bug.cgi?id=19653>
Typing style lost when creating list from, indenting or outdenting an empty paragraph


There were two problems. First, moveParagraphs didn't preserve the style of empty paragraphs.
Second, indent, outdent and list creation returned false from preservesTypingStyle.
The second problem couldn't be fixed by just adding preservesTypingStyle() { return true; }
to those commands, though, because of other bugs.


Cleaned up the implementation of typing style enough to remove FIXMEs for:


<rdar://problem/3769899> Implementation of typing style needs improvement


which has actually been closed for some time now anyway.


  • dom/Document.cpp: Removed an unused header.
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): Preserve the style of an empty paragraph, too.
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::saveTypingStyleState): Removed FIXME. (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Removed FIXME. If there is a typing style to apply after a delete, apply it to any line break that acts as a paragraph placeholder, not only one that was inserted by deletion. This fixes a bug where deleting <div><b>Bold</b><br></div>, changing the selection and then coming back and typing wouldn't produce bold text. Don't set the EditCommand's typingStyle, it has been removed (more on that later). (WebCore::DeleteSelectionCommand::doApply): We don't need to pass calculateTypingStyleAfterDelete the inserted placeholder because it will find it. (WebCore::DeleteSelectionCommand::preservesTypingStyle): Normally deletion doesn't preserve the typing style that was present before it. For example, type a character, Bold, then delete the character and start typing. The Bold typing style shouldn't stick around. We got this right before purely by chance. Deletion should preserve a typing style that *it* sets, however.
  • editing/DeleteSelectionCommand.h: No longer need to pass calculateTypingStyleAfterDelete the inserted placeholder.
  • editing/EditCommand.cpp: (WebCore::EditCommand::apply): Clearing or not clearing a removed anchor should not be determined by whether or not a command preservesTypingStyle(). For example, the deletion that removed an anchor (and stored it), may not preserve the typing style, but that doesn't mean that it should then go and clear the removed anchor. All high level commands, and all commands that a TypingCommand spawns, except for text insertions, which should restore a removed anchor, should clear it. There is no longer a typing style on EditCommand, removed code that cleared it. Code that clears the *actual* typing style is now in Editor::appliedEditing, just like before. There is no longer a typing style on EditCommand, removed code to set one. (WebCore::EditCommand::styleAtPosition): Removed FIXME.
  • editing/EditCommand.h: Removed code assosiated with m_typingStyle. Made preservesTypingStyle() public, so that we can call it from Editor::appliedEditing().
  • editing/Editor.cpp: (WebCore::Editor::appliedEditing): Removed code to preserve the removedAnchor during the call to setSelection, because we no longer request to clear the typing style with that call. Also removed the FIXME about this. Before, a command would set the Frame's typing style by setting its own typingStyle, and then letting code here, in appliedEditing pick that up and set it on the Frame. Now, the command itself sets the Frame's typing style. Deletion is the only command that does this right now.
  • editing/IndentOutdentCommand.h: (WebCore::IndentOutdentCommand::preservesTypingStyle): Added, returns true.
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply): Removed FIXME.
  • editing/InsertListCommand.h: (WebCore::InsertListCommand::preservesTypingStyle): Added.
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Removed FIXME.
  • editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input): Removed FIXME.
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): Removed FIXME and also added one about clearing the typing style here. It seems like it's something that could wait until after the command has been performed, since there is no code between this point and the end of the operation that queries or uses the typing style.

LayoutTests:

2008-06-19 Justin Garcia <justin.garcia@apple.com>

Reviewed by John.


https://bugs.webkit.org/show_bug.cgi?id=19653
Typing style lost when creating list from, indenting or outdenting an empty paragraph

These demonstrate fixes:

  • editing/execCommand/19653-1-expected.txt: Added.
  • editing/execCommand/19653-1.html: Added.
  • editing/execCommand/19653-2-expected.txt: Added.
  • editing/execCommand/19653-2.html: Added.
  • editing/execCommand/19653-3-expected.txt: Added.
  • editing/execCommand/19653-3.html: Added.
  • editing/execCommand/19653-4-expected.txt: Added.
  • editing/execCommand/19653-4.html: Added. Changed to an equivalent but more bloated DOM because of a pre-existing bug in ApplyStyleCommand:
  • platform/mac/editing/deleting/delete-br-011-expected.txt: Fixed a bug where the typing style wasn't applied to the placeholder in an empty paragraph, so typing would create text with the right style, but if you were to change the selection and then come back and start typing, the style would be wrong. The size of the caret was also wrong as a result:
  • platform/mac/editing/deleting/delete-br-012-expected.txt:
  • platform/mac/editing/deleting/delete-br-012-expected.png:
  • platform/mac/editing/deleting/delete-br-012-expected.checksum:
5:09 PM Changeset in webkit [34680] by mitz@apple.com
  • 2 edits in trunk/WebCore

2008-06-19 Dan Bernstein <mitz@apple.com>

Reviewed by Alexey Proskuryakov.

  • fix crash in CSSStyleDeclaration::copyPropertiesInSet()

Covered by many editing tests

  • css/CSSStyleDeclaration.cpp: (WebCore::CSSStyleDeclaration::copyPropertiesInSet): Re-ordered to avoid null pointer deref.
5:06 PM Changeset in webkit [34679] by hyatt@apple.com
  • 3 edits in trunk/WebCore

2008-06-19 David Hyatt <hyatt@apple.com>

Fix out of bounds bug in CSSVariablesDeclaration's item() method.

Reviewed by Sam, Darin

  • css/CSSVariablesDeclaration.cpp: (WebCore::CSSVariablesDeclaration::item):
  • css/CSSVariablesDeclaration.h:
4:42 PM Changeset in webkit [34678] by sullivan@apple.com
  • 2 edits in trunk/WebCore

2008-06-19 John Sullivan <sullivan@apple.com>

Reviewed by Darin


Tweak to previous checkin

  • page/FrameView.cpp: (WebCore::FrameView::performPostLayoutTasks): clear m_firstLayoutCallbackPending before performing callback, to avoid recursion
4:20 PM Changeset in webkit [34677] by alp@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-19 Alp Toker <alp@nuanti.com>

GTK+/autotools build fix. JSGlobalObject.cpp in now in
AllInOneFile.cpp and shouldn't be built separately.

  • GNUmakefile.am:
4:15 PM Changeset in webkit [34676] by sullivan@apple.com
  • 2 edits in trunk/WebCore

2008-06-19 John Sullivan <sullivan@apple.com>

Reviewed by Darin


  • fixed <rdar://problem/6021353> Assertion failure (!root->needsLayout()) after certain steps


The didFirstLayout callback was called in a place where trouble would ensue if the client
did any work that would cause the layout to be dirtied. Fixed by delaying the callback
until performPostLayoutTasks.

  • page/FrameView.cpp: new m_firstLayoutCallbackPending instance member variable in FrameViewPrivate (WebCore::FrameViewPrivate::reset): set m_firstLayoutCallbackPending to false (WebCore::FrameView::layout): set m_firstLayoutCallbackPending instead of a local variable; don't do didFirstLayout callback here (WebCore::FrameView::performPostLayoutTasks): if m_firstLayoutCallbackPending is set, do didFirstLayout callback here, then clear m_firstLayoutCallbackPending
3:39 PM Changeset in webkit [34675] by hyatt@apple.com
  • 5 edits in trunk/WebCore

2008-06-19 David Hyatt <hyatt@apple.com>

Implement some cleanup of CSS variables based off Darin's review comments.

Reviewed by darin

  • css/CSSParser.cpp: (WebCore::CSSParser::parseVariable): (WebCore::CSSParser::checkForVariables): (WebCore::CSSParser::addUnresolvedProperty):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::addMatchedDeclaration):
  • css/CSSVariableDependentValue.h:
  • css/CSSVariablesRule.cpp: (WebCore::CSSVariablesRule::CSSVariablesRule):
3:34 PM Changeset in webkit [34674] by sullivan@apple.com
  • 2 edits in trunk/WebCore

2008-06-19 John Sullivan <sullivan@apple.com>

Rubber-stamped by Dan


Prepended all FrameViewPrivate instance member variables with "m_" (in preparation
for adding a new one in a future patch)

  • page/FrameView.cpp: (WebCore::FrameViewPrivate::FrameViewPrivate): (WebCore::FrameViewPrivate::reset): (WebCore::FrameView::~FrameView): (WebCore::FrameView::resetScrollbars): (WebCore::FrameView::didFirstLayout): (WebCore::FrameView::initScrollbars): (WebCore::FrameView::layoutCount): (WebCore::FrameView::needsFullRepaint): (WebCore::FrameView::layoutRoot): (WebCore::FrameView::layout): (WebCore::FrameView::scrollTo): (WebCore::FrameView::useSlowRepaints): (WebCore::FrameView::setUseSlowRepaints): (WebCore::FrameView::removeSlowRepaintObject): (WebCore::FrameView::setScrollbarsMode): (WebCore::FrameView::setVScrollbarMode): (WebCore::FrameView::setHScrollbarMode): (WebCore::FrameView::scheduleRelayout): (WebCore::FrameView::scheduleRelayoutOfSubtree): (WebCore::FrameView::layoutPending): (WebCore::FrameView::needsLayout): (WebCore::FrameView::unscheduleRelayout): (WebCore::FrameView::isTransparent): (WebCore::FrameView::setTransparent): (WebCore::FrameView::baseBackgroundColor): (WebCore::FrameView::setBaseBackgroundColor): (WebCore::FrameView::performPostLayoutTasks): (WebCore::FrameView::updateOverflowStatus):
3:23 PM Changeset in webkit [34673] by ap@webkit.org
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin.

Get rid of some threadInstance calls.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::init):
  • kjs/Parser.cpp: (KJS::Parser::parse):
  • kjs/Shell.cpp: (jscmain):
3:13 PM Changeset in webkit [34672] by ap@webkit.org
  • 2 edits in trunk/WebKit/win

Windows build fix.

  • WebJavaScriptCollector.cpp: Added a missing include.
3:08 PM Changeset in webkit [34671] by hyatt@apple.com
  • 1 edit in trunk/WebCore/WebCoreSources.bkl

Add CSS variables files for wx port.

3:06 PM Changeset in webkit [34670] by hyatt@apple.com
  • 1 edit in trunk/WebCore/GNUmakefile.am

Add CSS variables files to .am makefile.

3:05 PM Changeset in webkit [34669] by hyatt@apple.com
  • 1 edit in trunk/WebCore/WebCore.pro

Add CSS variables files to .pro makefile.

2:59 PM Changeset in webkit [34668] by hyatt@apple.com
  • 1 edit in trunk/WebCore/WebCore.vcproj/WebCore.vcproj

Add CSS Variables files to visual studio project.

2:53 PM Changeset in webkit [34667] by hyatt@apple.com
  • 37 adds in trunk/LayoutTests/platform/mac/fast/css/variables

Add layout test results for new variables test cases.

2:49 PM Changeset in webkit [34666] by hyatt@apple.com
  • 23 edits
    27 adds in trunk

WebCore:

2008-06-19 David Hyatt <hyatt@apple.com>

Add initial support for CSS variables. Non-dynamic cases should (hopefully) all work. Things will get
confused if you use the CSS OM to remove variables/inject variables, etc. In addition no DOM APIs are
exposed yet for the new variable interfaces.

Reviewed by Beth

Added many tests to fast/css/variables/

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSFunctionValue.cpp: Added. (WebCore::CSSFunctionValue::CSSFunctionValue): (WebCore::CSSFunctionValue::~CSSFunctionValue): (WebCore::CSSFunctionValue::cssText): (WebCore::CSSFunctionValue::parserValue):
  • css/CSSFunctionValue.h: Added. (WebCore::CSSFunctionValue::create):
  • css/CSSGrammar.y:
  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration): (WebCore::CSSMutableStyleDeclaration::copy):
  • css/CSSMutableStyleDeclaration.h: (WebCore::CSSMutableStyleDeclaration::create): (WebCore::CSSMutableStyleDeclaration::hasVariableDependentValue):
  • css/CSSParser.cpp: (WebCore::equal): (WebCore::equalIgnoringCase): (WebCore::CSSParser::~CSSParser): (WebCore::CSSParserString::lower): (WebCore::CSSParser::document): (WebCore::CSSParser::validUnit): (WebCore::unitFromString): (WebCore::CSSParser::checkForOrphanedUnits): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillShorthand): (WebCore::CSSParser::parseTransitionShorthand): (WebCore::CSSParser::parseContent): (WebCore::CSSParser::parseFillImage): (WebCore::CSSParser::parseFillPosition): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseFillProperty): (WebCore::CSSParser::parseTransitionDuration): (WebCore::CSSParser::parseTransitionRepeatCount): (WebCore::CSSParser::parseTimingFunctionValue): (WebCore::CSSParser::parseTransitionTimingFunction): (WebCore::CSSParser::parseTransitionProperty): (WebCore::skipCommaInDashboardRegion): (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseCounterContent): (WebCore::CSSParser::parseShape): (WebCore::CSSParser::parseFont): (WebCore::CSSParser::parseFontFamily): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseFontFaceUnicodeRange): (WebCore::CSSParser::parseColorParameters): (WebCore::CSSParser::parseHSLParameters): (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseColorFromValue): (WebCore::ShadowParseContext::commitLength): (WebCore::CSSParser::parseShadow): (WebCore::CSSParser::parseReflect): (WebCore::BorderImageParseContext::commitNumber): (WebCore::BorderImageParseContext::commitWidth): (WebCore::BorderImageParseContext::commitBorderImage): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::parseCounter): (WebCore::parseGradientPoint): (WebCore::parseGradientColorStop): (WebCore::CSSParser::parseGradient): (WebCore::CSSParser::parseCanvas): (WebCore::TransformOperationInfo::TransformOperationInfo): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::lex): (WebCore::CSSParser::text): (WebCore::CSSParser::createFloatingValueList): (WebCore::CSSParser::sinkFloatingValueList): (WebCore::CSSParser::createFloatingFunction): (WebCore::CSSParser::sinkFloatingFunction): (WebCore::CSSParser::sinkFloatingValue): (WebCore::CSSParser::createFloatingMediaQueryExp): (WebCore::CSSParser::createCharsetRule): (WebCore::CSSParser::createImportRule): (WebCore::CSSParser::createVariablesRule): (WebCore::CSSParser::addVariable): (WebCore::CSSParser::clearVariables): (WebCore::CSSParser::parseVariable): (WebCore::CSSParser::parsePropertyWithResolvedVariables): (WebCore::CSSParser::checkForVariables): (WebCore::CSSParser::addUnresolvedProperty): (WebCore::cssPropertyID): (WebCore::cssValueKeywordID):
  • css/CSSParser.h:
  • css/CSSParserValues.cpp: Added. (WebCore::CSSParserValueList::~CSSParserValueList): (WebCore::CSSParserValueList::addValue): (WebCore::CSSParserValueList::deleteValueAt): (WebCore::CSSParserValue::createCSSValue):
  • css/CSSParserValues.h: Added. (WebCore::CSSParserString::operator String): (WebCore::CSSParserString::operator AtomicString): (WebCore::CSSParserValue::): (WebCore::CSSParserValueList::CSSParserValueList): (WebCore::CSSParserValueList::size): (WebCore::CSSParserValueList::current): (WebCore::CSSParserValueList::next): (WebCore::CSSParserValueList::valueAt): (WebCore::CSSParserValueList::clear): (WebCore::CSSParserValueList::containsVariables): (WebCore::CSSParserFunction::~CSSParserFunction):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::getStringValue): (WebCore::CSSPrimitiveValue::cssText): (WebCore::CSSPrimitiveValue::parserValue):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::): (WebCore::CSSPrimitiveValue::setPrimitiveType):
  • css/CSSRule.h: (WebCore::CSSRule::):
  • css/CSSRule.idl:
  • css/CSSStyleDeclaration.cpp: (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::addMatchedDeclaration): (WebCore::CSSStyleSelector::addVariables): (WebCore::CSSStyleSelector::resolveVariableDependentValue): (WebCore::CSSRuleSet::addRulesFromSheet): (WebCore::CSSStyleSelector::applyDeclarations):
  • css/CSSStyleSelector.h:
  • css/CSSValue.h: (WebCore::CSSValue::isVariableDependentValue): (WebCore::CSSValue::parserValue):
  • css/CSSValueList.cpp: (WebCore::CSSValueList::CSSValueList): (WebCore::CSSValueList::createParserValueList):
  • css/CSSValueList.h: (WebCore::CSSValueList::createFromParserValueList):
  • css/CSSVariableDependentValue.cpp: Added. (WebCore::CSSVariableDependentValue::CSSVariableDependentValue): (WebCore::CSSVariableDependentValue::~CSSVariableDependentValue): (WebCore::CSSVariableDependentValue::cssText):
  • css/CSSVariableDependentValue.h: Added. (WebCore::CSSVariableDependentValue::create): (WebCore::CSSVariableDependentValue::isVariableDependentValue): (WebCore::CSSVariableDependentValue::valueList):
  • css/CSSVariablesDeclaration.cpp: Added. (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration): (WebCore::CSSVariablesDeclaration::~CSSVariablesDeclaration): (WebCore::CSSVariablesDeclaration::getVariableValue): (WebCore::CSSVariablesDeclaration::removeVariable): (WebCore::CSSVariablesDeclaration::setVariable): (WebCore::CSSVariablesDeclaration::addParsedVariable): (WebCore::CSSVariablesDeclaration::getParsedVariable): (WebCore::CSSVariablesDeclaration::length): (WebCore::CSSVariablesDeclaration::item): (WebCore::CSSVariablesDeclaration::parentRule): (WebCore::CSSVariablesDeclaration::cssText):
  • css/CSSVariablesDeclaration.h: Added. (WebCore::CSSVariablesDeclaration::create):
  • css/CSSVariablesRule.cpp: Added. (WebCore::CSSVariablesRule::CSSVariablesRule): (WebCore::CSSVariablesRule::~CSSVariablesRule): (WebCore::CSSVariablesRule::cssText):
  • css/CSSVariablesRule.h: Added. (WebCore::CSSVariablesRule::media): (WebCore::CSSVariablesRule::variables): (WebCore::CSSVariablesRule::type): (WebCore::CSSVariablesRule::isVariablesRule): (WebCore::CSSVariablesRule::setDeclaration):
  • css/MediaQueryExp.cpp: (WebCore::MediaQueryExp::MediaQueryExp):
  • css/MediaQueryExp.h:
  • css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue): (WebCore::CSSParser::parseSVGStrokeDasharray):
  • css/StyleBase.h: (WebCore::StyleBase::isVariablesRule):
  • css/tokenizer.flex:

LayoutTests:

2008-06-19 David Hyatt <hyatt@apple.com>

Add layout tests for CSS variables.

Reviewed by Beth

  • fast/css/variables: Added.
  • fast/css/variables/colors-test.html: Added.
  • fast/css/variables/font-test.html: Added.
  • fast/css/variables/image-test.html: Added.
  • fast/css/variables/import-test.html: Added.
  • fast/css/variables/invalid-variable-test.html: Added.
  • fast/css/variables/margin-test.html: Added.
  • fast/css/variables/misplaced-import-test.html: Added.
  • fast/css/variables/misplaced-variables-test.html: Added.
  • fast/css/variables/override-test.html: Added.
  • fast/css/variables/print-test.html: Added.
  • fast/css/variables/resources: Added.
  • fast/css/variables/resources/bad.css: Added.
  • fast/css/variables/resources/good.css: Added.
  • fast/css/variables/resources/listmark.gif: Added.
  • fast/css/variables/shorthand-test.html: Added.
  • fast/css/variables/single-term-test.html: Added.
2:28 PM Changeset in webkit [34665] by jchaffraix@webkit.org
  • 3 edits
    1 move in trunk/WebCore

WebCore:

2008-06-19 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Bug 19529 : Empty clients need to be refactored
https://bugs.webkit.org/show_bug.cgi?id=19529

  • SVGImageEmptyClients' refactoring in order to be able to use them for other elements.


  • Trimmed empty spaces that were pointed out by git.
  • WebCore.xcodeproj/project.pbxproj:
  • loader/EmptyClients.h: Copied from WebCore/svg/graphics/SVGImageEmptyClients.h.

(WebCore::EmptyChromeClient::~EmptyChromeClient):
(WebCore::EmptyFrameLoaderClient::~EmptyFrameLoaderClient):
(WebCore::EmptyEditorClient::~EmptyEditorClient):
(WebCore::EmptyEditorClient::smartInsertDeleteEnabled):
(WebCore::EmptyContextMenuClient::~EmptyContextMenuClient):
(WebCore::EmptyDragClient::~EmptyDragClient):
(WebCore::EmptyDragClient::createDragImageForLink):
(WebCore::EmptyInspectorClient::~EmptyInspectorClient):
Renamed SVGImageEmpty*Client classes to Empty*Client.

  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::dataChanged):
  • svg/graphics/SVGImageEmptyClients.h: Removed.
2:13 PM Changeset in webkit [34664] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Sam.

Fix an assertion failure at startup.

  • kjs/JSObject.h: (KJS::JSObject::JSObject): Allow jsNull prototype in an assertion (I had it fixed in a wrong copy of the file, so I wasn't getting the failure).
1:42 PM Changeset in webkit [34663] by mitz@apple.com
  • 6 edits
    2 adds in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/6008098> REGRESSION: Crash at FontFallbackList::fontDataAt()

Test: fast/css/font-face-multiple-families.html

Made changes to reflect the fact that the relationship between
CSSFontFace and CSSSegmentedFontFace is in fact many-to-many.

  • css/CSSFontFace.cpp: (WebCore::CSSFontFace::addedToSegmentedFontFace): Added. (WebCore::CSSFontFace::removedFromSegmentedFontFace): Added. (WebCore::CSSFontFace::fontLoaded): Changed to notify all segmented font faces that include this font face. (WebCore::CSSFontFace::getFontData): Updated to get the font selector from one of the segmented font faces.
  • css/CSSFontFace.h: (WebCore::CSSFontFace::CSSFontFace):
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule): Fixed the direct cause of the crash, namely releasing the font face when adding it to the first family that uses it, making it impossible to add it to the second and onwards families.
  • css/CSSSegmentedFontFace.cpp: (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace): Added code to call CSSFontFace::removedFromSegmentedFontFace(). (WebCore::CSSSegmentedFontFace::overlayRange): Added code to call CSSFontFace::{addedTo, removedFrom}SegmentedFontFace().

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/6008098> REGRESSION: Crash at FontFallbackList::fontDataAt()
  • fast/css/font-face-multiple-families-expected.txt: Added.
  • fast/css/font-face-multiple-families.html: Added.
11:32 AM Changeset in webkit [34662] by ap@webkit.org
  • 2 edits in trunk/WebCore

Qt build fix.

  • bridge/qt/qt_runtime.h: Include completion.h.
11:18 AM Changeset in webkit [34661] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Build fix.

  • kjs/collector.cpp: (KJS::Heap::Heap): (KJS::allocateBlock):
  • kjs/collector.h: No, #if PLATFORM(UNIX) was not right. I've just moved the unsafe initialization back for now, as the platforms that use that code path do not use multiple threads yet.
11:03 AM Changeset in webkit [34660] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Windows and Qt build fixes.

  • kjs/collector.h:
  • kjs/collector.cpp: (KJS::Heap::Heap): Wrapped m_pagesize in #if PLATFORM(UNIX), which should better match the sequence of #elifs in allocateBlock(). Changed MIN_ARRAY_SIZE to be explicitly size_t, as this type is different on different platforms.
10:29 AM Changeset in webkit [34659] by ap@webkit.org
  • 153 edits
    2 adds in trunk

Reviewed by Darin.

Prepare JavaScript heap for being per-thread.

10:24 AM Changeset in webkit [34658] by timothy@apple.com
  • 2 edits in trunk/WebCore

Update the JavaScript syntax highlight colors to match Xcode.
This matches the other Xcode colors we are using for HTML.

Reviewed by Dan Bernstein.

  • page/inspector/SourceFrame.js:
10:01 AM Changeset in webkit [34657] by timothy@apple.com
  • 4 edits in trunk/WebCore

Added JavaScript syntax highlighting to the Web Inspector.

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

Reviewed by Tim Hatcher and Adam Roben.

  • page/inspector/ScriptView.js: Added a call to syntaxHighlightJavascript.
  • page/inspector/SourceFrame.js: (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine): Added. Modifies a line content element. (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Added. Syntax highlights the entire script.
  • page/inspector/SourceView.js: Added a call to syntaxHighlightJavascript.
2:57 AM Changeset in webkit [34656] by oliver@apple.com
  • 61 edits
    1 copy in trunk/WebCore

Starting to clean up the SVG Filter code. Mostly adding 'create' wrapper
functions and changing raw pointer fields to RefPtrs.

Patch by Alex Mathews

Reviewed by Oliver

Jun 18, 2008:

8:41 PM Changeset in webkit [34655] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-06-18 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein.

Fix assertion in fast/dom/ImageDocument-image-deletion.html caused by new media document creation.

  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Create the media document after we're done processing pdfs and images.
8:05 PM Changeset in webkit [34654] by mitz@apple.com
  • 3 edits
    1 copy
    3 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: fast/dynamic/floating-to-positioned-2.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Changed to also remove relatively positioned floats from object lists when they become positioned, because then they cease to be floating.

LayoutTests:

Reviewed by Darin Adler.

  • fast/dynamic/floating-to-positioned-2.html: Copied from fast/dynamic/floating-to-positioned.html.
  • platform/mac/fast/dynamic/floating-to-positioned-2-expected.checksum: Added.
  • platform/mac/fast/dynamic/floating-to-positioned-2-expected.png: Added.
  • platform/mac/fast/dynamic/floating-to-positioned-2-expected.txt: Added.
7:44 PM Changeset in webkit [34653] by Darin Adler
  • 2 edits in trunk/WebCore

2008-06-18 Darin Adler <Darin Adler>

Reviewed by Mark Rowe.

  • fix storage leak
  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::copy): Added an adoptRef that I missed when changing these objects to start with a refcount of 1.
3:58 PM Changeset in webkit [34652] by timothy@apple.com
  • 2 edits in trunk/WebCore

Add a script build phase to remove the WebKit.qrc file from
WebCore's resources. This file is used for the Qt port, but we
copy the whole inspector folder for connivence and get this file.

Reviewed by Adam Roben.

  • WebCore.xcodeproj/project.pbxproj: New script phase.
2:33 PM Changeset in webkit [34651] by timothy@apple.com
  • 2 edits
    1 add in trunk/WebCore

Combine the Web Inspector's JavaScript resources into one large
script file to speed up loading of the Inspector.

Reviewed by Adam Roben.

  • WebCore.xcodeproj/project.pbxproj: Added a Streamline Inspector Source script build phase that calls combine-javascript-resources and moves files around in the build directory.
  • combine-javascript-resources: Added.
1:50 PM Changeset in webkit [34650] by jchaffraix@webkit.org
  • 2 edits in trunk/WebKit/qt

2008-06-18 Julien Chaffraix <jchaffraix@webkit.org>

Qt Build fix after r34627.

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin):
1:04 PM Changeset in webkit [34649] by jmalonzo@webkit.org
  • 4 edits in trunk

2008-06-18 Marco Barisione <marco.barisione@collabora.co.uk>

Reviewed by Alp Toker.

https://bugs.webkit.org/show_bug.cgi?id=19171
[GTK] GTypes for enumerations

Generate GTypes for public enumerations so they can be used as
properties.

(This is a recommit of r34646, w/ additional build fix)

  • GNUmakefile.am: Generate webkit-enum-types.cpp and webkit-enum-types.h.
12:50 PM Changeset in webkit [34648] by rwlbuis@webkit.org
  • 4 edits
    4 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=18786
Once rendered, SVG text elements removed from DOM continue to be displayed

Repaint the text visual rect before removing it.

10:16 AM Changeset in webkit [34647] by jmalonzo@webkit.org
  • 4 edits in trunk

Revert "2008-06-18 Marco Barisione <marco.barisione@collabora.co.uk>"

This reverts commit c6c3f8ca4996a96a1c7e9d1ddb9c6e3bd05daed9.

This patch breaks the build. Reverting for now

4:35 AM Changeset in webkit [34646] by jmalonzo@webkit.org
  • 4 edits in trunk

2008-06-18 Marco Barisione <marco.barisione@collabora.co.uk>

Reviewed by Alp Toker.

https://bugs.webkit.org/show_bug.cgi?id=19171
[GTK] GTypes for enumerations

  • webkit/webkit.h: Include webkit-enum-types.h.
2:54 AM Changeset in webkit [34645] by christian@webkit.org
  • 2 edits in trunk/WebCore

Gtk build fix, brought up by Dirk Schulze.

Jun 17, 2008:

9:44 PM Changeset in webkit [34644] by Beth Dakin
  • 6 edits in trunk/WebCore

2008-06-17 Beth Dakin <Beth Dakin>

Reviewed by Tim.

This patch removes all instances of the phrase "TextMarker" from
function names in the C++ accessibility code. TextMarkers only
exists in the Objective-C code.

  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::visiblePositionRangeForLine): (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions): (WebCore::AccessibilityObject::positionOfLeftWord): (WebCore::AccessibilityObject::positionOfRightWord): (WebCore::AccessibilityObject::leftLineVisiblePositionRange): (WebCore::AccessibilityObject::rightLineVisiblePositionRange): (WebCore::AccessibilityObject::sentenceForPosition): (WebCore::AccessibilityObject::paragraphForPosition): (WebCore::AccessibilityObject::styleRangeForPosition): (WebCore::AccessibilityObject::visiblePositionRangeForRange): (WebCore::AccessibilityObject::stringForVisiblePositionRange): (WebCore::AccessibilityObject::boundsForVisiblePositionRange): (WebCore::AccessibilityObject::lengthForVisiblePositionRange): (WebCore::AccessibilityObject::setSelectedVisiblePositionRange): (WebCore::AccessibilityObject::visiblePositionForPoint): (WebCore::AccessibilityObject::nextVisiblePosition): (WebCore::AccessibilityObject::previousVisiblePosition): (WebCore::AccessibilityObject::nextWordEnd): (WebCore::AccessibilityObject::previousWordStart): (WebCore::AccessibilityObject::nextLineEndPosition): (WebCore::AccessibilityObject::previousLineStartPosition): (WebCore::AccessibilityObject::nextSentenceEndPosition): (WebCore::AccessibilityObject::previousSentenceStartPosition): (WebCore::AccessibilityObject::nextParagraphEndPosition): (WebCore::AccessibilityObject::previousParagraphStartPosition): (WebCore::AccessibilityObject::visiblePositionForIndex): (WebCore::AccessibilityObject::accessibilityObjectForPosition): (WebCore::AccessibilityObject::lineForPosition): (WebCore::AccessibilityObject::plainTextRangeForVisiblePositionRange): (WebCore::AccessibilityObject::index): (WebCore::AccessibilityObject::doAXRangeForPosition): (WebCore::AccessibilityObject::doAXStyleRangeForIndex): (WebCore::AccessibilityObject::doAXLineForIndex):
  • page/AccessibilityObject.h:
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange): (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange): (WebCore::AccessibilityRenderObject::visiblePositionForPoint): (WebCore::AccessibilityRenderObject::visiblePositionForIndex): (WebCore::AccessibilityRenderObject::index): (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
  • page/AccessibilityRenderObject.h:
  • page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
8:04 PM Changeset in webkit [34643] by mitz@apple.com
  • 3 edits in trunk/WebKitTools

Reviewed by Justin Garcia.

  • prefer Leopard results when running on Snow Leopard.
  • Scripts/run-webkit-tests: Added a mapping of Snow Leopard to mac-leopard.
  • Scripts/webkitdirs.pm: Added isSnowLeopard().
6:34 PM Changeset in webkit [34642] by mrowe@apple.com
  • 6 edits in trunk

<rdar://problem/5775802> JavaScriptGlue, WebCore and WebKit should not force use of GCC 4.0.

Reviewed by Darin Adler.

  • JavaScriptGlue.xcodeproj/project.pbxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebKit.xcodeproj/project.pbxproj:
6:32 PM Changeset in webkit [34641] by Darin Adler
  • 7 edits in trunk/WebCore

2008-06-17 Darin Adler <Darin Adler>

Reviewed by Sam.

  • eliminate the last RefCounted client that needs the "start at 0" behavior, NodeFilter
  • move handling of non-Attr arguments from the code generation script to the DOM itself (as with every other type of argument)
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::toNodeFilter): Changed return type to PassRefPtr. Use create instead of new.
  • bindings/objc/DOM.mm: (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): Use create instead of new. (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]): Ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Use PassRefPtr and RefPtr for toNodeFilter and the local variable for NodeFilter arguments. Remove the TypeCanFailConversion mechanism: It's no longer needed for Attr, was not having any effect for VoidCallback, and was returning false for all other types.
  • dom/Element.cpp: (WebCore::Element::setAttributeNode): Added code to return TYPE_MISMATCH_ERR when the attr is 0 -- this matches what the autogenerated bindings did before. (WebCore::Element::setAttributeNodeNS): Ditto. (WebCore::Element::removeAttributeNode): Ditto.
  • dom/NodeFilter.h: Added create, made constructor private, and got rid of code to initialize the refcount to 0.
  • html/CanvasPattern.h: Made CachedResourceClient base class private in a more-explicit way.
6:14 PM Changeset in webkit [34640] by Adam Roben
  • 2 edits in trunk/WebCore

Fix <rdar://6016755> Assertion failure when WebView is child of message-only window

Reviewed by Ada Chan.

No test possible.

  • platform/win/WindowMessageBroadcaster.cpp: (WebCore::WindowMessageBroadcaster::addListener): Only subclass the window when we're adding our first listener. Removed an assertion that an old WNDPROC was returned -- this will be 0 in the case of a message-only window. Added an assertion to help catch cases where we try to subclass the window twice. (WebCore::WindowMessageBroadcaster::unsubclassWindow): Removed an assertion that is not correct in the message-only window case.
6:00 PM Changeset in webkit [34639] by adele@apple.com
  • 3 edits in trunk/WebCore

2008-06-17 Adele Peterson <adele@apple.com>

Attempt to fix builds by wrapping new code in #if ENABLE(VIDEO)

  • loader/MediaDocument.cpp:
  • loader/MediaDocument.h:
5:45 PM Changeset in webkit [34638] by adele@apple.com
  • 2 edits in trunk/WebCore

2008-06-17 Adele Peterson <adele@apple.com>

Attempt to fix builds by wrapping new code in #if ENABLE(VIDEO)

  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
5:07 PM Changeset in webkit [34637] by adele@apple.com
  • 12 edits
    2 adds in trunk/WebCore

2008-06-17 Adele Peterson <adele@apple.com>

Reviewed by Brady.

Fix for <rdar://problem/5605768> Render full-page video/audio with <video>/<audio> instead of QuickTime plug-in

  • WebCore.xcodeproj/project.pbxproj: Added MediaDocument class.
  • GNUmakefile.am: ditto.
  • WebCore.pro: ditto.
  • WebCore.vcproj/WebCore.vcproj: ditto.
  • WebCoreSources.bkl: ditto.
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Check to see if the type can be played by our MediaPlayer, if so create a MediaDocument
  • dom/Document.h: (WebCore::Document::isMediaDocument): Added.
  • loader/MediaDocument.cpp: Added. (WebCore::MediaTokenizer::MediaTokenizer): (WebCore::MediaTokenizer::wantsRawData): (WebCore::MediaTokenizer::write): (WebCore::MediaTokenizer::createDocumentStructure): (WebCore::MediaTokenizer::writeRawData): (WebCore::MediaTokenizer::stopParsing): (WebCore::MediaTokenizer::finish): (WebCore::MediaTokenizer::isWaitingForScripts): (WebCore::MediaDocument::MediaDocument): (WebCore::MediaDocument::createTokenizer):
  • loader/MediaDocument.h: Added. (WebCore::MediaDocument::create): (WebCore::MediaDocument::isMediaDocument):
  • page/InspectorController.cpp: (WebCore::getResourceDocumentNode): Added MediaDocument case so it is handled the same as a PluginDocument or ImageDocument.
  • platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::supportsType): Added.
  • platform/graphics/MediaPlayer.h:
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControlVisibility): Instead of checking the html element to decide if the media is audio, check the player. This means that if a video element actually only contains audio, then we will still avoid fading the controls in and out.
3:53 PM Changeset in webkit [34636] by christian@webkit.org
  • 2 edits in trunk/WebKit/gtk

[GTK] WebKitWebHistoryItem needs properties

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

Implement properties matching the existing accessors.

Reviewed by Alp.

3:33 PM Changeset in webkit [34635] by timothy@apple.com
  • 4 edits in trunk/WebCore

Adds the file name and line number for call frames next to
the function name in the Call Stack pane.

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

Reviewed by Adam Roben.

  • English.lproj/localizedStrings.js: Updated strings.
  • page/inspector/CallStackSidebarPane.js: (WebInspector.CallStackSidebarPane.prototype.update): Create a subtitle based on the URL and line number.
3:33 PM Changeset in webkit [34634] by timothy@apple.com
  • 12 edits in trunk

Use accurate call frame title's based on the call frame type.
Added a type to DebuggerCallFrame so the under interface can
distinguish anonymous functions and program call frames.

JavaScriptCore:

2008-06-16 Timothy Hatcher <timothy@apple.com>

Added a type to DebuggerCallFrame so the under interface can
distinguish anonymous functions and program call frames.

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

Reviewed by Geoff Garen.

  • JavaScriptCore.exp: Export the DebuggerCallFrame::type symbol.
  • kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::type): Added.
  • kjs/DebuggerCallFrame.h:

WebCore:

2008-06-16 Timothy Hatcher <timothy@apple.com>

Use accurate call frame title's based on the call frame type.

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

Reviewed by Geoff Garen.

  • English.lproj/localizedStrings.js: Updated strings.
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::evaluate): Removed the isValid() check since the evaluate() functiondoes the check already. (WebCore::JSJavaScriptCallFrame::thisObject): Removed the isValid() check, since thisObject() does the check and returns null if invalid. (WebCore::JSJavaScriptCallFrame::type): Return a string based on the enum value of the type. (WebCore::JSJavaScriptCallFrame::scopeChain): Removed the isValid() check, since scopeChain() does the check and returns null if invalid. So just null check scopeChain().
  • page/JavaScriptCallFrame.cpp: (WebCore::JavaScriptCallFrame::type): Return the DebuggerCallFrame::Type. Return DebuggerCallFrame::UnknownType if the call frame is invalid.
  • page/JavaScriptCallFrame.h:
  • page/JavaScriptCallFrame.idl: Add the type property.
  • page/inspector/CallStackSidebarPane.js: (WebInspector.CallStackSidebarPane.prototype.update): Check the type of the call frame to create the correct title.
  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use the "(program)" title for the file menu to match the call frames.
3:32 PM Changeset in webkit [34633] by timothy@apple.com
  • 3 edits in trunk/WebCore

Remember the expanded state of objects in the Scope Variables pane when stepping.
https://bugs.webkit.org/show_bug.cgi?id=19584

Reviewed by Adam Roben.

  • page/inspector/ObjectPropertiesSection.js: (WebInspector.ObjectPropertiesSection): Add an optional argument that is the treeElementConstructor to use when making TreeElements. (WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use the treeElementConstructor to create TreeElements. (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Use the treeElementConstructor to create TreeElements.
  • page/inspector/ScopeChainSidebarPane.js: (WebInspector.ScopeChainSidebarPane.prototype.update): Create an _expandedProperties object on the callframe if one doesn't exist yet. Pass WebInspector.ScopeVariableTreeElement to the ObjectPropertiesSection as the TreeElement constructor we want to use. (WebInspector.ScopeVariableTreeElement): Added. (WebInspector.ScopeVariableTreeElement.prototype.onattach): Expand if the propertyIdentifier is in the pane's _expandedProperties. (WebInspector.ScopeVariableTreeElement.prototype.onexpand): Add the propertyIdentifier to the pane's _expandedProperties. (WebInspector.ScopeVariableTreeElement.prototype.oncollapse): Remove the propertyIdentifier from the pane's _expandedProperties. (WebInspector.ScopeVariableTreeElement.prototype.get propertyIdentifier): Return an identifier that has the section title, subtile and propertyPath concatenated. (WebInspector.ScopeVariableTreeElement.prototype.get propertyPath): Return a string that has the propertyNames up to the root ancestor concatenated with a period.
3:32 PM Changeset in webkit [34632] by timothy@apple.com
  • 2 edits in trunk/WebCore

Focus the mainPanelsElement in a timeout so it happens after the
initial focus, so it doesn't get reset to the first toolbar button.
This initial focus happens on Mac when the window is made key and
the WebHTMLView becomes the first responder.

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

Reviewed by Adele Peterson.

  • page/inspector/inspector.js: (WebInspector.loaded): Focus the mainPanelsElement in a timeout.
3:32 PM Changeset in webkit [34631] by timothy@apple.com
  • 7 edits in trunk/WebCore

Use tabIndex in the Web Inspector for focusable areas.
https://bugs.webkit.org/show_bug.cgi?id=19583

Reviewed by Adam Roben.

  • page/inspector/Console.js: (WebInspector.Console): No longer make the messagesElement focusable since the engine handles the case for us. The promptElement now handles the key events. (WebInspector.Console.prototype.show): Set the current focus element to the prompt element. (WebInspector.Console.prototype.hide): Set the current focus element to WebInspector.previousFocusElement. (WebInspector.Console.prototype._messagesFocused): Removed.
  • page/inspector/DataGrid.js: (WebInspector.DataGrid): Remove the focusable class.
  • page/inspector/DatabaseQueryView.js: (WebInspector.DatabaseQueryView): Remove the focusable class. Set tabIndex to 0. The promptElement now handles the key events. (WebInspector.DatabaseQueryView.prototype._focused): Removed.
  • page/inspector/inspector.css: Updated selectors to use :focus instead of .focused and .blurred.
  • page/inspector/inspector.html: Removed focusable, focused and blurred classes and added tabindex attributes.
  • page/inspector/inspector.js: (WebInspector.get previousFocusElement): Added. Returns _previousFocusElement. (WebInspector.set currentFocusElement): Simplified. Stores the previous element in _previousFocusElement for clients that need it. Calls focus on the passed in element or blur on the previous element. (WebInspector.loaded): Removed the event listener for mousedown. Renamed changeFocus to focusChanged. (WebInspector.focusChanged): Renamed from changeFocus. Just sets the currentFocusElement to the event target. (WebInspector.startEditing): Changed to use tabIndex and blur events. Add a more robust check for restoring focus to the previous element when editing finishes that catches focused descendants.
3:32 PM Changeset in webkit [34630] by timothy@apple.com
  • 2 edits in trunk/WebCore

Removed redundant if statements and early returns from
AccessibilityRenderObject::ariaRoleAttribute.

Reviewed by Sam Wenig.

  • page/AccessibilityRenderObject.cpp: (AccessibilityRenderObject::ariaRoleAttribute): Removed redundant if statements and early returns.
3:32 PM Changeset in webkit [34629] by timothy@apple.com
  • 7 edits in trunk/WebCore

Removed duplicate implementations of setTabIndex. They all matched
the HTMLElement::setTabIndex implementation.

Reviewed by Sam Wenig.

  • html/HTMLAnchorElement.cpp: Removed setTabIndex.
  • html/HTMLAreaElement.cpp: Ditto.
  • html/HTMLFormControlElement.cpp: Ditto.
  • html/HTMLFormControlElement.h: Ditto.
  • html/HTMLObjectElement.cpp: Ditto.
  • html/HTMLObjectElement.h: Ditto.
1:28 PM Changeset in webkit [34628] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Tim H.

Remove bogus ASSERT which tripped every time for those who use PAC files.

  • kjs/Parser.cpp: (KJS::Parser::parse):
12:16 PM Changeset in webkit [34627] by Darin Adler
  • 103 edits in trunk

WebCore:

2008-06-17 Darin Adler <Darin Adler>

Reviewed by Sam.

Change StyleBase and all classes derived from it.

  • bindings/js/JSRGBColor.cpp: (WebCore::JSRGBColor::getValueProperty):
  • bindings/objc/DOMRGBColor.mm: (-[DOMRGBColor red]): (-[DOMRGBColor green]): (-[DOMRGBColor blue]): (-[DOMRGBColor alpha]):
  • css/CSSBorderImageValue.cpp: (WebCore::CSSBorderImageValue::cssText):
  • css/CSSBorderImageValue.h: (WebCore::CSSBorderImageValue::create):
  • css/CSSCanvasValue.h: (WebCore::CSSCanvasValue::create): (WebCore::CSSCanvasValue::setName): (WebCore::CSSCanvasValue::CSSCanvasValue):
  • css/CSSCharsetRule.cpp: (WebCore::CSSCharsetRule::CSSCharsetRule):
  • css/CSSCharsetRule.h: (WebCore::CSSCharsetRule::create): (WebCore::CSSCharsetRule::encoding): (WebCore::CSSCharsetRule::isCharsetRule): (WebCore::CSSCharsetRule::type):
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::valueForShadow): (WebCore::valueForNinePieceImage): (WebCore::valueForReflection): (WebCore::getPositionOffsetValue): (WebCore::currentColorOrValidColor): (WebCore::getBorderRadiusCornerValue): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSComputedStyleDeclaration.h: (WebCore::computedStyle):
  • css/CSSCursorImageValue.h: (WebCore::CSSCursorImageValue::create):
  • css/CSSFontFaceRule.cpp: (WebCore::CSSFontFaceRule::CSSFontFaceRule):
  • css/CSSFontFaceRule.h: (WebCore::CSSFontFaceRule::create): (WebCore::CSSFontFaceRule::isFontFaceRule): (WebCore::CSSFontFaceRule::type):
  • css/CSSFontFaceSrcValue.h: (WebCore::CSSFontFaceSrcValue::create): (WebCore::CSSFontFaceSrcValue::createLocal): (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue): (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
  • css/CSSGradientValue.h: (WebCore::CSSGradientColorStop::CSSGradientColorStop): (WebCore::CSSGradientValue::create): (WebCore::CSSGradientValue::CSSGradientValue):
  • css/CSSImageGeneratorValue.h: (WebCore::CSSImageGeneratorValue::isImageGeneratorValue):
  • css/CSSImageValue.h: (WebCore::CSSImageValue::create):
  • css/CSSImportRule.cpp: (WebCore::CSSImportRule::CSSImportRule): (WebCore::CSSImportRule::setCSSStyleSheet):
  • css/CSSImportRule.h: (WebCore::CSSImportRule::create): (WebCore::CSSImportRule::isImportRule): (WebCore::CSSImportRule::type):
  • css/CSSInheritedValue.h: (WebCore::CSSInheritedValue::create): (WebCore::CSSInheritedValue::CSSInheritedValue):
  • css/CSSInitialValue.h: (WebCore::CSSInitialValue::createExplicit): (WebCore::CSSInitialValue::createImplicit): (WebCore::CSSInitialValue::CSSInitialValue):
  • css/CSSMediaRule.cpp: (WebCore::CSSMediaRule::CSSMediaRule):
  • css/CSSMediaRule.h: (WebCore::CSSMediaRule::create): (WebCore::CSSMediaRule::isMediaRule): (WebCore::CSSMediaRule::type):
  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::setProperty): (WebCore::CSSMutableStyleDeclaration::setStringProperty):
  • css/CSSMutableStyleDeclaration.h: (WebCore::CSSMutableStyleDeclaration::create):
  • css/CSSPageRule.cpp: (WebCore::CSSPageRule::CSSPageRule):
  • css/CSSPageRule.h: (WebCore::CSSPageRule::create):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseColor): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::addFillValue): (WebCore::CSSParser::parseFillShorthand): (WebCore::CSSParser::addTransitionValue): (WebCore::CSSParser::parseTransitionShorthand): (WebCore::CSSParser::parseShorthand): (WebCore::CSSParser::parseContent): (WebCore::CSSParser::parseBackgroundColor): (WebCore::CSSParser::parseFillPositionXY): (WebCore::CSSParser::parseFillPosition): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseFillProperty): (WebCore::CSSParser::parseTransitionDuration): (WebCore::CSSParser::parseTransitionRepeatCount): (WebCore::CSSParser::parseTransitionTimingFunction): (WebCore::CSSParser::parseTransitionProperty): (WebCore::CSSParser::parseDashboardRegions): (WebCore::CSSParser::parseCounterContent): (WebCore::CSSParser::parseShape): (WebCore::CSSParser::parseFont): (WebCore::CSSParser::parseFontFamily): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::parseFontFaceUnicodeRange): (WebCore::ShadowParseContext::commitValue): (WebCore::ShadowParseContext::commitLength): (WebCore::CSSParser::parseShadow): (WebCore::CSSParser::parseReflect): (WebCore::BorderImageParseContext::commitNumber): (WebCore::BorderImageParseContext::commitBorderImage): (WebCore::CSSParser::parseBorderImage): (WebCore::CSSParser::parseCounter): (WebCore::parseGradientPoint): (WebCore::parseGradientColorStop): (WebCore::CSSParser::parseGradient): (WebCore::CSSParser::parseCanvas): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::createMediaList): (WebCore::CSSParser::createCharsetRule): (WebCore::CSSParser::createImportRule): (WebCore::CSSParser::createMediaRule): (WebCore::CSSParser::createStyleRule): (WebCore::CSSParser::createFontFaceRule):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::): (WebCore::CSSPrimitiveValue::createIdentifier): (WebCore::CSSPrimitiveValue::createColor): (WebCore::CSSPrimitiveValue::create): (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::isPrimitiveValue):
  • css/CSSQuirkPrimitiveValue.h: (WebCore::CSSQuirkPrimitiveValue::create):
  • css/CSSReflectValue.h: (WebCore::CSSReflectValue::create):
  • css/CSSRule.cpp: (WebCore::CSSRule::parentRule): (WebCore::CSSRule::setCssText):
  • css/CSSRule.h: (WebCore::CSSRule::CSSRule): (WebCore::CSSRule::isRule):
  • css/CSSStyleDeclaration.cpp: (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
  • css/CSSStyleDeclaration.h:
  • css/CSSStyleRule.cpp: (WebCore::CSSStyleRule::CSSStyleRule):
  • css/CSSStyleRule.h: (WebCore::CSSStyleRule::create): (WebCore::CSSStyleRule::isStyleRule): (WebCore::CSSStyleRule::type):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): (WebCore::parseUASheet): (WebCore::CSSRuleSet::addRulesFromSheet): (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::checkLoaded):
  • css/CSSStyleSheet.h: (WebCore::CSSStyleSheet::create): (WebCore::CSSStyleSheet::isCSSStyleSheet): (WebCore::CSSStyleSheet::type):
  • css/CSSTimingFunctionValue.h: (WebCore::CSSTimingFunctionValue::create): (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue): (WebCore::CSSTimingFunctionValue::isTransitionTimingFunctionValue):
  • css/CSSTransformValue.cpp: (WebCore::CSSTransformValue::CSSTransformValue): (WebCore::CSSTransformValue::~CSSTransformValue): (WebCore::CSSTransformValue::addValue): (WebCore::CSSTransformValue::cssText):
  • css/CSSTransformValue.h: (WebCore::CSSTransformValue::create):
  • css/CSSUnicodeRangeValue.h: (WebCore::CSSUnicodeRangeValue::create): (WebCore::CSSUnicodeRangeValue::CSSUnicodeRangeValue):
  • css/CSSUnknownRule.h:
  • css/CSSValue.h: (WebCore::CSSValue::isImageGeneratorValue): (WebCore::CSSValue::isImageValue): (WebCore::CSSValue::isPrimitiveValue): (WebCore::CSSValue::isValueList): (WebCore::CSSValue::isSVGColor): (WebCore::CSSValue::isSVGPaint): (WebCore::CSSValue::CSSValue):
  • css/CSSValueList.h: (WebCore::CSSValueList::createCommaSeparated): (WebCore::CSSValueList::createSpaceSeparated): (WebCore::CSSValueList::isValueList):
  • css/FontFamilyValue.h: (WebCore::FontFamilyValue::create):
  • css/FontValue.h: (WebCore::FontValue::create): (WebCore::FontValue::FontValue): (WebCore::FontValue::isFontValue):
  • css/MediaList.cpp: (WebCore::MediaList::MediaList): (WebCore::MediaList::deleteMedium): (WebCore::MediaList::setMediaText):
  • css/MediaList.h: (WebCore::MediaList::create): (WebCore::MediaList::createAllowingDescriptionSyntax): (WebCore::MediaList::length): (WebCore::MediaList::mediaQueries):
  • css/MediaQueryEvaluator.cpp: (WebCore::MediaQueryEvaluator::eval):
  • css/MediaQueryExp.cpp: (WebCore::MediaQueryExp::MediaQueryExp):
  • css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::glyphOrientationToCSSPrimitiveValue): (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue): (WebCore::CSSParser::parseSVGStrokeDasharray): (WebCore::CSSParser::parseSVGPaint): (WebCore::CSSParser::parseSVGColor):
  • css/ShadowValue.h: (WebCore::ShadowValue::create):
  • css/StyleBase.h: (WebCore::StyleBase::isCSSStyleSheet): (WebCore::StyleBase::isFontFaceRule): (WebCore::StyleBase::isRule): (WebCore::StyleBase::isStyleRule): (WebCore::StyleBase::isStyleSheet): (WebCore::StyleBase::isXSLStyleSheet): (WebCore::StyleBase::StyleBase):
  • css/StyleList.cpp:
  • css/StyleList.h: (WebCore::StyleList::StyleList):
  • css/StyleSheet.h: (WebCore::StyleSheet::styleSheetChanged): (WebCore::StyleSheet::isStyleSheet):
  • dom/CSSMappedAttributeDeclaration.h: (WebCore::CSSMappedAttributeDeclaration::create): (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createCSSStyleSheet):
  • dom/Document.cpp: (WebCore::Document::createCSSStyleDeclaration): (WebCore::Document::setCSSStyleSheet): (WebCore::Document::elementSheet): (WebCore::Document::mappedElementSheet): (WebCore::Document::recalcStyleSelector):
  • dom/Node.cpp: (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):
  • dom/Position.cpp: (WebCore::Position::computedStyle):
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::checkStyleSheet): (WebCore::ProcessingInstruction::setCSSStyleSheet): (WebCore::ProcessingInstruction::setXSLStyleSheet):
  • dom/ProcessingInstruction.h:
  • dom/StyleElement.cpp: (WebCore::StyleElement::createSheet):
  • dom/StyledElement.cpp: (WebCore::StyledElement::createInlineStyleDecl): (WebCore::StyledElement::createMappedDecl):
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): (WebCore::hasTextDecorationProperty): (WebCore::ApplyStyleCommand::extractAndNegateTextDecorationStyle):
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
  • editing/Editor.cpp: (WebCore::Editor::selectionHasStyle): (WebCore::Editor::setBaseWritingDirection):
  • editing/EditorCommand.cpp: (WebCore::executeApplyStyle): (WebCore::executeToggleStyle): (WebCore::executeApplyParagraphStyle): (WebCore::stateStyle):
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion):
  • editing/RemoveFormatCommand.cpp: (WebCore::RemoveFormatCommand::doApply):
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::insertFragmentForTestRendering):
  • editing/markup.cpp: (WebCore::styleFromMatchedRulesForElement): (WebCore::appendStartMarkup):
  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::createLinkDecl):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::process): (WebCore::HTMLLinkElement::setCSSStyleSheet):
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::pickMedia):
  • html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::additionalAttributeStyleDecls): (WebCore::HTMLTableElement::addSharedCellBordersDecl): (WebCore::HTMLTableElement::addSharedCellPaddingDecl): (WebCore::HTMLTableElement::addSharedGroupDecls):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::getComputedStyle):
  • page/Frame.cpp: (WebCore::Frame::computeAndSetTypingStyle): (WebCore::Frame::selectionComputedStyle):
  • page/Frame.h:
  • rendering/style/RenderStyle.cpp: (WebCore::StyleCachedImage::cssValue):
  • rendering/style/RenderStyle.h:
  • svg/SVGColor.h: (WebCore::SVGColor::create): (WebCore::SVGColor::isSVGColor):
  • svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::SVGFontFaceElement): (WebCore::SVGFontFaceElement::rebuildFontFace):
  • svg/SVGFontFaceNameElement.cpp: (WebCore::SVGFontFaceNameElement::srcValue):
  • svg/SVGFontFaceSrcElement.cpp: (WebCore::SVGFontFaceSrcElement::srcValue):
  • svg/SVGFontFaceUriElement.cpp: (WebCore::SVGFontFaceUriElement::srcValue):
  • svg/SVGPaint.cpp: (WebCore::SVGPaint::SVGPaint):
  • svg/SVGPaint.h: (WebCore::SVGPaint::create): (WebCore::SVGPaint::isSVGPaint):
  • svg/animation/SMILTimeContainer.cpp: (WebCore::SMILTimeContainer::baseValueFor):
  • xml/XSLImportRule.cpp: (WebCore::XSLImportRule::XSLImportRule): (WebCore::XSLImportRule::setXSLStyleSheet):
  • xml/XSLImportRule.h: (WebCore::XSLImportRule::create): (WebCore::XSLImportRule::href): (WebCore::XSLImportRule::isImportRule):
  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::checkLoaded): (WebCore::XSLStyleSheet::loadChildSheet):
  • xml/XSLStyleSheet.h: (WebCore::XSLStyleSheet::create): (WebCore::XSLStyleSheet::createEmbedded):
  • xml/XSLTProcessor.cpp: (WebCore::xsltStylesheetPointer):

WebKit/mac:

2008-06-17 Darin Adler <Darin Adler>

Reviewed by Sam.

  • WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Use create instead of new to create a CSSMutableStyleDeclaration.
11:45 AM Changeset in webkit [34626] by adele@apple.com
  • 15 edits
    18 adds in trunk

WebCore:

2008-06-17 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.


Fix for https://bugs.webkit.org/show_bug.cgi?id=18887
Added support for autofocus controls.

When authors specify the "autofocus" attribute on form controls these
acquire focus automatically as the document is rendered.

Tests: fast/forms/autofocus-attribute.html

fast/forms/autofocus-opera-001.html
fast/forms/autofocus-opera-002.html
fast/forms/autofocus-opera-003.html
fast/forms/autofocus-opera-004.html
fast/forms/autofocus-opera-005.html
fast/forms/autofocus-opera-006.html
fast/forms/autofocus-opera-007.html
fast/forms/autofocus-opera-008.html

  • dom/Document.cpp: (WebCore::Document::Document): Initialize the flag to ignore autofocus.
  • dom/Document.h:
  • html/HTMLAttributeNames.in:
  • html/HTMLButtonElement.idl:
  • html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::attach): Sets focus onto the appropriate "autofocus" control (WebCore::HTMLFormControlElement::autofocus): Autofocus attribute getter (WebCore::HTMLFormControlElement::setAutofocus): Autofocus attribute setter
  • html/HTMLFormControlElement.h:
  • html/HTMLInputElement.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLTextAreaElement.idl:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setUserEdited): Sets the "ignore autofocus" flag on document if the user edited the control.
  • rendering/RenderTextControl.h:

LayoutTests:

2008-06-17 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Tests for https://bugs.webkit.org/show_bug.cgi?id=18887
Added support for autofocus controls.

Test cases "autofocus-opera*" have been imported from the Opera test suite
originally located at:
http://tc.labs.opera.com/html/forms/input/common-attributes/autofocus/


  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/resources/domListEnumeration.js:
  • fast/forms/autofocus-attribute-expected.txt: Added.
  • fast/forms/autofocus-attribute.html: Added.
  • fast/forms/autofocus-opera-001-expected.txt: Added.
  • fast/forms/autofocus-opera-001.html: Added.
  • fast/forms/autofocus-opera-002-expected.txt: Added.
  • fast/forms/autofocus-opera-002.html: Added.
  • fast/forms/autofocus-opera-003-expected.txt: Added.
  • fast/forms/autofocus-opera-003.html: Added.
  • fast/forms/autofocus-opera-004-expected.txt: Added.
  • fast/forms/autofocus-opera-004.html: Added.
  • fast/forms/autofocus-opera-005-expected.txt: Added.
  • fast/forms/autofocus-opera-005.html: Added.
  • fast/forms/autofocus-opera-006-expected.txt: Added.
  • fast/forms/autofocus-opera-006.html: Added.
  • fast/forms/autofocus-opera-007-expected.txt: Added.
  • fast/forms/autofocus-opera-007.html: Added.
  • fast/forms/autofocus-opera-008-expected.txt: Added.
  • fast/forms/autofocus-opera-008.html: Added.
10:59 AM Changeset in webkit [34625] by alp@webkit.org
  • 4 edits in trunk/WebCore

2008-06-17 Alp Toker <alp@nuanti.com>

Reviewed by Dave Hyatt and Mark Rowe.

https://bugs.webkit.org/show_bug.cgi?id=19190
[CAIRO] Canvas rendered as black

Make sure the frame alpha transparency flag is set to true unless
we're certain the image data is solid and can be blitted, since the
Cairo backend implements a fast-path for blittable BitmapImages.

Thanks to Dirk Schulze for helping to track down this problem.

  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::frameHasAlphaAtIndex):
  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::BitmapImage):
  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::BitmapImage):
9:16 AM Changeset in webkit [34624] by kmccullough@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-06-17 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

<rdar://problem/5951534> JSProfiler: Don't profile console.profile()
or console.profileEnd()

  • profiler/Profile.cpp: (KJS::Profile::stopProfiling): Moved the creation of the (idle) node to the Profile (not ProfileNode). This makes sense since the Profile should be the one to modify the profile tree. Also each stopProfiling() does not need to check if it's the head node anymore. Also fixed an oddity where I was using willExecute to create the node. (KJS::Profile::removeProfileStart): Removes the call to console.profile that started this profile. (KJS::Profile::removeProfileEnd): Removes the call to console.profileEnd that ended this profile.
  • profiler/Profile.h:
  • profiler/ProfileNode.cpp: Moved the creation of the (idle) node to the Profile object. (KJS::ProfileNode::stopProfiling):
  • profiler/ProfileNode.h: Added some helper functions and whitespace to facilitate readability and the removal of profile() and profileEnd() from the Profile tree. (KJS::CallIdentifier::operator const char* ): (KJS::ProfileNode::firstChild): (KJS::ProfileNode::lastChild): (KJS::ProfileNode::removeChild): (KJS::ProfileNode::toString):
9:07 AM Changeset in webkit [34623] by mitz@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Typo fix.

7:59 AM Changeset in webkit [34622] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-06-17 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber stamped by Adam Robben.

Include JSGlobalObject.h to fix the build.

  • kjs/ScopeChain.cpp:
7:45 AM Changeset in webkit [34621] by Simon Hausmann
  • 5 edits in trunk

2008-06-17 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Fix the Qt port by adding ExecState when necessary.

2:33 AM Changeset in webkit [34620] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Reduce code duplication in emitReadModifyAssignment().

  • kjs/nodes.cpp: (KJS::emitReadModifyAssignment):
1:45 AM Changeset in webkit [34619] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Sort includes alphabetically.

  • kjs/nodes.cpp:
1:29 AM Changeset in webkit [34618] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2008-06-17 David Hyatt <hyatt@apple.com>

Fix for slow performance on CSS selector tests at:

http://jpsykes.com/153/more-css-performance-testing-pt-2

Fix <style> element processing so that we don't reparse the entire stylesheet as chunks come in from
the network (since this is O(n2)). Wait for the parser to deliver all of the data before we
process the sheet for the first time.

Reviewed by olliej

  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::finishParsingChildren): (WebCore::HTMLStyleElement::childrenChanged):

Jun 16, 2008:

11:22 PM Changeset in webkit [34617] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-16 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Bug 19596: LEAK: Gmail leaks SegmentedVector<RegisterID>
<https://bugs.webkit.org/show_bug.cgi?id=19596>

When growing SegmentedVector, we start adding segments at the position
of the last segment, overwriting it. The destructor frees allocated
segments starting at the segment of index 1, because the segment of
index 0 is assumed to be the initial inline segment. This causes a leak
of the segment that is referenced by index 0. Modifying grow() so that
it starts adding segments at the position after the last segment fixes
the leak.

Since the initial segment is a special case in the lookup code, this
bug never manifested itself via incorrect results.

  • VM/SegmentedVector.h: (KJS::SegmentedVector::grow):
10:59 PM Changeset in webkit [34616] by mjs@apple.com
  • 1 edit
    1 add in trunk/WebKitSite

2008-06-16 Maciej Stachowiak <mjs@apple.com>

A handy reference image.

  • blog-files/acid3-timing.png: Added.
10:31 PM Changeset in webkit [34615] by mjs@apple.com
  • 10 edits
    2 deletes in trunk

JavaScriptCore:

2008-06-16 Maciej Stachowiak <mjs@apple.com>

Reviewed by Alexey.


  • removed nearly unused types.h and LocalStorageEntry.h headers
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/ExecState.h:
  • kjs/LocalStorageEntry.h: Removed.
  • kjs/RegExpObject.cpp:
  • kjs/error_object.cpp:
  • kjs/grammar.y:
  • kjs/nodes.cpp:
  • kjs/types.h: Removed.

JavaScriptGlue:

2008-06-16 Maciej Stachowiak <mjs@apple.com>

Reviewed by Alexey.

  • removed nearly unused types.h and LocalStorageEntry.h headers
  • JSUtils.h:
10:07 PM Changeset in webkit [34614] by mitz@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Justin Garcia.

  • fix <rdar://problem/5973313> REGRESSION (r32508): Down arrow doesn't change caret with non-user entered newlines in textareas

Test: editing/selection/after-line-break.html

  • dom/Position.cpp: (WebCore::Position::getInlineBoxAndOffset): Changed to not include the position after a line break in its line box, because that position is actually on the next line.

LayoutTests:

Reviewed by Justin Garcia.

  • test and updated results for <rdar://problem/5973313> REGRESSION (r32508): Down arrow doesn't change caret with non-user entered newlines in textareas
  • editing/selection/after-line-break-expected.txt: Added.
  • editing/selection/after-line-break.html: Added.
  • platform/mac/editing/selection/move-left-right-expected.txt: More bogus warnings.
9:49 PM Changeset in webkit [34613] by ap@webkit.org
  • 2 edits in trunk/WebKit/win

Trying to fix Windows build.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::variableNames): (WebScriptCallFrame::valueForVariable): Give ExecState to functions that now take it.
8:49 PM Changeset in webkit [34612] by alp@webkit.org
  • 5 edits in trunk/JavaScriptCore

2008-06-16 Alp Toker <alp@nuanti.com>

Rubber-stamped by Geoff.

Change c++ to c in minidom and testapi emacs mode line comments.

  • API/Node.h:
  • API/NodeList.c:
  • API/NodeList.h:
  • API/testapi.c:
8:45 PM Changeset in webkit [34611] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Trying to fix Windows build.

  • kjs/PropertyNameArray.h:
  • kjs/identifier.cpp: Include ExecState.h
7:49 PM Changeset in webkit [34610] by ggaren@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-06-16 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Slight cleanup to the SymbolTableEntry class.


Renamed isEmpty to isNull, since we usually use "empty" to mean "holds
the valid, empty value", and "null" to mean "holds no value".


Changed an "== 0" to a "!", to match our style guidelines.


Added some ASSERTs to verify the (possibly questionable) assumption that
all register indexes will have their high two bits set. Also clarified a
comment to make that assumption clear.

6:44 PM Changeset in webkit [34609] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.

Initialize functionQueueMutex in a safe manner.

  • wtf/MainThread.cpp: (WTF::functionQueueMutex): Made it an AtomicallyInitializedStatic.

(WTF::dispatchFunctionsFromMainThread):
(WTF::setMainThreadCallbacksPaused):
Assert that the current thread is main, meaning that the callbacksPaused static can be
accessed.

6:00 PM Changeset in webkit [34608] by mrowe@apple.com
  • 4 edits in trunk/WebKit/mac

<rdar://problem/5951874> WebHTMLHighlighter mistakenly gained two new methods, causing compile warnings

Reviewed by Darin Adler.

_pauseNullEventsForAllNetscapePlugins and _resumeNullEventsForAllNetscapePlugins ended up being declared both in
WebHTMLViewInternal.h and as members of the WebHTMLHighlighter protocol in WebHTMLViewPrivate.h. They don't belong
in the protocol, but they do need to be available outside of WebKit so they're being moved to the correct location
in WebHTMLViewPrivate.h and removed from WebHTMLViewInternal.h.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):
(-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]):

  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h:
4:28 PM Changeset in webkit [34607] by ap@webkit.org
  • 76 edits in trunk

Reviewed by Geoff Garen.

Make Identifier construction use an explicitly passed IdentifierTable.

No change on SunSpider total.

2:21 PM Changeset in webkit [34606] by Simon Hausmann
  • 6 edits in trunk/JavaScriptCore

2008-06-16 Thiago Macieira <tjmaciei@trolltech.com>

Reviewed by Darin.

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

Fix compilation in C++ environments where C99 headers are not present

The stdbool.h header is a C99 feature, defining the "_Bool" type as well as the
"true" and "false" constants. But it's completely unnecessary in C++ as the
language already defines the "bool" type and its two values.

  • API/JSBase.h:
  • API/JSContextRef.h:
  • API/JSObjectRef.h:
  • API/JSStringRef.h:
  • API/JSValueRef.h:
1:57 PM Changeset in webkit [34605] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-16 Kevin McCullough <kmccullough@apple.com>

Reviewed by John.

<rdar://problem/6012509> JSProfiler: %s are incorrect if you exclude a
top level node like (idle)

  • profiler/Profile.cpp: (KJS::Profile::focus): (KJS::Profile::exclude): Subtract the selfTime from the totalTime of the head since its self time will only be non-zero when one of its children were excluded. Since the head's totalTime is used to calculate %s when its totalTime is the same as the sum of all its visible childrens' times their %s will sum to 100%.
1:08 PM Changeset in webkit [34604] by mitz@apple.com
  • 2 edits in trunk/WebCore

2008-06-16 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Dan Bernstein.

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintTextDecorations): remove an extra context->save() from the shadow painting code.
12:57 PM Changeset in webkit [34603] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-16 Kevin McCullough <kmccullough@apple.com>

Reviewed by Sam Weinig.

<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the profiler.

  • profiler/Profile.cpp: (KJS::Profile::willExecute):
12:52 PM Changeset in webkit [34602] by kmccullough@apple.com
  • 6 edits in trunk/JavaScriptCore

2008-06-16 Kevin McCullough <kmccullough@apple.com>

Reviewed by Sam.

<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.

  • Remove the last of the uses of recursion in the profiler.
  • JavaScriptCore.exp: Export the new function's signature.
  • profiler/Profile.cpp: (KJS::calculateVisibleTotalTime): Added a new static method for recalculating the visibleTotalTime of methods after focus has changed which are visible. (KJS::stopProfiling): (KJS::Profile::focus): Implemented focus without recursion.
  • profiler/Profile.h: Moved implementation into the definition file.
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::traverseNextNodePreOrder): Added an argument for whether or not to process the children nodes, this allows focus to skip sub trees which have been set as not visible. (KJS::ProfileNode::calculateVisibleTotalTime): This function set's a node's total visible time to the sum of its self time and its children's total times. (KJS::ProfileNode::focus): Implemented focus without recursion.
  • profiler/ProfileNode.h: (KJS::CallIdentifier::operator!= ): (KJS::ProfileNode::setActualTotalTime): Expanded setting the total time so that focus could modify only the visible total time. (KJS::ProfileNode::setVisibleTotalTime):
11:16 AM Changeset in webkit [34601] by sfalken@apple.com
  • 1 copy in tags/Safari-5525.19

New tag.

9:24 AM Changeset in webkit [34600] by Adam Roben
  • 2 edits in trunk/WebKit/win

Windows build fix

  • WebScriptCallFrame.cpp: Fixed a header name.
6:48 AM Changeset in webkit [34599] by christian@webkit.org
  • 11 edits in trunk/JavaScriptCore

JavaScriptCore headers use C++ style comments

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

Replace all C++ style comments with C style multiline
comments and remove all "mode" lines.

Reviewed by Sam.

6:39 AM Changeset in webkit [34598] by christian@webkit.org
  • 12 edits in trunk/JavaScriptCore

(JavaScriptCore) minidom uses C++ style comments

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

Use only C style comments in minidom sources

Reviewed by Sam.

6:29 AM Changeset in webkit [34597] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

2008-06-16 Adriaan de Groot <groot@kde.org>

Reviewed by Simon.

Fix compilation on Solaris

On some systems, munmap takes a char* instead of a void* (contrary to POSIX and
Single Unix Specification). Since you can always convert from char* to void*
but not vice-versa, do the casting to char*.

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

2008-06-16 Adriaan de Groot <groot@kde.org>

Reviewed by Simon.

Fix compilation on Sun Studio 12

make_pair is a function template with two template arguments. This is to force
it to have the correct type according to the pair<> structure.

4:58 AM Changeset in webkit [34595] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-06-10 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon

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

Fill the background of scrollbars to the window color before
letting the QStyle paint its primitive elements.

3:14 AM Changeset in webkit [34594] by Simon Hausmann
  • 2 edits in trunk

2008-06-16 Simon Hausmann <Simon Hausmann>

Fix the Qt build. testkjs.pro is now called jsc.pro.

1:19 AM Changeset in webkit [34593] by cwzwarich@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-06-16 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Make a UnaryOpNode class to reduce boilerplate code for UnaryPlusNode,
NegateNode, BitwiseNotNode, and LogicalNotNode.

  • VM/CodeGenerator.h: (KJS::CodeGenerator::emitToJSNumber):
  • kjs/nodes.cpp: (KJS::UnaryOpNode::emitCode):
  • kjs/nodes.h: (KJS::UnaryOpNode::UnaryOpNode): (KJS::UnaryPlusNode::): (KJS::NegateNode::): (KJS::NegateNode::precedence): (KJS::BitwiseNotNode::): (KJS::BitwiseNotNode::precedence): (KJS::LogicalNotNode::): (KJS::LogicalNotNode::precedence):
1:09 AM Changeset in webkit [34592] by jmalonzo@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-06-16 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix

  • GNUmakefile.am:
Note: See TracTimeline for information about the timeline view.