Timeline


and

06/02/08:

23:26 Changeset [34334] by ggaren@apple.com

JavaScriptCore:

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

Reviewed by Alexey Proskuryakov.

Removed JSObject::call, since it just called JSObject::callAsFunction.

SunSpider reports no change.

JavaScriptGlue:

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

Reviewed by Alexey Proskuryakov.

Removed JSObject::call, since it just called JSObject::callAsFunction.

SunSpider reports no change.

WebCore:

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

Reviewed by Alexey Proskuryakov.


Removed JSObject::call, since it just called JSObject::callAsFunction.


SunSpider reports no change.

20:48 Changeset [34333] by mjs@apple.com

2008-06-02 Maciej Stachowiak <mjs@apple.com>

  • config.ini: Correct URL for just-added blog.
20:15 Changeset [34332] by mjs@apple.com

2008-06-02 Maciej Stachowiak <mjs@apple.com>

Rubber stamped by Mark.

19:17 Changeset [34331] by alp@webkit.org

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

Reviewed by Maciej.

Two of the toJSNewlyCreated() optimisations in r34141 were never
reached due to a generator bug and missing IDL attribute.

Fix header generation to provide the necessary toJSNewlyCreated()
overloads.

Patch includes a related build fix by Jan Michael Alonzo.

  • GNUmakefile.am:
  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/Text.idl:
18:05 Changeset [34330] by ggaren@apple.com

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

Transparent background!

  • blog-files/squirrelfish.png:
17:30 Changeset [34329] by alp@webkit.org

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

GTK+/autotools Windows build system fixes.

  • GNUmakefile.am:
  • configure.ac:
16:04 Changeset [34328] by alice.liu@apple.com

2008-06-02 Alice Liu <alice.liu@apple.com>

Reviewed by Beth Dakin.

Some ARIA roles are designated to have presentational children, which
means that their descendants aren't exposed to assistive technologies
on an individual basis. What this means in webcore is that descendants
of such roles need to be ignored in terms of accessibility.

  • page/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isPresentationalChildOfAriaRole): (WebCore::AccessibilityObject::ariaRoleHasPresentationalChildren):
  • page/AccessibilityObject.h:
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole): (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
  • page/AccessibilityRenderObject.h:
15:28 Changeset [34327] by ggaren@apple.com

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

Crop!

  • blog-files/squirrelfish-webkit-graph.png:
15:07 Changeset [34326] by ggaren@apple.com

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

Renamed this file quiet down the peanut gallery.

  • blog-files/squirrelfish-webkit-graph.png: Copied from blog-files/webkit-graph.png.
  • blog-files/webkit-graph.png: Removed.
15:02 Changeset [34325] by ggaren@apple.com

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

Added a graph.

  • blog-files/webkit-graph.png: Added.
14:54 Changeset [34324] by hyatt@apple.com

2008-06-02 David Hyatt <hyatt@apple.com>

Fix for https://bugs.webkit.org/show_bug.cgi?id=19303

When the right slice value is omitted in border-image it should use the value of the left slice and not
the top slice.

Reviewed by darin

Added fast/borders/border-image-omit-right-slice.html

  • css/CSSParser.cpp: (WebCore::BorderImageParseContext::commitBorderImage)
14:46 Changeset [34323] by andersca@apple.com

WebCore:

2008-06-02 Anders Carlsson <andersca@apple.com>

Reviewed by David Hyatt and Mitz.

<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)


Test: platform/mac/plugins/update-widget-from-style-recalc.html

Make sure to update the document's rendering before calling updateWidget.


  • html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):

WebKitTools:

2008-06-02 Anders Carlsson <andersca@apple.com>

Reviewed by David Hyatt and Mitz.

<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)


Call -[WebView display] in the "plug-in" failed delegate method, simulating
the sheet that Safari puts up.


  • DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):

LayoutTests:

2008-06-02 Anders Carlsson <andersca@apple.com>

Reviewed by David Hyatt and Mitz.

<rdar://problem/5704119>
repro crash in WebCore::RenderPart::setWidget (plugin-related?)


  • platform/mac/plugins/update-widget-from-style-recalc-expected.txt: Added.
  • platform/mac/plugins/update-widget-from-style-recalc.html: Added.
14:45 Changeset [34322] by ggaren@apple.com

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

Moved the squirrelfish mascot to the right place.

  • blog-files/squirrelfish.png: Copied from images/squirrelfish.png.
  • images/squirrelfish.png: Removed.
14:41 Changeset [34321] by ggaren@apple.com

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

Uploaded the squirrelfish mascot.

  • images/squirrelfish.png: Added.
13:47 Changeset [34320] by jchaffraix@webkit.org

LayoutTests:

2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Bug 18655: [XHR] OnProgress needs more test case
https://bugs.webkit.org/show_bug.cgi?id=18655

  • http/tests/xmlhttprequest/resources/five-tiny-chunk-one-second-delay.php: Added.
  • http/tests/xmlhttprequest/resources/noContentLength.asis: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-LSProgressEvent-ProgressEvent-should-match-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-LSProgressEvent-ProgressEvent-should-match.html: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-addEventListener-onProgress-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-addEventListener-onProgress.html: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-no-content-length-onProgress-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-no-content-length-onProgress.html: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-onProgress-open-should-zero-length.html: Added.
13:45 Changeset [34319] by ggaren@apple.com

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

Reviewed by Darin Adler.


A little cleanup in the CodeGenerator.

  • VM/CodeGenerator.cpp: A few changes here.

(1) Removed remaining cases of the old hack of putting "this" into the
symbol table; replaced with explicit tracking of m_thisRegister.

(2) Made m_thisRegister behave the same for function, eval, and program
code, removing the static programCodeThis() function.

(3) Added a feature to nix a ScopeNode's declaration stacks when done
compiling, to save memory.

(4) Removed code that copied eval declarations into special vectors: we
just use the originals in the ScopeNode now.


  • VM/CodeGenerator.h: Removed unneded parameters from the CodeGenerator constructor: we just use get that data from the ScopeNode now.
  • VM/Machine.cpp: (KJS::Machine::execute): When executing an eval node, don't iterate a special copy of its declarations; iterate the originals, instead.
  • kjs/nodes.cpp: Moved responsibility for knowing what AST data to throw away into the CodeGenerator. Nodes no longer call shrinkCapacity on their data directly.


  • kjs/nodes.h: Changed FunctionStack to ref its contents, so declaration data stays around even after we've thrown away the AST, unless we explicitly throw away the declaration data, too. This is useful for eval code, which needs to reference its declaration data at execution time. (Soon, it will be useful for program code, too, since program code should do the same.)
13:15 Changeset [34318] by kmccullough@apple.com

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

Reviewed by Adam.

<rdar://problem/5954226> JSProfiler: Move the calls from
JavaScriptProfileNode to JavaScriptProfile in WebCore (19231)

  • This Makes the profiler now call sorting function s on a per-profile basis instead of on a node in the profile.
  • This is also needed to remove the recursion limit in the profiler <rdar://problem/5969992> JSProfiler: Remove the recursion limit in the profiler since once the limit is removed calling sort on a node will only sort that node's children not the entire sub-tree of that node.
  • page/JavaScriptProfile.cpp: All of these functions were moved from JavaScriptProfileNode. (WebCore::sortTotalTimeDescending): (WebCore::sortTotalTimeAscending): (WebCore::sortSelfTimeDescending): (WebCore::sortSelfTimeAscending): (WebCore::sortCallsDescending): (WebCore::sortCallsAscending): (WebCore::sortFunctionNameDescending): (WebCore::sortFunctionNameAscending): (WebCore::ProfileClass):
  • page/JavaScriptProfileNode.cpp: (WebCore::ProfileNodeClass):
  • page/inspector/ProfileView.js: Change uses of JavaScriptProfileNode for sorting to JavaScriptProfile.
