Timeline


and

07/17/07:

23:36 Changeset [24403] by bdash

Cleanliness is next to ... well, it's a Good Thing

23:33 Changeset [24402] by beidson

Blind Windows build fix from r24395

  • WebView.cpp: (WebView::initWithFrame): BSTR, not BString
23:27 Changeset [24401] by weinig

Reviewed by Hyatt.

http://bugs.webkit.org/show_bug.cgi?id=13618
Don't set link targets to "_blank" on middle-click; rely on the policy
delegate to do the right thing.

  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
23:20 Changeset [24400] by bdash

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

Update path to the Drosera Xcode project now that it has moved into a subdirectory.

  • BuildSlaveSupport/build-launcher-app:
23:01 Changeset [24399] by oliver

Reviewed by Maciej.

Fix for <rdar://problem/4799967> Safari and other WebKit
apps sometimes crash in WebCore::FontData::platformInit

Always retain/release our font handle, instead of only retaining
in the presence of GC.

  • platform/mac/FontPlatformData.h: (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::~FontPlatformData):
22:40 Changeset [24398] by weinig

LayoutTests:

Reviewed by Geoff Garen.

Test for <rdar://problem/5333957>

  • http/tests/security/cross-frame-access-protocol.html: Fix a few typos.
  • http/tests/security/cross-frame-access-selection-expected.txt: Added.
  • http/tests/security/cross-frame-access-selection.html: Added.
  • http/tests/security/resources/foreign-domain-iframe-for-selection-test.html: Added.

WebCore:

Reviewed by Geoff Garen.

Fix for <rdar://problem/5333957>

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

Original patch by Feng Qian.

  • Clear the selection object when disconnecting a frame.

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

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::disconnectFrame): (WebCore::DOMWindow::clear):
  • page/DOMWindow.h:
  • page/Frame.cpp: (WebCore::Frame::clearScriptProxy): (WebCore::Frame::clearDOMWindow):
  • page/Frame.h:
21:44 Changeset [24397] by oliver

LayoutTests:

Reviewed by Sam.

Correct layout test.

  • fast/events/keydown-keypress-preventDefault-expected.txt:
  • fast/events/keydown-keypress-preventDefault.html:

WebCore:

Reviewed by Sam.

Fix for <rdar://problem/5154518> REGRESSION: Hitting return does
nothing in ruby terminal at http://tryruby.hobix.com/

Calling event.preventDefault() during a keydown event should not
prevent the keypress event from firing.

  • WebCore.xcodeproj/project.pbxproj:
  • page/EventHandler.cpp: (WebCore::EventHandler::keyEvent): (WebCore::EventHandler::defaultKeyboardEventHandler):
20:46 Changeset [24396] by andersca

LayoutTests:

Reviewed by Geoff.

<rdar://problem/4993463>
http://bugs.webkit.org/show_bug.cgi?id=12732
REGRESSION: Comments fields on ircimages not showing up in nightly


  • fast/frames/iframe-set-inner-html-expected.txt: Added.
  • fast/frames/iframe-set-inner-html.html: Added.

WebCore:

Reviewed by Geoff.

<rdar://problem/4993463>
http://bugs.webkit.org/show_bug.cgi?id=12732
REGRESSION: Comments fields on ircimages not showing up in nightly

Postpone setting the frame name to just right before we request the frame. Otherwise,
two calls to FrameTree::uniqueChildName will return the same frame name and in that case only
one Frame object will actually be created and multiple iframe elements will refer to it.


  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::openURL): (WebCore::HTMLFrameElementBase::setNameAndOpenURL): (WebCore::HTMLFrameElementBase::setNameAndOpenURLCallback): (WebCore::HTMLFrameElementBase::insertedIntoDocument): (WebCore::HTMLFrameElementBase::attach):
  • html/HTMLFrameElementBase.h:
19:39 Changeset [24395] by beidson

WebCore: 2007-07-17 Brady Eidson <beidson@apple.com>

Reviewed by Steve

Required for <rdar://problem/4516185> - FTP Directory Listings

  • WebCore.vcproj/WebCore.vcproj: Added SharedBufferWin


  • platform/SharedBuffer.cpp: Windows doesn't get the default empty resource anymore
  • platform/win/SharedBufferWin.cpp: Added. (WebCore::SharedBuffer::createWithContentsOfFile):


WebKit/win: 2007-07-17 Brady Eidson <beidson@apple.com>

Reviewed by Steve


<rdar://problem/4516185> - FTP Directory Listings

  • Interfaces/IWebUIDelegate.idl: Add IWebUIDelegate2 method for getting the path to the template


  • WebView.cpp: (WebView::initWithFrame): Set the preference for the template path in WebCore when the first WebView is initialized


19:25 Changeset [24394] by darin

JavaScriptCore:

Reviewed by Darin, Maciej, and Adam.

Fixes <http://bugs.webkit.org/show_bug.cgi?id=9697>,

the failure of ecma/GlobalObject/15.1.2.2-2.js,
the failure of ecma/LexicalConventions/7.7.3-1.js,
and most of the failures of tests in ecma/TypeConversion/9.3.1-3.js.

Bug 9697: parseInt results may be inaccurate for numbers greater than 253

This patch also fixes similar issues in the lexer and UString::toDouble().

  • kjs/function.cpp: (KJS::parseIntOverflow): (KJS::parseInt):
  • kjs/function.h:
  • kjs/lexer.cpp: (KJS::Lexer::lex):
  • kjs/ustring.cpp: (KJS::UString::toDouble):
  • tests/mozilla/expected.html:

LayoutTests:

Reviewed by Darin.

Added tests for:
http://bugs.webkit.org/show_bug.cgi?id=9697

Bug 9697: parseInt results may be inaccurate for numbers greater than 253

  • fast/js/numeric-conversion-expected.txt: Added.
  • fast/js/numeric-conversion.html: Added.
  • fast/js/resources/numeric-conversion.js: Added.
17:28 Changeset [24393] by sfalken

New tag.

16:39 Changeset [24392] by thatcher

Reviewed by Geoff.

<rdar://problem/5336267> loadData:MIMEType:textEncodingName:baseURL: doesn't like relative URLs

Get the absoluteURL from any user supplied NSURL before we pass it down to WebCore.

  • WebView/WebFrame.mm: (-[WebFrame _loadURL:referrer:intoChild:]): (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
  • WebView/WebView.mm: (-[WebView userAgentForURL:]):
16:28 Changeset [24391] by thatcher

Remove WebKit.LP64.exp from te target membership.

15:30 Changeset [24390] by sfalken

Build fix.

15:08 Changeset [24389] by adachan

2007-07-17 Ada Chan <adachan@apple.com>

Rubbet-stamped by Adam.


Fixed build.

  • Interfaces/IWebFramePrivate.idl:
  • WebContextMenuClient.cpp: (fixMenuReceivedFromOldSafari):
  • WebFrame.cpp: (WebFrame::loadURLIntoChild): (WebFrame::download):
  • WebFrame.h:
15:03 Changeset [24388] by treat

Fix the build.

14:55 Changeset [24387] by justing

Made the recently added functions static so that they'll have internal linkage.

14:40 Changeset [24386] by sfalken

Build fix.

14:28 Changeset [24385] by zecke

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

Blind build fix for Qt after r24366 by adding the additional
WebCore::ResourceRequest& parameter to the download method.

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::download):
  • WebCoreSupport/FrameLoaderClientQt.h:
14:27 Changeset [24384] by beidson

Reviewed by Tim Hatcher

Tweak the class names we give to the icon table cell to make it easier to style

  • loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::appendEntry): The the table cell a "IconCell" class name and either a "FileType" or "DirectoryType" class name depending on the type
14:27 Changeset [24383] by ggaren

LayoutTests:

Reviewed by Kevin Decker.


Layout test that demonstrates why an old ASSERT in WebCore was wrong.

  • ChangeLog:
  • fast/history/go-back-to-changed-name-expected.txt: Added.
  • fast/history/go-back-to-changed-name.html: Added.
  • fast/history/resources/go-back-to-changed-name2.html: Added.
  • fast/history/resources/go-back-to-changed-name3.html: Added.
  • http/tests/security/cross-frame-access-data-url-expected.txt: Added.
  • http/tests/security/cross-frame-access-data-url.html: Added.

WebCore:

Reviewed by NOBODY.

Build fix after r24366 add an additional ResourceRequest parameter to
the download method.

  • loader/gdk/FrameLoaderClientGdk.cpp: (WebCore::FrameLoaderClientGdk::download):
  • loader/gdk/FrameLoaderClientGdk.h:
14:22 Changeset [24382] by zecke

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

Reviewed by NOBODY.

Build fix after r24366 add an additional ResourceRequest parameter to
the download method.

  • loader/gdk/FrameLoaderClientGdk.cpp: (WebCore::FrameLoaderClientGdk::download):
  • loader/gdk/FrameLoaderClientGdk.h:
14:17 Changeset [24381] by aroben

Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item

WebCore:

Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item
http://bugs.webkit.org/show_bug.cgi?id=14324

Reviewed by Tim.

No regression test possible.

  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::handleContextMenuEvent): Add the Inspect Element item to the menu before passing it to the ContextMenuClient so that the UI delegate has a chance to modify/remove the item.

WebKit:

Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item
http://bugs.webkit.org/show_bug.cgi?id=14324

Only clients linking against new versions of WebKit will see the item.
I've maintained our behavior for old clients of not including the
Inspect Element item in the menu items passed to the UI delegate.

Reviewed by Tim.

  • Misc/WebKitVersionChecks.h: Added a new constant.
  • WebCoreSupport/WebContextMenuClient.mm: (isPreInspectElementTagClient): Added. (fixMenusToSendToOldClients): Return an array of items that should be appended to the menu received from the delegate. (fixMenusReceivedFromOldClients): Append the saved items to the array. (WebContextMenuClient::getCustomMenuFromDefaultItems): Retain/release the saved items.

WebKit/win:

Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item
http://bugs.webkit.org/show_bug.cgi?id=14324

If we detect that we're running against the Safari 3 Beta, we add back
the Inspect Element menu item after passing it off to the delegate
because Safari's UI delegate will remove it.

Reviewed by Tim.

  • WebContextMenuClient.cpp: (isPreInspectElementTagSafari): Added. (fixMenuReceivedFromOldSafari): Added. (WebContextMenuClient::getCustomMenuFromDefaultItems): Call fixMenuReceivedFromOldSafari before returning the new menu.
14:17 Changeset [24380] by aroben

Remove ContextMenuClient::shouldIncludeInspectElementItem

WebCore:

Remove ContextMenuClient::shouldIncludeInspectElementItem

Reviewed by Tim.

No regression test possible.

  • page/ContextMenuClient.h:
  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::handleContextMenuEvent): Use Settings to determine whether to include the Inspect Element item.
  • page/gdk/ContextMenuClientGdk.cpp:
  • page/gdk/ContextMenuClientGdk.h:
  • platform/graphics/svg/SVGImageEmptyClients.h:

WebKit:

Remove WebContextMenuClient::shouldIncludeInspectElementItem

Reviewed by Tim.

  • WebCoreSupport/WebContextMenuClient.h:
  • WebCoreSupport/WebContextMenuClient.mm:

