Timeline



Sep 13, 2007:

6:46 PM Changeset in webkit [25557] by beidson
  • 4 edits in trunk/WebCore

Reviewed by Maciej

<rdar://problem/5480437> - No site icon at launch and related error messages

The error message was actually indicative of a larger bug that might've resulted in icons getting
improperly pruned because they were never added to the set of retained page URLs.

To solve the no-icon-at-launch problem, we send the "didReceiveIcon:" delegate call for every page
load that has an icon, whether the icon comes in from network, from disk, or was already in ram

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::startIconLoader): Always send the didReceiveIcon delegate call when an icon's image data is known
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::retainIconForPageURL): Much more accurately track the set of retained pages by adding them when their retain count moves from 0 to 1
  • loader/icon/PageURLRecord.h: (WebCore::PageURLRecord::retain): Correctly distinguish the "retain count just went from 0 to 1" case in the return value
6:02 PM Changeset in webkit [25556] by bdash
  • 1 copy in tags/Safari-4523.6

New tag.

5:58 PM Changeset in webkit [25555] by bdash
  • 4 edits in trunk

Versioning.

5:57 PM Changeset in webkit [25554] by bdash
  • 1 copy in tags/Safari-5523.6

New tag.

5:35 PM Changeset in webkit [25553] by beidson
  • 4 edits in trunk/WebCore

Rubberstamped by Geoff and Maciej

Fix MSVC build warning due to out of range data in a char array

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::defaultIcon): The buffer is now unsigned data
  • platform/SharedBuffer.cpp: (WebCore::SharedBuffer::SharedBuffer): Add the "unsigned char*" c'tor
  • platform/SharedBuffer.h:
4:59 PM Changeset in webkit [25552] by kmccullo
  • 6 edits in trunk/WebKitTools

Reviewed by Tim.

  • Moved isPaused into the JS for efficiency and simplicity.
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::DebuggerDocument): (DebuggerDocument::pauseCallback): (DebuggerDocument::resumeCallback): (DebuggerDocument::isPaused): (DebuggerDocument::staticFunctions):
  • Drosera/DebuggerDocument.h:
  • Drosera/console.js:
  • Drosera/debugger.js:
  • Drosera/mac/DebuggerClient.mm: (-[DebuggerClient validateUserInterfaceItem:]):
4:05 PM Changeset in webkit [25551] by bdash
  • 3 edits in branches/Safari-2.0-dashboard/JavaScriptCore

2007-09-13 Mark Rowe <mrowe@apple.com>

Merge r23846 from trunk to Safari-2.0-dashboard.

2007-06-27 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

  • <rdar://problem/5271937> REGRESSION: Apparent WebKit JavaScript memory smasher when submitting comment to iWeb site (crashes in kjs_pcre_compile2)
  • Correctly evaluate the return value of _pcre_ucp_findchar.
  • pcre/pcre_compile.c: (compile_branch):
  • pcre/pcre_exec.c: (match):
4:05 PM Changeset in webkit [25550] by bdash
  • 2 edits in branches/Safari-2.0-dashboard/WebCore

2007-09-13 Mark Rowe <mrowe@apple.com>

Merge r12652 from trunk to Safari-2.0-dashboard.

2006-02-07 Adele Peterson <adele@apple.com>

Reviewed by Maciej.

  • Fixed <rdar://problem/3727939> Safari strips \0 characters from HTML tags making them valid

Test: fast/encoding/decoder-allow-null-chars.html

  • kwq/KWQTextCodec.cpp: (KWQTextDecoder::convertLatin1): Removed stripping of null characters (unwanted): ditto.
4:05 PM Changeset in webkit [25549] by bdash
  • 2 edits in branches/Safari-2.0-dashboard/WebCore

2007-09-13 Mark Rowe <mrowe@apple.com>

Merge r24181 from trunk to Safari-2.0-dashboard.

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

Reviewed by Geoff.

Fix for <rdar://problem/5326791> XSS vulnerability: ability to set window.defaultStatus,
window.defaultstatus and window.status cross domains

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

  • bindings/js/kjs_window.cpp: (KJS::Window::put): Adds isSafeScript check for defaultStatus, defaultstatus and status cases.
4:05 PM Changeset in webkit [25548] by bdash
  • 2 edits in branches/Safari-2.0-dashboard/WebKit

2007-09-13 Mark Rowe <mrowe@apple.com>

Merge r18562 from trunk to Safari-2.0-dashboard.

2007-01-03 John Sullivan <sullivan@apple.com>

Reviewed by Kevin Decker

  • fixed <rdar://problem/4145714> WebKit's PDFView's "Open in Preview" puts the PDF in /tmp, both group and world-readable
  • WebView/WebPDFView.mm: (-[WebPDFView _openWithFinder:]): Make the file only readable by the current user
4:03 PM Changeset in webkit [25547] by darin
  • 32 edits in trunk

WebCore:

Reviewed by Oliver.

  • fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text <input> elements with maxlength limit
  • editing/Editor.h: Moved MarkedTextUnderline here and renamed it CompositionUnderline. Moved the rest of the marked text API here and used the term that will be more familiar to those on platforms other than Macintosh, "composition". This helps prevent confusion with the other kinds of mark -- the emacs "mark" and spelling/grammar marks. Also cleaned up the conditionals a bit for the Macintosh-specific parts of this header.
  • editing/Editor.cpp: (WebCore::Editor::Editor): Updated for name change. (WebCore::Editor::clear): Added. To be called by FrameLoader::clear(). (WebCore::Editor::insertTextWithoutSendingTextEvent): Removed code to make inserted text replace the marked text range -- we now deal with this explicitly by not calling this function to replace marked text. Also removed unneeded code that was specific to the use of this to replace the marked text. (WebCore::Editor::selectComposition): Renamed from selectMarkedText. Updated since the composition range is not stored as a Range. (WebCore::Editor::confirmComposition): Added. To be called when changing a composition into actual text. Unlike the old code path, deletes the composition first, then inserts the text, triggering the normal insertion code path and events. This is helpful because it means the inserted text will be truncated by the <input> element, for example. (WebCore::Editor::confirmCompositionWithoutDisturbingSelection): Added. (WebCore::Editor::setComposition): Added. To be called when changing the composition. Takes parameters for the underlines and selection. Unlike the old code path, this passes a flag down that indicates the inserted text is part of a composition. This is helpful because we don't send the event that will cause the <input> element to do truncation. It's also a better API for future improvements to our input method handling. (WebCore::Editor::revealSelectionAfterEditingOperation): Updated for name change. (WebCore::Editor::setIgnoreCompositionSelectionChange): Ditto. (WebCore::Editor::compositionRange): Added. Needed now that the composition is not stored as a Range. (WebCore::Editor::getCompositionSelection): Added.
  • editing/TypingCommand.h:
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): Added an insertedTextIsComposition parameter, and don't send the BeforeTextInsertedEvent if it's true.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Replaced the Macintosh-specific call to setMarkedTextRange with a call to the new Editor::clear().
  • page/Frame.h:
  • page/Frame.cpp:
  • page/FramePrivate.h:
  • page/mac/FrameMac.mm: Removed the marked text code. It was streamlined and moved to Editor, except for the Mac-specific code, which was moved into WebKit.
  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreFrameBridge.mm: Removed some now-unneeded marked text code. (-[WebCoreFrameBridge markedTextNSRange]): Updated for name/API change.
  • rendering/InlineTextBox.h:
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): Updated marked text code for name changes, and also streamlined the code a bit for the case where there is no composition. (WebCore::InlineTextBox::paintCompositionBackground): Name change. (WebCore::InlineTextBox::paintCompositionUnderline): Ditto.
  • rendering/RenderTextControl.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::finishText): Added. Helper function shared by the (WebCore::RenderTextControl::text): (WebCore::getNextSoftBreak): (WebCore::RenderTextControl::textWithHardLineBreaks):
  • platform/CharacterNames.h: Added newlineCharacter.
  • dom/Range.h: Remove the now-unneeded version of toString that converts <br> elements into newlines.
  • dom/Range.cpp: (WebCore::Range::toString): Changed this to use a Vector<UChar> instead of a String so it will not have pathological reallocation performance, and removed the <br> feature. (WebCore::Range::pastEndNode): Made this return 0 when there is no start node. This bit of extra robustness guarantees you can't do a null dereference if the start node is 0 and the end node is not. Not sure this case really exists.
  • page/ContextMenuController.cpp: (ContextMenuController::contextMenuItemSelected): Removed a semi-bogus use of Range::toString(true). The right function to use here is plainText().
  • bridge/EditorClient.h: Removed obsolete markedTextAbandoned function.
  • WebCore.exp: Updated for above changes.

WebKit:

Reviewed by Oliver.

  • fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text <input> elements with maxlength limit
  • WebView/WebHTMLView.mm: (-[WebHTMLView _selectionChanged]): Tweaked code a bit. (-[WebHTMLView markedRange]): Simplified logic, since markedTextNSRange works when there's no composition range. (-[WebHTMLView hasMarkedText]): Call directly to Editor instead of bridge. (-[WebHTMLView unmarkText]): Call new confirmComposition to make it clear that this is confirming text, not just unmarking it to discard it. (extractUnderlines): Added. Converts directly from an NSAttributedString to the CompositionUnderline vector that's used by WebCore. (-[WebHTMLView setMarkedText:selectedRange:]): Changed to use the new setComposition. (-[WebHTMLView insertText:]): Changed to use confirmComposition when appropriate, instead of relying on special behavior of Editor::insertText. (-[WebHTMLView _updateSelectionForInputManager]): Rewrote to use getCompositionSelection and confirmCompositionWithoutDisturbingSelection.
  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm: Removed obsolete markedTextAbandoned function.

win:

Reviewed by Oliver.

  • fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text <input> elements with maxlength limit
  • WebView.cpp: (WebView::resetIME): Change to use confirmCompositionWithoutDisturbingSelection. (WebView::updateSelectionForIME): Update for name changes, and to use new functions in Editor. (WebView::onIMEStartComposition): Removed unneeded call to unmarkText. (compositionToUnderlines): Removed startOffset parameter, since setComposition now handles this. (WebView::onIMEComposition): Changed to use confirmComposition and setComposition. Logic gets a lot cleaner. (WebView::onIMEEndComposition): Removed unneeded calls to Editor. (WebView::onIMERequestCharPosition): Updated for name changes.

