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

Timeline



Oct 23, 2007:

11:52 PM Changeset in webkit [26952] by hyatt
  • 2 edits in trunk/WebCore

Make repainting work with transforms.

Reviewed by John Sullivan

  • rendering/RenderBox.cpp: (WebCore::RenderBox::computeAbsoluteRepaintRect):
11:41 PM Changeset in webkit [26951] by darin
  • 1 edit in trunk/SunSpider/hosted

Ignore files generated by the make-hosted script.

11:19 PM Changeset in webkit [26950] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • kjs/JSImmediate.h: (KJS::JSImmediate::getUInt32): Changed an && to an & for a 1% gain in SunSpider.
9:40 PM Changeset in webkit [26949] by alp
  • 4 edits in trunk/WebCore

2007-10-23 Alp Toker <alp@atoker.com>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=14412
[GDK] Clipboard support

Initial clipboard implementation for the GTK+ port.

  • platform/gtk/ClipboardGtk.cpp: (WebCore::Editor::newGeneralClipboard):
  • platform/gtk/PasteboardGtk.cpp: (WebCore::Pasteboard::generalPasteboard): (WebCore::Pasteboard::Pasteboard): (WebCore::Pasteboard::~Pasteboard): (WebCore::Pasteboard::writeSelection): (WebCore::Pasteboard::writeImage): (WebCore::Pasteboard::clear): (WebCore::Pasteboard::plainText):
  • platform/gtk/TemporaryLinkStubs.cpp:
9:35 PM Changeset in webkit [26948] by thatcher
  • 3 edits in trunk/WebCore

Reviewed by Adam.

Fixes the Network panel so that it refreshes as needed.

  • page/inspector/ConsolePanel.js: Call the base class show() and hide() first.
  • page/inspector/NetworkPanel.js: Add refreshNeeded and refreshIfNeeded back. Ditto.
8:47 PM Changeset in webkit [26947] by weinig
  • 2 edits in trunk/WebKitTools

Check for null BSTR that can be passed to the UIDelegate methods
from javascript null and undefined. Fixes a failing test case on
Windows (fast/dom/Window/alert-undefined.html)

Reviewed by Eric Seidel.

  • DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::runJavaScriptAlertPanelWithMessage): (UIDelegate::runJavaScriptConfirmPanelWithMessage): (UIDelegate::runJavaScriptTextInputPanelWithPrompt): (UIDelegate::webViewAddMessageToConsole):
7:15 PM Changeset in webkit [26946] by mitz
  • 6 edits in trunk/WebCore

Rolled out r26941 because it of layout test failures.

7:01 PM Changeset in webkit [26945] by oliver
  • 4 edits in trunk/JavaScriptCore

Reduce branching in implementations of some operator implementations, yielding 1.3% boost to SunSpider.

Reviewed by Maciej

  • kjs/nodes.cpp: (KJS::MultNode::evaluate): (KJS::DivNode::evaluate): (KJS::ModNode::evaluate): (KJS::add): (KJS::sub): (KJS::AddNode::evaluate): (KJS::SubNode::evaluate): (KJS::valueForReadModifyAssignment):
  • kjs/operations.cpp:
  • kjs/operations.h:
6:59 PM Changeset in webkit [26944] by justing
  • 4 edits in trunk/LayoutTests

Fixing an accidental change made in r25484.

  • editing/pasteboard/quirks-mode-br-1.html:
  • platform/mac/editing/pasteboard/quirks-mode-br-1-expected.checksum:
  • platform/mac/editing/pasteboard/quirks-mode-br-1-expected.txt:
6:56 PM Changeset in webkit [26943] by justing
  • 4 edits in trunk/LayoutTests

Reviewed by Oliver Hunt.


<rdar://problem/5544856>
REGRESSION: After typing 2-byte text, undo only undoes one keystroke at a time


  • platform/mac/editing/input/firstrectforcharacterrange-styled-expected.txt:
  • platform/mac/editing/input/text-input-controller-expected.txt:
  • platform/mac/editing/input/wrapped-line-char-rect-expected.txt:
6:53 PM Changeset in webkit [26942] by justing
  • 2 edits in trunk/WebCore

Reviewed by Oliver Hunt.

<rdar://problem/5544856>
REGRESSION: After typing 2-byte text, undo only undoes one keystroke at a time


No layout test for now because I'm having trouble getting Undo during a layout
test to only undo the last Undo step, and I want to write a test that fails
without the code change.

  • editing/Editor.cpp: (WebCore::Editor::confirmComposition): When we replace the previous composition, delete it with a sub-command of the command used to insert the new composition, instead of with a separate command. No new code was added because insertText already deletes the current selection. (WebCore::Editor::setComposition): Ditto.
6:51 PM Changeset in webkit [26941] by mitz
  • 5 edits
    1 add in trunk/WebCore

Reviewed by Eric Seidel.

Calling updateWidget() during attach() led to arbitrary (plugin and resource load delegate)
code execution under attach(). The fix is to use the mechanism that's already in place for
deferring updateWidget() until after layout.

  • html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::attach): Replaced call to updateWidget() with call to updateWidgetSoon()
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::attach): Ditto.
  • manual-tests/paint-during-plugin-attach.html: Added.
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidgetSoon): Added this function that schedules the updateWidget() call for after the next layout.
  • rendering/RenderPartObject.h:
6:36 PM Changeset in webkit [26940] by weinig
  • 3 edits in trunk/WebKit/win

