Timeline



Apr 10, 2007:

7:43 PM Changeset in webkit [20839] by justing
  • 5 edits
    14 adds in trunk

LayoutTests:

Reviewed by harrison


<rdar://problem/4932260>
Invalid attributed string for attachment range obtained via AXPreviousWordStartTextMarkerForTextMarker

Forgot to check these in in my previous checkin:

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum: Added.
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png: Added.


Tests for a bug where replaced elements would act
as sentence boundaries:

  • editing/selection/4932260-1-expected.checksum: Added.
  • editing/selection/4932260-1-expected.png: Added.
  • editing/selection/4932260-1-expected.txt: Added.
  • editing/selection/4932260-1.html: Added.


Tests to see that replaced elements do not act as word
boundaries when moving forward through the document:

  • editing/selection/4932260-2-expected.checksum: Added.
  • editing/selection/4932260-2-expected.png: Added.
  • editing/selection/4932260-2-expected.txt: Added.
  • editing/selection/4932260-2.html: Added.


Ditto but tests moving backward:

  • editing/selection/4932260-3-expected.checksum: Added.
  • editing/selection/4932260-3-expected.png: Added.
  • editing/selection/4932260-3-expected.txt: Added.
  • editing/selection/4932260-3.html: Added.


No way to test accessibility APIs atm, and had trouble
making a test for selection creation with double-click
and drag.

WebCore:

Reviewed by harrison


<rdar://problem/4932260>
Invalid attributed string for attachment range obtained via AXPreviousWordStartTextMarkerForTextMarker


By default, text iterators don't emit anything for replaced
elements. Boundary finding code works around this but has
bugs: replaced elements act as sentence boundaries and the
above bug, where previousBoundary moves past the start of a
word if there is a replaced element just before it. This
patch fixes these issues by treating replaced elements as
punctuation for boundary finding.

  • editing/TextIterator.cpp: (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Set m_pastStartNode, the node after (in a reverse pre-order traversal) the last one that should be processed. (WebCore::SimplifiedBackwardsTextIterator::advance): Stop at m_pastStartNode. Iterate over nodes in reverse pre-order (TextIterator traverses in pre-orer). This makes knowing when to emit characters after nodes vs. when to emit characters before nodes easier. Remove the special case for entering a new block, emitting characters after nodes can now be handled generally, in handleNonTextNode(), because of the way we traverse. Set m_handledChildren to false every iteration since we now do traverse in reverse pre-order. (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement): Emit a comma for replaced elements. We only use this kind of iterator for finding boundaries, so we can do this unconditionally. (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): Don't use emitNewline, instead specify where the newline should be positioned. A node is handled before its children, so characters emitted here should be positioned after the node, not before it. (WebCore::SimplifiedBackwardsTextIterator::exitNode): Don't use emitNewline, instead specify where the newline should be positioned. (WebCore::CharacterIterator::CharacterIterator): Create a TextIterator that emits content for replaced elements, if requested.
  • editing/TextIterator.h:
  • editing/visible_units.cpp: (WebCore::previousBoundary): Removed replaced element handling code. If the start of the chunk that contained the boundary was in a non-text node, then the boundary is not necessarily in that node. Particularly because it is only the end of the chunk that is guaranteed to be a valid position in those cases. We must iterate backwards by character from the end of the chunk to find the boundary. (WebCore::nextBoundary): Removed replaced element handling code.
6:46 PM Changeset in webkit [23258] by kmccullo
  • 2 edits in branches/WindowsMerge/LayoutTests
  • Skipped: Added last tests to make build bot green.
6:00 PM Changeset in webkit [20838] by sfalken
  • 1 copy in tags/Safari-522.5.6b

New tag.

5:02 PM Changeset in webkit [23257] by beidson
  • 6 edits in branches/WindowsMerge

WebCoreWin:

Reviewed by Darin

<rdar://problem/4887095> - PageCache and PageState should be combined

Changed a TemporaryLinkStub and updated the project file

  • WebCore.vcproj/WebCore.vcproj:
  • platform/win/TemporaryLinkStubs.cpp: (CachedPage::close):

WebKitWin:

Reviewed by Darin

<rdar://problem/4887095> - PageCache and PageState should be combined

Basically updated client methods for the new names and signatures

  • WebFrame.cpp: (WebFrame::loadedFromCachedPage): (WebFrame::setDocumentViewFromCachedPage): (WebFrame::saveDocumentViewToCachedPage):
  • WebFrame.h:
4:55 PM Changeset in webkit [20837] by beidson
  • 22 edits
    3 moves
    2 deletes in trunk

WebCore:

Reviewed by Darin

<rdar://problem/4887095> - PageCache and PageState should be combined

These two objects are a relic of when the PageCache was split between WebCore and WebKit
It just makes good sense to combine them now, and the new object is more appropriately
called "CachedPage"

This patch is vast in scope, but simple in depth - anywhere a PageCache or PageState object
was used has been adjusted to use a CachedPage object instead. The most notable change is
that HistoryItem - which always used to have a PageCache object which may or may not have
had a PageState - now may or may not have a CachedPage. This actually simplifies the
HistoryItem code a bit while making the role of CachedPage much more clear.

  • WebCore.exp:
  • WebCore.xcodeproj/project.pbxproj:
  • history/BackForwardList.cpp: (WebCore::BackForwardList::addItem): (WebCore::BackForwardList::setCapacity): (WebCore::BackForwardList::setPageCacheSize): (WebCore::BackForwardList::clearPageCache): (WebCore::BackForwardList::close):
  • history/PageCache.cpp: Removed.
  • history/PageCache.h: Removed.
  • page/PageState.cpp: Removed.
  • page/PageState.h: Removed.
  • history/CachedPage.cpp: Added. (WebCore::CachedPage::create): (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::~CachedPage): (WebCore::CachedPage::restore): (WebCore::CachedPage::clear): (WebCore::CachedPage::setDocumentLoader): (WebCore::CachedPage::documentLoader): (WebCore::CachedPage::setTimeStamp): (WebCore::CachedPage::setTimeStampToNow): (WebCore::CachedPage::timeStamp):
  • history/CachedPage.h: Added. (WebCore::CachedPage::document): (WebCore::CachedPage::mousePressNode): (WebCore::CachedPage::URL):
  • history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem): (WebCore::HistoryItem::setCachedPage): (WebCore::HistoryItem::setURL): (WebCore::HistoryItem::alwaysAttemptToUseCachedPage): (WebCore::HistoryItem::setAlwaysAttemptToUseCachedPage): (WebCore::HistoryItem::cachedPage): (WebCore::cachedPagesPendingRelease): (WebCore::HistoryItem::releaseCachedPagesOrReschedule): (WebCore::HistoryItem::releaseAllPendingCachedPages): (WebCore::HistoryItem::scheduleCachedPageForRelease):
  • history/HistoryItem.h:
  • history/mac/HistoryItemMac.mm:
  • history/HistoryItemTimer.cpp: (WebCore::HistoryItemTimer::HistoryItemTimer): (WebCore::HistoryItemTimer::callReleaseCachedPagesOrReschedule):
  • history/HistoryItemTimer.h:
  • history/mac/PageCacheMac.mm: Removed.
  • history/mac/CachedPageMac.mm: Added. (WebCore::CachedPage::close): (WebCore::CachedPage::setDocumentView): (WebCore::CachedPage::documentView):
  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::DocumentLoader): (WebCore::DocumentLoader::loadFromCachedPage): (WebCore::DocumentLoader::setLoadingFromCachedPage): (WebCore::DocumentLoader::isLoadingFromCachedPage):
  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::provisionalLoadStarted): (WebCore::FrameLoader::commitProvisionalLoad): (WebCore::FrameLoader::transitionToCommitted): (WebCore::FrameLoader::open): (WebCore::FrameLoader::startLoading): (WebCore::FrameLoader::receivedMainResourceError): (WebCore::FrameLoader::opened): (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): (WebCore::FrameLoader::loadProvisionalItemFromCachedPage): (WebCore::FrameLoader::cachePageToHistoryItem): (WebCore::FrameLoader::createHistoryItem): (WebCore::FrameLoader::purgePageCache): (WebCore::FrameLoader::invalidateCurrentItemCachedPage): (WebCore::FrameLoader::loadItem): (WebCore::FrameLoader::updateHistoryForStandardLoad): (WebCore::FrameLoader::updateHistoryForClientRedirect): (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): (WebCore::FrameLoader::updateHistoryForReload): (WebCore::FrameLoader::updateHistoryForInternalLoad): (WebCore::FrameLoader::updateHistoryForCommit):
  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • page/mac/WebCoreFrameBridge.h: Got rid of unused WebCorePageCacheStateKey
  • page/mac/WebCoreFrameBridge.mm: Ditto
  • platform/graphics/svg/SVGImage.cpp:
  • platform/graphics/svg/SVGImageEmptyClients.h: Update to reflect the new names (WebCore::SVGEmptyFrameLoaderClient::loadProvisionalItemFromCachedPage): (WebCore::SVGEmptyFrameLoaderClient::invalidateCurrentItemCachedPage): (WebCore::SVGEmptyFrameLoaderClient::loadedFromCachedPage): (WebCore::SVGEmptyFrameLoaderClient::clearLoadingFromCachedPage): (WebCore::SVGEmptyFrameLoaderClient::isLoadingFromCachedPage): (WebCore::SVGEmptyFrameLoaderClient::setDocumentViewFromCachedPage): (WebCore::SVGEmptyFrameLoaderClient::saveDocumentViewToCachedPage):

