Timeline



Aug 9, 2007:

11:08 PM Changeset in webkit [24976] by bdash
  • 12 edits in trunk

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

Reviewed by Antti.

<rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +

  • Configurations/Version.xcconfig:
  • JavaScriptCore.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between Version.xcconfig and Info.plist explicit to Xcode.

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

Reviewed by Antti.

<rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +

  • Configurations/Version.xcconfig:
  • JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between Version.xcconfig and Info.plist explicit to Xcode.

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

Reviewed by Antti.

<rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +

  • Configurations/Version.xcconfig:
  • WebCore.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between Version.xcconfig and Info.plist explicit to Xcode.

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

Reviewed by Antti.

<rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +

  • Configurations/Version.xcconfig:
  • WebKit.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between Version.xcconfig and Info.plist explicit to Xcode.
9:12 PM Changeset in webkit [24975] by weinig
  • 4 edits in trunk/LayoutTests

Reviewed by Mark Rowe.

Use index-getter instead of name-getter to better ensure
that the frame has finished loading.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-window-open.html:
8:56 PM Changeset in webkit [24974] by bdash
  • 3 edits
    4 adds in trunk

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

Reviewed by Justin Garcia.

Test: editing/selection/contains-boundaries.html

  • editing/SelectionController.cpp: (WebCore::SelectionController::contains): Changed to return true for the selection boundaries too.

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

Reviewed by Justin Garcia.

  • editing/selection/contains-boundaries-expected.checksum: Added.
  • editing/selection/contains-boundaries-expected.png: Added.
  • editing/selection/contains-boundaries-expected.txt: Added.
  • editing/selection/contains-boundaries.html: Added.
8:52 PM Changeset in webkit [24973] by bdash
  • 2 edits in trunk/WebCore

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

Reviewed by Dave Hyatt.

updateStyleSelector() is normally called when something changes that factors
into the style selector. However, updateLayoutIgnorePendingStylesheets() calls it for
a different reason, namely to account for all the preceding changes that were ignored
because of the early return in updateStyleSelector(). After that, the early return
can no longer occur, so changes are accounted for as they happen, and
updateLayoutIgnorePendingStylesheets() does not need to call updateStyleSelector()
again.

  • dom/Document.cpp: (WebCore::Document::updateLayoutIgnorePendingStylesheets): Call updateStyleSelector() only before the first layout.
8:49 PM Changeset in webkit [24972] by bdash
  • 2 edits in trunk/WebCore

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

Reviewed by Adam Roben.

  • platform/win/PopupMenuWin.cpp: (WebCore::PopupWndProc): Track the mouse only inside the popup.
8:46 PM Changeset in webkit [24971] by bdash
  • 3 edits
    4 adds in trunk

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

Reviewed by Dave Hyatt.

Test: fast/layers/scroll-rect-to-visible.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollRectToVisible): Account for borders and scroll bars.

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

Reviewed by Dave Hyatt.

  • fast/layers/scroll-rect-to-visible-expected.checksum: Added.
  • fast/layers/scroll-rect-to-visible-expected.png: Added.
  • fast/layers/scroll-rect-to-visible-expected.txt: Added.
  • fast/layers/scroll-rect-to-visible.html: Added.
7:30 PM Changeset in webkit [24970] by ggaren
  • 16 edits in trunk/WebCore

Reviewed by Dave Hyatt.


Refactored live decoded resource eviction to be more modular /
encapsulated.


This fixes one known place where we forgot to hook into the live
decoded eviction mechanism -- canvas. There might be other, unknown
places. In a canvas test page, which I broke off from the Safari
pageout test, I saw an RPRVT reduction of ~10MB.


A few renames:

  • "m_lastLiveAccessTime" => "m_lastDecodedAccessTime" because the data point we're recording is access to the resource in decoded form.


  • "liveResourceAccessed" => "didAccessDecodedData" for the same reason.
  • "pruneAllResources" => "pruneDeadResources" because this function does not prune live resources.


And the fix:
Instead of updating cache metadata at the call site whenver drawing an
image, just have an image notify its observer whenever it draws. The
observer, which is a CachedResource, can then update the metadata.


  • loader/Cache.cpp: Renames
  • loader/Cache.h: Removed stale declarations, updated comments
  • loader/CachedImage.cpp: (WebCore::CachedImage::didDraw): Implemented didDraw to update cache metadata whenever our image draws.
  • loader/CachedImage.h: Grouped parts of the ImageObserver interface.
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::deref): (WebCore::CachedResource::didAccessDecodedData): Made this function slightly more modular by allowing the caller to provide a time stamp. In theory, not all CachedResources will necessarily want to use the current paint time stamp.
  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::draw): Notify our observer that we drew. (WebCore::Image::drawPattern): ditto
  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::draw): ditto
  • platform/graphics/svg/SVGImage.cpp: (WebCore::SVGImage::draw): ditto


Removed old code at image drawing call sites:


  • rendering/RenderBox.cpp: (WebCore::RenderBox::paintBackgroundExtended):
  • rendering/RenderImage.cpp: (WebCore::RenderImage::paint):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::paint):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintBorderImage):
6:53 PM Changeset in webkit [24969] by zecke
  • 8 edits
    10 moves in trunk

WebCore:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Move the various *ClientGdk.{h,cpp} away from the WebCore directory as
of http://bugs.webkit.org/show_bug.cgi?id=14727.

  • WebCore.pro:
  • platform/gdk/TemporaryLinkStubs.cpp:

WebKit/gtk:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