Make the WebNotificationCenter work with null (wildcard) and specific
observed objects, matching NSNotificationCenter.

  • Removes the ObserverKey, ObserverHash, and ObserverKeyTraits as we now hash against the notification name only and check the object on notification posting.
  • Use OwnPtr for the WebNotificationCenterPrivate member variable.

Reviewed by Adam Roben.

  • WebNotificationCenter.cpp: (WebNotificationCenter::WebNotificationCenter): (WebNotificationCenter::~WebNotificationCenter): (WebNotificationCenter::postNotificationInternal): (WebNotificationCenter::addObserver): (WebNotificationCenter::postNotification): (WebNotificationCenter::postNotificationName): (WebNotificationCenter::removeObserver):
  • WebNotificationCenter.h:
6:33 PM Changeset in webkit [26939] by sfalken
  • 1 copy in tags/Safari-523.12.8b

New tag.

6:33 PM Changeset in webkit [26938] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

6:30 PM Changeset in webkit [26937] by aroben
  • 2 edits in trunk/WebCore

Fix the behavior of pathByAppendingComponent when path is empty

We now use the Windows Shell API function PathAppendW instead of
rolling our own broken implementation.

Reviewed by Anders.

  • platform/win/FileSystemWin.cpp: (WebCore::pathByAppendingComponent):
5:56 PM Changeset in webkit [26936] by mjs
  • 2 edits in trunk/WebKitTools

Reviewed by Darin.


Don't print a massive pile of setenvs from tools that automatically build testkjs.

  • Scripts/build-testkjs:
5:40 PM Changeset in webkit [26935] by mjs
  • 3 edits
    1 add in trunk

SunSpider:

Reviewed by Darin.

  • Don't hardcode my path to testkjs


  • sunspider-compare-results:

WebKitTools:

Reviewed by Darin.

  • add wrapper that finds the right copy of testkjs


  • Scripts/sunspider-compare-results: Added.
5:12 PM Changeset in webkit [26934] by adele
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Darin.

Fix for <rdar://problem/5543228> CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::HTMLInputElement::defaultEventHandler + 872

Test: fast/forms/textfield-onchange-deletion.html

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Refetch the renderer since arbitrary JS code run during onchange can do anything, including destroying it.

LayoutTests:

Reviewed by Darin.

Test for <rdar://problem/5543228> CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::HTMLInputElement::defaultEventHandler + 872

  • fast/forms/textfield-onchange-deletion-expected.txt: Added.
  • fast/forms/textfield-onchange-deletion.html: Added.
5:08 PM Changeset in webkit [26933] by thatcher
  • 8 edits
    7 adds in trunk/WebCore

Reviewed by Sam Weinig.

  • Made seperate files for the various classes in ResourcePanel.js.
  • Broke up ResourcePanel.js and created seperate panel classes for different resource types.
  • Moved View code down to the Panel base-class.
  • Reduced code duplication in DatabasePanel.js by sub-classing from the new ResourcePanel.
  • page/inspector/DatabasePanel.js:
  • page/inspector/DocumentPanel.js: Added.
  • page/inspector/FontPanel.js: Added.
  • page/inspector/ImagePanel.js: Added.
  • page/inspector/Panel.js: Added.
  • page/inspector/PropertiesSection.js: Added.
  • page/inspector/Resource.js:
  • page/inspector/ResourcePanel.js:
  • page/inspector/SidebarPane.js: Added.
  • page/inspector/SourcePanel.js: Added.
  • page/inspector/inspector.css:
  • page/inspector/inspector.html:
  • page/inspector/inspector.js:
4:47 PM Changeset in webkit [26932] by andersca
  • 2 edits in trunk/WebCore

Correct the version #if check.


  • platform/sql/SQLDatabase.cpp: (WebCore::SQLDatabase::authorizerFunction):
4:40 PM Changeset in webkit [26931] by sfalken
  • 3 edits in branches/Safari-3-branch/WebCore

Reviewed by Anders.

<rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a
java page

It is possible to load Mozilla's Java plugin instead of our own, which
can lead to a crash. The fix is to prefer plugins in our own Plugins
directory when searching for a plugin.

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::safariPluginsPath): Return the path to our own Plugins directory (WebCore::PluginDatabaseWin::defaultPluginPaths): Use new method safariPluginsPath() (WebCore::PluginDatabaseWin::pluginForMIMEType): If the plugin's path is our Plugins path, return this plugin. Otherwise, continue scanning the list of plugins (WebCore::PluginDatabaseWin::pluginForExtension): Same
  • plugins/win/PluginPackageWin.h: (WebCore::PluginPackageWin::path): Return this plugin's path
4:30 PM Changeset in webkit [26930] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Fix build.

  • plugins/win/PluginViewWin.cpp:
4:16 PM Changeset in webkit [26929] by honeycutt
  • 3 edits in trunk/WebCore

2007-10-23 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

<rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a
java page

It is possible to load Mozilla's Java plugin instead of our own, which
can lead to a crash. The fix is to prefer plugins in our own Plugins
directory when searching for a plugin.

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::safariPluginsPath): Return the path to our own Plugins directory (WebCore::PluginDatabaseWin::defaultPluginPaths): Use new method safariPluginsPath() (WebCore::PluginDatabaseWin::pluginForMIMEType): If the plugin's path is our Plugins path, return this plugin. Otherwise, continue scanning the list of plugins (WebCore::PluginDatabaseWin::pluginForExtension): Same
  • plugins/win/PluginPackageWin.h: (WebCore::PluginPackageWin::path): Return this plugin's path