LayoutTests:

Reviewed by Oliver.

  • updated test results changed by change in input manager logic
  • platform/mac/editing/input/firstrectforcharacterrange-styled-expected.txt:
  • platform/mac/editing/input/text-input-controller-expected.txt:
  • platform/mac/editing/input/wrapped-line-char-rect-expected.txt: Updated. Small changes in which delegate methods are called.
3:20 PM Changeset in webkit [25546] by andersca
  • 5 edits in trunk/WebCore

Reviewed by Adam and Geoff.

<rdar://problem/5304000>
Windows Safari doesn't always call NPP_SetWindow() for NPAPI plugins.


This does two things:


  1. Makes sure that the plug-in get the correct initial size.


  1. Always updates the size of the HWND, even if the widget size didn't change. This is because the widget size can be different before the HWND has been created.


  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabaseWin::createPluginView):
  • plugins/win/PluginDatabaseWin.h:
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::setFrameGeometry): (WebCore::PluginViewWin::PluginViewWin):
  • plugins/win/PluginViewWin.h:
3:01 PM Changeset in webkit [25545] by kmccullo
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Geof, Sam, Adam, Hyatt, Darin.

  • <rdar://problem/5480234> JS setTimeout function requires a second argument
  • Removed check for number of arguments in setTimeout to behave like other browsers.
  • Added layoutTest setTimeout-no-arguments.html
  • bindings/js/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):

LayoutTests:

Reviewed by Geof, Sam, Adam, Hyatt, Darin.

  • <rdar://problem/5480234> JS setTimeout function requires a second argument
  • Removed check for number of arguments in setTimeout to behave like other browsers.
  • fast/dom/Window/setTimeout-no-arguments-expected.txt: Added.
  • fast/dom/Window/setTimeout-no-arguments.html: Added.
1:51 PM Changeset in webkit [25544] by weinig
  • 13 edits
    1 add in trunk/WebKitTools

Rubber stamped by Darin.

Make DumpRenderTree more cross platform ready.

  • Convert GCController to use the JSCore API instead of the WebScriptObject.
  • Use CF types instead of NS objects.
  • General cleanup.
  • DumpRenderTree/DumpRenderTree.h:
  • DumpRenderTree/DumpRenderTree.mm: (dumpRenderTree): (dump): (runTest):
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/EditingDelegate.m:
  • DumpRenderTree/FrameLoadDelegate.h:
  • DumpRenderTree/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): (-[FrameLoadDelegate dealloc]): (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):
  • DumpRenderTree/GCController.cpp: Added. (GCController::GCController): (GCController::~GCController): (collectCallback): (collectOnAlternateThreadCallback): (getJSObjectCountCallback): (GCController::makeWindowObject): (GCController::getJSClass): (GCController::staticFunctions):
  • DumpRenderTree/GCController.h:
  • DumpRenderTree/GCController.mm: (GCController::collect): (GCController::collectOnAlternateThread): (GCController::getJSObjectCount):
  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::makeWindowObject): (LayoutTestController::getJSClass):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/LayoutTestControllerMac.mm: (LayoutTestController::addDisallowedURL): (waitUntilDoneWatchdogFired): (LayoutTestController::waitUntilDone):
  • DumpRenderTree/ResourceLoadDelegate.m: (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
1:15 PM Changeset in webkit [25543] by hyatt
  • 4 edits in trunk/WebCore

Win32 font improvements.

12:07 PM Changeset in webkit [25542] by ggaren
  • 2 edits in trunk/JavaScriptCore

Try to fix GDK build.

  • wtf/MathExtras.h: (wtf_random_init):
11:52 AM Changeset in webkit [25541] by ggaren
  • 4 edits in trunk/JavaScriptCore

2007-09-12 Geoff Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Fixed <rdar://problem/5429064> 141885 Safari JavaScript: Math.random() slightly less randomly distributed than on Safari / Mac

Math.random was skewed slightly upward because it assumed that RAND_MAX was outside the range of
values that rand() might return. This problem was particularly pronounced on Windows because
the range of values returned by rand() on Windows is 216 smaller than the range of values
return by rand() on Mac.

Fixed by accounting for RAND_MAX return values. Also, switched Windows over to rand_s, which has
a range that's equal to rand()'s range on Mac.

  • kjs/config.h:
  • kjs/math_object.cpp: (MathFuncImp::callAsFunction): Use the new new thing.
  • wtf/MathExtras.h: Platform abstraction for random numbers, to cover over differences on Windows. (wtf_random_init): (wtf_random):
11:10 AM Changeset in webkit [25540] by andersca
  • 2 edits in trunk/WebCore

Reviewed, tweaked and landed by Anders.

<rdar://problem/5461153>
http://bugs.webkit.org/show_bug.cgi?id=15143
Crash seen on Windows


Null check frame before calling Frame::settings.


  • loader/PluginDocument.cpp: (WebCore::PluginTokenizer::writeRawData):
10:25 AM Changeset in webkit [25539] by kmccullo
  • 2 edits in trunk/WebKitTools

Reviewed by Stephanie.

Fix leaks in mac DumpRenderTree.

  • DumpRenderTree/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): Initalize in the correct order. (-[FrameLoadDelegate processWork:]): Delete WorkQueueItem's after dequeueing them.
  • DumpRenderTree/LayoutTestController.cpp: (decodeHostNameCallback): Put return value in a temporary JSRetainPtr to ensure it gets released. (encodeHostNameCallback): ditto.
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/LayoutTestControllerMac.mm: (LayoutTestController::copyDecodedHostName): Rename function to signal that it follows the Create rule. (LayoutTestController::copyEncodedHostName): ditto (LayoutTestController::queueLoad): Use a JSRetainPtr to ensure the url gets released.
10:06 AM Changeset in webkit [25538] by zecke
  • 3 edits
    1 add in trunk/WebCore

2007-09-12 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Mark.

Implement the FileChooser for the WebKit/Gtk+ port by using
the GtkFileChooserDialog and g_path_get_basename to get the
basename for the current filename.

  • WebCore.pro:
  • platform/gdk/FileChooserGdk.cpp: Added. (WebCore::FileChooser::FileChooser): (WebCore::FileChooser::~FileChooser): (WebCore::FileChooser::openFileChooser): (WebCore::FileChooser::basenameForWidth):
  • platform/gdk/TemporaryLinkStubs.cpp:
10:05 AM Changeset in webkit [25537] by zecke
  • 3 edits
    1 add in trunk/WebCore

2007-09-12 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Mark.

Move the "string" functions from the TemporaryLinkStubs.cpp
to LocalizedStringsGdk.cpp and implement them using the text
from the win port and glib-i18n (gettext).

  • platform/gdk/LocalizedStringsGdk.cpp: Added. (WebCore::submitButtonDefaultLabel): (WebCore::inputElementAltText): (WebCore::resetButtonDefaultLabel): (WebCore::searchableIndexIntroduction): (WebCore::fileButtonChooseFileLabel): (WebCore::fileButtonNoFileSelectedLabel): (WebCore::contextMenuItemTagOpenLinkInNewWindow): (WebCore::contextMenuItemTagDownloadLinkToDisk): (WebCore::contextMenuItemTagCopyLinkToClipboard): (WebCore::contextMenuItemTagOpenImageInNewWindow): (WebCore::contextMenuItemTagDownloadImageToDisk): (WebCore::contextMenuItemTagCopyImageToClipboard): (WebCore::contextMenuItemTagOpenFrameInNewWindow): (WebCore::contextMenuItemTagCopy): (WebCore::contextMenuItemTagGoBack): (WebCore::contextMenuItemTagGoForward): (WebCore::contextMenuItemTagStop): (WebCore::contextMenuItemTagReload): (WebCore::contextMenuItemTagCut): (WebCore::contextMenuItemTagPaste): (WebCore::contextMenuItemTagNoGuessesFound): (WebCore::contextMenuItemTagIgnoreSpelling): (WebCore::contextMenuItemTagLearnSpelling): (WebCore::contextMenuItemTagSearchWeb): (WebCore::contextMenuItemTagLookUpInDictionary): (WebCore::contextMenuItemTagOpenLink): (WebCore::contextMenuItemTagIgnoreGrammar): (WebCore::contextMenuItemTagSpellingMenu): (WebCore::contextMenuItemTagShowSpellingPanel): (WebCore::contextMenuItemTagCheckSpelling): (WebCore::contextMenuItemTagCheckSpellingWhileTyping): (WebCore::contextMenuItemTagCheckGrammarWithSpelling): (WebCore::contextMenuItemTagFontMenu): (WebCore::contextMenuItemTagBold): (WebCore::contextMenuItemTagItalic): (WebCore::contextMenuItemTagUnderline): (WebCore::contextMenuItemTagOutline): (WebCore::contextMenuItemTagWritingDirectionMenu): (WebCore::contextMenuItemTagDefaultDirection): (WebCore::contextMenuItemTagLeftToRight): (WebCore::contextMenuItemTagRightToLeft): (WebCore::contextMenuItemTagInspectElement): (WebCore::searchMenuNoRecentSearchesText): (WebCore::searchMenuRecentSearchesText): (WebCore::searchMenuClearRecentSearchesText): (WebCore::unknownFileSizeText):
  • platform/gdk/TemporaryLinkStubs.cpp:
10:05 AM Changeset in webkit [25536] by zecke
  • 3 edits
    2 adds in trunk/WebCore

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

Reviewed by Mark.