As of http://bugs.webkit.org/show_bug.cgi?id=14727 move the
various *ClientGdk.{cpp,h} files from WebCore to WebKit/gtk/WebCoreSupport and
rename it from Gdk to Gtk.

  • Api/webkitgtkdefines.h:
  • Api/webkitgtkframe.cpp:
  • Api/webkitgtkframe.h:
  • Api/webkitgtkglobal.cpp:
  • Api/webkitgtkglobal.h:
  • Api/webkitgtknetworkrequest.cpp:
  • Api/webkitgtknetworkrequest.h:
  • Api/webkitgtkpage.cpp:
  • Api/webkitgtkpage.h:
  • Api/webkitgtkprivate.cpp:
  • Api/webkitgtkprivate.h:
  • Api/webkitgtksettings.cpp:
  • Api/webkitgtksettings.h:
  • WebCoreSupport/ChromeClientGtk.cpp: Renamed from WebKit/gtk/WebCoreSupport/ChromeClientGdk.cpp. (WebKitGtk::ChromeClientGtk::ChromeClientGtk): (WebKitGtk::ChromeClientGtk::chromeDestroyed): (WebKitGtk::ChromeClientGtk::windowRect): (WebKitGtk::ChromeClientGtk::setWindowRect): (WebKitGtk::ChromeClientGtk::pageRect): (WebKitGtk::ChromeClientGtk::scaleFactor): (WebKitGtk::ChromeClientGtk::focus): (WebKitGtk::ChromeClientGtk::unfocus): (WebKitGtk::ChromeClientGtk::createWindow): (WebKitGtk::ChromeClientGtk::createModalDialog): (WebKitGtk::ChromeClientGtk::show): (WebKitGtk::ChromeClientGtk::canRunModal): (WebKitGtk::ChromeClientGtk::runModal): (WebKitGtk::ChromeClientGtk::setToolbarsVisible): (WebKitGtk::ChromeClientGtk::toolbarsVisible): (WebKitGtk::ChromeClientGtk::setStatusbarVisible): (WebKitGtk::ChromeClientGtk::statusbarVisible): (WebKitGtk::ChromeClientGtk::setScrollbarsVisible): (WebKitGtk::ChromeClientGtk::scrollbarsVisible): (WebKitGtk::ChromeClientGtk::setMenubarVisible): (WebKitGtk::ChromeClientGtk::menubarVisible): (WebKitGtk::ChromeClientGtk::setResizable): (WebKitGtk::ChromeClientGtk::closeWindowSoon): (WebKitGtk::ChromeClientGtk::canTakeFocus): (WebKitGtk::ChromeClientGtk::takeFocus): (WebKitGtk::ChromeClientGtk::canRunBeforeUnloadConfirmPanel): (WebKitGtk::ChromeClientGtk::runBeforeUnloadConfirmPanel): (WebKitGtk::ChromeClientGtk::addMessageToConsole): (WebKitGtk::ChromeClientGtk::runJavaScriptAlert): (WebKitGtk::ChromeClientGtk::runJavaScriptConfirm): (WebKitGtk::ChromeClientGtk::runJavaScriptPrompt): (WebKitGtk::ChromeClientGtk::setStatusbarText): (WebKitGtk::ChromeClientGtk::shouldInterruptJavaScript): (WebKitGtk::ChromeClientGtk::tabsToLinks): (WebKitGtk::ChromeClientGtk::windowResizerRect): (WebKitGtk::ChromeClientGtk::addToDirtyRegion): (WebKitGtk::ChromeClientGtk::scrollBackingStore): (WebKitGtk::ChromeClientGtk::updateBackingStore): (WebKitGtk::ChromeClientGtk::mouseDidMoveOverElement): (WebKitGtk::ChromeClientGtk::setToolTip):
  • WebCoreSupport/ChromeClientGtk.h: Renamed from WebKit/gtk/WebCoreSupport/ChromeClientGdk.h. (WebKitGtk::ChromeClientGtk::webPage):
  • WebCoreSupport/ContextMenuClientGtk.cpp: Renamed from WebCore/page/gdk/ContextMenuClientGdk.cpp. (WebCore::ContextMenuClientGtk::contextMenuDestroyed): (WebCore::ContextMenuClientGtk::getCustomMenuFromDefaultItems): (WebCore::ContextMenuClientGtk::contextMenuItemSelected): (WebCore::ContextMenuClientGtk::downloadURL): (WebCore::ContextMenuClientGtk::copyImageToClipboard): (WebCore::ContextMenuClientGtk::searchWithGoogle): (WebCore::ContextMenuClientGtk::lookUpInDictionary): (WebCore::ContextMenuClientGtk::speak): (WebCore::ContextMenuClientGtk::stopSpeaking):
  • WebCoreSupport/ContextMenuClientGtk.h: Renamed from WebCore/page/gdk/ContextMenuClientGdk.h.
  • WebCoreSupport/EditorClientGtk.cpp: Renamed from WebCore/platform/gdk/EditorClientGdk.cpp. (WebCore::EditorClientGtk::shouldDeleteRange): (WebCore::EditorClientGtk::shouldShowDeleteInterface): (WebCore::EditorClientGtk::isContinuousSpellCheckingEnabled): (WebCore::EditorClientGtk::isGrammarCheckingEnabled): (WebCore::EditorClientGtk::spellCheckerDocumentTag): (WebCore::EditorClientGtk::shouldBeginEditing): (WebCore::EditorClientGtk::shouldEndEditing): (WebCore::EditorClientGtk::shouldInsertText): (WebCore::EditorClientGtk::shouldChangeSelectedRange): (WebCore::EditorClientGtk::shouldApplyStyle): (WebCore::EditorClientGtk::shouldMoveRangeAfterDelete): (WebCore::EditorClientGtk::didBeginEditing): (WebCore::EditorClientGtk::respondToChangedContents): (WebCore::EditorClientGtk::respondToChangedSelection): (WebCore::EditorClientGtk::didEndEditing): (WebCore::EditorClientGtk::didWriteSelectionToPasteboard): (WebCore::EditorClientGtk::didSetSelectionTypesForPasteboard): (WebCore::EditorClientGtk::selectWordBeforeMenuEvent): (WebCore::EditorClientGtk::isEditable): (WebCore::EditorClientGtk::registerCommandForUndo): (WebCore::EditorClientGtk::registerCommandForRedo): (WebCore::EditorClientGtk::clearUndoRedoOperations): (WebCore::EditorClientGtk::canUndo): (WebCore::EditorClientGtk::canRedo): (WebCore::EditorClientGtk::undo): (WebCore::EditorClientGtk::redo): (WebCore::EditorClientGtk::shouldInsertNode): (WebCore::EditorClientGtk::pageDestroyed): (WebCore::EditorClientGtk::smartInsertDeleteEnabled): (WebCore::EditorClientGtk::toggleContinuousSpellChecking): (WebCore::EditorClientGtk::toggleGrammarChecking): (WebCore::EditorClientGtk::handleKeypress): (WebCore::EditorClientGtk::handleInputMethodKeypress): (WebCore::EditorClientGtk::EditorClientGtk): (WebCore::EditorClientGtk::textFieldDidBeginEditing): (WebCore::EditorClientGtk::textFieldDidEndEditing): (WebCore::EditorClientGtk::textDidChangeInTextField): (WebCore::EditorClientGtk::doTextFieldCommandFromEvent): (WebCore::EditorClientGtk::textWillBeDeletedInTextField): (WebCore::EditorClientGtk::textDidChangeInTextArea): (WebCore::EditorClientGtk::ignoreWordInSpellDocument): (WebCore::EditorClientGtk::learnWord): (WebCore::EditorClientGtk::checkSpellingOfString): (WebCore::EditorClientGtk::checkGrammarOfString): (WebCore::EditorClientGtk::updateSpellingUIWithGrammarString): (WebCore::EditorClientGtk::updateSpellingUIWithMisspelledWord): (WebCore::EditorClientGtk::showSpellingUI): (WebCore::EditorClientGtk::spellingUIIsShowing): (WebCore::EditorClientGtk::getGuessesForWord):
  • WebCoreSupport/EditorClientGtk.h: Renamed from WebCore/platform/gdk/EditorClientGdk.h.
  • WebCoreSupport/FrameLoaderClientGtk.cpp: Renamed from WebCore/loader/gdk/FrameLoaderClientGdk.cpp. (WebCore::FrameLoaderClientGtk::FrameLoaderClientGtk): (WebCore::FrameLoaderClientGtk::userAgent): (WebCore::FrameLoaderClientGtk::createDocumentLoader): (WebCore::FrameLoaderClientGtk::dispatchWillSubmitForm): (WebCore::FrameLoaderClientGtk::committedLoad): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveAuthenticationChallenge): (WebCore::FrameLoaderClientGtk::dispatchDidCancelAuthenticationChallenge): (WebCore::FrameLoaderClientGtk::dispatchWillSendRequest): (WebCore::FrameLoaderClientGtk::assignIdentifierToInitialRequest): (WebCore::FrameLoaderClientGtk::postProgressStartedNotification): (WebCore::FrameLoaderClientGtk::postProgressEstimateChangedNotification): (WebCore::FrameLoaderClientGtk::postProgressFinishedNotification): (WebCore::FrameLoaderClientGtk::frameLoaderDestroyed): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveResponse): (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForMIMEType): (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForNewWindowAction): (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForNavigationAction): (WebCore::FrameLoaderClientGtk::createPlugin): (WebCore::FrameLoaderClientGtk::createFrame): (WebCore::FrameLoaderClientGtk::redirectDataToPlugin): (WebCore::FrameLoaderClientGtk::createJavaAppletWidget): (WebCore::FrameLoaderClientGtk::objectContentType): (WebCore::FrameLoaderClientGtk::overrideMediaType): (WebCore::FrameLoaderClientGtk::windowObjectCleared): (WebCore::FrameLoaderClientGtk::setMainFrameDocumentReady): (WebCore::FrameLoaderClientGtk::hasWebView): (WebCore::FrameLoaderClientGtk::hasFrameView): (WebCore::FrameLoaderClientGtk::dispatchDidFinishLoad): (WebCore::FrameLoaderClientGtk::frameLoadCompleted): (WebCore::FrameLoaderClientGtk::saveViewStateToItem): (WebCore::FrameLoaderClientGtk::restoreViewState): (WebCore::FrameLoaderClientGtk::shouldGoToHistoryItem): (WebCore::FrameLoaderClientGtk::privateBrowsingEnabled): (WebCore::FrameLoaderClientGtk::makeDocumentView): (WebCore::FrameLoaderClientGtk::makeRepresentation): (WebCore::FrameLoaderClientGtk::forceLayout): (WebCore::FrameLoaderClientGtk::forceLayoutForNonHTML): (WebCore::FrameLoaderClientGtk::setCopiesOnScroll): (WebCore::FrameLoaderClientGtk::detachedFromParent1): (WebCore::FrameLoaderClientGtk::detachedFromParent2): (WebCore::FrameLoaderClientGtk::detachedFromParent3): (WebCore::FrameLoaderClientGtk::detachedFromParent4): (WebCore::FrameLoaderClientGtk::loadedFromCachedPage): (WebCore::FrameLoaderClientGtk::dispatchDidHandleOnloadEvents): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveServerRedirectForProvisionalLoad): (WebCore::FrameLoaderClientGtk::dispatchDidCancelClientRedirect): (WebCore::FrameLoaderClientGtk::dispatchWillPerformClientRedirect): (WebCore::FrameLoaderClientGtk::dispatchDidChangeLocationWithinPage): (WebCore::FrameLoaderClientGtk::dispatchWillClose): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveIcon): (WebCore::FrameLoaderClientGtk::dispatchDidStartProvisionalLoad): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveTitle): (WebCore::FrameLoaderClientGtk::dispatchDidCommitLoad): (WebCore::FrameLoaderClientGtk::dispatchDidFinishDocumentLoad): (WebCore::FrameLoaderClientGtk::dispatchDidFirstLayout): (WebCore::FrameLoaderClientGtk::dispatchShow): (WebCore::FrameLoaderClientGtk::cancelPolicyCheck): (WebCore::FrameLoaderClientGtk::dispatchDidLoadMainResource): (WebCore::FrameLoaderClientGtk::revertToProvisionalState): (WebCore::FrameLoaderClientGtk::clearUnarchivingState): (WebCore::FrameLoaderClientGtk::willChangeTitle): (WebCore::FrameLoaderClientGtk::didChangeTitle): (WebCore::FrameLoaderClientGtk::finishedLoading): (WebCore::FrameLoaderClientGtk::finalSetupForReplace): (WebCore::FrameLoaderClientGtk::setDefersLoading): (WebCore::FrameLoaderClientGtk::isArchiveLoadPending): (WebCore::FrameLoaderClientGtk::cancelPendingArchiveLoad): (WebCore::FrameLoaderClientGtk::clearArchivedResources): (WebCore::FrameLoaderClientGtk::canHandleRequest): (WebCore::FrameLoaderClientGtk::canShowMIMEType): (WebCore::FrameLoaderClientGtk::representationExistsForURLScheme): (WebCore::FrameLoaderClientGtk::generatedMIMETypeForURLScheme): (WebCore::FrameLoaderClientGtk::provisionalLoadStarted): (WebCore::FrameLoaderClientGtk::didFinishLoad): (WebCore::FrameLoaderClientGtk::prepareForDataSourceReplacement): (WebCore::FrameLoaderClientGtk::setTitle): (WebCore::FrameLoaderClientGtk::setDocumentViewFromCachedPage): (WebCore::FrameLoaderClientGtk::dispatchDidReceiveContentLength): (WebCore::FrameLoaderClientGtk::dispatchDidFinishLoading): (WebCore::FrameLoaderClientGtk::dispatchDidFailLoading): (WebCore::FrameLoaderClientGtk::dispatchDidLoadResourceFromMemoryCache): (WebCore::FrameLoaderClientGtk::dispatchDidFailProvisionalLoad): (WebCore::FrameLoaderClientGtk::dispatchDidFailLoad): (WebCore::FrameLoaderClientGtk::download): (WebCore::FrameLoaderClientGtk::cancelledError): (WebCore::FrameLoaderClientGtk::blockedError): (WebCore::FrameLoaderClientGtk::cannotShowURLError): (WebCore::FrameLoaderClientGtk::interruptForPolicyChangeError): (WebCore::FrameLoaderClientGtk::cannotShowMIMETypeError): (WebCore::FrameLoaderClientGtk::fileDoesNotExistError): (WebCore::FrameLoaderClientGtk::shouldFallBack): (WebCore::FrameLoaderClientGtk::willUseArchive): (WebCore::FrameLoaderClientGtk::saveDocumentViewToCachedPage): (WebCore::FrameLoaderClientGtk::canCachePage): (WebCore::FrameLoaderClientGtk::dispatchCreatePage): (WebCore::FrameLoaderClientGtk::dispatchUnableToImplementPolicy):
  • WebCoreSupport/FrameLoaderClientGtk.h: Renamed from WebCore/loader/gdk/FrameLoaderClientGdk.h. (WebCore::FrameLoaderClientGtk::~FrameLoaderClientGtk): (WebCore::FrameLoaderClientGtk::webFrame):
  • WebCoreSupport/InspectorClientGtk.cpp: Renamed from WebCore/page/gdk/InspectorClientGdk.cpp. (WebCore::InspectorClientGtk::inspectorDestroyed): (WebCore::InspectorClientGtk::createPage): (WebCore::InspectorClientGtk::showWindow): (WebCore::InspectorClientGtk::closeWindow): (WebCore::InspectorClientGtk::attachWindow): (WebCore::InspectorClientGtk::detachWindow): (WebCore::InspectorClientGtk::highlight): (WebCore::InspectorClientGtk::hideHighlight): (WebCore::InspectorClientGtk::inspectedURLChanged):
  • WebCoreSupport/InspectorClientGtk.h: Renamed from WebCore/page/gdk/InspectorClientGdk.h.
6:28 PM Changeset in webkit [24968] by andersca
  • 2 edits in trunk/LayoutTests

Reviewed by Oliver.

<rdar://problem/5313534> REGRESSION(Leopard): Some fast/xsl tests sometimes fail on Leopard