13:00 Changeset [34317] by mitz@apple.com

WebCore:

Reviewed by Oliver Hunt.

Tests: fast/canvas/shadow-offset-1.html

fast/canvas/shadow-offset-2.html
fast/canvas/shadow-offset-3.html
fast/canvas/shadow-offset-4.html
fast/canvas/shadow-offset-5.html
fast/canvas/shadow-offset-6.html
fast/canvas/shadow-offset-7.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::adjustedShadowSize): Added this helper function. (WebCore::CanvasRenderingContext2D::setShadow): Changed to call adjustedShadowSize(). (WebCore::CanvasRenderingContext2D::applyShadow): Ditto.

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/canvas/resources/shadow-offset.js: Added.
  • fast/canvas/shadow-offset-1.html: Copied from LayoutTests/fast/canvas/shadow-offset.html.
  • fast/canvas/shadow-offset-2.html: Added.
  • fast/canvas/shadow-offset-3.html: Added.
  • fast/canvas/shadow-offset-4.html: Added.
  • fast/canvas/shadow-offset-5.html: Added.
  • fast/canvas/shadow-offset-6.html: Added.
  • fast/canvas/shadow-offset-7.html: Added.
  • fast/canvas/shadow-offset.html: Removed.
  • platform/mac/fast/canvas/shadow-offset-1-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-1-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-1-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-2-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-2-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-2-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-3-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-3-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-3-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-4-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-4-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-4-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-5-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-5-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-5-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-6-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-6-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-6-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-7-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-7-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-7-expected.txt: Added.
  • platform/mac/fast/canvas/shadow-offset-expected.checksum: Removed.
  • platform/mac/fast/canvas/shadow-offset-expected.png: Removed.
  • platform/mac/fast/canvas/shadow-offset-expected.txt: Removed.
12:58 Changeset [34316] by aroben@apple.com

Build fix for non-AllInOne builds

  • kjs/array_object.cpp: Added a missing #include.
12:51 Changeset [34315] by jchaffraix@webkit.org

WebCore:

2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Bug 18066: REGRESSION: createAttribute throws NAMESPACE_ERR exception
https://bugs.webkit.org/show_bug.cgi?id=18066

Test: fast/dom/createAttribute-exception.html

  • dom/Document.cpp: (WebCore::Document::createAttributeNS):
  • dom/Document.h: Add a bool parameter shouldIgnoreNamespaceChecks to createNamespaceNS() used by createAttribute() to bypass namespace checking.

LayoutTests:

2008-06-02 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Bug 18066: REGRESSION: createAttribute throws NAMESPACE_ERR exception
https://bugs.webkit.org/show_bug.cgi?id=18066

  • fast/dom/createAttribute-exception-expected.txt: Added.
  • fast/dom/createAttribute-exception.html: Added.
11:13 Changeset [34314] by andersca@apple.com

2008-06-02 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

Speculative fix for <rdar://problem/5661112>
CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62


Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause
layouts to be triggered.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView _createPlugin]):
10:32 Changeset [34313] by kmccullough@apple.com

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

Took out accidental confilct lines I checked in.

  • ChangeLog:
10:30 Changeset [34312] by darin@apple.com

WebCore:

2008-06-02 Darin Adler <darin@apple.com>

Reviewed by John Sullivan.

Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::hasCSSPropertyNamePrefix): Tweak implementation a tiny bit for improved performance when the first character does not match. (WebCore::cssPropertyName): Reject property names with a leading uppercase letter.

LayoutTests:

2008-06-02 Darin Adler <darin@apple.com>

Reviewed by John Sullivan.

  • fast/dom/CSSStyleDeclaration: Added.
  • fast/dom/CSSStyleDeclaration/css-properties-case-sensitive-expected.txt: Added.
  • fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html: Added.
  • fast/dom/CSSStyleDeclaration/resources: Added.
  • fast/dom/CSSStyleDeclaration/resources/TEMPLATE.html: Copied from LayoutTests/fast/dom/Element/resources/TEMPLATE.html.
  • fast/dom/CSSStyleDeclaration/resources/css-properties-case-sensitive.js: Added.
  • fast/dom/CSSStyleDeclaration-empty-string-property-expected.txt: Removed.
  • fast/dom/CSSStyleDeclaration-empty-string-property.html: Removed.
  • fast/dom/CSSStyleDeclaration/empty-string-property-expected.txt: Copied from LayoutTests/fast/dom/CSSStyleDeclaration-empty-string-property-expected.txt.
  • fast/dom/CSSStyleDeclaration/empty-string-property.html: Copied from LayoutTests/fast/dom/CSSStyleDeclaration-empty-string-property.html.
  • fast/js/duplicate-param-crash.html: Allowed the make-js-test-wrappers script to update this file.
  • fast/js/duplicate-param-gc-crash.html: Ditto.
  • fast/js/resources/tostring-exception-in-property-access.js: Ditto.
  • fast/js/var-shadows-arg-crash.html: Ditto.
  • fast/js/var-shadows-arg-gc-crash.html: Ditto.
10:26 Changeset [34311] by darin@apple.com

WebCore:

2008-06-02 Darin Adler <darin@apple.com>

Reviewed by Mitz.

Test: fast/parser/pre-first-line-break.html

  • editing/markup.cpp: (WebCore::appendStartMarkup): Fix handling of <listing>. Not part of the bug mentioned above, but uncovered by the regression test.
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::write): Clear the "discardLF" flag when processing a new tag.

LayoutTests:

2008-06-02 Darin Adler <darin@apple.com>

Reviewed by Mitz.

  • fast/parser/pre-first-line-break-expected.txt: Added.
  • fast/parser/pre-first-line-break.html: Added.
  • fast/parser/resources/TEMPLATE.html: Copied from fast/dom/resources/TEMPLATE.html.
  • fast/parser/resources/pre-first-line-break.js: Added.
10:11 Changeset [34310] by kmccullough@apple.com

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

Reviewed by Darin.

<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler
Implement Next Sibling pointers as groundwork for removing the recursion
limit in the profiler.

  • profiler/ProfileNode.cpp: Also I renamed parentNode and headNode since 'node' is redundant. (KJS::ProfileNode::ProfileNode): Initialize the nextSibling. (KJS::ProfileNode::willExecute): If there are already children then the new child needs to be the nextSibling of the last child. (KJS::ProfileNode::didExecute): (KJS::ProfileNode::addChild): Ditto. (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::sortTotalTimeDescending): For all of the sorting algorithms once the children are sorted their nextSibling pointers need to be reset to reflect the new order. (KJS::ProfileNode::sortTotalTimeAscending): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::ProfileNode::sortCallsDescending): (KJS::ProfileNode::sortCallsAscending): (KJS::ProfileNode::sortFunctionNameDescending): (KJS::ProfileNode::sortFunctionNameAscending): (KJS::ProfileNode::resetChildrensSiblings): This new function simply loops over all of the children and sets their nextSibling pointers to the next child in the Vector (KJS::ProfileNode::debugPrintData):
  • profiler/ProfileNode.h: (KJS::ProfileNode::parent): (KJS::ProfileNode::setParent): (KJS::ProfileNode::nextSibling): (KJS::ProfileNode::setNextSibling): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent):
