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

Timeline



Mar 15, 2007:

11:52 PM Changeset in webkit [20234] by bdash
  • 3 edits in trunk/WebCore

2007-03-15 Shrikant Gangoda <shrikant.gangoda@celunite.com>

Gdk build fix.

  • loader/gdk/FrameLoaderClientGdk.cpp: (WebCore::FrameLoaderClientGdk::blockedError):
  • loader/gdk/FrameLoaderClientGdk.h:
11:50 PM Changeset in webkit [20233] by bdakin
  • 3 edits in trunk/WebCore

Reviewed by Geoff.

Fix for http://bugs.webkit.org/show_bug.cgi?id=13088 REGRESSION
(r19761-19779): Copy image no longer includes image address
(rdar://5067927)

writeURL() does not need an isImage parameter. Now that it accepts
the types as a parameter, we can just declare the appropriate image
types within writeImage and send them to writeURL(). Also,
declaring the types twice is what broke this.

  • platform/Pasteboard.h:
  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeURL): (WebCore::Pasteboard::writeImage):
11:18 PM Changeset in webkit [20232] by adele
  • 2 edits in trunk/WebCore

Reviewed by Kevin Decker.

Fix for <rdar://problem/4926179> Text in menulist control should never update if menu is open

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement): Only setTextFromOption if the menu isn't visible.
10:36 PM Changeset in webkit [23092] by aliceli1
  • 2 edits in branches/WindowsMerge/WebKitWin

WebKitWin:

Reviewed by Ada.

Fixing some leaks

  • WebFrame.cpp: (WebFrame::dispatchDidReceiveAuthenticationChallenge): (WebFrame::dispatchDidCancelAuthenticationChallenge):
10:31 PM Changeset in webkit [23091] by beidson
  • 4 edits in branches/WindowsMerge

WebKitWin:

Reviewed by Oliver

CFNetwork related cleanup that was a work around for previous deficiencies in CFURLDownload
This might fix some of the random crashers we see on stress testing if they end up
downloading links.

  • WebDownload.cpp: (WebDownload::init): Release the connection from the handle so it no longer refers to it

WebCoreWin:

Reviewed by Oliver

CFNetwork related cleanup that was a work around for previous deficiencies in CFURLDownload
This might fix some of the random crashers we see on stress testing if they end up
downloading links.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal): Always call cancel if theres a connection - the ref-count-check hack is no longer neccesary (WebCore::ResourceHandle::releaseConnectionForDownload): Give up the CFURLConnection without derefing it


10:25 PM Changeset in webkit [20231] by beidson
  • 3 edits in trunk/WebCore

Reviewed by Oliver

A few platform specific tweaks

  • platform/cf/RetainPtr.h: (WebCore::RetainPtr::releaseRef): Fixed releaseRef to work with CF


  • platform/network/ResourceHandle.h: Added a "releaseRef" style call
10:25 PM Changeset in webkit [20230] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed.


  • build fix
  • wtf/TCSystemAlloc.cpp:
10:22 PM Changeset in webkit [23090] by mjs
  • 6 edits in branches/WindowsMerge

WebCoreWin:

Reviewed by Geoff and Steve.


  • fixed <rdar://problem/5029776> iBench JavaScript test slower than Opera
  • fixes to use FastMalloc on Windows
  • config.h: Don't force USE_SYSTEM_MALLOC

WebKitWin:

Reviewed by Geoff and Steve.


  • fixed <rdar://problem/5029776> iBench JavaScript test slower than Opera
  • fixes to use FastMalloc on Windows
  • WebKit.vcproj/WebKit.def: Add exports of WTF symbols.
  • WebKit.vcproj/WebKit_debug.def: ditto
  • WebKit.vcproj/WebKit.vcproj: Link pthreads, now needed by WTF.
10:12 PM Changeset in webkit [20229] by mjs
  • 8 edits in trunk

JavaScriptCore:

Reviewed by Geoff and Steve.


  • fix some portability issues with TCMalloc.
  • JavaScriptCore.vcproj/WTF/WTF.vcproj:
  • kjs/config.h:
  • wtf/FastMalloc.cpp: (WTF::SizeClass): (WTF::InitSizeClasses): (WTF::TCMalloc_PageHeap::Split): (WTF::TCMalloc_PageHeap::RegisterSizeClass): (WTF::TCMalloc_Central_FreeList::length): (WTF::TCMalloc_ThreadCache::InitTSD): (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
  • wtf/TCSpinLock.h:
  • wtf/TCSystemAlloc.cpp: (TryVirtualAlloc): (TCMalloc_SystemAlloc):

WebCore:

Reviewed by Geoff and Steve.

  • config.h: Remove unneeded hack.
9:45 PM Changeset in webkit [23089] by beidson
  • 2 edits in branches/WindowsMerge/WebKitWin

Reviewed by Alice


Due to OpenSource r20178, all of the sudden we were trying to handle page caching on Windows
even though it is not hooked up yet. The resulted in very particular cases ending up calling
clear() in FrameLoader::provisionalLoadStarted(). One such particular case was if a page *would*
be "cachable" (no frames, no passwords, etc etc), and you start a download from that page.


The fix for now is to manually set the pageCacheSize to 0 whenever we create new pages on Windows.
This prevents the "Should I cache this page?" checking from getting far enough to clear the document.
It so happens this involves exactly one line.


  • WebView.cpp: (WebView::initWithFrame): Set page cache size to zero on new pages, and add a fixme to remove later
9:22 PM Changeset in webkit [20228] by justing
  • 4 edits
    4 adds in trunk

LayoutTests:

Reviewed by john


<rdar://problem/5062376>
REGRESSION: In Mail and Gmail, can't change alignment to text after it has been applied

  • editing/execCommand/5062376-expected.checksum: Added.
  • editing/execCommand/5062376-expected.png: Added.
  • editing/execCommand/5062376-expected.txt: Added.
  • editing/execCommand/5062376.html: Added.

WebCore:

Reviewed by john


<rdar://problem/5062376>
REGRESSION: In Mail and Gmail, can't change alignment to text after it has been applied


Bring back the remove step in applyBlockStyle. It's
necessary because addBlockStyleIfNeeded assumes that
the properties it adds aren't already on the block that
it adds them to.

  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyBlockStyle): Bring back the remove step (added a testcase). Don't do the add step if m_removeOnly is true (no testcase because there aren't any clients using removeOnly functionality to remove styles yet, only styled elemets). Moved the code for creating new blocks up one level to this function so that we can pass blocks to removeCSSStyle. When converting VisiblePositions to indices and vice versa, use the highest node in the shadow tree if we're in one as the scope (working on a testcase). (WebCore::ApplyStyleCommand::addBlockStyle): Moved code to applyBlockStyle.
  • editing/ApplyStyleCommand.h:
8:16 PM Changeset in webkit [23088] by beidson
  • 4 edits in branches/WindowsMerge/WebKitWin

Reviewed by Maciej

<rdar://problem/4429701>
Implements a port blocking black list that matches Firefox's


  • Interfaces/IWebError.idl: Add the custom error code for blocked error
  • WebFrame.cpp: (WebFrame::blockedError): FrameLoaderClient fill-in + a Fixme (WebFrame::interruptForPolicyChangeError): Add a Fixme for localization
  • WebFrame.h:
8:12 PM Changeset in webkit [20227] by beidson
  • 17 edits
    3 adds in trunk

LayoutTests:

Reviewed by Adele

<rdar://problem/4429701>
Implements a port blocking black list that matches Firefox's

The layout test attempts to load an image at an invalid domain name on each
of the black listed ports. Using dumpResourceLoadCallbacks(), DRT is able
to see the error codes for each resource. A successful test shows the blocked
error for each image load except for the few that are standard or should
succeed due to exemptions.

  • security/block-test-expected.txt: Added.
  • security/block-test.html: Added.

WebCore:

Reviewed by Maciej

<rdar://problem/4429701>
Implements a port blocking black list that matches Firefox's

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::blockedError): Call through to the client for blockedError
  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h: Get the "port blocked" error for the current platform
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::wasBlocked): ResourceHandleClient method to pass on the didFail(error) (WebCore::ResourceLoader::blockedError): Following the pattern of "CancelledError()", get the error to fail with for the didFail() call
  • loader/ResourceLoader.h:
  • platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyFrameLoaderClient::blockedError): Added stub
  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): If the port is blocked, create the handle but schedule it for deferred failure on a timer (WebCore::ResourceHandle::scheduleBlockedFailure): Do the timer scheduling (WebCore::ResourceHandle::fireBlockedFailure): Fire the timer here (WebCore::ResourceHandle::portAllowed): Implements checking of Mozilla's
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h: (WebCore::ResourceHandleClient::wasBlocked): Virtual for clients to get the "blocked" message

WebKit:

Reviewed by Maciej

<rdar://problem/4429701>
Implements a port blocking black list that matches Firefox's

  • English.lproj/Localizable.strings: Added localizable string for port blocked error code
  • Misc/WebKitErrors.h:
  • Misc/WebKitErrors.m: (registerErrors): Add new port blocked error code to WebKitErrorDomain
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::cancelledError): Fixed coding style (WebFrameLoaderClient::blockedError): Return a ResourceError with the new custom error code
6:16 PM Changeset in webkit [20226] by thatcher
  • 1 edit in trunk/WebKit/WebKit.xcodeproj/project.pbxproj

Yet another build fix.

5:55 PM Changeset in webkit [20225] by thatcher
  • 8 edits in trunk

Finally a real build fix.

5:37 PM Changeset in webkit [20224] by thatcher
  • 1 edit in trunk/JavaScriptGlue/JavaScriptGlue.h

Yet another build fix. Sigh.

5:33 PM Changeset in webkit [23087] by aroben
  • 2 edits in branches/WindowsMerge/WebKitTools

Reviewed by Ada.

Second part of two-step dance to rename AHEM.TTF to AHEM.ttf.

This is to work around <rdar://problem/5063416>.

Also made all the ttf files in DumpRenderTree/Resources executable again to appease Windows.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: (initialize):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/Resources/AHEM.ttf: Added.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/Resources/renameMe.ttf: Removed.
5:25 PM Changeset in webkit [20223] by thatcher
  • 1 edit in trunk/JavaScriptGlue/Configurations/JavaScriptGlue.xcconfig

Another build fix attempt.

5:15 PM Changeset in webkit [20222] by thatcher
  • 1 edit in trunk/JavaScriptCore/Configurations/JavaScriptCore.xcconfig

Attempt to fix the build.

5:07 PM Changeset in webkit [20221] by thatcher
  • 4 edits in trunk

Build fix.

5:04 PM Changeset in webkit [20220] by bdakin
  • 4 edits in trunk/WebCore

Reviewed by Hyatt.

Fix for <rdar://problem/5065396> REGRESSION: leaks in
RenderBlock::layoutInlineChildren seen on buildbot