WebKit/win:

Remove WebContextMenuClient::shouldIncludeInspectElementItem

Reviewed by Tim.

  • WebContextMenuClient.cpp:
  • WebContextMenuClient.h:

WebKitQt:

Remove ContextMenuClientQt::shouldIncludeInspectElementItem

Reviewed by Tim.

  • WebCoreSupport/ContextMenuClientQt.cpp:
  • WebCoreSupport/ContextMenuClientQt.h:
14:17 Changeset [24379] by aroben

Initialize ContextMenuController::m_page

Somehow this variable had never been initialized before.

Reviewed by Tim.

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::ContextMenuController):

  • page/ContextMenuController.h:
  • page/Page.cpp:

(WebCore::Page::Page):

14:16 Changeset [24378] by aroben

Add/initialize Settings::developerExtrasEnabled

WebCore:

Add Settings::developerExtrasEnabled

Reviewed by Tim.

  • WebCore.exp:
  • page/Settings.cpp:
  • page/Settings.h:

WebKit:

Initialize Settings::developerExtrasEnabled

Reviewed by Tim.

  • WebView/WebView.mm: (-[WebView _updateWebCoreSettingsFromPreferences:]):

WebKit/win:

Initialize Settings::developerExtrasEnabled

Reviewed by Tim.

  • WebView.cpp: (WebView::updateWebCoreSettingsFromPreferences):
14:13 Changeset [24377] by ggaren

Build fix.

  • WebContextMenuClient.cpp: (WebContextMenuClient::searchWithGoogle): Pass false for lockHistory like we do elsewhere.
14:10 Changeset [24376] by ggaren

Reviewed by Antti Koivisto.


Added watchdog timer to waitUntilDone to prevent a run-away test from
hanging the test harness.

  • DumpRenderTree/DumpRenderTree.m: (dump): (-[LayoutTestController waitUntilDone]): (-[LayoutTestController waitUntilDoneWatchdogFired]):
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
14:05 Changeset [24375] by justing

LayoutTests:

Reviewed by Antti.


<rdar://problem/5206311>
Whitespace can't be removed when editing text pasted into from web page

  • editing/deleting/5206311-1-expected.checksum: Added.
  • editing/deleting/5206311-1-expected.png: Added.
  • editing/deleting/5206311-1-expected.txt: Added.
  • editing/deleting/5206311-1.html: Added.
  • editing/deleting/5206311-2-expected.checksum: Added.
  • editing/deleting/5206311-2-expected.png: Added.
  • editing/deleting/5206311-2-expected.txt: Added.
  • editing/deleting/5206311-2.html: Added.

WebCore:

Reviewed by Antti.

<rdar://problem/5206311>
Whitespace can't be removed when editing text pasted into from web page


The whitespace comes from table rows that aren't being removed after they are
emptied out during a deletion.

  • editing/DeleteSelectionCommand.cpp: (WebCore::isTableCell): (WebCore::isTableRow): (WebCore::isTableCellEmpty): (WebCore::isTableRowEmpty): (WebCore::DeleteSelectionCommand::initializePositionData): Remember the table rows that contained the start and end of the selection. (WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows): Remove table rows that come before the end of the selection that was removed (except for the row that contained the start of the selection and any before that). Remove table rows that are come after the start of the selection that was removed (except for the row that contained the end of the selection and any after that). (WebCore::DeleteSelectionCommand::doApply): Call the new function.
  • editing/DeleteSelectionCommand.h:
14:03 Changeset [24374] by kmccullo