10:08 Changeset [34309] by ggaren@apple.com

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

Reviewed by Maciej Stachowiak.

Removed the recursion limit from JSObject::call, since the VM does
recursion checking now.

This should allow us to remove JSObject::call entirely, netting a small
speedup.

  • kjs/object.cpp: (KJS::JSObject::call):
09:40 Changeset [34308] by timothy@apple.com

Fixes a bug where only the last breakpoint would be hit after reloading
the page. Also fixes a bug where disabled breakpoints would be hit
after reloading the page.

Reviewed by Darin Adler.

  • page/inspector/BreakpointsSidebarPane.js: (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): Don't call InspectorController.addBreakpoint() unless the breakpoint is enabled.
  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.addScript): Move the addBreakpoint() call inside the for loop so each breakpoint is added. Also check the breakpoint's enabled state before calling addBreakpoint().
09:40 Changeset [34307] by timothy@apple.com

Fixes a bug where the line highlight and the execution line were conflicting.
The line highlight no longer shows up when the execution line changes, only
when showResource or showScript is called with a line number.

Reviewed by Darin Adler.

  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.showScript): Pass true for shouldHighlightLine. (WebInspector.ScriptsPanel.prototype.showResource): Ditto. (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Added a shouldHighlightLine argument that triggers the highlightLine() call on the SourceFrame. (WebInspector.ScriptsPanel.prototype._goBack): Pass false for shouldHighlightLine since we need to pass true for fromBackForwardAction. (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
09:39 Changeset [34306] by timothy@apple.com

Bring the Web Inspector forward when the debugger pauses.

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

Reviewed by Darin Adler.

  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.debuggerPaused): Call window.focus() and make the Scripts panel the current panel.
09:36 Changeset [34305] by alp@webkit.org

2008-06-02 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Alp Toker.

Build WebCore GTK+ sources as part of WebCore, not WebKit.
Split common and GTK+-specific sources into separate file lists.

09:36 Changeset [34304] by ggaren@apple.com

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

Reviewed by Adele Peterson.

Added a specific affordance for avoiding stack overflow when converting
recursive arrays to string, in preparation for removing generic stack
overflow checking from JSObject::call.


Tested by fast/js/toString-stack-overflow.html.

09:32 Changeset [34303] by ggaren@apple.com

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

Reviewed by Alice Liu.


Refactored some hand-rolled code to call ScopeChain::globalObject instead.

09:30 Changeset [34302] by ggaren@apple.com

JavaScriptCore:

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

Reviewed by Darin Adler.


Fixed ASSERT due to execution continuing after an exception is thrown
during array sort.

  • kjs/array_instance.cpp: (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key): Don't call the custom comparator function if an exception has been thrown. Just return 1 for everything, so the sort completes quickly. (The result will be thrown away.)

LayoutTests:

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

Reviewed by Darin Adler.


Test for an exception thrown from an array sort comparator function.

  • fast/js/throw-from-array-sort-expected.txt: Added.
  • fast/js/throw-from-array-sort.html: Added.
06:39 Changeset [34301] by ap@webkit.org

2008-06-02 Simon Pieters <zcorpan@hotmail.com>

Reviewed and landed by Alexey.

https://bugs.webkit.org/show_bug.cgi?id=19355
createElement() with colon and localName

WebKit behavior has changed to expected during Acid3 work (r31230, r31231), but this
specific case appears to have been an untested side effect, landing it now.

  • fast/dom/createElement-with-column-expected.txt: Added.
  • fast/dom/createElement-with-column.xml: Added.
  • fast/dom/createElement-with-column.html: Added.
03:23 Changeset [34300] by hausmann@webkit.org

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

Reviewed by Simon.

Implement basic media element controls for the QtWebKit port.

03:23 Changeset [34299] by hausmann@webkit.org

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

Reviewed by Simon.

Change default styling of media elements to allow controls
to be placed at any position within the media element

03:17 Changeset [34298] by hausmann@webkit.org

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

Reviewed by Simon.

Use intrinsic size for media elements with no natural size.

03:16 Changeset [34297] by hausmann@webkit.org

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

Reviewed by Simon.

Allow platform specific adjustments to the default style sheet.

Clients will change the ifdef in RenderTheme.cpp and implement
any platform specific adjustments in RenderThemeXXX.cpp, either
by loading a file as the Qt port does, or by modifying the style
directly.

03:08 Changeset [34296] by hausmann@webkit.org

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

Reviewed by Simon

Allow button fonts to scale based on the text size multiplier.

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

00:25 Changeset [34295] by mrowe@apple.com

Versioning.

00:20 Changeset [34294] by mrowe@apple.com

New tag.

00:19 Changeset [34293] by mrowe@apple.com

Merge r34205.

06/01/08:

23:44 Changeset [34292] by rwlbuis@webkit.org

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=15823
getPropertyValue for border returns null, should compute the shorthand value

Compute the value for the border shorthand property by computing
its shorthand subproperties.

Test: fast/css/getPropertyValue-border.html

21:31 Changeset [34291] by mrowe@apple.com

Versioning.

21:30 Changeset [34290] by mrowe@apple.com

New tag.

19:08 Changeset [34289] by alp@webkit.org

2008-06-01 Josh Triplett <josh@freedesktop.org>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=16891
[GTK] autotools build is slow

Add dolt revision 5e9eef10 to the autotools build system. Speeds up
the build, often by a factor of two or more on supported platforms,
otherwise falls back to libtool.

See http://dolt.freedesktop.org for details.

  • acinclude.m4: Added.
  • configure.ac:
12:48 Changeset [34288] by mitz@apple.com

Added Radar URLs

12:46 Changeset [34287] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

Test: fast/canvas/shadow-offset.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::applyShadow): Slightly increase the magnitude of the offsets passed to CGContextSetShadow* to ensure that the end result after truncation is the desired integer offsets. This is the same workaround for <rdar://problem/5539388> that is used in GraphicsContext::setShadow(). Also correct a recent regression where shadow Y offsets were flipped.

LayoutTests:

Reviewed by Darin Adler.

  • fast/canvas/shadow-offset.html: Added.
  • platform/mac/fast/canvas/shadow-offset-expected.checksum: Added.
  • platform/mac/fast/canvas/shadow-offset-expected.png: Added.
  • platform/mac/fast/canvas/shadow-offset-expected.txt: Added.
02:37 Changeset [34286] by alp@webkit.org

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

Suggested by Christian Dywan.

Use float literals for zoom values and improve documentation wording.

  • webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
  • webkit/webkitwebview.cpp:
02:24 Changeset [34285] by alp@webkit.org

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

Reviewed by Oliver.

Remove webkit_web_view_go_backward(),
webkit_web_view_can_go_backward(). These have been obsoleted by
the back() versions for quite a while.

  • webkit/webkitwebview.cpp:
  • webkit/webkitwebview.h:

05/31/08:

23:33 Changeset [34284] by mrowe@apple.com

Merge r34194.