These tests no longer fail for me, so let's try removing them from the skipped file
and see what happens.


  • mac/leopard/Skipped:
6:04 PM Changeset in webkit [24967] by andersca
  • 3 edits in trunk/WebCore

Reviewed by Maciej.

<rdar://problem/5400029> iframes with an image src rarely load image


Don't try to shrink standalone images in subframes. The resize event is not
sent for subframes which screws up the shrink-to-fit logic.


  • loader/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure): (WebCore::ImageDocument::imageChanged): (WebCore::ImageDocument::shouldShrinkToFit):
  • loader/ImageDocument.h:
5:33 PM Changeset in webkit [24966] by zecke
  • 2 edits in trunk/WebKit

Moved Gtk changelog entries from WebKit/ChangeLog to WebKit/gtk/ChangeLog.

Rubberstamped by Adam.

5:25 PM Changeset in webkit [24965] by zecke
  • 2 edits in trunk/WebKit/gtk

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

Build fix.

  • Api/webkitgtkframe.cpp:
5:19 PM Changeset in webkit [24964] by zecke
  • 8 edits
    2 deletes in trunk

WebCore:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Implement FrameLoaderClientGdk::createFrame mostly by copying
the windows implementation. A method similiar to WebFrame::loadURLIntoChild
was not introduced instead we have a simplified version similiar to the
one of the Qt port.

Remove building of WebKit/gtk/webkitgtkframedata.{cpp,h}.

  • WebCore.pro:
  • loader/gdk/FrameLoaderClientGdk.cpp: (WebCore::FrameLoaderClientGdk::createFrame):

WebKit/gtk:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Remove the create_frame virtual method of WebKitGtkPage. This method was inspired
by the Qt port but to be useful for reimplementations WebKitGtkFrameData would need
to export/expose WebCore types. WebView doesn't offer such a method so I decided to
remove it.
Add a internal constructor to WebKitGtkFrame to be used for constructing Sub-Frames. This
is currently used by FrameLoaderClientGdk::createFrame.

  • Api/webkitgtkframe.cpp:
  • Api/webkitgtkframedata.cpp: Removed.
  • Api/webkitgtkframedata.h: Removed.
  • Api/webkitgtkpage.cpp:
  • Api/webkitgtkpage.h:
  • Api/webkitgtkprivate.h:
4:44 PM Changeset in webkit [24963] by zecke
  • 10 edits
    1 add in trunk

WebCore:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Use the ScrollView/Widget design of the Windows port to only use one
native window for the whole page. This will make it possible to implement
FrameLoaderClientGdk::createFrame.

In contrast to the windows port the ScrollBars are GtkWidgets. To paint them
at the right position we need to position them correctly. To not scroll the
ScrollBar's belonging to the ScrollView a ScrollViewScrollbar is introduced with
a different geometryChanged method.

To allow the Gtk+ way of scrolling the ScrollView allows to get GtkAdjustments
set. In this case no ScrollViewScrollbar will be created.

  • platform/ScrollView.h:
  • platform/Widget.h:
  • platform/gdk/PlatformScreenGdk.cpp: (WebCore::screenDepth):
  • platform/gdk/PlatformScrollBar.h:
  • platform/gdk/PlatformScrollBarGdk.cpp: (PlatformScrollbar::PlatformScrollbar): (PlatformScrollbar::~PlatformScrollbar): (PlatformScrollbar::setRect): (PlatformScrollbar::geometryChanged):
  • platform/gdk/ScrollViewGdk.cpp: (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): (WebCore::ScrollView::ScrollViewPrivate::~ScrollViewPrivate): (WebCore::ScrollViewScrollbar::ScrollViewScrollbar): (WebCore::ScrollViewScrollbar::geometryChanged): (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar): (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged): (WebCore::ScrollView::ScrollViewPrivate::valueChanged): (WebCore::ScrollView::ScrollViewPrivate::windowClipRect): (WebCore::ScrollView::setGtkAdjustments): (WebCore::ScrollView::updateContents): (WebCore::ScrollView::update): (WebCore::ScrollView::visibleWidth): (WebCore::ScrollView::resizeContents): (WebCore::ScrollView::contentsX): (WebCore::ScrollView::scrollOffset): (WebCore::ScrollView::maximumScroll): (WebCore::ScrollView::scrollBy): (WebCore::ScrollView::suppressScrollbars): (WebCore::ScrollView::setHScrollbarMode): (WebCore::ScrollView::setVScrollbarMode): (WebCore::ScrollView::setScrollbarsMode): (WebCore::ScrollView::setFrameGeometry): (WebCore::ScrollView::addChild): (WebCore::ScrollView::removeChild): (WebCore::ScrollView::scrollRectIntoViewRecursively): (WebCore::ScrollView::wheelEvent): (WebCore::ScrollView::updateScrollbars): (WebCore::ScrollView::windowToContents): (WebCore::ScrollView::contentsToWindow): (WebCore::ScrollView::scrollbarUnderMouse): (WebCore::ScrollView::convertChildToSelf): (WebCore::ScrollView::convertSelfToChild): (WebCore::ScrollView::paint): (WebCore::ScrollView::geometryChanged): (WebCore::ScrollView::scroll): (WebCore::ScrollView::addToDirtyRegion): (WebCore::ScrollView::scrollBackingStore): (WebCore::ScrollView::updateBackingStore):
  • platform/gdk/WidgetGdk.cpp: (WebCore::WidgetPrivate::gdkDrawable): (WebCore::Widget::Widget): (WebCore::Widget::setContainingWindow): (WebCore::Widget::containingWindow): (WebCore::Widget::frameGeometry): (WebCore::Widget::setFrameGeometry): (WebCore::Widget::setParent): (WebCore::Widget::parent): (WebCore::Widget::setCursor): (WebCore::Widget::show): (WebCore::Widget::hide): (WebCore::Widget::removeFromParent): (WebCore::Widget::paint): (WebCore::Widget::invalidate): (WebCore::Widget::invalidateRect): (WebCore::Widget::convertToContainingWindow): (WebCore::Widget::convertFromContainingWindow): (WebCore::Widget::convertChildToSelf): (WebCore::Widget::convertSelfToChild): (WebCore::Widget::suppressInvalidation): (WebCore::Widget::setSuppressInvalidation):

WebKit/gtk:
2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Follow the changes of ScrollView in WebCore and call setContainingWindow, set the
GtkAdjustment of the GtkLayout and reimplement the set_scroll_adjustments method and pass
the GtkAdjustments to ScrollView.
This makes having one GdkWindow for the complete FrameTree possible.

  • gtk/Api/webkitgtkframe.cpp:
  • gtk/Api/webkitgtkpage.cpp:
3:53 PM Changeset in webkit [24962] by adele
  • 2 edits in trunk/WebCore

Fix by Brady, reviewed by me.

Fix for <rdar://problem/5380697> connection:willSendRequest:redirectResponse: is called on every NSURLConnection

  • platform/network/mac/ResourceHandleMac.mm: (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Work around a behavior change in CFNetwork where willSendRequest gets called more often by returning early.
2:37 PM Changeset in webkit [24961] by spadma
  • 2 edits in S60/trunk/WebKit

2007-08-03 yadavall <sriram.yadavalli@nokia.com>

Reviewed by Sachin Padma (sachin.padma@nokia.com).
DESC: Widget related Browser control "reserved" APIs need to be extensible
http://bugs.webkit.org/show_bug.cgi?id=14874

  • BrowserControl/inc/BrCtlInterface.h:
2:37 PM Changeset in webkit [24960] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-08-03 yadavall <sriram.yadavalli@nokia.com>

Reviewed by Sachin Padma (sachin.padma@nokia.com).
DESC: Widget related Browser control "reserved" APIs need to be extensible
http://bugs.webkit.org/show_bug.cgi?id=14874

  • BrowserControl/inc/BrCtlInterface.h:
2:32 PM Changeset in webkit [24959] by spadma
  • 6 edits in S60/trunk/WebKit

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

Reviewed by Sachin Padma.
DESC: Scroll support for plugins.
http://waplabdc.nokia-boston.com/browser/users/MaheshKK/geturl.html

  • WebKit/Plugin/inc/npapi.h: (NPPVariable): Added variable NPPVPluginFocusPosition
  • WebKit/Plugin/inc/PluginWin.h (class CPluginWin ): Added memeber function MoveWindow
  • WebKit/Plugin/inc/PluginAdapterInterface.h: (class MPluginNotifier:TNotificationType): Added two enum's EPluginActivated and EPluginDeactivated
  • WebKit/Plugin/src/NpnImplementation.cpp: (NpnSetValue()): Handled case for NPPVPluginFocusPosition
  • WebKit/Plugin/src/PluginWin.cpp: (CPluginWin::ProcessEventL): Send EPluginActivated and EPluginDeactivated notification when activating and deactivating plugin (CPluginWin::MoveWindow) : New function added to Move/scroll window by aOffset and also sets the current cursor position
2:29 PM Changeset in webkit [24958] by spadma
  • 6 edits in S60/branches/3.1m/WebKit

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

Reviewed by Sachin Padma.
DESC: Scroll support for plugins.
http://waplabdc.nokia-boston.com/browser/users/MaheshKK/geturl.html

  • WebKit/Plugin/inc/npapi.h: (NPPVariable): Added variable NPPVPluginFocusPosition
  • WebKit/Plugin/inc/PluginWin.h (class CPluginWin ): Added memeber function MoveWindow
  • WebKit/Plugin/inc/PluginAdapterInterface.h: (class MPluginNotifier:TNotificationType): Added two enum's EPluginActivated and EPluginDeactivated
  • WebKit/Plugin/src/NpnImplementation.cpp: (NpnSetValue()): Handled case for NPPVPluginFocusPosition
  • WebKit/Plugin/src/PluginWin.cpp: (CPluginWin::ProcessEventL): Send EPluginActivated and EPluginDeactivated notification when activating and deactivating plugin (CPluginWin::MoveWindow) : New function added to Move/scroll window by aOffset and also sets the current cursor position


10:51 AM Changeset in webkit [24957] by darin
  • 4 edits
    1 add in trunk/WebCore

Reviewed by Antti.

  • fix <rdar://problem/4889753> REGRESSION: Selection doesn't continue with drag selecting when autoscrolling vertically (in Notes as well as Safari)

The bug doesn't happen inside DumpRenderTree, so I was unable to make an automated
regression test.

  • manual-tests/autoscroll-when-outside-window.html: Added.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::autoscroll): Removed unneeded null check for the layer's renderer and the document, neither of which can be null. Call the new updateSelectionForMouseDrag instead of doing selection updating here.
  • page/EventHandler.h:
  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseDraggedEvent): Refactored most of the logic about updating the selection into updateSelectionForMouseDrag. (WebCore::EventHandler::updateSelectionForMouseDrag): Added. The public version of this function takes no parameters, and is for use from auto-scrolling code. The private version of this function takes node and point parameters and contains the shared code, including everything from updateSelectionForMouseDragOverPosition. Aside from the code motion, variable name changes, and sharing more code, this differs from the old code in RenderLayer::autoscroll in the following ways:

1) The old code did hit testing only in the layer that was auto-scrolling,

and the new code instead starts the hit testing at the root layer, which is
better because it's the same thing we do for mouse moved events. Further,
the code to do this by calling convertToLayerCoords had a bug because the
x and y variables were uninitialized.

2) The old code passed false for active to HitTestRequest, which was wrong.

The new code passes true. This flag needs to be true for hit testing done
while the mouse is down and false for hit testing done while the mouse is up.

3) The old code did not have the SVG-specific logic to match the mouse moved case.
4) The old code wouldn't do any selection updating if the return value from hitTest

was false, which is incorrect. The new code ignores the return value as it should.

8:49 AM Changeset in webkit [24956] by thatcher
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Don't copy character-sets.txt and make-charset-table.pl to WebCore's resources.

8:28 AM Changeset in webkit [24955] by spadma
  • 8 edits in S60/branches/3.1m

2007-08-09 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>

Reviewed by Sachin.
DESC: [S60] Problem with CPluginSkin::PluginScriptableObject
http://bugs.webkit.org/show_bug.cgi?id=14383

  • WebKit\Plugin\inc\PluginWin.h: Added CPluginWin::GetPluginUid()
  • WebKit\Plugin\inc\PluginHandler.h: Added CPluginInfo::Uid()
  • WebKit\Plugin\inc\PluginSkin.h: Added CPluginSkin::IsPluginScriptableL()
  • WebKit\Plugin\src\PluginSkin.cpp: (CPluginSkin::IsPluginScriptableL())
  • WebKit\Plugin\src\PluginWin.cpp: (CPluginWin::GetPluginUid())

Aug 8, 2007:

11:37 PM Changeset in webkit [24954] by bdash
  • 1 copy in tags/Safari-4523

New tag.

10:19 PM Changeset in webkit [24953] by bdakin
  • 5 edits
    4 adds in trunk

LayoutTests:

Reviewed by Geoff Garen.

Test for <rdar://problem/5286443>, http://bugs.webkit.org/
show_bug.cgi?id=14268 REGRESSION: Radio buttons don't stay selected
due to unclosed <label> tags

  • fast/forms/radio-nested-labels-expected.checksum: Added.
  • fast/forms/radio-nested-labels-expected.png: Added.
  • fast/forms/radio-nested-labels-expected.txt: Added.
  • fast/forms/radio-nested-labels.html: Added.

WebCore:

Reviewed by Geoff Garen.

Fx for <rdar://problem/5286443>, http://bugs.webkit.org/
show_bug.cgi?id=14268 REGRESSION: Radio buttons don't stay selected
due to unclosed <label> tags

This patch maintains the behavior that allows <label> tags to nest.
This matches WinIE, and appears to match the spec, since the spec
does not explicitly say that they cannot nest. It fixes the bug
instead by calling setDefaultHandled() in two places it should have
been called anyway. This keeps the appropriate button checked as
the event bubbles.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::postDispatchEventHandler):
  • html/HTMLLabelElement.cpp: (WebCore::HTMLLabelElement::defaultEventHandler):
9:15 PM Changeset in webkit [24952] by justing
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Oliver.


<rdar://problem/5387578> Crash at ReplaceSelectionCommand::doApply() when pasting just after table cell content

  • editing/pasteboard/5387578-expected.checksum: Added.
  • editing/pasteboard/5387578-expected.png: Added.
  • editing/pasteboard/5387578-expected.txt: Added.
  • editing/pasteboard/5387578.html: Added.

WebCore:

Reviewed by Oliver.

<rdar://problem/5387578> Crash at ReplaceSelectionCommand::doApply() when pasting just after table cell content


ReplaceSelectionCommand::doApply() inserts a line break before insertion
to prevent block nesting. InsertLineBreakCommand::doApply was accidently
destroying a text node when it removed insignificant whitespace and then
setting a nil endingSelection().

  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply): If insignificant whitespace removal removes textNode from the document, insert a text node containing the non-breaking space we were attempting to insert and then insert it at the position that the removed textNode occupied.
8:59 PM Changeset in webkit [24951] by ggaren
  • 6 edits in trunk/WebCore

Reviewed by Maciej Stachowiak.

Added a thrash check to live decoded resource eviction.


Here's the strategy: Stamp every image with its paint time. Don't evict
a live decoded resource until another resource paints with a reasonably
(1 second) larger time stamp.


If no other resource paints, or another resource paints, but very soon
after the resource in question, the resource in question is very likely
to paint again soon. In fact, it's probably still on screen. So we
leave it alone. (Previously, we evicted it on a timer, but that would
evict a resource that was still on screen, hurting speed without
helping memory use.)

In theory, this algorithm allows a single large resource or closely
related set of resources to linger in the live decoded cache even
though the cache is over its limit. However, that can only happen as
long as no other resource ever paints again, which guarantees an
absolute cap on cache memory usage from then on. Also, the resources
will only linger as long as they remain live. Upon going dead, they
will flush. Also, these circumstances are so rare that they are almost
impossible to encounter in the wild. So don't sweat it.


Stop evicting if the next resource painted too recently:


  • loader/Cache.cpp: (WebCore::Cache::pruneLiveResources):
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::liveResourceAccessed):
  • loader/CachedResource.h:

Track the paint time stamp in Frame. We do this to give a consistent
stamp to all resources painted in a single paint operation (in case the
operation takes a significant amount of time), and to avoid excessive
calls to system time functions, which hurt the PLT:

  • page/Frame.cpp: (WebCore::Frame::paint):
  • page/Frame.h: (WebCore::Frame::currentPaintTimeStamp):
8:16 PM Changeset in webkit [24950] by weinig
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

Update project file to reflect the moving of character-sets.txt
and make-charset-table.pl to platform/mac a while ago.

  • WebCore.xcodeproj/project.pbxproj:
6:56 PM Changeset in webkit [24949] by kdecker
  • 1 edit in trunk/WebKit/ChangeLog

Tweaked ChangeLog entry

6:53 PM Changeset in webkit [24948] by justing
  • 7 edits
    4 adds in trunk

LayoutTests:

Reviewed by Harrison.


<rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click

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


Added a FIXME about an extraneous newline:

  • editing/deleting/5390681-expected.checksum:
  • editing/deleting/5390681-expected.png:
  • editing/deleting/5390681-expected.txt:
  • editing/deleting/5390681.html:ada

WebCore:

Reviewed by Harrison.

<rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click


  • dom/Position.cpp: (WebCore::Position::trailingWhitespacePosition): Use VisiblePosition::characterAfter to look for a trailing space. The old code would incorrectly return a position before a non-editable space if it had a collapsed space before it.
6:49 PM Changeset in webkit [24947] by kdecker
  • 21 edits in trunk/WebKit

Reviewed by Anders Carlsson.

Fixed: <rdar://problem/5394449> Stop using some Carbon UI APIs for 64 bit


#ifdef'd out Netscape style plug-ins on 64-bit because Mac OS X doesn't support for 64-bit Carbon.


  • Plugins/WebBaseNetscapePluginStream.h:
  • Plugins/WebBaseNetscapePluginStream.mm:
  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (+[WebBaseNetscapePluginView getCarbonEvent:]): (TSMEventHandler):
  • Plugins/WebBaseNetscapePluginViewInternal.h:
  • Plugins/WebBaseNetscapePluginViewPrivate.h:
  • Plugins/WebBasePluginPackage.m: (+[WebBasePluginPackage pluginWithPath:]):
  • Plugins/WebNetscapePluginEmbeddedView.h:
  • Plugins/WebNetscapePluginEmbeddedView.mm:
  • Plugins/WebNetscapePluginPackage.h:
  • Plugins/WebNetscapePluginPackage.m:
  • Plugins/WebNetscapePluginStream.h:
  • Plugins/WebNetscapePluginStream.mm:
  • Plugins/WebPluginDatabase.m: (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
  • Plugins/npapi.m:
  • WebCoreSupport/WebFrameBridge.mm: (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
  • WebView/WebFrame.mm:
  • WebView/WebFramePrivate.h:
  • WebView/WebHTMLView.mm: (-[NSArray _web_makePluginViewsPerformSelector:withObject:]):
  • WebView/WebHTMLViewInternal.h:
5:56 PM Changeset in webkit [24946] by weinig
  • 9 edits
    7 adds in trunk

LayoutTests:

Reviewed by Brady.

Test that protocol and host compares are case-insensitive.

  • http/tests/security/cross-frame-access-port-expected.txt:
  • http/tests/security/cross-frame-access-protocol-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase.html: Added.
  • http/tests/security/host-compare-case-insensitive-expected.txt: Added.
  • http/tests/security/host-compare-case-insensitive.html: Added.
  • http/tests/security/protocol-compare-case-insensitive-expected.txt: Added.
  • http/tests/security/protocol-compare-case-insensitive.html: Added.
  • http/tests/security/resources/cross-frame-iframe.html:
  • http/tests/security/resources/localhost-accesssor.html: Added.

WebCore:

Reviewed by Brady.

Make protocol and host compares case-insensitive.

  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript):
  • dom/Document.cpp: (WebCore::Document::initSecurityPolicyURL):
  • platform/DeprecatedString.cpp: (WebCore::equalIgnoringCase):
  • platform/DeprecatedString.h: (WebCore::equalIgnoringCase):
4:42 PM Changeset in webkit [24945] by justing
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Harrison.


<rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click

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

WebCore:

Reviewed by Harrison.

<rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click

  • dom/Position.cpp: (WebCore::Position::leadingWhitespacePosition): Added checks to prevent expansion across editable an boundary. (WebCore::Position::trailingWhitespacePosition): Ditto.
4:00 PM Changeset in webkit [24944] by bdash
  • 4 edits in trunk

Versioning.

3:55 PM Changeset in webkit [24943] by bdash
  • 1 copy in tags/Safari-5523

New tag.

3:11 PM Changeset in webkit [24942] by adele
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by John.

Test for for <rdar://problem/5393798> 100% reproducible crash in WebCore::Scrollbar::setValue

  • fast/events/mousedown_in_scrollbar-expected.txt: Added.
  • fast/events/mousedown_in_scrollbar.html: Added.

WebCore:

Reviewed by John.

Fix for <rdar://problem/5393798> 100% reproducible crash in WebCore::Scrollbar::setValue

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent): If the hit testing originally determined the event was in a scrollbar, refetch the MouseEventWithHitTestResults in case the scrollbar widget was destroyed when the mouse event was handled.
3:01 PM Changeset in webkit [24941] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-08-08 yadavall <sriram.yadavalli>

