Timeline



Nov 1, 2007:

11:51 PM Changeset in webkit [27375] by oliver
  • 4 edits in trunk

Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key

WebCore:

Reviewed by Alexey.

Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key

  • platform/win/KeyEventWin.cpp: (WebCore::keyIdentifierForWindowsKeyCode): (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

WebKit/win:

Reviewed by Alexey.

Allow Shift, Ctrl, Alt, Meta and Capslock keys to be sent into WebCore.

  • WebView.cpp: (WebView::keyDown): (WebView::keyUp):
11:27 PM Changeset in webkit [27374] by mitz
  • 2 edits in trunk/WebKit

Reviewed by Oliver Hunt.

  • fix an assertion failure when Command-Tabbing out of Safari
  • WebView/WebHTMLView.mm: (-[WebHTMLView flagsChanged:]): Avoid passing key code 0 down to webCore.
5:14 PM Changeset in webkit [27373] by ggaren
  • 17 edits in trunk

JavaScriptCore:

Reviewed by Maciej Stachowiak.


In preparation for making List a simple stack-allocated Vector:

Removed all instances of List copying and/or assignment, and made List
inherit from Noncopyable.


Functions that used to return a List by copy now take List& out
parameters.


Layout tests and JS tests pass.

  • kjs/list.cpp: (KJS::List::slice): Replaced copyTail with a more generic slice alternative. (JavaScriptCore only calls slice(1), but WebCore calls slice(2)).

WebCore:

Reviewed by Maciej Stachowiak.


In preparation for making List a simple stack-allocated Vector:

Removed all instances of List copying, assignment, and/or storage.


Layout tests and JS tests pass.

  • bindings/js/kjs_window.cpp: (KJS::WindowFunc::callAsFunction): Stores a Vector of protected JSValue*'s instead of a List now. Converts to List on the fly when calling the timer function. This is slightly less efficient, but the common case is 0-2 arguments, so it's no biggie.

(HTML iBench shows no regression. PLT does not use JS timers.)


(KJS::ScheduledAction::execute): Uses the more efficient and non-copying
List::slice now.
(KJS::ScheduledAction::ScheduledAction): ditto

  • bindings/objc/WebScriptObject.mm: (getListFromNSArray): Takes a List out parameter now, to avoid copying.
4:30 PM Changeset in webkit [27372] by oliver
  • 9 edits in trunk

Correct event behaviour on certain control keys

Reviewed by Geoff

Make sure we send the correct keyDown and keyUp events for the
control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
uses Windows key codes for the event keyCode.

4:10 PM Changeset in webkit [27371] by timothy@apple.com
  • 1 edit in trunk/WebCore/page/inspector/inspector.css

Forgot part of the patch for my last change.

4:00 PM Changeset in webkit [27370] by timothy@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam.

  • page/inspector/inspector.css: Use the white disclosure triangles when a parent DOM element is sepected.
3:58 PM Changeset in webkit [27369] by justing
  • 5 edits in trunk

WebCore:

Reviewed by Oliver Hunt.

<rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting into a plaintext-only region, since when we build the fragment to insert from plain text, we don't put any style information on it, so it will automatically match style with no intervention.
  • editing/markup.cpp: (WebCore::createFragmentFromText): Place paragraphs into clones of the block being inserted into, instead of default paragraph elements, so that when inserted content will match the surrounding paragraph style. This was broken before, but I haven't added a layout test yet because there currently isn't a way to get only plain text onto the pasteboard in a layout test.

WebKit:

Reviewed by Oliver Hunt.


<rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply


No need to match style when pasting plain text, since the fragment we build for plain text
won't have any style information on it.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): There's no longer a need to know whether this function chosePlaintext. (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): (-[WebHTMLView _documentFragmentFromPasteboard:]):
3:54 PM Changeset in webkit [27368] by kmccullo
  • 2 edits in trunk/WebKit/win
  • Fixed a build failure
  • WebEditorClient.cpp: (WebEditorClient::textWillBeDeletedInTextField):
3:31 PM Changeset in webkit [27367] by weinig
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

Add a releaseRef method to COMPtr which matches the behavior
of the method by the same name in PassRefPtr. This is in
preparation of adding autogenerated COM DOM bindings.

  • platform/win/COMPtr.h: (COMPtr::releaseRef):
3:28 PM Changeset in webkit [27366] by mitz
  • 2 edits
    4 moves in trunk

WebCore:

wx impl. for DragController and EventHandler interfaces.

Reviewed by Adam Roben.

  • page/wx: Added.
  • page/wx/DragControllerWx.cpp: Added. (WebCore::DragController::isCopyKeyDown): (WebCore::DragController::dragOperation): (WebCore::DragController::maxDragImageSize):
  • page/wx/EventHandlerWx.cpp: Added. (WebCore::EventHandler::passMousePressEventToSubframe): (WebCore::EventHandler::passMouseMoveEventToSubframe): (WebCore::EventHandler::passMouseReleaseEventToSubframe): (WebCore::EventHandler::passMousePressEventToScrollbar): (WebCore::EventHandler::passWidgetMouseDownEventToWidget): (WebCore::EventHandler::focusDocumentView): (WebCore::EventHandler::eventActivatedView): (WebCore::EventHandler::createDraggingClipboard):

LayoutTests:

  • fix typo in test name
  • fast/repaint/layout-state-only-posiitoned.html: Removed.
  • fast/repaint/layout-state-only-positioned.html: Copied from fast/repaint/layout-state-only-posiitoned.html.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.checksum: Removed.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.png: Removed.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.txt: Removed.
  • platform/mac/fast/repaint/layout-state-only-positioned-expected.checksum: Copied from platform/mac/fast/repaint/layout-state-only-posiitoned-expected.checksum.
  • platform/mac/fast/repaint/layout-state-only-positioned-expected.png: Copied from platform/mac/fast/repaint/layout-state-only-posiitoned-expected.png.
  • platform/mac/fast/repaint/layout-state-only-positioned-expected.txt: Copied from platform/mac/fast/repaint/layout-state-only-posiitoned-expected.txt.
2:43 PM Changeset in webkit [27365] by kevino
  • 1 edit
    3 adds in trunk/WebCore

wx impl. for DragController and EventHandler interfaces.

Reviewed by Adam Roben.

2:36 PM Changeset in webkit [27364] by kevino
  • 1 edit
    2 adds in trunk/WebCore

Adding files for wx impl. of editing interfaces.

Reviewed by Adam Roben.

2:33 PM Changeset in webkit [27363] by weinig
  • 6 edits in trunk/WebCore

Reviewed by Adam Roben.

Make implicit conversions from LPCSTRs and BSTRs to WebCore string
types possible in preparation of adding autogenerated COM DOM bindings.

  • platform/AtomicString.cpp: (WebCore::AtomicString::add):
  • platform/AtomicString.h: (WebCore::AtomicString::AtomicString):
  • platform/PlatformString.h:
  • platform/win/BString.cpp: (WebCore::BString::BString):
  • platform/win/BString.h:
2:15 PM Changeset in webkit [27362] by beidson@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Anders

Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)

  • platform/sql/SQLiteTransaction.cpp: (WebCore::SQLiteTransaction::SQLiteTransaction): (WebCore::SQLiteTransaction::~SQLiteTransaction): (WebCore::SQLiteTransaction::begin): (WebCore::SQLiteTransaction::commit): (WebCore::SQLiteTransaction::rollback):
  • platform/sql/SQLiteTransaction.h: (WebCore::SQLiteTransaction::inProgress):
2:01 PM Changeset in webkit [27361] by aroben
  • 2 edits in trunk/WebCore

Remove all duplicate xcopy commands from WebCore's post-build step

Also add the /d option to the copy of platform/sql.

Rubberstamped by Sam.

  • WebCore.vcproj/WebCore.vcproj:
2:00 PM Changeset in webkit [27360] by aroben
  • 2 edits in trunk/WebKitTools

Make changes in WebKit/win show up under "WebKit/win:" instead of just "win:"

Reviewed by Sam.

  • Scripts/commit-log-editor: Show all the directories beneath the source root, instead of just the last one.
1:50 PM Changeset in webkit [27359] by ggaren
  • 5 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Maciej Stachowiak.

Fixed http://bugs.webkit.org/show_bug.cgi?id=15785
REGRESSION(r27344): Crash on load at finance.yahoo.com


Reverted a small portion of my last check-in. (The speedup and the List
removal are still there, though.)


ActivationImp needs to hold a pointer to its function, and mark that
pointer (rather than accessing its function through its ExecState, and
counting on the active scope to mark its function) because a closure
can cause an ActivationImp to outlive its ExecState along with any
active scope.

  • kjs/ExecState.cpp: (KJS::ExecState::ExecState):
  • kjs/function.cpp: (KJS::FunctionImp::~FunctionImp): (KJS::ActivationImp::ActivationImp):
  • kjs/function.h: (KJS::ActivationImp::ActivationImpPrivate::ActivationImpPrivate):

Also made HashTable a little more crash-happy in debug builds, so
problems like this will show up earlier:


  • wtf/HashTable.h: (WTF::HashTable::~HashTable):

LayoutTests:

Reviewed by Maciej Stachowiak.


Layout test for http://bugs.webkit.org/show_bug.cgi?id=15785
REGRESSION(r27344): Crash on load at finance.yahoo.com

  • fast/js/activation-object-function-lifetime-expected.txt: Added.
  • fast/js/activation-object-function-lifetime.html: Added.
1:35 PM Changeset in webkit [27358] by weinig@apple.com
  • 2 edits in trunk/WebKitSite

Rubber-stamped by Tim Hatcher.

  • misc/DatabaseExample.html: Speed up default close speed to .25s
1:28 PM Changeset in webkit [27357] by weinig@apple.com
  • 2 edits in trunk/WebKitSite

Reviewed by Adam Roben.

  • Don't show the close button on the notes unless hovering over the note.
  • Do transformation and fade when closing a note using the new transition properties.
  • misc/DatabaseExample.html:
1:23 PM Changeset in webkit [27356] by aroben
  • 3 edits in trunk/WebKit/win

Fix the parameter type of WebLocalizedString to match the UI_STRING macro

Reviewed by Sam.

  • WebLocalizableStrings.cpp: (WebLocalizedString): (WebLocalizedLPCTSTR):
  • WebLocalizableStrings.h:
12:01 PM Changeset in webkit [27355] by adele
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

Add support for the animation of the -webkit-border-raduis properties.

  • page/AnimationController.cpp: (WebCore::blendFunc): Added for IntSize. (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
11:37 AM Changeset in webkit [27354] by alp
  • 2 edits in trunk/WebCore

2007-11-01 Alp Toker <alp@atoker.com>

Reviewed by Mitz Pettel.

Fix an unbalanced save/restore.

  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::draw):
11:28 AM Changeset in webkit [27353] by hyatt
  • 2 edits in trunk/WebCore

Add support for the animation of the visibility property.

Reviewed by oliver, aroben

  • page/AnimationController.cpp: (WebCore::blendFunc): (WebCore::ImplicitAnimation::animate):
10:13 AM Changeset in webkit [27352] by kmccullo
  • 2 edits in trunk/WebCore

Reviewed by Adam.

  • Made COMPtr be able to be used by certain other templates, specifically HashSet.
  • platform/win/COMPtr.h: (WTF::):
8:30 AM Changeset in webkit [27351] by mitz
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

Test: fast/repaint/overflow-clip-subtree-layout.html

This patch does not address the bigger issue of doing a full relayout
of inline flows containing floats, but it addresses the problem on
aol.com, where the changes that trigger layout are confined to an
overflow area inside the float.

  • page/FrameView.cpp: (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old layout roots are different but one descends from the other, make (or keep) the ancestor as the layout root.
  • rendering/RenderObject.cpp: (WebCore::objectIsRelayoutBoundary): Made boxes with overflow clipping and non-auto width and height relayout boundaries.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/repaint/overflow-clip-subtree-layout.html: Added.
  • platform/mac/fast/repaint/overflow-clip-subtree-layout-expected.checksum: Added.
  • platform/mac/fast/repaint/overflow-clip-subtree-layout-expected.png: Added.
  • platform/mac/fast/repaint/overflow-clip-subtree-layout-expected.txt: Added.
8:01 AM Changeset in webkit [27350] by ap
  • 2 edits in trunk/WebCore

Reviewed by Mark Rowe.

Fixed line endings that got confused in this file somehow.

  • platform/network/ResourceResponse.cpp: (WebCore::ResourceResponse::isAttachment):
2:58 AM Changeset in webkit [27349] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Adam Roben.


Addressed some of Darin's review comments.


Used perl -p, which is the shorthand while(<>) {}.


Made sure not to suppress bison's output.


Added line to removed bison_out.txt, since this script removes other
intermediate files, too.

  • DerivedSources.make:
2:30 AM Changeset in webkit [27348] by mrowe@apple.com
  • 3 edits in trunk/WebKitTools

2007-11-01 Kevin Ollivier <kevino@theolliviers.com>

Reviewed by Adam Roben.

Print out an error message when the Windows build fails
and provide guidance on how to find out what went wrong.

  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm:
2:30 AM Changeset in webkit [27347] by aroben
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Add some more tests that r27343 fixed

2:29 AM Changeset in webkit [27346] by mrowe@apple.com
  • 3 edits in trunk/WebCore

2007-11-01 Peter Kasting <zerodpx@gmail.com>

Reviewed by Dave Hyatt.

http://bugs.webkit.org/show_bug.cgi?id=15778
Malformed GIFs should not result in memory corruption.

  • platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::haveDecodedRow):
  • platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::output_row): (GIFImageReader::read):
2:21 AM Changeset in webkit [27345] by ap
  • 4 edits in trunk

Rubber-stamped by Adam Roben.

Rolled out r27326 - debug CRT seems to cause no problems after all.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • WebKit.vcproj/WebKit.vcproj:
1:36 AM Changeset in webkit [27344] by ggaren
  • 4 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.


Removed List from ActivationImp, in preparation for making all lists
stack-allocated.


Tests pass.


1.0% speedup on SunSpider, presumably due to reduced List refcount thrash.

  • kjs/ExecState.cpp: (KJS::ExecState::ExecState): (KJS::ExecState::~ExecState):
  • kjs/function.cpp: (KJS::ActivationImp::ActivationImp): (KJS::ActivationImp::createArgumentsObject):
  • kjs/function.h: (KJS::ActivationImp::ActivationImpPrivate::ActivationImpPrivate):
1:28 AM Changeset in webkit [27343] by aroben
  • 3 edits in trunk/JavaScriptCore

Use jsNumberCell instead of jsNumber when converting double constants to JSValues

This fixes fast/js/math.html, which was suffering from a bug in MSVC.
It also gets rid of an MSVC warning that we previously had to silence.

Reviewed by Geoff.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Turn back on the "overflow in constant arithmetic" warning.
  • kjs/number_object.cpp: (NumberObjectImp::getValueProperty): Use jsNumberCell instead of jsNumber.

Oct 31, 2007:

11:50 PM Changeset in webkit [27342] by aroben
  • 1 edit
    4 adds in trunk/LayoutTests

Add Windows-specific results for window-properties

HTML Timed Media elements aren't implemented yet on Windows.

  • platform/win/fast/dom/Window/window-properties-expected.txt: Added.
11:20 PM Changeset in webkit [27341] by aroben
  • 2 edits in trunk/JavaScriptCore

Windows build fix

  • kjs/ExecState.h:
10:05 PM Changeset in webkit [27340] by mjs
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Fix ChangeLog entry.

10:02 PM Changeset in webkit [27339] by mjs
  • 4 edits in trunk/JavaScriptCore

Reviewed by Oliver.


  • shave some cycles off of local storage access for a 1% SunSpider speedup


Keep the LocalStorage pointer in the ExecState, not

  • kjs/ExecState.cpp: (KJS::ExecState::updateLocalStorage):
  • kjs/ExecState.h: (KJS::ExecState::localStorage):
  • kjs/nodes.cpp: (KJS::LocalVarAccessNode::evaluate): (KJS::LocalVarFunctionCallNode::evaluate): (KJS::PostIncLocalVarNode::evaluate): (KJS::PostDecLocalVarNode::evaluate): (KJS::LocalVarTypeOfNode::evaluate): (KJS::PreIncLocalVarNode::evaluate): (KJS::PreDecLocalVarNode::evaluate): (KJS::ReadModifyLocalVarNode::evaluate): (KJS::AssignLocalVarNode::evaluate): (KJS::FunctionBodyNode::processDeclarationsForFunctionCode):
8:51 PM Changeset in webkit [27338] by aroben
  • 3 edits
    2 adds in trunk

Fix a crash when parsing a cubic-bezier function

WebCore:

Fix a crash when parsing a cubic-bezier function

Reviewed by Hyatt.

Test: fast/css/parse-timing-function-crash.html

  • WebCore.vcproj/WebCore.vcproj:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end of the ValueList.