23:33 Changeset [34283] by mrowe@apple.com

Merge r34193.

23:33 Changeset [34282] by mrowe@apple.com

Merge r34141.

23:33 Changeset [34281] by mrowe@apple.com

Merge r34139.

23:33 Changeset [34280] by mrowe@apple.com

Merge r34128.

18:24 BuildingGtk edited by jmalonzo@webkit.org
Removed building with Qmake section (diff)
15:33 Changeset [34279] by mjs@apple.com

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

Reviewed by Sam.

  • avoid assertion in updateDocument() when running debug
  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::updateDocument): Exit early if the document is null. We don't need to update in this case.
13:46 Changeset [34278] by alp@webkit.org

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

Fix inconsistent zoom docs and enum name landed in r34249. Issue
noticed by Marco Barisione.

  • webkit/webkitwebview.cpp:

05/30/08:

23:28 Changeset [34277] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

Test: fast/dynamic/float-in-trailing-whitespace-after-last-line-break.html

  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Ensured that floats occurring in trailing whitespace after a line break are added to the last line's floats vector.

LayoutTests:

Reviewed by Darin Adler.

  • fast/dynamic/float-in-trailing-whitespace-after-last-line-break.html: Added.
  • platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.checksum: Added.
  • platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.png: Added.
  • platform/mac/fast/dynamic/float-in-trailing-whitespace-after-last-line-break-expected.txt: Added.
23:06 Changeset [34276] by timothy@apple.com

Implements the back and forward buttons in the Scripts panel.

Reviewed by Adam Roben.

  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel): Add the back and forward button elements and remove the FIXMEs. (WebInspector.ScriptsPanel.prototype.reset): Reset _backForwardList and _currentBackForwardIndex. Then call _updateBackAndForwardButtons(). (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Added a fromBackForwardAction argument. If fromBackForwardAction is false then update the _currentBackForwardIndex and _backForwardList. (WebInspector.ScriptsPanel.prototype._updateBackAndForwardButtons): Update the disabled state of the buttons. (WebInspector.ScriptsPanel.prototype._goBack): Update the _currentBackForwardIndex and call _showScriptOrResource() and _updateBackAndForwardButtons(). (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
23:05 Changeset [34275] by timothy@apple.com

Made clicking a Console message URL originating from a JavaScript
source show the Resource in the Scripts panel. This only happens
when the debugger is attached.

Reviewed by Adam Roben.

  • page/inspector/Console.js: (WebInspector.Console.prototype._formaterror): Add a preferredPanel of "scripts". (WebInspector.ConsoleMessage.prototype.toMessageElement): Add a preferredPanel of "scripts" when the source is JS.
  • page/inspector/ScriptView.js: (WebInspector.ScriptView.prototype.highlightLine): Added. Calls through to the sourceFrame. Matches SourceView.
  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.canShowResource): Added. Returns true if the debugger is attached and the resource has scripts. (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Call highlightLine on the view.
  • page/inspector/inspector.js: (WebInspector.documentClick): Pass the preferredPanel to showResourceForURL. (WebInspector.showResourceForURL): Resolve the preferredPanel from the string passed in. Checks if the panel implements showResource and canShowResource. Reverts to the Resources panel if any of that is false or not implemented.
23:05 Changeset [34274] by timothy@apple.com

Fixed an "undefined type" exception that was being thrown when
selecting a eval script from the file menu in the Scripts panel.
This would also happen when stepping into an eval which would
break other parts of the Inspector interface.

Reviewed by Adam Roben.

  • page/inspector/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Use the scriptOrResource variable instead of the undefined script variable.
23:05 Changeset [34273] by timothy@apple.com

Made the starting line number of scripts be 1-based throughout the engine.

JavaScriptCore:

2008-05-30 Timothy Hatcher <timothy@apple.com>

Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now and fixes
some cases where script execution was shown as off by one line in the debugger.

No change in SunSpider.

Reviewed by Oliver Hunt.

  • API/minidom.c: (main): Pass a line number of 1 instead of 0 to parser().parse().
  • API/testapi.c: (main): Ditto. And removes a FIXME and changed an assertEqualsAsNumber to use 1 instead of 2 for the line number.
  • VM/Machine.cpp: (KJS::callEval): Pass a line number of 1 instead of 0. (KJS::Machine::debug): Use firstLine for WillExecuteProgram instead of lastLine. Use lastLine for DidExecuteProgram instead of firstLine.
  • kjs/DebuggerCallFrame.cpp: (KJS::DebuggerCallFrame::evaluate): Pass a line number of 1 instead of 0 to parser().parse().
  • kjs/Parser.cpp: (KJS::Parser::parse): ASSERT startingLineNumber is greatter than 0. Change the startingLineNumber to be 1 if it was less than or equal to 0. This is needed for release builds to maintain compatibility with the JavaScriptCore API.
  • kjs/function.cpp: (KJS::globalFuncEval): Pass a line number of 1 instead of 0 to parser().parse().
  • kjs/function_object.cpp: (FunctionObjectImp::construct): Pass a line number of 1 instead of 0 to construct().
  • kjs/lexer.cpp: (Lexer::setCode): Made yylineno = startingLineNumber instead of adding 1.
  • kjs/testkjs.cpp: (functionRun): Pass a line number of 1 instead of 0 to Interpreter::evaluate(). (functionLoad): Ditto. (prettyPrintScript): Ditto. (runWithScripts): Ditto.
  • profiler/Profiler.cpp: (WebCore::createCallIdentifier): Removed a plus 1 of startingLineNumber.

WebCore:

2008-05-30 Timothy Hatcher <timothy@apple.com>

Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now and fixes
some cases where script execution was shown as off by one line in the debugger.

Doing this also exposed a bug where JSLazyEventListener created in XHML or SVG
documents would always have a line number of 0. So this change fixed that bug
to pass all the SVG and XHTML tests.

All layout tests pass.

Reviewed by Oliver Hunt.

  • bindings/js/kjs_events.cpp: (WebCore::JSLazyEventListener::JSLazyEventListener): Set the line number to 1 if it was passed in as 0. This can happen when listeners are created with a setAttribute call from JavaScript. (WebCore::JSLazyEventListener::parseCode): Add a FIXME about the URL being incorrect when listeners are created with a setAttribute call from JavaScript.
  • bindings/js/kjs_events.h: Remove the default value for lineNumber, since no callers need it.
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject evaluateWebScript:]): Pass a line number of 1 instead of 0 to Interpreter::evaluate().
  • bridge/NP_jsobject.cpp: (_NPN_Evaluate): Ditto.
  • bridge/jni/jni_jsobject.mm: (JavaJSObject::eval): Ditto.
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs): Call KJSProxy::setEventHandlerLineno() around the call to handleElementAttributes, so any JSLazyEventListener created from those attributes have line numbers. (WebCore::XMLTokenizer::endElementNs): Remove a minus 1 of the line number. (WebCore::XMLTokenizer::notifyFinished): Pass a line number of 1 instead of 0. (WebCore::XMLTokenizer::parseEndElement): Remove a minus 1 of the line number.
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::evaluateScript): Add a FIXME about the starting line number being incorrect in some cases when this function is called.
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): Add a plus 1 to the line number when setting scriptStartLineno so it is 1-based. Same for calling setEventHandlerLineno(). (WebCore::HTMLTokenizer::processToken): Ditto.
  • html/HTMLTokenizer.h: Change the default line number on scriptExecution() to 1 from 0.
  • loader/FrameLoader.cpp: (FrameLoader::executeIfJavaScriptURL): Pass a line number of 1 instead of 0 to executeScript().