WebKit:

Reviewed by Darin

<rdar://problem/4887095> - PageCache and PageState should be combined

WebKit side of the change to reflect the new object name of CachedPage and new Client method names

  • History/WebHistoryItem.mm: (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]): (+[WebHistoryItem _releaseAllPendingPageCaches]): (-[WebWindowWatcher windowWillClose:]):
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::setDocumentViewFromCachedPage): (WebFrameLoaderClient::loadedFromCachedPage): (WebFrameLoaderClient::saveDocumentViewToCachedPage):
3:40 PM Changeset in webkit [20836] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Mark Rowe.


Fixed last check-in to print in release builds, too.

  • kjs/collector.cpp: (KJS::getPlatformThreadRegisters):
3:28 PM Changeset in webkit [23256] by kmccullo
  • 2 edits in branches/WindowsMerge/LayoutTests
  • Skipped: Re-enabled some tests that no longer crash and added other failures, for which radars will be filed, so that the build bot will be green, and will be usefull in identifying new breakages. Currently it is not.
3:27 PM Changeset in webkit [20835] by ggaren
  • 3 edits in trunk/JavaScriptCore

Reviewed by John Sullivan, Darin Adler.


Fixed <rdar://problem/5121899> JavaScript garbage collection leads to
later crash under Rosetta (should abort or leak instead?)


Log an error message and crash if the kernel reports failure during GC.
We decided to do this instead of just leaking because we don't want people
to get the mistaken impression that running in Rosetta is a supported
configurtion.


The CRASH macro will also hook into CrashReporter, which will tell us if
many (any?) users run into this issue.

  • kjs/collector.cpp: (KJS::getPlatformThreadRegisters):
2:44 PM Changeset in webkit [20834] by antti
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Hyatt.


Layout test for <rdar://5057686>
Flex box layout example hangs in WebCore::RenderFlexibleBox::allowedChildFlex

  • fast/flexbox/flex-hang-expected.checksum: Added.
  • fast/flexbox/flex-hang-expected.png: Added.
  • fast/flexbox/flex-hang-expected.txt: Added.
  • fast/flexbox/flex-hang.html: Added.

WebCore:

Reviewed by Hyatt.

Fix <rdar://5057686>
Flex box layout example hangs in WebCore::RenderFlexibleBox::allowedChildFlex


Forcibly distribute remaining pixels if the algorithm is not advancing.

  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutHorizontalBox): (WebCore::RenderFlexibleBox::layoutVerticalBox):
2:37 PM Changeset in webkit [20833] by bdash
  • 2 edits in trunk/WebCore

2007-04-11 Mark Rowe <mrowe@apple.com>

Build fix.

  • bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject accessibilityDescription]):
2:21 PM Changeset in webkit [20832] by sfalken
  • 3 edits in branches/Safari-522/WebCore

Merged fix from r20685

2:19 PM Changeset in webkit [20831] by sfalken
  • 2 edits in branches/Safari-522/WebCore

Merged fix from r20675

2:14 PM Changeset in webkit [20830] by sfalken
  • 7 edits
    3 copies in branches/Safari-522

Merge fix from r20813

2:14 PM Changeset in webkit [20829] by brmorris
  • 2 edits in S60/trunk/WebKit

bradley, reviewed by SuperMario

DESC: remove Rendundant include to save a warning :)


  • BrowserView/src/WebKitControl.cpp:
2:14 PM Changeset in webkit [20828] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-04-10 spadma

Reviewed by Zalan.
DESC: browser fails to properly render the <cr> <lf> special characters when a text file displayed
http://bugs.webkit.org/show_bug.cgi?id=13324
TSW ID : JKRL-6ZSH8Q

  • ResourceLoader/src/ContentDispatcher.cpp: (CContentDispatcher::ConstructL):
2:11 PM Changeset in webkit [20827] by spadma
  • 2 edits in S60/trunk/WebKit

2007-04-10 spadma

Reviewed by Zalan.
DESC: browser fails to properly render the <cr> <lf> special characters when a text file displayed
http://bugs.webkit.org/show_bug.cgi?id=13324
TSW ID : JKRL-6ZSH8Q

  • ResourceLoader/src/ContentDispatcher.cpp: (CContentDispatcher::ConstructL):
2:08 PM Changeset in webkit [20826] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-04-10 spadma

Reviewed by Zalan.
DESC: Browser control hangs when accesing a secure (HTTPS) page
http://bugs.webkit.org/show_bug.cgi?id=13322
TSW ID: EBRE-6ZQFKV

  • BrowserControl/src/BrCtl.cpp: (CBrCtl::ConstructL): (CBrCtl::~CBrCtl):
2:04 PM Changeset in webkit [20825] by spadma
  • 2 edits in S60/trunk/WebKit

2007-04-10 spadma

Reviewed by Zalan.
DESC: Browser control hangs when accesing a secure (HTTPS) page
http://bugs.webkit.org/show_bug.cgi?id=13322
TSW ID: EBRE-6ZQFKV

  • BrowserControl/src/BrCtl.cpp: (CBrCtl::ConstructL): (CBrCtl::~CBrCtl):
2:00 PM Changeset in webkit [20824] by pyeh
  • 3 edits in trunk/WebCore

<rdar://problem/5122276> Allow focused frame to fire off notification
Improve accessibility support for Mail WebView embedded Notes.

  • bridge/mac/AXObjectCacheMac.mm:

(WebCore::AXObjectCache::postNotification):
The focused document with the selection change should fire the selection changed notification, not the top level document

  • bridge/mac/WebCoreAXObject.mm:

(-[WebCoreAXObject accessibilityDescription]):
Allow the name attribute of the html body to be used as the accessibility description

1:26 PM Changeset in webkit [20823] by brmorris
  • 3 edits in S60/trunk/WebKit

bradley, reviewed by nobody (build fix)

DESC: flagged out some includes.


  • BrowserView/src/WebKitControl.cpp:
  • ResourceLoader/src/HttpLoaderAcceptHeader.cpp:


1:12 PM Changeset in webkit [20822] by yongjzha
  • 2 edits in S60/branches/3.1m/WebCore

w3liu, reviewed by <yongjun.zhang@nokia.com>

DESC: [S60] LXUU-6Z4HBB: GCF-AE-Browsing-S60-SPPR50.31: Fail in GCF test case: 45.15.30 Encoding Priority 1
http://bugs.webkit.org/show_bug.cgi?id=13321

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/css/cssparser.cpp: (CSSParser::parseSheet):
1:11 PM Changeset in webkit [20821] by yongjzha
  • 2 edits in S60/trunk/WebCore

w3liu, reviewed by <yongjun.zhang@nokia.com>

DESC: [S60] LXUU-6Z4HBB: GCF-AE-Browsing-S60-SPPR50.31: Fail in GCF test case: 45.15.30 Encoding Priority 1
http://bugs.webkit.org/show_bug.cgi?id=13321

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/css/cssparser.cpp: (CSSParser::parseSheet):
11:19 AM Changeset in webkit [20820] by ggaren
  • 16 edits in trunk