Reviewed by Adam.

  • Implemented cross-platform code for functions calling into the JavaScript.
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::callAsFunction): (DebuggerDocument::pauseJS): (DebuggerDocument::resumeJS): (DebuggerDocument::stepIntoJS): (DebuggerDocument::stepOverJS): (DebuggerDocument::stepOutJS): (DebuggerDocument::showConsoleJS): (DebuggerDocument::closeCurrentFileJS): (DebuggerDocument::updateFileSource): (DebuggerDocument::didParseScript): (DebuggerDocument::willExecuteStatement): (DebuggerDocument::didEnterCallFrame): (DebuggerDocument::willLeaveCallFrame): (DebuggerDocument::exceptionWasRaised):
  • Drosera/DebuggerDocument.h:
  • Drosera/mac/DebuggerDocumentMac.mm: (-[DebuggerDocumentMac pause:]): (-[DebuggerDocumentMac resume:]): (-[DebuggerDocumentMac stepInto:]): (-[DebuggerDocumentMac stepOver:]): (-[DebuggerDocumentMac stepOut:]): (-[DebuggerDocumentMac showConsole:]): (-[DebuggerDocumentMac closeCurrentFile:]): (-[DebuggerDocumentMac webView:didLoadMainResourceForDataSource:]): (-[DebuggerDocumentMac webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): (-[DebuggerDocumentMac webView:didEnterCallFrame:sourceId:line:forWebFrame:]): (-[DebuggerDocumentMac webView:willExecuteStatement:sourceId:line:forWebFrame:]): (-[DebuggerDocumentMac webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): (-[DebuggerDocumentMac webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
13:57 Changeset [24373] by ggaren

Build fix.


  • plugins/win/PluginViewWin.cpp: Pass false for lockHistory like we do elsewhere.
13:51 Changeset [24372] by zecke

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

Reviewed by Maciej.

Implement the callback responsible for handling HTTP headers. This
callback gets called for every header.
We will add these headers to our ResourceResponse and on the 'end-of-header'
indicator we will update the ResourceResponse and dispatch it.

This patch adds various set methods to ResourceResponse. This improves
the readability of the headerCallback and avoids storing a CURL handle inside
the ResourceResponse which would be needed to implement ResourceResponse::doUpdateResourceResponse

Add a destructor for ResourceHandleManager which would free the resources and remove
a unused variable.

  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  • platform/network/ResourceResponse.cpp: (WebCore::ResourceResponse::setUrl): (WebCore::ResourceResponse::setMimeType): (WebCore::ResourceResponse::setExpectedContentLength): (WebCore::ResourceResponse::setTextEncodingName): (WebCore::ResourceResponse::setSuggestedFilename):
  • platform/network/ResourceResponse.h:
  • platform/network/curl/ResourceHandleCurl.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::~ResourceHandleManager): (WebCore::ResourceHandleManager::sharedInstance): (WebCore::headerCallback):
  • platform/network/curl/ResourceHandleManager.h:
13:31 Changeset [24371] by weinig

LayoutTests:

Reviewed by Adam Roben.

  • fast/dom/Window/alert-undefined-expected.txt: Added.
  • fast/dom/Window/alert-undefined.html: Added.

WebCore:

Reviewed by Adam Roben.

Convert JS undefined to the empty string when calling alert, confirm, and prompt.

Test: fast/dom/Window/alert-undefined.html

  • page/DOMWindow.idl:
13:04 Changeset [24370] by sfalken

Merged fix from r23529.

11:59 Changeset [24369] by ggaren

Build fix.

  • WebView/WebFrame.mm: (-[WebFrame _loadURL:referrer:intoChild:]):
  • WebView/WebFramePrivate.h:
11:57 Changeset [24368] by thatcher

Adding /VWebKit.LP64.exp to the project.

11:40 Changeset [24367] by ggaren

LayoutTests:

Reviewed by Kevin McCulough.

  • http/tests/navigation/multiple-back-forward-entries-expected.txt: Updated results to match new behavior, which is correct (multiple history entries should not be created).

WebCore:

Reviewed by Kevin McCulough.

Fixed failing layout test.


Renamed "FrameLoadTypeInternal" to "FrameLoadTypeRedirectWithLockedHistory".
This is almost certainly not a correct name for the original intent
of this load type, but it's a correct name for its current behavior.


(WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
When history is supposed to be locked, and no current history item
exists, only add a new history item if you're the top-level frame.


This rule, combined with the rule that setting iframe.src should not
create a history item, is pretty hackish. On the other hand, it
matches WinIE and doesn't cause any test regressions. So I'm OK with
it as a short-term solution until the solution described in
<rdar://problem/5339292> can be implemented.

11:27 Changeset [24366] by tristan

Reviewed by Maciej Stachowiak.

<rdar://problem/5294691> Source of file is misrepresented if downloaded by typing in URL in Safari address bar

  • loader/FrameLoaderClient.h:
  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy): Added an extra request parameter, initialRequest, to the download() method by passing up the resource handle's request.


  • platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyFrameLoaderClient::download): Added an extra parameter to the empty SVG download method.
11:24 Changeset [24365] by tristan

Reviewed by Maciej Stachowiak.

<rdar://problem/5294691> Source of file is misrepresented if downloaded by typing in URL in Safari address bar

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::download): Revised code to check the initial request's referrer before assuming it has a history to check.
11:06 Changeset [24364] by antti

Reviewed by home-bradee.

<rdar://problem/5336372>
Icon database uses too much memory


XRaying Safari startup memory consumption revealed that icon database is eating quite
a bit of RAM if Icon.db is large (which it probably is if it has been in use for a while,
mine used for getting figures below was 2.6MB).


Note that the wins are less impressive with smaller Icon.db.


This patch addresses three separate issues


  • SQLite fails to free the memory used by temporary tables. Icon database uses a temporary table on startup for pruning unused page urls. This wastes around 1MB. Addressed by rewriting pruning so it does not need a temporary table. The new method is also quite a bit faster speeding up Safari launch time by around 100ms
  • SQLite has it's own memory cache limited by default to 3MB. Icon database does not really need that much. Dropped the cache size to 300kB saving ~1MB on startup. Smaller cache slows down startup by ~30ms (more than compensated by faster pruning above)
  • Don't populate m_pageURLToIconURLMap with all urls from database on startup, instead let it get populated when urls are accessed (user opens history menu for example). This shouldn't have any real performance impact as the accesses are icon loads that need to hit the database anyway. This saves ~700kB.


All in all with this Icon.db these changes reduce allocated memory by around 2.7MB on startup. Release build
Safari RPRVT (empty start page) goes from 12.4MB to 10.4MB (TCMalloc pooling probably explaining why the win
looks bit smaller here).

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::IconDatabase): (WebCore::IconDatabase::open): (WebCore::IconDatabase::deleteAllPreparedStatements): (WebCore::IconDatabase::retainIconForPageURL): (WebCore::IconDatabase::releaseIconForPageURL): (WebCore::IconDatabase::establishIconIDForIconURL): (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
  • loader/icon/IconDatabase.h:
10:48 Changeset [24363] by darin

LayoutTests:

Reviewed by Maciej.
Landed by Darin.

  • fast/forms/saved-state-adoptNode-crash-expected.txt: Added.
  • fast/forms/saved-state-adoptNode-crash.html: Added.

WebCore:

Reviewed by Mitz.

Test: fast/forms/saved-state-adoptNode-crash.html

  • dom/Document.h: (WebCore::Document::registerFormElementWithState): Updated parameter type to be HTMLFormControlElementWithState. (WebCore::Document::unregisterFormElementWithState): Ditto. Also removed isFormElementRegistered function and changed the type of the m_formElementsWithState ListHashSet.
  • dom/Document.cpp: (WebCore::Document::formElementsState): Updated to use new type, for set contents and to use new saveState() function and only save state for elements that return true.
  • html/HTMLGenericFormElement.h: Added HTMLFormControlElementWithState class, derived from HTMLGenericFormElement, and moved down all the behavior related to saving form control element state. Also removed the unnecessary default parameter to the HTMLGenericFormElement constructor.
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState): Added. Calls registerFormElementWithState. (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState): Added. Calls unregisterFormElementWithState. (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument): Added. Calls unregisterFormElementWithState. (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument): Added. Calls registerFormElementWithState. (WebCore::HTMLFormControlElementWithState::closeRenderer): Moved to this class from the base class.
  • html/HTMLInputElement.h: Updated the base class name and overrode saveState instead of stateValue.
  • html/HTMLInputElement.cpp: Updated the base class name. (WebCore::HTMLInputElement::init): Removed the call to registerFormElementWithState. (WebCore::HTMLInputElement::~HTMLInputElement): Removed the call to unregisterFormElementWithState. Also changed the code to only call the unregisterForDidRestoreFromCacheCallback function for type PASSWORD (consistency and efficiency). (WebCore::HTMLInputElement::setInputType): Removed calls to registerFormElementWithState and unregisterFormElementWithState; we now let the element stay registered and simply don't save or restore state for password fields. (WebCore::HTMLInputElement::saveState): Updated function name and signature to replace the old stateValue function. Returns false for password fields. (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): Removed the call to unregisterFormElementWithState. (WebCore::HTMLInputElement::didMoveToNewOwnerDocument): Removed the call to registerFormElementWithState.
  • html/HTMLSelectElement.h: Updated the base class name and overrode saveState instead of stateValue.
  • html/HTMLSelectElement.cpp: Updated the base class name. (WebCore::HTMLSelectElement::HTMLSelectElement): Removed the call to registerFormElementWithState. (WebCore::HTMLSelectElement::~HTMLSelectElement): Removed the call to unregisterFormElementWithState. (WebCore::HTMLSelectElement::saveState): Updated function name and signature to replace the old stateValue function. (WebCore::HTMLSelectElement::setLength): Updated to use document() instead of ownerDocument(); the latter is just a slower virtual-function way of doing the same thing in all cases except for Document and XPathNamespace.
  • html/HTMLTextAreaElement.h: Update the base class name, overrode saveState instead of stateValue, and removed the now-unnecessary explicit destructor.
  • html/HTMLTextAreaElement.cpp: Updated the base class name. (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Removed the call to registerFormElementWithState. (WebCore::HTMLTextAreaElement::saveState): Updated function name and signature to replace the old stateValue function.
10:46 Changeset [24362] by weinig

Reviewed by Darin.

  • Make HTMLFrameOwnerElement::contentWindow() return a DOMWindow instead of a Frame
  • Remove the unnecessary hack in HTMLFrameElement.idl and HTMLIFrameElement.idl that converted from Frame to Window now that it is not necessary.
  • Remove now unused [NullCheck] extended attribute from CodeGeneratorJS.pm.
  • bindings/scripts/CodeGeneratorJS.pm:
  • html/HTMLDocument.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLFrameOwnerElement.cpp: (WebCore::HTMLFrameOwnerElement::contentWindow):
  • html/HTMLFrameOwnerElement.h:
  • html/HTMLIFrameElement.idl:
09:55 Changeset [24361] by darin
  • http/tests/navigation/multiple-back-forward-entries-expected.txt: Updated results to match what I see locally and what we see on the buildbot. Geoff, please double-check that these new results are correct.
08:04 Changeset [24360] by kevino

Fix building of Python extension on Windows, and have build-wxwebkit change the filename extension to match Python naming conventions.

06:52 Changeset [24359] by spadma

2007-07-16 vmalaiya, <vikram.malaiya@nokia.com>

Reviewed by Sachin
DESC: TMCN-74HJQR - Cannot use online checking from Finnair.com
http://bugs.webkit.org/show_bug.cgi?id=14577

  • BrowserCore/Misc/src/CookieHandler.cpp: (CCookieHandler::GetCookieFieldValue):
00:46 Changeset [24358] by zimmermann

Build fix. Not reviewed.
Rob forgot to land the changes to SVGResourceMarker in his last commit.

00:19 Changeset [24357] by oliver

Reviewed by Adam.

Fix for <rdar://problem/5339416> Candidate window does not

appear in the correct location for japanese IME

  • WebView.cpp: (WebView::prepareCandidateWindow): We now use an exclusion zone so that the composition window never overlaps the composition string (WebView::onIMERequestCharPosition): Correctly handle character offsets marked regions
00:02 Changeset [24356] by ggaren

Forgot to do the delete half of the file move. Oops.

07/16/07:

23:45 Changeset [24355] by ggaren

Fixed a bunch of layout test failures I just caused.


Made the tests I just added into http test to make their results
universal.


Also checked in the result change I forgot to check in last time.

  • fast/history/location-assign-adds-history-item-expected.txt: Removed.
  • fast/history/location-assign-adds-history-item.html: Removed.
  • fast/history/location-href-set-adds-history-item-expected.txt: Removed.
  • fast/history/location-href-set-adds-history-item.html: Removed.
  • fast/history/location-replace-adds-history-item-expected.txt: Removed.
  • fast/history/location-replace-adds-history-item.html: Removed.
  • fast/history/location-set-adds-history-item-expected.txt: Removed.
  • fast/history/location-set-adds-history-item.html: Removed.
  • fast/history/window-open-adds-history-item-expected.txt: Removed.
  • fast/history/window-open-adds-history-item.html: Removed.
  • fast/history/window-open-adds-history-item2-expected.txt: Removed.
  • fast/history/window-open-adds-history-item2.html: Removed.
  • http/tests/navigation/location-assign-adds-history-item-expected.txt: Copied from fast/history/location-assign-adds-history-item-expected.txt.
  • http/tests/navigation/location-assign-adds-history-item.html: Copied from fast/history/location-assign-adds-history-item.html.
  • http/tests/navigation/location-href-set-adds-history-item-expected.txt: Copied from fast/history/location-href-set-adds-history-item-expected.txt.
  • http/tests/navigation/location-href-set-adds-history-item.html: Copied from fast/history/location-href-set-adds-history-item.html.
  • http/tests/navigation/location-replace-adds-history-item-expected.txt: Copied from fast/history/location-replace-adds-history-item-expected.txt.
  • http/tests/navigation/location-replace-adds-history-item.html: Copied from fast/history/location-replace-adds-history-item.html.
  • http/tests/navigation/location-set-adds-history-item-expected.txt: Copied from fast/history/location-set-adds-history-item-expected.txt.
  • http/tests/navigation/location-set-adds-history-item.html: Copied from fast/history/location-set-adds-history-item.html.
  • http/tests/navigation/redirect-load-no-form-restoration-expected.txt:
  • http/tests/navigation/window-open-adds-history-item-expected.txt: Copied from fast/history/window-open-adds-history-item-expected.txt.
  • http/tests/navigation/window-open-adds-history-item.html: Copied from fast/history/window-open-adds-history-item.html.
  • http/tests/navigation/window-open-adds-history-item2-expected.txt: Copied from fast/history/window-open-adds-history-item2-expected.txt.
  • http/tests/navigation/window-open-adds-history-item2.html: Copied from fast/history/window-open-adds-history-item2.html.
23:42 Changeset [24354] by weinig

Reviewed by Adam Roben.

Move self, opener, parent, top, window, and frames from kjs_window
to DOMWindow and auto-generate the bindings for them.

  • bindings/js/kjs_window.cpp: (KJS::Window::getValueProperty):
  • bindings/js/kjs_window.h: (KJS::Window::):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::self): (WebCore::DOMWindow::opener): (WebCore::DOMWindow::parent): (WebCore::DOMWindow::top):
  • page/DOMWindow.h: (WebCore::DOMWindow::window): (WebCore::DOMWindow::frames):
  • page/DOMWindow.idl:
23:17 Changeset [24353] by ggaren

LayoutTests:

Reviewed by Sam Weinig.


Tests for <rdar://problem/5334483> REGRESSION: JavaScript-induced loads
not added to back/forward list

  • fast/history/location-assign-adds-history-item-expected.txt: Added.
  • fast/history/location-assign-adds-history-item.html: Added.
  • fast/history/location-href-set-adds-history-item-expected.txt: Added.
  • fast/history/location-href-set-adds-history-item.html: Added.
  • fast/history/location-replace-adds-history-item-expected.txt: Added.
  • fast/history/location-replace-adds-history-item.html: Added.
  • fast/history/location-set-adds-history-item-expected.txt: Added.
  • fast/history/location-set-adds-history-item.html: Added.
  • fast/history/window-open-adds-history-item-expected.txt: Added.
  • fast/history/window-open-adds-history-item.html: Added.
  • fast/history/window-open-adds-history-item2-expected.txt: Added.
  • fast/history/window-open-adds-history-item2.html: Added.
  • http/tests/navigation/redirect-load-no-form-restoration-expected.txt: Updated results. Adding a history entry here is correct behavior.

WebCore:

Reviewed by Sam Weinig.


Fixed <rdar://problem/5334483> REGRESSION: JavaScript-induced
window.open loads not added to back/forward list


I did an audit of our history rules in loading and tried to establish
some sane uniformity.


The uniform rule is:

  • HTTP redirects and HTTP redirects simulated by <meta http-equiv> add a history item if and only if the redirect takes > 1 second.
  • Other navigations, including JavaScript navigations, always add a history item, except for location.replace navigations.

In the future, we'll want to refine the second case to be more like the
first. I've filed <rdar://problem/5339292> about that.

  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::setLocation): Don't pass 'true' for userGesture unconditionally. userGesture is used to determine popup blocking, not history item creation.
  • bindings/js/kjs_window.cpp: Pass 'false' for lockHistory in all loads except location.replace, which intends to lock history.
  • loader/FrameLoader.cpp: Distinguish between lockHistory and userGesture. The former determines whether a new history item gets created. The latter determines whether JavaScript can open popup windows. Start passing these variables in functions that used to swallow or conflate them.


(WebCore::FrameLoader::requestFrame): Pass 'true' for lockHistory here
because that's usually correct when setting the 'src' attribute of a
child frame, and we want to avoid regressing <rdar://problem/4921797>.

(WebCore::FrameLoader::load): Use the lockHistory variable to determine
whether to start a history-creating load. Using userGesture for this
purpose is wrong, as explained above.

  • loader/FrameLoader.h: Renamed one variant of scheduleRedirection to scheduleHTTPRedirection because the behavior there of measuring elapsed time is specific to the HTTP redirection case.
  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected): lockHistory can always be false here because this navigation is never the result of a redirection.
22:28 Changeset [24352] by oliver

Reviewed by Maciej.

Fix for <rdar://problem/5334818> Support IME reconversion in windows

Also includes a small amount of IME refactoring.

  • WebView.cpp: (WebView::onIMERequestCharPosition): (WebView::onIMERequestReconvertString): (WebView::onIMERequest):
  • WebView.h:
22:06 Changeset [24351] by weinig

