Timeline



Aug 17, 2006:

4:05 PM Changeset in webkit [15930] by harrison
  • 6 edits in trunk/WebCore

Reviewed by John Sullivan.

<rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons

Accessorized RenderMenuList objects.


  • bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject mouseButtonListener]): Trivial formatting.


(-[WebCoreAXObject actionElement]):
Return the HTMLSelectElement.


(-[WebCoreAXObject firstChild]):
(-[WebCoreAXObject lastChild]):
(-[WebCoreAXObject previousSibling]):
(-[WebCoreAXObject nextSibling]):
(-[WebCoreAXObject parentObject]):
(-[WebCoreAXObject parentObjectUnignored]):
(-[WebCoreAXObject isAttachment]):
(-[WebCoreAXObject attachmentView]):
Trivial formatting.

(-[WebCoreAXObject role]):
Return NSAccessibilityPopUpButtonRole.

(-[WebCoreAXObject subrole]):
Trivial formatting.


(-[WebCoreAXObject roleDescription]):
Return NSAccessibilityPopUpButtonRole.


(-[WebCoreAXObject textUnderElement]):
Trivial formatting.

(-[WebCoreAXObject value]):
Return the RenderMenuList::text().


(-[WebCoreAXObject position]):

Trivial formatting.

(-[WebCoreAXObject accessibilityIsIgnored]):

  • Ignore popup menu items because AppKit does.
  • Remove redundant check for buttonTag (earlier isControl() check suffices).


(-[WebCoreAXObject accessibilityAttributeNames]):
(-[WebCoreAXObject accessibilityActionNames]):
(-[WebCoreAXObject accessibilityAttributeValue:]):
Trivial formatting.


(-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
Removed old debugging code that is no longer needed.
Trivial formatting.


(-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
(-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
(-[WebCoreAXObject removeAXObjectID]):
Trivial formatting.


  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::accessKeyAction): Call click() instead of focus().


  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::text): Added for easy access to popup's current text.


  • rendering/RenderMenuList.h: (WebCore::RenderMenuList::isMenuList):
  • rendering/RenderObject.h: (WebCore::RenderObject::isMenuList): Added so popups can be identified.
3:23 PM Changeset in webkit [15929] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Kevin Decker.

<rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported in 64-bit

  • WebKit.LP64.exp:
2:13 PM Changeset in webkit [22109] by andersca
  • 5 edits
    8 adds in branches/WindowsMerge

WebCoreWin:

2006-08-17 Anders Carlsson <andersca@apple.com>

Reviewed by Maciej.

Add initial implementation of plugin database.


  • WebCore.vcproj/WebCore.vcproj: Add new files.


  • platform/win/TemporaryLinkStubs.cpp: Get rid of the PlugInInfoStore stubs.
  • plugins/win/PlugInInfoStoreWin.cpp: Added. (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex): (WebCore::PlugInInfoStore::pluginCount): (WebCore::PlugInInfoStore::supportsMIMEType): (WebCore::refreshPlugins):
  • plugins/win/PluginDatabaseWin.cpp: Added. (WebCore::PluginDatabaseWin::installedPlugins): (WebCore::PluginDatabaseWin::refresh): (WebCore::PluginDatabaseWin::plugins): (WebCore::PluginDatabaseWin::getPluginsInPaths): (WebCore::PluginDatabaseWin::defaultPluginPaths): (WebCore::PluginDatabaseWin::isMIMETypeRegistered): (WebCore::PluginDatabaseWin::pluginForMIMEType): (WebCore::PluginDatabaseWin::pluginForExtension):
  • plugins/win/PluginDatabaseWin.h: Added. (WebCore::PluginDatabaseWin::setPluginPaths):
  • plugins/win/PluginPackageWin.cpp: Added. (WebCore::PluginPackageWin::~PluginPackageWin): (WebCore::getVersionInfo): (WebCore::splitString): (WebCore::PluginPackageWin::PluginPackageWin): (WebCore::PluginPackageWin::fetchInfo): (WebCore::PluginPackageWin::load): (WebCore::PluginPackageWin::unload): (WebCore::PluginPackageWin::unloadWithoutShutdown): (WebCore::PluginPackageWin::createPackage): (WebCore::PluginPackageWin::hash): (WebCore::PluginPackageWin::equal):
  • plugins/win/PluginPackageWin.h: Added. (WebCore::PluginPackageWin::name): (WebCore::PluginPackageWin::description): (WebCore::PluginPackageWin::fileName): (WebCore::PluginPackageWin::mimeToDescriptions): (WebCore::PluginPackageWin::mimeToExtensions): (WebCore::PluginPackageWin::pluginFuncs): (WebCore::PluginPackageWinHash::hash): (WebCore::PluginPackageWinHash::equal): (WTF::):
  • plugins/win/npfunctions.h: Added.

WebKitWin:

2006-08-17 Anders Carlsson <andersca@apple.com>

Reviewed by Maciej.

  • WebKit.vcproj/WebKit.vcproj: Add version.lib
1:37 PM Changeset in webkit [15928] by andersca
  • 2 edits in trunk/JavaScriptCore

2006-08-17 Anders Carlsson <acarlsson@apple.com>

Reviewed by Maciej.

  • bindings/npapi.h: Fix ifdef.
1:06 PM Changeset in webkit [15927] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

<rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range

Test cases added: None. Manual AX testing is way too awkward, and automated testing
is not possible. See following bug...

<rdar://problem/4256882> Need automated testing support for accessibility APIs

  • bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::visiblePositionForTextMarker): Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
12:58 PM Changeset in webkit [15926] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Kevin Decker.

<rdar://problem/4633896> -[WebView close] should clear all delegates and call setHostWindow:nil
<rdar://problem/4649759> Crash when selecting View Source menu using Chinese (-[WebView _close])

Check to make sure _private is not null. A WebView can be dealloced before _private is setup.
Set the _private->closed flag at the beginning of _close to prevent reentry.
Set the host window and all the delegates to nil in _close.

  • WebView/WebView.m: (-[WebView _close]):
7:55 AM Changeset in webkit [15925] by spadma
  • 3 edits in S60/trunk/WebKit

2006-08-16 ligman <joseph.ligman@nokia.com>

Reviewed by Sachin
http://bugzilla.opendarwin.org/show_bug.cgi?id=10325
There is no data supplier provided for external links in LoadPage, so the data is not
loaded. Also, client "leaves" are not handled from ResolveLinkL in the BufferTransaction's
DoSubmit.function. Cleaned up the indentation

  • BrowserView/src/WebKitLoader.cpp: (CWebKitOOMStopper::Priority): (CWebKitLoader::ConstructL): (CWebKitLoader::NewL): (CWebKitLoader::~CWebKitLoader): (CWebKitLoader::LoadPageL): (CWebKitLoader::LoadFavicon):
  • ResourceLoader/src/BufferTransaction.cpp: (CBufferTransaction::CancelTransactionCB): (CBufferTransaction::~CBufferTransaction): (CBufferTransaction::DoSubmitL): (CBufferTransaction::HandleResolveComplete): (CBufferTransaction::HandleNextDataChunk): (CBufferTransaction::HandleNextDataChunkL): (CBufferTransaction::HandleClientDataChunkL):

Aug 16, 2006:

11:37 PM Changeset in webkit [22108] by aroben
  • 1 edit
    1 delete in branches/WindowsMerge/WebCore

Removing this unintentionally added file.

11:33 PM Changeset in webkit [22107] by aroben
  • 2 edits
    3 adds in branches/WindowsMerge/WebCore

Reviewed by Steve.