EventHandlerGdk::createDraggingClipboard must succeed otherwise an
ASSERT is hit. Add Clipboard stubs for the Gdk/Gtk+ port and
instantiate ClipboardGdk from the EventHandlerGdk to make the ASSERT
go away. In contrast to the Windows and Mac port this clipboard is not
inheriting CachedResourceClient. This was proposed by Oliver.

  • WebCore.pro:
  • page/gdk/EventHandlerGdk.cpp:
  • platform/gdk/ClipboardGdk.cpp: Added. (WebCore::ClipboardGdk::ClipboardGdk): (WebCore::ClipboardGdk::~ClipboardGdk): (WebCore::ClipboardGdk::clearData): (WebCore::ClipboardGdk::clearAllData): (WebCore::ClipboardGdk::getData): (WebCore::ClipboardGdk::setData): (WebCore::ClipboardGdk::types): (WebCore::ClipboardGdk::dragLocation): (WebCore::ClipboardGdk::dragImage): (WebCore::ClipboardGdk::setDragImage): (WebCore::ClipboardGdk::dragImageElement): (WebCore::ClipboardGdk::setDragImageElement): (WebCore::ClipboardGdk::createDragImage): (WebCore::ClipboardGdk::declareAndWriteDragImage): (WebCore::ClipboardGdk::writeURL): (WebCore::ClipboardGdk::writeRange): (WebCore::ClipboardGdk::hasData):
  • platform/gdk/ClipboardGdk.h: Added.
7:50 AM Changeset in webkit [25535] by antti
  • 5 edits in trunk

JavaScriptCore:

Reviewed by Maciej.


Small addition to previous path to cover
http://bugs.webkit.org/show_bug.cgi?id=11399
window.eval runs in the global scope of the calling window


Switch variable scope as well.

  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction):

LayoutTests:

Reviewed by Maciej.


Change test case to cover
http://bugs.webkit.org/show_bug.cgi?id=11399
too.

  • fast/js/window-eval-context-expected.txt:
  • fast/js/window-eval-context.html:
6:54 AM Changeset in webkit [25534] by antti
  • 5 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Geoff, Maciej.


Fix <rdar://problem/5445058>
REGRESSION: Unable to upload picture to eBay auction due to domain security check


eBay uses window.eval() between windows. In Firefox window.eval() switches execution
and security context to the target window, something WebKit did not do. With WebKit
security tightening in r24781, this broke picture uploads.


Fix by making WebKit switch context in window.eval().


  • kjs/Context.cpp: (KJS::Context::Context): (KJS::Context::~Context):
  • kjs/context.h: Save and restore interpreter context independently from calling context.


  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction): If eval is called for global object different than current one, switch execution context to that object and push it to scope.

LayoutTests:

Reviewed by Geoff, Maciej.


Test for <rdar://problem/5445058>
REGRESSION: Unable to upload picture to eBay auction due to domain security check

  • fast/js/window-eval-context-expected.txt: Added.
  • fast/js/window-eval-context.html: Added.
1:03 AM Changeset in webkit [25533] by justing
  • 1 edit in trunk/LayoutTests/editing/execCommand/5144139-1-expected.txt

Forgot to check in this new expected result which reflect corrected selection endpoints.

Sep 12, 2007:

11:27 PM Changeset in webkit [25532] by oliver
  • 3 edits in trunk/WebCore

2007-09-12 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Corrections missed in previous revision

  • platform/Cursor.h:
  • platform/win/CursorWin.cpp: (WebCore::loadCursorByName):
10:51 PM Changeset in webkit [25531] by ddkilzer
  • 3 edits in trunk/LayoutTests

LayoutTests:

Reviewed by Darin.

  • plugins/mouse-events.html: Removed invalid return statement.
  • plugins/open-and-close-window-with-plugin.html: Ditto.
10:33 PM Changeset in webkit [25530] by oliver
  • 9 edits
    3 adds in trunk

2007-09-12 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

WebKit:

Fixing

<rdar://problem/5018591> Windows doesn't have a standard vertical text cursor
<rdar://problem/5224996> Add zoom in and zoom out cursors

Add images for vertical text and zoom in and out cursors to WebKit resources.

  • WebKit.vcproj/verticalTextCursor.png: Added.
  • WebKit.vcproj/WebKit.rc:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/resource.h:
  • WebKit.vcproj/zoomInCursor.png: Added.
  • WebKit.vcproj/zoomOutCursor.png: Added.
  • WebKitDLL.cpp: (loadResourceIntoBuffer):

WebCore:

Fixing

<rdar://problem/5018591> Windows doesn't have a standard vertical text cursor
<rdar://problem/5224996> Add zoom in and zoom out cursors

Added SharedCursor for CursorWin so we can correctly track lifetime of custom/image
based cursors, such as the vertical text and zooming cursors.

  • platform/Cursor.h: (WebCore::SharedCursor::SharedCursor): (WebCore::SharedCursor::~SharedCursor): (WebCore::SharedCursor::nativeCursor):
  • platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): (WebCore::loadCursorByName): (WebCore::loadSharedCursor): (WebCore::pointerCursor): (WebCore::crossCursor): (WebCore::handCursor): (WebCore::iBeamCursor): (WebCore::waitCursor): (WebCore::helpCursor): (WebCore::eastResizeCursor): (WebCore::northResizeCursor): (WebCore::northEastResizeCursor): (WebCore::northWestResizeCursor): (WebCore::southResizeCursor): (WebCore::southEastResizeCursor): (WebCore::southWestResizeCursor): (WebCore::westResizeCursor): (WebCore::northSouthResizeCursor): (WebCore::eastWestResizeCursor): (WebCore::northEastSouthWestResizeCursor): (WebCore::northWestSouthEastResizeCursor): (WebCore::columnResizeCursor): (WebCore::rowResizeCursor): (WebCore::moveCursor): (WebCore::verticalTextCursor): (WebCore::progressCursor): (WebCore::notAllowedCursor): (WebCore::zoomInCursor): (WebCore::zoomOutCursor):
  • platform/win/WidgetWin.cpp: (WebCore::Widget::setCursor):
8:10 PM Changeset in webkit [25529] by weinig
  • 5 edits in trunk/WebKitTools

Reviewed by Stephanie.

Fix leaks in mac DumpRenderTree.

  • DumpRenderTree/FrameLoadDelegate.mm: (-[FrameLoadDelegate init]): Initalize in the correct order. (-[FrameLoadDelegate processWork:]): Delete WorkQueueItem's after dequeueing them.
  • DumpRenderTree/LayoutTestController.cpp: (decodeHostNameCallback): Put return value in a temporary JSRetainPtr to ensure it gets released. (encodeHostNameCallback): ditto.
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/LayoutTestControllerMac.mm: (LayoutTestController::copyDecodedHostName): Rename function to signal that it follows the Create rule. (LayoutTestController::copyEncodedHostName): ditto (LayoutTestController::queueLoad): Use a JSRetainPtr to ensure the url gets released.
7:29 PM Changeset in webkit [25528] by aroben
  • 3 edits in trunk/WebKit/win

Initialize SafariTheme early in WebKit's instantiation

New versions of SafariTheme will require this initialization. We have
to use GetProcAddress for now since the initialize method doesn't
exist in any released SafariTheme.

Reviewed by Ada.

  • WebKit.vcproj/debug_internal.vsprops: Pick up the debug SafariTheme.
  • WebKitClassFactory.cpp: (WebKitClassFactory::WebKitClassFactory): Call STInitialize.
7:16 PM Changeset in webkit [25527] by weinig
  • 2 edits in trunk/JavaScriptCore

Reviewed by Geoffrey Garen.

<rdar://problem/5478717> JSStringCreateWithCFString leaks when passed a zero length CFStringRef

  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString): Special case the zero length string and remove the UTF16 optimized path since it will always leak due to the fact that we won't be able to free the backing store that the CFStringRef provides.
7:08 PM Changeset in webkit [25526] by beidson
  • 3 edits in trunk/WebCore

Reviewed by Geoff Garen

<rdar://problem/5478577> - Further improve cold launch time with Icon Database changes

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::open): Store the directory and full path for later usage and access in the API, respectively Move the makeAllDirectories() call to the background thread. (WebCore::IconDatabase::IconDatabase): Don't set up the timer here... (WebCore::IconDatabase::scheduleOrDeferSyncTimer): Create the timer on demand (WebCore::IconDatabase::iconDatabaseSyncThread): makeAllDirectories() here where it's not as expensive (WebCore::IconDatabase::cleanupSyncThread): Cleanup the directory as well as full path
  • loader/icon/IconDatabase.h: m_syncTimer becomes an OwnPtr, and we add the database directory as a member to set it on the main thread and act with it on the background thread
6:53 PM Changeset in webkit [25525] by adachan
  • 2 edits in trunk/WebKit/win

<rdar://problem/5478690> Regression: printing: footer only appears on the first page of print

Reviewed by Adam.

  • WebFrame.cpp: (WebFrame::spoolPages): the footer rect is relative to the top left of the current page. So instead of passing pageRect.bottom() as the top of the footer rect (which is relative to the document), we should pass in headerHeight plus the height of the pageRect.
6:31 PM Changeset in webkit [25524] by kmccullo
  • 5 edits
    1 add in trunk/WebKitTools

Reviewed by Darin.

  • Simplified code paths and extracted out functions to increase encapsulation.
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::breakpointEditorHTMLCallback): (DebuggerDocument::isPausedCallback): (DebuggerDocument::pauseCallback): (DebuggerDocument::resumeCallback): (DebuggerDocument::stepIntoCallback): (DebuggerDocument::evaluateScriptCallback): (DebuggerDocument::currentFunctionStackCallback): (DebuggerDocument::localScopeVariableNamesForCallFrameCallback): (DebuggerDocument::valueForScopeVariableNamedCallback): (DebuggerDocument::logCallback):
  • Drosera/DebuggerDocument.h: (DebuggerDocument::getPaused):
  • Drosera/mac/DebuggerClient.mm: (-[DebuggerClient pause:]): (-[DebuggerClient resume:]): (-[DebuggerClient stepInto:]): (-[DebuggerClient stepOver:]): (-[DebuggerClient stepOut:]): (-[DebuggerClient showConsole:]): (-[DebuggerClient closeCurrentFile:]): (-[DebuggerClient validateUserInterfaceItem:]):
  • Drosera/mac/DebuggerDocumentPlatform.mm: Added. (+[NSString stringOrNilFromWebScriptResult:]): (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog):
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
5:23 PM Changeset in webkit [25523] by andersca
  • 2 edits in trunk/WebKit/win