4:14 PM Changeset in webkit [26928] by adachan
  • 5 edits in trunk/WebKit/win

<rdar://problem/5244261> SafariWin ignores cookie policy setting "never" in the preferences
Custom WebPreferences (not the shared WebPreferences) could override the cookie accept
policy setting on the default cookie storage. To fix that, I added a new method in
WebView called updateGlobalSettingsFromPreferences() to handle updating the global pref
options such as cookie accept policy, and it's only called to update changes from
the shared WebPreferences.


Use CLSID_WebPreferences and remove IID_WebPreferences.

Reviewed by Darin and Adam.

  • WebPreferences.cpp: (WebPreferences::QueryInterface):
  • WebPreferences.h:
  • WebView.cpp: (WebView::updateWebCoreSettingsFromPreferences): (WebView::updateGlobalSettingsFromPreferences): (WebView::updateSettingsFromPreferences): (WebView::developerExtrasEnabled): (WebView::initWithFrame): (WebView::onNotify):
  • WebView.h:
4:11 PM Changeset in webkit [26927] by kmccullo
  • 6 edits in trunk/WebKitTools

Reviewed by Sam.

  • After talking with Steve I now see that the WebKit server must be running for DCOM to create the distributed objects, which makes sense and currently WebKit only allows one instance to be running at a time which avoids accidentally connecting to the wrong server
  • In light of this I have removed the code for the attach box and NotificationServer and known server names, since they are all extranious now.
  • Drosera/win/Drosera.cpp: Removed notification classes and known server names. (_tWinMain): Uses init instead of initUI. (droseraWndProc): No longer creats an attach dialog box. (Drosera::Drosera): Does the OleInitialize so COM is ready to go and it's not manditory to call init before doing COM stuff. (Drosera::init): calls initUI and will call attach when the functionality exists. (Drosera::initUI): Has changed very little. (Drosera::attach): Changed the signature to reflect that we no longer need the dictionary of known server names.
  • Drosera/win/Drosera.h: Removed notification classes and known server names. Also renamed and moved some functions.
  • Drosera/win/Drosera.vcproj/Drosera.rc: Removed the Attach box.
  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Moved resource.h from the headers to the resources folder.
  • Drosera/win/resource.h: Removed the Attach box.
3:27 PM Changeset in webkit [26926] by mjs
  • 2 edits
    2 adds in trunk/SunSpider

Reviewed by Darin.


  • Add a compare script to compare results, and improve formatting of standard results a bit.
  • resources/sunspider-analyze-results.js:
  • resources/sunspider-compare-results.js: Added.
  • sunspider-compare-results: Added.
2:25 PM Changeset in webkit [26925] by oliver
  • 6 edits in trunk/JavaScriptCore

Separating all of the simple binary expression nodes into multiple classes

Reviewed by Maciej

Separating all of the simple (eg. non-read-modify-write) binary operators into separate classes in preparation for further JS optimisations.

Happily this produces a 0.8% to 1.0% performance increase in SunSpider with no further work.

12:29 PM Changeset in webkit [26924] by alp
  • 2 edits in trunk/WebCore

2007-10-23 Jasper Bryant-Greene <m@ni.ac.nz>

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15058
Precedence fault in KeyEventGdk causes shift, control, alt etc to work incorrectly

Corrected precendence fault which was causing Shift, Alt, Control and
Meta to behave incorrectly on GTK.

Coding style fix by Alp.

  • platform/gtk/KeyEventGtk.cpp: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
12:05 PM BuildingGtk edited by iwkse@claws-mail.org
(diff)
11:25 AM Changeset in webkit [26923] by aroben
  • 2 edits in trunk/LayoutTests

Add some SVG tests to the Windows Skipped file

Reviewed by Oliver.

  • platform/win/Skipped:
11:11 AM Changeset in webkit [26922] by weinig
  • 5 edits in trunk/WebCore

Reviewed by Tim Hatcher.

Add resizing of the DOM view right sidebar. This allows us to actually see the values now.

  • page/inspector/ResourcePanel.js:
  • page/inspector/inspector.css:
  • page/inspector/inspector.js:
  • page/inspector/utilities.js:
8:52 AM Changeset in webkit [26921] by hyatt
  • 9 edits in trunk/WebCore

Get basic hit testing right for transforms.

Reviewed by ollliej

  • platform/graphics/AffineTransform.cpp: (WebCore::AffineTransform::mapPoint):
  • platform/graphics/AffineTransform.h:
  • rendering/InlineBox.cpp: (WebCore::InlineBox::nodeAtPoint):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::hitTest): (WebCore::RenderLayer::hitTestLayer):
  • rendering/RenderLayer.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::hitTest):
  • rendering/RenderObject.h:
8:49 AM Changeset in webkit [26920] by darin
  • 3 edits in trunk/LayoutTests
  • removed numeric results so the test is more platform-independent
  • fast/js/math-expected.txt: Updated.
  • fast/js/resources/math.js: Updated.
7:12 AM Changeset in webkit [26919] by darin
  • 3 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Maciej.

Test: fast/js/math.html

  • kjs/math_object.cpp: (MathFuncImp::callAsFunction): Fix abs to look at the sign bit. Add a special case for values in the range between -0 and -1 and a special case for ceil and for -0 for floor.

LayoutTests:

Reviewed by Maciej.

  • fast/js/math-expected.txt: Added.
  • fast/js/math.html: Added.
  • fast/js/resources/math.js: Added.