This leak appeared after http://trac.webkit.org/projects/webkit/
changeset/20188. This change shifted line boxes around in
removeChild(). But since removeChild() calls
setNeedsLayoutAndMinMaxRecalc(), all of the line boxes will be
removed once we actually lay out anyway. So this patch fixes the
leak by deleting the line boxes instead of shifting them around.

  • editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::outdentParagraph): Call into updateLayout(). This fixes an assertion I got in editing/ execCommand/4976800.html This is very similar to the line box fix I made recently (http://trac.webkit.org/projects/webkit/changeset/ 20177). We need to update layout before relying on VisiblePositions after removing a node.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::deleteLinesForBlock): New helper function since this functionality is needed in three places now. (WebCore::RenderBlock::makeChildrenNonInline): Call into new deleteLinesForBlock(). (WebCore::RenderBlock::removeChild): Same.
  • rendering/RenderBlock.h:
4:50 PM Changeset in webkit [20219] by thatcher
  • 14 edits
    20 adds in trunk

JavaScriptCore:

Reviewed by John.

  • Factored out most of our common build settings into .xcconfig files. Anything that was common in each build configuration was factored out into the shared .xcconfig file.
  • Adds a Version.xcconfig file to define the current framework version, to be used in other places.
  • Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
  • Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/JavaScriptCore.xcconfig: Added.
  • Configurations/Version.xcconfig: Added.
  • Info.plist:
  • JavaScriptCore.xcodeproj/project.pbxproj:

JavaScriptGlue:

Reviewed by John.

  • Factored out most of our common build settings into .xcconfig files. Anything that was common in each build configuration was factored out into the shared .xcconfig file.
  • Adds a Version.xcconfig file to define the current framework version, to be used in other places.
  • Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
  • Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/JavaScriptGlue.xcconfig: Added.
  • Configurations/Version.xcconfig: Added.
  • Info.plist:
  • JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

Reviewed by John.

  • Factored out most of our common build settings into .xcconfig files. Anything that was common in each build configuration was factored out into the shared .xcconfig file.
  • Adds a Version.xcconfig file to define the current framework version, to be used in other places.
  • Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
  • Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/Version.xcconfig: Added.
  • Configurations/WebCore.xcconfig: Added.
  • Info.plist:
  • WebCore.xcodeproj/project.pbxproj:

WebKit:

Reviewed by John.

  • Fixes: <rdar://problem/4927747> WebKit's Current Library Version number should match the Info.plist Version
  • Factored out most of our common build settings into .xcconfig files. Anything that was common in each build configuration was factored out into the shared .xcconfig file.
  • Adds a Version.xcconfig file to define the current framework version, to be used in other places.
  • Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
  • Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
  • Make WebKit use the same warning flags as the other projects. This required two casts to be added to fix new warnings.
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/Version.xcconfig: Added.
  • Configurations/WebKit.xcconfig: Added.
  • Info.plist:
  • Misc/WebKitVersionChecks.h:
  • Plugins/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
  • WebKit.xcodeproj/project.pbxproj:
4:33 PM Changeset in webkit [23086] by sfalken
  • 1 edit in branches/WindowsMerge/WebKitWin/WebKit.vcproj/VERSION

Bump version for submit

4:30 PM Changeset in webkit [20218] by sfalken
  • 1 copy in tags/Safari-521.35.9b

New tag.

3:25 PM Changeset in webkit [23085] by aroben
  • 2 edits in branches/WindowsMerge/WebKitTools

Reviewed by Ada.

First part of a two-step dance to rename AHEM.TTF to AHEM.ttf.

First, rename AHEM.TTF to renameMe.ttf.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: (initialize):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/Resources/AHEM.TTF: Removed.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/Resources/renameMe.ttf: Added.
3:20 PM Changeset in webkit [23084] by aroben
  • 3 edits in branches/WindowsMerge/WebCore

Rubberstamped by Hyatt.

  • platform/win/FontDataWin.cpp: (WebCore::FontData::platformInit): Move the code to get the font face to the top of the function for easier debugging.
  • platform/win/FontPlatformDataWin.cpp: (WebCore::FontPlatformData::FontPlatformData): ASSERT that we got a valid CGFontRef back from CG, as CG and GDI should agree on the fonts installed.
2:42 PM Changeset in webkit [23083] by aroben
  • 2 edits in branches/WindowsMerge/LayoutTests

Rubberstamped by Adele.

  • Skipped: Turn off AppleScript tests.
2:37 PM Changeset in webkit [23082] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Rubberstamped by Brady.

  • WebKitLogging.cpp: Turn of Download logging by default.
2:28 PM Changeset in webkit [20217] by kdecker
  • 5 edits in trunk/WebKit

Reviewed by Anders.

Fixed: <rdar://problem/5001428> stationery background images do not display


Change 19244 fixed the method -[WebResource _shouldIgnoreWhenUnarchiving], but also broke Mail stationery.


The problem was that with archivedResourceForURL now fixed, the engine will try to decode the images. These images wouldn't decode because
Mail re-encodes and directly manipulates the image data in such a way that prevented WebKit from decoding the image. Because Mail was giving
us bad data, the images wouldn't render. This was never an issue before because archivedResourceForURL (broken) always returned nil, thus the
engine would never attempt to decode the resource, therefore the responsibility was delegated to Mail's protocol handler, which would do the
right thing and load the image.


Since Mail is relying on the fact it can store arbitrary data in WebArchives, I've introduced SPI that acts as a hint for us to ignore certain
subresources while unarchiving. This SPI is -[WebResource _shouldIgnoreWhenUnarchiving].


  • WebView/WebResource.mm: Addd private ivar shouldIgnoreWhenUnarchiving. (-[WebResource _ignoreWhenUnarchiving]): Added. (-[WebResource _shouldIgnoreWhenUnarchiving]): Added.
  • WebView/WebResourcePrivate.h: Added two methods to private header.
  • WebView/WebUnarchivingState.m: (-[WebUnarchivingState archivedResourceForURL:]): Check if we should ignore the resource.
1:51 PM Changeset in webkit [23081] by aroben
  • 2 edits in branches/WindowsMerge/LayoutTests

Rubberstamped by Anders.

  • Skipped: Added editing, http, and webarchive directories since they all rely on unimplemented parts of DRT, boomer-run-webkit-tests, and WebKit, respectively. Also re-enabled tests that no longer crash.
1:20 PM Changeset in webkit [20216] by kjk
  • 4 edits in trunk/WebCore

Not reviewed - gdk build fixes.

  • platform/gdk/EditorClientGdk.cpp: (WebCore::EditorClientGdk::handleKeypress):
  • platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/gdk/ImageGdk.cpp: (WebCore::Image::loadPlatformResource):
12:12 PM Changeset in webkit [20215] by justing
  • 29 edits in trunk

LayoutTests:

Reviewed by john

Removed an unnecessary block (one that was fully
selected but whose markup wasn't needed to preserve
appearance):

  • editing/pasteboard/paste-text-011-expected.txt: Removed unnecessary style spans:
  • editing/pasteboard/merge-end-blockquote-expected.txt: Removed unnecessary empty anonymous blocks:
  • editing/execCommand/create-list-with-hr-expected.txt:
  • editing/pasteboard/display-block-on-spans-expected.txt:
  • editing/pasteboard/paste-text-006-expected.txt:
  • editing/pasteboard/paste-table-001-expected.txt:
  • editing/pasteboard/paste-text-013-expected.txt:
  • editing/pasteboard/paste-text-002-expected.txt:
  • editing/pasteboard/paste-list-001-expected.txt:
  • editing/pasteboard/paste-text-005-expected.txt:
  • editing/pasteboard/paste-text-003-expected.txt:
  • editing/pasteboard/paste-text-014-expected.txt:
  • editing/pasteboard/paste-pre-001-expected.txt: Now (correctly) includes fully selected root:
  • editing/pasteboard/paste-text-015-expected.checksum:
  • editing/pasteboard/paste-text-015-expected.png:
  • editing/pasteboard/paste-text-015-expected.txt:
  • editing/inserting/insert-3907422-fix-expected.txt:
  • editing/pasteboard/paste-text-004-expected.txt: Demonstrates a bug that already existed (we don't inline the font styles from the Preference Pane on copy):
  • editing/pasteboard/5027857-expected.checksum:
  • editing/pasteboard/5027857-expected.png:
  • editing/pasteboard/5027857-expected.txt:
  • editing/pasteboard/paste-pre-002-expected.checksum:
  • editing/pasteboard/paste-pre-002-expected.png:
  • editing/pasteboard/paste-pre-002-expected.txt:

WebCore:

Reviewed by john


~2x speed up of 5k rich text paste:
http://shakespeare.mit.edu/hamlet/full.html

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): Remove the top level style span if its unnecessary before inserting into the document, its faster than doing it after.
  • editing/ReplaceSelectionCommand.h: Exposed ReplacementFragment::removeNodePreservingChildren so that the style span can be removed using non-undoable removes, like the rest of the removes done on the ReplacementFragment.
  • editing/markup.cpp: (WebCore::createMarkup): Make the style span the top level element, otherwise it's useless. This also facilitates the optimization mentioned above. When including markup for a fully selected root, include markup for all the nodes beneath that fully selected root, to preserve the structure and appearance of the copied markup. Did this by merging with the code for adding markup for descendants of special commonAncestorBlocks.
12:07 PM Changeset in webkit [20214] by bdakin
  • 19 edits
    2 deletes in trunk

Rubber-stamped by Adele.

Rolling out http://trac.webkit.org/projects/webkit/changeset/20148
(which is a fix for http://bugs.webkit.org/show_bug.cgi?id=12595
and rdar://4722863) because it causes a horrible memory-trasher.

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

2007-03-16 Shrikant Gangoda <shrikant.gangoda@celunite.com>

Gdk build fix.

  • kjs/DateMath.cpp: gettimeofday comes from <sys/time.h> on Linux.
5:15 AM Changeset in webkit [20212] by bdash
  • 2 edits in trunk/WebKit

2007-03-15 Mark Rowe <mrowe@apple.com>

Reviewed by Antti.

Fix for <rdar://problem/5065060> ASSERTION FAILURE: newUsername && newPassword
when submitting an authentication form without password.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchWillSubmitForm): Don't omit form fields with empty values from the dictionary passed to the delegate.
12:11 AM Changeset in webkit [20211] by ggaren
  • 2 edits in trunk/WebCore

Added an assert to help catch a bug. Hopefully someone will hit it!


  • bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::~KJSProxy):