Reviewed by Sachin (sachin.padma@nokia.com).
DESC: CRAS-757S3Q:Center key press event not being sent to webcore
http://bugs.webkit.org/show_bug.cgi?id=14593

  • BrowserView/src/KeyEventHandler.cpp: (CKeyEventHandler::HandleOfferKeyEventL):
2:51 PM Changeset in webkit [24940] by spadma
  • 3 edits in S60/branches/3.1m/WebKit

2007-08-06 vmalaiya, <vikram.malaiya@nokia.com>

Reviewed by Sachin
DESC: VMAA-75EP3L - Browser plugin does not implement memory collection on an out-of-memory condition
http://bugs.webkit.org/show_bug.cgi?id=14753


  • Plugin/inc/PluginSkin.h: (CPluginSkin::Frame):
  • Plugin/src/PluginSkin.cpp: (COOMPluginCollector::COOMPluginCollector): (COOMPluginCollector::~COOMPluginCollector): (COOMPluginCollector::Collect): (COOMPluginCollector::Restore): (COOMPluginCollector::Priority): (COOMPluginCollector::IsCollecting): (CPluginSkin::ConstructL): (CPluginSkin::~CPluginSkin): (CPluginSkin::RemovePluginWin):
2:49 PM Changeset in webkit [24939] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-08-08 yadavall <sriram.yadavalli@nokia.com>

Reviewed by NOBODY (sachin.padma@nokia.com).
DESC: SWIP-75QJJN - BrCtl ContentSize returning SizeHint and not ContentSize
http://bugs.webkit.org/show_bug.cgi?id=14871

  • BrowserControl/src/BrCtl.cpp: (CBrCtl::ContentSize):
1:46 PM Changeset in webkit [24938] by weinig
  • 4 edits
    35 adds in trunk

LayoutTests:

Reviewed by Geoff Garen.

Tests for <rdar://problem/5354635>

  • http/tests/security/dataURL: Added.
  • http/tests/security/dataURL/resources: Added.
  • http/tests/security/dataURL/resources/foreign-domain-data-url-accessee-iframe.html: Added.
  • http/tests/security/dataURL/resources/foreign-domain-data-url-accessee-opened-frame.html: Added.
  • http/tests/security/dataURL/resources/foreign-domain-data-url-accessor-iframe.html: Added.
  • http/tests/security/dataURL/resources/foreign-domain-data-url-accessor-opened-frame.html: Added.
  • http/tests/security/dataURL/resources/foreign-domain-data-url-window-location.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-subframe-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-subframe.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url.html: Added.
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-window-open-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-window-open.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame.html: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt: Added.
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open.html: Added.

WebCore:

Reviewed by Geoff Garen.

Fix for <rdar://problem/5354635>

Match Firefox's model for data: URLs by not allowing them script access
to any frames other then itself.

  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript):
  • dom/Document.cpp: (WebCore::Document::initSecurityPolicyURL):
12:19 PM Changeset in webkit [24937] by darin
  • 2 edits in trunk/WebCore

Reviewed by Kevin Decker.

  • fix for <rdar://problem/5390708> CrashTracer: [USER] 27 crashes in Safari at com.apple.WebCore: WTF::HashMap<etc>::set + 68, beneath pruneUnretainedIconsAtStartup
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Eliminate an unnecessary HashMap from the implementation; we can just use the m_pageURLToRetainCount map directly. This simplifies the code and allows us to handle the empty string, which otherwise poses a problem for HashMap.
10:37 AM Changeset in webkit [24936] by antti
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.


Test for <rdar://problem/5391576>
Malformed table innerHTML causes Safari to crash in HTMLParser::handleError (14894)

  • fast/table/incomplete-table-in-fragment-2-expected.txt: Added.
  • fast/table/incomplete-table-in-fragment-2.html: Added.

WebCore:

Reviewed by Darin.


Fix for <rdar://problem/5391576>
Malformed table innerHTML causes Safari to crash in HTMLParser::handleError (14894)


Add null checks to protect against


e.innerHTML = "<tr>text</tr>";


type cases. Normal assumptions about document tree structure don't hold when parsing
fragments. Results don't match Firefox in all cases. It seems to have some sort of
anything-goes fragment parsing mode.


  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):
10:14 AM Changeset in webkit [24935] by kmccullo
  • 9 edits
    6 adds in trunk

LayoutTests:

Reviewed by Maciej and Hyatt.

  • <rdar://problem/4976879> REGRESSION: Safari doesn't work with Zimbra enhanced login.
    • Reverting a previous change, and modifying how documents are created so that we better match other browsers behavior with respect to namespaceURIs.
  • dom/xhtml/level1/core/hc_documentcreateelementcasesensitive-expected.txt:
  • fast/dom/Document/replace-child-expected.txt:
  • http/tests/misc/createElementNamespace1-expected.txt: Added.
  • http/tests/misc/createElementNamespace1.xml: Added.
  • http/tests/misc/createElementNamespace2-expected.txt: Added.
  • http/tests/misc/createElementNamespace2.xhtml: Added.
  • http/tests/misc/createElementNamespace3-expected.txt: Added.
  • http/tests/misc/createElementNamespace3.html: Added.

WebCore:

Reviewed by Maciej and Hyatt.

  • <rdar://problem/4976879> REGRESSION: Safari doesn't work with Zimbra enhanced login.
  • Reverting a previous change, and modifying how documents are created so that we better match other browsers behavior with respect to namespaceURIs.
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::createElement):
  • dom/Document.h:
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::createElement):
  • html/HTMLDocument.h:
9:37 AM Changeset in webkit [24934] by beidson
  • 4 edits in trunk

LayoutTests:

Reviewed and landed by Brady

Updated test case because of fix for <http://bugs.webkit.org/show_bug.cgi?id=13422>

Bug 13422: REGRESSION: Page reload loses page position

  • http/tests/navigation/success200-reload-expected.txt:

WebCore:

Reviewed and landed by Brady

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

Bug 13422: REGRESSION: Page reload loses page position

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::updateHistoryForReload):
9:24 AM Changeset in webkit [24933] by staikos
  • 2 edits in trunk/JavaScriptCore

Make it compile with Qt4 unicode

9:20 AM Changeset in webkit [24932] by rwlbuis
  • 21 edits
    8 adds in branches/feature-branch

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=11909
Regression: large SVG from Illustrator comes out blank

Fix last issue with the Illustrator file by making relativeBBox
calculation take into account viewBox.

9:17 AM Changeset in webkit [24931] by zecke
  • 3 edits in trunk/WebKit

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

Reviewed by Niko.

We only need to set the Settings of the Page once so do it in
WebKitGtkPage instead of WebKitGtkFrame.

  • gtk/Api/webkitgtkframe.cpp:
  • gtk/Api/webkitgtkpage.cpp:
8:57 AM Changeset in webkit [24930] by zecke
  • 2 edits in trunk/WebCore

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

Reviewed by Niko.

Be paranoid and disconnect from the signal before going away.

  • platform/gdk/PlatformScrollBarGdk.cpp: (PlatformScrollbar::~PlatformScrollbar):
8:18 AM Changeset in webkit [24929] by zecke
  • 3 edits in trunk/WebKit

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

Reviewed by Niko.

Instead of reimplementing the general event method, reimplement
the specific mouse, expose, keyboard event methods.

Call the finalize implementation of the base class from WebKitGtkPage
and WebKitGtkFrame.

  • gtk/Api/webkitgtkframe.cpp:
  • gtk/Api/webkitgtkpage.cpp:
3:44 AM Changeset in webkit [24928] by zecke
  • 2 edits in trunk/WebCore

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

Reviewed by Niko.

Use GraphicsContext::translatePoint in RenderThemeGdk to paint at the
right position.
This is needed as the Gtk+ theming code does not know about the translation
of the GraphicsContext.

  • platform/gdk/RenderThemeGdk.cpp: (WebCore::RenderThemeGdk::paintCheckbox): (WebCore::RenderThemeGdk::paintRadio): (WebCore::RenderThemeGdk::paintButton):
3:28 AM Changeset in webkit [24927] by zecke
  • 6 edits in trunk

WebCore:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Niko.

Implement Widget::paint for the Gtk port. This is needed to paint
Widgets in z-order. The original GdkEventExpose is stored within the
GraphicsContext and then used to draw the children. This is similiar
to gtk_container_propagate_expose but we try to honor the GraphicsConntext
translation.

  • platform/gdk/WidgetGdk.cpp: (WebCore::Widget::paint):
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContext::setGdkExposeEvent): (WebCore::GraphicsContext::gdkExposeEvent): (WebCore::GraphicsContext::gdkDrawable): (WebCore::GraphicsContext::translatePoint):

WebKit:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Niko.

Remove the custom painting in favor of the Widget::paint
implementation.

  • gtk/Api/webkitgtkpage.cpp:
1:02 AM Changeset in webkit [24926] by zecke
  • 3 edits in trunk/WebCore

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

Reviewed by Oliver Hunt.

Implement PlatformScrollbar by calling ScrollBar::setValue from
gtkValueChange connected to the value-changed signal of the
GtkAdjustment.
Update 'value' of the GtkAdjustment in updateThumbPosition and
set upper, page-increment, step-increment and page_size in
updateThumbProportion.

This is from bug http://bugs.webkit.org/show_bug.cgi?id=14795.

  • platform/gdk/PlatformScrollBar.h:
  • platform/gdk/PlatformScrollBarGdk.cpp: (PlatformScrollbar::PlatformScrollbar): (PlatformScrollbar::updateThumbPosition): (PlatformScrollbar::updateThumbProportion): (PlatformScrollbar::gtkValueChanged):
12:01 AM Changeset in webkit [24925] by ggaren
  • 10 edits in trunk/WebCore

Reviewed by Maciej Stachowiak. Based on earlier review from Dave Hyatt.

First chunk of work for <rdar://problem/5326009> Make non-browser
WebKit clients have no memory cache, or a very tiny one


Layout tests pass.


Removed decodedSizeWillChange mechanism because my last patch to
change the live resources list to a strict LRU model made that code
vestigial.


Renamed "liveResourcesList" and related stuff =>
"liveDecodedResourcesList" because only live resources with decoded
data are kept in the list.

  • loader/CachedImage.cpp: (WebCore::CachedImage::decodedSizeChanged): Only add ourselves to the list if we're live, our decoded size has grown, and we're not in the list already. (Otherwise, either we're not live, we're not decoded, or we're already in the list.)
  • loader/CachedResource.cpp: (WebCore::CachedResource::liveResourceAccessed): Only re-insert ourselves into the list if we're already there. (In theory, this should be always, but it's a little more clear to check.)

Aug 7, 2007:

10:43 PM Changeset in webkit [24924] by weinig
  • 3 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Oliver.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14897
Decompilation of double negation fails and produces invalid or incorrect code

Test: fast/js/function-decompilation-operators.html

  • kjs/nodes2string.cpp: (UnaryPlusNode::streamTo): Put space after unary operator. Matches Firefox. (NegateNode::streamTo): Diito. (MultNode::streamTo): Put spaces around binary operator. Matches Firefox. (AddNode::streamTo): Ditto.