5:11 AM Changeset in webkit [26918] by bdash
  • 2 edits in trunk/WebKit

2007-10-23 Mark Rowe <mrowe@apple.com>

Build fix for Eric's build fix in r26916.

  • MigrateHeaders.make:
2:44 AM Changeset in webkit [26917] by eseidel
  • 2 edits in trunk/WebCore

2007-10-23 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

Fix leaks seen on TOT from new font-face code.

  • ksvg2/svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::rebuildFontFace): use a stack allocated CSSProperty instead of mallocing
1:33 AM Changeset in webkit [26916] by eseidel
  • 3 edits in trunk/WebCore

2007-10-23 Eric Seidel <eric@webkit.org>

Build fix only, no review.

Sacrifice three virgin hours upon the altar of the heathen XCode gods
and pray that our build troubles are finally over. :(

  • DerivedSources.make: add DOMSVGException.h
  • WebCore.xcodeproj/project.pbxproj: Remove DOMSVG*Interal.h files from "Copy Generated Headers" phase. Why? Who knows.
12:07 AM Changeset in webkit [26915] by mjs
  • 3 edits in trunk/SunSpider

Reviewed by Darin.

  • resources/sunspider-analyze-results.js: Do the error range properly, using the t-distribution instead of 1.96 (which was based on the normal distribution).


  • sunspider: Print results in a way that will be friendlier to the soon-to-come compare mode.
12:00 AM Changeset in webkit [26914] by darin
  • 3 edits in trunk/JavaScriptCore

Reviewed by Eric.

  • streamline exception handling code for a >1% speed-up of SunSpider
  • kjs/nodes.cpp: Changed macros to use functions for everything that's not part of normal execution. We'll take function call overhead when propagating an exception or out of memory. (KJS::createOutOfMemoryCompletion): Added. (KJS::substitute): Use append instead of the relatively inefficient + operator. (KJS::Node::rethrowException): Added.
  • kjs/nodes.h: Added rethrowException.

Oct 22, 2007:

11:45 PM Changeset in webkit [26913] by sfalken
  • 2 edits in trunk/WebCore

Fix build.

  • plugins/win/PluginViewWin.cpp:
11:44 PM Changeset in webkit [26912] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Maciej.

This should restore correctness and make speed better too, restoring some
of the optimization we lost in my last check-in.

  • kjs/JSImmediate.h: (KJS::JSImmediate::getTruncatedInt32): Added. Uses the range checking idiom I used in my patch yesterday. (KJS::JSImmediate::getTruncatedUInt32): Ditto.
  • kjs/internal.h: Removed getInt32 and added getTruncatedInt/UInt32.
  • kjs/internal.cpp: (KJS::NumberImp::getUInt32): Changed to always use double, since I can't find a way to write this more efficiently for float. (KJS::NumberImp::getTruncatedInt32): Added. (KJS::NumberImp::getTruncatedUInt32): Added.
  • kjs/value.h: Removed getInt32 and added getTruncatedInt/UInt32. (KJS::JSValue::getUInt32): (KJS::JSValue::getTruncatedInt32): Added. (KJS::JSValue::getTruncatedUInt32): Added. (KJS::JSValue::toInt32): Changed getInt32 call to getTruncatedInt32. (KJS::JSValue::toUInt32): Changed getUInt32 call to getTruncatedUInt32.
  • kjs/value.cpp: (KJS::JSCell::getTruncatedInt32): Added. (KJS::JSCell::getTruncatedUInt32): Added. (KJS::JSValue::toInteger): Changed getUInt32 call to getTruncatedInt32. (KJS::JSValue::toInt32SlowCase): Removed extra getInt32 call I accidentally had left in here. (KJS::JSValue::toUInt32SlowCase): Ditto. (KJS::JSValue::toUInt16): Changed getUInt32 call to getTruncatedUInt32.
11:28 PM Changeset in webkit [26911] by eseidel
  • 2 edits in trunk/WebCore

2007-10-22 Eric Seidel <eric@webkit.org>

Build fix only, no review.

  • WebCore.xcodeproj/project.pbxproj: re-add all DOMSVG headers to copy-files phase to make sure.
11:22 PM Changeset in webkit [26910] by eseidel
  • 2 edits in trunk/WebCore

2007-10-22 Eric Seidel <eric@webkit.org>

Build fix only, no review.

  • WebCore.xcodeproj/project.pbxproj: make sure DOMSVGAnimateElement.h is copied into headers.
11:07 PM Changeset in webkit [26909] by eseidel
  • 1 edit in trunk/WebCore/ksvg2/svg/SVGAnimateElement.idl

Touch SVGAnimateElement.idl to force to bots to rebuild *SVGAnimateElement.*

9:19 PM Changeset in webkit [26908] by mjs
  • 2 edits
    7 adds in trunk/SunSpider

Reviewed by Review.


  • add more tests (probably the final set for now)


Already balanced. Added date, regexp, control flow, and a few
more string and object/array access tests.


  • tests/LIST:
  • tests/access-fannkuch.js: Added.
  • tests/access-nbody.js: Added.
  • tests/controlflow-recursive.js: Added.
  • tests/date-format-tofte.js: Added.
  • tests/date-format-xparb.js: Added.
  • tests/regexp-dna.js: Added.
  • tests/string-validate-input.js: Added.
8:49 PM Changeset in webkit [26907] by eseidel
  • 12 edits
    2 adds in trunk

2007-10-22 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Fix build by properly exposing SVG font-face dom bindings.

  • DerivedSources.make:
  • WebCore.vcproj/WebCore.vcproj: add font-face files to build
  • WebCore.xcodeproj/project.pbxproj: add missing DOM bindings files
  • bindings/js/JSSVGElementWrapperFactory.cpp:
  • bindings/objc/DOM.mm: (WebCore::createElementClassMap):
  • bindings/objc/DOMSVG.h:
  • ksvg2/svg/SVGDefinitionSrcElement.idl: inherit from SVGElement
7:44 PM Changeset in webkit [26906] by bdash
  • 2 edits in trunk/WebCore

2007-10-22 Mark Rowe <mrowe@apple.com>

Gtk build fix.

  • WebCore.pro:
7:30 PM Changeset in webkit [26905] by darin
  • 3 edits in trunk/WebCore
  • a first cut at fixing the Qt and GTK builds
  • WebCore.pro: Add new .idl and .cpp files.
  • DerivedSources.make: Re-sorted.
6:02 PM JavaScript performance improvement ideas edited by mjs@apple.com
(diff)
5:50 PM JavaScript performance improvement ideas edited by ggaren@apple.com
(diff)
5:38 PM Changeset in webkit [26904] by eseidel
  • 15 edits
    28 adds in trunk

2007-10-22 Eric Seidel <eric@webkit.org>

Reviewed by hyatt.

Implement <font-face> and friends for SVG.
http://bugs.webkit.org/show_bug.cgi?id=10652

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSSVGElementWrapperFactory.cpp:
  • dom/Document.cpp: (WebCore::Document::mappedElementSheet): (WebCore::Document::recalcStyleSelector):
  • dom/Document.h:
  • ksvg2/scripts/make_names.pl:
  • ksvg2/svg/SVGDefinitionSrcElement.cpp: Added. (WebCore::SVGDefinitionSrcElement::SVGDefinitionSrcElement): (WebCore::SVGDefinitionSrcElement::~SVGDefinitionSrcElement): (WebCore::SVGDefinitionSrcElement::childrenChanged):
  • ksvg2/svg/SVGDefinitionSrcElement.h: Added.
  • ksvg2/svg/SVGDefinitionSrcElement.idl: Added.
  • ksvg2/svg/SVGFontFaceElement.cpp: Added. (WebCore::SVGFontFaceElement::SVGFontFaceElement): (WebCore::SVGFontFaceElement::~SVGFontFaceElement): (WebCore::cssPropertyIdForName): (WebCore::mapAttributeToCSSProperty): (WebCore::cssPropertyIdForSVGAttributeName): (WebCore::SVGFontFaceElement::parseMappedAttribute): (WebCore::SVGFontFaceElement::rebuildFontFace): (WebCore::SVGFontFaceElement::childrenChanged):
  • ksvg2/svg/SVGFontFaceElement.h: Added.
  • ksvg2/svg/SVGFontFaceElement.idl: Added.
  • ksvg2/svg/SVGFontFaceFormatElement.cpp: Added. (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement): (WebCore::SVGFontFaceFormatElement::~SVGFontFaceFormatElement): (WebCore::SVGFontFaceFormatElement::childrenChanged):
  • ksvg2/svg/SVGFontFaceFormatElement.h: Added.
  • ksvg2/svg/SVGFontFaceFormatElement.idl: Added.
  • ksvg2/svg/SVGFontFaceNameElement.cpp: Added. (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement): (WebCore::SVGFontFaceNameElement::~SVGFontFaceNameElement): (WebCore::SVGFontFaceNameElement::srcValue):
  • ksvg2/svg/SVGFontFaceNameElement.h: Added.
  • ksvg2/svg/SVGFontFaceNameElement.idl: Added.
  • ksvg2/svg/SVGFontFaceSrcElement.cpp: Added. (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement): (WebCore::SVGFontFaceSrcElement::~SVGFontFaceSrcElement): (WebCore::SVGFontFaceSrcElement::srcValue): (WebCore::SVGFontFaceSrcElement::childrenChanged):
  • ksvg2/svg/SVGFontFaceSrcElement.h: Added.
  • ksvg2/svg/SVGFontFaceSrcElement.idl: Added.
  • ksvg2/svg/SVGFontFaceUriElement.cpp: Added. (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement): (WebCore::SVGFontFaceUriElement::~SVGFontFaceUriElement): (WebCore::SVGFontFaceUriElement::srcValue): (WebCore::SVGFontFaceUriElement::childrenChanged):
  • ksvg2/svg/SVGFontFaceUriElement.h: Added.
  • ksvg2/svg/SVGFontFaceUriElement.idl: Added.
  • ksvg2/svg/svgtags.in:
5:33 PM Changeset in webkit [26903] by aroben
  • 2 edits in trunk/WebKitTools

Windows build fix

Reviewed by NOBODY.

  • Scripts/build-dumprendertree: Fix path to DumpRenderTree.sln.
5:28 PM Changeset in webkit [26902] by sfalken
  • 1 copy in tags/Safari-523.12.7b

New tag.

5:28 PM Changeset in webkit [26901] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

5:26 PM Changeset in webkit [26900] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26898.

4:36 PM Changeset in webkit [26899] by darin
  • 7 edits in trunk

JavaScriptCore:

Reviewed by Geoff.

One of the JavaScriptCore tests was failing; it failed because of
my change to NumberImp::getUInt32. The incorrect code I copied was
from JSImmediate::getUInt32, and was a pre-existing bug.

This patch fixes correctness, but will surely slow down SunSpider.
We may be able to code this tighter and get the speed back.

  • kjs/JSImmediate.h: (KJS::JSImmediate::getInt32): Renamed from toInt32 to more accurately reflect the fact that this function only returns true if the value is accurate (no fractional part, etc.). Changed code so that it returns false when the value has a fraction. (KJS::JSImmediate::getUInt32): Ditto.
  • kjs/internal.cpp: (KJS::NumberImp::getInt32): Changed code so that it returns false when the value has a fraction. Restores the old behavior. (KJS::NumberImp::getUInt32): Ditto.
  • kjs/value.h: (KJS::JSValue::getInt32): Updated for name change. (KJS::JSValue::getUInt32): Ditto. (KJS::JSValue::toInt32): Ditto. (KJS::JSValue::toUInt32): Ditto.

LayoutTests:

Reviewed by Geoff.

Added tests for cases where you use something that looks like an array
index, but it has a fractional part.

  • fast/js/kde/resources/Array.js: Added tests.
  • fast/js/kde/Array-expected.txt: Updated.
4:29 PM Changeset in webkit [26898] by honeycutt
  • 2 edits in trunk/WebCore

2007-10-22 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

<rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a
java page

We purposefully do not destroy our Java VM when its reference count
reaches 0, but we were unloading our JavaPlugin.dll when its reference
count reached 0, which lost the reference to the VM. This led to our
process trying to create a new VM the next time a page using Java was
loaded, and the JNI spec states that a single process is not allowed to
create more than one VM. The fix is to avoid unloading the Java plugin
via our PluginQuirkDontUnloadPlugin.

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::determineQuirks):
3:18 PM Changeset in webkit [26897] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Brady.

  • kjs/array_instance.cpp: (KJS::ArrayInstance::mark): Copy and paste error: I accidentally had code here that was making a copy of the HashMap -- that's illegal inside a mark function and was unnecessary. The other callsite was modifying the map as it iterated it, but this function is not.