12:07 AM Changeset in webkit [23080] by adachan
  • 4 edits in branches/WindowsMerge/WebKitWin

2007-03-14 Ada Chan <adachan@apple.com>

Reviewed by Lou.

<rdar://4966656> dragging scrollbar thumb in suggestion window does not work
<rdar://5056925> Should be able to select items from autocomplete list with the mouse
Added some tricks to get mouse clicking to work in auto-complete windows without
them going away.

WebKitWin:

Added a method in IWebViewPrivate to clear the current focus node. This is called in the app
when focus has been transferred to the address field or search field.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebView::clearFocusNode):
  • WebView.h:

Mar 14, 2007:

11:42 PM Changeset in webkit [20210] by andersca
  • 2 edits in trunk/WebKit

Reviewed by Dave Hyatt.

Don't add the data twice, it's also done by didReceiveData.


  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::deliverArchivedResources):
11:30 PM Changeset in webkit [20209] by oliver
  • 3 edits
    2 adds in trunk

2007-03-14 Oliver Hunt <oliver@apple.com>

Reviewed by Adele.

Fix for rdar://problem/5061737.


This was a regression from the original Objective-C -> C++ conversion
for the drag logic. We don't need to call Range::startNode as we just
need the document that contains the range.

  • page/DragController.cpp: (WebCore::documentFragmentFromDragData):

LayoutTests:

Layout tests for rdar://problem/5061737

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt: Added.
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe.html: Added.
10:07 PM Changeset in webkit [23079] by aroben
  • 2 edits in branches/WindowsMerge/WebKitTools

Rubberstamped by Anders.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: (runTest): Initialize done to false just like Mac does.
9:59 PM Changeset in webkit [20208] by andersca
  • 2 edits in trunk/WebKit

Fix segmentation fault when running layout tests.