Branching files from OpenSource tree r15924 to prepare for <select>
element implementation.

  • WebCore.vcproj/WebCore.vcproj:
  • rendering/RenderPopupMenuWin.h: Added. (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
  • rendering/RenderThemeWin.cpp: Added. (WebCore::theme): (WebCore::m_textFieldTheme): (WebCore::RenderThemeWin::~RenderThemeWin): (WebCore::RenderThemeWin::close): (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor): (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeWin::addIntrinsicMargins): (WebCore::RenderThemeWin::supportsFocus): (WebCore::RenderThemeWin::determineState): (WebCore::RenderThemeWin::getThemeData): (WebCore::RenderThemeWin::adjustButtonStyle): (WebCore::prepareForDrawing): (WebCore::doneDrawing): (WebCore::RenderThemeWin::paintButton): (WebCore::RenderThemeWin::setCheckboxSize): (WebCore::RenderThemeWin::setRadioSize): (WebCore::RenderThemeWin::adjustTextFieldStyle): (WebCore::RenderThemeWin::paintTextField): (WebCore::RenderThemeWin::adjustTextAreaStyle): (WebCore::RenderThemeWin::paintTextArea): (WebCore::RenderThemeWin::createPopupMenu):
  • rendering/RenderThemeWin.h: Added. (WebCore::ThemeData::m_state): (WebCore::RenderThemeWin::supportsHover): (WebCore::RenderThemeWin::paintCheckbox): (WebCore::RenderThemeWin::paintRadio):
3:59 PM Changeset in webkit [15924] by justing
  • 3 edits
    1 add
    1 delete in trunk/LayoutTests

Reviewed by thatcher

Equivalent render tree:

  • fast/events/ondragenter-expected.checksum:
  • fast/events/ondragenter-expected.txt:


Patch exposed a bug (10449):

  • fast/lists/drag-into-marker.html: Removed.
  • fast/lists/drag-into-marker.html-disabled: Added.
3:34 PM Changeset in webkit [15923] by rwlbuis
  • 3 edits in trunk/WebCore

Reviewed by Anders. Landed by rwlbuis.

Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10447
AffineTransform should be multi-platform compatible

3:07 PM Changeset in webkit [15922] by hyatt
  • 2 edits in trunk/WebCore

Fix an issue with CSS2 system fonts where they did not respect text
zoom. This was most visible with the new control fonts used for form
controls (they stopped swapping between small/mini/regular as you zoomed).

Reviewed by beth

  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
2:58 PM Changeset in webkit [15921] by thatcher
  • 1 copy in tags/WebKit-418.9/WebKit

Tag for WebKit 418.9 (part 2 of 2.)

2:58 PM Changeset in webkit [15920] by thatcher
  • 1 add in tags/WebKit-418.9

Tag for WebKit 418.9 (part 1 of 2.)

2:57 PM Changeset in webkit [15919] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebKit

Versioning

2:17 PM Changeset in webkit [15918] by justing
  • 114 edits
    8 adds in trunk

LayoutTests:

Reviewed by thatcher


Added:

  • editing/pasteboard/interchange-newline-4-expected.checksum: Added.
  • editing/pasteboard/interchange-newline-4-expected.png: Added.
  • editing/pasteboard/interchange-newline-4-expected.txt: Added.
  • editing/pasteboard/interchange-newline-4.html: Added.
  • editing/deleting/paragraph-in-preserveNewline-expected.checksum: Added.
  • editing/deleting/paragraph-in-preserveNewline-expected.png: Added.
  • editing/deleting/paragraph-in-preserveNewline-expected.txt: Added.
  • editing/deleting/paragraph-in-preserveNewline.html: Added.


Equivalent render trees, fixes, or bugs exposed (10427, 10428):

  • editing/execCommand/insertHTML-expected.checksum:
  • editing/execCommand/insertHTML-expected.png:
  • editing/execCommand/insertHTML-expected.txt:
  • editing/execCommand/insertHTML.html:
  • editing/execCommand/insertHorizontalRule-expected.checksum:
  • editing/execCommand/insertHorizontalRule-expected.png:
  • editing/execCommand/insertHorizontalRule-expected.txt:
  • editing/inserting/insert-3786362-fix-expected.checksum:
  • editing/inserting/insert-3786362-fix-expected.png:
  • editing/inserting/insert-3786362-fix-expected.txt:
  • editing/inserting/insert-3786362-fix.html:
  • editing/inserting/insert-3907422-fix-expected.txt:
  • editing/pasteboard/3976872-expected.checksum:
  • editing/pasteboard/3976872-expected.png:
  • editing/pasteboard/3976872-expected.txt:
  • editing/pasteboard/4076267-3-expected.checksum:
  • editing/pasteboard/4076267-3-expected.png:
  • editing/pasteboard/4076267-3-expected.txt:
  • editing/pasteboard/4076267-3.html:
  • editing/pasteboard/4076267-expected.checksum:
  • editing/pasteboard/4076267-expected.png:
  • editing/pasteboard/4076267-expected.txt:
  • editing/pasteboard/4076267.html:
  • editing/pasteboard/4242293-1-expected.txt:
  • editing/pasteboard/4242293-expected.checksum:
  • editing/pasteboard/4242293-expected.png:
  • editing/pasteboard/4242293-expected.txt:
  • editing/pasteboard/4631972-expected.txt:
  • editing/pasteboard/8145-1-expected.txt:
  • editing/pasteboard/8145-3-expected.txt:
  • editing/pasteboard/block-wrappers-necessary-expected.txt:
  • editing/pasteboard/copy-paste-bidi-expected.txt:
  • editing/pasteboard/display-block-on-spans-expected.checksum:
  • editing/pasteboard/display-block-on-spans-expected.png:
  • editing/pasteboard/display-block-on-spans-expected.txt:
  • editing/pasteboard/interchange-newline-1-expected.txt:
  • editing/pasteboard/merge-end-1-expected.checksum:
  • editing/pasteboard/merge-end-1-expected.png:
  • editing/pasteboard/merge-end-1-expected.txt:
  • editing/pasteboard/merge-end-1.html:
  • editing/pasteboard/merge-end-2-expected.checksum:
  • editing/pasteboard/merge-end-2-expected.png:
  • editing/pasteboard/merge-end-2-expected.txt:
  • editing/pasteboard/merge-end-2.html:
  • editing/pasteboard/merge-end-4-expected.txt:
  • editing/pasteboard/merge-end-list-expected.txt:
  • editing/pasteboard/merge-end-table-expected.checksum:
  • editing/pasteboard/merge-end-table-expected.png:
  • editing/pasteboard/merge-end-table-expected.txt:
  • editing/pasteboard/nested-blocks-with-text-area-expected.txt:
  • editing/pasteboard/nested-blocks-with-text-field-expected.txt:
  • editing/pasteboard/paste-4039777-fix-expected.checksum:
  • editing/pasteboard/paste-4039777-fix-expected.png:
  • editing/pasteboard/paste-4039777-fix-expected.txt:
  • editing/pasteboard/paste-line-endings-002-expected.txt:
  • editing/pasteboard/paste-line-endings-004-expected.txt:
  • editing/pasteboard/paste-line-endings-007-expected.txt:
  • editing/pasteboard/paste-line-endings-008-expected.txt:
  • editing/pasteboard/paste-line-endings-009-expected.txt:
  • editing/pasteboard/paste-match-style-002-expected.txt:
  • editing/pasteboard/paste-pre-001-expected.txt:
  • editing/pasteboard/paste-pre-002-expected.txt:
  • editing/pasteboard/paste-table-001-expected.checksum:
  • editing/pasteboard/paste-table-001-expected.png:
  • editing/pasteboard/paste-table-001-expected.txt:
  • editing/pasteboard/paste-table-003-expected.txt:
  • editing/pasteboard/paste-text-001-expected.txt:
  • editing/pasteboard/paste-text-003-expected.txt:
  • editing/pasteboard/paste-text-007-expected.checksum:
  • editing/pasteboard/paste-text-007-expected.png:
  • editing/pasteboard/paste-text-007-expected.txt:
  • editing/pasteboard/paste-text-008-expected.txt:
  • editing/pasteboard/paste-text-009-expected.txt:
  • editing/pasteboard/paste-text-010-expected.txt:
  • editing/pasteboard/paste-text-011-expected.txt:
  • editing/pasteboard/paste-text-012-expected.checksum:
  • editing/pasteboard/paste-text-012-expected.png:
  • editing/pasteboard/paste-text-012-expected.txt:
  • editing/pasteboard/paste-text-012.html:
  • editing/pasteboard/paste-text-013-expected.checksum:
  • editing/pasteboard/paste-text-013-expected.png:
  • editing/pasteboard/paste-text-013-expected.txt:
  • editing/pasteboard/paste-text-015-expected.txt:
  • editing/pasteboard/paste-text-017-expected.txt:
  • editing/pasteboard/paste-text-019-expected.checksum:
  • editing/pasteboard/paste-text-019-expected.png:
  • editing/pasteboard/paste-text-019-expected.txt:
  • editing/pasteboard/paste-text-019.html:
  • 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/pasteboard/pasting-object-expected.txt:
  • editing/pasteboard/prevent-block-nesting-01-expected.txt:
  • editing/pasteboard/quirks-mode-br-1-expected.txt:
  • editing/pasteboard/smart-paste-001-expected.txt:
  • editing/pasteboard/smart-paste-002-expected.txt:
  • editing/pasteboard/smart-paste-003-expected.txt:
  • editing/pasteboard/smart-paste-004-expected.txt:
  • editing/pasteboard/smart-paste-005-expected.txt:
  • editing/pasteboard/smart-paste-006-expected.txt:
  • editing/pasteboard/smart-paste-007-expected.txt:
  • editing/pasteboard/smart-paste-008-expected.txt:
  • editing/pasteboard/undoable-fragment-removes-expected.checksum:
  • editing/pasteboard/undoable-fragment-removes-expected.png:
  • editing/pasteboard/undoable-fragment-removes-expected.txt:
  • editing/pasteboard/undoable-fragment-removes.html:
  • editing/style/smoosh-styles-001-expected.txt:
  • editing/style/smoosh-styles-002-expected.txt:

WebCore:

Reviewed by thatcher


First part of fix for:
<rdar://problem/4384589>
Mail hung on paste text


Fixes:
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8592>
Extra line left after deleting whitespace:pre text
<rdar://problem/4128080> Paste as HTML does not yield equivalent style
<rdar://problem/4046469> Box styles on first element aren't copied/pasted
Copy/paste of arstechnica.com


Here's how we avoid adding redundant style information on paste: insert
the fragment and do a test rendering, save away style information for
every node in the fragment, remove all style information from the fragment,
remove the fragment, insert it into the appropriate place in the document,
then restore only those styles gathered during the test insertion that aren't
redundant. Restoring the styles in this way results in an ApplyStyleCommand
and a layout for nearly every inserted node.
Instead we want to insert the fragment into the document without removing the
style information, then mark style nodes and inline style declarations for
removal if they are redundant, and sweep to remove them. This means that we
can't rely on ReplacementFragment::wasBlock anymore, because blocks will now
have style spans around them. This patch removes the use of wasBlock in
ReplaceSelectionCommand.


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphs): Added code to remove the line placeholder left after a move from preserveNewline text.
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply): Don't add a placeholder if we're deleting a paragraph in preserveNewline text.
  • editing/JSEditor.cpp: Pass true to prevent nesting.
  • editing/ReplaceSelectionCommand.cpp: Removed wasBlock and friends. (WebCore::ReplacementFragment::ReplacementFragment): Ditto. (WebCore::ReplacementFragment::saveRenderingInfo): Ditto. (WebCore::RenderingInfo::RenderingInfo): Ditto. (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): (WebCore::ReplaceSelectionCommand::shouldMergeStart): Combined the to/from merging rules into one method. (WebCore::ReplaceSelectionCommand::shouldMergeEnd): (WebCore::ReplaceSelectionCommand::shouldMerge): (WebCore::ReplaceSelectionCommand::doApply): Don't do nesting prevention when pasting into an empty paragraph, this fixes 4046469, the common cause of paste fidelity bugs, but needs to be tweaked a little because this can lead to margin/border build-up on repeated copy/pastes. Don't track startPos in addition to insertionPos. It was never used. Fixed a bug where a fragment starting with an interchange newline would cause content to be put outside of an editable region when pasting at the very end of it. Adjust insertionPos before insertion (not during) and do not consult wasBlock to decide whether or not to do so. Changed the way we do the start merge: insert the fragment, then stich paragraphs together, in the same way that we do the end merge. This doesn't require wasBlock and fixes bugs. Replaced some uses of insertionPos with endOfInsertedContent. Fixed a bug in the expansion of the last incoming br (a "collapsed" br is one where !isStartOfParagraph([br,0])). Removed the special case code that did the end merge for the preserveNewline case, since this patch fixes the moveParagraph bug in the preserveNewline case. Removed some unused variables. (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): An endBR that was holding a line open should always be displaced by inserted content, unless the inserted content ends with a br. (WebCore::ReplaceSelectionCommand::updateNodesInserted):
  • editing/ReplaceSelectionCommand.h: (WebCore::RenderingInfo::style):
  • editing/markup.cpp: (WebCore::createMarkup): Only add mail blockquotes and list/table/pre when annotate is true (when we're creating markup for the pasteboard).
12:31 PM Changeset in webkit [15917] by brmorris
  • 1 copy in S60/branches/s60-RnD-06wk31

Branching for release S60 RnD release 2006 w33

12:08 PM Changeset in webkit [15916] by brmorris
  • 2 edits in S60/trunk

2006-08-14 brmorris <bradley.morrison@nokia.com>

Reviewed by Sachin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10330


  • build.bat: Remove support for SDK MR until binary

compatability in S60Internals reached.

12:06 PM Changeset in webkit [15915] by brmorris
  • 2 edits in S60/trunk

2006-08-15 brmorris <bradley.morrison@nokia.com>

Reviewed by Zalan.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10421

  • runATF.bat: prettify layout test results.
11:56 AM Changeset in webkit [15914] by hyatt
  • 2 edits in trunk/WebCore

Fix Win32 build bustage.

11:31 AM Changeset in webkit [15913] by spadma
  • 2 edits in S60/trunk/WebKit

2006-08-16 sareen <shyam.sareen@nokia.com>

Reviewed by Sachin
http://bugzilla.opendarwin.org/show_bug.cgi?id=10433

  • BrowserCore/Formcontrols/src/FControlInputWidget.cpp: (CControlInputWidget::ConstructSecretEditorL):
11:31 AM Changeset in webkit [15912] by sullivan
  • 2 edits in trunk/WebCore

Reviewed by Brady Eidson


  • fixed <rdar://problem/4637156> underlines appearing in white selection text
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintDecorations): bail out if phase is PaintPhaseSelection and forceWhiteText is true
11:08 AM Changeset in webkit [15911] by spadma
  • 2 edits in S60/trunk/WebKit