Reviewed by Adam and Maciej.

Move the frameElement attribute from kjs_window to DOMWindow and
auto-generate the bindings for it.

  • bindings/js/kjs_window.cpp: (KJS::Window::getValueProperty):
  • bindings/js/kjs_window.h: (KJS::Window::):
  • bindings/scripts/CodeGeneratorJS.pm:
  • page/DOMWindow.cpp: (WebCore::DOMWindow::frameElement): (WebCore::DOMWindow::devicePixelRatio):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:
21:12 Changeset [24350] by weinig

Reviewed by Adam.

Move more functions from kjs_window to DOMWindow and auto-generate
the bindings for them.

  • bindings/js/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):
  • bindings/js/kjs_window.h: (KJS::Window::):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::print): (WebCore::DOMWindow::stop): (WebCore::DOMWindow::alert): (WebCore::DOMWindow::confirm): (WebCore::DOMWindow::prompt): (WebCore::DOMWindow::find):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:
21:07 Changeset [24349] by rwlbuis

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=5996
SVG <view> is unimplemented

Implement <view> and refactor the code in the svg renderer container classes.

21:04 Changeset [24348] by bdash

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

Gdk build fix.

  • platform/gdk/ChromeClientGdk.h:
20:47 Changeset [24347] by beidson

WebCore:

Reviewed by Adam

Begin the arduous task of localizing FTP directory listings while removing a global initializer!

  • loader/FTPDirectoryDocument.cpp: (WebCore::processFilesizeString):
  • page/mac/WebCoreViewFactory.h:
  • platform/LocalizedStrings.h:
  • platform/gdk/TemporaryLinkStubs.cpp: (WebCore::unknownFileSizeText):
  • platform/mac/LocalizedStringsMac.mm: (WebCore::unknownFileSizeText):
  • platform/qt/Localizations.cpp: (WebCore::unknownFileSizeText):

WebKit:

Reviewed by Adam

Begin the arduous task of localizing FTP directory listings while removing a global initializer!

  • English.lproj/Localizable.strings:
  • WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory unknownFileSizeText]):

win:

Reviewed by Adam

Begin the arduous task of localizing FTP directory listings while removing a global initializer!

  • English.lproj/Localizable.strings:
  • WebCoreLocalizedStrings.cpp: (WebCore::unknownFileSizeText):
19:40 Changeset [24346] by weinig

LayoutTests:

Reviewed by Oliver.

Remove more redundant isSafeScript checks.

  • http/tests/security/cross-frame-access-custom-expected.txt:
  • http/tests/security/cross-frame-access-get-expected.txt:
  • http/tests/security/cross-frame-access-name-getter-expected.txt:

WebCore:

Reviewed by Oliver.

Remove more redundant isSafeScript checks.

  • bindings/js/kjs_window.cpp: (KJS::Window::getOwnPropertySlot):
19:17 Changeset [24345] by weinig

Fix spelling

19:01 Changeset [24344] by weinig

JavaScriptCore:

Reviewed by Oliver.

Turn of -Wshorten-64-to-32 warning for 64-bit builds.

  • Configurations/Base.xcconfig:

JavaScriptGlue:

Reviewed by Oliver.

Turn of -Wshorten-64-to-32 warning for 64-bit builds.

  • Configurations/Base.xcconfig:

WebCore:

Reviewed by Oliver.

Turn of -Wshorten-64-to-32 warning for 64-bit builds.

  • Configurations/Base.xcconfig:
18:40 Changeset [24343] by oliver

Reviewed by Maciej.

Fix for <rdar://problem/5334826> Chinese IME composition window does not appear in the correct location

Respect IME requests for character position.

  • WebView.cpp: (WebView::onIMERequestCharPosition): (WebView::onIMERequest):
  • WebView.h:
18:12 Changeset [24342] by weinig

Fix ChangeLog order

18:07 Changeset [24341] by andersca

Reviewed by Oliver.

<rdar://problem/5336276>
ASSERT(cs->accessCount() > 0) when instantiating widget templates in DashCode

If the cache is disabled, accessCount will always be 0. Account for this in the assert.


  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::reset): (WebCore::HTMLTokenizer::notifyFinished):
17:51 Changeset [24340] by beidson

Reviewed by Darin

Append FTP row entries to the first TBODY instead of the TABLE element itself,
as many TABLE elements end up with an implicit TBODY and that's where most people would
expect it to be added.

  • html/HTMLTableElement.h: (WebCore::HTMLTableElement::firstTBody): Added this accessor
  • loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::appendEntry): Add to the first tbody if it exists
17:44 Changeset [24339] by kmccullo

Reviewed by Darin.

  • Continued x-platform modifications.
  • Drosera/win/DebuggerDocumentWin.cpp: Copied from Drosera/win/DebuggerObjectCallbacks.cpp.
  • Drosera/win/DebuggerDocumentWin.h: Copied from Drosera/win/DebuggerObjectCallbacks.h.
  • Drosera/win/DebuggerObjectCallbacks.cpp: Removed.
  • Drosera/win/DebuggerObjectCallbacks.h: Removed.
  • Drosera/win/Drosera.cpp:
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
  • Drosera/win/stdafx.cpp: Removed.
  • Drosera/win/stdafx.h: Removed.
17:43 Changeset [24338] by weinig

Reviewed by Geoff Garen.

Rename cross-frame-access.html to cross-frame-access-get.html

  • http/tests/security/cross-frame-access-expected.txt: Removed.
  • http/tests/security/cross-frame-access-get-expected.txt: Copied from http/tests/security/cross-frame-access-expected.txt.
  • http/tests/security/cross-frame-access-get.html: Copied from http/tests/security/cross-frame-access.html.
  • http/tests/security/cross-frame-access.html: Removed.
17:19 Changeset [24337] by weinig

Reviewed by Geoff Garen.

Move cross frame access put tests into cross-frame-access-put.html.

  • http/tests/security/cross-frame-access-custom-expected.txt:
  • http/tests/security/cross-frame-access-custom.html:
  • http/tests/security/cross-frame-access-expected.txt:
  • http/tests/security/cross-frame-access-first-time-expected.txt:
  • http/tests/security/cross-frame-access-first-time.html:
  • http/tests/security/cross-frame-access-frames.html:
  • http/tests/security/cross-frame-access-history.html:
  • http/tests/security/cross-frame-access-location-expected.txt:
  • http/tests/security/cross-frame-access-location.html:
  • http/tests/security/cross-frame-access-name-getter-expected.txt:
  • http/tests/security/cross-frame-access-name-getter.html:
  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/security/cross-frame-access-put.html:
  • http/tests/security/cross-frame-access.html:
  • http/tests/security/resources/cross-frame-iframe-for-get-test.html: Copied from http/tests/security/resources/cross-frame-iframe.html.
  • http/tests/security/resources/cross-frame-iframe-for-put-test.html:
  • http/tests/security/resources/cross-frame-iframe.html: Removed.
16:21 Changeset [24336] by justing

Correctly check for input fields and text areas.

16:08 Changeset [24335] by adele

Updated results for Tiger and filed:
<rdar://problem/5338680> fast/forms/hidden-listbox and fast/forms/hidden-input-file are missing empty RenderText on Leopard

  • fast/forms/hidden-input-file-expected.txt:
  • fast/forms/hidden-listbox-expected.txt:
  • mac/leopard/Skipped:
15:31 Changeset [24334] by justing

LayoutTests:

Reviewed by Adele.


<rdar://problem/5240265> REGRESSION: Clicking a <button> clears the selection in contenteditable areas

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

WebCore:

Reviewed by Adele.

<rdar://problem/5240265>
REGRESSION: Clicking a <button> clears the selection in contenteditable areas

  • page/FocusController.cpp: (WebCore::clearSelectionIfNeeded): Don't clear the selection if the mouse press that caused the focus shift occurred in a -webkit-user-select: ignore region.
15:22 Changeset [24333] by pewtermoose

2007-07-16 Charles Gaudette <charles@gaudette-net.com>

Reviewed by Niko.

  • index.html:
15:09 Changeset [24332] by hyatt

Added a manual test to test calling window.print on a subframe.

Reviewed by Darin.

  • manual-tests/resources/print-subframe.html: Added.
  • manual-tests/window-print-subframe.html: Added.
15:01 Changeset [24331] by aroben

WebKit/win part of <rdar://problem/5336005> Calling window.print() on a subframe prints whole page, should only print that subframe

WebKit/win:

WebKit/win part of <rdar://problem/5336005> Calling window.print() on a subframe prints whole page, should only print that subframe

Reviewed by Darin.

  • Interfaces/IWebUIDelegate.idl: Rename print to printFrame to closer match the Mac method, and copy more of the Mac API comments.
  • WebChromeClient.cpp: (WebChromeClient::print): Call printFrame instead of print.

WebCore:

Added a manual test to test calling window.print on a subframe.

Reviewed by Darin.

  • manual-tests/resources/print-subframe.html: Added.
  • manual-tests/window-print-subframe.html: Added.
15:01 Changeset [24330] by aroben

Replace Frame::print with Chrome::print and remove -[WebFrameBridge print]

WebCore:

Replace Frame::print with Chrome::print

This also adds a Frame* parameter to Chrome::print and
ChromeClient::print so that it knows which Frame to print.

Reviewed by Darin.

All tests pass.

  • bindings/js/kjs_window.cpp: (KJS::WindowFunc::callAsFunction): Call Chrome::print.
  • editing/JSEditor.cpp: Ditto.
  • bridge/win/FrameWin.cpp: Removed Frame::print.
  • page/Frame.h: Ditto.
  • page/mac/FrameMac.mm: Ditto.
  • page/qt/FrameQt.cpp: Ditto.
  • platform/gdk/FrameGdk.cpp: Ditto.
  • page/mac/WebCoreFrameBridge.h: Removed -print.
  • page/Chrome.cpp: Added Frame* parameter to Chrome::print and pass it up to the ChromeClient.
  • page/Chrome.h: Ditto.
  • page/ChromeClient.h: Ditto.
  • platform/gdk/TemporaryLinkStubs.cpp: Ditto.
  • platform/graphics/svg/SVGImageEmptyClients.h: Ditto.

WebKit:

Move printing from WebFrameBridge to WebChromeClient

Reviewed by Darin.

  • WebCoreSupport/WebChromeClient.h: Updated for ChromeClient changes.
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::print): Moved code from WebFrameBridge.
  • WebCoreSupport/WebFrameBridge.mm: Removed -print.

WebKit/win:

Updated WebChromeClient for ChromeClient changes.

Reviewed by Darin.

  • WebChromeClient.cpp: (WebChromeClient::print): Added a Frame* parameter.
  • WebChromeClient.h: Ditto.

WebKitQt:

Updated ChromeClientQt for ChromeClient changes.

Reviewed by Darin.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::print): Added a Frame* parameter.
  • WebCoreSupport/ChromeClientQt.h: Ditto.
14:59 Changeset [24329] by kmccullo