WebCore:

Reviewed by Maciej Stachowiak.


Support for fixing fast/forms/textarea-paste-newline.html.


Changed clients to use new preference specifying whether a Page should
allow pasting through the DOM API, instead of a global flag.

Removed old behavior of always allowing DOM paste in debug builds. In
light of the new preference-based API, that behavior makes no sense anymore.
Instead, developers who want to test paste inside Safari can set the
preference for themselves.

  • WebCore.exp:
  • editing/CommandByName.cpp: Removed crazy hack to keep an identically named but invalid copy of the global "pate allowed" flag in this file. (WebCore::Frame::enabledPaste):
  • editing/JSEditor.cpp: Removed "always allow" behavior for debug builds. (WebCore::JSEditor::queryCommandSupported):
  • editing/JSEditor.h:
  • page/Settings.cpp: (WebCore::Settings::setDOMPasteAllowed):
  • page/Settings.h: (WebCore::Settings::isDOMPasteAllowed):
  • rendering/RenderTreeAsText.cpp: (WebCore::externalRepresentation): Removed crazy hack to allow DOM paste after this function has been called.

WebKit:

Reviewed by Maciej Stachowiak.


Support for fixing fast/forms/textarea-paste-newline.html.


Added SPI for specifying whether a WebView should allow pasting through the
DOM API.

  • ChangeLog:
  • WebKit.xcodeproj/project.pbxproj:
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.m: (+[WebPreferences standardPreferences]): (-[WebPreferences isDOMPasteAllowed]): (-[WebPreferences setDOMPasteAllowed:]):
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm: (-[WebView _updateWebCoreSettingsFromPreferences:]):

WebKitTools:

Reviewed by Maciej Stachowiak.


Fixed fast/forms/textarea-paste-newline.html.


This failure was pretty funny. run-webkit-tests kills and respawns
DumpRenderTree once every 1000 runs. Adding a few tests caused
textarea-paste-newline.html to run right at the beginning of DumpRenderTree's
lifetime, before any render tree dumps had occurred. However, WebCore
used a render tree dump as the hook that set a global flag to allow
pasting through the DOM API, so running before any render tree dumps had
occurred caused this test to fail.

  • DumpRenderTree/DumpRenderTree.m: (dumpRenderTree): Explicitly tell WebKit to allow pasting through the DOM API, instead of hoping it will read the tea leaves.
9:36 AM Changeset in webkit [23255] by sullivan
  • 2 edits in branches/WindowsMerge/WebCore
  • platform/win/TemporaryLinkStubs.cpp: (WebCore::Editor::markBadGrammar): Keep build going: added stub for this new method
9:28 AM Changeset in webkit [20819] by sullivan
  • 4 edits in trunk/WebCore

Reviewed by Tim Hatcher

  • fixed <rdar://problem/4859132> Grammar must always be checked in entire-sentence chunks, and shouldn't show markers for current sentence
  • editing/Editor.h: add markBadGrammar, now distinct from markMisspellings
  • editing/mac/EditorMac.mm: (WebCore::Editor::markMisspellingsAfterTypingToPosition): call markMisspellings on one word, and markBadGrammar on entire sentence (WebCore::markMisspellingsOrBadGrammar): new static function, extracted from markMisspellings (WebCore::Editor::markMisspellings): now calls extracted function (WebCore::Editor::markBadGrammar): new method, calls extracted function
  • page/Frame.cpp: (WebCore::Frame::respondToChangedSelection): update grammar markers for entire new and old sentences
2:35 AM Changeset in webkit [23254] by aroben
  • 3 edits in branches/WindowsMerge/WebKitWin

Reviewed by Anders.

Fix <rdar://problem/5119803> Web Inspector has no options menu

  • WebInspector/WebInspector.cpp: (interpreterForFrame): Added. (WebInspector::showOptionsMenu): Implemented. (WebInspector::onCommand): Added. (WebInspector::toggleIgnoreWhitespace): Implemented. (WebInspector::toggleShowUserAgentStyles): Implemented. (WebInspectorWndProc): Added case for WM_COMMAND.
  • WebInspector/WebInspector.h:
2:23 AM Changeset in webkit [23253] by andersca
  • 2 edits in branches/WindowsMerge/WebCore

Reviewed by Adam.

<rdar://problem/5056988>
Can not open player on http://radioalice.com

Fix scriptStringIfJavaScriptURL to not use the path of the URL. This would ignore any characters past
a '?' character because that would be parsed as the query part of the URL.


  • plugins/win/PluginViewWin.cpp: (WebCore::scriptStringIfJavaScriptURL): Make this be more like the mac, chopping off the first 12 characters ("javascript:") and then decoding the remaining characters.
1:59 AM Changeset in webkit [23252] by andersca
  • 2 edits in branches/WindowsMerge/WebCore
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::PluginViewWin): Initialize m_status.
12:54 AM Changeset in webkit [20818] by mjs
  • 2 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.

  • raise ALLOCATIONS_PER_COLLECTION to 4000, for 3.7% iBench speed improvement


Now that the cell size is smaller and the block size is bigger, we can fit 4000 objects in
the two spare cells the collector is willing to keep around, so collect a bit less often.


  • kjs/collector.cpp:
12:52 AM Changeset in webkit [20817] by mjs
  • 4 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • move mark and collectOnMainThreadOnly bits into separate bitmaps


This saves 4 bytes per word, allowing shrink of cell size 32,
which leads to a .8% speed improvement on iBench.


This is only feasible because of all the previous changes on the branch.

  • kjs/collector.cpp: (KJS::allocateBlock): Adjust for some renames of constants. (KJS::Collector::markStackObjectsConservatively): Now that cells are 32 bytes (64 bytes on 64-bit) the cell alignment check can be made much more strict, and also obsoletes the need for a % sizeof(CollectorCell) check. Also, we can mask off the low bits of the pointer to have a potential block pointer to look for. (KJS::Collector::collectOnMainThreadOnly): Use bitmap. (KJS::Collector::markMainThreadOnlyObjects): Use bitmap. (KJS::Collector::collect): When sweeping, use bitmaps directly to find mark bits.
  • kjs/collector.h: (KJS::): Move needed constants and type declarations here. (KJS::CollectorBitmap::get): Bit twiddling to get a bitmap value. (KJS::CollectorBitmap::set): Bit twiddling to set a bitmap bit to true. (KJS::CollectorBitmap::clear): Bit twiddling to set a bitmap bit to false. (KJS::CollectorBitmap::clearAll): Clear whole bitmap at one go. (KJS::Collector::cellBlock): New operation, compute the block pointer for a cell by masking off low bits. (KJS::Collector::cellOffset): New operation, compute the cell offset for a cell by masking off high bits and dividing (actually a shift). (KJS::Collector::isCellMarked): Check mark bit in bitmap (KJS::Collector::markCell): Set mark bit in bitmap.
  • kjs/value.h: (KJS::JSCell::JSCell): No more bits. (KJS::JSCell::marked): Let collector handle it. (KJS::JSCell::mark): Let collector handle it.
12:49 AM Changeset in webkit [23251] by andersca
  • 11 edits in branches/WindowsMerge

WebCoreWin:

Reviewed by Adam.

<rdar://problem/5062624>
No prompt to install QT for pages with uninstalled QT plug-in.


Add a status() accessor to PluginViewWin. This can be used by WebKit to find out if the plug-in
loaded successfully or not.


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::PluginViewWin): (WebCore::PluginViewWin::init):
  • plugins/win/PluginViewWin.h: (WebCore::): (WebCore::PluginViewWin::status):

WebKitWin:

Reviewed by Adam.

<rdar://problem/5062624>
No prompt to install QT for pages with uninstalled QT plug-in.


  • CFDictionaryPropertyBag.cpp: (CFDictionaryPropertyBag::Read): (CFDictionaryPropertyBag::Write): Use LPCOLESTRToCFStringRef here since the property names aren't BSTRs.


  • Interfaces/IWebError.idl: Add user info keys.


  • MarshallingHelpers.cpp: (MarshallingHelpers::LPCOLESTRToCFStringRef):
  • MarshallingHelpers.h: New function.


  • WebError.cpp: (WebError::WebError): (WebError::createInstance): Take a property bag.