2:32 PM Changeset in webkit [26896] by hyatt
  • 6 adds in trunk/LayoutTests/platform/mac/fast/transforms

Add results for new layout tests for transforms.

2:32 PM Changeset in webkit [26895] by hyatt
  • 2 adds in trunk/LayoutTests/fast/transforms

Add two new layout tests for transforms.

2:29 PM Changeset in webkit [26894] by hyatt
  • 4 edits in trunk/WebCore

Fix for bug 15624, make transforms work properly with opacity.

Make sure a unitless 0 is allowed as an angle argument to rotation/skew.

Reviewed by Mitz Pettel

fast/transforms/transforms-with-opacity.html
fast/transforms/skew-with-unitless-zero.html

  • css/CSSParser.cpp: (WebCore::CSSParser::validUnit):
  • rendering/RenderLayer.cpp: (WebCore::transparencyClipBox): (WebCore::RenderLayer::beginTransparencyLayers): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::calculateClipRects):
  • rendering/RenderLayer.h: (WebCore::RenderLayer::transform):
2:26 PM Changeset in webkit [26893] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Oliver.


  • kjs/JSImmediate.h: (KJS::JSImmediate::fromDouble): Avoid moving floats to integer registers since this is very slow.
11:39 AM Changeset in webkit [26892] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Eric Seidel.