LayoutTests:

Reviewed by Oliver.

Test for http://bugs.webkit.org/show_bug.cgi?id=14897
Decompilation of double negation fails and produces invalid or incorrect code

  • fast/js/function-decompilation-operators-expected.txt: Added.
  • fast/js/function-decompilation-operators.html: Added.
7:06 PM Changeset in webkit [24923] by zecke
  • 9 edits
    1 move
    1 delete in trunk

WebCore:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Kill class FrameGdk and move the stubs to page/gdk/FrameGdk.cpp and the
remainings into WebKitGtkFrame.
The DRT functionality of class FrameGdk is currently lost.

  • WebCore.pro:
  • loader/gdk/FrameLoaderClientGdk.cpp:
  • loader/gdk/FrameLoaderClientGdk.h:
  • page/gdk/FrameGdk.cpp: Renamed from WebCore/platform/gdk/FrameGdk.cpp. (WebCore::Frame::issueTransposeCommand): (WebCore::Frame::cleanupPlatformScriptObjects): (WebCore::Frame::dragImageForSelection): (WebCore::Frame::dashboardRegionsChanged):
  • platform/gdk/FrameGdk.h: Removed.
  • platform/gdk/TemporaryLinkStubs.cpp: Removed Frame stub, added the loadResourceIntoArray stub
  • platform/gdk/WidgetGdk.cpp:

WebKit:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Moved code from class FrameGdk into WebKitGtkFrame. Update the
webkitgrkprivate.h header file to not include FrameGdk.h.

  • gtk/Api/webkitgtkframe.cpp:
  • gtk/Api/webkitgtkprivate.h:
6:40 PM Changeset in webkit [24922] by ddkilzer
  • 2 edits
    1 move in trunk/LayoutTests

LayoutTests:

Reviewed by Oliver.

Move plain-text-document.txt to the resources subdirectory.

  • fast/loader/plain-text-document.html: Updated URL to plain-text-document.txt.
  • fast/loader/plain-text-document.txt: Removed.
  • fast/loader/resources/plain-text-document.txt: Copied from fast/loader/plain-text-document.txt.
5:59 PM Changeset in webkit [24921] by weinig
  • 17 edits
    19 adds in trunk/LayoutTests

Reviewed by Geoff Garen.

Make tests not depend on data: URLs in preparation of
data: URL policy change.

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe.html:
  • editing/pasteboard/resources: Added.
  • editing/pasteboard/resources/drag-image-to-contenteditable-iframe.html: Added.
  • fast/dom/HTMLDocument/frameless-location-bugzilla10837.html:
  • fast/dom/HTMLDocument/resources: Added.
  • fast/dom/HTMLDocument/resources/frameless-location-bugzilla10837-iframe.html: Added.
  • fast/dom/exception-no-frame-inline-script-crash.html:
  • fast/dom/exception-no-frame-timeout-crash.html:
  • fast/dom/null-document-location-assign-crash.html:
  • fast/dom/null-document-location-href-put-crash.html:
  • fast/dom/null-document-location-put-crash.html:
  • fast/dom/null-document-location-replace-crash.html:
  • fast/dom/null-document-window-open-crash.html:
  • fast/dom/resources/exception-no-frame-inline-script-crash-iframe.html: Added.
  • fast/dom/resources/exception-no-frame-timeout-crash-iframe.html: Added.
  • fast/events/frame-programmatic-focus.html:
  • fast/events/iframe-object-onload.html:
  • fast/events/mouseover-mouseout.html:
  • fast/events/mouseover-mouseout2.html:
  • fast/events/resources/iframe-object-onload-iframe-1.html: Added.
  • fast/events/resources/iframe-object-onload-iframe-2.html: Added.
  • fast/events/resources/iframe-object-onload-iframe-3.html: Added.
  • fast/events/resources/iframe-object-onload-object-1.html: Added.
  • fast/events/resources/iframe-object-onload-object-2.html: Added.
  • fast/events/resources/iframe-object-onload-object-3.html: Added.
  • fast/events/resources/mouseover-mouseout-iframe.html: Added.
  • fast/events/resources/mouseover-mouseout2-iframe-1.html: Added.
  • fast/events/resources/mouseover-mouseout2-iframe-2.html: Added.
  • fast/events/resources/mouseover-mouseout2-iframe-3.html: Added.
  • fast/events/resources/mouseover-mouseout2-iframe-4.html: Added.
  • fast/events/resources/mouseover-mouseout2-iframe-5.html: Added.
  • fast/loader/opaque-base-url-expected.txt:
  • fast/loader/opaque-base-url.html:
  • plugins/plugin-remove-subframe.html:
  • plugins/resources/plugin-remove-subframe-iframe.html: Added.
5:54 PM Changeset in webkit [24920] by zecke
  • 4 edits in trunk/WebKit

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

Reviewed by Adam.

Change variable names to follow the Coding-Style. Replace occurences
of a_b with aB and place the '*' correctly.

  • gtk/Api/webkitgtkframe.cpp:
  • gtk/Api/webkitgtkpage.cpp:
  • gtk/Api/webkitgtkprivate.h:
5:45 PM Changeset in webkit [24919] by darin
  • 6 edits in trunk/JavaScriptCore

Reviewed by Adele.

  • fix <rdar://problem/5383104> REGRESSION: XHR.responseText is null instead of empty string in http/tests/xmlhttprequest/zero-length-response.html

The new code to handle out of memory conditions was turning a "" into a null string.

  • kjs/ustring.h: Removed UCharReference, which has long been obsolete and unused. Removed copyForWriting, which was only used for the upper/lowercasing code and for UCharReference.
  • kjs/ustring.cpp: (KJS::allocChars): Removed special case that made this fail (return 0) when passed 0. Instead assert that we're not passed 0. Also added an overflow check for two reasons: 1) for sizes that aren't checked this prevents us from allocating a buffer that's too small, and 2) for sizes where we overflowed in the expandedSize function and returned overflowIndicator, it guarantees we fail. (KJS::reallocChars): Ditto. (KJS::UString::expandedSize): Return a large number, overflowIndicator, rather than 0 for cases where we overflow. (KJS::UString::spliceSubstringsWithSeparators): Added a special case for empty string so we don't call allocChars with a length of 0. (KJS::UString::operator=): Added special characters for both 0 and empty string so we match the behavior of the constructor. This avoids calling allocChars with a length of 0 and making a null string rather than an empty string in that case, and also matches the pattern used in the rest of the functions. (KJS::UString::operator[]): Made the return value const so code that tries to use the operator to modify the string will fail.
  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction): Rewrote uppercasing and lowercasing functions so they don't need copyForWriting any more -- it wasn't really doing any good for optimization purposes. Instead use a Vector and releaseBuffer.
  • wtf/unicode/icu/UnicodeIcu.h: Eliminate one of the versions of toLower/toUpper -- we now only need the version where both a source and destination buffer is passed in, not the one that works in place.
  • wtf/unicode/qt4/UnicodeQt4.h: Ditto.
5:27 PM Changeset in webkit [24918] by zimmermann
  • 128 edits in branches/feature-branch

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=14896 (SVG InlineText/Flow box sizes don't take rotated glyphs into account)

Introduce new helper function calculateGlyphBoundaries, which takes into account any per-character transformation.
This fixes box size calculations in svg/W3C-SVG-1.1/text-text-07-t.svg, svg/batik/text/textEffect3.svg (rotated glyphs)
-> These strings can be properly selected now, just as well as text path elements.

5:17 PM Changeset in webkit [24917] by zecke
  • 5 edits in trunk

WebCore:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Remove the event handling code and move it to WebKit/gtk/Api/webkitgtkpage.cpp

  • platform/gdk/FrameGdk.cpp:
  • platform/gdk/FrameGdk.h:

WebKit:
2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Adam.

Reimplement GtkWidget::event and handle the keyboard and mouse
events inside WebKitGtkPage.

  • gtk/Api/webkitgtkpage.cpp: (FrameGdkExposeData::frame_gdk_expose_child): (FrameGdkExposeData::webkit_gtk_page_rendering_area_handle_gdk_event): (FrameGdkExposeData::webkit_gtk_page_register_rendering_area_events): (FrameGdkExposeData::webkit_gtk_page_class_init):
4:09 PM Changeset in webkit [24916] by zimmermann
  • 95 edits in branches/feature-branch

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=13909 (SVG text selection doesn't work with RTL text)

Use drawHighlightForText() to draw the selection, instead of my home-brewn solution.
Affected code in SVGRootInlineBox::paintSelectionForTextBox. Removed not anymore needed
helper function cummulatedWidthOfSelectionRange.

Dump all contained InlineTextBox(es) in SVGRenderTreeAsText, take into account multiple
child text boxes in ie. a RenderSVGInlineText objects (which happens for RTL text and
LTR text cases where newlines were involved - see changed testcase results.)
This affects a lot of LTR tests which actually had more than one child text box, that
wasn't taken properly into account before (in terms of selection, not rendering.)

Fix selection for RTL text by taking box start offsets into account in closestCharacterToPosition()
and by offering RTL text selection special cases in svgCharacterHitsPosition().

Centralized the creation of a TextStyle object for text selection/painting in a new helper function
svgTextStyleForInlineTextBox. Add new helper functions calculateGlyphWidth/calculateGlyphHeight to
centralize these calculations -> use these new helpers everywhere to avoid code duplication.

A single fix in bidi.cpp was needed to fix SVG's unicode-bidi/direction handling, to fix text-intro-02-b.svg.
SVG didacts that the 'direction' attribute is ignored if unicode-bidi is set to 'normal' (default).
Discussed with Mitz.

4:06 PM Changeset in webkit [24915] by hyatt
  • 3 edits in trunk/WebKit

Fix a botched backout of the Quicktime plugin clipping fix that broke Java. The plugin view should not
be set to autosize with the parent view. Also, cleanup of script objects was removed accidentally as
well.

Reviewed by olliej

  • Plugins/WebPluginController.mm: (-[WebPluginController destroyPlugin:]): (-[WebPluginController destroyAllPlugins]):
  • WebCoreSupport/WebFrameBridge.mm: (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]):
3:04 PM Changeset in webkit [24914] by zecke
  • 8 edits in trunk/WebCore

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

Reviewed by Niko.

Switch from the generic union GdkEvent to the specific struct GdkEvent*. This is needed
to make WebKitGtkPage handle the events by reimplementing the default handlers in the near
future.

  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformMouseEvent.h:
  • platform/PlatformWheelEvent.h:
  • platform/gdk/FrameGdk.cpp: (WebCore::FrameGdk::handleGdkEvent):
  • platform/gdk/KeyEventGdk.cpp: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
  • platform/gdk/MouseEventGdk.cpp: (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  • platform/gdk/WheelEventGdk.cpp: (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2:39 PM Changeset in webkit [24913] by antti
  • 1 edit
    2 deletes in trunk/LayoutTests

Remove a test that was a bit too slow on older hardware.


  • fast/block/basic/stress-shallow-nested-expected.txt: Removed.
  • fast/block/basic/stress-shallow-nested.html: Removed.
11:19 AM Changeset in webkit [24912] by alp
  • 1 edit in trunk/WebKit/gtk/Api/webkitgtkpage.cpp

Supplemental whitespace fix

11:11 AM Changeset in webkit [24911] by alp
  • 3 edits in trunk/WebKit

2007-08-07 Xan Lopez <xan@gnome.org>

Reviewed by Mark Rowe.

http://bugs.webkit.org/show_bug.cgi?id=14815
[gtk] API implementation: reload

  • gtk/Api/webkitgtkpage.cpp: Implement the webkit_gtk_page_reload() function.
10:17 AM Changeset in webkit [24910] by staikos
  • 2 edits in trunk/WebCore

Some QStyles don't handle negative maximum very well

7:29 AM Changeset in webkit [24909] by zbujtas
  • 2 edits in S60/branches/3.1m/WebCore

w3liu, reviewed by <zbujtas@gmail.com>

DESC: [S60] SLON-75MAFV: <<OTC>> OTC - BTT - 6.800.5620 WCSS TABLE ROW HEIGHT
http://bugs.webkit.org/show_bug.cgi?id=14872

7:26 AM Changeset in webkit [24908] by zbujtas
  • 2 edits in S60/trunk/WebCore

w3liu, reviewed by <zbujtas@gmail.com>

DESC: [S60] SLON-75MAFV: <<OTC>> OTC - BTT - 6.800.5620 WCSS TABLE ROW HEIGHT
http://bugs.webkit.org/show_bug.cgi?id=14872

4:15 AM Changeset in webkit [24907] by antti
  • 9 edits
    6 adds in trunk

LayoutTests:

Reviewed by Hyatt.


Tests for <rdar://problem/5102553>
Mail spins trying to display or edit a specific long plain text message in WebCore::TimerBase::...


  • added performance test. With debug build on MBP this takes about 1.5s to run.
  • added test case that shows some additional progression from the patch (less leftover anonymous boxes).


  • fast/block/basic/stress-shallow-nested-expected.txt: Added.
  • fast/block/basic/stress-shallow-nested.html: Added.
  • fast/block/float/nestedAnonymousBlocks2-expected.checksum: Added.
  • fast/block/float/nestedAnonymousBlocks2-expected.png: Added.
  • fast/block/float/nestedAnonymousBlocks2-expected.txt: Added.
  • fast/block/float/nestedAnonymousBlocks2.html: Added.

WebCore:

Reviewed by Hyatt.

Fix <rdar://problem/5102553>
Mail spins trying to display or edit a specific long plain text message in WebCore::TimerBase::...

Calling removeLeftoverAnonymousBoxes() from RenderBlock::addChildToFlow() made adding children
O(n2) in simple cases (repeated <div><div></div></div> for example).


I couldn't find any limited fix so here is a more complete one. It removes iterating/recursing
removeLeftoverAnonymousBoxes() method altogether. Instead of hunting around wildly, just get
rid of anonymous boxes with block children when they occur.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addChildToFlow):
  • rendering/RenderButton.h: (WebCore::RenderButton::removeLeftoverAnonymousBlock):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeLeftoverAnonymousBlock):
  • rendering/RenderContainer.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::handleDynamicFloatPositionChange): (WebCore::RenderObject::removeLeftoverAnonymousBlock):
  • rendering/RenderObject.h:
  • rendering/RenderTextControl.h: (WebCore::RenderTextControl::removeLeftoverAnonymousBlock):