WebKitTools:

2008-05-30 Timothy Hatcher <timothy@apple.com>

Made the starting line number of scripts be 1-based throughout the engine.
This cleans up script line numbers so they are all consistent now.

Reviewed by Oliver Hunt.

  • DumpRenderTree/mac/ObjCController.m: (runJavaScriptThread): Pass a line number of 1 instead of 0 to JSEvaluateScript.
  • DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: (runJavaScriptThread): Ditto.
  • DumpRenderTree/win/DumpRenderTree.cpp: (runJavaScriptThread): Ditto.
23:05 Changeset [34272] by timothy@apple.com

Fixes the regression where image resources don't have a preview icon.

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

Reviewed by Adam Roben.

  • page/inspector/ResourcesPanel.js: (WebInspector.ResourceSidebarTreeElement): Call createIconElement before calling the superclass. (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement): Create an iconElement, if the category is images then make a div that contains a preview image. Otherwise just make an img element. If there was a previous iconElement, then replace it. (WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call createIconElement if the category changed.
  • page/inspector/SidebarTreeElement.js: (WebInspector.SidebarTreeElement): Create an iconElement if one hasn't been made already by a subclass. (WebInspector.SidebarTreeElement.prototype.onattach): Append the iconElement instead of creating one each time.
  • page/inspector/inspector.css: New and updated style rules.
22:37 Changeset [34271] by mjs@apple.com

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

Reviewed by Oliver (earlier version reviewed by Alexey).


("This Time for Sure" Edition)

I'm pretty sure this fixes it but I have not been able to
reproduce and am unsure if my theory of the bug is right.

I belive the bug was because JSDOMWindowBase accessed
JSDOMWindowShell in its destructor to remove itself from a
hashtable, but GC destructor order is not guaranteed, so the
hashtable may have been freed already. This patch changes things
so that a non-GC object (the KJSProxy) does the tracking of live
window objects for a frame. JSDOMWindowBase can null check the frame
pointer to verify if it is still good.


In addition, we must create a similar setup between DOMWindow and
Frame; since the DOMWindow of a given frame can now change over
time, we must ensure that the Frame disconnects every live
DOMWindow when destroyed, not just the last.

  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
  • bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell):
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow):
  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript): (WebCore::KJSProxy::updateDocument):
  • bindings/js/kjs_proxy.h: (WebCore::KJSProxy::clearFormerWindow):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::~DOMWindow):
  • page/Frame.cpp: (WebCore::Frame::~Frame): (WebCore::Frame::setDocument): (WebCore::Frame::clearDOMWindow): (WebCore::Frame::clearFormerDOMWindow):
  • page/Frame.h:
  • page/FramePrivate.h:
21:31 Changeset [34270] by mrowe@apple.com

Versioning.

21:31 Changeset [34269] by mrowe@apple.com

New tag.

21:29 Changeset [34268] by mrowe@apple.com

Merge r34204.

14:34 Changeset [34267] by mitz@apple.com

WebCore:

Reviewed by Darin Adler and Dave Hyatt.

  • eliminate excessive repainting when an object's final position after layout is unchanged
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChildren): Removed the full repaint for the case that the final position is unchanged but the position at which an intermediate layout occurred was different. Any repainting done during the intermediate layout would have happened at the object's initial (and also final) coordinates, since layoutDelta is factored into repaint rect calculations.

LayoutTests:

Reviewed by Darin Adler.

  • updated pixel results for "eliminate excessive repainting when an object's final position after layout is unchanged"
  • platform/mac/fast/repaint/intermediate-layout-position-clip-expected.checksum:
  • platform/mac/fast/repaint/intermediate-layout-position-clip-expected.png:
  • platform/mac/fast/repaint/intermediate-layout-position-expected.checksum:
  • platform/mac/fast/repaint/intermediate-layout-position-expected.png:
14:30 Changeset [34266] by justin.garcia@apple.com

2008-05-29 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin.


<rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail


AppKit started putting PNG instead of PICT onto the pasteboard for screen
captures. Added support for PNG with kUTTypePNG. Tiger doesn't support
setting and retrieving pasteboard types with UTIs, but we don't know of any
applications on Tiger that put only PNG on the pasteboard.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
13:10 Changeset [34265] by ap@webkit.org

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases

Also fixed a JavaScriptCore regression seen on PowerPC - we didn't clip left shift
parameter to 0...31.

0.5% improvement on SunSpider overall, although a 8.5 regression on bitops-3bit-bits-in-byte.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Added fast paths for >>> and <<.
  • kjs/JSImmediate.h: (KJS::JSImmediate::toTruncatedUInt32): Added. Same as getTruncatedInt32, but casts the result to unsigned.
11:05 Changeset [34264] by cfleizach@apple.com

<rdar://problem/5959478> r34079: AX: crash at stringForReplacedNode

07:15 Changeset [34263] by jmalonzo@webkit.org

2008-05-30 Carlos Martín Nieto <carlos@cmartin.tk>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=18383
[GTK] The "hovering-over-link" signal arguments aren't documented.

  • webkit/webkitwebview.cpp:
04:28 Changeset [34262] by hausmann@webkit.org

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

Reviewed by Simon.

Fix the build dependencies for the Qt build. Don't generate
SVGCSSPropertyNames.cpp for every build.

  • WebCore.pro: The output file was renamed, so the compiler rule needs to be adjusted in order for qmake to generate correct depdencies.
03:40 Changeset [34261] by mjs@apple.com

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

Revert fix for 19285, it just caused more crashes and I need time
to fix it properly.

  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
  • bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell): (WebCore::JSDOMWindowShell::updateDocument):
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow): (WebCore::JSDOMWindowShell::clearFormerWindow):
  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript):
  • bindings/js/kjs_proxy.h:
  • page/Frame.cpp: (WebCore::Frame::setDocument):
03:28 Changeset [34260] by hausmann@webkit.org

2008-05-30 Adam Treat <treat@kde.org>

Reviewed by Simon.

Fix a huge memory leak by ensuring that on application shutdown
the shared timer is fired one last time if it is active. This
ensures that the GCController timer is fired at the end to free
references to JavaScript objects.

03:08 Changeset [34259] by ap@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=7466
<rdar://problem/4657563> Use of Ctrl as access key modifier conflicts with Mac OS X
emacs-style keybindings

WebCore:

  • page/EventHandler.cpp: (WebCore::EventHandler::handleAccessKey): Use Ctrl+Option for access keys on Mac OS X.

LayoutTests:

  • fast/events/access-key-self-destruct.html:
  • fast/forms/access-key.html:
  • fast/forms/focus-selection-input-expected.txt:
  • fast/forms/focus-selection-input.html:
  • fast/forms/legend-access-key.html:
  • fast/forms/select-accesskey.html: Updated tests to keep passing.
  • fast/forms/select-accesskey-expected.txt: Added.
  • fast/forms/select-accesskey.html:
  • platform/mac/fast/forms/select-accesskey-expected.checksum: Removed.
  • platform/mac/fast/forms/select-accesskey-expected.png: Removed.
  • platform/mac/fast/forms/select-accesskey-expected.txt: Removed. Updated to keep passing, made text-only.
  • fast/forms/focus-selection-textarea.html:
  • fast/forms/focus-selection-textarea-expected.txt: Added missing platform-specific logic.