Makes SunSpider 6% faster.

  • kjs/JSImmediate.h: Added toInt32 and toUInt32, with separate versions for 32-bit and 64-bit.
  • kjs/value.h: (KJS::JSValue::getUInt32): Call JSImmediate::toUInt32.
  • kjs/internal.h: Added getInt32.
  • kjs/internal.cpp: (KJS::NumberImp::getInt32): Added. (KJS::NumberImp::getUInt32): Replaced with more-optimal implementation stolen from JSValue.
  • kjs/value.h: (KJS::jsNumber): Marked ALWAYS_INLINE, because this wasn't getting inlined. (KJS::JSValue::getInt32): Added. (KJS::JSValue::getUInt32): Changed to call the new JSImmediate::toUInt32 to avoid converting from float to double. (KJS::JSValue::toInt32): Made inline, separated out the slow case. (KJS::JSValue::toUInt32): Ditto.
  • kjs/value.cpp: (KJS::JSCell::getInt32): Added. (KJS::JSValue::toInt32SlowCase): Renamed from toInt32. Changed to use the new getInt32. Added a faster case for in-range numbers. (KJS::JSValue::toUInt32SlowCase): Ditto. (KJS::JSValue::toUInt16): Added a faster case for in-range numbers.
11:02 AM Changeset in webkit [26891] by kmccullo
  • 2 edits in trunk/WebKitTools
  • Removed a leak that was fixed.
  • Scripts/run-webkit-tests:
10:48 AM Changeset in webkit [26890] by kmccullo
  • 6 edits in trunk/WebKitTools

Reviewed by Darin.

  • Changed the Client so that the DebuggerDocument now own the ServerConnection. This simplifies ownership and cleanup.
  • Drosera/win/DebuggerClient.cpp: The DebuggerDocument now owns the ServerConnection. (DebuggerClient::initWithServerName): (DebuggerClient::didFinishLoadForFrame):
  • Drosera/win/DebuggerClient.h: DebuggerDocument now owns the ServerConnection.
  • Drosera/win/Drosera.cpp: Moved some WebFrame initialization logic to until after we have a server which we are attached to. (Drosera::initUI): (Drosera::attach):
  • Drosera/win/Drosera.h: Removed two needless pointers I forgot to take out previously.