Remove bogus check that that I added on purpose to see how good Geoff is at spotting mistakes when reviewing code.
(Turns out he's not that good!)


  • WebView/WebDocumentLoaderMac.mm: (WebDocumentLoaderMac::increaseLoadCount):
9:58 PM Changeset in webkit [23078] by aroben
  • 8 edits in branches/WindowsMerge/WebKitTools

Fixed line-endings and svn properties on DRT files.

9:55 PM Changeset in webkit [23077] by aroben
  • 6 edits in branches/WindowsMerge/WebKitTools

Reviewed by Anders.

Make DRT on Windows behave more like DRT on Mac with respect to
waitUntilDone()/waitUntilDone().

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: Added "done" and "topLoadingFrame" globals to match Mac, removed readyToDump. (dump): Set done to true. (runTest): Removed readyToDump, initialized topLoadingFrame.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.h: Added extern declarations for globals.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/LayoutTestController.cpp: (notifyDoneCallback): Changed condition to match Mac.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WaitUntilDoneDelegate.cpp: (WaitUntilDoneDelegate::didStartProvisionalLoadForFrame): Set topLoadingFrame. (WaitUntilDoneDelegate::locationChangeDone): Ported from Mac. (WaitUntilDoneDelegate::didFinishLoadForFrame): Call locationChangeDone. (WaitUntilDoneDelegate::didFailLoadWithError): Ditto.
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WaitUntilDoneDelegate.h: Moved implementation of didFailLoadWithError to .cpp file.
9:09 PM Changeset in webkit [20207] by kmccullo
  • 2 edits in trunk/WebKitSite

Reviewed by .

Silly wrapping change for testing a post-commit hook change.

  • contact.html:
9:00 PM Changeset in webkit [20206] by andersca
  • 3 edits in trunk/WebKit

Reviewed by Geoff.

http://bugs.webkit.org/show_bug.cgi?id=13076
REGRESSION: Multiple loading tabs cause assertion in WebDocumentLoaderMac::decreaseLoadCount(unsigned long)

Store the identifier set in the document loader since identifiers are per-webview and not global.


  • WebView/WebDocumentLoaderMac.h:
  • WebView/WebDocumentLoaderMac.mm: (WebDocumentLoaderMac::WebDocumentLoaderMac): (WebDocumentLoaderMac::attachToFrame): (WebDocumentLoaderMac::increaseLoadCount): (WebDocumentLoaderMac::decreaseLoadCount):
8:42 PM Changeset in webkit [20205] by kmccullo
  • 2 edits in trunk/JavaScriptCore

Reviewed by .

  • Fixed one more build breakage
  • kjs/date_object.cpp: (KJS::formatLocaleDate):
8:23 PM Changeset in webkit [20204] by kmccullo
  • 3 edits in trunk/JavaScriptCore

Reviewed by .

  • Fixed a build breakage.
  • kjs/DateMath.cpp:
  • kjs/date_object.cpp: (KJS::formatLocaleDate): (KJS::DateObjectImp::construct):
7:21 PM Changeset in webkit [20203] by kmccullo
  • 13 edits in trunk

JavaScriptCore:

Reviewed by Geoff.

  • rdar://problem/5045720
  • DST changes in US affect JavaScript date calculations (12975) This fix was to ensure we properly test for the new changes to DST in the US. Also this fixes when we apply DST, now we correctly map most past years to current DST rules. We still have a small issue with years before 1900 or after 2100. rdar://problem/5055038
  • kjs/DateMath.cpp: Fix DST to match spec better. (KJS::getCurrentUTCTime): (KJS::mimimumYearForDST): (KJS::maximumYearForDST): (KJS::equivalentYearForDST): (KJS::getDSTOffset):
  • kjs/DateMath.h: Consolodated common funtionality.
  • kjs/date_object.cpp: Consolodated common functionality. (KJS::formatLocaleDate): (KJS::DateObjectImp::construct):
  • tests/mozilla/ecma/jsref.js: Added functions for finding the correct days when DST starts and ends.
  • tests/mozilla/ecma/shell.js: Added back in the old DST functions for ease of merging with mozilla if needed.
  • tests/mozilla/ecma_2/jsref.js: Added functions for finding the correct days when DST starts and ends.
  • tests/mozilla/ecma_3/Date/shell.js: Added functions for finding the correct days when DST starts and ends.
  • tests/mozilla/expected.html: Updated to show all date tests passing.

LayoutTests:

Reviewed by Geoff.

  • rdar://problem/5045720
  • DST changes in US affect JavaScript date calculations (12975) Changed layout tests to properly check for the new changes to DST in the US. Also these now test that equivalent years return the same results for DST.
  • fast/js/date-DST-time-cusps-expected.txt:
  • fast/js/date-big-setdate-expected.txt:
  • fast/js/resources/date-DST-time-cusps.js:
  • fast/js/resources/date-big-setdate.js:
6:36 PM Changeset in webkit [20202] by weinig
  • 3 edits
    5 adds in trunk

LayoutTests:

Reviewed by Hyatt.

  • test for://bugs.webkit.org/show_bug.cgi?id=13071 REGRESSION: Plain text files no longer wrap lines longer than the width of the browser window
  • fast/loader/resources/text-document-wrapping.txt: Added.
  • fast/loader/text-document-wrapping-expected.checksum: Added.
  • fast/loader/text-document-wrapping-expected.png: Added.
  • fast/loader/text-document-wrapping-expected.txt: Added.
  • fast/loader/text-document-wrapping.html: Added.

WebCore:

Reviewed by Hyatt.

Test: fast/loader/text-document-wrapping.html

  • loader/TextDocument.cpp: (WebCore::TextTokenizer::write): Specified word-wrap:break-word for the <pre> element.
6:22 PM Changeset in webkit [20201] by harrison
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

<rdar://problem/5009625> REGRESSION: Aperture 1.5: Can't select entire line of text after correcting a misspelled word

  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection):
  • WebCoreSupport/WebFrameBridge.mm: Provide compatibility by not sending WebViewDidChangeSelectionNotification if the app is Aperture and is linked against WebKit 2.0.
6:22 PM Changeset in webkit [20200] by weinig
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Hyatt.

  • fast/text/whitespace/pre-wrap-last-char-expected.checksum: Added.
  • fast/text/whitespace/pre-wrap-last-char-expected.png: Added.
  • fast/text/whitespace/pre-wrap-last-char-expected.txt: Added.
  • fast/text/whitespace/pre-wrap-last-char.html: Added.

WebCore:

Reviewed by Hyatt.

Test: fast/text/whitespace/pre-wrap-last-char.html

  • rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Undid the change from r15617.
5:31 PM Changeset in webkit [23076] by adele
  • 2 edits in branches/WindowsMerge/WebKitWin

WebKitWin:

Reviewed by Ada.

Allow empty commands to be sent by doTextFieldCommandFromEvent. Our autocomplete code relies on this.

  • WebEditorClient.cpp: (WebEditorClient::doTextFieldCommandFromEvent):
5:28 PM Changeset in webkit [20199] by hyatt
  • 2 edits in trunk/WebCore

Add asserts to help catch double refs and double derefs of CachedResources.

Reviewed by mjs

  • loader/CachedResource.cpp: (WebCore::CachedResource::ref): (WebCore::CachedResource::deref):
4:40 PM Changeset in webkit [20198] by aliceli1
  • 2 edits in trunk/WebCore

Rubber-stamped by Hyatt.

Adding null check to prevent the crash that happens on 2nd run of iBench HTML load test

  • loader/icon/IconDataCache.cpp: (WebCore::IconDataCache::writeToDatabase):
3:45 PM Changeset in webkit [23075] by andersca
  • 2 edits in branches/WindowsMerge/WebCore

Reviewed by Adam.

Use CFURLResponseCopySuggestedFilename.


  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::suggestedFilenameForResponse):
2:49 PM Changeset in webkit [23074] by aroben
  • 6 edits in branches/WindowsMerge/WebKitTools