02:10 Changeset [34258] by ap@webkit.org

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=19180
speed up SunSpider by optimizing immediate number cases

Also fixed three JavaScriptCore regressions seen on PowerPC - we didn't clip right shift
parameter to 0...31.

1.6% improvement on SunSpider, without significant regressions on any tests.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Added fast paths for >>, ==, ===, !=, !==. Changed order of memory accesses in many cases, making them less dependent on gcc's ability to properly assign registers. With this, I could move exception checks back into slow code paths, and saw less randomness in general.
  • kjs/JSImmediate.h: (KJS::JSImmediate::rightShiftImmediateNumbers): Added.
01:15 Changeset [34257] by mjs@apple.com

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

Reviewed by Alexey.


I'm pretty sure this fixes it but I have not been able to
reproduce and am unsure if my theory of the bug is right.

I belive the bug was because JSDOMWindowBase accessed
JSDOMWindowShell in its destructor to remove itself from a
hashtable, but GC destructor order is not guaranteed, so the
hashtable may have been freed already. This patch changes things
so that a non-GC object (the KJSProxy) does the tracking of live
window objects for a frame. JSDOMWindowBase can null check the frame
pointer to verify if it is still good.


  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
  • bindings/js/JSDOMWindowShell.cpp: (WebCore::JSDOMWindowShell::JSDOMWindowShell):
  • bindings/js/JSDOMWindowShell.h: (WebCore::JSDOMWindowShell::setWindow):
  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): (WebCore::KJSProxy::initScript): (WebCore::KJSProxy::updateDocument):
  • bindings/js/kjs_proxy.h: (WebCore::KJSProxy::clearFormerWindow):
  • page/Frame.cpp: (WebCore::Frame::setDocument):
00:12 Changeset [34256] by mrowe@apple.com

Merge r34154.

00:10 Changeset [34255] by mrowe@apple.com

Merge r34154.

05/29/08:

23:05 Changeset [34254] by cfleizach@apple.com

<rdar://problem/5091386> Seed: VO reads form labels twice in Safari
<rdar://problem/4783102> Radio button/checkbox embedded with <label> tag should combine the text and the label as a single element

22:50 Changeset [34253] by mrowe@apple.com

Versioning.

22:50 Changeset [34252] by mrowe@apple.com

New tag.

22:49 Changeset [34251] by mrowe@apple.com

Merge r34250.

22:45 Changeset [34250] by mjs@apple.com

JavaScriptCore:

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

Reviewed by Oliver.

  • fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com


Finally blocks could clobber registers that had to remain live
until they returned. This patch takes a conservative approach and
makes sure that finally blocks do not reuse any registers that
were previously allocated for the function. In the future this
could probably be tightened up to be less profligate with the
register allocation.


  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::highestUsedRegister):
  • VM/CodeGenerator.h:
  • kjs/nodes.cpp: (KJS::TryNode::emitCode):

LayoutTests:

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

Reviewed by Oliver. Test by Geoff Garen.


  • fixed <rdar://problem/5972943> REGRESSION(r33979): Flash clips do not play on cnn.com
  • fast/js/finally-codegen-failure-expected.txt: Added.
  • fast/js/finally-codegen-failure.html: Added.
20:44 Changeset [34249] by alp@webkit.org

2008-05-29 Marco Barisione <marco@collabora.co.uk>

Reviewed (and tweaked) by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=18281
[GTK] add functions to set/get the zoom level

  • webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::): (_WebKitWebSettingsPrivate::webkit_web_settings_class_init): (_WebKitWebSettingsPrivate::webkit_web_settings_set_property): (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
  • webkit/webkitwebview.cpp: Add functions to get and set the zoom level.
  • webkit/webkitwebview.h: Ditto.
  • webkit/webkitprivate.h:
16:51 Changeset [34248] by mrowe@apple.com

Versioning.

16:27 Changeset [34247] by mrowe@apple.com

Merge r34208.

16:27 Changeset [34246] by mrowe@apple.com

Merge r34207.

16:26 Changeset [34245] by mrowe@apple.com

Merge r34203.

16:26 Changeset [34244] by mrowe@apple.com

Merge r34191.

16:26 Changeset [34243] by mrowe@apple.com

Merge r34190.

16:26 Changeset [34242] by mrowe@apple.com

Merge r34188.

16:26 Changeset [34241] by mrowe@apple.com

Merge r34186.

16:26 Changeset [34240] by mrowe@apple.com

Merge r34182.

16:26 Changeset [34239] by mrowe@apple.com

Merge r34179.

16:26 Changeset [34238] by mrowe@apple.com

Merge r34177.

16:26 Changeset [34237] by mrowe@apple.com

Merge r34166.

16:26 Changeset [34236] by mrowe@apple.com

Merge r34162.

16:26 Changeset [34235] by mrowe@apple.com

Merge r34161.

16:26 Changeset [34234] by mrowe@apple.com

Merge r34158.

16:26 Changeset [34233] by mrowe@apple.com

Merge r34155.

16:26 Changeset [34232] by mrowe@apple.com

Merge r34154.

16:26 Changeset [34231] by mrowe@apple.com

Merge r34136.

16:25 Changeset [34230] by mrowe@apple.com

Merge r34135.

16:25 Changeset [34229] by mrowe@apple.com

Merge r34134.

16:25 Changeset [34228] by mrowe@apple.com

Merge r34130.

16:25 Changeset [34227] by mrowe@apple.com

Merge r34127.

16:25 Changeset [34226] by mrowe@apple.com

Merge r34115.

16:25 Changeset [34225] by mrowe@apple.com

Merge r34109.

16:25 Changeset [34224] by mrowe@apple.com

Merge r34107.

16:25 Changeset [34223] by mrowe@apple.com

Merge r34104.

16:25 Changeset [34222] by mrowe@apple.com

Merge r34102.

16:25 Changeset [34221] by mrowe@apple.com

Merge r34098.

16:25 Changeset [34220] by mrowe@apple.com

Merge r34096.

16:25 Changeset [34219] by mrowe@apple.com

Merge r34095.

16:25 Changeset [34218] by mrowe@apple.com

Merge r34093.

16:25 Changeset [34217] by mrowe@apple.com

Merge r34092.

16:25 Changeset [34216] by mrowe@apple.com

Versioning.

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

New branch.

15:06 Changeset [34214] by aroben@apple.com

Update PrettyPatch directory list

  • PrettyPatch/PrettyPatch.rb:
15:03 Changeset [34213] by timothy@apple.com

Removes a use of the internal _childrenListNode property by adding
a getter/setter for smallChildren to SidebarSectionTreeElement.

Reviewed by Adam Roben.

  • page/inspector/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype._toggleLargerResources): Toggle smallChildren on the resourcesTreeElement instead of setting the style class directly.
  • page/inspector/SidebarTreeElement.js: (WebInspector.SidebarSectionTreeElement.prototype.smallChildren): Sets or removes the small class on the _childrenListNode.
14:35 Changeset [34212] by ggaren@apple.com

Geoffrey Garen <ggaren@apple.com>

Reviewed by Adam Roben.