10:43 AM Changeset in webkit [26889] by aroben
  • 5 edits in trunk

Windows build fix

JavaScriptCore:

Windows build fix

Reviewed by NOBODY.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Turn off warning about implicit conversion to bool.

WebCore:

Windows build fix

Reviewed by NOBODY.

  • WebCore.vcproj/WebCore.vcproj: Copy header files from platform/sql.
  • page/Page.cpp: Touched to force the header files to be copied.
10:14 AM Changeset in webkit [26888] by zimmermann
  • 4 edits in trunk/WebCore

Reviewed by Simon.

Move textPath related SVGChar data in it's own structure SVGCharOnPath.
Store a pointer to that datastructure inside SVGChar, instead of 4 floats & one bool.

Saves space for the common case. And allows me to add more data (another float) to support
glyph-orientation-* on textPath later on...

9:29 AM QtWebKit edited by Simon Hausmann
(diff)
9:21 AM BuildingQtOnWindows edited by Simon Hausmann
(diff)
9:01 AM Changeset in webkit [26887] by hausmann
  • 2 edits in trunk/WebKitTools

When running build-testkjs make sure it's called through the perl interpreter, to fix the build for Qt/Windows.

8:06 AM Changeset in webkit [26886] by alp
  • 6 edits in trunk/WebCore

2007-10-22 Alp Toker <alp@atoker.com>

Reviewed by Nikolas Zimmermann.

Implement more GraphicsContextCairo stubs.

Remove a hack "to work around no current point bug" that was breaking
canvas tests.

Fix warnings.

  • platform/graphics/cairo/CairoPath.h: (WebCore::CairoPath::CairoPath):
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::addInnerRoundedRectClip): (WebCore::GraphicsContext::strokeRect):
  • platform/graphics/cairo/PathCairo.cpp: (WebCore::Path::isEmpty):
  • platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp: (WebCore::SVGPaintServerGradient::setup):
  • platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: (WebCore::SVGPaintServerSolid::setup):
7:54 AM Changeset in webkit [26885] by hausmann
  • 9 edits in trunk/WebKitTools

Wrap WEXITSTATUS with a little exitStatus() helper function that falls back to the use of $returnvalue >> 8 on Windows to determine the exit status on platforms without WEXITSTATUS.

7:53 AM Changeset in webkit [26884] by hausmann
  • 3 edits in trunk/WebCore

Fix compilation from a clean build with the database feature disabled.
JSCustomVersionChangeCallback.cpp doesn't actually need the SQL header file, just ScriptInterpreter.

6:56 AM Changeset in webkit [26883] by bdash
  • 2 edits in trunk/JavaScriptCore

2007-10-22 Mark Rowe <mrowe@apple.com>

Gtk build fix.

  • kjs/array_instance.cpp:
6:46 AM Changeset in webkit [26882] by darin
  • 1 edit in trunk/LayoutTests/ChangeLog
  • fast/js/kde/resources/Array.js: Added tests to cover missing value behavior (not the same as undefined values in arrays). This matches the ECMA JavaScript specification, but doesn't exactly match Firefox, because Firefox incorrectly inserts undefined values rather than missing values in array literals with extra commas.
  • fast/js/kde/Array-expected.txt: Updated with results.
6:35 AM Changeset in webkit [26881] by darin
  • 11 edits
    1 copy in trunk

JavaScriptCore:

Reviewed by Maciej.

Makes the morph test in SunSpider 26% faster, and the overall
benchmark 3% faster.

This also fixes some small problems we had with the distinction
between nonexistent and undefined values in arrays.

  • kjs/array_instance.h: Tweaked formatting and naming.
  • kjs/array_instance.cpp: Copied from kjs/array_object.cpp. (KJS::storageSize): Added. Computes the size of the storage given a vector length. (KJS::increasedVectorLength): Added. Implements the rule for resizing the vector. (KJS::isDenseEnoughForVector): Added. (KJS::ArrayInstance::ArrayInstance): Initialize the new fields. (KJS::ArrayInstance::~ArrayInstance): Since m_storage is now never 0, delete it. (KJS::ArrayInstance::getItem): Updated for name changes. (KJS::ArrayInstance::lengthGetter): Ditto. (KJS::ArrayInstance::inlineGetOwnPropertySlot): Added. Allows both versions of getOwnPropertySlot to share more code. (KJS::ArrayInstance::getOwnPropertySlot): Just refactored, no code change. (KJS::ArrayInstance::put): Added logic for extending the vector as long as the array is dense enough. Also keep m_numValuesInVector up to date. (KJS::ArrayInstance::deleteProperty): Added code to keep m_numValuesInVector up to date. (KJS::ArrayInstance::getPropertyNames): Fixed bug where this would omit names for array indices with undefined values. (KJS::ArrayInstance::increaseVectorLength): Renamed from resizeStorage. Also simplified to only handle getting larger. (KJS::ArrayInstance::setLength): Added code to update m_numValuesInVector, to zero out the unused part of the vector and to delete the map if it's no longer needed. (KJS::ArrayInstance::mark): Tweaked formatting. (KJS::compareByStringForQSort): Ditto. (KJS::ArrayInstance::sort): Ditto. (KJS::CompareWithCompareFunctionArguments::CompareWithCompareFunctionArguments): Ditto. (KJS::compareWithCompareFunctionForQSort): Ditto. (KJS::ArrayInstance::compactForSorting): Fixed bug where this would turn undefined values into nonexistent values in some cases.
  • kjs/array_object.h: Removed MAX_ARRAY_INDEX.
  • kjs/array_object.cpp: Removed ArrayInstance. Moved to a separate file.