Reviewed by Darin (reluctantly).

<rdar://problem/5320461>
http://bugs.webkit.org/show_bug.cgi?id=14548
REGRESSION (r23987-r24061) : Reproducible crash with a local stylesheet file


Add a workaround which converts the string passed in to an URL if it's a path.


  • WebView.cpp: (WebView::updateWebCoreSettingsFromPreferences):
5:04 PM Changeset in webkit [25522] by justing
  • 7 edits
    6 adds
    3 deletes in trunk

WebCore:

Reviewed by Tristan.

<rdar://problem/5469868>
GoogleDocs: A hang occurs when applying list styling to a selection in a <table>


When list insertion moves selected paragraphs into list items, it relies on
the selection preservation code inside moveParagraphs to iterate over the
selected paragraphs. If a selection is ever restored incorrectly (before
the original, or inside the original) list insertion will go into an infinite loop.


In this hang, a table was selected and the selection preservation code incorrectly
restored a selection, placing it inside the table.


The bug was that a TextIterator, when being used for selection preservation, must
emit a character between every VisiblePosition in the Range used to create the
iterator.


  • editing/TextIterator.cpp: (WebCore::TextIterator::TextIterator): Renamed the boolean that we use for selection preservation. It used to be m_emitForReplacedElements because we believed that replaced elements were the only case where TextIterators should have emitted differently when used for selection preservation. (WebCore::TextIterator::handleReplacedElement): Ditto. (WebCore::TextIterator::shouldRepresentNodeOffsetZero): Represent the position before block tables, but only if we are emitting for selection preservation. (WebCore::TextIterator::shouldEmitSpaceBeforeAndAfterNode): We should emit a space before and after block tables if we are emitting for selection preservation (because we have VisiblePositions before and after them). (WebCore::TextIterator::handleNonTextNode): Use a renamed variable.
  • editing/TextIterator.h: Made shouldEmitSpaceBeforeAndAfterNode a member function, because whether or not we emit spaces before and after a block table depends we're emitting for selection preservation.

LayoutTests:

Reviewed by Tristan.

Demonstrates bug:

  • editing/execCommand/5469868-expected.txt: Added.
  • editing/execCommand/5469868.html: Added.


Fixed (and moved expected results to platform/mac):

  • editing/style/table-selection-expected.checksum: Removed.
  • editing/style/table-selection-expected.png: Removed.
  • editing/style/table-selection-expected.txt: Removed.
  • platform/mac/editing/style: Added.
  • platform/mac/editing/style/table-selection-expected.checksum: Added.
  • platform/mac/editing/style/table-selection-expected.png: Added.
  • platform/mac/editing/style/table-selection-expected.txt: Added.


Fixed:

  • platform/mac/editing/execCommand/5432254-2-expected.checksum:
  • platform/mac/editing/execCommand/5432254-2-expected.png:
  • platform/mac/editing/execCommand/5432254-2-expected.txt:
4:53 PM Changeset in webkit [25521] by bdakin
  • 9 edits
    4 adds in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5464998> REGRESSION (9A543): Using Sort
options takes you back to search screen on zappos.com

The current mechanism for preserving form elements across removes
did not work in the case where the input was moved by the parser to
be out of scope of the form. This fixes that problem by having the
parser keep track of the preserve boolean rather than the current
form element.

  • dom/Tokenizer.h: (WebCore::Tokenizer::isHTMLTokenizer): New function.
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::HTMLFormElement): Get rid of m_preserveAcrossRemove.
  • html/HTMLFormElement.h: (WebCore::HTMLFormElement::isMalformed): Get rid of m_preserveAcrossRemove.
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removedFromTree): Ask the parser if it is currently handling residual style rather than asking the form if it wants to preserveAcrossRemove.
  • html/HTMLParser.cpp: (WebCore::HTMLParser::HTMLParser): New boolean to initialize. (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Set m_handlingResidualStyleAcrossBlocks to true at the beginning and false at the end.
  • html/HTMLParser.h: (WebCore::HTMLParser::isHandlingResidualStyleAcrossBlocks):
  • html/HTMLTokenizer.h: (WebCore::HTMLTokenizer::isHTMLTokenizer): (WebCore::HTMLTokenizer::htmlParser):

LayoutTests:

Reviewed by Hyatt.


Test for <rdar://problem/5464998> REGRESSION (9A543): Using Sort
options takes you back to search screen on zappos.com

  • fast/forms/preserveFormDuringResidualStyle.html: Added.
  • platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.checksum: Added.
  • platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.png: Added.
  • platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.txt: Added.
4:43 PM Changeset in webkit [25520] by hyatt
  • 1 edit in trunk/WebCore/platform/win/KeyEventWin.cpp

LAnd piece of alt patch I forgot to.

3:23 PM Changeset in webkit [25519] by ddkilzer
  • 2 edits in trunk/WebKit

WebKit:

Rubber-stamped by Darin and reviewed by Adam.

Removed import of unused icon database headers.

  • WebCoreSupport/WebFrameBridge.mm:
2:12 PM Changeset in webkit [25518] by thatcher
  • 1 edit in trunk/WebKitTools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj

Add back the -Wno-deprecated-declarations flag to DumpRenderTree.mm. Fixes the build on Leopard.

1:11 PM Changeset in webkit [25517] by weinig
  • 2 edits in trunk/WebKitTools

Build fix for Buildbot.

  • DumpRenderTree/DumpRenderTree.mm: (dump):
1:00 PM Changeset in webkit [25516] by kmccullo
  • 2 edits in trunk/WebKitTools

Reviewed by Geof.

  • Updated the leaks list for leopard to help identify regressions.
  • Scripts/run-webkit-tests:
12:51 PM Changeset in webkit [25515] by weinig
  • 19 edits
    3 copies
    3 moves
    4 adds
    1 delete in trunk

WebKitTools:

Rubber stamped by Darin.

Convert the LayoutTestController to use the JSCore API instead of WebScriptObject.

  • DumpRenderTree/DumpRenderTree.h: Re-order variables.
  • DumpRenderTree/DumpRenderTree.m: Removed.
  • DumpRenderTree/DumpRenderTree.mm: Copied from DumpRenderTree/DumpRenderTree.m. (stopJavaScriptThreads): Fix initialization. (setDefaultColorProfileToRGB): Add explicit cast from void*. (dumpRenderTree): Ditto. (runTest): Used the WorkQueue from the windows DRT instead of the old NSMutableArray one.
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/FrameLoadDelegate.h: Add LayoutTestController instance variable.
  • DumpRenderTree/FrameLoadDelegate.m: Removed.
  • DumpRenderTree/FrameLoadDelegate.mm: Copied from DumpRenderTree/FrameLoadDelegate.m. (-[FrameLoadDelegate init]): (-[FrameLoadDelegate dealloc]): (-[FrameLoadDelegate processWork:]): (-[FrameLoadDelegate webView:locationChangeDone:forDataSource:]): (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]): Convert to use the new JSCore based LayoutTestController and the new WorkQueue.


  • DumpRenderTree/LayoutTestController.cpp: Added. (LayoutTestController::LayoutTestController): (LayoutTestController::~LayoutTestController): (dumpAsTextCallback): (dumpBackForwardListCallback): (dumpChildFramesAsTextCallback): (dumpChildFrameScrollPositionsCallback): (dumpDOMAsWebArchiveCallback): (dumpEditingCallbacksCallback): (dumpFrameLoadCallbacksCallback): (dumpResourceLoadCallbacksCallback): (dumpSelectionRectCallback): (dumpSourceAsWebArchiveCallback): (dumpTitleChangesCallback): (repaintSweepHorizontallyCallback): (setCallCloseOnWebViewsCallback): (setCanOpenWindowsCallback): (setCloseRemainingWindowsWhenCompleteCallback): (testRepaintCallback): (addFileToPasteboardOnDragCallback): (addDisallowedURLCallback): (clearBackForwardListCallback): (decodeHostNameCallback): (displayCallback): (encodeHostNameCallback): (keepWebHistoryCallback): (notifyDoneCallback): (queueBackNavigationCallback): (queueForwardNavigationCallback): (queueLoadCallback): (queueReloadCallback): (queueScriptCallback): (setAcceptsEditingCallback): (setCustomPolicyDelegateCallback): (setMainFrameIsFirstResponderCallback): (setTabKeyCyclesThroughElementsCallback): (setUseDashboardCompatibilityModeCallback): (setUserStyleSheetEnabledCallback): (setUserStyleSheetLocationCallback): (setWindowIsKeyCallback): (waitUntilDoneCallback): (windowCountCallback): (LayoutTestController::makeWindowObject): (LayoutTestController::getLayoutTestControllerJSClass): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h: Replaced.
  • DumpRenderTree/LayoutTestController.m: Removed.
  • DumpRenderTree/LayoutTestControllerMac.mm: Added. (LayoutTestController::dumpAsText): (LayoutTestController::dumpBackForwardList): (LayoutTestController::dumpChildFramesAsText): (LayoutTestController::dumpChildFrameScrollPositions): (LayoutTestController::dumpDOMAsWebArchive): (LayoutTestController::dumpEditingCallbacks): (LayoutTestController::dumpFrameLoadCallbacks): (LayoutTestController::dumpResourceLoadCallbacks): (LayoutTestController::dumpSelectionRect): (LayoutTestController::dumpSourceAsWebArchive): (LayoutTestController::dumpTitleChanges): (LayoutTestController::repaintSweepHorizontally): (LayoutTestController::setCallCloseOnWebViews): (LayoutTestController::setCanOpenWindows): (LayoutTestController::setCloseRemainingWindowsWhenComplete): (LayoutTestController::testRepaint): (LayoutTestController::addFileToPasteboardOnDrag): (LayoutTestController::addDisallowedURL): (LayoutTestController::clearBackForwardList): (LayoutTestController::decodeHostName): (LayoutTestController::encodeHostName): (LayoutTestController::display): (LayoutTestController::keepWebHistory): (LayoutTestController::notifyDone): (LayoutTestController::queueBackNavigation): (LayoutTestController::queueForwardNavigation): (LayoutTestController::queueLoad): (LayoutTestController::queueReload): (LayoutTestController::queueScript): (LayoutTestController::setAcceptsEditing): (LayoutTestController::setCustomPolicyDelegate): (LayoutTestController::setMainFrameIsFirstResponder): (LayoutTestController::setTabKeyCyclesThroughElements): (LayoutTestController::setUseDashboardCompatibilityMode): (LayoutTestController::setUserStyleSheetEnabled): (LayoutTestController::setUserStyleSheetLocation): (LayoutTestController::setWindowIsKey): (+[WaitToDumpWatchdog waitUntilDoneWatchdogFired]): (LayoutTestController::waitUntilDone): (LayoutTestController::windowCount): Use the JSCore API to implement the LayoutTestController.
  • DumpRenderTree/ObjCController.h:
  • DumpRenderTree/ObjCController.m: (+[ObjCController isSelectorExcludedFromWebScript:]): (+[ObjCController webScriptNameForSelector:]): (-[ObjCController accessStoredWebScriptObject]): (-[ObjCController storeWebScriptObject:]): (-[ObjCController dealloc]): (-[ObjCController invokeUndefinedMethodFromWebScript:withArguments:]): Move WebScriptObject tests to ObjCController.
  • DumpRenderTree/UIDelegate.m: Removed.
  • DumpRenderTree/UIDelegate.mm: Copied from DumpRenderTree/UIDelegate.m.
  • DumpRenderTree/WorkQueue.cpp: Copied from DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WorkQueue.cpp.
  • DumpRenderTree/WorkQueue.h: Copied from DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WorkQueue.h.
  • DumpRenderTree/WorkQueueItem.h: Copied from DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WorkQueueItem.h. (WorkQueueItem::~WorkQueueItem): (LoadItem::LoadItem): (LoadItem::url): (LoadItem::target): (ScriptItem::ScriptItem): (ScriptItem::script):
  • DumpRenderTree/WorkQueueItemMac.mm: Added. (LoadItem::invoke): (ReloadItem::invoke): (ScriptItem::invoke): (BackForwardItem::invoke): Copy WorkQueue and WorkQueueItem from windows DRT. Changed the WorkQueueItem to use JSStringRefs instead of wstrings to avoid conversion until the last possible moment. These changes will be merged with the windows DRT when we start sharing code.