(WebError::userInfo):
Return the property bag.


  • WebFrame.cpp: (WebFrame::createPlugin): If the plug-in wasn't found or failed to load, create a WebError with the right user info and call IWebResourceLoadDelegate::plugInFailedWithError.
12:37 AM Changeset in webkit [20816] by mjs
  • 6 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • shrink FunctionImp / DeclaredFunctionImp by 4 bytes, by moving parameter list to function body


I reconciled this with a similar change in KDE kjs by Maks Orlovich <maksim@kde.org>.

  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction): (KJS::FunctionImp::passInParameters): (KJS::FunctionImp::lengthGetter): (KJS::FunctionImp::getParameterName):
  • kjs/function.h:
  • kjs/function_object.cpp: (FunctionProtoFunc::callAsFunction): (FunctionObjectImp::construct):
  • kjs/nodes.cpp: (FunctionBodyNode::addParam): (FunctionBodyNode::paramString): (FuncDeclNode::addParams): (FuncDeclNode::processFuncDecl): (FuncExprNode::addParams): (FuncExprNode::evaluate):
  • kjs/nodes.h: (KJS::Parameter::Parameter): (KJS::FunctionBodyNode::numParams): (KJS::FunctionBodyNode::paramName): (KJS::FunctionBodyNode::parameters): (KJS::FuncExprNode::FuncExprNode): (KJS::FuncDeclNode::FuncDeclNode):

Apr 9, 2007:

6:36 PM Known incompatibilities between open-source WebKit and Safari edited by bdash@webkit.org
(diff)
6:05 PM Changeset in webkit [20815] by adele
  • 1 edit
    1 add in trunk/WebKitSite
  • blog/wp-content/chrome.jpg: Added.
5:55 PM Changeset in webkit [23250] by beidson
  • 4 edits in branches/WindowsMerge

Build fix for my recent OpenSource checkin

5:06 PM Changeset in webkit [20814] by andersca
  • 4 edits in trunk

WebCore:

Reviewed by John.

  • WebCore.exp: Add ZNK7WebCore11FrameLoader10isCompleteEv.

WebKit:

Reviewed by John.

<rdar://problem/5081860>
REGRESSION: Select All for standalone image has no visible effect but does change state


<rdar://problem/5081840>
REGRESSION: context menu in white space beyond standalone image is different after Select All


Have validateUserInterface emulate the old behavior for full-frame images and plugins, which is:


  • For full-frame plugins, always return false.
  • For images, only return true if the selector is copy: and the image has finished loading.


  • WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItem:]):
5:00 PM Changeset in webkit [20813] by beidson
  • 7 edits
    3 adds in trunk

LayoutTests:

Reviewed by Darin

Layout test for the fix for <rdar://4921797> and http://bugs.webkit.org/show_bug.cgi?id=12005

  • http/tests/navigation/multiple-back-forward-entries-expected.txt: Added.
  • http/tests/navigation/multiple-back-forward-entries.html: Added.
  • http/tests/navigation/resources/slow-resource.pl: Added.

WebCore:

Reviewed by Darin

Fixes <rdar://4921797> and http://bugs.webkit.org/show_bug.cgi?id=12005

The original regression was to claim that more loads were the result of a "user gesture" than really
were. A lot of the ways a frame load could be kicked off didn't properly set up this flag, and it
wasn't properly propagated and respected where it should've been.

This patch cleans much of that up. One loose end is the "treatAsUserGesture" flag which is a stop
gap measure to keep "slow redirects" working to create a new history item. In the future, we need
to cleanup the meaning and use of "userGesture" and "lockHistory." This includes integrating them
in to FrameLoadRequest and being very clear of what their meaning actually is at different stages of
the Frame load process.

  • dom/Document.cpp: (WebCore::Document::processHttpEquiv): Pass only the delay for the redirect
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
  • loader/FrameLoader.cpp: (WebCore::ScheduledRedirection::ScheduledRedirection): Figure "lockHistory" and "userGesture" from the delay here, instead of at 3 other different sites that call this method (WebCore::FrameLoader::changeLocation): Set userGesture correctly (WebCore::FrameLoader::urlSelected): Propagate userGesture down (WebCore::FrameLoader::requestFrame): (WebCore::FrameLoader::receivedFirstData): (WebCore::FrameLoader::scheduleRedirection): Pass only the delay here (WebCore::FrameLoader::redirectionTimerFired): Set userGesture correctly (WebCore::FrameLoader::load): (WebCore::FrameLoader::updateHistoryForInternalLoad): Insteading of asserting we aren't a redirect, handle the case where we *are* a redirect by updating the previous history item
  • loader/FrameLoader.h:
4:31 PM Changeset in webkit [20812] by andersca
  • 2 edits in trunk/WebKit

Reviewed by Darin.

<rdar://problem/5026893>
REGRESSION: "Mail Contents of this Page" for standalone image in Safari results in a broken image in Mail


  • WebView/WebFrame.mm: (-[WebFrame DOMDocument]): We can't check for _isHTMLDocument here since image and plugin documents inherit from HTMLDocument. Instead, check for those two document types explicitly.
3:52 PM Changeset in webkit [20811] by andersca
  • 3 edits in trunk/WebKit

Reviewed by Geoff, Ada and John.

<rdar://problem/4600978> Would like a way to test whether a WebView is displaying a standalone image

  • WebView/WebFrame.mm: (-[WebFrame _isDisplayingStandaloneImage]):
  • WebView/WebFramePrivate.h: Add _isDisplayingStandaloneImage SPI.
3:30 PM Changeset in webkit [23249] by thatcher
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20810.

<rdar://problem/5121757> WebInspector focuses elements on mouse up instead of mouse down

Make selecting a tree node happen on mousedown to match the NSOutlineView behavior.
Also makes selecting rows in the style pane happen on mousedown for consistency.

3:14 PM Changeset in webkit [20810] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

Make selecting a tree node happen on mousedown to match the NSOutlineView behavior. Also makes selecting rows in the style pane happen on mousedown for consistency.

3:11 PM Changeset in webkit [20809] by andersca
  • 1 edit in trunk/LayoutTests/ChangeLog

Add bug number to ChangeLog.

1:07 PM Changeset in webkit [20808] by justing
  • 31 edits in trunk/LayoutTests

Reviewed by ggaren


These were never checked in:

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum: Added.
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png: Added.


New results were never checked in after some selection
gap filling fixes:

  • editing/style/remove-underline-across-paragraph-expected.checksum:
  • editing/style/remove-underline-across-paragraph-expected.png:
  • editing/style/remove-underline-across-paragraph-in-bold-expected.checksum:
  • editing/style/remove-underline-across-paragraph-in-bold-expected.png:
  • editing/style/style-3690704-fix-expected.checksum:
  • editing/style/style-3690704-fix-expected.png:
  • editing/style/table-selection-expected.checksum:
  • editing/style/table-selection-expected.png:
  • editing/undo/4063751-expected.checksum:
  • editing/undo/4063751-expected.png:
  • editing/style/apple-style-editable-mix-expected.checksum:
  • editing/style/apple-style-editable-mix-expected.png:
  • editing/inserting/paragraph-separator-in-table-1-expected.checksum:
  • editing/inserting/paragraph-separator-in-table-1-expected.png:
  • editing/inserting/paragraph-separator-in-table-2-expected.checksum:
  • editing/inserting/paragraph-separator-in-table-2-expected.png:


Checking in incorrect results and adding a FIXME that references the
bug that this test demonstrates:

  • editing/style/smoosh-styles-003-expected.checksum:
  • editing/style/smoosh-styles-003-expected.png:
  • editing/style/smoosh-styles-003-expected.txt:
  • editing/style/smoosh-styles-003.html:


Misspelling marker correctly removed:

  • editing/deleting/delete-to-select-table-expected.checksum:
  • editing/deleting/delete-to-select-table-expected.png:


Horizontal rules and parts of table borders were made very slightly
darker, and these results were never updated:

  • editing/inserting/4278698-expected.checksum:
  • editing/inserting/4278698-expected.png:
  • editing/unsupported-content/table-type-after-expected.checksum:
  • editing/unsupported-content/table-type-after-expected.png:
  • editing/unsupported-content/table-type-before-expected.checksum:
  • editing/unsupported-content/table-type-before-expected.png:
  • editing/deleting/table-cells-expected.checksum:
  • editing/deleting/table-cells-expected.png:
12:51 PM Changeset in webkit [20807] by andersca
  • 2 edits in trunk/LayoutTests

Reviewed by Mitz.

  • plugins/resources/open-and-close-window-with-plugin.html: Try to fix the ASSERT on the build bot by scheduling a timeout that schedules a timeout.
11:48 AM Changeset in webkit [20806] by spadma
  • 5 edits in S60/trunk/WebKit

raalexan, reviewed by <spadma>

DESC: removed the webkit warnings
http://bugs.webkit.org/show_bug.cgi?id=13143

  • BrowserView/src/PluginContentPlayer.cpp:
  • BrowserView/src/WebKitLoader.cpp:
  • BrowserView/src/WebKitView.cpp:
  • ResourceLoader/CacheSrc/HttpCacheManager.cpp:
11:40 AM Changeset in webkit [23248] by aroben
  • 3 edits in branches/WindowsMerge/WebKitWin

Fixed copyrights.

  • WebInspector/WebInspector.cpp:
  • WebInspector/WebInspector.h:
11:19 AM Changeset in webkit [20805] by andersca
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.


<rdar://problem/5120801>
http://bugs.webkit.org/show_bug.cgi?id=13247
Closing a page during slow cloning causes crash in setJSStatusBarText (13247)


  • fast/dom/Window/setting-properties-on-closed-window-expected.txt: Added.
  • fast/dom/Window/setting-properties-on-closed-window.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/5120801>
http://bugs.webkit.org/show_bug.cgi?id=13247
Closing a page during slow cloning causes crash in setJSStatusBarText (13247)

  • bindings/js/kjs_window.cpp: (KJS::Window::put): Return early if m_frame is null. A closed window only has one property, "closed" so no properties should be settable in that case.
11:13 AM Changeset in webkit [23247] by aroben
  • 3 edits in branches/WindowsMerge/WebKitWin

Reviewed by Oliver.

Fix two Web Inspector bugs:

  • The WebView wasn't focused when the inspector first appeared.
  • Resizing the upper pane did not resize the whole window.
  • WebInspector/WebInspector.cpp: (WebInspector::show): Focus the WebView. (WebInspector::setFrame): Implemented. (WebInspector::webViewFrame): Implemented.
  • WebInspector/WebInspector.h:
10:48 AM Changeset in webkit [20804] by spadma
  • 4 edits in S60/trunk/WebKit

borges, reviewed by <sachin>

DESC: Part of S60 task 15095: Removed exporting of header files RecentUrlStore.h. Moved all keys from BrowserUiInternalCRKeys.h to BrowserUiSDKCRKeys.h
http://bugs.webkit.org/show_bug.cgi?id=13310

  • BrowserView/src/WebKitControl.cpp:
  • Plugin/src/PluginSkin.cpp:
  • ResourceLoader/src/HttpLoaderAcceptHeader.cpp:
10:27 AM Changeset in webkit [23246] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin
  • WebInspector/WebInspector.cpp: (WebInspector::WebInspector): Removed two fixed FIXMEs and some commented-out code.
10:19 AM Changeset in webkit [23245] by aroben
  • 2 edits in branches/WindowsMerge/WebCore

Build fix.

  • platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::writeImage):
7:33 AM Changeset in webkit [20803] by yongjzha
  • 2 edits in S60/branches/3.1m/WebCore

2007-04-05 winship <steven.winship@nokia.com>

Reviewed by Yongjun <yongjun.zhang@nokia.com>
DESC: ASAA-6Y2BLC - Crash when opening NT dialog twice

fix: set pointer to null so static data is re-initialized

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

WARNING: NO TEST CASES ADDED OR CHANGED

  • kwq/KWQTextCodec.cpp: (QTextCodec::PrepareForExit):
4:48 AM Changeset in webkit [20802] by andrew
  • 8 edits
    4 adds in trunk

2007-04-09 Andrew Wellington <proton@wiretapped.net>

Reviewed by Justin Garcia.


Layout test for http://bugs.webkit.org/show_bug.cgi?id=12959
"REGRESSION: Edit -> Copy not enabled on standalone images"

  • editing/pasteboard/copy-standalone-image-expected.checksum: Added.
  • editing/pasteboard/copy-standalone-image-expected.png: Added.
  • editing/pasteboard/copy-standalone-image-expected.txt: Added.
  • editing/pasteboard/copy-standalone-image.html: Added.

2007-04-09 Andrew Wellington <proton@wiretapped.net>

Reviewed by Justin Garcia.


Fix for http://bugs.webkit.org/show_bug.cgi?id=12959
"REGRESSION: Edit -> Copy not enabled on standalone images"

  • dom/Document.h: Add support for determining if a document is an image (WebCore::Document::isImageDocument):
  • editing/Editor.cpp: (WebCore::Editor::canCopy): Image documents are copyable (WebCore::Editor::copy): If copying an image document, call appropriate pasteboard methods
  • loader/ImageDocument.h: (WebCore::ImageDocument::isImageDocument): Override to return true for image documents
  • platform/Pasteboard.h: Add new writeImage function to pasteboard
  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeImage): Add writeImage implementation that takes Node and URL
  • platform/qt/PasteboardQt.cpp: (WebCore::Pasteboard::writeImage): Stub for Qt implementation of pasteboard

Apr 8, 2007:

11:32 PM Changeset in webkit [23244] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

When does "merge" != "merge"? When you make the change yourself
pre-emptively and make a typo.

11:32 PM Changeset in webkit [20801] by oliver
  • 2 edits in trunk/WebCore

2007-04-08 Oliver Hunt <oliver@apple.com>

rs=Adam.

Add ASSERT(selectedRange) to previous change

  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection):
11:25 PM Changeset in webkit [23243] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20800.

11:18 PM Changeset in webkit [20800] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

Use keyIdentifier instead of keyCode.

11:14 PM Changeset in webkit [20799] by oliver
  • 2 edits in trunk/WebCore

2007-04-08 Oliver Hunt <oliver@apple.com>

rs=Adam.

Fix minor error when writing selection to pasteboard.
This shouldn't have an effect as selectedRange should be the
selected range from source frame, however this is safer.

  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection):
11:11 PM Changeset in webkit [20798] by hyatt
  • 3 edits in trunk/WebCore

Fix mouseover/out failing layout tests.

Reviewed by aroben

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent): (WebCore::EventHandler::updateMouseEventTargetNode): (WebCore::EventHandler::dispatchMouseEvent):
  • page/EventHandler.h:
10:50 PM Changeset in webkit [23242] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20797.

10:49 PM Changeset in webkit [23241] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20796.

10:46 PM Changeset in webkit [23240] by aroben
  • 3 edits in branches/WindowsMerge/WebKitWin

Reviewed by Anders.

<rdar://problem/5119804> Web Inspector isn't resizable
<rdar://problem/5119805> Can't move Web Inspector

  • WebInspector/WebInspector.cpp: (WebInspectorPrivate::WebInspectorPrivate): (WebInspector::WebInspector): Subclass the WebView so we can intercept its messages. (WebInspector::onDestroy): Undo the subclassing. (WebInspector::handleMessageSentToWebView): Added. (WebInspector::onLButtonDown): Added. (WebInspector::onLButtonUp): Added. (WebInspector::onMouseMove): Added. (WebInspectorWndProc): Added cases for mouse messages. (SubclassedWebViewWndProc): Added.
  • WebInspector/WebInspector.h:
10:04 PM Changeset in webkit [20797] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

Search comment nodes also.

9:51 PM Changeset in webkit [20796] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

A better Xpath query for the simple search case.

9:30 PM Changeset in webkit [20795] by oliver
  • 2 edits in trunk/WebCore

2007-04-08 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix for <rdar://problem/5113621> REGRESSION: Dragging PDF as image does not give any feedback

If we fail when attempting to create a drag image for a dragged
image, we fall back to the appropriate icon.

  • page/DragController.cpp: (WebCore::DragController::doImageDrag):
8:55 PM Changeset in webkit [23239] by aroben
  • 4 edits
    3 adds
    2 deletes in branches/WindowsMerge/WebKitWin