LayoutTests:

  • fast/js/kde/resources/Array.js: Added tests to cover missing value behavior (not the same as undefined values in arrays). This matches the ECMA JavaScript specification, but doesn't exactly match Firefox.
  • fast/js/kde/Array-expected.txt: Updated with results.
5:56 AM Changeset in webkit [26880] by andrew
  • 10 edits in trunk

JavaScriptCore:

Reviewed by Mark Rowe.


Fix for local database support after r26879
Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set

  • Configurations/JavaScriptCore.xcconfig:

WebCore:

Reviewed by Mark Rowe.

Fix for local database support after r26879
Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set

  • Configurations/WebCore.xcconfig:
  • WebCore.pro:
  • WebCore.vcproj/build-generated-files.sh:

WebKit:

Reviewed by Mark Rowe.


Fix for local database support after r26879
Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set

  • Configurations/WebKit.xcconfig:

WebKitTools:

Reviewed by Mark Rowe.


Fix for local database support after r26879
Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set

  • Scripts/build-webkit:
4:39 AM Changeset in webkit [26879] by hausmann
  • 2 edits in trunk/JavaScriptCore

Build fix for the non-qmake builds.

4:28 AM Changeset in webkit [26878] by hausmann
  • 2 edits in trunk/WebCore

Disable the database feature in the qmake build for now.

4:22 AM Changeset in webkit [26877] by hausmann
  • 9 edits in trunk/WebCore

Make disabling the database feature (ENABLE_DATABASE=0) work by
placing various #ifdefs into the code and making the compilation of
some files optional.

3:41 AM Changeset in webkit [26876] by alp
  • 6 edits in trunk

2007-10-22 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

http://bugs.webkit.org/show_bug.cgi?id=15611
[GTK] Text selection behaviour different in Debug and Release builds

http://bugs.webkit.org/show_bug.cgi?id=15578
[GTK] Text editor caret does not blink

Never allow control to reach the end of non-void functions.

Return more sensible values, or in some cases, nulls.

2:35 AM Changeset in webkit [26875] by hausmann
  • 2 edits in trunk/WebCore

Implement ResourceHandle::loadResourceSynchronously using ResourceHandle and a special ResourceHandleClient. This approach has the possible danger of reentrancy.

Signed-off-by: Simon Hausmann <hausmann@kde.org>

2:33 AM Changeset in webkit [26874] by hausmann
  • 5 edits in trunk
  • Do not build testkjs as an application bundle. This is

needed for run-javascriptcore-tests on OSX.

  • Also, based on r26633, allow to test the WebKit/Qt port on OSX.
  • Set DYLD_LIBRARY_PATH if it was set in the environment. It must be set

as we do not have -rpath on OSX.

Signed-off-by: Simon Hausmann <hausmann@kde.org>

2:24 AM Changeset in webkit [26873] by hausmann
  • 2 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Style fix. It is allowed to attempt to delete 0.

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:24 AM Changeset in webkit [26872] by hausmann
  • 2 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Make it actually localizable....

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:24 AM Changeset in webkit [26871] by hausmann
  • 2 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Adjust the code to obey the Coding Style.

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:24 AM Changeset in webkit [26870] by hausmann
  • 2 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Return a non empty string in more functions.

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:24 AM Changeset in webkit [26869] by hausmann
  • 3 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Shrink the TemporaryLinkStubs and move the
Frame::setNeedsReapplyStyles stub to FrameQt.cpp

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:18 AM Changeset in webkit [26868] by hausmann
  • 3 edits in trunk/WebCore

2007-10-15 Holger Hans Peter Freyther <zecke@selfish.org>

Implement the WebCore::fileSize function. The
implementation assumes that QFileInfo will cache
the result of the stat so that info.size() and
info.exists() use the same stat result.

Signed-off-by: Lars Knoll <lars@trolltech.com>

2:15 AM Changeset in webkit [26867] by alp
  • 3 edits
    1 move
    1 add in trunk/WebCore

2007-10-21 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Use the portable GLib time function.

Use event timestamps rather than the current time where available.

Rename SharedTimerLinux.cpp since it isn't Linux-specific.

  • WebCore.pro:
  • platform/gtk/MouseEventGtk.cpp: (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  • platform/gtk/SystemTimeGtk.cpp: Added. (WebCore::currentTime):
  • platform/gtk/SharedTimerGtk.cpp: Copied from platform/gtk/SharedTimerLinux.cpp.
  • platform/gtk/SharedTimerLinux.cpp: Removed.
1:42 AM Changeset in webkit [26866] by hausmann
  • 2 edits in trunk/WebKitTools

Fix support for Signed-off-by detection in prepare-ChangeLog
--git-commit. The Signed-off-by tag does not appear in the header
but usually at the end.

12:31 AM Changeset in webkit [26865] by hyatt
  • 2 edits in trunk/WebCore

Fix for 15596, regression from my transform changes. Preserve null checks on the clip rects calls for parent(),
since the method is called on orphaned layers. This is not very well understood.

Reviewed by eric

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateClipRects): (WebCore::RenderLayer::calculateRects):
Note: See TracTimeline for information about the timeline view.