Reviewed by Sam.

  • Modified files to use cross-platform code.
  • Drosera/DebuggerDocument.cpp: Added. (DebuggerDocument::breakpointEditorHTML): (DebuggerDocument::isPaused): (DebuggerDocument::pause): (DebuggerDocument::resume): (DebuggerDocument::stepInto): (DebuggerDocument::evaluateScript): (DebuggerDocument::currentFunctionStack): (DebuggerDocument::localScopeVariableNamesForCallFrame): (DebuggerDocument::valueForScopeVariableNamed):
  • Drosera/DebuggerDocument.h: Added. (DebuggerDocument::DebuggerDocument):
  • Drosera/config.h: Added.
  • Drosera/mac/DebuggerApplication.mm: (-[DebuggerApplication attach:]):
  • Drosera/mac/DebuggerDocument.h: Removed.
  • Drosera/mac/DebuggerDocument.mm: Removed.
  • Drosera/mac/DebuggerDocumentMac.h: Copied from Drosera/mac/DebuggerDocument.h.
  • Drosera/mac/DebuggerDocumentMac.mm: Copied from Drosera/mac/DebuggerDocument.mm. (-[DebuggerDocumentMac initWithServerName:]): (-[DebuggerDocumentMac dealloc]): (-[DebuggerDocumentMac breakpointEditorHTML]): (-[DebuggerDocumentMac isPaused]): (-[DebuggerDocumentMac pause]): (-[DebuggerDocumentMac resume]):
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
  • Drosera/win/DebuggerApplication.cpp:
  • Drosera/win/DebuggerObjectCallbacks.cpp: (breakpointEditorHTMLCallback): (currentFunctionStackCallback): (evaluateScript_inCallFrame_Callback): (isPausedCallback): (localScopeVariableNamesForCallFrame_Callback): (pauseCallback): (resumeCallback): (stepIntoCallback): (valueForScopeVariableNamed_inCallFrame_Callback): (staticFunctions):
  • Drosera/win/Drosera.cpp:
  • Drosera/win/DroseraPrefix.cpp: Added.
  • Drosera/win/DroseraPrefix.h: Added.
14:55 Changeset [24328] by darin
  • StringsNotToBeLocalized.txt: Update for recent changes.
14:46 Changeset [24327] by adele

LayoutTests:

Reviewed by Brady.

Test for <rdar://problem/5321490> REGRESSION: visibility:hidden property doesn't hide parts of file input element
http://bugs.webkit.org/show_bug.cgi?id=14565

  • fast/forms/hidden-input-file-expected.checksum: Added.
  • fast/forms/hidden-input-file-expected.png: Added.
  • fast/forms/hidden-input-file-expected.txt: Added.
  • fast/forms/hidden-input-file.html: Added.
  • fast/forms/hidden-listbox-expected.checksum
  • fast/forms/hidden-listbox-expected.png
  • fast/forms/hidden-listbox-expected.txt
  • fast/forms/hidden-listbox.html

WebCore:

Reviewed by Brady.

Fix for <rdar://problem/5321490> REGRESSION: visibility:hidden property doesn't hide parts of file input element and listbox
http://bugs.webkit.org/show_bug.cgi?id=14565

Tests:
fast/forms/hidden-input-file.html
fast/forms/hidden-listbox.html

  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): Only paint if the control is supposed to be visible.
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject): ditto. We already had checks to prevent drawing the text that considered the option's style too, but if visibility: hidden was just set on the listbox then a lot of extra work was being done, and the scrollbar was drawing too. This change fixes that.
14:42 Changeset [24326] by oliver

Reviewed by Steve.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14630

Remove bogus assertion

  • WebView.cpp: (WebView::getIMMContext):
14:34 Changeset [24325] by weinig

Reviewed by Darin.

Add all the window's functions to cross-frame-access-put.html test.

  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/security/cross-frame-access-put.html:
  • http/tests/security/resources/cross-frame-iframe-for-put-test.html:
14:02 Changeset [24324] by hyatt

Fix for Radar 5338081, text-shadow should be reset on form controls so that
it doesn't inherit in when set e.g., on the <body>.

Reviewed by beth

  • css/html4.css:
13:51 Changeset [24323] by treat

skip these crashing tests

13:39 Changeset [24322] by zecke

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

Reviewed by Niko.

FrameView, PlatformScrollbar and changes to the way we draw

Fix the lifetime of PlatformScrollbar, use a default width and
height and fix drawing of the PlatformScrollbar and other widgets
the following way: FrameGdk handles the expose events of the Frame
and will make the frame redraw and now it will draw the childrent of
the FrameView as well. This approach has the issue of honoring the
z-order of elements inside the RenderTree. Honoring the z-order will
be a bit more work

Widget can now handle Widget::setGtkWidget call where the GtkWidget
has not yet a GdkWindow allocated. We will lazily set the GdkDrawable.

In preparation of honoring the z-order of the RenderTree for RenderWidgets
it is started to store native objects inside the GraphicsContext. Doing this
nicely eliminates the need of RenderThemeGdk to do any drawing to a temporary
GdkPixmap. This should fix themes with rounded buttons.

ScrollView implement add- and removeChild to get a working PlatformScrollbar

  • platform/Widget.h:
  • platform/gdk/FrameGdk.cpp: (frame_gdk_expose_child): Will send the expose to all children (WebCore::FrameGdk::handleGdkEvent): Painting changes, move to mouseMoved
  • platform/gdk/PlatformScreenGdk.cpp: (WebCore::screenDepth): gdkDrawable
  • platform/gdk/PlatformScrollBarGdk.cpp: (PlatformScrollbar::PlatformScrollbar): Fix ownership (PlatformScrollbar::~PlatformScrollbar): Fix ownership (PlatformScrollbar::paint): Widget::paint will do the right thing soon
  • platform/gdk/RenderThemeGdk.cpp: No need for using a GdkPixmap, draw directly (WebCore::RenderThemeGdk::paintCheckbox): No need for using a GdkPixmap, draw directly (WebCore::RenderThemeGdk::paintRadio): No need for using a GdkPixmap, draw directly (WebCore::RenderThemeGdk::paintButton): No need for using a GdkPixmap, draw directly
  • platform/gdk/RenderThemeGdk.h: remove the copyContext call
  • platform/gdk/ScrollViewGdk.cpp: gdkDrawable (WebCore::ScrollView::updateView): gdkDrawable (WebCore::ScrollView::update): clear the area to fix repainting issues (WebCore::ScrollView::setGtkWidget): gdkDrawable (WebCore::ScrollView::addChild): implement (WebCore::ScrollView::removeChild): implement
  • platform/gdk/TemporaryLinkStubs.cpp: Not needed header removed
  • platform/gdk/WidgetGdk.cpp: (WebCore::Widget::gdkDrawable): Renamed from drawable (WebCore::Widget::setGtkWidget): use gdkDrawable (WebCore::Widget::setCursor): gdkDrawable (WebCore::Widget::show): gdkDrawable (WebCore::Widget::hide): gdkDrawable
  • platform/graphics/GraphicsContext.h: Allow to set the GdkDrawable, e.g. used inside a expose event
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContext::setGdkDrawable): (WebCore::GraphicsContext::gdkDrawable):
13:21 Changeset [24321] by zecke

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

Reviewed by Maciej.

Lazily update the scrollbars (e.g. on loading a page) to
generate less expose events, which will lead to laying out less often
and will fix http://bugs.webkit.org/show_bug.cgi?id=14020.

  • platform/gdk/ScrollViewGdk.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::update): (WebCore::ScrollView::resizeContents): (WebCore::ScrollView::updateScrollbars):
12:17 Changeset [24320] by zimmermann

Reviewed by Rob.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=13611 (Crash in setAttributeNS setting href of SVG <use> to nonexistent symbol)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14631 (<use> doesn't deep-expand <symbol> elements.)

Rework <use> on <foreignObject> cases, to not just ignore these cases, but actually proceed and skip <fO> objects
from the resulting cloned tree. This fixes parts of "treasure_map.svg" (no bug report availabe on that one, private "testcase").

Fix assertion happening with <use> on <g> containing <symbol>. Introduce expandSymbolElementsInShadowTree()
concept, just like it's done for <use> on <use>, to deep-replace all <symbol> elements by <svg>, as demanded
by the spec. This only worked on <use> on <symbol> direct cases so far.

11:09 Changeset [24319] by kmccullo

Reviewed by Adam, Sam and Tim.

  • Moving files to prepare for cross-platform architecture.
  • Drosera/DebuggerApplication.h: Removed.
  • Drosera/DebuggerApplication.m: Removed.
  • Drosera/DebuggerDocument.h: Removed.
  • Drosera/DebuggerDocument.m: Removed.
  • Drosera/Drosera.pch: Removed.
  • Drosera/Drosera.xcodeproj: Removed.
  • Drosera/Drosera.xcodeproj/project.pbxproj: Removed.
  • Drosera/Info.plist: Removed.
  • Drosera/LauncherInfo.plist: Removed.
  • Drosera/Makefile: Removed.
  • Drosera/launcher.m: Removed.
  • Drosera/mac: Added.
  • Drosera/mac/DebuggerApplication.h: Copied from Drosera/DebuggerApplication.h.
  • Drosera/mac/DebuggerApplication.mm: Copied from Drosera/DebuggerApplication.m.
  • Drosera/mac/DebuggerDocument.h: Copied from Drosera/DebuggerDocument.h.
  • Drosera/mac/DebuggerDocument.mm: Copied from Drosera/DebuggerDocument.m.
  • Drosera/mac/Drosera.pch: Copied from Drosera/Drosera.pch.
  • Drosera/mac/Drosera.xcodeproj: Copied from Drosera/Drosera.xcodeproj.
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
  • Drosera/mac/Info.plist: Copied from Drosera/Info.plist.
  • Drosera/mac/LauncherInfo.plist: Copied from Drosera/LauncherInfo.plist.
  • Drosera/mac/Makefile: Copied from Drosera/Makefile.
  • Drosera/mac/launcher.m: Copied from Drosera/launcher.m.
  • Drosera/mac/main.m: Copied from Drosera/main.m.
  • Drosera/main.m: Removed.
  • Makefile:
  • Makefile.Drosera: Added.
10:53 Changeset [24318] by sullivan

Reviewed by Kevin Decker and Darin Adler


  • fixed <rdar://problem/5337529> Holes in Find banner overlay on PDF pages are left in wrong place after changing scale
  • WebView/WebPDFView.mm: (-[WebPDFView _scaleOrDisplayModeChanged:]): tell UI delegate that the entire PDF view has been redrawn
10:05 Changeset [24317] by weinig

Reviewed by Kevin McCullough.

Breakup http/tests/security/cross-frame-access.html into multiple tests to
make it easier to identify flaws should they arise.

  • Also factors out JS into a separate file.
  • http/tests/security/cross-frame-access-custom-expected.txt: Added.
  • http/tests/security/cross-frame-access-custom.html: Added.
  • http/tests/security/cross-frame-access-expected.txt:
  • http/tests/security/cross-frame-access-frames-expected.txt: Added.
  • http/tests/security/cross-frame-access-frames.html: Added.
  • http/tests/security/cross-frame-access-history-expected.txt: Added.
  • http/tests/security/cross-frame-access-history.html: Added.
  • http/tests/security/cross-frame-access-location-expected.txt: Added.
  • http/tests/security/cross-frame-access-location.html: Added.
  • http/tests/security/cross-frame-access-name-getter-expected.txt: Added.
  • http/tests/security/cross-frame-access-name-getter.html: Added.
  • http/tests/security/cross-frame-access.html:
  • http/tests/security/resources/cross-frame-access.js: Added.
08:30 Changeset [24316] by spadma

2007-07-03 vmalaiya, <vikram.malaiya@nokia.com>

Reviewed by Joseph
DESC: EBOV-74BBNK - Web pages with koi-r and koi-u encodings get incorrectly displayed, when viewed from 'saved pages' view
http://bugs.webkit.org/show_bug.cgi?id=14512


  • BrowserView/src/LoadListeners.cpp: (CPageLoadListener::HeadersL):
08:27 Changeset [24315] by spadma

2007-07-10 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>

Reviewed by Sachin Padma.
DESC: stream requests are cancelled after "javascript:" execution
http://www.v28power.com/flash.htm

  • WebKit\Plugin\PluginLoader.cpp: (CPluginLoader::LoadPluginContentL): return after executing javascript.
08:20 Changeset [24314] by andersca

Forgot Skipped file

08:18 Changeset [24313] by andersca

Remove basic-auth.html, it no longer hangs on Leopard.


  • mac/leopard/Skipped:
07:56 Changeset [24312] by bdash

New tag (part 2).

07:55 Changeset [24311] by bdash

New tag (part 2).

07:54 Changeset [24310] by bdash

New tag (part 1).

07:52 Changeset [24309] by bdash

New tag (part 1).

07:08 Changeset [24308] by bdash

New tag (part 2).

07:08 Changeset [24307] by bdash

New tag (part 2).

07:07 Changeset [24306] by bdash

New tag (part 1).

07:07 Changeset [24305] by bdash

New tag (part 1).

07:05 Changeset [24304] by bdash

Build fix.

02:06 Changeset [24303] by bdash

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

Update expected result after r24302.

  • fast/css/empty-script-expected.txt:
01:38 Changeset [24302] by bdash

2007-07-16 Rob Buis <buis@kde.org>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=14462
non empty <style> element doesn't work

Return an empty sheet for empty <style> elements
instead of a null sheet. Clean up StyleElement a bit.

  • dom/StyleElement.cpp: (WebCore::StyleElement::StyleElement): (WebCore::StyleElement::sheet): (WebCore::StyleElement::childrenChanged): (WebCore::StyleElement::createSheet):
  • dom/StyleElement.h: (WebCore::StyleElement::setLoading):
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement): (WebCore::HTMLStyleElement::sheet):
  • html/HTMLStyleElement.h: (WebCore::HTMLStyleElement::setLoading):
  • ksvg2/svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::sheet): (WebCore::SVGStyleElement::sheetLoaded):
  • ksvg2/svg/SVGStyleElement.h:

2007-07-16 Rob Buis <buis@kde.org>

Reviewed by Maciej.

Testcase for:
http://bugs.webkit.org/show_bug.cgi?id=14462
non empty <style> element doesn't work

  • fast/css/empty-script-expected.txt: Added.
  • fast/css/empty-script.html: Added.

07/15/07:

23:13 Changeset [24301] by oliver

LayoutTests:

Reviewed by Adam.

Update for changed behaviour now that we allow tab characters in input fields again

  • editing/inserting/typing-tab-designmode-forms-expected.checksum:
  • editing/inserting/typing-tab-designmode-forms-expected.png:
  • editing/inserting/typing-tab-designmode-forms-expected.txt:

WebCore:

Reviewed by Adam.

Fix for fix for <rdar://problem/5336602> REGRESSION: tab characters

cannot be entered into text fields
http://bugs.webkit.org/show_bug.cgi?id=14032

Need to use UChar not char.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::constrainValue):
19:09 Changeset [24300] by weinig

LayoutTests:

Reviewed by Geoff Garen.

Update results after removing redundant calls to isSafeScript()

  • http/tests/security/cross-frame-access-expected.txt:

WebCore:

Reviewed by Geoff Garen.

Remove redundant calls to isSafeScript()

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customPut):
  • bindings/js/kjs_window.cpp: (KJS::Window::put):
18:44 Changeset [24299] by ggaren

Reviewed by Maciej Stachowiak.


Removed incorrect error log, seen while running layout tests.


Perhaps at some point FrameLoadTypeInteral had a specific meaning
that prevented it from being used in non-child frame, non-redirect
situations. However, that meaning has been lost and nobody remembers
how to get it back.


We currently use FrameLoadTypeInternal for any load that is not
initiated by a user gesture, so it's trivial to produce this error
log, even though nothing has gone wrong.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::updateHistoryForInternalLoad):
18:36 Changeset [24298] by oliver

LayoutTests:

Reviewed by Maciej.

Testcase for <rdar://problem/5336602> REGRESSION: tab characters cannot be entered into text fields

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

  • fast/forms/tab-in-input-expected.txt: Added.
  • fast/forms/tab-in-input.html: Added.

WebCore:

Reviewed by Maciej

Fix for <rdar://problem/5336602> REGRESSION: tab characters cannot be entered into text fields

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

constrainValue attempted to block control characters from being inserted
by a simple less than ' ' check, which prevent tab characters from being
inserted. This patch adds an additional check to allow the tab character
again

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::constrainValue):
10:38 Changeset [24297] by kevino

Improve image memory handling, and set some asserts to help debug problems with deleting the bitmaps created by frameAtIndex. (Related to threads and CURL?)

10:01 Changeset [24296] by zimmermann

Reviewed by Rob.

Fix invisible-text-after-scrolling.xhtml regression. Scroll offset not
taken into account properly. Also fix RenderSVGInlineText::selectionRect(),
so that SVG text can be selected, when being embedded in XHTML.

07/14/07:

16:39 Changeset [24295] by beidson

Third shot at blind Qt/GDK build fix

  • platform/gdk/TemporaryLinkStubs.cpp: (FTPDirectoryDocument::createTokenizer):
  • platform/qt/TemporaryLinkStubs.cpp: (FTPDirectoryDocument::createTokenizer):
16:25 Changeset [24294] by beidson

RUBBERSTAMPED BY SAM WEINIG - Try to (actually) fix Qt and GDK

16:21 Changeset [24293] by beidson

Fix Windows build and set the pref to allow FTP directory listings in Windows nightlies

16:13 Changeset [24292] by zimmermann

Fixes: http://bugs.webkit.org/show_bug.cgi?id=5940 (<svg> inside <body> incorrectly extends over top/bottom borders)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14145 (RenderSVGContainer should not inherit from RenderContainer)

Make RenderSVGContainer inherit from RenderObject directly, instead of RenderContainer.
Itdoes a lot of things that we don't need for SVG, and by removing this inheritance
we can finally fix the differences about SVG object positioning, as we don't need
parent translation (tx/ty). Fixes SVG text rendering within XHTML.

Fix requireLayer() function on RenderSVGRoot, as it can actually be a layer now.
This change is based on Rob's patch at 5940 - fixing z-order indexing.

Change RenderSVGRoot renderName() and update all layout tests, because of this change.

Fix absoluteRects() function for RenderSVGInlineText & RenderSVGTSpan.
Checked extensively using WebInspector, to assure all rects are correctly displayed.

Testcases fixed: junk-data.svg, missing-xlink.svg hixie/013.xml (all regressions!)
(junk-data.svg & missing-xlink.svg previously relied on SVG text painting out of <svg> overflow rect.

Fix these testcases, as within this new RenderSVGContainer concept, that bug is now fixed, and breaks them)

Testcases added: custom/absolute-sized-svg-in-xhtml.xhtml, custom/inline-svg-in-xhtml.xml (Mozilla XTech demo)

15:59 Changeset [24291] by weinig

Fix Tiger build.

  • config.h:
15:58 Changeset [24290] by beidson

Blind attempt at (hopefully) fixing the Qt and GDK builds

  • platform/gdk/TemporaryLinkStubs.cpp: (FTPDirectoryDocument::FTPDirectoryDocument):
  • platform/qt/TemporaryLinkStubs.cpp: (FTPDirectoryDocument::FTPDirectoryDocument):
15:25 Changeset [24289] by beidson

JavaScriptCore:

Reviewed by Sam Weinig

Initial check-in for <rdar://problem/3154486> - Supporting FTP directory listings in the browser

  • wtf/Platform.h: Add ENABLE_FTPDIR feature to handle building on platforms that don't have the proper network-layer support

WebCore:

Reviewed by Sam Weinig

Initial check-in for <rdar://problem/3154486> - Supporting FTP directory listings in the browser

Development has taken place on both Leopard and Windows (windows enabling patch will follow shortly)
Support will only exist on platforms whose network layers (ie, ResourceHandle) support piping the raw
FTP Directory data into the engine.

This is known to include Leopard, Windows, and CURL based platforms - probably others
Known incompatible platforms include Tiger.

The FTP listing page is built in HTML. An external HTML document can be provided as a template for the
directory listing. This document is parsed, and expected to have a <table> with a certain class in it.
As FTP directory listings come in, each entry is added to this table as a row.

If no HTML template is provided to work with, a very basic empty document is hard coded that contains only
this special table.

Upgrades to the look and feel of the directory listings can take place largely in this HTML template which,
admittedly, is conspicuously absent in this initial checkin

  • WebCore.exp: New Settings symbols for WebKit
  • WebCore.xcodeproj/project.pbxproj:
  • config.h: If BUILDING_ON_TIGER, disable FTP directory listing support
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Create an FTPDirectoryDocument if the mime type is "application/x-ftp-directory"
  • loader/FTPDirectoryDocument.cpp: Added. (WebCore::FTPDirectoryTokenizer::isWaitingForScripts): (WebCore::FTPDirectoryTokenizer::checkBuffer): (WebCore::FTPDirectoryTokenizer::FTPDirectoryTokenizer): Building on HTML tokenizer, this facilitates parsing FTP Directory listings in the engine (WebCore::FTPDirectoryTokenizer::appendEntry): Add a table row for a directory listing to the document (WebCore::FTPDirectoryTokenizer::createTDForFilename): Create the TD for the filename with the anchor in it

(WebCore::processFilesizeString): Prettify the filesize
(WebCore::wasLastDayOfMonth):
(WebCore::processFileDateString): Prettify the date
(WebCore::FTPDirectoryTokenizer::parseAndAppendOneLine):
(WebCore::FTPDirectoryTokenizer::loadDocumentTemplate): Loads the HTML template that FTP directory listings

can build on top of

(WebCore::FTPDirectoryTokenizer::createBasicDocument): Creates a most basic document (body and one table) to

append the rows to in case the document template is not loaded and parsed

(WebCore::FTPDirectoryTokenizer::write): Add the FTP listing to the buffer and parse entries out of it
(WebCore::FTPDirectoryTokenizer::finish):