Fixed VCSUtils.pm to work with git repositories inside symlinks.

  • Scripts/VCSUtils.pm: Compute a relative path from the git repository root, instead of the root of the filesystem, to work around a bug in abs2rel when traversing symlinked home directories.
14:25 Changeset [34211] by timothy@apple.com

Fixes a bug where the className would be reset for Resource
tree elements and the selected state would be lost. This could
happen when sorting the resources.

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

Reviewed by Adam Roben.

  • page/inspector/ResourcesPanel.js:

(WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call
removeMatchingStyleClasses to remove previous category classes instead
of setting the whole className directly.

  • page/inspector/utilities.js:

(Element.prototype.removeStyleClass): Moved code to
removeMatchingStyleClasses and call removeMatchingStyleClasses.
(Element.prototype.removeMatchingStyleClasses): Added. Code moved from
removeStyleClass and don't escape the string.

14:05 Changeset [34210] by hyatt@apple.com

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

Improve the performance of the GUIMark benchmark by 2x in the CoreGraphics code path.

Whenever a foreground image changes size rapidly, we will now dynamically shift into rendering it
using low quality scaling. Once the animation completes, the image will repaint at high quality.
Scaled images will still render at high quality by default, only shifting into low quality if
the scale factor is rapidly changing. This change raises GUIMark from 21fps to 34fps on my machine.

Rewrite the Image draw method to avoid the use of throwaway CG subimages. Instead the entire image is
always drawn (with the appropriate clip and scale set up to make sure the correct subimage portion shows up
in the destination rect). This change raises GUIMark from 34fps to 43fps on my machine.

Reviewed by Darin

  • platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage):
  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::draw):
  • rendering/RenderImage.cpp: (WebCore::RenderImageScaleData::RenderImageScaleData): (WebCore::RenderImageScaleData::~RenderImageScaleData): (WebCore::RenderImageScaleData::size): (WebCore::RenderImageScaleData::time): (WebCore::RenderImageScaleData::useLowQualityScale): (WebCore::RenderImageScaleData::hiqhQualityRepaintTimer): (WebCore::RenderImageScaleData::setSize): (WebCore::RenderImageScaleData::setTime): (WebCore::RenderImageScaleData::setUseLowQualityScale): (WebCore::RenderImageScaleObserver::shouldImagePaintAtLowQuality): (WebCore::RenderImageScaleObserver::imageDestroyed): (WebCore::RenderImageScaleObserver::highQualityRepaintTimerFired): (WebCore::RenderImage::highQualityRepaintTimerFired): (WebCore::RenderImage::~RenderImage): (WebCore::RenderImage::paintReplaced):
  • rendering/RenderImage.h:
13:37 Changeset [34209] by justin.garcia@apple.com

WebCore:

2008-05-29 Justin Garcia <justin.garcia@apple.com>

Reviewed by Eric.

<rdar://problem/5847330> REGRESSION CrashTracer: [USER] 536 crashes at WebCore::highestAncestor

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Don't break out of an empty list item if its parent is non-editable, since doing so will move into non-editable content.
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::initializePositionData): We want to prevent merges from table cells even if those table cells are non-editable.
  • editing/htmlediting.cpp: (WebCore::enclosingNodeOfType): Can now return non-editable nodes, for cases where the caller isn't going to do editing in the returned node.
  • editing/htmlediting.h:

LayoutTests:

2008-05-28 Justin Garcia <justin.garcia@apple.com>

Reviewed by Eric.


<rdar://problem/5847330> REGRESSION CrashTracer: [USER] 536 crashes at WebCore::highestAncestor

  • editing/deleting/5847330-1-expected.txt: Added.
  • editing/deleting/5847330-1.html: Added.
  • editing/deleting/5847330-2-expected.txt: Added.
  • editing/deleting/5847330-2.html: Added.
12:22 Changeset [34208] by andersca@apple.com

../mac:

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

Reviewed by Brady.

<rdar://problem/5970312>
icon file specified for stand alone web app causes crash if the icon can't be found


Handle the case where iconData is null.


  • Misc/WebIconFetcher.mm: (WebIconFetcherClient::finishedFetchingIcon):

../win:

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

Reviewed by Brady.

<rdar://problem/5970312>
icon file specified for stand alone web app causes crash if the icon can't be found


Handle the case where iconData is null.

  • WebIconFetcher.cpp: (WebIconFetcherClient::finishedFetchingIcon):
11:57 Changeset [34207] by andersca@apple.com

WebCore:

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

Reviewed by Mitz.

<rdar://problem/5971845>
https://bugs.webkit.org/show_bug.cgi?id=19313
Add version member to NPCocoaEvent


  • bridge/npapi.h:

WebKit/mac:

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

Reviewed by Mitz.

<rdar://problem/5971845>
https://bugs.webkit.org/show_bug.cgi?id=19313
Add version member to NPCocoaEvent

Initialize the version member to 0 for all events.


  • Plugins/WebNetscapePluginEventHandlerCocoa.mm: (initializeEvent): (WebNetscapePluginEventHandlerCocoa::drawRect): (WebNetscapePluginEventHandlerCocoa::sendMouseEvent): (WebNetscapePluginEventHandlerCocoa::flagsChanged): (WebNetscapePluginEventHandlerCocoa::sendKeyEvent): (WebNetscapePluginEventHandlerCocoa::windowFocusChanged): (WebNetscapePluginEventHandlerCocoa::focusChanged):
11:02 Changeset [34206] by kevino@webkit.org

Reviewed by Darin Adler.

Restore original behavior of isOSX() referring to the Mac port, not the OS itself.

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

10:31 Changeset [34205] by sfalken@apple.com

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

Build fix.

  • kjs/array_instance.cpp:
10:14 Changeset [34204] by ap@webkit.org

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19294
<rdar://problem/5969062> A crash when iterating over a sparse array backwards.

  • kjs/array_instance.cpp: Turned sparseArrayCutoff into a macro, so that using max() on it doesn't cause a PIC branch. (KJS::ArrayInstance::increaseVectorLength): Added a comment about this function not preserving class invariants. (KJS::ArrayInstance::put): Update m_storage after reallocation. Move values that fit to the vector from the map in all code paths.
09:08 Changeset [34203] by mitz@apple.com

Reviewed by Jessica Kahn.

  • fix <rdar://problem/5965013> Page 2 does not print correctly

When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and
_recursiveDisplayAllDirtyWithLockFocus:... can be invoked without
-viewWillDraw being sent first, which could lead to painting without
valid layout. The fix is to ensure up-to-date layout in those methods
when printing.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]): (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
08:05 Changeset [34202] by ap@webkit.org

Reviewed by Adam Roben.

<rdar://problem/5960682> REGRESSION(r30535): Crashes on iExploder in checkForHeadCharset().

I don't see how to make a reliable test, but iExploder catches this quickly.

  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForHeadCharset): Correct the length passed to findIgnoringCase().
06:42 Changeset [34201] by ap@webkit.org

Reviewed by Adam Roben.

Fix run-iexploder-tests and run-mangleme-tests to work with updated shared scripts and
configuration files.

  • Scripts/run-iexploder-tests:
  • Scripts/run-mangleme-tests: Renamed runSafari to not conflict with the one in webkitdirs. Added SSLCertificateFile option for httpd, as now needed.
05:53 Changeset [34200] by alp@webkit.org