2006-08-16 spaltis <Stanislav.Paltis@nokia.com>

Reviewed by Sachin
http://bugzilla.opendarwin.org/show_bug.cgi?id=10434
Req. Dedicated folder for downloaded content

  • ResourceLoader/src/HttpDownloadObserver.cpp: (CHttpDownloadObserver::InitDownloadMgrL): (CHttpDownloadObserver::HandleDMgrCompletedEventL):
11:03 AM Changeset in webkit [15910] by beidson
  • 2 edits in trunk/WebCore

Reviewed by John

Updated the DB version number and added a helpful comment explaining its meaning

  • loader/icon/IconDatabase.cpp:
10:43 AM Changeset in webkit [15909] by spadma
  • 3 edits in S60/trunk/WebKit

2006-08-16 ligman <joseph.ligman@nokia.com>

Reviewed by Sachin.
http://bugzilla.opendarwin.org/show_bug.cgi?id=10432
Rearrange the initialization list, and remove unnecessary #includes
so PC-Lint will compile without errors.

  • BrowserView/inc/SmartLinkMap.h:
  • BrowserView/src/SmartLinkHandler.cpp: (CSmartLinkHandler::CSmartLinkHandler):
1:16 AM Changeset in webkit [15908] by beidson
  • 3 edits in trunk/WebKit

Reviewed by Maciej

  • Misc/WebIconDatabase.m: Pruned unused method
  • Misc/WebIconDatabasePrivate.h: Ditto
1:16 AM Changeset in webkit [15907] by beidson
  • 5 edits in trunk/WebCore

Reviewed by Maciej

Major refactoring of new iconDB:
-Instead of private browsing being handled by in-memory tables, it's now handled

by a separate in-memory database with the same table names. This allows us to
re-use the same SQL on either the main or private-browsing database

-So it follows, I broke out much of the SQL queries into seperate methods suffixed with

"Query" that take a database as the method's argument so the same language can run on
both private and main tables

-Now that we have two DBs, moved the retain/release count to the m_mainDB
-While I was at it, updated the schema to combine the Icon and IconResource table - cuts

down on some high-usage, low value queries which were too expensive

-Ditched the _url -> url convention for escaping urls for SQL. Now its url and escapedURL
-Pruned tons of unused methods from previous revisions

  • bridge/mac/WebCoreIconDatabaseBridge.h: Removed isIconExpiredForPageURL as it was never used
    • bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
    • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::IconDatabase): Updated initializer list (WebCore::IconDatabase::open): Sets up both databases (WebCore::IconDatabase::close): Closes both databases (WebCore::IconDatabase::isEmpty): Queries both databases for at least 1 record (WebCore::IconDatabase::isValidDatabase): Reflect the updated schema (WebCore::IconDatabase::clearDatabaseTables): Ditto - and takes DB as a parameter (WebCore::IconDatabase::createDatabaseTables): Ditto (WebCore::IconDatabase::imageDataForIconURL): style cleanup, and using a query-function (WebCore::IconDatabase::setPrivateBrowsingEnabled): Resets private DB instead of private tables (WebCore::IconDatabase::isIconExpiredForIconURL): Uses a query-function on each DB (WebCore::IconDatabase::iconURLForPageURL): Uses a query-function on each DB (WebCore::IconDatabase::retainIconForPageURL): Retain count DB changes (WebCore::IconDatabase::releaseIconForPageURL): Ditto (WebCore::IconDatabase::isIconURLRetained): Determine if it's time to prune a released icon yet (WebCore::IconDatabase::forgetIconForIconURLFromDatabase): Alot simpler (WebCore::IconDatabase::setIconDataForIconURL): Style cleanup (WebCore::IconDatabase::setHaveNoIconForIconURL): Ditto (WebCore::IconDatabase::setIconURLForPageURL): Ditto - and using a query-function (WebCore::IconDatabase::establishIconIDForIconURL): Style cleanup (WebCore::IconDatabase::pruneUnreferencedIcons): DB name change (WebCore::IconDatabase::pruneUnretainedIcons): Ditto (WebCore::IconDatabase::hasIconForIconURL): Simpler, using a query-function (WebCore::IconDatabase::~IconDatabase): (WebCore::pageURLTableIsEmptyQuery): Self-explanatory SQL query (WebCore::imageDataForIconURLQuery): Self-explanatory SQL query (WebCore::timeStampForIconURLQuery): Self-explanatory SQL query (WebCore::iconURLForPageURLQuery): Self-explanatory SQL query (WebCore::forgetPageURLQuery): Self-explanatory SQL query (WebCore::setIconIDForPageURLQuery): Self-explanatory SQL query (WebCore::getIconIDForIconURLQuery): Self-explanatory SQL query (WebCore::addIconForIconURLQuery): Self-explanatory SQL query (WebCore::hasIconForIconURLQuery): Self-explanatory SQL query
  • loader/icon/IconDatabase.h: Some new/changed methods, pruned methods, and new comments

(WebCore::IconDatabase::isOpen): Changed our meaning of "isOpen" to reflect the 2 databases

Aug 15, 2006:

10:19 PM Changeset in webkit [15906] by sfalken
  • 3 edits in trunk/JavaScriptCore

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Reviewed by mjs.


Build fix.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • wtf/Assertions.h:
9:22 PM Changeset in webkit [15905] by darin
  • 9 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

  • fast/events/objc-keyboard-event-creation-expected.txt: Added.
  • fast/events/objc-keyboard-event-creation.html: Added.

WebCore:

Reviewed by Darin.

  • bindings/objc/DOMEvents.mm: (-[DOMKeyboardEvent initKeyboardEvent::::::::::]):
  • bindings/objc/DOMEventsNonstandard.mm: (-[DOMWheelEvent initWheelEvent:::::::::::]):
  • bindings/objc/DOMPrivate.h:
  • added an initializer for the WheelEvent
  • dom/WheelEvent.cpp: (WebCore::WheelEvent::initWheelEvent):
  • dom/WheelEvent.h:

WebKitTools:

Reviewed by Darin.

  • DumpRenderTree/EventSendingController.m: (+[EventSendingController isSelectorExcludedFromWebScript:]): (+[EventSendingController webScriptNameForSelector:]): (-[EventSendingController fireKeyboardEventsToElement:]):
9:18 PM Changeset in webkit [22106] by sfalken
  • 2 edits
    1 add in branches/WindowsMerge/WebCore

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Pull TemporaryLinkStubs.cpp into internal tree to fix the build.

9:11 PM Changeset in webkit [22105] by sfalken
  • 2 edits in branches/WindowsMerge/WebCore

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Fix the build with TOT.

  • WebCore.vcproj/WebCore.vcproj:
8:53 PM Changeset in webkit [15904] by darin
  • 4 edits in trunk/WebKitTools