LayoutTests:

Rubber stamped by Darin.

Fix layout tests for new JSCore API based LayoutTestController.

  • fast/dom/resources/wrapper-identity-base.js: Use ObjCController for objective-c tests.
  • http/tests/local/file-url-sent-as-referer.html: Remove unused illegal call that now causes controller to fail due to not allowing undefined method calls.
  • http/tests/xmlhttprequest/default-content-type-dashboard.html: Fix typo in function name.
  • http/tests/xmlhttprequest/svg-created-by-xhr-disallowed-in-dashboard.html: Fix typo in function name.
  • plugins/call-as-function-test-expected.txt:
  • plugins/call-as-function-test.html: Use ObjCController to test WebScriptObject.
  • plugins/root-object-premature-delete-crash.html: Use ObjCController to test WebScriptObject
  • plugins/undefined-property-crash.html: Use ObjCController to test WebScriptObject.
  • svg/custom/embedded-svg-disallowed-in-dashboard.xml: Fix typo in function name.
  • svg/custom/manually-parsed-embedded-svg-disallowed-in-dashboard.html: Fix typo in function name.
  • svg/custom/manually-parsed-svg-disallowed-in-dashboard.html: Fix typo in function name.
  • svg/custom/svg-disallowed-in-dashboard-object.html: Fix typo in function name.
11:46 AM Changeset in webkit [25514] by staikos
  • 2 edits in trunk/WebCore

2007-09-12 George Staikos <staikos@kde.org>

Fix compilation in some configurations for patch I reviewed and missed
this option on.

  • platform/qt/CursorQt.cpp: (WebCore::Cursor::Cursor):
11:45 AM Changeset in webkit [25513] by kmccullo
  • 8 edits in trunk/WebKitTools

Reviewed by Maciej.

  • Updated Win side to take advantage of the platform separating changes.
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::localScopeVariableNamesForCallFrame):
  • Drosera/DebuggerDocument.h:
  • Drosera/win/DebuggerClient.cpp: (DebuggerClient::pause): (DebuggerClient::resume): (DebuggerClient::stepInto): (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog):
  • Drosera/win/DebuggerClient.h:
  • Drosera/win/Drosera.cpp: (Drosera::Drosera): (Drosera::windowScriptObjectAvailable): (Drosera::initWithServerName): (Drosera::switchToServerNamed):
  • Drosera/win/Drosera.h:
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
11:39 AM Changeset in webkit [25512] by beidson
  • 3 edits
    1 delete in trunk/WebCore

Reviewed by Tim Hatcher and Kevin Decker

<rdar://problem/5367045> - Launch time regression due to accessing resource from a different bundle

When the default icon was moved from WebKit to WebCore, we had to access an entirely new bundle on launch which
measurably increased time during launch accessing the disk.

Instead of moving it back to the WebKit bundle, lets make launch time even faster by compiling in the icon.

  • Resources/urlIcon.tiff: Removed.
  • WebCore.xcodeproj/project.pbxproj: Removed urlIcon.tiff
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::defaultIcon): Compile in the icon data here.
11:15 AM Changeset in webkit [25511] by aroben
  • 2 edits in trunk/WebCore

Always specify that slider thumbs are small when painting with SafariTheme

This is the only size we support.

Reviewed by Sam.

  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintSliderThumb):
11:03 AM Changeset in webkit [25510] by beidson
  • 2 edits in trunk/WebCore

Reviewed by Darin

<rdar://problem/5474753> - ASSERT in IconDatabase ReadySQLStatement

  • loader/icon/IconDatabase.cpp: (WebCore::readySQLStatement): This is a LOG_ERROR situation, not really an ASSERT situation
10:52 AM Changeset in webkit [25509] by aroben
  • 2 edits in trunk/WebCore

Don't ask SafariTheme to draw focus rings around text controls

We do this ourselves.

Reviewed by Oliver.

  • rendering/RenderThemeSafari.cpp:
10:48 AM Changeset in webkit [25508] by beidson
  • 2 edits in trunk/WebCore

Reviewed by Darin

<rdar://problem/5475639> and http://bugs.webkit.org/show_bug.cgi?id=15185 -
Prevent two WebKits from fighting over the database schema in the future in case it ever changes again

By telling the "older schema" WebKit to simply close itself and not bother to do any icon related stuff
if the database schema is newer, we prevent the possibility of an older webkit run side-by-side with a newer
WebKit causing icon database issues.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::defaultDatabaseFilename): Rev the icon database filename to be "WebpageIcons.db" The name is more appropriate for what is actually stored in the file, and since we're already not converting v5 to v6 icons, making this leap now makes sense and gives us a good "future-proof" baseline (WebCore::isValidDatabase): Change the validity check to be "less then" instead of "not equal to" - the "greater than" case is now handled in performOpenInitialization() (WebCore::IconDatabase::performOpenInitialization): If the schema version is greater than the current, then close the database as to not conflict with the newer version. Also noted that the integrity check failure should actually close the sql database, not the icondatabase (WebCore::IconDatabase::syncThreadMainLoop): If termination has already been requested, skip straight to cleanup (WebCore::IconDatabase::cleanupSyncThread): More correctly set the "sync thread running" flag to false here, as the thread can now decide to exit on its own
10:16 AM Changeset in webkit [25507] by treat
  • 2 edits in trunk/WebCore

Patch from Mike Fenton to allow custom cursors.

10:12 AM Changeset in webkit [25506] by oliver
  • 10 edits in trunk/LayoutTests

Rubber stamped by Kevin D.


Fix layout test results effected by turning off <use> entirely

  • svg/W3C-SVG-1.1/animate-elem-40-t-expected.checksum:
  • svg/W3C-SVG-1.1/animate-elem-40-t-expected.png:
  • svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
  • svg/W3C-SVG-1.1/struct-use-01-t-expected.checksum:
  • svg/W3C-SVG-1.1/struct-use-01-t-expected.png:
  • svg/W3C-SVG-1.1/struct-use-01-t-expected.txt:
  • svg/W3C-SVG-1.1/text-text-05-t-expected.checksum:
  • svg/W3C-SVG-1.1/text-text-05-t-expected.png:
  • svg/W3C-SVG-1.1/text-text-05-t-expected.txt:

Sep 11, 2007:

8:16 PM Changeset in webkit [25505] by kdecker
  • 8 edits
    2 adds in trunk

Reviewed by Oliver Hunt.

Fixed: <rdar://problem/5472402> crash due to infinite recursion in expandUseElementsInShadowTree on SVG from wikipedia

  • ksvg2/svg/SVGUseElement.cpp: Added SVG_EXPERIMENTAL #ifdef for expandUseElementsInShadowTree(). (WebCore::SVGUseElement::buildPendingResource): Ditto. (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements): Tweaked an ASSERT to not fire on non-experimental builds.
  • ksvg2/svg/SVGUseElement.h: Added SVG_EXPERIMENTAL #ifdef for expandUseElementsInShadowTree().
6:51 PM Changeset in webkit [25504] by sfalken
  • 1 copy in tags/Safari-523.5b

New tag.

4:32 PM Known incompatibilities between open-source WebKit and Safari edited by beidson@apple.com
(diff)
3:44 PM Changeset in webkit [25503] by beidson
  • 4 edits in trunk/WebCore

Reviewed by Maciej

Fix for <rdar://problem/5473046> - Crash when resetting all icons

Originally I'd written the "reset all icons" to be synchronous on the main thread, but it
was decided that it should be async since it involved I/O. Turns out it needs to be... both!
Synchronous removal of all in-memory records of icons, and then continue and clean up the
on-disk database on the background thread.

Also, it turns out that resetting all the page url retain counts should *not* be part of
"reset all icons" because it breaks various contracts the API makes about maintaining retain counts.