(WebCore::FTPDirectoryDocument::FTPDirectoryDocument): Special document-type for FTP directory listings
(WebCore::FTPDirectoryDocument::createTokenizer):

  • loader/FTPDirectoryDocument.h: Added. (WebCore::FTPDirectoryDocument::isImageDocument):


  • loader/FTPDirectoryParser.cpp: Added. (WebCore::parseOneFTPLine): Adapted from ParseFTPList.cpp from Firefox - parses most known FTP directory listing styles into discrete FTP directory entries
  • loader/FTPDirectoryParser.h: Added. (WebCore::ListState::ListState): Maintains FTP Parser state (WebCore::ListResult::ListResult): Represents one FTP directory listing (WebCore::ListResult::clear):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::checkContentPolicy): If the Settings say to bypass the policy check for "application/x-ftp-directory", skip it. This will allow people to test this feature even if their browser/WebKit app would otherwise not allow it
  • page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setFTPDirectoryTemplatePath): Set the path to the FTP listing document template (WebCore::Settings::setForceFTPDirectoryListings): Set to bypass the policy delegate check for mime type "application/x-ftp-directory"
  • page/Settings.h: (WebCore::Settings::ftpDirectoryTemplatePath): (WebCore::Settings::forceFTPDirectoryListings):
  • platform/Logging.cpp: Add an "LogFTP" logging channel
  • platform/Logging.h:
  • platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
  • platform/MimeTypeRegistry.cpp: (WebCore::initialiseSupportedNonImageMimeTypes): Add "application/x-ftp-directory"
  • platform/SharedBuffer.cpp: (WebCore::SharedBuffer::createWithContentsOfFile): Stub for now
  • platform/SharedBuffer.h:
  • platform/mac/SharedBufferMac.mm: (WebCore::SharedBuffer::createWithContentsOfFile): Load contents of the file into an NSData, then wrap that NSData

WebKit:

Reviewed by Sam Weinig

Initial check-in for <rdar://problem/3154486> - Supporting FTP directory listings in the browser

  • WebView/WebPreferenceKeysPrivate.h: Added preference keys for the FTP template location, as well as to force FTP directory listings, bypassing the policy delegate. This is necessary to test the new feature until browser policy delegate support is added.
  • WebView/WebPreferences.m: (-[WebPreferences _setFTPDirectoryTemplatePath:]): (-[WebPreferences _ftpDirectoryTemplatePath]): (-[WebPreferences _setForceFTPDirectoryListings:]): (-[WebPreferences _forceFTPDirectoryListings]):
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm: (-[WebView _updateWebCoreSettingsFromPreferences:]):
11:02 Changeset [24288] by ap

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=14618
REGRESSION(13464): drivehq.com login form doesn't work

Test: http/tests/misc/post-submit-button.html

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Append a submit even if its value is empty.
10:04 Changeset [24287] by bdash

2007-07-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Fixes http://bugs.webkit.org/show_bug.cgi?id=13517,

http://bugs.webkit.org/show_bug.cgi?id=14237, and
the failure of test js1_5/Scope/regress-185485.js

Bug 13517: DOM Exception 8 in finance.aol.com sub-page
Bug 14237: Javascript "var" statement interprets initialization in the topmost function scope

  • kjs/nodes.cpp: (VarDeclNode::evaluate):
  • tests/mozilla/expected.html:

2007-07-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Added tests for the following bugs:
http://bugs.webkit.org/show_bug.cgi?id=13517
http://bugs.webkit.org/show_bug.cgi?id=14237

Bug 13517: DOM Exception 8 in finance.aol.com sub-page
Bug 14237: Javascript "var" statement interprets initialization in the topmost function scope

  • fast/js/resources/vardecl-blocks-init.js: Added.
  • fast/js/resources/vardecl-preserve-arguments.js: Updated.
  • fast/js/vardecl-blocks-init-expected.txt: Added.
  • fast/js/vardecl-blocks-init.html: Added.
  • fast/js/vardecl-preserve-arguments-expected.txt: Updated result.
09:53 Changeset [24286] by bdash

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

  • Scripts/generate-coverage-data: Don't fail if WebKitBuild directory does not exist.
01:21 Changeset [24285] by oliver

Reviewed by Darin and Alexey.

Fix for <rdar://problem/5231528> Inline input of International text (IME)

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

This patch adds IME support to WebKit/win, it currently does not support
reconversion (<rdar://problem/5334818>) and has issues with the chinese
IMEs (<rdar://problem/5334826>)

  • WebEditorClient.cpp: (WebEditorClient::respondToChangedSelection): (WebEditorClient::handleInputMethodKeypress): Prevent the initial keydown for an IME from triggering a keypressed event
  • WebView.cpp: (WebView::WebView): (WebView::keyUp): (WebView::keyDown): (WebViewWndProc): (IMMDict::dict): (IMMDict::IMMDict):

Dynamic loader for IME libraries

(WebView::getIMMContext):
(WebView::releaseIMMContext):
(WebView::prepareCandidateWindow):
(selectionInsideMarkedText):
(setSelectionToEndOfRange):
(WebView::resetIME):
(WebView::updateSelectionForIME):
(WebView::selectionChanged):
(getCompositionString):
(compositionToUnderlines):

Helper functions

(WebView::onIMEStartComposition):
(WebView::onIMEComposition):
(WebView::onIMEEndComposition):
(WebView::onIMEChar):
(WebView::onIMENotify):
(WebView::onIMERequest):
(WebView::onIMESelect):
(WebView::onIMESetContext):

IME event handling, so far most of these are not implemented, but the bulk of functionality
is performed the the composition event handlers

  • WebView.h:

07/13/07:

23:40 Changeset [24284] by oliver

Reviewed by Mark.

Correct expected pixel results

  • fast/forms/input-appearance-readonly-expected.checksum:
  • fast/forms/input-appearance-readonly-expected.png:
23:03 Changeset [24283] by oliver

Reviewed by Sam.

Fix for

<rdar://problem/5335265> REGRESSION: WebCore::DragController crashes if WebDragSourceActionDHTML cleared
http://bugs.webkit.org/show_bug.cgi?id=13652

Reorder logic for drag initiation: we can always preflight the clipboard, regardless as to whether
we are performing any dhtml drag handling

  • page/EventHandler.cpp: (WebCore::EventHandler::handleDrag):
21:51 Changeset [24282] by pewtermoose

Reviewed by Tim Hatcher.

Bug 14401: Semi-regression: Can no longer copy anything from the inspector
http://bugs.webkit.org/show_bug.cgi?id=14401

  • page/inspector/inspector.css:
18:49 Changeset [24281] by andersca

Reviewed by Maciej.

<rdar://problem/5290103> Assert failure when loading page with multipart resource


Don't try to call the delegate method if the resource object doesn't exist in the
identifier map. When a multipart resource has finished loading one part, it is removed from the
web view identifier map.


This is not an ideal fix, a better fix would be to special-case multipart resources and not remove
them when the first part has finished loading. I've filed <rdar://problem/5335034> to track doing that.


  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidReceiveResponse): (WebFrameLoaderClient::willCacheResponse): (WebFrameLoaderClient::dispatchDidReceiveContentLength): (WebFrameLoaderClient::dispatchDidFinishLoading): (WebFrameLoaderClient::dispatchDidFailLoading):
17:20 Changeset [24280] by weinig

Fix results.

  • fast/text/word-break-run-rounding-expected.txt:
16:07 Changeset [24279] by bdakin

Reviewed by Hyatt.

Fix for <rdar://problem/5304742> A hang occurs when attempting to
display web clip banner at http://www.signonsandiego.com/sports/
chargers/index.html

Here is the actual fix.

  • rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): Set topLevel to false when we recurse to get our children's absoluteRects.
  • rendering/RenderInline.h: New boolean parameter topLevel that defaults to true.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::absoluteRects):
  • rendering/RenderObject.h:

And these are just other implementations/declarations of this
(virtual) function that have to add the parameter. No behavior
change here.

  • rendering/RenderPath.cpp: (WebCore::RenderPath::absoluteRects):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::absoluteRects):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGHiddenContainer.cpp: (WebCore::RenderSVGHiddenContainer::absoluteRects):
  • rendering/RenderSVGHiddenContainer.h:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::absoluteRects):
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::absoluteRects):
  • rendering/RenderSVGInlineText.h:
  • rendering/RenderSVGTSpan.cpp: (WebCore::RenderSVGTSpan::absoluteRects):
  • rendering/RenderSVGTSpan.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects):
  • rendering/RenderSVGText.h:
  • rendering/RenderText.cpp: (WebCore::RenderText::absoluteRects):
  • rendering/RenderText.h:
  • rendering/RenderView.cpp: (WebCore::RenderView::absoluteRects):
  • rendering/RenderView.h:
15:45 Changeset [24278] by weinig

LayoutTests:

Reviewed by Hyatt.

Run rounding makes word-break:break-all/word not functional

  • fast/text/word-break-run-rounding-expected.checksum: Added.
  • fast/text/word-break-run-rounding-expected.png: Added.
  • fast/text/word-break-run-rounding-expected.txt: Added.
  • fast/text/word-break-run-rounding.html: Added.

WebCore:

Reviewed by Hyatt.

Run rounding makes word-break:break-all/word not functional

Test: fast/text/word-break-run-rounding.html

  • rendering/RenderText.cpp: (WebCore::RenderText::calcPrefWidths): Update the maximum width only on word boundaries to avoid rounding errors.
  • rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Integrated breakAll with the midWordBreak/wrapW mechanism. Also made the wrapW upper bound more accurate by resetting it when tmpW is committed.
15:37 Changeset [24277] by weinig

LayoutTests:

Reviewed by Geoff Garen.

Tests for <rdar://problem/5318394>
http site can read/write content of https site in same domain

Adds ssl configuration information and tests.

  • http/conf/apache2-httpd.conf:
  • http/conf/cygwin-httpd.conf:
  • http/conf/httpd.conf:
  • http/conf/webkit-httpd.pem: Added.
  • http/tests/security/cross-frame-access-expected.txt:
  • http/tests/security/cross-frame-access-first-time-expected.txt:
  • http/tests/security/cross-frame-access-protocol-expected.txt: Added.
  • http/tests/security/cross-frame-access-protocol.html: Added.
  • http/tests/security/cross-frame-access-put-expected.txt:
  • http/tests/ssl: Added.
  • http/tests/ssl/resources: Added.
  • http/tests/ssl/resources/cross-frame-access-protocol-iframe.html: Added.
  • http/tests/ssl/verify-ssl-enabled-expected.txt: Added.
  • http/tests/ssl/verify-ssl-enabled.php: Added.

WebCore:

Reviewed by Geoff Garen.

Patch for <rdar://problem/5318394>
http site can read/write content of https site in same domain

Add protocol and port checks in isSafeScript.

  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript):

WebKitTools:

Reviewed by Geoff Garen.