Reviewed and tweaked by Darin.

  • DumpRenderTree/DumpRenderTree.m: (+[LayoutTestController isSelectorExcludedFromWebScript:]): Add setAcceptsEditing: to the list of methods. (+[LayoutTestController webScriptNameForSelector:]): Use the name setAcceptsEditing, without the colon, for the JavaScript name. (-[LayoutTestController setAcceptsEditing:]): Added. Calls through to the editing delegate. (dumpRenderTree): Set the acceptsEditing flag to YES before each test.
  • DumpRenderTree/EditingDelegate.h: Added an "acceptsEditing" flag and getter and setter methods to the class.
  • DumpRenderTree/EditingDelegate.m: (-[EditingDelegate init]): Initialize acceptsEditing to YES. (-[EditingDelegate webView:shouldBeginEditingInDOMRange:]): Instead of always returning YES, return the value of acceptsEditing. (-[EditingDelegate webView:shouldEndEditingInDOMRange:]): Ditto. (-[EditingDelegate webView:shouldInsertNode:replacingDOMRange:givenAction:]): Ditto. (-[EditingDelegate webView:shouldInsertText:replacingDOMRange:givenAction:]): Ditto. (-[EditingDelegate webView:shouldDeleteDOMRange:]): Ditto. (-[EditingDelegate webView:shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]): Ditto. (-[EditingDelegate webView:shouldApplyStyle:toElementsInDOMRange:]): Ditto. (-[EditingDelegate webView:shouldChangeTypingStyle:toStyle:]): Ditto. (-[EditingDelegate setAcceptsEditing:]): Added.
8:53 PM Changeset in webkit [15903] by mjs
  • 5 edits in trunk/WebKit

Reviewed by Adele (preliminary version) and later by Kevin.


  • remove most WebKit dependencies from WebMainResourceLoader.
  • Loader/WebFrameLoader.h:
  • Loader/WebFrameLoader.m: (-[WebFrameLoader cannotShowMIMETypeForURL:]): (-[WebFrameLoader interruptForPolicyChangeErrorWithRequest:]): (-[WebFrameLoader isHostedByObjectElement]): (-[WebFrameLoader isLoadingMainFrame]): (+[WebFrameLoader _canShowMIMEType:]): (+[WebFrameLoader _representationExistsForURLScheme:]): (+[WebFrameLoader _generatedMIMETypeForURLScheme:]):
  • Loader/WebMainResourceLoader.h:
  • Loader/WebMainResourceLoader.m: (-[WebMainResourceLoader interruptForPolicyChangeError]): (-[WebMainResourceLoader willSendRequest:redirectResponse:]): (isCaseInsensitiveEqual): (shouldLoadAsEmptyDocument): (-[WebMainResourceLoader continueAfterContentPolicy:response:]): (-[WebMainResourceLoader didReceiveResponse:]): (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]): (-[WebMainResourceLoader didFinishLoading]): (-[WebMainResourceLoader loadWithRequestNow:]): (-[WebMainResourceLoader loadWithRequest:]):
6:25 PM Changeset in webkit [22104] by sfalken
  • 4 edits in branches/WindowsMerge/WebCore

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Get this building.

  • WebCore.vcproj/WebCore.sln:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/build-generated-files.sh:
6:24 PM Changeset in webkit [15902] by tomernic
  • 3 edits in trunk/WebKit

Reviewed by Kevin Decker.

  • Plugins/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage _unloadWithShutdown:]): Fixed a subtle problem with the 64-bit debug build -- as written, this would LOG() on 64-bit and do nothing on 32-bit!
  • Plugins/WebPluginDatabase.m: (-[WebPluginDatabase _scanForNewPlugins]): Use +[NSMutableSet set] here.
6:23 PM Changeset in webkit [22103] by sfalken
  • 5 edits in branches/WindowsMerge/WebKitWin

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Fix this to build in my tree.

  • WebFrame.cpp: (WebFrame::textFieldDidBeginEditing): (WebFrame::doTextFieldCommandFromEvent): (WebFrame::textWillBeDeletedInTextField):
  • WebKit.vcproj/Interfaces.vcproj:
  • WebKit.vcproj/WebKit.sln:
  • WebKit.vcproj/WebKit.vcproj:
5:37 PM Changeset in webkit [15901] by thatcher
  • 1 copy in tags/WebCore-315.14.6/WebCore

Tag for WebCore 315.14.6 (part 2 of 2.)

5:37 PM Changeset in webkit [15900] by thatcher
  • 1 add in tags/WebCore-315.14.6

Tag for WebCore 315.14.6 (part 1 of 2.)

5:37 PM Changeset in webkit [15899] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Versioning

5:24 PM Changeset in webkit [15898] by thatcher
  • 3 edits in branches/Safari-1-3-branch/WebCore

Merged fix from Safari-2-0-branch to Safari-1-3-branch

2006-08-15 Geoffrey Garen <ggaren@apple.com>

Merged fix from TOT to Safari-2-0-branch


This fixes <rdar://problem/4661982> (crash in KHTMLParser::popBlock).


  • This patch reworks a previous fix for <rdar://problem/3524912> repro crash in KHTMLParser::parseToken, due to parser's current element being destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix leaks.


The previous solutions caused a ~2% performance regression on iBench HTML,
due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
for a total win of ~3% vs current TOT.


The solution here is:
(1) Don't let the parser ref document nodes -- that causes leaks.
(2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
moving a node between stacks or to/from 'current', rather than deref'ing
and then ref'ing again, simply move the node, along with its refcount, to
its new location, and overwrite its old location.


  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLParser.cpp: (WebCore::HTMLStackElem::HTMLStackElem): (WebCore::HTMLStackElem::derefNode): (WebCore::HTMLParser::HTMLParser): (WebCore::HTMLParser::setCurrent): (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::popNestedHeaderTag): (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): (WebCore::HTMLParser::reopenResidualStyleTags): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popBlock): (WebCore::HTMLParser::popOneBlockCommon): (WebCore::HTMLParser::popOneBlock): (WebCore::HTMLParser::moveOneBlockToStack):
  • html/HTMLParser.h:
4:51 PM Changeset in webkit [15897] by thatcher
  • 8 edits in trunk

JavaScriptCore:

Reviewed by Tim H.

Build fix: DWARF and -gfull are incompatible with symbol separation.

JavaScriptGlue:

Reviewed by Tim H.

Build fix: DWARF and -gfull are incompatible with symbol separation.

  • JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

Reviewed by Tim H.

Build fix: DWARF and -gfull are incompatible with symbol separation.

  • WebCore.xcodeproj/project.pbxproj:

WebKit:

Reviewed by Darin Adler.

<http://bugzilla.opendarwin.org/show_bug.cgi?id=8980>
ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])

<rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980)


  • Plugins/WebPluginDatabase.h:
  • Plugins/WebPluginDatabase.m: (+[WebPluginDatabase installedPlugins]): Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit. (-[WebPluginDatabase plugins]): 'plugins' is now a dictionary. (-[WebPluginDatabase close]): Call new -_removePlugin: method. (-[WebPluginDatabase refresh]): Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins. (-[WebPluginDatabase _plugInPaths]): No changes; just moved in file. (-[WebPluginDatabase _addPlugin:]): New method. Refactored from -refresh. Adds a plug-in to the database. (-[WebPluginDatabase _removePlugin:]): New method. Refactored from -refresh. Remove a plug-in from the database. (-[WebPluginDatabase _scanForNewPlugins]): New method. Refactored from -refresh. Returns the list of plug-in packages on disk. (-[WebPluginDatabase _applicationWillTerminate]): New method. Called when the application terminates. Closes the plug-in database so that all plug-ins are removed from the DB (and unloaded if necessary).
  • Plugins/WebBasePluginPackage.h:
  • Plugins/WebBasePluginPackage.m: (-[WebBasePluginPackage initWithPath:]): Try to create the NSBundle first, so if the file is not a valid bundle we bail out early. This avoids some stat()s and allocations during the plug-in refresh process. (-[WebBasePluginPackage isLoaded]): Removed. (-[WebBasePluginPackage load]): Base class for plug-in packages now always loads "successfully". (-[WebBasePluginPackage dealloc]): Removed this assertion. The base plug-in package class has no concept of "unloading". (-[WebBasePluginPackage finalize]): ditto. (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]): Moved code to unload plug-in package to WebNetscapePluginPackage. Not all plug-in packages can be "unloaded".
  • Plugins/WebNetscapePluginPackage.h:
  • Plugins/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage _unloadWithShutdown:]): Combined old -unload and -unloadWithoutShutdown methods into this new one. (-[WebNetscapePluginPackage initWithPath:]): Call new unload method. (-[WebNetscapePluginPackage load]): ditto (-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]): ditto (-[WebNetscapePluginPackage open]): New method. Called when a plug-in instance starts running. (-[WebNetscapePluginPackage close]): New method. Called when a plug-in instance stops running. When all plug-in instances close the plug-in package, and the plug-in package is removed from the database, the plug-in is unloaded.
  • Plugins/WebPluginPackage.m: (-[WebPluginPackage initWithPath:]): (-[WebPluginPackage load]): Made this a bit more efficient by checking if the bundle is already loaded. (-[WebBasePluginPackage unload]): Removed. (-[WebBasePluginPackage isLoaded]): Removed.
  • Plugins/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView start]): Open the plug-in package so it remains loaded while this instance uses it. (-[WebBaseNetscapePluginView stop]): Close the plug-in package when the plug-in instance is stopped.


  • Plugins/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): This check is not necessary. Netscape plug-in packages are never unloaded until all their instances have been stopped, and a Netscape plug-in instance will stop its streams when it is stopped. (-[WebBaseNetscapePluginStream _destroyStream]): ditto (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): ditto (-[WebBaseNetscapePluginStream _deliverData]): ditto
4:38 PM Changeset in webkit [15896] by tomernic
  • 10 edits in trunk/WebKit

Reviewed by Darin Adler.

<http://bugzilla.opendarwin.org/show_bug.cgi?id=8980>
ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])

<rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980)


  • Plugins/WebPluginDatabase.h:
  • Plugins/WebPluginDatabase.m: (+[WebPluginDatabase installedPlugins]): Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit. (-[WebPluginDatabase plugins]): 'plugins' is now a dictionary. (-[WebPluginDatabase close]): Call new -_removePlugin: method. (-[WebPluginDatabase refresh]): Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins. (-[WebPluginDatabase _plugInPaths]): No changes; just moved in file. (-[WebPluginDatabase _addPlugin:]): New method. Refactored from -refresh. Adds a plug-in to the database. (-[WebPluginDatabase _removePlugin:]): New method. Refactored from -refresh. Remove a plug-in from the database. (-[WebPluginDatabase _scanForNewPlugins]): New method. Refactored from -refresh. Returns the list of plug-in packages on disk. (-[WebPluginDatabase _applicationWillTerminate]): New method. Called when the application terminates. Closes the plug-in database so that all plug-ins are removed from the DB (and unloaded if necessary).
  • Plugins/WebBasePluginPackage.h:
  • Plugins/WebBasePluginPackage.m: (-[WebBasePluginPackage initWithPath:]): Try to create the NSBundle first, so if the file is not a valid bundle we bail out early. This avoids some stat()s and allocations during the plug-in refresh process. (-[WebBasePluginPackage isLoaded]): Removed. (-[WebBasePluginPackage load]): Base class for plug-in packages now always loads "successfully". (-[WebBasePluginPackage dealloc]): Removed this assertion. The base plug-in package class has no concept of "unloading". (-[WebBasePluginPackage finalize]): ditto. (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]): Moved code to unload plug-in package to WebNetscapePluginPackage. Not all plug-in packages can be "unloaded".
  • Plugins/WebNetscapePluginPackage.h:
  • Plugins/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage _unloadWithShutdown:]): Combined old -unload and -unloadWithoutShutdown methods into this new one. (-[WebNetscapePluginPackage initWithPath:]): Call new unload method. (-[WebNetscapePluginPackage load]): ditto (-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]): ditto (-[WebNetscapePluginPackage open]): New method. Called when a plug-in instance starts running. (-[WebNetscapePluginPackage close]): New method. Called when a plug-in instance stops running. When all plug-in instances close the plug-in package, and the plug-in package is removed from the database, the plug-in is unloaded.
  • Plugins/WebPluginPackage.m: (-[WebPluginPackage initWithPath:]): (-[WebPluginPackage load]): Made this a bit more efficient by checking if the bundle is already loaded. (-[WebBasePluginPackage unload]): Removed. (-[WebBasePluginPackage isLoaded]): Removed.
  • Plugins/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView start]): Open the plug-in package so it remains loaded while this instance uses it. (-[WebBaseNetscapePluginView stop]): Close the plug-in package when the plug-in instance is stopped.


  • Plugins/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): This check is not necessary. Netscape plug-in packages are never unloaded until all their instances have been stopped, and a Netscape plug-in instance will stop its streams when it is stopped. (-[WebBaseNetscapePluginStream _destroyStream]): ditto (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): ditto (-[WebBaseNetscapePluginStream _deliverData]): ditto
4:34 PM Changeset in webkit [15895] by thatcher
  • 1 copy in tags/WebCore-418.21/WebCore

Tag for WebCore 418.21 (part 2 of 2.)

4:34 PM Changeset in webkit [15894] by thatcher
  • 1 add in tags/WebCore-418.21

Tag for WebCore 418.21 (part 1 of 2.)

4:31 PM Changeset in webkit [15893] by thatcher
  • 8 edits in trunk

JavaScriptCore:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
Bug 10394: WebKit Release and Production configurations should enable dead code stripping

JavaScriptGlue:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
Bug 10394: WebKit Release and Production configurations should enable dead code stripping

  • JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
Bug 10394: WebKit Release and Production configurations should enable dead code stripping

  • WebCore.xcodeproj/project.pbxproj:

WebKit:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
Bug 10394: WebKit Release and Production configurations should enable dead code stripping

  • WebKit.xcodeproj/project.pbxproj:
4:24 PM Changeset in webkit [15892] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Versioning

3:51 PM Changeset in webkit [15891] by ggaren
  • 3 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch


This fixes <rdar://problem/4661982> (crash in KHTMLParser::popBlock).


  • This patch reworks a previous fix for <rdar://problem/3524912> repro crash in KHTMLParser::parseToken, due to parser's current element being destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix leaks.


The previous solutions caused a ~2% performance regression on iBench HTML,
due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
for a total win of ~3% vs current TOT.


The solution here is:
(1) Don't let the parser ref document nodes -- that causes leaks.
(2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
moving a node between stacks or to/from 'current', rather than deref'ing
and then ref'ing again, simply move the node, along with its refcount, to
its new location, and overwrite its old location.


  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLParser.cpp: (WebCore::HTMLStackElem::HTMLStackElem): (WebCore::HTMLStackElem::derefNode): (WebCore::HTMLParser::HTMLParser): (WebCore::HTMLParser::setCurrent): (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::popNestedHeaderTag): (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): (WebCore::HTMLParser::reopenResidualStyleTags): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popBlock): (WebCore::HTMLParser::popOneBlockCommon): (WebCore::HTMLParser::popOneBlock): (WebCore::HTMLParser::moveOneBlockToStack):
  • html/HTMLParser.h:
3:51 PM Changeset in webkit [15890] by ggaren
  • 4 edits
    2 adds in trunk

LayoutTests:

Layout test for <rdar://problem/4661982> (crash in KHTMLParser::popBlock)

  • fast/parser/remove-node-stack-expected.txt: Added.
  • fast/parser/remove-node-stack.html: Added.

WebCore:

Reviewed by Darin.


  • This patch reworks a previous fix for <rdar://problem/3524912> repro crash in KHTMLParser::parseToken, due to parser's current element being destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix leaks.


The previous solutions caused a ~2% performance regression on iBench HTML,
due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
for a total win of ~3% vs current TOT.


We can merge this fix to the branch to fix <rdar://problem/4661982>
(crash in KHTMLParser::popBlock).


The solution here is:
(1) Don't let the parser ref document nodes -- that causes leaks.
(2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
moving a node between stacks or to/from 'current', rather than deref'ing
and then ref'ing again, simply move the node, along with its refcount, to
its new location, and overwrite its old location.


  • WebCore.xcodeproj/project.pbxproj:
  • html/HTMLParser.cpp: (WebCore::HTMLStackElem::HTMLStackElem): (WebCore::HTMLStackElem::derefNode): (WebCore::HTMLParser::HTMLParser): (WebCore::HTMLParser::setCurrent): (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::popNestedHeaderTag): (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): (WebCore::HTMLParser::reopenResidualStyleTags): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popBlock): (WebCore::HTMLParser::popOneBlockCommon): (WebCore::HTMLParser::popOneBlock): (WebCore::HTMLParser::moveOneBlockToStack):
  • html/HTMLParser.h:
3:38 PM Changeset in webkit [15889] by hyatt
  • 4 adds in trunk/LayoutTests/fast/css

Add system fonts layout test.

3:37 PM Changeset in webkit [15888] by hyatt
  • 12 edits in trunk/WebCore

Fix for bug 3303, support CSS2 system fonts. This patch adds a new API
to RenderTheme for obtaining a system font. In addition to supporting
the CSS2 values, extensions have been added for the 3 control sizes on
Mac. The UA stylesheet now uses -webkit-small-control and no longer hardcodes
Lucida Grande 11px. This means that controls in Safari should now respect
haxies that modify the default fonts on controls.

Reviewed by beth

Added fast/css/css2-system-fonts.html

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSValueKeywords.in:
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue):
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/html4.css:
  • platform/FontDescription.h: (WebCore::FontDescription::setBold):
  • platform/win/TemporaryLinkStubs.cpp: (RenderThemeWin::systemFont):
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::calcMinMaxWidth):
  • rendering/RenderTheme.h: (WebCore::RenderTheme::minimumMenuListSize):
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::systemFont): (WebCore::RenderThemeMac::minimumMenuListSize):
  • rendering/RenderThemeWin.h:
3:12 PM Changeset in webkit [15887] by spadma
  • 3 edits in S60/trunk/WebKit

2006-08-15 raalexan <rasvan.alexandrescu@nokia.com>

Reviewed by Sachin.
http://bugzilla.opendarwin.org/attachment.cgi?bugid=10417
Search rectangle size increased.

  • BrowserView/inc/WebKitCursor.h:
  • BrowserView/src/WebKitCursor.cpp: (CWebKitCursor::CalcSearchRect): (CWebKitCursor::IncreaseSearchRect):
2:40 PM Changeset in webkit [15886] by adele
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Maciej.

Test for: <rdar://problem/4680207> REGRESSION: select-all should fire onSelect event for text fields and textareas (9518)
http://bugzilla.opendarwin.org/show_bug.cgi?id=9518

  • fast/forms/onselect-selectall-expected.txt: Added.
  • fast/forms/onselect-selectall.html: Added.

WebCore:

Reviewed by Maciej.

Test: fast/forms/onselect-selectall.html

  • page/Frame.cpp: (WebCore::Frame::selectAll): Call notifyRendererOfSelectionChange with userTriggered = true so that onSelect will fire.
2:31 PM Changeset in webkit [22102] by sfalken
  • 86 adds in branches/WindowsMerge/WebKitWin

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Initial check-in.

2:29 PM Changeset in webkit [22101] by sfalken
  • 14 adds in branches/WindowsMerge/WebCore

2006-08-15 Steve Falkenburg <sfalken@apple.com>

Initial check-in.

2:28 PM Changeset in webkit [22100] by sfalken
  • 1 add in branches/WindowsMerge/LayoutTests

Initial check-in.

2:28 PM Changeset in webkit [22099] by sfalken
  • 1 add in branches/WindowsMerge

Initial check-in.

2:24 PM Changeset in webkit [15885] by yongjzha
  • 23 edits
    2 adds in S60/trunk

2006-08-15 yongjzha yongjun.zhang@nokia.com

Reviewed by Brad, Zalan and Sachin