Merge in r20793.

8:42 PM Changeset in webkit [23238] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20792.

8:41 PM Changeset in webkit [23237] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20791.

8:38 PM Changeset in webkit [23236] by aroben
  • 2 edits in branches/WindowsMerge/WebCore

Reviewed by Oliver.

Stubbed out Frame::dashboardRegionsChanged now that it's not
Mac-specific.

  • bridge/win/FrameWin.cpp: (WebCore::Frame::dashboardRegionsChanged):
8:32 PM Changeset in webkit [20794] by aroben
  • 18 edits
    1 delete in trunk/WebCore

Reviewed by Oliver.

Bestowed the gift of -webkit-dashboard-region upon all platforms, since
there's nothing Mac-specific about it other than the name. This also
allowed me to get rid of FrameViewMac.mm.

Removed a lot of #if PLATFORM(MAC):

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::cleanup): (WebCore::CSSPrimitiveValue::cssText):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::getDashboardRegionValue): (WebCore::CSSPrimitiveValue::):
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseDashboardRegions):
  • css/cssparser.h:
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h:
  • page/Frame.cpp: (WebCore::Frame::paint):
  • page/Frame.h:
  • page/FrameView.cpp: (WebCore::FrameView::layout): (WebCore::FrameView::updateDashboardRegions): Moved from FrameViewMac.mm.
  • page/FrameView.h:
  • page/qt/FrameQt.cpp: (WebCore::Frame::dashboardRegionsChanged): Stubbed out.
  • platform/gdk/FrameGdk.cpp: (WebCore::Frame::dashboardRegionsChanged): Ditto.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::setHasHorizontalScrollbar): (WebCore::RenderLayer::setHasVerticalScrollbar): (WebCore::RenderLayer::updateScrollInfoAfterLayout):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle):
  • WebCore.xcodeproj/project.pbxproj: Removed FrameViewMac.mm.
  • bridge/mac/FrameViewMac.mm: Removed.
7:52 PM Changeset in webkit [20793] by thatcher
  • 3 edits
    2 moves
    1 add in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector

Rename our AppleScrollbar and AppleScrollArea classes and copy in the resize.png image.

5:51 PM Changeset in webkit [20792] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

Fixes a typo that was showing the id attribute twice in the tree.

5:50 PM Changeset in webkit [20791] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebInspector/webInspector/inspector.js

Use Xpath for the plain text search case. This is faster than walking the DOM in JavaScript.

5:48 PM Changeset in webkit [20790] by bdash
  • 2 edits in branches/WebInspectorRefresh/WebKit

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

Build fix.

  • WebInspector/WebInspector.m:
5:20 PM Changeset in webkit [23235] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Merge in r20789.

2:15 PM Changeset in webkit [20789] by thatcher
  • 3 edits in branches/WebInspectorRefresh/WebKit

Implement document searching in JavaScript.

12:08 PM WikiStart edited by kevino@theolliviers.com
Making the page more general so it can fit more info. (diff)
12:02 PM WikiStart edited by kevino@theolliviers.com
Adding page about the Bakefile build system (diff)
11:57 AM Changeset in webkit [23234] by aroben
  • 2 edits in branches/WindowsMerge/WebKitWin

Build fix.

  • WebInspector/WebInspector.cpp:
4:32 AM BuildingQtOnLinux created by sil-webkit@kryogenix.org
4:26 AM WikiStart edited by sil-webkit@kryogenix.org
(diff)
3:15 AM Changeset in webkit [20788] by bdash
  • 2 edits in trunk/WebCore

2007-04-08 Mark Rowe <mrowe@apple.com>

Qt build fix.

  • platform/qt/TemporaryLinkStubs.cpp:
2:45 AM Changeset in webkit [20787] by mjs
  • 3 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.

  • shrink RegexpObjectImp by 4 bytes


Somewhat inexplicably, this seems to be a .33% speedup on JS iBench.


  • kjs/regexp_object.cpp: (KJS::RegExpObjectImpPrivate::RegExpObjectImpPrivate): (RegExpObjectImp::RegExpObjectImp): (RegExpObjectImp::performMatch): (RegExpObjectImp::arrayOfMatches): (RegExpObjectImp::getBackref): (RegExpObjectImp::getLastMatch): (RegExpObjectImp::getLastParen): (RegExpObjectImp::getLeftContext): (RegExpObjectImp::getRightContext): (RegExpObjectImp::getValueProperty): (RegExpObjectImp::putValueProperty):
  • kjs/regexp_object.h:
2:33 AM Changeset in webkit [20786] by mjs
  • 3 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • shrink ArrayInstance objects by 4 bytes


I did this by storing the capacity before the beginning of the storage array. It turns out
it is rarely needed and is by definition 0 when the storage array is null.

  • kjs/array_instance.h: (KJS::ArrayInstance::capacity):
  • kjs/array_object.cpp: (allocateStorage): (reallocateStorage): (ArrayInstance::ArrayInstance): (ArrayInstance::~ArrayInstance): (ArrayInstance::resizeStorage):
2:22 AM Changeset in webkit [20785] by mjs
  • 3 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.

  • fix build issue with last change


  • kjs/function.h:
  • kjs/function.cpp: (KJS::ActivationImp::createArgumentsObject):
1:51 AM Changeset in webkit [23233] by aroben
  • 12 edits
    1 move
    2 adds in branches/WindowsMerge/WebKitWin

Reviewed by Oliver.

<rdar://problem/4769828> Web Inspector

  • WebInspector/WebInspector.cpp: Renamed from WebInspector.m. Ported Mac code. Some parts are left commented out to aid later implementation.
  • WebInspector/WebInspector.h: Ditto.
1:48 AM Changeset in webkit [20784] by mjs
  • 6 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • discard the arguments List for an ActivationImp when the corresponding Context is destroyed (1.7% speedup)

Based an idea by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>. His patch to do
this also had many other List changes and I found this much simpler subset of the changes
was actually a hair faster.


This optimization is valid because the arguments list is only kept around to
lazily make the arguments object. If it's not made by the time the function
exits, it never will be, since any function that captures the continuation will
have its own local arguments variable in scope.


Besides the 1.7% speed improvement, it shrinks List by 4 bytes
(which in turn shrinks ActivationImp by 4 bytes).


  • kjs/Context.cpp: (KJS::Context::~Context): Clear the activation's arguments list.
  • kjs/function.cpp: (KJS::ActivationImp::ActivationImp): Adjusted for list changes. (KJS::ActivationImp::mark): No need to mark, lists are always protected (this doesn't cause a ref-cycle for reasons stated above). (KJS::ActivationImp::createArgumentsObject): Clear arguments list.
  • kjs/function.h:
  • kjs/list.cpp: (KJS::List::List): No more needsMarking boolean (KJS::List::operator=): ditto
  • kjs/list.h: (KJS::List::List): ditto (KJS::List::reset): ditto (KJS::List::deref): ditto

Apr 7, 2007:

11:35 PM Changeset in webkit [23232] by aroben
  • 1 edit
    28 adds in branches/WindowsMerge/WebKitWin

Forked most of the WebInspector directory from
r20780 of branches/WebInspectorRefresh/WebKit/WebInspector.

1:25 PM Changeset in webkit [20783] by kevino
  • 1 copy in branches/wx-port-alpha/trunk

Initial copy for wx experimental branch.

1:23 PM Changeset in webkit [20782] by kevino
  • 1 add in branches/wx-port-alpha

Creating wx experimental branch.

12:32 PM Changeset in webkit [20781] by ggaren
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Beth Dakin.


Layout tests for one more case of <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive

  • fast/dom/null-document-xmlhttprequest-open-expected.txt: Added.
  • fast/dom/null-document-xmlhttprequest-open.html: Added.

WebCore:

Reviewed by Beth Dakin.


Fixed one more case of <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive

  • bindings/js/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):

Apr 6, 2007:

10:52 PM Changeset in webkit [23231] by oliver
  • 2 edits in branches/WindowsMerge/WebCore

2007-04-06 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix for rdar://problem/5097227 Can't drag Flash-based
scrollbar on mtv.com


The problem was when creating a mouse move event for the
plugin we weren't passing on the mouse button state.