LayoutTests:

New test for a crash when parsing a cubic-bezier function

Reviewed by Hyatt.

  • fast/css/parse-timing-function-crash-expected.txt: Added.
  • fast/css/parse-timing-function-crash.html: Added.
8:05 PM Changeset in webkit [27337] by hyatt
  • 2 edits in trunk/WebCore

Fix a merge error from when I applied my patch to ToT. A couple of lines should be part of an if.

  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::adjustTransitions):
6:22 PM Changeset in webkit [27336] by aroben
  • 4 edits in trunk/JavaScriptCore

Fix a crash on launch due to a static initializer race

We now use fast inline assembler spinlocks which can be statically
initialized at compile time.

As a side benefit, this speeds up SunSpider by 0.4%.

Reviewed by Oliver.

  • wtf/FastMalloc.cpp:
  • wtf/TCSpinLock.h: (TCMalloc_SpinLock::Lock): (TCMalloc_SpinLock::Unlock): (TCMalloc_SlowLock):
  • wtf/TCSystemAlloc.cpp:
6:16 PM Changeset in webkit [27335] by andersca
  • 3 edits
    22 adds in trunk/WebCore

Reviewed by Sam.

Add new SQL callback interfaces and JS implementations of them.


  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCustomSQLStatementCallback.cpp: Added. (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback): (WebCore::JSCustomSQLStatementCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementCallback.h: Added.
  • bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added. (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback): (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
  • bindings/js/JSCustomSQLTransactionCallback.cpp: Added. (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback): (WebCore::JSCustomSQLTransactionCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionCallback.h: Added.
  • bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added. (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback): (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
  • bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
  • storage/JSCustomSQLStatementCallback.h: Added.
  • storage/JSCustomSQLStatementErrorCallback.h: Added.
  • storage/JSCustomSQLTransactionCallback.h: Added.
  • storage/JSCustomSQLTransactionErrorCallback.h: Added.
  • storage/SQLStatementCallback.h: Added. (WebCore::SQLStatementCallback::~SQLStatementCallback):
  • storage/SQLStatementCallback.idl: Added.
  • storage/SQLStatementErrorCallback.h: Added. (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
  • storage/SQLStatementErrorCallback.idl: Added.
  • storage/SQLTransaction.h: Added.
  • storage/SQLTransaction.idl: Added.
  • storage/SQLTransactionCallback.h: Added. (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
  • storage/SQLTransactionCallback.idl: Added.
  • storage/SQLTransactionErrorCallback.h: Added. (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
  • storage/SQLTransactionErrorCallback.idl: Added.
5:06 PM Changeset in webkit [27334] by kmccullo
  • 2 edits in trunk/JavaScriptCore

Reviewed by Sam.

  • Corrected spelling.
  • wtf/HashTraits.h:
4:23 PM Changeset in webkit [27333] by justing
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Harrison.

<rdar://problem/5569741> Pasting content with a line break into a list can remove the list

  • editing/htmlediting.cpp: (WebCore::enclosingEmptyListItem): A single list item can contain multiple paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a list item, that list item isn't necessarily empty.

LayoutTests:

Reviewed by Dave Harrison.

  • editing/execCommand/5569741.html: Added.
  • platform/mac/editing/execCommand/5569741-expected.checksum: Added.
  • platform/mac/editing/execCommand/5569741-expected.png: Added.
  • platform/mac/editing/execCommand/5569741-expected.txt: Added.
4:12 PM Changeset in webkit [27332] by timothy@apple.com
  • 6 edits in trunk/WebKit

Reviewed by John Sullivan.

Move the developer extras preference to WebPreferences.

  • WebView/WebPreferenceKeysPrivate.h: Add WebKitDeveloperExtrasEnabledPreferenceKey
  • WebView/WebPreferences.m: (+[WebPreferences initialize]): Initialize WebKitDeveloperExtrasEnabledPreferenceKey to NO. (-[WebPreferences developerExtrasEnabled]): Check DisableWebKitDeveloperExtras, WebKitDeveloperExtras and IncludeDebugMenu in addition to WebKitDeveloperExtrasEnabledPreferenceKey. (-[WebPreferences setDeveloperExtrasEnabled:]): Set WebKitDeveloperExtrasEnabledPreferenceKey.
  • WebView/WebPreferencesPrivate.h: Add developerExtrasEnabled and setDeveloperExtrasEnabled:.
  • WebView/WebView.mm: (+[WebView _developerExtrasEnabled]): Removed. (-[WebView _preferencesChangedNotification:]): Check the WebPreferences object for developerExtrasEnabled.
  • WebView/WebViewPrivate.h: Removed _developerExtrasEnabled.
2:19 PM Changeset in webkit [27331] by hyatt
  • 2 edits in trunk/WebCore

Disable style sharing for animating styles.

Reviewed by mitzpettel

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::canShareStyleWithElement):
1:58 PM Changeset in webkit [27330] by mitz
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix intermediate length calculation
  • rendering/Length.h: (WebCore::Length::blend):
1:54 PM Changeset in webkit [27329] by antti
  • 1 edit
    10 deletes in trunk/LayoutTests

Remove timing dependent, occasionally failing cue point tests.
Cue points will be replaced with cue ranges soon anyway.

  • media/video-cuepoint-pause-expected.txt: Removed.
  • media/video-cuepoint-remove-multiple-expected.txt: Removed.
  • media/video-cuepoint-multiple-expected.txt: Removed.
  • media/video-cuepoint-remove-expected.txt: Removed.
  • media/video-cuepoint-pause.html: Removed.
  • media/video-cuepoint-remove-multiple.html: Removed.
  • media/video-cuepoint-multiple.html: Removed.
  • media/video-cuepoint-remove.html: Removed.
  • media/video-cuepoint-add-expected.txt: Removed.
  • media/video-cuepoint-add.html: Removed.
1:07 PM Changeset in webkit [27328] by andersca
  • 4 edits
    2 adds in trunk/WebCore

Reviewed by Darin.

Add new SQLError implementation.


  • DerivedSources.make:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • storage/SQLError.h: Added. (WebCore::SQLError::SQLError): (WebCore::SQLError::code): (WebCore::SQLError::message):
  • storage/SQLError.idl: Added.
11:46 AM Changeset in webkit [27327] by hyatt
  • 2 edits in trunk/WebCore

Change the initial value of transition-property to all. Change the initial value of
transition-duration to 0.

Reviewed by antti

  • rendering/RenderStyle.h: (WebCore::RenderStyle::initialTransitionDuration): (WebCore::RenderStyle::initialTransitionProperty):
11:33 AM Changeset in webkit [27326] by aroben
  • 4 edits in trunk

Switch the Debug configuration to using the non-debug CRT

WebKitTools:

Switch the Debug configuration to using the non-debug CRT

This matches WebKit.

Reviewed by Steve.

  • DumpRenderTree/win/DumpRenderTree.vcproj:

WebKit/win:

Switch the Debug configuration to using the non-debug CRT

The debug CRT conflicts with what Safari uses, which causes loading
problems.

Reviewed by Steve.

  • WebKit.vcproj/WebKit.vcproj:
9:23 AM Changeset in webkit [27325] by alp
  • 2 edits in trunk/WebCore

Reviewed by Mark Rowe.

The new Color must be marked valid.

8:16 AM Changeset in webkit [27324] by antti
  • 2 edits in trunk/WebKitTools

Reviewed by bdash.


Disable media tests when doing leak checking on Tiger.
They crash in QuickTime (rdar://problem/5537157).

  • Scripts/run-webkit-tests:
8:05 AM Changeset in webkit [27323] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Further Gtk build fixage.

  • kjs/regexp_object.cpp:
7:59 AM Changeset in webkit [27322] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Gtk build fix.

  • kjs/regexp.h:
7:52 AM Changeset in webkit [27321] by darin
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Tweaked formatting of the ChangeLog a bit.

7:46 AM Changeset in webkit [27320] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Maciej.

Speeds things up 0.4% according to SunSpider.

  • kjs/config.h: Define USE(PCRE16) instead of HAVE(PCREPOSIX), because this library doesn't use the real PCRE -- it uses its own PCRE that works on UTF-16.
  • kjs/regexp.h: Removed a few unused functions. Changed the ifdef. Use Noncopyable. Change the return value of match.
  • kjs/regexp.cpp: (KJS::RegExp::RegExp): Call pcre_compile2, for a slight speed boost. (KJS::RegExp::~RegExp): PCRE16 rather than PCREPOSIX. (KJS::RegExp::match): Change to return the position as an int and the ovector as a OwnArrayPtr<int> for efficiency and clearer storage management.
  • kjs/regexp_object.h: Change performMatch and arrayOfMatches to no longer require a result string.
  • kjs/regexp_object.cpp: (RegExpProtoFunc::callAsFunction): Update for new signature of performMatch. (RegExpObjectImp::performMatch): Change so it doesn't return a string. (RegExpObjectImp::arrayOfMatches): Simplify by unifying the handling of the main result with the backreferences; now it doesn't need to take a result parameter. (RegExpObjectImp::getBackref): Minor tweaks. (RegExpObjectImp::getLastParen): Ditto. (RegExpObjectImp::getLeftContext): Ditto. (RegExpObjectImp::getRightContext): Ditto. (RegExpObjectImp::getValueProperty): Change LastMatch case to call getBackref(0) so we don't need a separate getLastMatch function.
  • kjs/string_object.cpp: (KJS::replace): Update to use new performMatch, including merging the matched string section with the other substrings. (KJS::StringProtoFunc::callAsFunction): Update functions to use the new performMatch and match. Also change to use OwnArrayPtr.
4:42 AM Changeset in webkit [27319] by hausmann
  • 2 edits in trunk/WebCore

Build fix for non-Qt builds.

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

Fix dependency path to header files of the public API of the Qt port.

4:15 AM Changeset in webkit [27317] by hausmann
  • 3 edits in trunk/WebCore
4:13 AM Changeset in webkit [27316] by hausmann
  • 2 edits in trunk/WebCore
  • QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3
  • Provide a bad fallback implementation to filter the format list.

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

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

add an entitiy resolver to QXmlStream.
Fixes fast/parser/entities-in-attributes.xhtml.

4:09 AM Changeset in webkit [27314] by hausmann
  • 5 edits
    2 deletes in trunk

Fixes in the XML tokenizer when using QXmlStream.

Use new functionality of QXmlStream in Qt 4.4 to simplify
the code (but keep the old code for now to still support Qt 4.3).

Add proper support for namespace handling when parsing into
a document fragment.

4:08 AM Changeset in webkit [27313] by hausmann
  • 4 edits in trunk/WebCore

add support for dragging images.

4:08 AM Changeset in webkit [27312] by hausmann
  • 7 edits in trunk

fix most of the issues I found with Clipboard and DnD.

4:08 AM Changeset in webkit [27311] by hausmann
  • 2 edits in trunk/WebKit/qt

QDrag objects need to be created on the heap.

4:08 AM Changeset in webkit [27310] by hausmann
  • 2 edits in trunk/WebKit/qt

a dragLeave event is not the same as cancelling a drag.

4:02 AM Changeset in webkit [27309] by oliver
  • 2 edits in trunk/JavaScriptCore

Reviewed by NOBODY (qt buildfix)

  • kjs/nodes.h: include OwnPtr.h
3:54 AM Changeset in webkit [27308] by oliver
  • 5 edits in trunk/JavaScriptCore

Remove SourceCodeElement class and replaced with a Vector for a 0.8% gain on sunspider

Reviewed by Maciej

3:52 AM Changeset in webkit [27307] by mjs
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Oliver hasn't changed his name to ChangeLog.

2:47 AM Changeset in webkit [27306] by bdash
  • 3 edits in trunk/WebCore

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

Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.

  • platform/gtk/KeyEventGtk.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState):
  • platform/qt/PlatformKeyboardEventQt.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2:33 AM Changeset in webkit [27305] by bdash
  • 2 edits in trunk/JavaScriptCore

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

Build fix for non-Mac ports.

  • kjs/property_map.cpp:
2:17 AM Changeset in webkit [27304] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.


  • fix builds
  • kjs/property_map.cpp: Include HashTable.h the right way.
1:29 AM Changeset in webkit [27303] by ap
  • 5 edits
    3 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=11001
WebKit doesn't support RegExp.compile method

Test: fast/js/regexp-compile.html

  • kjs/regexp_object.cpp: (RegExpPrototype::RegExpPrototype): (RegExpProtoFunc::callAsFunction):
  • kjs/regexp_object.h: (KJS::RegExpProtoFunc::): Added RegExp.compile.
  • tests/mozilla/expected.html: js1_2/regexp/compile.js now passes.
1:22 AM Changeset in webkit [27302] by ap
  • 5 edits in trunk

Reviewed by Anders.

http://bugs.webkit.org/show_bug.cgi?id=15762
XSLStylesheet loads subresources from a wrong URL

Covered by corrected existing tests.

  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not the document one.
1:22 AM Changeset in webkit [27301] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by ChangeLog.


  • get rid of integer divide in PropertyMap and HashTable for 1% SunSpider speedup


Integer divide sucks. Fortunately, a bunch of shifts and XORs
biased towards the high bits is sufficient to provide a good
double hash. Besides the SunSpider win, I used the dump statistics
mode for both to verify that collisions did not increase and that
the longest collision chain is not any longer.

  • kjs/property_map.cpp: (KJS::doubleHash): (KJS::PropertyMap::get): (KJS::PropertyMap::getLocation): (KJS::PropertyMap::put): (KJS::PropertyMap::insert): (KJS::PropertyMap::remove): (KJS::PropertyMap::checkConsistency):
  • wtf/HashTable.h: (WTF::doubleHash): (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):
1:20 AM Changeset in webkit [27300] by ap
  • 2 edits in trunk/WebCore

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=10818
String::append does 2 full copies instead of 1 (or zero!)

No change in functionality, thus no test.

  • platform/String.cpp: (WebCore::String::append): Rewrote to copy once. Also removed an ancient FIXME that doesn't seem to make any sense. Note that append() behavior doesn't match documented String behavior ("modifications to one instance will also modify all others"), but there are a lot of methods that don't.
12:54 AM Changeset in webkit [27299] by aroben
  • 2 edits in trunk/WebCore

Windows build fix

  • WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
12:24 AM Changeset in webkit [27298] by aroben
  • 2 edits in trunk/JavaScriptCore

Build fix

  • kjs/collector.h: Make HeapType public.
12:20 AM Changeset in webkit [27297] by aroben
  • 4 edits in trunk/JavaScriptCore

Change ALWAYS_INLINE and WTF_PRIVATE_INLINE to use forceinline on Windows

Speeds up SunSpider by 0.4%.

Reviewed by Steve and Maciej.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Disable a warning during LTCG in release builds about double -> float conversion.
  • wtf/AlwaysInline.h:
  • wtf/FastMalloc.h:
12:19 AM Changeset in webkit [27296] by aroben
  • 2 edits in trunk/JavaScriptCore

Use GetCurrentThreadId instead of pthread_self in FastMalloc

Speeds up SunSpider by 0.3%.

Reviewed by Steve.

  • wtf/FastMalloc.cpp: (WTF::TCMalloc_ThreadCache::InitTSD): (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
12:19 AM Changeset in webkit [27295] by aroben
  • 4 edits in trunk/JavaScriptCore

Switch to a Win32 critical section implementation of spinlocks

Speeds up SunSpider by 0.4%.

Reviewed by Steve.

  • wtf/FastMalloc.cpp:
  • wtf/TCSpinLock.h: (TCMalloc_SpinLock::TCMalloc_SpinLock): (TCMalloc_SpinLock::Init): (TCMalloc_SpinLock::Finalize): (TCMalloc_SpinLock::Lock): (TCMalloc_SpinLock::Unlock):
  • wtf/TCSystemAlloc.cpp:
12:18 AM Changeset in webkit [27294] by aroben
  • 2 edits in trunk/JavaScriptCore

Fix Bug 15586: REGRESSION (r26759-r26785): Windows nightly builds crash with Safari 3 Public Beta

http://bugs.webkit.org/show_bug.cgi?id=15586

Also fixes: <rdar://5565303> Cannot use regsvr32.exe to register WebKit.dll

Use Win32 TLS functions instead of declspec(thread), which breaks
delay-loading.

Reviewed by Steve.

  • wtf/FastMalloc.cpp: (WTF::getThreadHeap): (WTF::TCMalloc_ThreadCache::InitModule):

Oct 30, 2007:

11:57 PM Changeset in webkit [27293] by aroben
  • 3 edits in trunk/WebCore

Windows build fixes

I'm not completely sure why these const issues weren't caught by GCC,
but MSVC was certainly not happy with them.

  • editing/IndentOutdentCommand.cpp: (WebCore::isIndentBlockquote):
  • editing/markup.cpp: (WebCore::styleFromMatchedRulesAndInlineDecl):
11:09 PM Changeset in webkit [27292] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Oliver.



We do this by using a single mark bit per two number cells, and
tweaking marking.


Besides being an 0.5% win overall, this is a 7.1% win on morph.

  • kjs/collector.cpp: (KJS::): (KJS::Collector::heapAllocate): (KJS::Collector::markStackObjectsConservatively): (KJS::Collector::sweep):
  • kjs/collector.h: (KJS::SmallCollectorCell::):
8:55 PM Changeset in webkit [27291] by hyatt
  • 7 edits in trunk/WebCore

transition-property was defaulting to all when it should default to none.

It was taking a string type. I figured out how to make it take an ident instead, so you can write:

transition-property: opacity

instead of

transition-property: "opacity"

Transition layers also weren't properly repeating patterns the way they were supposed to. I fixed that.

Finally, I fixed a bug in the code to fix up transition layers where something was misplaced that should have been inside a null check.

Reviewed by aroben

  • css/CSSHelper.h:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseTransitionProperty):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle):
  • page/AnimationController.cpp: (WebCore::ImplicitAnimation::animate):
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::adjustTransitions):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::initialTransitionProperty):
8:30 PM Changeset in webkit [27290] by antti
  • 2 edits in trunk/WebCore

Reviewed by Geoff.

Leak fix

  • platform/graphics/mac/MoviePrivateQTKit.mm: (WebCore::MoviePrivate::getSupportedTypes):
8:04 PM Changeset in webkit [27289] by ggaren
  • 3 edits in trunk/JavaScriptCore

Reviewed by Adam Roben, Sam Weinig.


Made conflicts in grammar.y a persistent build failure.

  • DerivedSources.make:
7:47 PM Changeset in webkit [27288] by mitz
  • 2 edits in trunk/WebCore

Reviewed by Stephanie Lewis.

  • fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
  • platform/win/FontDataWin.cpp: (WebCore::FontData::platformInit): Handle the case where the font has no glyphs on page zero.
7:36 PM Changeset in webkit [27287] by hyatt
  • 1 edit in trunk/WebCore/page/AnimationController.cpp

Fix Qt bustage in AnimationController.cpp

7:35 PM Changeset in webkit [27286] by antti
  • 4 edits
    85 adds in trunk/LayoutTests

Reviewed by Maciej.


Media tests from feature branch.

  • fast/dom/Window/window-properties-expected.txt: Replaced.
  • fast/dom/Window/window-properties.html: Replaced.
  • media: Added.
  • media/audio-constructor-expected.txt: Added.
  • media/audio-constructor-src-expected.txt: Added.
  • media/audio-constructor-src.html: Added.
  • media/audio-constructor.html: Added.
  • media/content: Added.
  • media/content/test.mp4: Added.
  • media/content/test.wav: Added.
  • media/progress-event-expected.txt: Added.
  • media/progress-event.html: Added.
  • media/video-append-source-expected.txt: Added.
  • media/video-append-source.html: Added.
  • media/video-autoplay-expected.txt: Added.
  • media/video-autoplay.html: Added.
  • media/video-buffered-expected.txt: Added.
  • media/video-buffered.html: Added.
  • media/video-cuepoint-add-expected.txt: Added.
  • media/video-cuepoint-add.html: Added.
  • media/video-cuepoint-multiple-expected.txt: Added.
  • media/video-cuepoint-multiple.html: Added.
  • media/video-cuepoint-pause-expected.txt: Added.
  • media/video-cuepoint-pause.html: Added.
  • media/video-cuepoint-remove-expected.txt: Added.
  • media/video-cuepoint-remove-multiple-expected.txt: Added.
  • media/video-cuepoint-remove-multiple.html: Added.
  • media/video-cuepoint-remove.html: Added.
  • media/video-currentTime-expected.txt: Added.
  • media/video-currentTime-set-expected.txt: Added.
  • media/video-currentTime-set.html: Added.
  • media/video-currentTime-set2-expected.txt: Added.
  • media/video-currentTime-set2.html: Added.
  • media/video-currentTime.html: Added.
  • media/video-dom-autoplay-expected.txt: Added.
  • media/video-dom-autoplay.html: Added.
  • media/video-dom-end-expected.txt: Added.
  • media/video-dom-end.html: Added.
  • media/video-dom-loopcount-expected.txt: Added.
  • media/video-dom-loopcount.html: Added.
  • media/video-dom-loopend-expected.txt: Added.
  • media/video-dom-loopend.html: Added.
  • media/video-dom-loopstart-expected.txt: Added.
  • media/video-dom-loopstart.html: Added.
  • media/video-dom-src-expected.txt: Added.
  • media/video-dom-src.html: Added.
  • media/video-dom-start-expected.txt: Added.
  • media/video-dom-start.html: Added.
  • media/video-end-expected.txt: Added.
  • media/video-end.html: Added.
  • media/video-error-abort-expected.txt: Added.
  • media/video-error-abort.html: Added.
  • media/video-error-does-not-exist-expected.txt: Added.
  • media/video-error-does-not-exist.html: Added.
  • media/video-load-networkState-expected.txt: Added.
  • media/video-load-networkState.html: Added.
  • media/video-load-readyState-expected.txt: Added.
  • media/video-load-readyState.html: Added.
  • media/video-loopcount-expected.txt: Added.
  • media/video-loopcount.html: Added.
  • media/video-loopend-expected.txt: Added.
  • media/video-loopend.html: Added.
  • media/video-loopstart-expected.txt: Added.
  • media/video-loopstart.html: Added.
  • media/video-muted-expected.txt: Added.
  • media/video-muted.html: Added.
  • media/video-no-autoplay-expected.txt: Added.
  • media/video-no-autoplay.html: Added.
  • media/video-seekable-expected.txt: Added.
  • media/video-seekable.html: Added.
  • media/video-size-expected.txt: Added.
  • media/video-size.html: Added.
  • media/video-source-expected.txt: Added.
  • media/video-source-media-expected.txt: Added.
  • media/video-source-media.html: Added.
  • media/video-source-type-expected.txt: Added.
  • media/video-source-type.html: Added.
  • media/video-source.html: Added.
  • media/video-src-expected.txt: Added.
  • media/video-src-source-expected.txt: Added.
  • media/video-src-source.html: Added.
  • media/video-src.html: Added.
  • media/video-start-expected.txt: Added.
  • media/video-start.html: Added.
  • media/video-test.js: Added.
  • media/video-volume-expected.txt: Added.
  • media/video-volume.html: Added.
  • platform/qt/Skipped:
  • platform/win/Skipped:
7:35 PM Changeset in webkit [27285] by hyatt
  • 1 edit in trunk/WebCore/rendering/RenderStyle.cpp

Remove unused blendLengths function.

7:32 PM Changeset in webkit [27284] by hyatt
  • 2 edits in trunk/WebCore

Eliminate rounding from int-based animation blending.

7:30 PM Changeset in webkit [27283] by hyatt
  • 6 edits in trunk/WebCore

Make sure CSS transforms can be animated using the CSS transition property.

Reviewed by Dan and Antti

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • page/AnimationController.cpp: (WebCore::blendFunc): (WebCore::ImplicitAnimation::animate):
  • rendering/Length.h: (WebCore::Length::blend):
  • rendering/RenderStyle.cpp: (WebCore::StyleTransformData::operator==): (WebCore::TransformOperations::operator==): (WebCore::blendLengths): (WebCore::ScaleTransformOperation::blend): (WebCore::RotateTransformOperation::blend): (WebCore::SkewTransformOperation::blend): (WebCore::TranslateTransformOperation::blend): (WebCore::MatrixTransformOperation::blend):
  • rendering/RenderStyle.h: (WebCore::TransformOperations::operator!=): (WebCore::TransformOperations::isEmpty): (WebCore::TransformOperations::size): (WebCore::TransformOperations::operator[]): (WebCore::TransformOperations::append): (WebCore::RenderStyle::transform): (WebCore::RenderStyle::setTransform): (WebCore::RenderStyle::initialTransform):
7:11 PM Changeset in webkit [27282] by antti
  • 2 edits in trunk/WebCore

Another Qt/GTK build fix.

  • bindings/js/JSHTMLElementWrapperFactory.cpp:
6:51 PM Changeset in webkit [27281] by antti
  • 2 edits in trunk/WebCore

Attempt to fix Qt/GTK build.

  • WebCore.pro:
6:27 PM Changeset in webkit [27280] by justing
  • 11 edits
    10 adds in trunk

WebCore:

Reviewed by Darin Adler.

<rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData


We were trying to insert a tab into a br, after the br incorrectly ended up inside
a tab span.


  • editing/DeleteButtonController.cpp: (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
  • editing/DeleteSelectionCommand.cpp: (WebCore::isTableRow): Ditto.
  • editing/IndentOutdentCommand.cpp: (WebCore::isIndentBlockquote): Ditto. (WebCore::isListOrIndentBlockquote): Ditto.
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from doApply here. (WebCore::InsertLineBreakCommand::doApply): Don't upstream() the insertion position. upstream()ing it will only have an effect when the insertion position is the first in its paragraph (since we canonicalize VisiblePositions to the upstream() candidate). In this start of paragraph case, upstream() can move outside inline elements like tab spans or elements that might have a different whitespace mode (added two test cases to cover these). Moved code to decide whether to insert a br or a '\n' to its own method. Removed special case code for inserting at a position inside a tab span. We instead adjust the insertion position before insertion if it is inside a tab span and handle insertion in the appropriate if-block. This fixes a bug where we would only insert one line break when two were needed (added a testcase). Removed special case code for inserting before and after tables and horizontal rules. We handle these insertions in the appropriate if-block.
  • editing/InsertLineBreakCommand.h:
  • editing/ReplaceSelectionCommand.cpp: (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
  • editing/htmlediting.cpp: (WebCore::isContentEditable): Ditto. (WebCore::isBlock): Ditto. (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function that takes in a const Node*. (WebCore::isTabSpanTextNode): Check to see that the node actually a text node, and not, say, a br.
  • editing/htmlediting.h:
  • editing/markup.cpp: (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*. (WebCore::elementHasTextDecorationProperty): Ditto.

LayoutTests:

Reviewed by Darin Adler.

<rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData

  • editing/inserting/5549929-1-expected.txt: Added.
  • editing/inserting/5549929-1.html: Added.
  • editing/inserting/5549929-2.html: Added.
  • editing/inserting/5549929-3.html: Added.
  • platform/mac/editing/inserting/5549929-2-expected.checksum: Added.
  • platform/mac/editing/inserting/5549929-2-expected.png: Added.
  • platform/mac/editing/inserting/5549929-2-expected.txt: Added.
  • platform/mac/editing/inserting/5549929-3-expected.checksum: Added.
  • platform/mac/editing/inserting/5549929-3-expected.png: Added.
  • platform/mac/editing/inserting/5549929-3-expected.txt: Added.
6:23 PM Changeset in webkit [27279] by antti
  • 1 edit
    3 adds in trunk/WebCore

Reviewed by NOBODY.

Add files missing from previous commit.

  • html/VoidCallback.cpp: Added. (VoidCallback::VoidCallback): (VoidCallback::~VoidCallback): (VoidCallback::handleEvent): (VoidCallback::execute): (VoidCallback::operator==): (WebCore::toVoidCallback):
  • html/VoidCallback.h: Added.
  • html/VoidCallback.idl: Added.
6:08 PM Changeset in webkit [27278] by ddkilzer
  • 5 edits in trunk

WebCore:

Generated files missing from WebCore's Xcode project file
<http://bugs.webkit.org/show_bug.cgi?id=15406>

Reviewed by Darin.

Added the following files to the Xcode project file (note that
JSHTMLInputElementBaseTable.cpp is used as a header file):

  • DOMCSSStyleSheetPrivate.h
  • DOMEventPrivate.h
  • DOMHTMLCollectionPrivate.h
  • DOMHTMLEmbedElementPrivate.h
  • DOMHTMLIFrameElementPrivate.h
  • DOMHTMLObjectElementPrivate.h
  • DOMHTMLSelectElementPrivate.h
  • DOMTextEventInternal.h
  • JSHTMLInputElementBaseTable.cpp
  • DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h since their generated code was not used.
  • WebCore.xcodeproj/project.pbxproj: Added missing header files.

WebKit:

Generated files missing from WebCore's Xcode project file
<http://bugs.webkit.org/show_bug.cgi?id=15406>

Reviewed by Darin.

Added the following private header files to MigrateHeaders.make:

  • DOMCSSStyleSheetPrivate.h
  • DOMEventPrivate.h
  • DOMHTMLCollectionPrivate.h
  • DOMHTMLEmbedElementPrivate.h
  • DOMHTMLIFrameElementPrivate.h
  • DOMHTMLObjectElementPrivate.h
  • DOMHTMLSelectElementPrivate.h
  • MigrateHeaders.make:
6:03 PM Changeset in webkit [27277] by antti
  • 31 edits
    28 adds in trunk/WebCore

Rubber stamped by Adele.

Initial media (<video> and <audio>) support from feature branch and
QTKit based platform implementation.


This will need to be updated to match current draft specification.

  • Configurations/WebCore.xcconfig:
  • DerivedSources.make:
  • WebCore.base.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSEventCustom.cpp: (WebCore::toJS):
  • bindings/js/JSHTMLAudioElementConstructor.cpp: Added. (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor): (WebCore::JSHTMLAudioElementConstructor::implementsConstruct): (WebCore::JSHTMLAudioElementConstructor::construct):
  • bindings/js/JSHTMLAudioElementConstructor.h: Added.
  • bindings/js/JSHTMLElementWrapperFactory.cpp: (WebCore::createJSHTMLWrapper):
  • bindings/js/kjs_window.cpp: (KJS::Window::getValueProperty):
  • bindings/js/kjs_window.h: (KJS::Window::):
  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/Document.cpp: (WebCore::Document::createEvent): (WebCore::Document::willSaveToCache): (WebCore::Document::didRestoreFromCache): (WebCore::Document::registerForCacheCallbacks): (WebCore::Document::unregisterForCacheCallbacks):
  • dom/Document.h:
  • dom/Element.cpp: (WebCore::Element::setBooleanAttribute):
  • dom/Element.h: (WebCore::Element::willSaveToCache):
  • dom/Event.cpp: (WebCore::Event::isProgressEvent):
  • dom/Event.h:
  • dom/EventNames.h:
  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchProgressEvent):
  • dom/EventTargetNode.h:
  • dom/ProgressEvent.cpp: Added. (WebCore::ProgressEvent::ProgressEvent): (WebCore::ProgressEvent::initProgressEvent): (WebCore::ProgressEvent::initProgressEventNS):
  • dom/ProgressEvent.h: Added. (WebCore::ProgressEvent::lengthComputable): (WebCore::ProgressEvent::loaded): (WebCore::ProgressEvent::total): (WebCore::ProgressEvent::isProgressEvent):
  • dom/ProgressEvent.idl: Added.
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage):
  • html/HTMLAttributeNames.in:
  • html/HTMLAudioElement.cpp: Added. (WebCore::HTMLAudioElement::HTMLAudioElement):
  • html/HTMLAudioElement.h: Added. (WebCore::HTMLAudioElement::tagPriority):
  • html/HTMLAudioElement.idl: Added.
  • html/HTMLElement.cpp: (WebCore::inlineTagList):
  • html/HTMLElementFactory.cpp: (WebCore::audioConstructor): (WebCore::videoConstructor): (WebCore::sourceConstructor): (WebCore::createFunctionMap):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement): (WebCore::HTMLInputElement::setInputType): (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
  • html/HTMLMediaElement.cpp: Added. (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::~HTMLMediaElement): (WebCore::HTMLMediaElement::checkDTD): (WebCore::HTMLMediaElement::rendererIsNeeded): (WebCore::HTMLMediaElement::createRenderer): (WebCore::HTMLMediaElement::insertedIntoDocument): (WebCore::HTMLMediaElement::removedFromDocument): (WebCore::HTMLMediaElement::scheduleLoad): (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): (WebCore::HTMLMediaElement::dispatchEventAsync): (WebCore::HTMLMediaElement::loadTimerFired): (WebCore::HTMLMediaElement::asyncEventTimerFired): (WebCore::serializeTimeOffset): (WebCore::parseTimeOffset): (WebCore::HTMLMediaElement::getTimeOffsetAttribute): (WebCore::HTMLMediaElement::setTimeOffsetAttribute): (WebCore::HTMLMediaElement::error): (WebCore::HTMLMediaElement::src): (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc): (WebCore::HTMLMediaElement::currentSrc): (WebCore::HTMLMediaElement::networkState): (WebCore::HTMLMediaElement::bufferingRate): (WebCore::HTMLMediaElement::load): (WebCore::HTMLMediaElement::movieNetworkStateChanged): (WebCore::HTMLMediaElement::movieReadyStateChanged): (WebCore::HTMLMediaElement::setReadyState): (WebCore::HTMLMediaElement::progressEventTimerFired): (WebCore::HTMLMediaElement::seek): (WebCore::HTMLMediaElement::readyState): (WebCore::HTMLMediaElement::seeking): (WebCore::HTMLMediaElement::currentTime): (WebCore::HTMLMediaElement::setCurrentTime): (WebCore::HTMLMediaElement::duration): (WebCore::HTMLMediaElement::paused): (WebCore::HTMLMediaElement::defaultPlaybackRate): (WebCore::HTMLMediaElement::setDefaultPlaybackRate): (WebCore::HTMLMediaElement::playbackRate): (WebCore::HTMLMediaElement::setPlaybackRate): (WebCore::HTMLMediaElement::ended): (WebCore::HTMLMediaElement::autoplay): (WebCore::HTMLMediaElement::setAutoplay): (WebCore::HTMLMediaElement::play): (WebCore::HTMLMediaElement::pause): (WebCore::HTMLMediaElement::loopCount): (WebCore::HTMLMediaElement::setLoopCount): (WebCore::HTMLMediaElement::start): (WebCore::HTMLMediaElement::setStart): (WebCore::HTMLMediaElement::end): (WebCore::HTMLMediaElement::setEnd): (WebCore::HTMLMediaElement::loopStart): (WebCore::HTMLMediaElement::setLoopStart): (WebCore::HTMLMediaElement::loopEnd): (WebCore::HTMLMediaElement::setLoopEnd): (WebCore::HTMLMediaElement::currentLoop): (WebCore::HTMLMediaElement::setCurrentLoop): (WebCore::HTMLMediaElement::controls): (WebCore::HTMLMediaElement::setControls): (WebCore::HTMLMediaElement::volume): (WebCore::HTMLMediaElement::setVolume): (WebCore::HTMLMediaElement::muted): (WebCore::HTMLMediaElement::setMuted): (WebCore::HTMLMediaElement::pickMedia): (WebCore::HTMLMediaElement::checkIfSeekNeeded): (WebCore::HTMLMediaElement::movieVolumeChanged): (WebCore::HTMLMediaElement::movieDidEnd): (WebCore::HTMLMediaElement::movieCuePointReached): (WebCore::HTMLMediaElement::addCuePoint): (WebCore::HTMLMediaElement::removeCuePoint): (WebCore::HTMLMediaElement::buffered): (WebCore::HTMLMediaElement::played): (WebCore::HTMLMediaElement::seekable): (WebCore::HTMLMediaElement::effectiveStart): (WebCore::HTMLMediaElement::effectiveEnd): (WebCore::HTMLMediaElement::effectiveLoopStart): (WebCore::HTMLMediaElement::effectiveLoopEnd): (WebCore::HTMLMediaElement::activelyPlaying): (WebCore::HTMLMediaElement::endedPlayback): (WebCore::HTMLMediaElement::willSaveToCache): (WebCore::HTMLMediaElement::didRestoreFromCache):
  • html/HTMLMediaElement.h: Added. (WebCore::HTMLMediaElement::movie): (WebCore::HTMLMediaElement::isVideo): (WebCore::HTMLMediaElement::): (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
  • html/HTMLMediaElement.idl: Added.
  • html/HTMLSourceElement.cpp: Added. (WebCore::HTMLSourceElement::HTMLSourceElement): (WebCore::HTMLSourceElement::~HTMLSourceElement): (WebCore::HTMLSourceElement::insertedIntoDocument): (WebCore::HTMLSourceElement::src): (WebCore::HTMLSourceElement::setSrc): (WebCore::HTMLSourceElement::media): (WebCore::HTMLSourceElement::setMedia): (WebCore::HTMLSourceElement::type): (WebCore::HTMLSourceElement::setType):
  • html/HTMLSourceElement.h: Added. (WebCore::HTMLSourceElement::endTagRequirement): (WebCore::HTMLSourceElement::tagPriority):
  • html/HTMLSourceElement.idl: Added.
  • html/HTMLTagNames.in:
  • html/HTMLVideoElement.cpp: Added. (WebCore::HTMLVideoElement::HTMLVideoElement): (WebCore::HTMLVideoElement::videoWidth): (WebCore::HTMLVideoElement::videoHeight):
  • html/HTMLVideoElement.h: Added. (WebCore::HTMLVideoElement::tagPriority): (WebCore::HTMLVideoElement::isVideo):
  • html/HTMLVideoElement.idl: Added.
  • html/MediaError.h: Added. (WebCore::MediaError::): (WebCore::MediaError::MediaError): (WebCore::MediaError::code):
  • html/MediaError.idl: Added.
  • html/TimeRanges.cpp: Added. (TimeRanges::TimeRanges): (TimeRanges::start): (TimeRanges::end): (TimeRanges::add): (TimeRanges::contain):
  • html/TimeRanges.h: Added. (WebCore::TimeRanges::TimeRanges): (WebCore::TimeRanges::length): (WebCore::TimeRanges::Range::Range):
  • html/TimeRanges.idl: Added.
  • page/DOMWindow.idl:
  • platform/MIMETypeRegistry.cpp: (WebCore::initialiseSupportedMovieMIMETypes): (WebCore::initialiseMIMETypeRegistry): (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType): (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
  • platform/MIMETypeRegistry.h:
  • platform/graphics/Movie.cpp: Added. (WebCore::Movie::Movie): (WebCore::Movie::~Movie): (WebCore::Movie::load): (WebCore::Movie::cancelLoad): (WebCore::Movie::play): (WebCore::Movie::pause): (WebCore::Movie::duration): (WebCore::Movie::currentTime): (WebCore::Movie::seek): (WebCore::Movie::paused): (WebCore::Movie::seeking): (WebCore::Movie::naturalSize): (WebCore::Movie::hasVideo): (WebCore::Movie::networkState): (WebCore::Movie::readyState): (WebCore::Movie::volume): (WebCore::Movie::setVolume): (WebCore::Movie::rate): (WebCore::Movie::setRate): (WebCore::Movie::muted): (WebCore::Movie::setMuted): (WebCore::Movie::dataRate): (WebCore::Movie::setEndTime): (WebCore::Movie::addCuePoint): (WebCore::Movie::removeCuePoint): (WebCore::Movie::clearCuePoints): (WebCore::Movie::maxTimeBuffered): (WebCore::Movie::maxTimeSeekable): (WebCore::Movie::bytesLoaded): (WebCore::Movie::totalBytesKnown): (WebCore::Movie::totalBytes): (WebCore::Movie::setRect): (WebCore::Movie::visible): (WebCore::Movie::setVisible): (WebCore::Movie::paint): (WebCore::Movie::getSupportedTypes): (WebCore::Movie::networkStateChanged): (WebCore::Movie::readyStateChanged): (WebCore::Movie::volumeChanged): (WebCore::Movie::didEnd): (WebCore::Movie::cuePointReached):
  • platform/graphics/Movie.h: Added. (WebCore::MovieClient::~MovieClient): (WebCore::MovieClient::movieNetworkStateChanged): (WebCore::MovieClient::movieReadyStateChanged): (WebCore::MovieClient::movieVolumeChanged): (WebCore::MovieClient::movieDidEnd): (WebCore::MovieClient::movieCuePointReached): (WebCore::Movie::parentWidget): (WebCore::Movie::setParentWidget): (WebCore::Movie::rect): (WebCore::Movie::):
  • platform/graphics/mac/MoviePrivateQTKit.h: Added.
  • platform/graphics/mac/MoviePrivateQTKit.mm: Added. (WebCore::MoviePrivate::MoviePrivate): (WebCore::MoviePrivate::~MoviePrivate): (WebCore::MoviePrivate::createQTMovie): (WebCore::MoviePrivate::createQTMovieView): (WebCore::MoviePrivate::createQTTime): (WebCore::MoviePrivate::load): (WebCore::MoviePrivate::play): (WebCore::MoviePrivate::pause): (WebCore::MoviePrivate::duration): (WebCore::MoviePrivate::currentTime): (WebCore::MoviePrivate::seek): (WebCore::MoviePrivate::setEndTime): (WebCore::MoviePrivate::addCuePoint): (WebCore::MoviePrivate::removeCuePoint): (WebCore::MoviePrivate::clearCuePoints): (WebCore::MoviePrivate::startCuePointTimerIfNeeded): (WebCore::MoviePrivate::cancelSeek): (WebCore::MoviePrivate::seekTimerFired): (WebCore::MoviePrivate::cuePointTimerFired): (WebCore::MoviePrivate::paused): (WebCore::MoviePrivate::seeking): (WebCore::MoviePrivate::naturalSize): (WebCore::MoviePrivate::hasVideo): (WebCore::MoviePrivate::setVolume): (WebCore::MoviePrivate::setMuted): (WebCore::MoviePrivate::setRate): (WebCore::MoviePrivate::dataRate): (WebCore::MoviePrivate::networkState): (WebCore::MoviePrivate::readyState): (WebCore::MoviePrivate::maxTimeBuffered): (WebCore::MoviePrivate::maxTimeSeekable): (WebCore::MoviePrivate::maxTimeLoaded): (WebCore::MoviePrivate::bytesLoaded): (WebCore::MoviePrivate::totalBytesKnown): (WebCore::MoviePrivate::totalBytes): (WebCore::MoviePrivate::cancelLoad): (WebCore::MoviePrivate::updateStates): (WebCore::MoviePrivate::loadStateChanged): (WebCore::MoviePrivate::rateChanged): (WebCore::MoviePrivate::sizeChanged): (WebCore::MoviePrivate::timeChanged): (WebCore::MoviePrivate::volumeChanged): (WebCore::MoviePrivate::didEnd): (WebCore::MoviePrivate::setRect): (WebCore::MoviePrivate::setVisible): (WebCore::MoviePrivate::paint): (WebCore::MoviePrivate::getSupportedTypes): (-[WebCoreMovieObserver loadStateChanged:]): (-[WebCoreMovieObserver rateChanged:]): (-[WebCoreMovieObserver sizeChanged:]): (-[WebCoreMovieObserver timeChanged:]): (-[WebCoreMovieObserver volumeChanged:]): (-[WebCoreMovieObserver didEnd:]): (-[WebCoreMovieObserver setCallback:WebCore::]):
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::collectLayers):
  • rendering/RenderVideo.cpp: Added. (WebCore::RenderVideo::RenderVideo): (WebCore::RenderVideo::~RenderVideo): (WebCore::RenderVideo::movie): (WebCore::RenderVideo::videoSizeChanged): (WebCore::RenderVideo::paint): (WebCore::RenderVideo::layout): (WebCore::RenderVideo::updateFromElement): (WebCore::RenderVideo::updateMovie): (WebCore::RenderVideo::isWidthSpecified): (WebCore::RenderVideo::isHeightSpecified): (WebCore::RenderVideo::calcReplacedWidth): (WebCore::RenderVideo::calcReplacedHeight): (WebCore::RenderVideo::calcAspectRatioWidth): (WebCore::RenderVideo::calcAspectRatioHeight): (WebCore::RenderVideo::calcPrefWidths):
  • rendering/RenderVideo.h: Added. (WebCore::RenderVideo::renderName):
6:02 PM Changeset in webkit [27276] by weinig
  • 105 edits in trunk/WebCore

Reviewed by Adam Roben.

Add Interface and Class UUIDs to the IDLs in preparation of adding
autogeneration of the COM DOM bindings.

  • bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
  • css/CSSCharsetRule.idl:
  • css/CSSFontFaceRule.idl:
  • css/CSSImportRule.idl:
  • css/CSSMediaRule.idl:
  • css/CSSPageRule.idl:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSRuleList.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSStyleRule.idl:
  • css/CSSStyleSheet.idl:
  • css/CSSUnknownRule.idl:
  • css/CSSValue.idl:
  • css/CSSValueList.idl:
  • css/Counter.idl:
  • css/MediaList.idl:
  • css/RGBColor.idl:
  • css/Rect.idl:
  • css/StyleSheet.idl:
  • css/StyleSheetList.idl:
  • dom/Attr.idl:
  • dom/CDATASection.idl:
  • dom/CharacterData.idl:
  • dom/Comment.idl:
  • dom/DOMImplementation.idl:
  • dom/Document.idl:
  • dom/DocumentFragment.idl:
  • dom/DocumentType.idl:
  • dom/Element.idl:
  • dom/Entity.idl:
  • dom/EntityReference.idl:
  • dom/Event.idl:
  • dom/EventListener.idl:
  • dom/EventTarget.idl:
  • dom/NamedNodeMap.idl:
  • dom/Node.idl:
  • dom/NodeList.idl:
  • dom/Notation.idl:
  • dom/ProcessingInstruction.idl:
  • dom/Text.idl:
  • html/CanvasGradient.idl:
  • html/CanvasPattern.idl:
  • html/CanvasRenderingContext2D.idl:
  • html/HTMLAnchorElement.idl:
  • html/HTMLAppletElement.idl:
  • html/HTMLAreaElement.idl:
  • html/HTMLBRElement.idl:
  • html/HTMLBaseElement.idl:
  • html/HTMLBaseFontElement.idl:
  • html/HTMLBlockquoteElement.idl:
  • html/HTMLBodyElement.idl:
  • html/HTMLButtonElement.idl:
  • html/HTMLCanvasElement.idl:
  • html/HTMLCollection.idl:
  • html/HTMLDListElement.idl:
  • html/HTMLDirectoryElement.idl:
  • html/HTMLDivElement.idl:
  • html/HTMLDocument.idl:
  • html/HTMLElement.idl:
  • html/HTMLEmbedElement.idl:
  • html/HTMLFieldSetElement.idl:
  • html/HTMLFontElement.idl:
  • html/HTMLFormElement.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLFrameSetElement.idl:
  • html/HTMLHRElement.idl:
  • html/HTMLHeadElement.idl:
  • html/HTMLHeadingElement.idl:
  • html/HTMLHtmlElement.idl:
  • html/HTMLIFrameElement.idl:
  • html/HTMLImageElement.idl:
  • html/HTMLInputElement.idl:
  • html/HTMLIsIndexElement.idl:
  • html/HTMLLIElement.idl:
  • html/HTMLLabelElement.idl:
  • html/HTMLLegendElement.idl:
  • html/HTMLLinkElement.idl:
  • html/HTMLMapElement.idl:
  • html/HTMLMarqueeElement.idl:
  • html/HTMLMenuElement.idl:
  • html/HTMLMetaElement.idl:
  • html/HTMLModElement.idl:
  • html/HTMLOListElement.idl:
  • html/HTMLObjectElement.idl:
  • html/HTMLOptGroupElement.idl:
  • html/HTMLOptionElement.idl:
  • html/HTMLOptionsCollection.idl:
  • html/HTMLParagraphElement.idl:
  • html/HTMLParamElement.idl:
  • html/HTMLPreElement.idl:
  • html/HTMLQuoteElement.idl:
  • html/HTMLScriptElement.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLStyleElement.idl:
  • html/HTMLTableCaptionElement.idl:
  • html/HTMLTableCellElement.idl:
  • html/HTMLTableColElement.idl:
  • html/HTMLTableElement.idl:
  • html/HTMLTableRowElement.idl:
  • html/HTMLTableSectionElement.idl:
  • html/HTMLTextAreaElement.idl:
  • html/HTMLTitleElement.idl:
  • html/HTMLUListElement.idl:
6:01 PM Changeset in webkit [27275] by kmccullo
  • 6 edits in trunk

JavaScriptCore:

Reviewed by Adam and Geoff.

  • Added a new cast so all the casts are in the same place.
  • API/APICast.h: (toGlobalRef):

win:

Reviewed by Adam and Geoff.

  • Added the globalContext method so Drosera can ask a WebFrame for its context.
  • Interfaces/IWebFrame.idl:
  • WebFrame.cpp:
  • WebFrame.h:
5:58 PM Changeset in webkit [27274] by adele
  • 2 edits in trunk/WebCore

RS by Darin.

  • page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
5:48 PM Changeset in webkit [27273] by antti
  • 2 edits in trunk/WebKitTools

Reviewed by Maciej.


Build media support by default on OSX only.

  • Scripts/build-webkit:
5:45 PM Changeset in webkit [27272] by antti
  • 2 edits in trunk/WebKit

Reviewed by Maciej.


Some SPIs for media support.

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
4:19 PM Changeset in webkit [27271] by timothy@apple.com
  • 1 edit in trunk/WebKit/StringsNotToBeLocalized.txt

Update WebKit/StringsNotToBeLocalized.txt.

4:15 PM Changeset in webkit [27270] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

Fixed <rdar://problem/5567504> shift/reduce conflict introduced in r24457


JS tests, including

ecma_2/Statements/dowhile-001.js
ecma_2/Statements/dowhile-002.js
ecma_2/Statements/dowhile-003.js
ecma_2/Statements/dowhile-004.js
ecma_2/Statements/dowhile-005.js
ecma_2/Statements/dowhile-006.js
ecma_2/Statements/dowhile-007.js
js1_2/statements/do_while.js

and layout tests, including

do-while-expression-value.html
do-while-semicolon.html
do-while-without-semicolon.html


pass.


  • kjs/grammar.y: Use the explicit "error" production, as we do with other automatic semicolon insertions, to disambiguate "do { } while();" from "do { } while()" followed by ";" (the empty statement).
4:05 PM Changeset in webkit [27269] by kmccullo
  • 1 edit in trunk/WebKitTools/ChangeLog
  • Made Adam the reviewer for a previous checkin. Not sure how it didn't get caught by the pre-commit hooks.
3:54 PM Changeset in webkit [27268] by kmccullo
  • 8 edits
    1 delete in trunk/WebKitTools

Reviewed by Adam.

  • This is a collection of relatively unrelated changes and cleanups to Drosera to prepare it for interacting with WebKit. A lot of these changes are just correcting mistakes, for example removing included headers that are no longer needed.
  • Drosera/DebuggerDocument.h: Added accessor for the ServerConnection this will be needed by the DebuggerClient. (DebuggerDocument::server):
  • Drosera/win/BaseDelegate.h: Removed unnecessary include.
  • Drosera/win/DebuggerClient.cpp: (DebuggerClient::didFinishLoadForFrame): Finished implementing. (DebuggerClient::didReceiveTitle): Added comment about its purpose. (DebuggerClient::createWebViewWithRequest): Added comment about its purpose.
  • Drosera/win/DebuggerClient.h: Removed unnecessary include, and forward declarations. (DebuggerClient::webViewLoaded): Moved.
  • Drosera/win/Drosera.cpp: Moved a function from the HelperFunctions file, since this was the only place it was used. (cfStringToBSTR):
  • Drosera/win/Drosera.h: Cleaned up the includes.
  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Removed HelperFunctions.h
  • Drosera/win/HelperFunctions.h: Removed.
3:52 PM JavaScript performance improvement ideas edited by mjs@apple.com
(diff)
3:46 PM JavaScript performance improvement ideas edited by ggaren@apple.com
(diff)
3:12 PM Changeset in webkit [27267] by kmccullo
  • 3 edits in trunk/WebKitTools

Reviewed by NOBODY (OOPS!).

  • Small cleanup in the ServerConnection class.
  • Drosera/win/ServerConnection.cpp: Added comments, moved some functions and added an include. (ServerConnection::currentFrame): (ServerConnection::getCallerFrame):
  • Drosera/win/ServerConnection.h: Added comments, moved some functions, made a pointer into a COMPtr, and cleaned up the includes.
2:26 PM Changeset in webkit [27266] by timothy@apple.com
  • 17 edits in trunk

WebCore:

Reviewed by John Sullivan.

  • Allow showing and closing the inspector programatically.
  • Add showConsole() and showTimeline() methods.
  • WebCore.base.exp: Add exports for WebKit.
  • page/InspectorController.cpp: (WebCore::callSimpleFunction): Renamed from callClearFunction(). (WebCore::unloading): Renamed to close(). (WebCore::InspectorController::InspectorController): (WebCore::InspectorController::inspect): Moved showing code to show(). (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed. (WebCore::InspectorController::show): Code factored out of inspect(). (WebCore::InspectorController::showConsole): Call show() and the JS showConsole(). (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline(). (WebCore::InspectorController::close): (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction. (WebCore::InspectorController::clearDatabaseScriptResources): Ditto. (WebCore::InspectorController::clearScriptConsoleMessages): Ditto. (WebCore::InspectorController::clearNetworkTimeline): Ditto.
  • page/InspectorController.h: Add and rename methods.
  • page/inspector/inspector.js: Add showConsole() and showTimeline().

WebKit:

Reviewed by John Sullivan.

Various semi-related changes:

  • A WebView can now be asked for it's WebInspector. There is one WebInspector per WebView.
  • Refactor the WebInspector class and move obsolete methods to a special category.
  • Add new WebInspector methods to show, hide and show the console/timeline panels.
  • Add an isDisabled method to WebCache.
  • Allow WebLocalizableStrings.h to be used in C files.
  • Misc/WebCache.h: Add isDisabled.
  • Misc/WebCache.mm: (+[WebCache isDisabled]): New method.
  • Misc/WebLocalizableStrings.h: Changes to allow use in plain C files.
  • WebCoreSupport/WebInspectorClient.mm: (-[WebInspectorWindowController showWindow:]): Call super if already visible so the window will be ordered front. (-[WebInspectorWindowController showWebInspector:]): Method used by menu items, so they are enabled and work when the Inspector window is key. (-[WebInspectorWindowController showErrorConsole:]): Ditto. (-[WebInspectorWindowController showNetworkTimeline:]): Ditto.
  • WebView/WebView.mm: (-[WebViewPrivate dealloc]): Release the WebInspector. (-[WebView _close]): Call webViewClosed on the WebInspector. (-[WebView inspector]): Create a WebInspector if needed and return it.
  • WebView/WebViewPrivate.h: Add the inspector method.

WebKitTools:

Reviewed by John Sullivan.


  • Place the Localizable.strings file in mac or win directories if that location exists.
  • Also look for UI_STRING in .c files.
  • Scripts/extract-localizable-strings:
2:18 PM Changeset in webkit [27265] by adele
  • 2 edits in trunk/WebCore

Reviewed by Sam.

Build fix.

  • page/AnimationController.cpp: (WebCore::blendFunc):
2:05 PM Changeset in webkit [27264] by adele
  • 21 edits
    1 add in trunk

WebCore:

Reviewed by Darin.

WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
<rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields

Test: manual-tests/password-caps-lock.html

  • WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
  • page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
  • page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
  • page/EventHandler.h:
  • platform/PlatformKeyboardEvent.h:
  • platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
  • platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::RenderTextControl): (WebCore::RenderTextControl::paint): Added. If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background. (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state. (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field, and the frame is active, and the element is focused, and the caps lock is on. Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
  • rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
  • rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
  • rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added. Calls wkDrawCapsLockIndicator.
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added. Calls paintThemePart for the CapsLockPart.
  • rendering/RenderThemeSafari.h:

WebKit:

Reviewed by Darin.

WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
<rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields

  • WebView/WebHTMLView.mm: (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field. (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged. (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this.

win:

Reviewed by Darin.

WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
<rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields

  • WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
1:20 PM Changeset in webkit [27263] by hyatt
  • 16 edits in trunk/WebCore

Land support for implicit animation in CSS.


Reviewed by mitz, darin

  • css/CSSParser.cpp: (WebCore::CSSParser::parseTimingFunctionValue): (WebCore::CSSParser::parseTransitionTimingFunction): (WebCore::CSSParser::parseTransitionProperty):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapTransitionDuration): (WebCore::CSSStyleSelector::mapTransitionRepeatCount): (WebCore::CSSStyleSelector::mapTransitionTimingFunction): (WebCore::CSSStyleSelector::mapTransitionProperty):
  • css/CSSTimingFunctionValue.h: (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue): (WebCore::CSSTimingFunctionValue::x1): (WebCore::CSSTimingFunctionValue::y1): (WebCore::CSSTimingFunctionValue::x2): (WebCore::CSSTimingFunctionValue::y2):
  • dom/Element.cpp: (WebCore::Element::styleForRenderer): (WebCore::Element::createRenderer):
  • dom/Node.cpp: (WebCore::Node::createRendererIfNeeded): (WebCore::Node::setRenderStyle):
  • page/AnimationController.cpp: (WebCore::CurveData::CurveData): (WebCore::CurveData::sampleCurveX): (WebCore::CurveData::sampleCurveY): (WebCore::CurveData::sampleCurveDerivativeX): (WebCore::CurveData::solveCurveX): (WebCore::solveEpsilon): (WebCore::solveCubicBezierFunction): (WebCore::ImplicitAnimation::finished): (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation): (WebCore::CompositeImplicitAnimation::hasAnimationForProperty): (WebCore::ImplicitAnimation::ImplicitAnimation): (WebCore::ImplicitAnimation::~ImplicitAnimation): (WebCore::ImplicitAnimation::reset): (WebCore::ImplicitAnimation::progress): (WebCore::blendFunc): (WebCore::ImplicitAnimation::animate): (WebCore::CompositeImplicitAnimation::animate): (WebCore::CompositeImplicitAnimation::animating): (WebCore::CompositeImplicitAnimation::reset): (WebCore::AnimationControllerPrivate::hasImplicitAnimations): (WebCore::AnimationControllerPrivate::AnimationControllerPrivate): (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate): (WebCore::AnimationControllerPrivate::get): (WebCore::AnimationControllerPrivate::clear): (WebCore::AnimationControllerPrivate::updateTimer): (WebCore::AnimationControllerPrivate::timerFired): (WebCore:::m_data): (WebCore::AnimationController::~AnimationController): (WebCore::AnimationController::cancelImplicitAnimations): (WebCore::AnimationController::updateImplicitAnimations): (WebCore::AnimationController::suspendAnimations): (WebCore::AnimationController::resumeAnimations):
  • page/AnimationController.h:
  • page/Frame.cpp: (WebCore::FramePrivate::FramePrivate):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::setStyle): (WebCore::RenderBox::destroy):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setAnimatableStyle): (WebCore::RenderObject::destroy):
  • rendering/RenderObject.h:
  • rendering/RenderStyle.h: (WebCore::TimingFunction::TimingFunction): (WebCore::TimingFunction::operator==): (WebCore::TimingFunction::x1): (WebCore::TimingFunction::y1): (WebCore::TimingFunction::x2): (WebCore::TimingFunction::y2): (WebCore::TimingFunction::type): (WebCore::Transition::transitionProperty): (WebCore::Transition::setTransitionProperty): (WebCore::RenderStyle::initialTransitionProperty):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
11:41 AM Changeset in webkit [27262] by kmccullo
  • 9 edits in trunk/WebKitTools

Reviewed by Adam.

  • Set the eol-style to native and made all the line endings the same so that I avoid messy diffs that show eol changes.
  • Drosera/win/ServerConnection.cpp: (ServerConnection::didParseSource): (ServerConnection::didEnterCallFrame): (ServerConnection::willExecuteStatement): (ServerConnection::willLeaveCallFrame): (ServerConnection::exceptionWasRaised):
11:15 AM Changeset in webkit [27261] by kmccullo
  • 5 edits in trunk/WebKitTools

Reviewed by Adam.

  • Drosera/win/DebuggerDocumentPlatform.cpp:Implemented much of the functionality that could not have existed previously without the new interfaces. (JSValueRefCreateWithBSTR): Added a helper function to easily convert from a BSTR to a JSValueRef. (DebuggerDocument::platformEvaluateScript): Implemented. (DebuggerDocument::getPlatformCurrentFunctionStack): Implemented. (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): Implemented. (DebuggerDocument::platformValueForScopeVariableNamed): Implemented.
  • Drosera/win/HelperFunctions.h: Cleaned up some comments.
  • Drosera/win/ServerConnection.cpp: Added a helper function. (ServerConnection::getCallerFrame):
  • Drosera/win/ServerConnection.h: Added a helper function.
10:49 AM Changeset in webkit [27260] by aroben
  • 2 edits in trunk/LayoutTests

Add another failing test to the Windows Skipped file

  • platform/win/Skipped:
10:39 AM Changeset in webkit [27259] by weinig
  • 5 edits in trunk/LayoutTests

Rubber-stamped by Adam Roben.

Update test to not intermittently fail.

  • http/tests/security/host-compare-case-insensitive-expected.txt:
  • http/tests/security/host-compare-case-insensitive.html:
  • http/tests/security/resources/cross-frame-iframe.html:
  • http/tests/security/resources/localhost-accesssor.html:
10:29 AM Changeset in webkit [27258] by bdakin
  • 2 edits
    2 adds in trunk/LayoutTests

Rubber stamped by Geoff.

This test needed updated results from my patch last night. It has
<parsererror> tags, which are now block instead on inline.

  • platform/mac/fast/frames/onlyCommentInIFrame-expected.checksum: Replaced.
  • platform/mac/fast/frames/onlyCommentInIFrame-expected.png: Replaced.
  • platform/mac/fast/frames/onlyCommentInIFrame-expected.txt:
8:16 AM Changeset in webkit [27257] by bdakin
  • 2 edits
    1 add in trunk/LayoutTests

Rubber stamped by Geoff.

Fixing two layout test mixups from my patch last night.

I added this test, but checked in old results:

  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.txt:


I removed the results of this test by accident:

  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.txt: Added.

Oct 29, 2007:

11:29 PM Changeset in webkit [27256] by mjs
  • 1 edit
    1 add in trunk/SunSpider

Reviewed by Eric.


  • Added list of ECMAScript3 features that SunSpider does not cover currently.
  • UNCOVERED: Added.
10:36 PM Changeset in webkit [27255] by oliver
  • 5 edits in trunk/JavaScriptCore

Debranching remaining assignment nodes, and miscellaneous cleanup

Reviewed by Maciej.

Split read-modify code paths out of AssignBracketNode and AssignDotNode
Removed now unnecessary check for write-only assignment in ReadModifyLocalVarNode
and ReadModifyResolveNode evaluate methods

Leads to a 1% gain in SunSpider.

10:27 PM Changeset in webkit [27254] by bdakin
  • 11 edits
    30 adds
    1 delete in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5399614> anchor tag is not rendered without
text content, works in Firefox with CSS background-image (13237)

This patch allows empty inlines that have box decorations or width
from border/padding/margin to have line boxes.

  • rendering/bidi.cpp: (WebCore::inlineFlowAllowsLineBox): Convenience function that defines when we allow an inline flow to have a line box. (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox. (WebCore::shouldSkipWhitespaceAfterStartObject): New function to merge some shared code between list markers and empty inline flows that fall at the beginning of a line. (WebCore::RenderBlock::findNextLineBreak): Make flows more like list markers.

One interesting side effect of this bug appeared in our xhtml/svg
tests that generate parser error tags. The tag we generate was
actually an empty inline with box decorations. This patch causes
those inlines to draw now, and the parser errors looked strange. So
I changed it so that the parsererror tag is display:block. This
matches Firefox, and I think was the original intent of the tag
since that causes its red background and border to show up.

  • dom/XMLTokenizer.cpp: (WebCore::createXHTMLParserErrorHeader):

LayoutTests:

Reviewed by Hyatt.

New tests and new results for old tests for <rdar://problem/
5399614> anchor tag is not rendered without text content, works in
Firefox with CSS background-image (13237)

New tests:

  • fast/inline/drawStyledEmptyInlines.html: Added.
  • fast/inline/drawStyledEmptyInlinesWithWS.html: Added.
  • fast/inline/emptyInlinesWithinLists.html: Added.
  • fast/inline/styledEmptyInlinesWithBRs.html: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.checksum: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.png: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.txt: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.checksum: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.png: Added.
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.txt: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.checksum: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.png: Added.
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.txt: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.checksum: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.png: Added.
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.txt: Added.


New results for tests with <paserererrors> since <parsererror> is
now block.

  • platform/mac/fast/invalid/junk-data-expected.checksum: Replaced.
  • platform/mac/fast/invalid/junk-data-expected.png: Replaced.
  • platform/mac/fast/invalid/junk-data-expected.txt:
  • platform/mac/fast/invalid/missing-end-tag-expected.checksum: Replaced.
  • platform/mac/fast/invalid/missing-end-tag-expected.png: Replaced.
  • platform/mac/fast/invalid/missing-end-tag-expected.txt:
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.checksum: Replaced.
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.png: Replaced.
  • platform/mac/fast/parser/xhtml-alternate-entities-expected.txt:
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.checksum: Replaced.
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.png: Replaced.
  • platform/mac/fast/xsl/xslt-extra-content-at-end-expected.txt: Removed.
  • platform/mac/svg/custom/junk-data-expected.checksum: Replaced.
  • platform/mac/svg/custom/junk-data-expected.png: Replaced.
  • platform/mac/svg/custom/junk-data-expected.txt:
  • platform/mac/svg/custom/missing-xlink-expected.checksum: Replaced.
  • platform/mac/svg/custom/missing-xlink-expected.png: Replaced.
  • platform/mac/svg/custom/missing-xlink-expected.txt:
  • platform/mac/svg/hixie/error/012-expected.checksum: Replaced.
  • platform/mac/svg/hixie/error/012-expected.png: Replaced.
  • platform/mac/svg/hixie/error/012-expected.txt:
8:48 PM Changeset in webkit [27253] by mitz
  • 3 edits in trunk/WebCore

Reviewed by Dave Hyatt.

  • fix crashing tests fast/frames/inline-object-inside-frameset.html and fast/forms/form-hides-table.html
  • rendering/RenderBox.cpp: (WebCore::RenderBox::destroy):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
8:14 PM Changeset in webkit [27252] by oliver
  • 6 edits in trunk/JavaScriptCore

Debranching various Node::evaluate implementations

Reviewed by Maciej.

Split the read-modify-write assignment cases out of AssignResolveNode and into ReadModifyResolveNode
Split the increment and decrement cases for Prefix- and Postfix- ResolveNode, BracketNode, and DotNode

Gains 1.6% on SunSpider

7:56 PM Changeset in webkit [27251] by mitz
  • 4 edits
    5 adds in trunk

WebCore:

Reviewed by Adam Roben.

Test: fast/backgrounds/size/zero.html

  • platform/graphics/cg/ImageCG.cpp: (WebCore::Image::drawPattern): Added an ASSERT and an early return to guard against singular pattern transforms.
  • rendering/RenderBox.cpp: (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile size of 1x1.

LayoutTests:

Reviewed by Adam Roben.

  • fast/backgrounds/size/zero.html: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.checksum: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.png: Added.
  • platform/mac/fast/backgrounds/size/zero-expected.txt: Added.
7:44 PM Changeset in webkit [27250] by kmccullo
  • 8 edits
    3 adds in trunk/WebKit/win

Reviewed by Adam and Maciej.

  • Added the IWebScriptScope interface which is used by Drosera to get information and run contextually significant code with respect to the current JS stack frame.
  • Interfaces/IWebScriptCallFrame.idl: Line endings changed, not sure why but the real changes were to change the return type of scopeChain() and the return type and name of evaluateWebScript() to stringByEvaluatingJavaScriptFromString().
  • Interfaces/IWebScriptScope.idl: Added.
  • WebKit.vcproj/Interfaces.vcproj: Added the new interface.
  • WebKit.vcproj/WebKit.vcproj: Added the files for the new class.
  • WebKit.vcproj/WebKitGUID.vcproj: Added the new interfaces.
  • WebScriptCallFrame.cpp: Changed the return type to E_NOTIMPL and asserted so it would be obvious if I accidentally try to use one of these functions before it's implemented. (WebScriptCallFrame::caller): (WebScriptCallFrame::scopeChain): (WebScriptCallFrame::functionName): (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString):
  • WebScriptCallFrame.h: Changed the return types mentioned above.
  • WebScriptDebugServer.cpp: Also changed the return type to E_NOTIMPL. (WebScriptDebugServer::addListener): (WebScriptDebugServer::removeListener): (WebScriptDebugServer::step): (WebScriptDebugServer::pause): (WebScriptDebugServer::resume): (WebScriptDebugServer::isPaused):
  • WebScriptScope.cpp: Added. (WebScriptScope::WebScriptScope): (WebScriptScope::~WebScriptScope): (WebScriptScope::QueryInterface): (WebScriptScope::AddRef): (WebScriptScope::Release): (WebScriptScope::getVariableNames): (WebScriptScope::getValueForVariable):
  • WebScriptScope.h: Added.
7:18 PM Changeset in webkit [27249] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.


  • Include Vector.h in a way that actually works.
  • kjs/LocalStorage.h:
7:12 PM Changeset in webkit [27248] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.


  • Install LocalStorage.h as a private header.
6:55 PM Changeset in webkit [27247] by mjs
  • 2 edits in trunk/SunSpider

Reviewed by Oliver.


  • Give better error messages when sunspider-compare-results fails
  • sunspider-compare-results:
6:54 PM Changeset in webkit [27246] by alp
  • 2 edits in trunk/WebKit/gtk

Reviewed by Maciej.

Do not allow control to reach end of non-void functions

6:46 PM Changeset in webkit [27245] by alp
  • 1 edit in trunk/WebCore/ChangeLog

ChangeLog entry for r27244

6:44 PM Changeset in webkit [27244] by alp
  • 4 edits
    3 adds in trunk/WebCore

Reviewed by Maciej.

Add GTK+ convenience conversions for various primitives

6:37 PM Changeset in webkit [27243] by mjs
  • 3 edits in trunk/SunSpider

Reviewed by Darin.


  • fix Date tests to work in command-line SpiderMonkey
  • tests/date-format-tofte.js:
  • tests/date-format-xparb.js:
6:34 PM Changeset in webkit [27242] by mjs
  • 5 edits
    1 add in trunk/JavaScriptCore

Reviewed by Darin.


  • Define good VectorTraits for LocalStorage entry for 0.5% speed improvement on SunSpider.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/LocalStorage.h: Added. (KJS::LocalStorageEntry::LocalStorageEntry): (WTF::):
  • kjs/function.h:
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::processDeclarationsForFunctionCode):
6:31 PM Changeset in webkit [27241] by kmccullo
  • 1 edit in trunk/WebKitTools/ChangeLog

updated reviewers for my previous changelog.

6:30 PM Changeset in webkit [27240] by kmccullo
  • 6 edits in trunk/WebKitTools

Reviewed by Maciej and Adam.

  • Minor mac-side improvements including moving a function to a more appropriate location, fixing a warning, and correctly checking exceptions.
  • Drosera/DebuggerDocument.cpp: Corrected the exception checking. (DebuggerDocument::willExecuteStatement): (DebuggerDocument::didEnterCallFrame): (DebuggerDocument::willLeaveCallFrame): (DebuggerDocument::windowScriptObjectAvailable): (DebuggerDocument::callFunctionOnObject):
  • Drosera/mac/DebuggerClient.mm: Fixes a warning.
  • Drosera/mac/DebuggerDocumentPlatform.mm: Moved webScriptAttributeKeysForScriptObject to DebuggerDocumentPlatform because it doesn't require the ServerConnection at all. (NSStringCreateWithJSStringRef): Made an argument const. (JSValueRefCreateWithNSString): Made an argument const. (+[WebScriptObject webScriptAttributeKeysForScriptObject:]): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame):
  • Drosera/mac/ServerConnection.h: Moved aforementioned function.
  • Drosera/mac/ServerConnection.mm: Ditto. (-[ServerConnection webView:didLoadMainResourceForDataSource:]):
5:49 PM Changeset in webkit [27239] by weinig
  • 17 edits in trunk/LayoutTests

Rubber-stamped by Adam Roben.

Simplify the dataURL xxs tests.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url.html:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open.html:
5:34 PM Changeset in webkit [27238] by weinig
  • 3 edits in trunk/WebKitTools

Reviewed by Adam Roben.

Add a globalFlag property to the LayoutTestController to allow cross-domain indications.

  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (getGlobalFlagCallback): (setGlobalFlagCallback): (LayoutTestController::getJSClass): (LayoutTestController::staticValues):
  • DumpRenderTree/LayoutTestController.h: (LayoutTestController::globalFlag): (LayoutTestController::setGlobalFlag):
5:28 PM Changeset in webkit [27237] by darin
  • 4 edits in trunk

SunSpider:

Reviewed by Maciej.

  • sunspider: Added --shark20 option, to run Shark at its highest sample resolution instead of its default.

WebKitTools:

Reviewed by Maciej.

  • Scripts/run-sunspider: Added --shark20 option, to run Shark at its highest sample resolution instead of its default.
4:13 PM Changeset in webkit [27236] by honeycutt
  • 4 edits in trunk/WebCore

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

Reviewed by Anders.

Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
Beta for Mac)


I cannot reproduce this hang, but it is likely due to our not limiting
WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
unknown MIME type. The embed tag on the page is missing a type
attribute, so as fallback, we choose to load the Flash plugin based on
the file extension of "swf." However, we do not record this determined
MIME type, and so our quirks cannot be established.


Changed findPlugin() so that, if it fails to find a plugin for the
given MIME type, it will lookup the MIME type for the file extension -
overwriting its passed MIME type parameter - and search for a plugin
for that MIME type.

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return if the MIME type is empty (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace pluginForExtension. Returns a String with the MIME type for the file extension. Also, changed to use case-insensitive compares (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin for the given extension, overwrite the incoming MIME type parameter with the MIME type for the file extension, and search for a plugin for that MIME type. Also, changed the way that the extension is determined (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String to findPlugin() so that it can be updated if necessary
  • plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non- const String, removed definition of pluginForExtension, added definition for MIMETypeForExtension
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in lowercase for easier compares
3:55 PM Changeset in webkit [27235] by andrew
  • 2 edits in trunk/WebCore

Not reviewed - build fix

Fix Mac Build.


WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
in this function

  • xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::parseErrorFunc):
3:28 PM Changeset in webkit [27234] by alp
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15725
[GTK] WebCore.pro header dependencies are incorrect

Fix header dependencies in the build system

INCLUDEPATH and DEPENDPATH are now up to date.

3:16 PM Changeset in webkit [27233] by mrowe@apple.com
  • 180 edits
    62 adds
    99 deletes in trunk/WebKitSite

Upgrade WordPress.

2:46 PM Changeset in webkit [27232] by bdash
  • 2 edits
    6 adds in trunk/WebKitSite

Files that have been added or modified on the server without making it in to SVN.

12:17 PM Changeset in webkit [27231] by ggaren
  • 3 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.


Some small tweaks that I notice while reviewing Oliver's last patch.


Includes removal of an unnecessary KJS_CHECKEXCEPTIONVALUE.


No change in SunSpider because SunSpider doesn't take the code path that
would execute the unnecessary KJS_CHECKEXCEPTIONVALUE much.

  • kjs/nodes.cpp: (KJS::LocalVarPostfixNode::evaluate): (KJS::TypeOfResolveNode::optimizeVariableAccess): (KJS::LocalVarTypeOfNode::evaluate): (KJS::PrefixResolveNode::optimizeVariableAccess): (KJS::LocalVarPrefixNode::evaluate): (KJS::AssignResolveNode::optimizeVariableAccess): (KJS::LocalVarAssignNode::evaluate):
  • kjs/nodes.h: (KJS::LocalVarTypeOfNode::): (KJS::PrefixResolveNode::): (KJS::LocalVarPrefixNode::): (KJS::AssignResolveNode::): (KJS::LocalVarAssignNode::):
11:57 AM Changeset in webkit [27230] by timothy@apple.com
  • 1 edit in trunk/WebCore/css/CSSParser.cpp

A better build fix.

11:50 AM Changeset in webkit [27229] by bdakin
  • 3 edits in trunk/WebCore

Build fix.

  • css/CSSParser.cpp: (WebCore::CSSParser::parseTimingFunctionValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
11:22 AM Changeset in webkit [27228] by hyatt
  • 21 edits
    4 adds in trunk/WebCore

Land the back end for CSS animated property transitions. I am landing this in stages, so the AnimationController
class is deliberately left empty.

Reviewed by darin/aroben

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPropertyNames.in:
  • css/CSSTimingFunctionValue.cpp: Added. (WebCore::CSSTimingFunctionValue::cssText):
  • css/CSSTimingFunctionValue.h: Added. (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue): (WebCore::CSSTimingFunctionValue::firstPoint): (WebCore::CSSTimingFunctionValue::secondPoint):
  • css/CSSValueKeywords.in:
  • history/CachedPage.cpp: (WebCore::CachedPage::restore):
  • page/AnimationController.cpp: Added. (WebCore::AnimationController::AnimationController): (WebCore::AnimationController::~AnimationController): (WebCore::AnimationController::cancelTransitions): (WebCore::AnimationController::updateTransitions): (WebCore::AnimationController::suspendAnimations): (WebCore::AnimationController::resumeAnimations):
  • page/AnimationController.h: Added.
  • page/Frame.cpp: (WebCore::Frame::animationController): (WebCore::Frame::clearTimers):
  • page/Frame.h:
  • page/FramePrivate.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::setStyle): (WebCore::RenderBox::destroy):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::animationController):
  • rendering/RenderObject.h:
  • rendering/RenderStyle.cpp: (WebCore::Transition::Transition): (WebCore::Transition::~Transition): (WebCore::Transition::operator=): (WebCore::Transition::operator==): (WebCore::Transition::fillUnsetProperties): (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::StyleRareNonInheritedData::transitionDataEquivalent): (WebCore::RenderStyle::diff): (WebCore::RenderStyle::adjustTransitions): (WebCore::RenderStyle::accessTransitions):
  • rendering/RenderStyle.h: (WebCore::BackgroundLayer::next): (WebCore::): (WebCore::TimingFunction::TimingFunction): (WebCore::TimingFunction::operator==): (WebCore::Transition::next): (WebCore::Transition::isTransitionDurationSet): (WebCore::Transition::isTransitionRepeatCountSet): (WebCore::Transition::isTransitionTimingFunctionSet): (WebCore::Transition::isTransitionPropertySet): (WebCore::Transition::isEmpty): (WebCore::Transition::clearTransitionDuration): (WebCore::Transition::clearTransitionRepeatCount): (WebCore::Transition::clearTransitionTimingFunction): (WebCore::Transition::clearTransitionProperty): (WebCore::Transition::transitionDuration): (WebCore::Transition::transitionRepeatCount): (WebCore::Transition::transitionTimingFunction): (WebCore::Transition::transitionProperty): (WebCore::Transition::setTransitionDuration): (WebCore::Transition::setTransitionRepeatCount): (WebCore::Transition::setTransitionTimingFunction): (WebCore::Transition::setTransitionProperty): (WebCore::Transition::setNext): (WebCore::Transition::operator!=): (WebCore::RenderStyle::transitions): (WebCore::RenderStyle::clearTransitions): (WebCore::RenderStyle::inheritTransitions): (WebCore::RenderStyle::initialTransitionDuration): (WebCore::RenderStyle::initialTransitionRepeatCount): (WebCore::RenderStyle::initialTransitionTimingFunction): (WebCore::RenderStyle::initialTransitionProperty):
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::destroy):
10:02 AM Changeset in webkit [27227] by ap
  • 5 edits in trunk/WebCore

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=6040
XSLT does not report errors to the user

Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
output. Got rid of DeprecatedString in XSLTProcessor.

  • dom/Document.cpp: (WebCore::Document::applyXSLTransform):
  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString):
  • xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::parseErrorFunc): (WebCore::docLoaderFunc): (WebCore::setXSLTLoadCallBack): (WebCore::writeToString): (WebCore::saveResultToString): (WebCore::transformTextStringToXHTMLDocumentString): (WebCore::xsltParamArrayFromParameterMap): (WebCore::freeXsltParamArray): (WebCore::XSLTProcessor::createDocumentFromSource): (WebCore::createFragmentFromSource): (WebCore::xsltStylesheetPointer): (WebCore::xmlDocPtrFromNode): (WebCore::resultMIMEType): (WebCore::XSLTProcessor::transformToString): (WebCore::XSLTProcessor::transformToDocument): (WebCore::XSLTProcessor::transformToFragment):
  • xml/XSLTProcessor.h: (WebCore::XSLTProcessor::setXSLStylesheet): (WebCore::XSLTProcessor::importStylesheet): (WebCore::XSLTProcessor::xslStylesheet):
9:34 AM Changeset in webkit [27226] by ddkilzer
  • 2 edits in trunk/WebKitTools

Fixed showStatus() to print status for successfully resolved conflicts when using git.

Reviewed by Mark Rowe.

Previously showStatus() would run "git diff --name-status" after a ChangeLog conflict
was successfully resolved, but this would not show any status because the change had
already been cached in the index using "git add". The solution is to add an optional
second argument to showStatus() which adds the "--cached" switch to the command.

  • Scripts/resolve-ChangeLogs: (showStatus):
9:28 AM Changeset in webkit [27225] by ap
  • 1 edit
    4 adds in trunk/LayoutTests

Reviewed by Mitz.

Test for http://bugs.webkit.org/show_bug.cgi?id=10030
Star Alliance site is opened without the main frame

  • fast/frames/location-change-expected.txt: Added.
  • fast/frames/location-change.html: Added.
  • fast/frames/resources/location-change-frame-1.html: Added.
  • fast/frames/resources/location-change-frame-2.html: Added.
9:02 AM Changeset in webkit [27224] by mitz
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by John Sullivan.

  • fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page

Test: fast/repaint/layout-state-only-posiitoned.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state before updating scroll info, which possibly repaints us.

LayoutTests:

Reviewed by John Sullivan,

  • repaint test for <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
  • fast/repaint/layout-state-only-posiitoned.html: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.checksum: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.png: Added.
  • platform/mac/fast/repaint/layout-state-only-posiitoned-expected.txt: Added.
3:31 AM Changeset in webkit [27223] by ddkilzer
  • 3 edits
    5 adds in trunk

WebCore:

REGRESSION (r17701): Favicons should be viewable as image documents
<http://bugs.webkit.org/show_bug.cgi?id=15640>

Reviewed by Darin.

On Tiger and Leopard, the image/x-icon MIME type is not returned from
CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
the icon to be downloaded instead being displayed in an image document.

Test: fast/images/favicon-as-image.html

  • platform/MIMETypeRegistry.cpp: (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to supportedImageMIMETypes and supportedImageResourceMIMETypes. Also fixed comment about the image/bmp MIME type since it applies to both Tiger and Leopard.

LayoutTests:

Test for: REGRESSION (r17701): Favicons should be viewable as image documents
<http://bugs.webkit.org/show_bug.cgi?id=15640>

Reviewed by Darin.

  • fast/images/favicon-as-image.html: Added.
  • fast/images/resources/favicon.ico: Added.
  • platform/mac/fast/images/favicon-as-image-expected.checksum: Added.
  • platform/mac/fast/images/favicon-as-image-expected.png: Added.
  • platform/mac/fast/images/favicon-as-image-expected.txt: Added.
2:14 AM Changeset in webkit [27222] by eseidel
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Maciej.


SunSpider claims this was a 0.7% speedup.

  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction): avoid mallocing a jsString in the common case
1:44 AM Changeset in webkit [27221] by mjs
  • 7 edits in trunk

JavaScriptCore:

Reviewed by Mark.


  • re-enable asserts for access to empty or deleted keys
  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):

WebCore:

Reviewed by Mark.

  • fixed assertion failures detected by the new assertions
  • bindings/objc/DOMRGBColor.mm: (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc] because it's not a pointer and shouldn't be in the normal wrapper cache.
  • dom/Document.cpp: (WebCore::Document::addImageMap): Don't access hashmap if name is null. (WebCore::Document::removeImageMap): ditto
  • dom/StyledElement.cpp: (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class when the class attribute is empty.
  • platform/TextCodecICU.cpp: (WebCore::gbkCallbackEscape): Don't look up 0 code points.
1:32 AM Changeset in webkit [27220] by eseidel
  • 2 edits in trunk/JavaScriptCore

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

Build fix only, no review.

  • JavaScriptCore.exp: Export symbol for new StringInstance::getOwnPropertySlot
1:31 AM Changeset in webkit [27219] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Gtk build fix. Move struct declarations into nodes.h.

  • kjs/grammar.y:
  • kjs/nodes.h:
12:55 AM Changeset in webkit [27218] by eseidel
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by darin.


Give StringInstance a getOwnPropertySlot(ExecState, unsigned, PropertySlot) fastpath, just like Arrays.
Make it a compile time error to use toString(ExecState) on a StringInstance


SunSpider claims this was a 6.6% speedup overall (22% on string-base64)

  • kjs/internal.h: (KJS::StringImp::getLength):
  • kjs/string_object.cpp: (KJS::StringInstance::lengthGetter): (KJS::StringInstance::inlineGetOwnPropertySlot): (KJS::StringInstance::getOwnPropertySlot):
  • kjs/string_object.h:
12:21 AM Changeset in webkit [27217] by ap
  • 5 edits
    2 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=10734
Made HTMLOptionElement.index read-only, matching IE and DOM standard.

Test: fast/dom/HTMLOptionElement/set-option-index-text.html

  • html/HTMLOptionElement.idl: Marked index as readonly.
  • html/HTMLOptionElement.cpp:
  • html/HTMLOptionElement.h: Removed setIndex().
12:05 AM Changeset in webkit [27216] by oliver
  • 3 edits in trunk/JavaScriptCore

Added nodes to allow Assignment, TypeOf, and prefix operators to
make use of the new optimised local variable look up.

5% gain on sunspider

Reviewed by Darin

Oct 28, 2007:

11:49 PM Changeset in webkit [27215] by mjs
  • 6 edits in trunk/JavaScriptCore

Reviewed by Darin.



Not a significant speedup or slowdown on SunSpider.

  • kjs/Parser.cpp: (KJS::clearNewNodes):
  • kjs/Parser.h:
  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::BlockNode::BlockNode): (KJS::CaseBlockNode::CaseBlockNode): (KJS::FunctionBodyNode::FunctionBodyNode): (KJS::SourceElementsNode::SourceElementsNode): (KJS::ProgramNode::ProgramNode):
  • kjs/nodes.h: (KJS::ElementNode::): (KJS::ArrayNode::): (KJS::PropertyListNode::): (KJS::ObjectLiteralNode::): (KJS::ArgumentListNode::): (KJS::ArgumentsNode::): (KJS::VarDeclListNode::): (KJS::VarStatementNode::): (KJS::ForNode::): (KJS::ParameterNode::): (KJS::FuncExprNode::): (KJS::FuncDeclNode::): (KJS::SourceElementsNode::): (KJS::CaseClauseNode::): (KJS::ClauseListNode::):
11:25 PM Changeset in webkit [27214] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Disable assertions in a manner that doesn't break the Qt Windows build.

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting):
11:14 PM Changeset in webkit [27213] by ggaren
  • 2 edits in trunk/JavaScriptCore

Temporarily disabling some ASSERTs I introduced in my last check-in
because of http://bugs.webkit.org/show_bug.cgi?id=15747
Lots of layout tests fail the !HashTranslator::equal(KeyTraits::emptyValue() ASSERT

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):
11:13 PM Changeset in webkit [27212] by aroben
  • 2 edits in trunk/SunSpider

Fix SunSpider on Windows

Reviewed by Eric.

  • sunspider: Don't use colons in filenames.
10:53 PM Changeset in webkit [27211] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Fixed http://bugs.webkit.org/show_bug.cgi?id=15746
#ifndef ASSERT_DISABLED is no good!


Replaced with #if !ASSERT_DISABLED.

  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add):
10:32 PM Changeset in webkit [27210] by ggaren
  • 5 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Added FunctionCallResolveNode, PostfixResolveNode, and DeleteResolveNode
to the AST transfom that replaces slow resolve nodes with fast local
variable alternatives.


2.5% speedup on SunSpider.


Also added some missing copyright notices.


  • kjs/nodes.cpp: (KJS::FunctionCallResolveNode::optimizeVariableAccess): (KJS::FunctionCallResolveNode::evaluate): (KJS::LocalVarFunctionCallNode::evaluate): (KJS::PostfixResolveNode::optimizeVariableAccess): (KJS::PostfixResolveNode::evaluate): (KJS::LocalVarPostfixNode::evaluate): (KJS::DeleteResolveNode::optimizeVariableAccess): (KJS::DeleteResolveNode::evaluate): (KJS::LocalVarDeleteNode::evaluate):
  • kjs/nodes.h: (KJS::FunctionCallResolveNode::): (KJS::LocalVarFunctionCallNode::LocalVarFunctionCallNode): (KJS::PostfixResolveNode::): (KJS::LocalVarPostfixNode::LocalVarPostfixNode): (KJS::DeleteResolveNode::): (KJS::LocalVarDeleteNode::LocalVarDeleteNode):
9:53 PM Changeset in webkit [27209] by eseidel
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by darin.


Inline UString::Rep::deref() for a 0.8% improvement in SunSpider
Add virtual keyword to a few virtual functions previously unmarked.

  • kjs/internal.h: (KJS::StringImp::type): (KJS::NumberImp::type):
  • kjs/ustring.h: (KJS::UString::Rep::deref):
9:37 PM Changeset in webkit [27208] by darin
  • 3 edits in trunk/JavaScriptCore
  • fix "broken everything" from the storage leak fix
  • wtf/RefPtr.h: (WTF::RefPtr::RefPtr): Added a PlacementNewAdopt constructor.
  • kjs/ustring.h: (KJS::UString::UString): Pass PlacementNewAdopt along to RefPtr.
9:31 PM Changeset in webkit [27207] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Adam.

  • turn on unused parameter waring on Mac OS X because it's already on elsewhere
  • Configurations/Base.xcconfig: Took out -wno-unused-parameter.
  • API/JSNode.c:
  • API/JSNodeList.c:
  • API/minidom.c:
  • API/testapi.c: Fixed unused variables by using them or marked them with UNUSED_PARAM.
  • kjs/CollectorHeapIntrospector.h: (KJS::CollectorHeapIntrospector::zoneCalloc): Removed parameter names to indicate they are unused.
9:11 PM Changeset in webkit [27206] by darin
  • 4 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fix a storage leak where we ref the UString every time we replace a ResolveNode with a LocalVarAccessNode
  • kjs/identifier.h: (KJS::Identifier::Identifier): Added a constructor that takes PlacementNewAdopt.
  • kjs/nodes.h: (KJS::ResolveNode::ResolveNode): Initialize the ident with PlacementNewAdopt instead of the old value of ident.
  • kjs/ustring.h: (KJS::UString::UString): Added a constructor that takes PlacementNewAdopt.
9:04 PM Changeset in webkit [27205] by eseidel
  • 2 edits in trunk/LayoutTests

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

Reviewed by aroben.

  • platform/mac/svg/custom/path-bad-data-expected.txt: updated to better results
9:02 PM Changeset in webkit [27204] by darin
  • 3 edits in trunk/JavaScriptCore
  • Windows build fix; get rid of unused parameter
  • kjs/nodes.cpp: (KJS::ResolveNode::optimizeVariableAccess): Don't pass it.
  • kjs/nodes.h: (KJS::LocalVarAccessNode::LocalVarAccessNode): Remove it. The assertions weren't all that helpful.
8:48 PM Changeset in webkit [27203] by eseidel
  • 5 edits in trunk/WebCore

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

Reviewed by darin.

Fix leaks on TOT and prevent Path code from logging to console so frequently

  • platform/graphics/svg/SVGResourceFilter.h: (WebCore::SVGResourceFilterPlatformData::SVGResourceFilterPlatformData): (WebCore::SVGResourceFilterPlatformData::~SVGResourceFilterPlatformData):
  • platform/graphics/svg/cg/CgSupport.cpp: (WebCore::strokeBoundingBox):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm:
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
8:00 PM Changeset in webkit [27202] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Gtk build fix. Add include of MathExtras.h.

  • kjs/string_object.cpp:
7:52 PM Changeset in webkit [27201] by mrowe@apple.com
  • 14 edits in trunk

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

Reviewed by Maciej and Tim.

Replace uses of isNaN and isInf with isnan and isinf, and
remove isNaN and isInf.

  • kjs/config.h: Remove unused HAVE_'s
  • kjs/date_object.cpp: (KJS::DateInstance::getTime): (KJS::DateInstance::getUTCTime): (KJS::DateProtoFunc::callAsFunction): (KJS::DateObjectImp::construct): (KJS::DateObjectFuncImp::callAsFunction):
  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction):
  • kjs/math_object.cpp: (MathFuncImp::callAsFunction):
  • kjs/nodes2string.cpp: (KJS::isParserRoundTripNumber):
  • kjs/number_object.cpp: (NumberProtoFunc::callAsFunction):
  • kjs/operations.cpp:
  • kjs/operations.h:
  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction):
  • kjs/ustring.cpp: (KJS::UString::from):
  • kjs/value.cpp: (KJS::JSValue::toInteger): (KJS::JSValue::toInt32SlowCase): (KJS::JSValue::toUInt32SlowCase):

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

Reviewed by Maciej.

Replace uses of isNaN and isInf with isnan and isinf.

  • bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::setLength):
7:08 PM Changeset in webkit [27200] by ggaren
  • 3 edits in trunk/JavaScriptCore

Build fix: use the new-fangled missingSymbolMarker().

  • kjs/nodes.cpp: (KJS::ResolveNode::optimizeVariableAccess):
  • kjs/nodes.h: (KJS::LocalVarAccessNode::LocalVarAccessNode):
7:00 PM Changeset in webkit [27199] by ggaren
  • 5 edits in trunk/JavaScriptCore

Reviewed by Maciej Stachowiak, Darin Adler.


Much supporting work done by Maciej Stachowiak, Maks Orlovich, and
Cameron Zwarich.


AST transfom to replace slow resolve nodes with fast local variable
alternatives that do direct memory access. Currently, only ResolveNode
provides a fast local variable alternative. 6 others are soon to come.


16.7% speedup on SunSpider.


Most of this patch is just scaffolding to support iterating all the
resolve nodes in the AST through optimizeResolveNodes(). In
optimizeResolveNodes(), most classes just push their child nodes onto
the processing stack, while ResolveNodes actually replace themselves in
the tree with more optimized alternatives, if possible.

Here are the interesting bits:

  • kjs/nodes.h: Added PlacementNewAdoptTag, along with implementations in Node and ResolveNode. This tag allows you to use placement new to swap out a base class Node in favor of a subclass copy that holds the same data. (Without this tag, default initialization would NULL out RefPtrs, change line numbers, etc.)
  • kjs/nodes.cpp: (KJS::ResolveNode::evaluate): Since we're taking the slow path, ASSERT that the fast path is impossible, to make sure we didn't leave anything on the table.

(KJS::FunctionBodyNode::optimizeResolveNodes): Here's where the AST
transformation happens.


(KJS::ResolveNode::optimizeResolveNodes): Here's where the ResolveNode
optimization happens.

  • kjs/function.h: Added symbolTable() accessor for, for the sake of an ASSERT.
6:56 PM Changeset in webkit [27198] by mrowe@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by Maciej.

Fix "AllInOneFile.o has a global initializer in it".

Some versions of gcc generate a global initializer for std::numeric_limits<size_t>::max().
We can avoid this by moving it inside an inline function.

  • kjs/SymbolTable.h: (KJS::missingSymbolMarker):
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): (KJS::ActivationImp::put):
6:50 PM Changeset in webkit [27197] by eseidel
  • 2 edits in trunk/WebKitTools

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

Reviewed by Maciej and Geoff, in unison.

  • Scripts/run-webkit-tests: remove broken --svg option
6:29 PM Changeset in webkit [27196] by mjs
  • 4 edits
    1 add in trunk

JavaScriptCore:

Reviewed by Mark.


  • Added assertions to protect against adding empty or deleted keys to a HashTable
  • wtf/HashTable.h: (WTF::HashTable::lookup): (WTF::HashTable::lookupForWriting): (WTF::HashTable::fullLookupForWriting): (WTF::HashTable::add):

WebCore:

Reviewed by Mark.

  • bindings/js/kjs_window.cpp: (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys. (KJS::Window::clearTimeout): ditto
  • manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
5:14 PM Changeset in webkit [27195] by timothy@apple.com
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Remove IDLs from the Copy Bundle Resources phase.

4:08 PM Changeset in webkit [27194] by darin
  • 4 edits in trunk/SunSpider

Reviewed by Adam.

  • resources/sunspider-analyze-results.js: Tweak the output format a little. Change so that when there's only one run we don't write out confidence intervals at all rather than writing "NaN" over and over again.
  • sunspider: Use the time and date as a suffix on the results file, that way all the results are left behind in the tmp directory. This will make it easy for us to add features that compare past results in the future. Also rename the .mshark files using the same scheme.
  • sunspider-compare-results: Relax the parsing rules so we can parse the results file exactly as it's emitted from sunspider.
4:06 PM Changeset in webkit [27193] by darin
  • 2 edits in trunk/JavaScriptCore
  • fix GTK build
  • kjs/nodes2string.cpp: (KJS::isParserRoundTripNumber): Use isNaN and isInf instead of isnan and isinf.
4:00 PM Changeset in webkit [27192] by darin
  • 3 edits in trunk/WebKitTools

Reviewed by Adam.

  • Scripts/run-sunspider: Default to "Release" configuration rather than defaulting to the last configuration used as other scripts do. This can still be overriden on the command line with "--debug" if there's some reason to do so. Also fix a typo.
  • Scripts/sunspider-compare-results: Fix a typo.
3:50 PM Changeset in webkit [27191] by darin
  • 8 edits
    6 adds in trunk

JavaScriptCore:

Reviewed by Maciej.

This patch removes 4 node types: GroupNode, PropertyNameNode,
FunctionCallParenBracketNode, and FunctionCallParenDotNode.

To remove GroupNode, we add knowledge of precedence to the tree nodes,
and use that when serializing to determine where parentheses are needed.
This means we no longer have to represent parentheses in the tree.

The precedence values are named after productions in the grammar from the
JavaScript standard.

SunSpider says this is an 0.4% speedup.

  • kjs/function.h:
  • kjs/function.cpp: Removed escapeStringForPrettyPrinting -- it's part of serialization, so I moved it to the file that takes care of that.
  • kjs/grammar.y: Changed makeGetterOrSetterPropertyNode to use 0 to indicate failure instead of a separate boolean. Got rid of PropertyNameNode by merging the PropertyName rule into the Property rule (which was easier than figuring out how to pass the Identifier from one node to another). Got rid of GroupNode, nodeInsideAllParens(), FunctionCallParenBracketNode, and FunctionCallParenDotNode.
  • kjs/nodes.h: Removed unused forward declarations and Operator values. Added Precedence enum, and precedence function to all nodes. Removed nodeInsideAllParens. Added streamBinaryOperator function for serialization. Removed GroupNode and PropertyNameNode. Made PropertyNode store an Identifier. Removed FunctionCallParenBracketNode and FunctionCallParenDotNode.
  • kjs/nodes.cpp: Removed Node::nodinsideAllParens, GroupNode, and PropertyNameNode. (KJS::PropertyListNode::evaluate): Changed code to get name directly instead of converting it from an Identifier to a jsString then back to a UString then into an Identifier again!
  • kjs/nodes2string.cpp: Changed special-token implementation to use a separate function for each of Endl, Indent, Unindent, and DotExpr instead of using a single function with a switch. Added a precedence that you can stream in, to cause the next node serialized to add parentheses based on that precedence value. (KJS::operatorString): Moved to the top of the file. (KJS::escapeStringForPrettyPrinting): Moved here from function.cpp. Removed old workaround for snprintf, since StringExtras.h takes care of that. (KJS::operator<<): Made the char and char* versions faster by using UString's character append functions instead of constructing a UString. Added the logic to the Node* version to add parentheses if needed. (KJS::Node::streamLeftAssociativeBinaryOperator): Added helper function. (KJS::ElementNode::streamTo): Use PrecAssignment for the elements. (KJS::BracketAccessorNode::streamTo): Use PrecCall for the expression before the bracket. (KJS::DotAccessorNode::streamTo): Use PrecCall for the expression before the dot. (KJS::ArgumentListNode::streamTo): Use PrecAssignment for the arguments. (KJS::NewExprNode::streamTo): Use PrecMember for the expression. (KJS::FunctionCallValueNode::streamTo): Use PrecCall. (KJS::FunctionCallBracketNode::streamTo): Ditto. (KJS::FunctionCallDotNode::streamTo): Ditto. (KJS::PostfixBracketNode::streamTo): Ditto. (KJS::PostfixDotNode::streamTo): Ditto. (KJS::PostfixErrorNode::streamTo): Use PrecLeftHandSide. (KJS::DeleteBracketNode::streamTo): Use PrecCall. (KJS::DeleteDotNode::streamTo): Ditto. (KJS::DeleteValueNode::streamTo): Use PrecUnary. (KJS::VoidNode::streamTo): Ditto. (KJS::TypeOfValueNode::streamTo): Ditto. (KJS::PrefixBracketNode::streamTo): Use PrecCall. (KJS::PrefixDotNode::streamTo): Ditto. (KJS::PrefixErrorNode::streamTo): Use PrecUnary. (KJS::UnaryPlusNode::streamTo): Ditto. (KJS::NegateNode::streamTo): Ditto. (KJS::BitwiseNotNode::streamTo): Ditto. (KJS::LogicalNotNode::streamTo): Ditto. (KJS::MultNode::streamTo): Use streamLeftAssociativeBinaryOperator. (KJS::DivNode::streamTo): Ditto. (KJS::ModNode::streamTo): Ditto. (KJS::AddNode::streamTo): Ditto. (KJS::SubNode::streamTo): Ditto. (KJS::LeftShiftNode::streamTo): Ditto. (KJS::RightShiftNode::streamTo): Ditto. (KJS::UnsignedRightShiftNode::streamTo): Ditto. (KJS::LessNode::streamTo): Ditto. (KJS::GreaterNode::streamTo): Ditto. (KJS::LessEqNode::streamTo): Ditto. (KJS::GreaterEqNode::streamTo): Ditto. (KJS::InstanceOfNode::streamTo): Ditto. (KJS::InNode::streamTo): Ditto. (KJS::EqualNode::streamTo): Ditto. (KJS::NotEqualNode::streamTo): Ditto. (KJS::StrictEqualNode::streamTo): Ditto. (KJS::NotStrictEqualNode::streamTo): Ditto. (KJS::BitAndNode::streamTo): Ditto. (KJS::BitXOrNode::streamTo): Ditto. (KJS::BitOrNode::streamTo): Ditto. (KJS::LogicalAndNode::streamTo): Ditto. (KJS::LogicalOrNode::streamTo): Ditto. (KJS::ConditionalNode::streamTo): Ditto. (KJS::AssignResolveNode::streamTo): Use PrecAssignment for the right side. (KJS::AssignBracketNode::streamTo): Use PrecCall for the expression before the bracket and PrecAssignment for the right side. (KJS::AssignDotNode::streamTo): Ditto. (KJS::AssignErrorNode::streamTo): Use PrecLeftHandSide for the left side and PrecAssignment for the right side. (KJS::CommaNode::streamTo): Use PrecAssignment for both expressions. (KJS::AssignExprNode::streamTo): Use PrecAssignment.

LayoutTests:

Reviewed by Maciej.

One test is a start at testing that parentheses are added when needed.
The other test checks some aspects of object literals, since I changed
the way the property names is handled in those. More tests are needed.

  • fast/js/function-toString-object-literals-expected.txt: Added.
  • fast/js/function-toString-object-literals.html: Added.
  • fast/js/function-toString-parentheses-expected.txt: Added.
  • fast/js/function-toString-parentheses.html: Added.
  • fast/js/resources/function-toString-object-literals.js: Added.
  • fast/js/resources/function-toString-parentheses.js: Added.
2:27 PM Changeset in webkit [27190] by kevino
  • 12 edits in trunk/WebCore

wx port defines for graphics and network layers.

2:09 PM Changeset in webkit [27189] by alp
  • 4 edits in trunk/WebCore

Reviewed by Anders Carlsson.

http://bugs.webkit.org/show_bug.cgi?id=14124
[CURL] Support data URLs

Add data URL support (both Base64 and percent-encoded formats).

Inspired by code from the Qt port.

1:23 PM Changeset in webkit [27188] by alp
  • 2 edits in trunk/WebCore

http://bugs.webkit.org/show_bug.cgi?id=15701
The curl http backend does not deal properly with redirects

Implement http redirect support.

12:18 PM Changeset in webkit [27187] by kevino
  • 25 edits in trunk

Add the defines, platform types and options needed for the wx port.

11:20 AM Changeset in webkit [27186] by mrowe@apple.com
  • 10 edits in trunk

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

We don't include "config.h" in headers.

  • bindings/jni/jni_instance.h:
  • kjs/regexp.h:
  • wtf/TCPageMap.h:
  • wtf/TCSpinLock.h:

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

We don't include "config.h" in headers.

  • dom/XMLTokenizer.h:
  • platform/graphics/svg/SVGResourceFilter.h:
  • platform/image-decoders/ImageDecoder.h:
  • platform/wx/FontPlatformData.h:
10:53 AM UsingSafari2WithSafari3PublicBetaInstalled edited by djvasi@gmail.com
Self-contained Safari 3 (diff)
10:41 AM Changeset in webkit [27185] by darin
  • 1 edit in trunk/WebCore/ChangeLog

Removed some "Reviewed by NOBODY".

10:37 AM Changeset in webkit [27184] by darin
  • 1 edit in trunk/WebKitTools/ChangeLog

Removed some "Reviewed by NOBODY".

10:36 AM Changeset in webkit [27183] by darin
  • 1 edit in trunk/WebKitLibraries/ChangeLog

Removed some "Reviewed by NOBODY".

10:31 AM Changeset in webkit [27182] by darin
  • 2 edits in trunk/WebCore
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: We don't include "config.h" in headers. Hope this desn't break the non-SVG build again.
10:22 AM Changeset in webkit [27181] by darin
  • 2 edits in trunk/WebKit/win
  • try to fix Windows build
  • WebKit.vcproj/WebKit.vcproj: Suppress warning 4800 (conversion to bool), since we don't want to add !! everywhere, and because HashTable.h has a conversion to bool of this type now.
4:47 AM Changeset in webkit [27180] by eseidel
  • 3 edits in trunk/WebCore

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

Build fix for non-SVG build, no review.

  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm:
3:34 AM Changeset in webkit [27179] by eseidel
  • 58 edits
    3 adds in trunk/WebCore

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

Reviewed by Oliver.

Push SVGResourceFilter platform specific data down into m_platformData
in preparation for implementing a non-mac filter solution.


Also update a very old email address in copyright headers

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/FloatPoint3D.cpp: (WebCore::FloatPoint3D::FloatPoint3D):
  • platform/graphics/FloatPoint3D.h:
  • platform/graphics/svg/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::SVGResourceFilter):
  • platform/graphics/svg/SVGResourceFilter.h: (WebCore::SVGResourceFilter::platformData): (WebCore::SVGResourceFilter::effects):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm: (WebCore::SVGResourceFilter::createPlatformData):l (WebCore::SVGResourceFilter::prepareFilter): (WebCore::SVGResourceFilter::applyFilter):
  • platform/graphics/svg/filters/SVGDistantLightSource.h:
  • platform/graphics/svg/filters/SVGFEBlend.cpp:
  • platform/graphics/svg/filters/SVGFEBlend.h:
  • platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
  • platform/graphics/svg/filters/SVGFEColorMatrix.h:
  • platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
  • platform/graphics/svg/filters/SVGFEComponentTransfer.h:
  • platform/graphics/svg/filters/SVGFEComposite.cpp:
  • platform/graphics/svg/filters/SVGFEComposite.h:
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
  • platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
  • platform/graphics/svg/filters/SVGFEDisplacementMap.h:
  • platform/graphics/svg/filters/SVGFEFlood.cpp:
  • platform/graphics/svg/filters/SVGFEFlood.h:
  • platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
  • platform/graphics/svg/filters/SVGFEGaussianBlur.h:
  • platform/graphics/svg/filters/SVGFEImage.cpp:
  • platform/graphics/svg/filters/SVGFEImage.h:
  • platform/graphics/svg/filters/SVGFEMerge.cpp:
  • platform/graphics/svg/filters/SVGFEMerge.h:
  • platform/graphics/svg/filters/SVGFEMorphology.cpp:
  • platform/graphics/svg/filters/SVGFEMorphology.h:
  • platform/graphics/svg/filters/SVGFEOffset.cpp:
  • platform/graphics/svg/filters/SVGFEOffset.h:
  • platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
  • platform/graphics/svg/filters/SVGFESpecularLighting.h:
  • platform/graphics/svg/filters/SVGFETile.h:
  • platform/graphics/svg/filters/SVGFETurbulence.cpp:
  • platform/graphics/svg/filters/SVGFETurbulence.h:
  • platform/graphics/svg/filters/SVGFilterEffect.cpp:
  • platform/graphics/svg/filters/SVGFilterEffect.h:
  • platform/graphics/svg/filters/SVGLightSource.cpp:
  • platform/graphics/svg/filters/SVGLightSource.h:
  • platform/graphics/svg/filters/SVGPointLightSource.h:
  • platform/graphics/svg/filters/SVGSpotLightSource.h:
  • platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: (WebCore::SVGFEBlend::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: (WebCore::SVGFEColorMatrix::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: (WebCore::SVGFEComponentTransfer::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: (WebCore::SVGFEComposite::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: (WebCore::SVGFEDiffuseLighting::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: (WebCore::SVGFEDisplacementMap::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: (WebCore::SVGFEFlood::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
  • platform/graphics/svg/filters/cg/SVGFEImageCg.mm: (WebCore::SVGFEImage::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: (WebCore::SVGFEMerge::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: (WebCore::SVGFESpecularLighting::getCIFilter):
  • platform/graphics/svg/mac: Added.
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Added.
  • platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Added. (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac): (WebCore::SVGResourceFilterPlatformDataMac::~SVGResourceFilterPlatformDataMac): (WebCore::SVGResourceFilterPlatformDataMac::getCIFilterStack): (WebCore::alphaImageForImage): (WebCore::SVGResourceFilterPlatformDataMac::imageForName): (WebCore::SVGResourceFilterPlatformDataMac::setImageForName): (WebCore::SVGResourceFilterPlatformDataMac::setOutputImage): (WebCore::SVGResourceFilterPlatformDataMac::inputImage):
3:19 AM Changeset in webkit [27178] by mjs
  • 3 edits in trunk/JavaScriptCore

Rubber stamped by Mark.


  • avoid using non-portable SIZE_T_MAX in favor of std::numeric_limits
  • kjs/SymbolTable.h: (KJS::SymbolTableIndexHashTraits::emptyValue):
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): (KJS::ActivationImp::put):
2:20 AM Changeset in webkit [27177] by mjs
  • 4 edits in trunk/JavaScriptCore

Reviewed by Eric.


  • switch SymbolTable to be a HashMap instead of a PropertyMap for 3% SunSpider speedup
  • kjs/SymbolTable.h: (KJS::IdentifierRepHash::hash): Special hash function for identifier reps. (KJS::IdentifierRepHash::equal): ditto (KJS::SymbolTableIndexHashTraits::emptyValue): Special HashTraits for the index value. (KJS::SymbolTable): change to a typedef for a HashMap.
  • kjs/function.cpp: (KJS::ActivationImp::getOwnPropertySlot): Adjusted for new SymbolTable API. (KJS::ActivationImp::deleteProperty): ditto (KJS::ActivationImp::put): ditto
  • kjs/nodes.cpp: (KJS::FunctionBodyNode::initializesymbolTable): Adjusted, since you now have to store a UString::rep, not an identifier.
1:17 AM Changeset in webkit [27176] by mjs
  • 8 edits in trunk/JavaScriptCore

Reviewed by Oliver.


  • numerous HashTable performance improvements


This does not quite add up to a measurable win on SunSpider, but it allows a
follow-on > 3% improvement and probably helps WebCore too.


I made the following improvements, among others:


  • Made HashFunctions note whether it is ok to compare a real value with the equal() function to the empty or deleted value, and used this to optimize the comparisons done in hash lookup.


  • Specialized lookup so it doesn't have to do so many extra branches and build so many extra std::pairs for cases that don't need them. There are now four versions, one for read-only access, two for writing, and one folded directly into add() (these all were improvments).


  • Made HashMap::get() use lookup() directly instead of find() to avoid having to build iterators.


  • Made a special constructor for iterators that knows it points to a valid filled cell and so skips updating itself.
  • Reordered memory accesses in the various lookup functions for better codegetion


  • Made simple translators avoid passing a hash code around


  • Other minor tweaks


  • wtf/HashTable.h: (WTF::): (WTF::HashTableConstIterator::HashTableConstIterator): (WTF::HashTableIterator::HashTableIterator): (WTF::IdentityHashTranslator::translate): (WTF::HashTable::end): (WTF::HashTable::lookup): (WTF::HashTable::lookupForWriting): (WTF::HashTable::makeKnownGoodIterator): (WTF::HashTable::makeKnownGoodConstIterator): (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add): (WTF::::addPassingHashCode): (WTF::::reinsert): (WTF::::find): (WTF::::contains):
  • kjs/identifier.cpp: (WTF::):
  • wtf/HashFunctions.h: (WTF::):
  • wtf/HashMap.h: (WTF::): (WTF::::get):
  • wtf/HashSet.h: (WTF::): (WTF::::add):
  • wtf/ListHashSet.h: (WTF::ListHashSetTranslator::translate):
1:02 AM Changeset in webkit [27175] by ap
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15217
Plugin complains that xpcom_core.dll missing

  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabaseWin::isPluginBlacklisted): Blacklist npmozax.dll.
12:32 AM Changeset in webkit [27174] by timothy@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Adam.

Pass the Document's domain to InspectorController:didOpenDatabase. This matches
what the Inspector shows for other resources.

  • storage/Database.cpp: (WebCore::Database::openDatabase):
  • dom/Document.h: Remove KURL.h, no longer needed.
12:08 AM Changeset in webkit [27173] by timothy@apple.com
  • 14 edits in trunk/WebCore

Reviewed by Adam.

Bug 15728: Selected Resource background image gradient has banding
http://bugs.webkit.org/show_bug.cgi?id=15728

  • Reduced images to 1px wide that are tiled horizontally in CSS.
  • Corrected the -webkit-background-size usage to specify auto for the width.
  • page/inspector/Images/attachedShadow.png:
  • page/inspector/Images/bottomShadow.png:
  • page/inspector/Images/darkShadow.png:
  • page/inspector/Images/gradient.png:
  • page/inspector/Images/gradientHighlight.png:
  • page/inspector/Images/gradientHighlightBottom.png:
  • page/inspector/Images/sidebarSelection.png:
  • page/inspector/Images/sidebarSelectionBlurred.png:
  • page/inspector/Images/sidebarSelectionBlurredTall.png:
  • page/inspector/Images/sidebarSelectionGray.png:
  • page/inspector/Images/sidebarSelectionGrayTall.png:
  • page/inspector/Images/sidebarSelectionTall.png:
  • page/inspector/inspector.css:
12:04 AM Changeset in webkit [27172] by aroben
  • 2 edits in trunk/LayoutTests

Re-enable a bunch of passing tests on Windows

Reviewed by NOBODY.

  • platform/win/Skipped:
Note: See TracTimeline for information about the timeline view.