Reviewed by Anders.

Use Mac fonts when running regression tests to match Mac's metrics.

This makes many layout tests pass when run against results generated on the Mac.

2:47 PM Changeset in webkit [20197] by adele
  • 2 edits in trunk/WebCore

Reviewed by Adam.

Fix for <rdar://problem/5062898> REGRESSION: autocomplete window in text fields doesn't come up

When we moved the initialization of a bunch of variables in the HTMLFormElement constructor, m_autocomplete accidently got initialized to false.

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::HTMLFormElement):
2:45 PM Changeset in webkit [20196] by sfalken
  • 2 edits in trunk/WebCore

2007-03-14 Steve Falkenburg <sfalken@apple.com>

Reviewed by Adam.

Added missing null check in case this is called on a subframe
that hasn't started loading.

  • page/Frame.cpp: (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Check for a null document.
2:43 PM Changeset in webkit [20195] by andersca
  • 4 edits in trunk/WebKit

Reviewed by Geoff.

<rdar://problem/5058714>
http://bugs.webkit.org/show_bug.cgi?id=13050


World leaks seen on Leopard after opening then closing tab (13050)

Add a hash set to prevent the load count to be increased twice for the same resource.


  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchWillSendRequest): (WebFrameLoaderClient::dispatchDidFinishLoading): (WebFrameLoaderClient::dispatchDidFailLoading):
  • WebView/WebDocumentLoaderMac.h:
  • WebView/WebDocumentLoaderMac.mm: (loadingResources): (WebDocumentLoaderMac::increaseLoadCount): (WebDocumentLoaderMac::decreaseLoadCount):
2:43 PM Changeset in webkit [23073] by sfalken
  • 2 edits in branches/WindowsMerge/WebKitWin

2007-03-14 Steve Falkenburg <sfalken@apple.com>

Reviewed by Lou, Adam.

<rdar://problem/5050470> Reproducible crash doing find on page at cnn.com


Add frame->document() null checks in cases where frame could be a
sub-frame that hasn't started loading yet.

  • WebView.cpp: (WebView::rectsForTextMatches): Add null check
1:53 PM Changeset in webkit [23072] by aroben
  • 2 edits in branches/WindowsMerge/WebCore

Reviewed by Hyatt.

Use CG to get xHeight.

  • platform/win/FontDataWin.cpp: (WebCore::scaleEmToUnits): Made robust against divide-by-zero errors. (WebCore::FontData::platformInit): Ported Mac code to get xHeight using CG.
1:38 PM Changeset in webkit [20194] by antti
  • 2 edits in trunk/WebCore

Reviewed by Geoff.

Fix http://bugs.webkit.org/show_bug.cgi?id=13060
REGRESSION: Repro ASSERT failure in Cache::adjustSize running layout tests
<rdar://5060208>


Script evaluation may have dereffed the CachedScript object already, causing double deref and
eventually m_liveResourcesSize underflow.

  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::notifyFinished):
1:32 PM Changeset in webkit [20193] by adele
  • 7 edits in trunk

WebCore:

Reviewed by Darin.

Added InsertTab, InsertBacktab, InsertLineBreak, and InsertNewline to the editing command table.
Added Event parameter to execCommand, and to all of the enabled and exec functions. Right now,
the event is only used by the newly added commands. But in the future, many (and possibly all) of
these editing commands will need to consider the event so they are applied to the correct selection.

  • WebCore.exp:
  • editing/Editor.cpp: (WebCore::execCopy): (WebCore::execCut): (WebCore::execDelete): (WebCore::execBackwardDelete): (WebCore::execForwardDelete): (WebCore::execMoveBackward): (WebCore::execMoveBackwardAndModifySelection): (WebCore::execMoveUpByPageAndModifyCaret): (WebCore::execMoveDown): (WebCore::execMoveDownAndModifySelection): (WebCore::execMoveForward): (WebCore::execMoveForwardAndModifySelection): (WebCore::execMoveDownByPageAndModifyCaret): (WebCore::execMoveLeft): (WebCore::execMoveLeftAndModifySelection): (WebCore::execMoveRight): (WebCore::execMoveRightAndModifySelection): (WebCore::execMoveToBeginningOfDocument): (WebCore::execMoveToBeginningOfDocumentAndModifySelection): (WebCore::execMoveToBeginningOfSentence): (WebCore::execMoveToBeginningOfSentenceAndModifySelection): (WebCore::execMoveToBeginningOfLine): (WebCore::execMoveToBeginningOfLineAndModifySelection): (WebCore::execMoveToBeginningOfParagraph): (WebCore::execMoveToBeginningOfParagraphAndModifySelection): (WebCore::execMoveToEndOfDocument): (WebCore::execMoveToEndOfDocumentAndModifySelection): (WebCore::execMoveToEndOfSentence): (WebCore::execMoveToEndOfSentenceAndModifySelection): (WebCore::execMoveToEndOfLine): (WebCore::execMoveToEndOfLineAndModifySelection): (WebCore::execMoveToEndOfParagraph): (WebCore::execMoveToEndOfParagraphAndModifySelection): (WebCore::execMoveParagraphBackwardAndModifySelection): (WebCore::execMoveParagraphForwardAndModifySelection): (WebCore::execMoveUp): (WebCore::execMoveUpAndModifySelection): (WebCore::execMoveWordBackward): (WebCore::execMoveWordBackwardAndModifySelection): (WebCore::execMoveWordForward): (WebCore::execMoveWordForwardAndModifySelection): (WebCore::execMoveWordLeft): (WebCore::execMoveWordLeftAndModifySelection): (WebCore::execMoveWordRight): (WebCore::execMoveWordRightAndModifySelection): (WebCore::execPaste): (WebCore::execSelectAll): (WebCore::execToggleBold): (WebCore::execToggleItalic): (WebCore::execRedo): (WebCore::execUndo): (WebCore::execInsertTab): (WebCore::execInsertBacktab): (WebCore::execInsertNewline): (WebCore::execInsertLineBreak): (WebCore::enabled): (WebCore::canPaste): (WebCore::hasEditableSelection): (WebCore::hasEditableRangeSelection): (WebCore::hasRangeSelection): (WebCore::hasRichlyEditableSelection): (WebCore::canRedo): (WebCore::canUndo): (WebCore::CommandEntry::): (WebCore::Editor::toggleBold):