The opensource side of this patch adds logic that allows
us to distinguish between a MouseEvent with NoButton and
a MouseEvent with LeftButton, so we can then provide the
correct information to the plugin.

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::handleMouseEvent):


10:44 PM Changeset in webkit [20780] by oliver
  • 4 edits in trunk/WebCore

2007-04-06 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix MouseEvent so it's possible to distinguish between
a MouseMouseEvent with NoButton down, and a move with
LeftButton down. It would be nice if the DOM allowed
for NoButton to exist, but it doesn't so this is necessary.

  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
  • dom/MouseEvent.cpp: (WebCore::MouseEvent::MouseEvent): (WebCore::MouseEvent::initMouseEvent):
  • dom/MouseEvent.h: (WebCore::MouseEvent::noButton):
9:24 PM Changeset in webkit [20779] by bdash
  • 2 edits in trunk/WebKitTools

2007-04-07 Mark Rowe <mrowe@apple.com>

Not reviewed. Update to match some configuration changes that have been active on build.webkit.org.

  • BuildSlaveSupport/build.webkit.org-config/webkit/status.py:
8:31 PM Changeset in webkit [20778] by kjk
  • 2 edits in trunk/WebCore

Not reviewed - gdk build fix.

  • platform/gdk/MouseEventGdk.cpp:
8:08 PM Changeset in webkit [20777] by kjk
  • 2 edits in trunk/WebCore

Reviewed by darin.

Coverity fix. Coverity says:
"Event var_deref_op: Variable "info_ptr" tracked as NULL was dereferenced."

  • platform/image-decoders/png/pngrutil.c: (png_handle_gAMA):
8:05 PM Changeset in webkit [20776] by kjk
  • 2 edits in trunk/WebCore

Index: WebCore/ChangeLog
===================================================================
--- WebCore/ChangeLog (revision 20709)
+++ WebCore/ChangeLog (working copy)
@@ -1,3 +1,13 @@
+2007-04-04 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
+
+ Reviewed by darin.
+
+ Coverity fix. Coverity says:
+ "Event var_deref_model: Variable "(this)->clientptr" tracked as NULL was passed to a function that dereferences it."
+
+ * platform/image-decoders/gif/GIFImageReader.cpp:
+ (GIFImageReader::read):
+

2007-04-04 Adele Peterson <adele@apple.com>


Reviewed by Oliver.

Index: WebCore/platform/image-decoders/gif/GIFImageReader.cpp
===================================================================
--- WebCore/platform/image-decoders/gif/GIFImageReader.cpp (revision 20709)
+++ WebCore/platform/image-decoders/gif/GIFImageReader.cpp (working copy)
@@ -760,7 +760,8 @@ bool GIFImageReader::read(const unsigned

if (query == GIFImageDecoder::GIFSizeQuery
haltAtFrame == images_decoded) {

The decoder needs to stop. Hand back the number of bytes we consumed from
buffer minus 9 (the amount we consumed to read the header).

  • clientptr->decodingHalted(len + 9);

+ if (clientptr)
+ clientptr->decodingHalted(len + 9);

GETN(9, gif_image_header);
return true;

}

8:02 PM Changeset in webkit [20775] by kjk
  • 2 edits in trunk/JavaScriptCore

Index: JavaScriptCore/ChangeLog
===================================================================
--- JavaScriptCore/ChangeLog (revision 20709)
+++ JavaScriptCore/ChangeLog (working copy)
@@ -1,3 +1,14 @@
+2007-04-04 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
+
+ Reviewed by darin.
+
+ Coverity fix. Coverity says:
+ "Event var_deref_model: Variable "sourceRanges" tracked as NULL was passed to a
+ function that dereferences it"
+
+ * kjs/string_object.cpp:
+ (KJS::replace):
+

2007-04-03 Kevin McCullough <kmccullough@apple.com>


Reviewed by Adam.

Index: JavaScriptCore/kjs/string_object.cpp
===================================================================
--- JavaScriptCore/kjs/string_object.cpp (revision 20709)
+++ JavaScriptCore/kjs/string_object.cpp (working copy)
@@ -387,7 +387,9 @@ static JSValue *replace(ExecState *exec,

if (lastIndex < source.size())

pushSourceRange(sourceRanges, sourceRangeCount, sourceRangeCapacity, UString::Range(lastIndex, source.size() - lastIndex));


  • UString result = source.spliceSubstringsWithSeparators(sourceRanges, sourceRangeCount, replacements, replacementCount);

+ UString result;
+ if (sourceRanges)
+ result = source.spliceSubstringsWithSeparators(sourceRanges, sourceRangeCount, replacements, replacementCount);

delete [] sourceRanges;
delete [] replacements;

6:53 PM Changeset in webkit [20774] by bdash
  • 1 edit in tags/Safari-5522.5.1/WebCore/Configurations/Version.xcconfig

Versioning.

6:51 PM Changeset in webkit [20773] by bdash
  • 2 edits in tags/Safari-5522.5.1/WebCore

Merge in r20764.

6:36 PM Changeset in webkit [20772] by bdash
  • 1 copy in tags/Safari-5522.5.1/WebCore

New tag (part 2).

6:35 PM Changeset in webkit [20771] by bdash
  • 1 add in tags/Safari-5522.5.1

New tag (part 1).

6:24 PM Changeset in webkit [20770] by bdash
  • 1 delete in tags/Safari-5522.6.1

Remove tag.

6:09 PM Changeset in webkit [20769] by bdash
  • 1 copy in tags/Safari-5522.6.1/WebCore

New tag (part 2).

6:07 PM Changeset in webkit [20768] by bdash
  • 1 add in tags/Safari-5522.6.1

New tag (part 1).

5:56 PM Changeset in webkit [20767] by hyatt
  • 2 edits in trunk/WebCore

Fix more of the layout test failures caused by fixing the slider layout test failure (sigh). clear()
needs to null out the capturingMouseEventsNode in the case where a mousedown or move while captured
causes a navigation to another page.

  • page/EventHandler.cpp: (WebCore::EventHandler::clear): (WebCore::EventHandler::handleMouseReleaseEvent):
5:15 PM Changeset in webkit [20766] by hyatt
  • 2 edits in trunk/WebCore

Fix failing slider layout test. Don't clear the subframe capture unless we really were capturing on a
subframe.

Reviewed by adele, darin

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseReleaseEvent):
4:59 PM Changeset in webkit [20765] by thatcher
  • 1 edit in trunk/WebKit/Plugins/WebBaseNetscapePluginView.mm

Build fix attempt.

4:56 PM Changeset in webkit [20764] by bdakin
  • 2 edits in trunk/WebCore

Reviewed by Geoff and Darin.

Fix for <rdar://problem/4875433> WebView underlines are too thick
when scaled small

When we have a small scale factor, we should follow the line-
drawing code as if we were printing. Meaning, specifically, that we
should not round to device pixels and we should antialias.

  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawLineForText):
4:12 PM Changeset in webkit [20763] by ggaren
  • 3 edits
    10 adds in trunk

LayoutTests:

Reviewed by Beth Dakin.


Layout tests for <rdar://problem/5112273> REGRESSION(TOT): Reproducible
crash loading an old version of amazon.com as a web archive

  • fast/dom/null-document-location-assign-crash-expected.txt: Added.
  • fast/dom/null-document-location-assign-crash.html: Added.
  • fast/dom/null-document-location-href-put-crash-expected.txt: Added.
  • fast/dom/null-document-location-href-put-crash.html: Added.
  • fast/dom/null-document-location-put-crash-expected.txt: Added.
  • fast/dom/null-document-location-put-crash.html: Added.
  • fast/dom/null-document-location-replace-crash-expected.txt: Added.
  • fast/dom/null-document-location-replace-crash.html: Added.
  • fast/dom/null-document-window-open-crash-expected.txt: Added.
  • fast/dom/null-document-window-open-crash.html: Added.

WebCore:

Reviewed by Beth Dakin.


Fixed <rdar://problem/5112273> REGRESSION(TOT): Reproducible crash loading
an old version of amazon.com as a web archive