Add support for running SSL tests over HTTPS.

  • DumpRenderTree/DumpRenderTree.m: (runTest):
  • DumpRenderTree/FrameLoadDelegate.m: (-[FrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
  • Scripts/run-webkit-httpd:
  • Scripts/run-webkit-tests:
15:20 Changeset [24276] by andersca

Reviewed by Mitz Pettel.

<rdar://problem/5298870>
REGRESSION: In Yahoo Mail modal dialog, OK and Cancel buttons do not work, and descriptive text is missing (14327)


http://bugs.webkit.org/show_bug.cgi?id=14327
REGRESSION (r21367): dialogArguments not set in window generated by showModalDialog

When creating popup windows/dialogs, prevent the window properties from being cleared by the initial frame load.


  • loader/FrameLoader.cpp: (WebCore::FrameLoader::FrameLoader): (WebCore::FrameLoader::createWindow): (WebCore::FrameLoader::clear): (WebCore::FrameLoader::begin): (WebCore::FrameLoader::open):
  • loader/FrameLoader.h: (WebCore::FrameLoader::setShouldClearWindowProperties):
  • manual-tests/modal-dialog-arguments.html: Added.
14:45 Changeset [24275] by thatcher

Reviewed by Oliver Hunt.

<rdar://problem/5333766> Can't include WebEditingDelegatePrivate.h

  • WebView/WebEditingDelegatePrivate.h: Changed the include to be a framework include, so other projects can use this header.
14:37 Changeset [24274] by kevino

The isGdk function got lost during merges. This restores scripts and such that expect this to be defined.

14:29 Changeset [24273] by sfalken

New tag.

14:29 Changeset [24272] by sfalken

Bump version for submit

13:26 Changeset [24271] by yongjzha

ligman, reviewed by Yongjun

DESC: stop the recursion in ArgumentListNode's destructor.
http://bugs.webkit.org/show_bug.cgi?id=14578

  • kjs/nodes.cpp: (ArgumentListNode::~ArgumentListNode):
  • kjs/nodes.h:
13:24 Changeset [24270] by yongjzha

ligman, reviewed by Yongjun

DESC: stop the recursion in ArgumentListNode's destructor.
http://bugs.webkit.org/show_bug.cgi?id=14578

  • kjs/nodes.cpp: (ArgumentListNode::~ArgumentListNode):
  • kjs/nodes.h:
13:17 Changeset [24269] by sfalken

Update ResourceError related code to account for changes in CF interfaces.

Reviewed by Darin, Ada.

  • platform/network/ResourceError.h: Change Mac conditionals to CF to share more code.
  • platform/network/cf/ResourceErrorCF.cpp: (WebCore::ResourceError::ResourceError): Modified based on CFErrorRef changes (WebCore::ResourceError::unpackPlatformError): Ported from ResourceErrorMac.mm. (WebCore::ResourceError::operator CFErrorRef): Ported from ResourceErrorMac.mm. (WebCore::ResourceError::operator CFStreamError): Modified based on CFErrorRef changes.
12:06 Changeset [24268] by andersca

Reviewed by Darin and Maciej.

<rdar://problem/5271096> panic after Safari stress test, caused by port leak

Replace uses of -[NSObject performSelector:withObject:afterDelay:] with CFRunLoopTimer. performSelector
causes the target (the WebHTMLView in this case) to be retained until the timer fires. Furthermore, when
running the PLT or iBench, the timers will not fire until the main loop is entered (usually after running all tests).


This means that the timers and ports will not be released until after the test has finished running.


  • WebView/WebHTMLView.mm: (-[WebHTMLViewPrivate dealloc]): (-[WebHTMLView _cancelUpdateMouseoverTimer]): (-[WebHTMLView _updateMouseoverWithFakeEvent]): (-[WebHTMLView _updateMouseoverTimerCallback:]): (-[WebHTMLView _frameOrBoundsChanged]): (-[WebHTMLView _updateActiveState]): (-[WebHTMLView _updateActiveStateTimerCallback:]): (-[WebHTMLView viewWillMoveToWindow:]): (-[WebHTMLView viewDidMoveToWindow]): (-[WebHTMLView mouseDown:]): (-[WebTextCompleteController dealloc]):
  • WebView/WebHTMLViewInternal.h:
11:55 Changeset [24267] by antti

LayoutTests:

Reviewed by Adele.


Test for <rdar://problem/5192256>
click() in onchange handler causes another change event (causes hang at http://forums.whirlpool.net.au/)

  • fast/events/onchange-click-hang-expected.txt: Added.
  • fast/events/onchange-click-hang.html: Added.

WebCore:

Reviewed by Adele.


Fix <rdar://problem/5192256>
click() in onchange handler causes another change event (causes hang at http://forums.whirlpool.net.au/)


Guard against generating a simulated event from within a simulated event in the same node. Try to
match Firefox behavior.

  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): (WebCore::EventTargetNode::dispatchSimulatedClick):
  • dom/Node.cpp: (WebCore::Node::Node):
  • dom/Node.h:
11:29 Changeset [24266] by antti

LayoutTests:

Reviewed by Darin.


Test for x <rdar://problem/5333387>
Combination of selection and click() on checkbox crashes

  • fast/dynamic/checkbox-selection-crash-expected.txt: Added.
  • fast/dynamic/checkbox-selection-crash.html: Added.

WebCore:

Reviewed by Darin.


Fix <rdar://problem/5333387>
Combination of selection and click() on checkbox crashes


Ensure there is no pending style update before doing synchronous paint. Under certain
circumstances this ends up doing style recalc in middle of paint() which may
for example tear down the rendering tree being painted, with bad results.

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::setActive):
11:16 Changeset [24265] by ddkilzer

2007-07-13 David Kilzer <ddkilzer@apple.com>

Reviewed by Darin.

Added support for -hhelp argument and verify that all command line arguments parse

correctly.

  • Scripts/run-webkit-httpd:
11:13 Changeset [24264] by ddkilzer

Fixed comment.

11:11 Changeset [24263] by antti

LayoutTests:

Reviewed by Adele.


Test for <rdar://problem/5333365>
Calling click() is very slow

  • fast/forms/slow-click-expected.txt: Added.
  • fast/forms/slow-click.html: Added.

WebCore:

Reviewed by Adele.


Fix <rdar://problem/5333365>
Calling click() is very slow


There is a 100ms delay in ContainerNode::setActive() to do an activation effect. It is used for
simulated mouse activations (using keyboard for example). However, it shouldn't be done when calling from javascript
(through click() interface) since it hangs script execution.

  • html/HTMLElement.cpp: (WebCore::HTMLElement::click):
10:21 Changeset [24262] by bdash

Update versioning of trunk.

09:34 Changeset [24261] by bdash

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

Reviewed by Sam.

Apply the change to Apache 2 configuration from r24204 to the other two Apache configuration files.

  • http/conf/cygwin-httpd.conf:
  • http/conf/httpd.conf:
07:16 Changeset [24260] by bdash

Versioning.

07:10 Changeset [24259] by bdash

Versioning.

07:10 Changeset [24258] by bdash

Merge r23963.

Reviewed by Darin.

Fix for: <rdar://problem/5292988> domain names shouldn't contain ignorable characters

  • Misc/WebNSURLExtras.m: (isLookalikeCharacter): Renamed. Also excludes any non-printable character, any character considered as whitespace that isn't already converted to a space by ICU, any ignorable character, and any character excluded in Mozilla's blacklist: http://kb.mozillazine.org/Network.IDN.blacklist_chars (allCharactersInIDNScriptWhiteList):
07:10 Changeset [24257] by bdash

Merge r23529.

Reviewed by Geoff.

<rdar://problem/5211677>
-[WebPreferences setJavaEnabled:] only disables java inside <applet>, not <object>

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): If the object is a Java MIME type and Java is disabled, don't load the plug-in.
  • platform/MimeTypeRegistry.cpp: (WebCore::MimeTypeRegistry::isJavaAppletMIMEType): Clean this up and add another applet MIME type.
05:00 Changeset [24256] by bdash

2007-07-13 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

Tests: fast/repaint/box-shadow-h.html

fast/repaint/box-shadow-v.html

  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::layout): Added a call to adjustOverflowForBoxShadow().
  • rendering/RenderImage.cpp: (WebCore::RenderImage::layout): Ditto.
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::layout): Ditto.
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasOverflow. (WebCore::RenderReplaced::~RenderReplaced): Added. Removes this object from the overflow rect map if it has overflow. (WebCore::RenderReplaced::shouldPaint): Account for overflow. (WebCore::RenderReplaced::adjustOverflowForBoxShadow): Added. Creates or removes an entry for this object in the global overflow rect map. (WebCore::RenderReplaced::overflowHeight): Added. (WebCore::RenderReplaced::overflowWidth): Added. (WebCore::RenderReplaced::overflowLeft): Added. (WebCore::RenderReplaced::overflowTop): Added. (WebCore::RenderReplaced::overflowRect): Added.
  • rendering/RenderReplaced.h:

2007-07-13 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

  • fast/repaint/box-shadow-h-expected.checksum:
  • fast/repaint/box-shadow-h-expected.png:
  • fast/repaint/box-shadow-h-expected.txt:
  • fast/repaint/box-shadow-h.html:
  • fast/repaint/box-shadow-v-expected.checksum:
  • fast/repaint/box-shadow-v-expected.png:
  • fast/repaint/box-shadow-v-expected.txt:
  • fast/repaint/box-shadow-v.html:
04:51 Changeset [24255] by bdash

2007-07-13 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

Test: fast/lists/marker-before-empty-inline.html

  • rendering/RenderBlock.h:
  • rendering/RenderListItem.cpp: (WebCore::getParentOfFirstLineBox): Changed to skip empty inline flows that do not actually generate any line boxes. Limited the nested lists quirk to the case where the list is a child of the list item, to match Firefox.
  • rendering/bidi.cpp: (WebCore::requiresLineBox): Added. Factored out of skipWhitespace. (WebCore::RenderBlock::generatesLineBoxesForInlineChild): Added. Checkes whether the child or any of its siblings following it will generate a line box in the flow. (WebCore::RenderBlock::skipWhitespace):

2007-07-13 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

  • editing/pasteboard/4861080-expected.checksum:
  • editing/pasteboard/4861080-expected.png:
  • editing/pasteboard/4861080-expected.txt:
  • fast/lists/marker-before-empty-inline-expected.checksum: Added.
  • fast/lists/marker-before-empty-inline-expected.png: Added.
  • fast/lists/marker-before-empty-inline-expected.txt: Added.
  • fast/lists/marker-before-empty-inline.html: Added.
04:47 Changeset [24254] by bdash

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

Reviewed by Alexey.

Move HTTP methods to parse Content-Type from xmlhttprequest.cpp
which is LGPL to HTTPParsers.cpp. As both files were written by the
same author and the advice to move them came from him I think this move
is what is meant to be done.

Move filenameFromHTTPContentDisposition to HTTPParsers as well. This parse
function uses Vector<String>::split and doesn't honor quoting. This needs
to be fixed in later versions.

http://bugs.webkit.org/show_bug.cgi?id=5954 and http://bugs.webkit.org/show_bug.cgi?id=14059
benefit from this change.

  • platform/network/HTTPParsers.cpp: (WebCore::filenameFromHTTPContentDisposition): (WebCore::extractMIMETypeFromMediaType): (WebCore::extractCharsetFromMediaType):
  • platform/network/HTTPParsers.h:
  • platform/network/cf/ResourceResponseCFNet.cpp:
  • xml/xmlhttprequest.cpp: (WebCore::XMLHttpRequest::responseMIMEType): (WebCore::XMLHttpRequest::didReceiveResponse):
Note: See TracTimeline for information about the timeline view.