The problem that occured here was removing all the icons, then all the history items that were
removed as part of "Reset Safari..." would try to release their icon, but their icon doesn't exist
anymore.

We get around this by simply leaving the in-memory page url records and retain counts alone - they
are still wiped from disk.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::removeAllIcons): Clear in-memory records of all icons then tell the thread to wipe the on-disk tables (WebCore::IconDatabase::removeAllIconsOnThread): Only do the disk cleanup - in-memory maintenance is handled on the main thread (WebCore::IconDatabase::cleanupSyncThread): Now that it's possible for new "icons to be written to disk" to appear while on-disk deleting is occuring, let the cleanup procedure perform 1 final write *after* it does the remove all icons
  • loader/icon/IconDatabase.h: Removed unused lock and condition
  • loader/icon/PageURLRecord.cpp: (WebCore::PageURLRecord::setIconRecord): Allow setting a NULL icon record, so a PageURLRecord can be cleared as part of removeAllIcons()
3:13 PM Changeset in webkit [25502] by tristan
  • 2 edits in trunk/WebCore

Reviewed by David Harrison.


<rdar://problem/5467203> CrashTracer: [USER] 1 crash in Mail at <unknown binary>: WebCore::Range::startContainer const

  • editing/SelectionController.cpp: (WebCore::SelectionController::addRange): (WebCore::SelectionController::setSelectedRange): Added a check to make sure the passed in Range* value is not null before performing operations on it.
2:50 PM Changeset in webkit [25501] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Darin.

Remove the unused class_getMethodImplementation function.

  • Misc/WebNSObjectExtras.h:
1:59 PM Changeset in webkit [25500] by justing
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Maciej.


<rdar://problem/5458246>
GoogleDocs: A hang occurs when applying list styling to selection that contains a <HR>


List insertion moves selected paragraphs into list items, and relies on the selection
preservation code inside moveParagraphs to iterate over the selected paragraphs.
When list insertion would try to listify a paragraph that came after a list item
containing an <hr>, the selection preservation code would set an incorrect ending
selection because of a TextIterator bug, and we would try to listify the same
paragraph over and over.


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): Pass range compliant equivalents to the Range constructor here. The position [hr, 0] is not a valid DOM Range endpoint for example.
  • editing/TextIterator.cpp: (WebCore::shouldEmitSpaceForNode): Added. (WebCore::TextIterator::handleNonTextNode): Emit a space to represent a horizontal rule, since it has VisiblePositions before and after it, but only for TextIterators used for selection preservation, so innerText will be unaffected.

LayoutTests:

Reviewed by Maciej.

  • editing/execCommand/5458246-expected.txt: Added.
  • editing/execCommand/5458246.html: Added.
1:57 PM Changeset in webkit [25499] by kmccullo
  • 2 edits
    2 moves in trunk/WebKitTools

Reviewed by Adam.

  • Just doing the moves in a separate patch so the changes are easier to see.
  • Drosera/win/DebuggerClient.cpp: Copied from Drosera/win/DebuggerDocumentWin.cpp.
  • Drosera/win/DebuggerClient.h: Copied from Drosera/win/DebuggerDocumentWin.h.
  • Drosera/win/DebuggerDocumentWin.cpp: Removed.
  • Drosera/win/DebuggerDocumentWin.h: Removed.
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
11:53 AM Changeset in webkit [25498] by ggaren
  • 3 edits in trunk/WebKit

Reviewed by Oliver Hunt.


Fixed CFNetwork version check so it actually works.

  • Misc/WebKitVersionChecks.h:
  • WebView/WebView.mm: (+[WebView _setCacheModel:]): Don't use NSVersionOfLinkTimeLibrary because we don't link against CFNetwork directly, so it returns -1. Also, use the proper hex encoding instead of decimal numbers.
11:29 AM Changeset in webkit [25497] by adachan
  • 3 edits in trunk/WebCore

<rdar://problem/5472130> Support NTLM authentication via CFNetwork.

Reviewed by Darin.

  • platform/network/ProtectionSpace.h: (WebCore::):
  • platform/network/cf/AuthenticationCF.cpp: (WebCore::createCF): (WebCore::core):
11:11 AM Changeset in webkit [25496] by darin
  • 1 edit in trunk/WebKit/win/WebView.cpp

Roll out accidentally-checked in change.

11:10 AM Changeset in webkit [25495] by darin
  • 3 edits in trunk/WebKit
  • redo fix for <rdar://problem/5472899> REGRESSION (TOT): Crash in FrameLoadDelegate loading stationery
  • WebView/WebView.mm: (getMethod): Added. (-[WebView _cacheResourceLoadDelegateImplementations]): Use getMethod. (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
10:47 AM Changeset in webkit [25494] by darin
  • 5 edits in trunk

WebCore:

Rubber-stamped by Dave Harrison.

  • fixed pasteboard types here to match WebKit and use constants instead of WebKitSystemInterface
  • platform/mac/PasteboardMac.mm: Use constants for all pasteboard type strings.
  • platform/mac/WebCoreSystemInterface.h: Removed wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName.

WebKit:

Rubber-stamped by Dave Harrison.

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Removed wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName.
9:41 AM Changeset in webkit [25493] by darin
  • 5 edits in trunk/WebKit

Reviewed by Mark Rowe.

  • fix <rdar://problem/5472899> REGRESSION (TOT): Crash in FrameLoadDelegate loading stationery
  • Misc/WebNSObjectExtras.h: (class_getMethodImplementation): Added. (method_setImplementation): Added.
  • WebView/WebHTMLView.mm: (+[WebHTMLViewPrivate initialize]):
  • Carbon/HIViewAdapter.m: (+[HIViewAdapter bindHIViewToNSView:nsView:]): Remove old-ObjC code path, since WebNSObjectExtras.h now implements everything we need.
  • WebView/WebView.mm: (-[WebView _cacheResourceLoadDelegateImplementations]): Don't bother doing a separate respondsToSelector call, since class_getMethodImplementation will return 0 for selectors that we don't respond to. The bug fix is to actually set the cached pointer to 0. Also get rid of the unnecessary use of a macro; instead use the functions from WebNSObjectExtras.h on Tiger and the appropriate function directly on Leopard. (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
9:35 AM Changeset in webkit [25492] by ddkilzer
  • 2 edits in trunk/WebKitTools

WebKitTools:

Don't overwrite LD_LIBRARY_PATH, prepend to it. Fixes:
http://bugs.webkit.org/show_bug.cgi?id=15176

  • Scripts/run-launcher: don't replace LD_LIBRARY_PATH with $projectDir, but prepend $projectDir to LD_LIBRARY_PATH (to preserve other paths eg. from jhbuild)
9:33 AM Changeset in webkit [25491] by darin
  • 2 edits in trunk/WebKit

Reviewed by Sam, Ollie.

  • WebView/WebView.mm: (+[WebView _setCacheModel:]): A slightly cleaner 64-bit fix for the NSURLCache capacity code in this file.
9:00 AM Changeset in webkit [25490] by darin
  • 2 edits in trunk/WebKit

Rubber-stamped by Mark Rowe.

  • Misc/WebNSPasteboardExtras.mm: Fix incorrect strings in my last check-in. The strings I checked in were wrong and were breaking layout tests too. These new ones match what WebKitSystemInterface was returning.
8:03 AM Changeset in webkit [25489] by bdash
  • 4 edits in trunk/WebCore

2007-09-11 Sven Herzberg <sven@imendio.com>

Reviewed by Mark.

Remove unnecessary fields in FontPlatformData
http://bugs.webkit.org/show_bug.cgi?id=15177

  • platform/gdk/FontDataGdk.cpp: removed the destroy code of the fields that have been removed
  • platform/gdk/FontPlatformData.h: removed m_fontFace, m_fontMatrix and m_options; hask on m_scaledFont
  • platform/gdk/FontPlatformDataGdk.cpp: simplified setFont() by using m_scaledFont only; turned the former struct members into local variables

Sep 10, 2007:

10:33 PM Changeset in webkit [25488] by staikos
  • 2 edits in trunk/WebCore

2007-09-11 George Staikos <staikos@kde.org>

Reviewed by Anders.

Work around gcc bug with some old gcc versions.

  • platform/qt/WidgetQt.cpp: (WebCore::Widget::convertToContainingWindow): (WebCore::Widget::convertFromContainingWindow):
10:19 PM Changeset in webkit [25487] by bdash
  • 3 edits
    4 adds in trunk

2007-09-10 Mitz Pettel <mitz@webkit.org>

Reviewed by Maciej Stachowiak.

Test: fast/repaint/body-background-image.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::imageChanged): Refined the logic for when the root takes over painting the background, to match paintBoxDecorations(). In particular, if the root has defined a background, the body should paint its own background.

2007-09-10 Mitz Pettel <mitz@webkit.org>

Reviewed by Maciej Stachowiak.

  • fast/repaint/body-background-image.html: Added.
  • platform/mac/fast/repaint/body-background-image-expected.checksum: Added.
  • platform/mac/fast/repaint/body-background-image-expected.png: Added.
  • platform/mac/fast/repaint/body-background-image-expected.txt: Added.
10:17 PM Changeset in webkit [25486] by bdash
  • 2 edits in trunk/WebKit/gtk

2007-09-10 Nigel Tao <nigeltao@gnome.org>

Reviewed by Mark Rowe.

Fix a typo where webkit_gtk_page_can_copy was declared twice,
rather than webkit_gtk_page_can_paste.

  • Api/webkitgtkpage.h:
8:53 PM Changeset in webkit [25485] by ggaren
  • 2 edits in trunk/WebKit

Fixed 64-bit build (I think).

  • WebView/WebView.mm: (max): Added. In 64-bit land, -diskCapacity magically starts returning unsigned long instead of unsigned, so we define a custom max() that's willing to compare unsigned to unsigned long.
6:03 PM Changeset in webkit [25484] by harrison
  • 9 edits
    8 adds in trunk

WebCore:

Reviewed by Kevin and Tristan.

Tests added:

  • editing/pasteboard/paste-into-anchor-text.html: Added.
  • editing/pasteboard/paste-table-cells.html: Added.

Source changes:

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary): Nil check enclosingAnchor.


  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::removeNodeAndPruneAncestors): New. Keeps m_firstNodeInserted and m_lastLeafInserted updated.


(WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
Added a comment.


(WebCore::ReplaceSelectionCommand::removeRedundantStyles):
Let ReplaceSelectionCommand::removeNodeAndPruneAncestors() update the nodes.


(WebCore::ReplaceSelectionCommand::doApply):
Pass originalVisPosBeforeEndBR to shouldRemoveEndBR()


(WebCore::ReplaceSelectionCommand::shouldRemoveEndBR):
Don't remove the br if nothing was inserted.


  • editing/ReplaceSelectionCommand.h: Add VisiblePosition parameter to shouldRemoveEndBR()


  • editing/markup.cpp: (WebCore::createMarkup): Wrap orphan tr element with a table element, just like we were doing for tobody elements.

LayoutTests:

Reviewed by Kevin and Tristan.

<rdar://problem/5456800> Mail crashes at WebCore::nextCandidate() after pasting back into a <table> multiple times

  • editing/pasteboard/paste-into-anchor-text.html: Added.
  • editing/pasteboard/paste-table-cells.html: Added.
  • editing/pasteboard/quirks-mode-br-1-expected.checksum:
  • editing/pasteboard/quirks-mode-br-1-expected.txt:
  • editing/pasteboard/quirks-mode-br-1.html:
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.checksum: Added.
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.png: Added.
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.txt: Added.
  • platform/mac/editing/pasteboard/paste-table-cells-expected.checksum: Added.
  • platform/mac/editing/pasteboard/paste-table-cells-expected.png: Added.
  • platform/mac/editing/pasteboard/paste-table-cells-expected.txt: Added.
5:16 PM Changeset in webkit [25483] by thatcher
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

<rdar://problem/5456224> CrashTracer: [USER] 2 crashes in Toast Titanium at com.apple.CoreServices.CarbonCore: CSMemDisposePtr + 37

Removed the implementation of these malloc zone functions. We do not have the ability to
check if a pointer is valid or not, so we can't correctly implement them. The system free
does not fail if you pass in a bad pointer.

  • wtf/FastMalloc.cpp: (WTF::FastMallocZone::size): (WTF::FastMallocZone::zoneMalloc): (WTF::FastMallocZone::zoneCalloc): (WTF::FastMallocZone::zoneFree): (WTF::FastMallocZone::zoneRealloc):
4:29 PM Changeset in webkit [25482] by kmccullo
  • 2 edits in trunk/LayoutTests

Reviewed by Oliver.

  • Updated Skipped list to remove tests that are now passing.
  • platform/win/Skipped:
4:13 PM Changeset in webkit [25481] by kmccullo
  • 4 edits
    3 deletes in trunk/WebKitTools

Reviewed by Adam.

  • Made an order-of-deletion mistake.
  • Drosera/DebuggerDocument.h:
  • Drosera/ForwardingHeaders/wtf/Assertions.h: Removed.
  • Drosera/ForwardingHeaders/wtf/Noncopyable.h: Removed.
  • Drosera/ForwardingHeaders/wtf/OwnPtr.h: Removed.
  • Drosera/mac/DebuggerClient.mm: (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed):
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
3:59 PM Changeset in webkit [25480] by kmccullo
  • 5 edits
    2 moves
    3 adds in trunk/WebKitTools

Reviewed by Darin.

  • Renaming DebuggerDocument[platform] to DebuggerClient to be more clear.
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::DebuggerDocument):
  • Drosera/DebuggerDocument.h:
  • Drosera/ForwardingHeaders/wtf/Assertions.h: Added.
  • Drosera/ForwardingHeaders/wtf/Noncopyable.h: Added.
  • Drosera/ForwardingHeaders/wtf/OwnPtr.h: Added.
  • Drosera/mac/DebuggerApplication.mm: (-[DebuggerApplication attach:]):
  • Drosera/mac/DebuggerClient.h: Copied from Drosera/mac/DebuggerDocumentMac.h.
  • Drosera/mac/DebuggerClient.mm: Copied from Drosera/mac/DebuggerDocumentMac.mm. (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog):
  • Drosera/mac/DebuggerDocumentMac.h: Removed.
  • Drosera/mac/DebuggerDocumentMac.mm: Removed.
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
3:53 PM Changeset in webkit [25479] by thatcher
  • 1 edit in tags/Safari-5523.5.1/WebKit/Configurations/Version.xcconfig

Versioning

3:49 PM Changeset in webkit [25478] by thatcher
  • 7 edits in tags/Safari-5523.5.1/WebKit

Merge r25476.

3:41 PM Changeset in webkit [25477] by thatcher
  • 1 copy in tags/Safari-5523.5.1

New tag.

3:39 PM Changeset in webkit [25476] by darin
  • 7 edits in trunk/WebKit

Reviewed by Tim Hatcher.

  • <rdar://problem/5471082> Removing WebURLPboardType from headers broke SPI-using applications

Rolled out my fix for bug 4582212 and fixed it in a much simpler way.

  • Misc/WebNSPasteboardExtras.h:
  • Misc/WebNSPasteboardExtras.mm:
  • WebCoreSupport/WebPasteboardHelper.mm:
  • WebKit.exp:
  • WebView/WebHTMLView.mm:
  • WebView/WebView.mm: Rolled out the new PasteboardType functions and changed the PboardType globals to be initialized with constant values.
2:47 PM Changeset in webkit [25475] by sfalken
  • 2 edits in trunk/WebKit/win

Remove site-specific hacks that we don't need anymore.

Reviewed by Adam.

  • WebView.cpp: (WebView::userAgentForKURL):
2:32 PM Changeset in webkit [25474] by sfalken
  • 3 edits in trunk/WebKit/win

Prevent WebKit version numbers from containing "4" in Windows.

Reviewed by Darin.

  • WebKit.vcproj/VERSION: Bump version since our current version ends in 4.
  • WebKit.vcproj/auto-version.sh: Add version checking code.
2:23 PM Changeset in webkit [25473] by ddkilzer
  • 2 edits in trunk/WebCore

WebCore:

Rubberstamped by Kevin Decker.

No test required since there is no change in functionality.

  • history/BackForwardList.cpp: (WebCore::BackForwardList::BackForwardList): Fix misspelling of DefaultCapacitiy to DefaultCapacity.
2:21 PM Changeset in webkit [25472] by staikos
  • 2 edits in trunk/WebKitQt

Don't double-encode URL fragments

2:15 PM Changeset in webkit [25471] by tristan
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Adele Peterson.

Test: fast/forms/menulist-clip.html

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::controlClipRect): Use correct coordinates for the inner block's content rect.

LayoutTests:

Reviewed by Adele Peterson.

  • fast/forms/menulist-clip.html: Added.
  • platform/mac/fast/forms/menulist-clip-expected.checksum: Added.
  • platform/mac/fast/forms/menulist-clip-expected.png: Added.
  • platform/mac/fast/forms/menulist-clip-expected.txt: Added.
2:08 PM Changeset in webkit [25470] by beidson
  • 4 edits in trunk/WebCore

Reviewed by Darin, Sam, Oliver, Geoff, probably others - what a fun one to review!

<rdar://problem/5471641> - URLs get the wrong icon

Turns out sqlite3_reset() doesn't clear bindings, so previously bound icons were being
written out for pages without icons. Easy fix!

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase): For null icons, manually bind NULL - otherwise, the previously bound icon will be written out to disk
  • loader/icon/SQLStatement.cpp: (WebCore::SQLStatement::bindNull): Access to sqlite3_bind_null
  • loader/icon/SQLStatement.h:
2:05 PM Changeset in webkit [25469] by andersca
  • 2 edits in trunk/WebCore

Reviewed by Oliver and Darin.

<rdar://problem/5468613>
Using shockwave pages first time after plugin install crashed safari in PluginPing.


Only restore the window proc if the plugin didn't override it.


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::stop):
1:55 PM Changeset in webkit [25468] by justing
  • 14 edits
    2 adds
    2 deletes in trunk

WebCore:

Reviewed by Darin.

<rdar://problem/5467405>
Revert back behavior of -webkit-user-select to fix widget selection problems


Rolled out r25086 and r25057. I will be re-opening:
<rdar://problem/5333725> -webkit-user-select: none makes selection difficult
Which we will either to defer or fix by introducing a new value of -webkit-user-select.
<rdar://problem/5370059> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)
Which we will either defer or fix with Adele's patch that doesn't involve making
-webkit-user-select inherited.

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): (WebCore::CSSStyleSelector::applyProperty):
  • editing/SelectionController.cpp: (WebCore::SelectionController::selectAll):
  • page/EventHandler.cpp: (WebCore::EventHandler::selectClosestWordFromMouseEvent): (WebCore::EventHandler::handleMousePressEventTripleClick): (WebCore::EventHandler::handleMousePressEventSingleClick): (WebCore::EventHandler::updateSelectionForMouseDrag): (WebCore::EventHandler::selectCursor): (WebCore::EventHandler::canMouseDownStartSelect):
  • page/EventHandler.h:
  • rendering/RenderObject.cpp: (WebCore::selectStartNode): (WebCore::RenderObject::canSelect): (WebCore::RenderObject::shouldSelect): (WebCore::RenderObject::draggableNode):
  • rendering/RenderObject.h:
  • rendering/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==): (WebCore::RenderStyle::diff):
  • rendering/RenderStyle.h: (WebCore::): (WebCore::RenderStyle::userSelect): (WebCore::RenderStyle::setUserSelect): (WebCore::RenderStyle::initialUserSelect):

LayoutTests:

Reviewed by Darin.


<rdar://problem/5467405>
Revert back behavior of -webkit-user-select to fix widget selection problems

  • editing/selection/5333725.html: Removed.
  • editing/selection/5333725.html-disabled: Added.
  • editing/selection/user-select-text-inside-user-select-ignore.html: Removed.
  • editing/selection/user-select-text-inside-user-select-ignore.html-disabled: Added.
  • fast/css/computed-style-expected.txt:
  • fast/css/computed-style-without-renderer-expected.txt:
10:51 AM Changeset in webkit [25467] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Darin.

Always animate when calling _scrollTo.

  • WebView/WebFrameView.mm: (-[WebFrameView _scrollVerticallyBy:]): (-[WebFrameView _scrollHorizontallyBy:]):
7:55 AM Changeset in webkit [25466] by antti
  • 6 edits
    3 adds in trunk

WebCore:

Reviewed by Kevin.

Fix <rdar://problem/5444866>
REGRESSION: missing text in Acrobat "Getting Started" screen due to change in load ordering of large resources


Make external scripts loaded using file: wait until all style sheet loads have completed before executing.
Fixes a class of problems where there is a dependency between script and stylesheet and results would effectively
get randomized based on which order the resources arrived. In Tiger file loads were effectively serialized by
lower level components, which is why this regressed.

Test: http/tests/local/stylesheet-and-script-load-order.html

  • dom/Document.cpp: (WebCore::Document::removePendingSheet):
  • dom/Tokenizer.h: (WebCore::Tokenizer::executeScriptsWaitingForStylesheets):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::HTMLTokenizer): (WebCore::HTMLTokenizer::begin): (WebCore::HTMLTokenizer::executeScriptsWaitingForStylesheets): (WebCore::HTMLTokenizer::notifyFinished):
  • html/HTMLTokenizer.h:

LayoutTests:

Reviewed by Kevin.


Test for <rdar://problem/5444866>
REGRESSION: missing text in Acrobat "Getting Started" screen due to change in load ordering of large resources

  • http/tests/local/stylesheet-and-script-load-order-expected.txt: Added.
  • http/tests/local/stylesheet-and-script-load-order.html: Added.
  • http/tests/local/stylesheet-dependent.js: Added.

Sep 9, 2007:

9:56 PM Changeset in webkit [25465] by weinig
  • 1 edit
    2 moves in trunk/LayoutTests

Disable more occasionally failing tests.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe.html: Removed.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe.html-disabled: Copied from http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe.html.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open.html: Removed.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open.html-disabled: Copied from http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open.html.
8:32 PM Changeset in webkit [25464] by dsmith
  • 3 edits in trunk/WebCore

Reviewed by Maciej Stachowiak.


http://bugs.webkit.org/show_bug.cgi?id=15148
Bug 15148: Poor performance on crazy DOM raytracer


Switch data structures to avoid quadratic behavior.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutPositionedObjects): Update for ListHashSet (WebCore::RenderBlock::markPositionedObjectsForLayout): Update for ListHashSet (WebCore::RenderBlock::insertPositionedObject): Use ListHashSet to avoid expensive uniqueing (WebCore::RenderBlock::removePositionedObject): Update for ListHashSet (WebCore::RenderBlock::removePositionedObjects): Update for ListHashSet (WebCore::RenderBlock::lowestPosition): Update for ListHashSet (WebCore::RenderBlock::rightmostPosition): Update for ListHashSet (WebCore::RenderBlock::leftmostPosition): Update for ListHashSet (WebCore::RenderBlock::rightBottom): Update for ListHashSet
  • rendering/RenderBlock.h: Change m_positionedObjects from DeprecatedPtrList to ListHashSet
7:08 PM Changeset in webkit [25463] by beidson
  • 2 edits in trunk/WebCore

Rubberstamped by Darin

pthread_main_np() is a Darwin thing, not a Mac thing

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::IconDatabase):
5:05 PM Changeset in webkit [25462] by weinig
  • 5 edits in trunk

WebKitTools:

Reviewed by Mark Rowe.

Remove 'objC' prefix from methods now in the ObjCController.

  • DumpRenderTree/ObjCController.m: (+[ObjCController isSelectorExcludedFromWebScript:]): (+[ObjCController webScriptNameForSelector:]): (-[ObjCController classNameOf:]): (-[ObjCController objectOfClass:]): (-[ObjCController identityIsEqual::]): (-[ObjCController longLongRoundTrip:]): (-[ObjCController unsignedLongLongRoundTrip:]):

LayoutTests:

Reviewed by Mark Rowe.

Update tests now that the 'objC' prefix is no longer used for methods of the ObjCController.

  • fast/dom/wrapper-classes.html:
  • platform/mac/fast/objc/longlongTest.html:
4:48 PM Known incompatibilities between open-source WebKit and Safari edited by bdash@webkit.org
(diff)
4:48 PM Known incompatibilities between open-source WebKit and Safari edited by bdash@webkit.org
(diff)
4:41 PM Changeset in webkit [25461] by weinig
  • 10 edits
    4 adds in trunk

WebKitTools:

Reviewed by Oliver.

Initial refactor of DumpRenderTree in preparation of making it more platform independent.

  • Move LayoutTestController into its own file.
  • Move Objective-C only functions on LayoutTestController into a new controller called the ObjCController.
  • DumpRenderTree/DumpRenderTree.h:
  • DumpRenderTree/DumpRenderTree.m: (displayWebView):
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/FrameLoadDelegate.m: (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]):
  • DumpRenderTree/LayoutTestController.h: Added.
  • DumpRenderTree/LayoutTestController.m: Added. (+[LayoutTestController isSelectorExcludedFromWebScript:]): (+[LayoutTestController webScriptNameForSelector:]): (-[LayoutTestController clearBackForwardList]): (-[LayoutTestController setUseDashboardCompatibilityMode:]): (-[LayoutTestController setCloseRemainingWindowsWhenComplete:]): (-[LayoutTestController setCustomPolicyDelegate:]): (-[LayoutTestController keepWebHistory]): (-[LayoutTestController setCallCloseOnWebViews:]): (-[LayoutTestController setCanOpenWindows]): (-[LayoutTestController waitUntilDone]): (-[LayoutTestController waitUntilDoneWatchdogFired]): (-[LayoutTestController notifyDone]): (-[LayoutTestController dumpAsText]): (-[LayoutTestController addFileToPasteboardOnDrag]): (-[LayoutTestController addDisallowedURL:]): (-[LayoutTestController setUserStyleSheetLocation:]): (-[LayoutTestController setUserStyleSheetEnabled:]): (-[LayoutTestController dumpDOMAsWebArchive]): (-[LayoutTestController dumpSourceAsWebArchive]): (-[LayoutTestController dumpSelectionRect]): (-[LayoutTestController dumpTitleChanges]): (-[LayoutTestController dumpBackForwardList]): (-[LayoutTestController windowCount]): (-[LayoutTestController dumpChildFrameScrollPositions]): (-[LayoutTestController dumpChildFramesAsText]): (-[LayoutTestController dumpEditingCallbacks]): (-[LayoutTestController dumpResourceLoadCallbacks]): (-[LayoutTestController dumpFrameLoadCallbacks]): (-[LayoutTestController setWindowIsKey:]): (-[LayoutTestController setMainFrameIsFirstResponder:]): (-[LayoutTestController display]): (-[LayoutTestController testRepaint]): (-[LayoutTestController repaintSweepHorizontally]): (-[LayoutTestController invokeUndefinedMethodFromWebScript:withArguments:]): (-[LayoutTestController _addWorkForTarget:selector:arg1:arg2:]): (-[LayoutTestController _doLoad:target:]): (-[LayoutTestController _doBackOrForwardNavigation:]): (-[LayoutTestController queueBackNavigation:]): (-[LayoutTestController queueForwardNavigation:]): (-[LayoutTestController queueReload]): (-[LayoutTestController queueScript:]): (-[LayoutTestController queueLoad:target:]): (-[LayoutTestController setAcceptsEditing:]): (-[LayoutTestController setTabKeyCyclesThroughElements:]): (-[LayoutTestController storeWebScriptObject:]): (-[LayoutTestController accessStoredWebScriptObject]): (-[LayoutTestController dealloc]): (-[LayoutTestController decodeHostName:]): (-[LayoutTestController encodeHostName:]):
  • DumpRenderTree/ObjCController.h: Added.
  • DumpRenderTree/ObjCController.m: Added. (+[ObjCController isSelectorExcludedFromWebScript:]): (+[ObjCController webScriptNameForSelector:]): (-[ObjCController objCClassNameOf:]): (-[ObjCController objCObjectOfClass:]): (-[ObjCController objCIdentityIsEqual::]): (-[ObjCController objCLongLongRoundTrip:]): (-[ObjCController objCUnsignedLongLongRoundTrip:]): (-[ObjCController testWrapperRoundTripping:]):

LayoutTests:

Reviewed by Oliver.

Change objective-c tests to use the new ObjCController.

  • fast/dom/Window/window-properties.html:
  • fast/dom/wrapper-classes.html:
  • platform/mac/fast/dom/wrapper-round-tripping.html:
  • platform/mac/fast/objc/longlongTest.html:
4:34 PM Known incompatibilities between open-source WebKit and Safari edited by beidson@apple.com
Added comment about icon db not working fully with current released Safaris (diff)
3:54 PM Changeset in webkit [25460] by zimmermann
  • 13 edits
    24 adds in branches/feature-branch

Reviewed by Oliver.

Rework <pattern> support to take overflow & viewBox into account.
Also fix all possible combinations of patternUnits/patternContentUnits, tested by several batik testcases.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12221 (Webkit ToT fails to render this pattern example)

6:23 AM Changeset in webkit [25459] by zecke
  • 2 edits in trunk/WebCore

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

Build fix for Gtk+ by adding WebCore::callOnMainThread to the TemporaryLinkStubs.

  • platform/gdk/TemporaryLinkStubs.cpp: (WebCore::callOnMainThread):
12:11 AM Changeset in webkit [25458] by weinig
  • 1 edit
    3 moves in trunk/LayoutTests

Rubber-stamped by Oliver.

Disable occasionally failing tests until the reason for their failure can be determined.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open.html: Removed.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open.html-disabled: Copied from http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open.html.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change.html: Removed.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change.html-disabled: Copied from http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change.html.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe.html: Removed.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe.html-disabled: Copied from http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe.html.
Note: See TracTimeline for information about the timeline view.