http://bugzilla.opendarwin.org/show_bug.cgi?id=10418
Create a dedicated view to play plugin content only, this is
only enabled in US build.
Improve the communication between plugins and browser, providing
a interface for the plugins to tell browser that there are
interactable.


  • BrowserControl/inc/BrCtlDefs.h: (TBrCtlDefs::):
  • BrowserControl/src/BrCtl.cpp: (CBrCtl::HandleCommandL): (CBrCtl::CountComponentControls): (CBrCtl::ComponentControl):
  • BrowserView/inc/WebKitControl.h:
  • BrowserView/inc/WebKitFrame.h:
  • BrowserView/src/KeyEventHandler.cpp: (CKeyEventHandler::HandleActivateKeysL):
  • BrowserView/src/WebKitControl.cpp: (CWebKitControl::~CWebKitControl): (CWebKitControl::PageInfoLC): (CWebKitControl::OpenPluginPlayer): (CWebKitControl::ClosePluginPlayer): (CWebKitControl::IsPluginPlayer): (CWebKitControl::PluginPlayer):
  • BrowserView/src/WebKitFrame.cpp: (CWebKitFrame::FocusedPlugin):
  • BrowserView/src/WebKitLoader.cpp: (CWebKitLoader::LoadPageL):
  • Plugin/inc/PluginAdapterInterface.h:
  • Plugin/inc/PluginSkin.h: (CPluginSkin::Url): (CPluginSkin::CanInteract):
  • Plugin/inc/PluginWin.h: (CPluginWin::IsContentInteractive): (CPluginWin::SetContentInteractive):
  • Plugin/src/PluginSkin.cpp: (CPluginSkin::ConstructL): (CPluginSkin::Draw): (CPluginSkin::SelectViewerAndDownloadL): (CPluginSkin::IsFocusable):
  • Plugin/src/PluginWin.cpp: (CPluginWin::ConstructL): (CPluginWin::PluginDataUrl):
  • group/BrowserView.mmp:
2:00 PM Changeset in webkit [15884] by spadma
  • 2 edits in S60/trunk/WebKit

2006-08-15 sareen <shyam.sareen@nokia.com>

Reviewed by Sachin.
Change the UID3 of browserengine.dll in release 3.1 to
match with the 3.0.


  • group/webkit.mmp:
1:49 PM Changeset in webkit [15883] by andersca
  • 5 edits in trunk/WebCore

2006-08-15 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

  • platform/PlatformString.h:
  • platform/String.cpp: (WebCore::String::charactersWithNullTermination): Add new function which calls StringImpl::charactersWithNullTermination.


  • platform/StringImpl.cpp: (WebCore::StringImpl::init): (WebCore::StringImpl::append): (WebCore::StringImpl::insert): (WebCore::StringImpl::truncate): (WebCore::StringImpl::remove): Set m_hasTerminatingNullCharacter to false;


(WebCore::StringImpl::charactersWithNullTermination):
If the string already has a terminating null character, simply return it. Otherwise,
realloc to make room for one and set m_hasTerminatingNullCharacter to true;

  • platform/StringImpl.h: (WebCore::StringImpl::StringImpl): Add m_hasTerminatingNullCharacter.
1:16 PM Changeset in webkit [15882] by adele
  • 3 edits in trunk/WebCore

Reviewed by Adam.

  • rendering/RenderPopupMenuMac.mm: (WebCore::RenderPopupMenuMac::addGroupLabel): Removed code to set foreground color in NSMenu. Added a FIXME that we need to handle both foreground and background color. (9846) (WebCore::RenderPopupMenuMac::addOption): ditto.
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustMenuListStyle): For the aqua look, set the foreground color to black.
12:20 PM Changeset in webkit [15881] by mjs
  • 6 edits
    1 add in trunk/WebKit

Reviewed by Anders.


  • remove WebKit dependencies from WebPlugInStreamLoader via a protocol veil of ignorance
  • Loader/WebNetscapePlugInStreamLoader.h:
  • Loader/WebNetscapePlugInStreamLoader.m: (-[WebNetscapePlugInStreamLoader initWithDelegate:frameLoader:]):
  • Loader/WebPlugInStreamLoaderDelegate.h: Added.
  • Plugins/WebBaseNetscapePluginStream.h:
  • Plugins/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
  • WebKit.xcodeproj/project.pbxproj:
9:08 AM Changeset in webkit [15880] by thatcher
  • 8 edits in trunk

JavaScriptCore:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
Bug 10384: Switch to DWARF for Release configuration

JavaScriptGlue:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
Bug 10384: Switch to DWARF for Release configuration

  • JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
Bug 10384: Switch to DWARF for Release configuration

  • WebCore.xcodeproj/project.pbxproj:

WebKit:

Reviewed by Tim H.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
Bug 10384: Switch to DWARF for Release configuration

  • WebKit.xcodeproj/project.pbxproj:
8:26 AM Changeset in webkit [15879] by darin
  • 9 edits
    6 deletes in trunk/WebCore

Reviewed by Hyatt.
Tweaked and landed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10399
Bug 10399: RenderTextArea is unused

  • WebCore.vcproj/WebCore/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl: Removed RenderTextArea source files.
  • html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
  • html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
  • platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
  • platform/TextBox.h: Removed.
  • platform/mac/TextBoxMac.mm: Removed.
  • platform/mac/WebCoreTextArea.h: Removed.
  • platform/mac/WebCoreTextArea.mm: Removed.
  • rendering/RenderTextArea.cpp: Removed.
  • rendering/RenderTextArea.h: Removed.
8:14 AM Changeset in webkit [15878] by darin
  • 2 edits in trunk/WebKit

Reviewed by Darin.


  • WebView/WebUnarchivingState.m: (-[WebUnarchivingState archivedResourceForURL:]): Fixed to get objects from the archived resources dictionary using the URL as a string instead of as the URL itself (as this is how the data is put into the dictionary).
7:00 AM Changeset in webkit [15877] by yongjzha
  • 2 edits in S60/trunk/WebKit

2006-08-15 ligman <joseph.ligman@nokia.com>

Reviewed by Yongjun
http://bugzilla.opendarwin.org/show_bug.cgi?id=10352
Browser crashes when exit during loading of www.yahoo.com
Call cancel in active object CStaticImageDecoder's destructor.


  • BrowserCore/Renderers/src/StaticImageDecoder.cpp: (CStaticImageDecoder::~CStaticImageDecoder):
6:56 AM Changeset in webkit [15876] by yongjzha
  • 2 edits in S60/trunk/WebKit

2006-08-15 rathnasa <sornalatha.rathnasamy@nokia.com>

Reviewed by Yongjun
http://bugzilla.opendarwin.org/show_bug.cgi?id=10351

  • Plugin/src/PluginLoader.cpp: (CPluginLoader::Complete):
6:54 AM Changeset in webkit [15875] by brmorris
  • 2 edits in S60/trunk/S60Tools

2006-08-14 brmorris <bradley.morrison@nokia.com>

Reviewed by zbujtas@gmail.com.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10390


  • svn-create-patch.bat: exits if tabs
6:44 AM Changeset in webkit [15874] by yongjzha
  • 3 edits in S60/trunk/WebKit

2006-08-15 vbradley <vincent.bradley@nokia.com>

Reviewed by Yongjun.
http://bugzilla.opendarwin.org/show_bug.cgi?id=10345
Correct the event we send to plugins when the focus changes
from/to plugin and browser. Fix that a non-leaving method
has a leaving method in it, by wrapping with TRAP_IGNORE.

  • BrowserView/src/WebKitView.cpp: (CWebKitView::FocusChanged):
  • Plugin/src/PluginWin.cpp: (CPluginWin::ConstructL): (CPluginWin::~CPluginWin): (CPluginWin::SizeChanged): (CPluginWin::ProcessEventL): (CPluginWin::MakeVisible): (CPluginWin::HandleControlEventL): (CPluginWin::ViewFocusChanged): (CPluginWin::Status): (CPluginWin::HandleGainingForeground): (CPluginWin::HandleLosingForeground):
1:04 AM Changeset in webkit [15873] by beidson
  • 4 edits in trunk/WebCore

Reviewed by THE OTHER Maciej...

Two small fixes -
1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
null dereference later

  • bridge/mac/WebCoreIconDatabaseBridge.mm: (-[WebCoreIconDatabaseBridge retainIconForURL:]): Changed IconDatabase method name (-[WebCoreIconDatabaseBridge releaseIconForURL:]): ditto
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::retainIconForPageURL): Name change (WebCore::IconDatabase::releaseIconForPageURL): ditto (WebCore::IconDatabase::setIconURLForPageURL): Added the null site-icon check when changing a PageURL's iconURL
  • loader/icon/IconDatabase.h: Some renames

Aug 14, 2006:

11:40 PM Changeset in webkit [15872] by eseidel
  • 69 edits
    7 adds in trunk

2006-08-14 Eric Seidel <eric@eseidel.com>

Reviewed by mjs.

<mask>, <marker>, <pattern> inside <defs> do not work
http://bugzilla.opendarwin.org/show_bug.cgi?id=6548

  • ksvg2/svg/SVGDefsElement.cpp: (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file (WebCore::SVGDefsElement::isValid): moved to .cpp file (WebCore::SVGDefsElement::rendererIsNeeded): Added. (WebCore::SVGDefsElement::createRenderer): Added.
  • ksvg2/svg/SVGDefsElement.h:
  • ksvg2/svg/SVGGElement.cpp: (WebCore::SVGGElement::SVGGElement): adjusted spacing (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
11:37 PM Changeset in webkit [15871] by eseidel
  • 2 edits in trunk/WebKitSite

2006-08-15 Eric Seidel <eric@eseidel.com>

Reviewed by TimH.

  • projects/svg/status.xml: updated to reflect current SVG status
11:12 PM Changeset in webkit [15870] by eseidel
  • 39 edits
    3 copies in trunk

2006-08-14 Eric Seidel <eric@eseidel.com>

Reviewed by darin and mjs.


Add better SVGLoad event support.
http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
There will still need to be additional support added for <link> and <script> elements.
Not all of the error -> loaded -> error transition cases work yet.

  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchGenericEvent):
  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::dispatchLoadEvent):
  • html/HTMLImageLoader.h: (WebCore::HTMLImageLoader::haveFiredLoadEvent): (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
  • ksvg2/misc/SVGImageLoader.cpp: (WebCore::SVGImageLoader::SVGImageLoader): (WebCore::SVGImageLoader::dispatchLoadEvent):
  • ksvg2/misc/SVGImageLoader.h:
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::parseMappedAttribute):
  • ksvg2/svg/SVGAnimatedBoolean.h:
  • ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::SVGElement): (WebCore::SVGElement::parseMappedAttribute): (WebCore::SVGElement::haveLoadedRequiredResources): (WebCore::SVGElement::sendSVGLoadEventIfPossible): (WebCore::SVGElement::closeRenderer):
  • ksvg2/svg/SVGElement.h: (WebCore::SVGElement::rendererIsNeeded): (WebCore::svg_dynamic_cast):
  • ksvg2/svg/SVGExternalResourcesRequired.h:
  • ksvg2/svg/SVGImageElement.cpp: (SVGImageElement::SVGImageElement): (SVGImageElement::haveLoadedRequiredResources):
  • ksvg2/svg/SVGImageElement.h:
  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::parseMappedAttribute):
  • ksvg2/svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::SVGScriptElement): (WebCore::SVGScriptElement::parseMappedAttribute): (WebCore::SVGScriptElement::executeScript):
  • xml/xmlhttprequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