2008-05-29 Peter Kasting <zerodpx@gmail.com>

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=19273
Handle looping GIFs correctly (at least in the open source GIF decoder) even when
the loop count doesn't appear in the initial data packets.

  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::cacheFrame): (WebCore::BitmapImage::startAnimation): (WebCore::BitmapImage::advanceAnimation):
  • platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::GIFImageDecoder): (WebCore::GIFImageDecoder::repetitionCount): (WebCore::GIFImageDecoder::gifComplete):
  • platform/image-decoders/gif/GIFImageDecoder.h:
04:28 Changeset [34199] by alp@webkit.org

2008-05-29 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=19284
Correct Windows (Cairo) Build Regressions

Correct small Windows (Cairo) build regressions in recent updates.

  • platform/graphics/SimpleFontData.h: Correct build regression due to r32781 (additional use of m_syntheticBoldOffset in GDI code).
  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Correct build regression due to r31830 (change of clip signature to use FloatRect rather than IntRect).
  • platform/graphics/win/SimpleFontDataCairoWin.cpp: (WebCore::SimpleFontData::platformInit): Initialize m_syntheticBoldOffset
  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp: (WebCore::JPEGImageReader::JPEGImageReader): Work around build error due to warnings about _setjmp treated as errors.
  • platform/image-decoders/png/PNGImageDecoder.cpp: Work around build error due to warnings about _setjmp treated as errors.
  • platform/network/curl/ResourceHandleCurl.cpp: Correct build error due to different order (and content) of include files when building with CoreFoundation (but not CoreGraphics).
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::setupPOST): Correct build error due to Visual Studio compiler bug.
03:16 Changeset [34198] by hausmann@webkit.org

2008-05-29 Thiago Macieira <tjmaciei@trolltech.com>

Reviewed by Simon.

Fix compilation in Solaris with Sun CC

Lots of WebKit code uses C99 functions that, strict as it
is, the Solaris system doesn't provide in C++. So we must define them
for both GCC and the Sun CC.

02:43 Changeset [34197] by ap@webkit.org

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19215
REGRESSION: transformToDocument fails when xsl includes &#160;

Test: fast/xsl/nbsp-in-stylesheet.html

  • editing/markup.cpp: (WebCore::appendAttributeValue): (WebCore::appendEscapedContent): (WebCore::escapeContentText): (WebCore::appendQuotedURLAttributeValue): (WebCore::appendNamespace): (WebCore::appendStartMarkup): (WebCore::appendDocumentType): (WebCore::createMarkup): Only escape non-breaking spaces in HTML documents. In Firefox, this behavior is also limited to innerHTML, but we don't have a separate code path for it, and do not necessarily want to.
  • page/Frame.cpp: (WebCore::Frame::documentTypeString):
  • dom/CDATASection.cpp:
  • dom/CDATASection.h:
  • dom/Comment.cpp:
  • dom/Comment.h:
  • dom/DocumentType.cpp:
  • dom/DocumentType.h:
  • dom/ProcessingInstruction.cpp:
  • dom/ProcessingInstruction.h: While at it, I also wanted to fix escaping for these nodes, but it turned out that FIXMEs were incorrect. So, I just moved their serialization to markup.cpp for consistency.
02:37 Changeset [34196] by hausmann@webkit.org

Kavindra Devi Palaraja <kdpalara@trolltech.com>

Doc: Mention the requirement of a QApplication with QtWebKit

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

David Boddie <dboddie@trolltech.com>

Some clarifications for the documentation.

01:11 Changeset [34194] by mjs@apple.com

Fix ChangeLog typos.

01:05 Changeset [34193] by mjs@apple.com

WebCore:

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

Reviewed by Dave Hyatt.

  • speed up DHTML using lazy style resolution and rendere creation

This change introduces the concept of "lazy attach" - when a node
is lazy attached, then instead of resolving style and creating a
renderer right away, we just mark it as needing a style recalc.


The patch makes use of this mechanism when inserting nodes directly
using DOM APIs from script. For now this is only done for the
JavaScript language binding but could also be done for other
bindings in the future.


Lazy attach helps some common DHTML patterns - when a node is
added to the DOM, and then subsequently changed in a
style-affecting way, this causes an extra style recalc. This is a
fairly common pattern so it is better to be lazy.


  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::insertBefore): Request lazy attach. (WebCore::JSNode::replaceChild): ditto (WebCore::JSNode::appendChild): ditto
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::insertBefore): Support lazy attach. (WebCore::ContainerNode::replaceChild): ditto (WebCore::ContainerNode::appendChild): ditto (WebCore::ContainerNode::detach): Clear "changed child" bit if still set.
  • dom/ContainerNode.h:
  • dom/Element.cpp: (WebCore::Element::recalcStyle): Adjusted to properly reattach a lazy-attached node.
  • dom/Node.cpp: (WebCore::Node::insertBefore): Extra parameter for lazy attach (still doesn't do anything). (WebCore::Node::replaceChild): ditto (WebCore::Node::appendChild): ditto (WebCore::Node::setChanged): Unrelated but obvious optimization - stop marking ancestor as having a changed child once we already reach an ancestor so marked. (WebCore::outermostLazyAttachedAncestor): Helper function for lazyAttach. (WebCore::Node::lazyAttach): Implement lazy attach. (WebCore::Node::canLazyAttach): Virtual method - true for most nodes.
  • dom/Node.h:
  • dom/Text.cpp: (WebCore::Text::recalcStyle): Properly handle the case of a reattached node.
  • html/HTMLEmbedElement.h: (WebCore::HTMLEmbedElement::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
  • html/HTMLFrameElementBase.h: (WebCore::HTMLFrameElementBase::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::recalcStyle): Change order so that reattach works properly.
  • html/HTMLObjectElement.h: (WebCore::HTMLObjectElement::canLazyAttach): Refuse lazy attach, since plugins and frames do important work at rederer creation time.
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::insertBefore): Pass along extra param. (WebCore::HTMLOptGroupElement::replaceChild): ditto (WebCore::HTMLOptGroupElement::appendChild): ditto
  • html/HTMLOptGroupElement.h:
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::insertBefore): Pass along extra param. (WebCore::HTMLSelectElement::replaceChild): ditto (WebCore::HTMLSelectElement::appendChild): ditto
  • html/HTMLSelectElement.h:
  • svg/SVGLocatable.cpp: (WebCore::SVGLocatable::getBBox): Add missing updateLayout call.
  • svg/SVGTextContentElement.cpp: (WebCore::SVGTextContentElement::getNumberOfChars): ditto (WebCore::SVGTextContentElement::getComputedTextLength): ditto (WebCore::SVGTextContentElement::getSubStringLength): ditto (WebCore::SVGTextContentElement::getStartPositionOfChar): ditto (WebCore::SVGTextContentElement::getEndPositionOfChar): ditto (WebCore::SVGTextContentElement::getExtentOfChar): ditto (WebCore::SVGTextContentElement::getRotationOfChar): ditto (WebCore::SVGTextContentElement::getCharNumAtPosition): ditto

LayoutTests:

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

Reviewed by Dave Hyatt.

  • Test cases for this change: "speed up DHTML using lazy style resolution and rendere creation"
  • http/tests/misc/acid3-expected.txt:
  • platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.checksum:
  • platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.png:
  • platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
Note: See TracTimeline for information about the timeline view.