12:50 AM Changeset in webkit [24906] by rwlbuis
  • 2 edits in branches/feature-branch/WebCore

Reviewed by Oliver.

Do not export some symbols for internal functions, saves some bytes.

Aug 6, 2007:

11:25 PM Changeset in webkit [24905] by weinig
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Fix changelog

11:21 PM Changeset in webkit [24904] by weinig
  • 3 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Oliver.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14891
Decompilation of try block immediately following "else" fails

Test: fast/js/toString-try-else.html

  • kjs/nodes2string.cpp: (TryNode::streamTo): Add newline before else.

LayoutTests:

Reviewed by Oliver.

Test for http://bugs.webkit.org/show_bug.cgi?id=14891
Decompilation of try block immediately following "else" fails

  • fast/js/toString-try-else-expected.txt: Added.
  • fast/js/toString-try-else.html: Added.
10:41 PM Changeset in webkit [24903] by bdash
  • 1 edit in tags/Safari-5522.13.1/WebKit/Configurations/Version.xcconfig

Versioning.

10:41 PM Changeset in webkit [24902] by bdash
  • 3 edits in tags/Safari-5522.13.1/WebKit

Merge r24811.

Reviewed by Anders Carlsson and Kevin Decker.

  • fix <rdar://problem/5377432> Removal of MakeDataExecutable from 64-bit breaks WebKit build

The trick was to ifdef out more of the code that's only needed to support CFM, which exists
only for 32-bit PowerPC.

  • Plugins/WebNetscapePluginPackage.h: Define a SUPPORT_CFM symbol in this internal header when we support CFM. We support it only on 32-bit PowerPC. Only define the isBundle, isCFM, and connID fields when SUPPORT_CFM is on. Also use ResFileRefNum instead of SInt16.
  • Plugins/WebNetscapePluginPackage.m: Only compile the function pointer and transition vector functions when SUPPORT_CFM is on. (-[WebNetscapePluginPackage openResourceFile]): Put the non-bundle case inside a SUPPORT_CFM ifdef, since all non-CFM plug-ins are bundles. (-[WebNetscapePluginPackage closeResourceFile:]): Ditto. (-[WebNetscapePluginPackage _initWithPath:]): Use SUPPORT_CFM to compile out the code for non-bundle and bundle-based CFM plug-ins, and code that sets isBundle and isCFM. (-[WebNetscapePluginPackage executableType]): Put the CFM case inside SUPPORT_CFM. (-[WebNetscapePluginPackage load]): Put the non-bundle and CFM cases inside SUPPORT_CFM. There was a bit of dead code here. (-[WebNetscapePluginPackage _unloadWithShutdown:]): Put the non-bundle case inside SUPPORT_CFM.
8:24 PM Changeset in webkit [24901] by weinig
  • 3 edits in trunk/LayoutTests

Reviewed by Oliver.

Update test to not timeout.

  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level-expected.txt:
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level.html:
8:08 PM Changeset in webkit [24900] by weinig
  • 7 edits
    32 adds in trunk

LayoutTests:

Reviewed by Maciej.

Tests for <rdar://problem/5354689>

  • http/tests/security/javascriptURL: Added.
  • http/tests/security/javascriptURL/resources: Added.
  • http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessee-iframe.html: Added.
  • http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessee-opened-frame.html: Added.
  • http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessor-iframe.html: Added.
  • http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessor-opened-frame.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-to-javascript-url-sub-frame-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-to-javascript-url-sub-frame.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame.html: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-window-open-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-window-open.html: Added.
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-subframe-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-subframe.html: Added.
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-window-open-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-window-open.html: Added.
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-subframe-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-subframe.html: Added.
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-window-open-expected.txt: Added.
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-window-open.html: Added.
  • http/tests/security/resources/cross-frame-access.js:

WebCore:

Reviewed by Maciej.

Fix for <rdar://problem/5354689>

  • Use document variable to determine permissions instead of traversing the frame tree.
  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::initSecurityPolicyURL):
  • dom/Document.h: (WebCore::Document::securityPolicyURL):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::setOpener): We must re-initialize the safeScript URL when setting the opener because the opener was not known at Document construction.
7:31 PM Changeset in webkit [24899] by bdash
  • 4 edits in trunk

Versioning.

7:22 PM Changeset in webkit [24898] by bdash
  • 6 edits
    2 deletes in trunk

Roll out r24889.

6:45 PM Changeset in webkit [24897] by bdash
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by Maciej.

<rdar://problem/5388774> REGRESSION: Hang occurs after clicking "Attach a file " link in a new .Mac message

Attempting to acquire the JSLock inside CollectorHeap::forceLock can lead to a deadlock if the thread currently
holding the lock is waiting on the thread that is forking. It is not considered safe to use system frameworks
after a fork without first execing[*] so it is not particularly important to ensure that the collector and
fastMalloc allocators are unlocked in the child process. If the child process wishes to use JavaScriptCore it
should exec after forking like it would to use any other system framework.
[*]: <http://lists.apple.com/archives/Cocoa-dev/2005/Jan/msg00676.html>

  • kjs/CollectorHeapIntrospector.cpp: Remove forceLock and forceUnlock implementations.
  • kjs/CollectorHeapIntrospector.h: Stub out forceLock and forceUnlock methods.
  • wtf/FastMalloc.cpp: Ditto.
5:10 PM Changeset in webkit [24896] by hyatt
  • 2 edits in trunk/WebCore

Make sure to clear out the parent of the ellipsis box so that it doesn't
trigger the consistency check for line boxes.

Reviewed by darin

  • ChangeLog:
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::detachEllipsisBox):
5:09 PM Changeset in webkit [24895] by bdash
  • 1 edit in tags/Safari-5522.13.1/JavaScriptCore/Configurations/Version.xcconfig

Versioning.

5:09 PM Changeset in webkit [24894] by bdash
  • 2 edits in tags/Safari-5522.13.1/JavaScriptCore

Merge r24884.

Reviewed by Anders.

  • fix <rdar://problem/5387589> 9A514: Quartz Composer crash on launch in KJS::jsString
  • API/JSBase.cpp: (JSEvaluateScript): Turn NULL for sourceURL into UString::null(), just as JSObjectMakeFunction already does. (JSCheckScriptSyntax): Ditto.
3:33 PM Changeset in webkit [24893] by bdash
  • 1 copy in tags/Safari-5522.13.1

New tag.

2:50 PM Changeset in webkit [24892] by hyatt
  • 4 edits in trunk/WebCore

Back out fix for <rdar://problem/5366582> and replace it with the correct
fix. Make sure to delete the line box tree before splitting an inline flow
into a continuation. The added layout test for the original checkin covers
the problem.

Reviewed by beth

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::makeChildrenNonInline): Back out fix.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy): Back out fix.
  • rendering/RenderInline.cpp: (WebCore::RenderInline::splitFlow): Here's the new fix.
2:43 PM Changeset in webkit [24891] by ggaren
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.


Touching a file to force a re-build.

1:53 PM Changeset in webkit [24890] by darin
  • 2 edits in trunk/WebCore
  • fix release build
  • rendering/RenderText.h: (WebCore::RenderText::checkConsistency): Add missing const.