10:38 PM Changeset in webkit [15869] by mjs
  • 6 edits in trunk/WebKit

Reviewed by Beth.


  • remove many (but not all) WebKit dependencies from WebNetscapePlugInStreamLoader (it still depends on WebNetscapePluginStream).
  • Loader/WebFrameLoader.h:
  • Loader/WebFrameLoader.m: (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]):
  • Loader/WebNetscapePlugInStreamLoader.h:
  • Loader/WebNetscapePlugInStreamLoader.m: (-[WebNetscapePlugInStreamLoader initWithStream:frameLoader:]): (-[WebNetscapePlugInStreamLoader releaseResources]): (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
  • Plugins/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
10:18 PM Changeset in webkit [15868] by mjs
  • 1 edit
    1 add in trunk/LayoutTests

Missing expected results for last test.

  • http/tests/plugins/interrupted-get-url-expected.txt: Added.
8:52 PM Changeset in webkit [15867] by mjs
  • 3 edits
    5 adds in trunk

LayoutTests:

Test case not reviewed but the patch was reviewed by Tim Omernick.


  • http/tests/plugins/interrupted-get-url.html: Added.
  • http/tests/plugins/resources/interrupted-get-url-success.html: Added.
  • http/tests/plugins/resources/slow-resource.pl: Added.

WebKit:

Reviewed by Tim Omernick.


  • Loader/WebNetscapePlugInStreamLoader.m: (-[WebNetscapePlugInStreamLoader initWithStream:view:]): Set the frame loader for this stream. (-[WebNetscapePlugInStreamLoader cancelWithError:]): Make sure to destroy the stream as well; otherwise, when we try to clean up later, we won't have the right context.
5:59 PM Changeset in webkit [15866] by andersca
  • 9 edits
    4 adds in trunk/WebCore

2006-08-14 Anders Carlsson <acarlsson@apple.com>

Reviewed by Maciej.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10393
Autogenerate NodeIterator and TreeWalker.


  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj: Add new files.


  • bindings/js/JSNodeIteratorCustom.cpp: Added. (WebCore::JSNodeIterator::mark):
  • bindings/js/JSTreeWalkerCustom.cpp: Added. (WebCore::JSTreeWalker::mark):


  • bindings/js/kjs_traversal.cpp:
  • bindings/js/kjs_traversal.h: Remove implementations of DOMNodeIterator and DOMTreeWalker.
  • bindings/scripts/CodeGeneratorJS.pm: Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.


  • bindings/objc/DOM.mm: (-[DOMNodeIterator detach]):
  • dom/NodeIterator.cpp: (WebCore::NodeIterator::detach):
  • dom/NodeIterator.h: Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
  • dom/NodeIterator.idl: Added.
  • dom/TreeWalker.idl: Added.
5:03 PM Changeset in webkit [15865] by beidson
  • 4 edits in trunk/WebCore

Reviewed by John

The changes are plentiful, but small, mostly to improve performance
1) Add a bool flag to SiteIcon to stop it from querying the database over and over
2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon
4) Added isIconURLRetained() to optimize the retain count check
5) Prune old, unused code

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::imageDataForIconID): Removed unused code (WebCore::IconDatabase::imageDataForIconURL): Removed unused code (WebCore::IconDatabase::imageDataForPageURL): Removed unused code (WebCore::IconDatabase::isIconExpiredForIconURL): Removed LOG msg (WebCore::IconDatabase::isIconExpiredForPageURL): Removed LOG msg (WebCore::IconDatabase::iconURLForPageURL): Added a hashmap cache to avoid common queries (WebCore::IconDatabase::releaseIconForURL): Changed to is isRetained() instead of retainCount() (WebCore::IconDatabase::isIconURLRetained): Added - we don't care about the actual retain count for an icon so much as whether or not it is retained (WebCore::IconDatabase::setIconURLForPageURL): If the new and old iconURLs are the same, skip the SQLite code
  • loader/icon/IconDatabase.h: Added new methods/variables
  • loader/icon/SiteIcon.cpp: (SiteIcon::SiteIcon): Added a flag so it only queries the database for icon data once (SiteIcon::getImage): Ditto
4:22 PM Changeset in webkit [15864] by hyatt
  • 1 edit in trunk/WebCore/html/HTMLTokenizer.cpp

Land a wording tweak to a comment I made.

3:05 PM Changeset in webkit [15863] by yongjzha
  • 2 edits in S60/trunk/WebKit

006-08-14 ligman <joseph.ligman@nokia.com>

Reviewed by yongjzha
http://bugzilla.opendarwin.org/show_bug.cgi?id=10335
Browser crashes on exit because ~CPluginSkin trys to make use of the
iBrCtlSoftkeysObserver in it's destructor. The iBrCtlSoftkeysObserver is not
always owned by CBrCtl and therefore could be deleted prematurely. When the CPluginSkin
tried to make use of it, it was no longer valid and it was not set to NULL. To resolve this
the object destruction was rearranged in CBrCtl to delete the CWebKitControl after deleting
all of the observers and setting them to NULL.


Change the order of how ojects are destructed in ~CBrCtl
set observer pointers to NULL

  • BrowserControl/src/BrCtl.cpp: (CBrCtl::~CBrCtl): (CBrCtl::UpdateDefaultSoftkeysL):
2:43 PM Changeset in webkit [15862] by hyatt
  • 2 edits
    4 adds in trunk

Fix for bug 10385, add more support for crappy pseudo-XML-in-HTML.

Reviewed by ggaren

Added fast/parser/bad-xml-slash.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag):
1:48 PM Changeset in webkit [15861] by hyatt
  • 2 edits in trunk/WebKit

Fix for Radar bug 4478840, Safari should not reduce null events sent to
plug-ins in windows that are inactive but visible.

With this fix you can view videos in visible background windows on YouTube
(for example) and not see any drop in frame rate.

Reviewed by timo

  • Plugins/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView restartNullEvents]):
1:17 PM Changeset in webkit [15860] by thatcher
  • 7 edits in branches/Safari-1-3-branch/WebCore

Merged fix from Safari-2-0-branch to Safari-1-3-branch

2006-08-04 Beth Dakin <Beth Dakin>

Reviewed by me/Hyatt.

Mostly this is merging over Hyatt's fix with r15801. Some other
things needed to be tweaked though. This is a better fix for
<rdar://problem/4541255> Safari hangs at http://www.kutilek.de/
safari-test/ somewhere from
WebCore::RenderBlock::layoutInlineChildren(bool)

  • khtml/rendering/render_box.cpp: (RenderBox::deleteLineBoxWrapper): Call remove.
  • khtml/rendering/render_box.h:
  • khtml/rendering/render_list.cpp: (RenderListItem::updateMarkerLocation): Call remove.
  • khtml/rendering/render_list.h: (khtml::ListMarkerBox:::InlineBox):
  • khtml/rendering/render_object.cpp: Back out old fix. (RenderObject::remove):
  • khtml/rendering/render_object.h: Back out old fix.
12:23 PM Changeset in webkit [15859] by darin
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by John Sullivan.

  • fast/parser/title-error-test-expected.checksum: Added.
  • fast/parser/title-error-test-expected.png: Added.
  • fast/parser/title-error-test-expected.txt: Added.
  • fast/parser/title-error-test.html: Added.

WebCore:

Reviewed by John Sullivan.

Test: fast/parser/title-error-test.html

  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Fixed an error handling case that was skipping until a </style> tag in code that was shared between both <title> and <style>. Also rearranged the code a tiny bit.
12:16 PM Changeset in webkit [15858] by thatcher
  • 3 edits in branches/Safari-1-3-branch/WebCore

Merged fix from Safari-2-0-branch to Safari-1-3-branch

2006-07-28 Beth Dakin <Beth Dakin>

Rubber stamped by Maciej.

Fix for <rdar://problem/4541255> Safari hangs at http://
www.kutilek.de/safari-test/ somewhere from
WebCore::RenderBlock::layoutInlineChildren(bool)

This is the same fix that Maciej and I did a week ago for 4529398.
Rolling it onto the branch because it fixes this crash too!

  • WebCore.xcodeproj/project.pbxproj: Project file wars.
  • khtml/rendering/render_list.cpp: (ListMarkerBox::detach): Remove from parent when detaching. (ListMarkerBox::operator delete):
  • khtml/rendering/render_list.h:
12:14 PM Changeset in webkit [15857] by darin
  • 3 edits in trunk/WebCore

Reviewed by Hyatt.

  • platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start): Rearrange code so that "delete this" is called any time the function returns false -- ownership was inconsistent before.
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode): Call deleteLineBoxWrapper even when documentBeingDestroyed() is true, because some of what it does has to be done during destruction. A little awkward since I preserved the order of operations. Perhaps we could structure this better later.
10:13 AM Changeset in webkit [15856] by harrison
  • 2 edits in trunk/WebCore

Reviewed by John Sullivan and Geoff Garen.