The problem was JavaScript executing inside a frame with a NULL document.
It's probably a bug that the document was NULL, but we don't want a minor
bug to be a crasher, and we don't want the DOM to depend on the implementation
details of the JS bindings, so I added NULL checks.

  • bindings/js/kjs_window.cpp: Call FrameLoader::completeURL instead of Document::completeURL, since FrameLoader::completeURL is safe against a NULL document. (KJS::Window::put): (KJS::WindowFunc::callAsFunction): (KJS::Location::put): (KJS::LocationFunc::callAsFunction):
3:11 PM Changeset in webkit [20762] by aroben
  • 5 edits in trunk/LayoutTests

Reviewed by Adele.

These two editing tests were using the wrong case for
dumpEditingCallbacks, which meant that they were falling into DRT's
invokeUndefinedMethodFromWebScript instead of actually turning on the
callback dumping.


This patch fixes the case of the call and updates the results.

  • editing/execCommand/4641880-1-expected.txt:
  • editing/execCommand/4641880-1.html:
  • editing/execCommand/4641880-2-expected.txt:
  • editing/execCommand/4641880-2.html:
2:52 PM Changeset in webkit [23230] by hyatt
  • 11 edits in branches/WindowsMerge

Fix for bug 13274

2:37 PM Changeset in webkit [20761] by hyatt
  • 6 edits in trunk/WebCore

Fix for bug 13274. Rework mouse events so that subframe capturing works again. Make sure
everything just comes down through the top FrameView even when capturing is in effect. Update
scrollbar handling logic so that scrollbars receive events correctly while capturing is in
effect. Eliminate the notion of widget capture. Fix mouse moves so that they only fire
on the innermost hit frame.

Reviewed by olliej

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseDraggedEvent): (WebCore::subframeForTargetNode): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::handleMouseMoveEvent): (WebCore::EventHandler::handleMouseReleaseEvent):
  • page/EventHandler.h:
  • platform/PopupMenu.h: (WebCore::PopupMenu::scrollbarCapturingMouse): (WebCore::PopupMenu::setScrollbarCapturingMouse):
  • platform/ScrollBar.h: (WebCore::Scrollbar::handleMouseReleaseEvent):
  • platform/Widget.h: (WebCore::Widget::geometryChanged):
1:34 PM Changeset in webkit [23229] by bdash
  • 3 edits in branches/WindowsMerge/WebCore

2007-04-07 Mark Rowe <mrowe@apple.com>

Internal build fox after opensource r20753.

  • platform/win/PlatformMouseEventWin.cpp:
  • platform/win/TemporaryLinkStubs.cpp:
11:59 AM Changeset in webkit [20760] by justing
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by john


<rdar://problem/5115601>
REGRESSION: Crash deleting a selection that starts in an editable table cell

  • editing/deleting/5115601-expected.checksum: Added.
  • editing/deleting/5115601-expected.png: Added.
  • editing/deleting/5115601-expected.txt: Added.
  • editing/deleting/5115601.html: Added.

WebCore:

Reviewed by john

<rdar://problem/5115601>
REGRESSION: Crash deleting a selection that starts in an editable table cell


The selection starts at the start of an editable
root that's embedded in a non-editable ToDo (table).
Removing the selection removes all editable
VisiblePositions from the root. Then, the creation
of mergeDestination fails, and using it causes a crash.

  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::mergeParagraphs): Nil-check mergeDestination to avoid crashing and also insert a break in that case at m_upstreamStart, so that we can create a valid mergeDestination and perform the merge.
11:36 AM Changeset in webkit [20759] by ggaren
  • 2 edits in trunk/JavaScriptCore

Rubber stamped by Adele Peterson.

  • kjs/ExecState.h: Removed obsolete forward/friend declaration of RuntimeMethodImp.
10:47 AM Changeset in webkit [20758] by kmccullo
  • 2 edits in trunk/LayoutTests

Reviewed by.

  • Fixing a test failure.
  • http/tests/misc/iframe-invalid-source-crash-expected.txt:
9:55 AM Changeset in webkit [20757] by bdash
  • 7 edits in trunk

Versioning and ChangeLog markers.

9:31 AM Changeset in webkit [20756] by thatcher
  • 1 edit in branches/WebInspectorRefresh/WebKit/WebKit.xcodeproj/project.pbxproj

Remove WebInspectorOutlineView from the project.

9:29 AM Changeset in webkit [20755] by thatcher
  • 3 edits in trunk/WebKit

Reviewed by Mark Rowe.

Adds a build phase script that ensures WebKit's version dosen't end in a 4.
If our version ends in 4, some sites might think we are Netscape 4 in their
user agent checks.

  • Configurations/Version.xcconfig:
  • WebKit.xcodeproj/project.pbxproj:
8:03 AM Changeset in webkit [20754] by bdash
  • 3 edits in tags/Safari-5522.6

Versioning.

7:58 AM Changeset in webkit [20753] by bdash
  • 7 edits in trunk/WebCore

2007-04-06 Mitz Pettel <mitz@webkit.org>

Reviewed by Oliver.

Eliminate PlatformMouseEvent::currentEvent.

No test possible (no change to functionality).

  • page/EventHandler.cpp: (WebCore::EventHandler::handleDrag):
  • platform/PlatformMouseEvent.h:
  • platform/gdk/TemporaryLinkStubs.cpp:
  • platform/mac/PlatformMouseEventMac.mm: (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  • platform/qt/PlatformMouseEventQt.cpp:
  • platform/win/TemporaryLinkStubs.cpp:
7:56 AM Changeset in webkit [20752] by bdash
  • 1 edit in trunk/WebKit/ChangeLog

Fix typo in ChangeLog.

7:47 AM Changeset in webkit [20751] by bdash
  • 1 copy in tags/Safari-5522.6

New tag.

6:21 AM Changeset in webkit [20750] by yongjzha
  • 2 edits in S60/trunk/WebCore

2007-04-05 yongjzha <yongjun.zhang@nokia.com>

Reviewed by zbujtas@gmail.com
DESC: fix wrong meta tag detection.
http://bugs.webkit.org/show_bug.cgi?id=13290

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/misc/decoder.cpp: (Decoder::decode):
6:17 AM Changeset in webkit [20749] by yongjzha
  • 2 edits in S60/branches/3.1m/WebCore

2007-04-05 yongjzha <yongjun.zhang@nokia.com>

Reviewed by zbujtas@gmail.com
DESC: fix wrong meta tag detection.
http://bugs.webkit.org/show_bug.cgi?id=13290

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/misc/decoder.cpp: (Decoder::decode):
3:26 AM Changeset in webkit [20748] by mjs
  • 4 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • shrink PropertyMap by 8 bytes and therefore shrink CELL_SIZE to 40 (for 32-bit; similar shrinkage for 64-bit)

Inspired by similar changes by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>
done in the kjs-tweaks branch of KDE's kjs. However, this version is somewhat
cleaner style-wise and avoids some of the negative speed impact (at least on gcc/x86)
of his version.


This is nearly a wash performance-wise, maybe a slight slowdown, but worth doing
to eventually reach cell size 32.


  • kjs/collector.cpp: (KJS::):
  • kjs/property_map.cpp: (KJS::PropertyMap::~PropertyMap): (KJS::PropertyMap::clear): (KJS::PropertyMap::get): (KJS::PropertyMap::getLocation): (KJS::PropertyMap::put): (KJS::PropertyMap::insert): (KJS::PropertyMap::expand): (KJS::PropertyMap::rehash): (KJS::PropertyMap::remove): (KJS::PropertyMap::mark): (KJS::PropertyMap::containsGettersOrSetters): (KJS::PropertyMap::getEnumerablePropertyNames): (KJS::PropertyMap::getSparseArrayPropertyNames): (KJS::PropertyMap::save): (KJS::PropertyMap::checkConsistency):
  • kjs/property_map.h: (KJS::PropertyMap::hasGetterSetterProperties): (KJS::PropertyMap::setHasGetterSetterProperties): (KJS::PropertyMap::): (KJS::PropertyMap::PropertyMap):
1:26 AM Changeset in webkit [20747] by mjs
  • 2 edits in branches/js-collector-tweaks/JavaScriptCore

Not reviewed, experimental change.


  • change blocks to 64k in size, and use various platform-specific calls to allocate at 64k-aligned addresses
  • kjs/collector.cpp: (KJS::allocateBlock): (KJS::freeBlock): (KJS::Collector::allocate): (KJS::Collector::collect):
Note: See TracTimeline for information about the timeline view.