1:10 PM Changeset in webkit [24889] by andersca
  • 6 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

<rdar://problem/5360748>
REGRESSION(r21002-r21003) Flash widget sniffer doesn't work (affects iWeb)


Add test case by Kurt Revis.


  • fast/dom/NodeList/invalidate-node-lists-when-parsing-expected.txt: Added.
  • fast/dom/NodeList/invalidate-node-lists-when-parsing.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/5360748>
REGRESSION(r21002-r21003) Flash widget sniffer doesn't work


Add a per-document NodeList counter. When parsing, only call notifyNodeListsChildrenChanged
if the document has node lists.


  • dom/ContainerNode.cpp: (WebCore::ContainerNode::addChild):
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h: (WebCore::Document::addNodeList): (WebCore::Document::removeNodeList): (WebCore::Document::hasNodeLists):
  • dom/Node.cpp: (WebCore::Node::registerNodeList): (WebCore::Node::unregisterNodeList):
1:02 PM Changeset in webkit [24888] by sfalken
  • 1 edit in trunk/WebKit/win/WebKit.vcproj/PRODUCTVERSION

Bump version.

12:51 PM Changeset in webkit [24887] by darin
  • 14 edits
    2 adds in trunk

LayoutTests:

Beth made this reduction/test, Geoff and I both helped refine it.

  • test for <rdar://problem/5366582> crash on it.eurosport.yahoo.com page
  • fast/dynamic/inline-to-block-crash-expected.txt: Added.
  • fast/dynamic/inline-to-block-crash.html: Added.

WebCore:

Reviewed by Maciej.

  • fix <rdar://problem/5366582> crash on it.eurosport.yahoo.com page

Test: fast/dynamic/inline-to-block-crash.html

I added some consistency checks for the line box tree, which helped me figure out
what was going on with this bug pretty quickly.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::makeChildrenNonInline): This is the actual fix. If the block needs layout, then don't try to delete the line box tree because it's going to be rebuilt as part of layout. More importantly, the child list in the tree is no good, so we will crash if we try to delete here.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy): Here's a second fix. We have the same issue in the code that handles anonymous blocks -- if it's already running as part of layout, we can't walk through the already partly destroyed line box tree. This crashed in one of the layout tests.
  • rendering/InlineBox.h: Made more fields private, since I wanted to do a bit more work in setters. Made setNextOnLine() and setPrevOnLine() assert that the box has a parent. Made parent() assert that the parent is good. Also removed the unused isChildOfParent() function.
  • rendering/InlineBox.cpp: (WebCore::InlineBox::~InlineBox): At destruction time, if we are still attached to a parent, tag that parent as having a "bad" child list.
  • rendering/InlineFlowBox.h: Added m_reasonForBadChildList, checkConsistency(), setHasBadChildList(), and hasBadChildList(). Also changed firstChild() and lastChild() so they call checkConsistency() and made all the fields private instead of protected.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): Added consistency checks before and after adding a box to the line. Also checked that next and prev start out as 0. Changed manipulation of next and prev to use accessor functions. (WebCore::InlineFlowBox::removeChild): Added consistency checks before and after removing the box from the line. (WebCore::InlineFlowBox::deleteLine): Use firstChild() instead of getting at m_firstChild directly so we get a consistency check. Also set the parent to 0 before destroying so that the assertion in ~InlineBox will work properly. (WebCore::InlineFlowBox::extractLine): Ditto. (WebCore::InlineFlowBox::attachLine): Ditto. (WebCore::InlineFlowBox::adjustPosition): Ditto. (WebCore::InlineFlowBox::checkConsistency): Added. Checks consistency of the child list by looking at the parent, next, and prev pointers. Also asserts that we are not yet in the "bad" child list state, which happens if one of our children is destroyed without removing it from our list; that's normal, but once it happens we can't look at our child list again.
  • rendering/InlineTextBox.h:
  • rendering/InlineTextBox.cpp: Remove unnneeded destroy/new/delete functions -- these are inherited from the InlineBox base class and don't need to be defined again.
  • rendering/RenderFlow.h:
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::~RenderFlow): Assert that there are no children to confirm that we didn't leak something. (WebCore::RenderFlow::extractLineBox): Added consistency checks before and after removing a run of boxes from the list. (WebCore::RenderFlow::attachLineBox): Added consistency checks before and after adding a box to the list. (WebCore::RenderFlow::removeLineBox): Added consistency checks before and after removing a box from the list. (WebCore::RenderFlow::createInlineBox): Added consistency checks before and after adding a box to the list. (WebCore::RenderFlow::checkConsistency): Added.
  • rendering/RenderText.h:
  • rendering/RenderText.cpp: (WebCore::RenderText::~RenderText): Assert that there are no children to confirm that we didn't leak something. (WebCore::RenderText::extractTextBox): Added consistency checks before and after removing a run of boxes from the list. (WebCore::RenderText::attachTextBox): Added consistency checks before and after adding a box to the list. (WebCore::RenderText::removeTextBox): Added consistency checks before and after removing a box from the list. (WebCore::RenderText::deleteTextBoxes): Added code to call setHasBadChildList since this destroys line boxes without informing the parent. (WebCore::RenderText::checkConsistency): Added.
12:49 PM Changeset in webkit [24886] by adele
  • 4 edits
    4 adds in trunk

LayoutTests:

Reviewed by Darin.

Test for <rdar://problem/5382483> REGRESSION: <select> element's text is clipped when a CSS line-height is specified

  • fast/forms/menulist-restrict-line-height-expected.checksum: Added.
  • fast/forms/menulist-restrict-line-height-expected.png: Added.
  • fast/forms/menulist-restrict-line-height-expected.txt: Added.
  • fast/forms/menulist-restrict-line-height.html: Added.

WebCore:

Reviewed by Darin.

Fix for <rdar://problem/5382483> REGRESSION: <select> element's text is clipped when a CSS line-height is specified

Don't honor line-height for styled popup buttons. We already don't honor line-height for unstyled popups
and since IE and FF don't honor it at all for popups, we shouldn't either.

  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::adjustMenuListButtonStyle):
12:34 PM Changeset in webkit [24885] by darin
  • 2 edits in trunk/JavaScriptCore

Rubber stamped by Geoff.

  • kjs/ustring.h: Added an assertion which would have helped us find the previous bug more easily.
12:00 PM Changeset in webkit [24884] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Anders.

  • fix <rdar://problem/5387589> 9A514: Quartz Composer crash on launch in KJS::jsString
  • API/JSBase.cpp: (JSEvaluateScript): Turn NULL for sourceURL into UString::null(), just as JSObjectMakeFunction already does. (JSCheckScriptSyntax): Ditto.
11:08 AM Changeset in webkit [24883] by ddkilzer
  • 2 edits in trunk/WebKitTools

2007-08-06 Nigel Tao <nigeltao@gnome.org>

Reviewed by David Kilzer.

Fix bug 14745: WebKitTools/Scripts/run-launcher doesn't speak --gdk
http://bugs.webkit.org/show_bug.cgi?id=14745

  • Scripts/run-launcher: Scrub the "--gdk" out of the command line args, if given, so that GdkLauncher doesn't try to interpret it as a URL.
11:07 AM Changeset in webkit [24882] by sfalken
  • 3 edits in trunk

Build fix

9:30 AM BuildingGdk edited by alp@atoker.com
Update curl backend/theming notes (diff)
9:23 AM BuildingGdk edited by alp@atoker.com
Add note about not being Gtk+WebCore, and update build deps (diff)

Aug 5, 2007:

10:48 PM Changeset in webkit [24881] by pewtermoose
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.

  • kjs/string_object.cpp: (KJS::StringProtoFunc::callAsFunction):
7:23 PM Changeset in webkit [24880] by darin
  • 3 edits in trunk/LayoutTests
  • mac/leopard/Skipped: Removed 3 non-platform-specific failing tests.
  • win/Skipped: Ditto.
7:07 PM Changeset in webkit [24879] by darin
  • 1 edit in trunk/LayoutTests/ChangeLog

Change log entry to mention that my fix was an attempt (that didn't work).

7:05 PM Changeset in webkit [24878] by antti
  • 6 edits in trunk/WebCore

Reviewed by Darin.

Fix <rdar://problem/5378214>
Mail crashes at RenderLayer::paintLayer() when dragging a selection over To Do text


ObjC interface does not guarantee that Document::updateRendering() gets called after
modification are made to document. This can lead to situation where paint()
is invoked with document still dirty which can then crash in number of interesting ways.


  • add hasChangedChild() as needsLayout() condition. layout() will then call recalcStyle() catching most cases and making sure document is not dirty when entering painting.
  • protect recalcStyle() and layout() from being executed during painting. There are some cases needsLayout() protection does not cover.


No layout test, these states are very hard or impossible to reach using Javascript interface
(which generally guarantees that updateRendering() is done right after execution).

  • dom/Document.cpp: (WebCore::Document::recalcStyle):
  • page/Frame.cpp: (WebCore::Frame::paint): (WebCore::Frame::setPaintRestriction): (WebCore::Frame::isPainting): (WebCore::FramePrivate::FramePrivate):
  • page/Frame.h:
  • page/FramePrivate.h:
  • page/FrameView.cpp: (WebCore::FrameView::layout): (WebCore::FrameView::needsLayout):
6:03 PM Changeset in webkit [24877] by darin
  • 2 edits in trunk/LayoutTests
  • fix <rdar://problem/5383382> Drag/drop of image is failing in fast/events/standalone-image-drag-to-editable.html
  • fast/events/standalone-image-drag-to-editable.html: Fixed race condition in test by using a frame counter rather than running the test after a particular frame loads.
5:58 PM Changeset in webkit [24876] by darin
  • 2 edits in trunk/LayoutTests
  • fast/dom/delete-contents-expected.txt: Updated results, which changed due to r24831, which allows comments as children of <html>.
3:52 AM Changeset in webkit [24875] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.


<rdar://problem/5369110> CrashTracer: [USER] reproducible crash opening particular mail messages

  • platform/network/mac/ResourceHandleMac.mm: (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Make sure to retain self for the body of this method. Otherwise, the willSendRequest could trigger events which will cancel the connection, and we access ivars after this point. (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): retain and release in the right order.
3:16 AM Changeset in webkit [24874] by darin
  • 4 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fix <rdar://problem/5371862> crash in Dashcode due to Quartz Composer JavaScript garbage collector reentrancy
  • API/JSBase.cpp: (JSGarbageCollect): Don't call collector() if isBusy() returns true.
  • kjs/collector.h: Added isBusy(), removed the unused return value from collect()
  • kjs/collector.cpp: Added an "operation in progress" flag to the allocator. (KJS::Collector::allocate): Call abort() if an operation is already in progress. Set the new flag instead of using the debug-only GCLock. (KJS::Collector::collect): Ditto. (KJS::Collector::isBusy): Added.
Note: See TracTimeline for information about the timeline view.