(WebCore::Editor::execCommand): Added optional event parameter.
(WebCore::Editor::insertText): Added. Calls handleTextInputEvent.
(WebCore::Editor::insertTextWithoutSendingTextEvent): Renamed from insertText.

Performs the actual insertion without dispatching any event.

  • editing/Editor.h:
  • page/EventHandler.cpp: (WebCore::EventHandler::defaultTextInputEventHandler): Call insertTextWithoutSendingTextEvent.

WebKit:

Reviewed by Darin.

Removed _insertTextWithEvent, _insertNewlineWithEvent, and _insertTextWithEvent.
Instead, use execCommand and insertText methods on the Editor.

  • WebView/WebHTMLView.mm: (-[WebHTMLView insertTab:]): (-[WebHTMLView insertBacktab:]): (-[WebHTMLView insertNewline:]): (-[WebHTMLView insertLineBreak:]): (-[WebHTMLView insertParagraphSeparator:]): (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): (-[WebHTMLView insertTabIgnoringFieldEditor:]): (-[WebHTMLView yank:]): (-[WebHTMLView yankAndSelect:]): (-[WebHTMLView doCommandBySelector:]): (-[WebHTMLView insertText:]):
1:32 PM Changeset in webkit [23071] by adele
  • 6 edits in branches/WindowsMerge/WebKitWin

WebKitWin:

Reviewed by Darin.

WebKit part of fix for <rdar://problem/5057371> REGRESSION: Shift-selection stopped working in text fields

This fixes doCommandBySelector to take a command string instead of a key code.

  • Interfaces/IWebEditingDelegate.idl: Changed parameter to BSTR.
  • Interfaces/IWebFormDelegate.idl: ditto.
  • WebEditorClient.cpp: (WebEditorClient::doTextFieldCommandFromEvent): Calls doCommandBySelector with a BString that it gets from interpretKeyEvent instead of a key code. (WebEditorClient::textWillBeDeletedInTextField): Calls doCommandBySelector with a BString to represent the BackwardDelete command. (WebEditorClient::handleKeypress): Calls handleEditingKeyboardEvent with just the KeyboardEvent.
  • WebView.cpp: Added commands that will be used by doCommandBySelector to the table (Cancel, InsertTab, InsertBacktab, InsertNewline). (WebView::interpretKeyEvent): Added. Returns a command string for a KeyboardEvent. Removed static editCommandForKey. (WebView::handleEditingKeyboardEvent): Call Editor methods instead of calling handleTextInputEvent directly.
  • WebView.h:
1:06 PM Changeset in webkit [20192] by justing
  • 1 edit in trunk/LayoutTests/fast/lists/drag-into-marker-expected.txt

I forgot to update this expected result in my previous checkin.

12:32 PM Changeset in webkit [20191] by justing
  • 26 edits in trunk

LayoutTests:

Reviewed by darin

Removed unnecessary style spans:

  • editing/deleting/delete-3857753-fix-expected.txt:
  • editing/execCommand/4916541-expected.txt:
  • editing/execCommand/create-list-from-range-selection-expected.txt:
  • editing/execCommand/format-block-expected.txt:
  • editing/execCommand/format-block-from-range-selection-expected.txt:
  • editing/execCommand/format-block-with-braces-expected.txt:
  • editing/execCommand/indent-selection-expected.txt:
  • editing/execCommand/remove-list-from-range-selection-expected.txt:
  • editing/execCommand/remove-list-items-expected.txt:
  • editing/execCommand/switch-list-type-expected.txt:
  • editing/pasteboard/4861080-expected.txt:
  • editing/pasteboard/display-block-on-spans-expected.txt:
  • editing/pasteboard/drag-drop-modifies-page-expected.txt:
  • editing/pasteboard/paste-table-002-expected.txt:
  • editing/pasteboard/paste-text-001-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-002-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
  • editing/style/smoosh-styles-001-expected.txt:
  • editing/style/smoosh-styles-002-expected.txt:

WebCore:

Reviewed by darin


~3x speedup pasting 5k lines of rich text:
http://shakespeare.mit.edu/hamlet/full.html
~2x speedup pasting 10k lines of plain text


  • css/CSSComputedStyleDeclaration.cpp: (WebCore::computedStyle): Added for convenience.
  • css/CSSComputedStyleDeclaration.h:
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::removeRedundantStyles): The code that pushed down the top level style span had a bug in it that made it do unnecessary work. Instead of fixing the bug I removed the code because it was used to help see more redundancies in second level style spans, but createMarkup now *only* creates a top level style span. Only remove redundant styles from style spans and only remove unstyled elements if they are style spans. FF doesn't remove redundant styles from elements, or remove redundant font tags on copy/paste. We could offer this functionality through a separate "cleanup" command.
  • editing/markup.cpp: (WebCore::createMarkup): Only add markup for ancestors of lastClosed if we're including markup for acommonAncestorBlock (we do this for commonAncestorBlocks like tables and lists), otherwise it's unnecessary/redundant.
11:50 AM Changeset in webkit [20190] by andersca
  • 2 edits in trunk/WebCore

Reviewed by Ada.

Make sure to call ResourceLoader::didReceiveData to ensure that there's a shared buffer with the resource
data, since SubresourceLoaderClients now make use of that buffer.


  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::didReceiveData):
10:56 AM Changeset in webkit [23070] by andersca
  • 5 edits in branches/WindowsMerge

WebCoreWin:

Build fixes.


  • platform/graphics/win/ImageWin.cpp: (WebCore::Image::loadPlatformResource):
  • platform/win/EditorWin.cpp:

WebKitWin:

Build fixes.


  • WebDataSource.cpp: (WebDataSource::subresourceForURL):
  • WebKitDLL.cpp: (loadResourceIntoBuffer):
10:38 AM Changeset in webkit [20189] by andersca
  • 3 edits in trunk/WebCore

Get the size from the shared buffer.


  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::dataChanged):
10:25 AM Changeset in webkit [20188] by weinig
  • 4 edits
    4 adds in trunk

LayoutTests:

Reviewed by Hyatt, thumbs up by Darin.

  • fast/dynamic/anonymous-block-orphaned-lines-expected.checksum: Added.
  • fast/dynamic/anonymous-block-orphaned-lines-expected.png: Added.
  • fast/dynamic/anonymous-block-orphaned-lines-expected.txt: Added.
  • fast/dynamic/anonymous-block-orphaned-lines.html: Added.

WebCore:

Reviewed by Hyatt, thumbs up by Darin.

Test: fast/dynamic/anonymous-block-orphaned-lines.html

  • rendering/InlineBox.cpp: (WebCore::InlineBox::root): Added an assertion that we return a root inline box.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::removeChild): Added code to adopt the line boxes of anonymous blocks being destroyed instead of leaving them orphaned, which is what caused this crash. The boxes will be deleted on the next layout, but this ensures consistency in the mean time.
6:38 AM Changeset in webkit [20187] by lars
  • 4 edits in trunk/WebCore

Reviewed by Antti.

Fix the Qt build.
Add a getter to SharedBuffer that returns a reference to the internal
Vector to avoid an extra copy of the data.

4:37 AM Changeset in webkit [20186] by antti
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Mitz.


Test case for <rdar://problem/5058774>
REGRESSION: In Mail, caret appears oversized when typing in a To Do note

  • editing/style/highlight-expected.checksum: Added.
  • editing/style/highlight-expected.png: Added.
  • editing/style/highlight-expected.txt: Added.
  • editing/style/highlight.html: Added.

WebCore:

Reviewed by Mitz.


Fix <rdar://problem/5058774>
REGRESSION: In Mail, caret appears oversized when typing in a To Do note


Horizontal and vertical were switched. Was regression from
http://trac.webkit.org/projects/webkit/changeset/20103

  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::addHighlightOverflow):
4:02 AM Changeset in webkit [20185] by hyatt
  • 4 edits in trunk/WebCore

Tweak the data() functions of stylesheets and scripts to be internally consistent.

  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::data):
  • loader/CachedScript.cpp: (WebCore::CachedScript::data):
  • loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::data):
2:20 AM Changeset in webkit [20184] by hyatt
  • 3 edits in trunk/WebCore

Fix Radar 5050688.

For large animated GIFs, destroy and recreate the source for every animation frame. This keeps
the memory consumption down while giant images are animating.

Reviewed by andersca

  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::BitmapImage): (WebCore::BitmapImage::destroyDecodedData): (WebCore::BitmapImage::dataChanged): (WebCore::BitmapImage::advanceAnimation):
  • platform/graphics/BitmapImage.h:
1:49 AM Changeset in webkit [20183] by hyatt
  • 3 edits in trunk/WebCore

Make sure to use CFDataCreateWithBytesNoCopy where we can.

Reviewed by andersca

  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::dataChanged):
1:07 AM Changeset in webkit [20182] by hyatt
  • 40 edits in trunk

WebCore:

Fix for bugzilla bug 13050 and also radar p1 5050645.

This patch reworks resource loading to avoid having redundant buffers in the icon database and in cached
images in the WebCore cache. It also avoids overcopying in top-level image documents and in the icon
database.

There is now only one SharedBuffer for a resource and everybody observes that buffer now instead of ever
making their own. Even ImageIO uses the SharedBuffer while decoding.

The page in 13050 dropped from 145mb down to 45mb of memory use with this change for a stunning savings
of 100mb.

Reviewed by olliej, mjs

  • WebCore.exp:
  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::data):
  • loader/CachedCSSStyleSheet.h:
  • loader/CachedImage.cpp: (WebCore::CachedImage::data):
  • loader/CachedImage.h:
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::~CachedResource):
  • loader/CachedResource.h: (WebCore::CachedResource::data):
  • loader/CachedScript.cpp: (WebCore::CachedScript::data):
  • loader/CachedScript.h:
  • loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::data):
  • loader/CachedXSLStyleSheet.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::checkCacheObjectStatus):
  • loader/ImageDocument.cpp: (WebCore::ImageTokenizer::writeRawData): (WebCore::ImageTokenizer::finish):
  • loader/icon/IconDataCache.cpp: (WebCore::IconDataCache::setImageData): (WebCore::IconDataCache::writeToDatabase):
  • loader/icon/IconDataCache.h:
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::imageDataForIconURL): (WebCore::IconDatabase::iconForPageURL): (WebCore::IconDatabase::setIconDataForIconURL): (WebCore::IconDatabase::setHaveNoIconForIconURL): (WebCore::IconDatabase::imageDataForIconURLQuery):
  • loader/icon/IconDatabase.h:
  • loader/icon/IconLoader.cpp: (WebCore::IconLoader::startLoading): (WebCore::IconLoader::didReceiveResponse): (WebCore::IconLoader::didReceiveData): (WebCore::IconLoader::didFail): (WebCore::IconLoader::finishLoading): (WebCore::IconLoader::clearLoadingState):
  • loader/icon/IconLoader.h:
  • loader/icon/SQLStatement.cpp: (WebCore::SQLStatement::getColumnBlobAsVector): (WebCore::SQLStatement::isExpired):
  • loader/icon/SQLStatement.h:
  • loader/loader.cpp: (WebCore::Loader::didFinishLoading): (WebCore::Loader::didReceiveData):
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge getData:andResponse:forURL:]): (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
  • platform/SharedBuffer.h: (WebCore::SharedBuffer::isEmpty):
  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::destroyDecodedData): (WebCore::BitmapImage::dataChanged):
  • platform/graphics/BitmapImage.h:
  • platform/graphics/Image.cpp: (WebCore::Image::setData):
  • platform/graphics/Image.h: (WebCore::Image::dataChanged): (WebCore::Image::data):
  • platform/graphics/ImageSource.h:
  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::dataChanged):
  • platform/graphics/cg/PDFDocumentImage.h:
  • platform/graphics/mac/ImageMac.mm: (WebCore::Image::loadPlatformResource):
  • platform/graphics/svg/SVGImage.cpp: (WebCore::SVGImage::setData):
  • platform/mac/PasteboardMac.mm: (WebCore::fileWrapperForImage):

WebKit:

Fixes to ensure that the resource loader's shared buffer can always be used.

Reviewed by olliej, mjs

  • Misc/WebIconDatabase.mm: (-[WebIconDatabase _convertToWebCoreFormat]):
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::deliverArchivedResources):
Note: See TracTimeline for information about the timeline view.