<rdar://problem/3854950> AX Seed: Blackboard Learning Systems - frame names need to be put in AXDescription AXAttribute

Test cases added: None. Manual AX testing is way too awkward, and automated testing
is not possible. See following bug...

<rdar://problem/4256882> Need automated testing support for accessibility APIs

  • bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject accessibilityDescription]): For a web area, return the name of the owning frame or iframe.


(-[WebCoreAXObject accessibilityAttributeNames]):
Advertize NSAccessibilityDescriptionAttribute.


(-[WebCoreAXObject rendererForView:]):
Clean up some old naming.

9:32 AM Changeset in webkit [15855] by andersca
  • 6 edits
    6 adds
    4 deletes in trunk/WebCore

2006-08-11 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=10353
XMLSerializer and DOMParser should have real implementations


Make real implementation files for DOMParser and XMLSerializer and wrap them
using our bindings generation.


  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMParser.cpp: Removed.
  • bindings/js/JSDOMParser.h: Removed.
  • bindings/js/JSXMLSerializer.cpp: Removed.
  • bindings/js/JSXMLSerializer.h: Removed.
  • bindings/js/kjs_window.cpp: (KJS::Window::getValueProperty):
  • bindings/js/kjs_window.h: (KJS::Window::):
  • page/DOMWindow.idl:
  • xml/DOMParser.cpp: Added. (WebCore::DOMParser::parseFromString):
  • xml/DOMParser.h: Added.
  • xml/DOMParser.idl: Added.
  • xml/XMLSerializer.cpp: Added. (WebCore::XMLSerializer::serializeToString):
  • xml/XMLSerializer.h: Added.
  • xml/XMLSerializer.idl: Added.
2:01 AM Changeset in webkit [15854] by mjs
  • 7 edits in trunk

WebCore:

Reviewed by Brady.

  • removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
  • WebCore.exp: export new functions
  • platform/mac/WebCoreSystemInterface.h: Added CFReadStream related functions
  • platform/mac/WebCoreSystemInterface.mm: ditto

WebKit:

Reviewed by Brady.


  • removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
  • Loader/WebFormDataStream.m: (formCanRead): (formEventCallback): (webSetHTTPBody):
  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
12:20 AM Changeset in webkit [15853] by mjs
  • 2 edits
    2 moves in trunk/WebKit

Rubber stamped by Brady.


  • move WebFormDataStream from WebView to Loader
  • WebKit.xcodeproj/project.pbxproj:
  • WebView/WebFormDataStream.h: Removed.
  • WebView/WebFormDataStream.m: Removed.
12:09 AM Changeset in webkit [15852] by mjs
  • 4 edits in trunk/WebKit

Reviewed by Brady.


  • remove WebKit dependencies from WebSubresourceLoader, except WebFormDataStream


(WebFormDataStream will be moved into the Loader directory soon)

  • Loader/WebFrameLoader.h:
  • Loader/WebFrameLoader.m: (-[WebFrameLoader _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]):
  • Loader/WebSubresourceLoader.m: (isConditionalRequest): (hasCaseInsensitivePrefix): (isFileURLString): (setHTTPReferrer): (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):

Aug 13, 2006:

11:50 PM Changeset in webkit [15851] by beidson
  • 2 edits
    2 moves in trunk/WebKit

Reviewed by Maciej

Relocated the WebIconLoaders

  • Misc/WebIconLoader.h: Moved to Loader/
  • Misc/WebIconLoader.m: Moved to Loader/
  • WebKit.xcodeproj/project.pbxproj:
11:46 PM Changeset in webkit [15850] by beidson
  • 1 edit in trunk/WebKit/ChangeLog

Fixed my inaccurately stated Changelog

11:45 PM Changeset in webkit [15849] by mjs
  • 3 edits in trunk/WebKit

Reviewed by Beth.


  • removed non-Loader WebKit dependencies from WebDataProtocol for real (whoops) and fix some typos.
  • Loader/WebDataProtocol.m: (isCaseInsensitiveEqual): Added. (+[WebDataProtocol _webIsDataProtocolURL:]): Avoid WebKit calls. (-[WebDataProtocol startLoading]): ditto
  • Loader/WebFrameLoader.m: (isCaseInsensitiveEqual): Fixed spelling from isCaseSensitiveEqual. (-[WebFrameLoader _canUseResourceForRequest:]): Use proper call.
11:44 PM Changeset in webkit [15848] by beidson
  • 2 edits in trunk/WebKit

Reviewed by Maciej

The way of detecting a failed icon load before was to try and construct
an image from the icon and if that image construction failed, mark the icon
as missing.
A much more efficient way is to check for a 404 response. We'll still
check for invalid image data, but most servers will correctly return 404
on a missing icon.


  • Misc/WebIconLoader.m: (-[WebIconLoader didFinishLoading]): Added check for 404 response
8:22 PM Changeset in webkit [15847] by mjs
  • 9 edits
    2 moves in trunk/WebKit

Reviewed by Darin.


  • remove all non-Loader dependencies from WebLoader


As part of this I moved WebDataProtocol to the loader directory
and removed dependencies on the rest of WebKit from that too.

  • Loader/WebFrameLoader.h:
  • Loader/WebFrameLoader.m: (-[WebFrameLoader setDefersCallbacks:]): (-[WebFrameLoader stopLoading]): (-[WebFrameLoader cancelledErrorWithRequest:]): (-[WebFrameLoader clearArchivedResources]): (-[WebFrameLoader deliverArchivedResources]): (-[WebFrameLoader deliverArchivedResourcesAfterDelay]): (isCaseSensitiveEqual): (-[WebFrameLoader _canUseResourceForRequest:]): (-[WebFrameLoader _canUseResourceWithResponse:]): (-[WebFrameLoader pendingArchivedResources]): (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): (-[WebFrameLoader archiveLoadPendingForLoader:]): (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
  • Loader/WebLoader.h:
  • Loader/WebLoader.m: (-[NSURLProtocol releaseResources]): (-[NSURLProtocol loadWithRequest:]): (-[NSURLProtocol setDefersCallbacks:]): (-[NSURLProtocol addData:allAtOnce:]): (-[NSURLProtocol resourceData]): (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]): (-[NSURLProtocol connection:didReceiveData:lengthReceived:]): (-[NSURLProtocol cancelWithError:]): (-[NSURLProtocol cancelledError]):
  • Loader/WebMainResourceLoader.m: (-[WebMainResourceLoader addData:allAtOnce:]): (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
  • Loader/WebNetscapePlugInStreamLoader.m: (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:allAtOnce:]):
  • Loader/WebSubresourceLoader.m: (-[WebSubresourceLoader didReceiveData:lengthReceived:allAtOnce:]):
  • WebKit.xcodeproj/project.pbxproj:
  • WebView/WebDataProtocol.h: Removed.
  • WebView/WebDataProtocol.m: Removed.
8:06 PM Changeset in webkit [15846] by mjs
  • 22 edits
    1 copy
    2 adds in trunk

JavaScriptCore:

Reviewed (and tweaked a little) by Maciej.


  • shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting in a 1.2% speed improvement on JS iBench (and probably overall memory savings).

This was done by removing _scope and _internalValue data members
from JSObject and moving them only to the subclasses that actually
make use of them.


  • kjs/object.cpp: (KJS::JSObject::mark): No need to mark scope or internal value here.
  • kjs/object.h: (KJS::JSObject::JSObject): Don't initialize them.
  • kjs/JSWrapperObject.cpp: Added. New base class for object types that wrap primitive values (Number, String, Boolean, Date). (KJS::JSWrapperObject::mark):
  • kjs/JSWrapperObject.h: Added. (KJS::JSWrapperObject::JSWrapperObject): (KJS::JSWrapperObject::internalValue): (KJS::JSWrapperObject::setInternalValue):
  • kjs/array_object.cpp: (ArrayPrototype::ArrayPrototype): Don't set useless internal value.
  • kjs/bool_object.cpp: (BooleanInstance::BooleanInstance): Inherit from JSWrapperObject. (BooleanProtoFunc::callAsFunction): Fixed to account for fact that not all JSObjects have an internal value. (BooleanObjectImp::construct): ditto.
  • kjs/bool_object.h:
  • kjs/collector.cpp: Lowered cell size to 48. (KJS::Collector::allocate): meaningless whitespace change
  • kjs/date_object.cpp: (KJS::DateInstance::DateInstance): Inherit from JSWrapperObject. (KJS::DateProtoFunc::callAsFunction): adjusted for move of internalValue (KJS::DateObjectImp::construct): ditto
  • kjs/date_object.h:
  • kjs/error_object.cpp: (ErrorPrototype::ErrorPrototype): don't set internal value
  • kjs/function.cpp: move _scope and related handling here (KJS::FunctionImp::mark): mark scope
  • kjs/function.h: (KJS::FunctionImp::scope): moved here from JSObject (KJS::FunctionImp::setScope): ditto
  • kjs/number_object.cpp: (NumberInstance::NumberInstance): inherit from JSWrapperObject (NumberProtoFunc::callAsFunction): adjusted (NumberObjectImp::construct): adjusted
  • kjs/number_object.h: shring RegExp-related objects a little
  • kjs/regexp_object.cpp: (RegExpPrototype::RegExpPrototype): Adjust for size tweaks (RegExpObjectImp::RegExpObjectImp): ditto
  • kjs/regexp_object.h:
  • kjs/string_object.cpp: (StringInstance::StringInstance): inherit from JSWrapperObject (StringProtoFunc::callAsFunction): adjusted
  • kjs/string_object.h:
  • JavaScriptCore.exp: Exported new methods as needed.
  • JavaScriptCore.xcodeproj/project.pbxproj: Added new files to build.

WebCore:

Reviewed (and tweaked a little) by Maciej.


  • shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting in a 1.2% speed improvement on JS iBench (and probably overall memory savings).

The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.


  • bindings/js/kjs_events.cpp: (KJS::JSLazyEventListener::parseCode):
Note: See TracTimeline for information about the timeline view.