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

Timeline



Aug 10, 2007:

7:31 PM Changeset in webkit [25007] by bdash
  • 3 edits in trunk/WebCore

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

Build fix. Change "#ifdef PLATFORM(GDK)" to "#if PLATFORM(GDK)".

  • page/FrameView.cpp:
  • page/FrameView.h:
6:27 PM Changeset in webkit [25006] by zecke
  • 7 edits in trunk

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

Reviewed by Adam.

Copy the WebFrame::layoutIfNeededRecursive method of the windows port
to FrameView to be used by the Gtk+ port. Simplify the implementation due
moving it to the FrameView class.

Implement the ScrollView::children() method for the Gtk+ port and make it
available to the FrameView as children() is used within the layoutIfNeededRecursive method.

  • page/FrameView.cpp: (WebCore::FrameView::layoutIfNeededRecursive):
  • page/FrameView.h:
  • platform/ScrollView.h:
  • platform/gdk/ScrollViewGdk.cpp:

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

Reviewed by Adam.

To not hit the needsLayout() assert of Frame::paint for subframes we need to
make sure they are layed out. Use the newly created FrameView::layoutIfNeededRecursive
method to do this.

  • Api/webkitgtkpage.cpp:
5:43 PM Changeset in webkit [25005] by zecke
  • 5 edits
    2 adds in trunk

WebCore:

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

Reviewed by Adam.

To fix text selection make the PlatformMouseEvent set the pressed
button even when moving the mouse.

Add building of the WebKit::DragClient stubs as they are needed to
make text selection work.

  • WebCore.pro:
  • platform/gdk/MouseEventGdk.cpp: (WebCore::PlatformMouseEvent::PlatformMouseEvent):

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

Reviewed by Adam.

Fix text selection by setting a DragClient when creating the Page. Now
that we have a DragClient we can free the Page when WebKitGtkPage gets
destructed.

  • Api/webkitgtkpage.cpp:
  • WebCoreSupport/DragClientGtk.cpp: Added. (WebKit::DragClient::willPerformDragDestinationAction): (WebKit::DragClient::willPerformDragSourceAction): (WebKit::DragClient::actionMaskForDrag): (WebKit::DragClient::dragSourceActionMaskForPoint): (WebKit::DragClient::startDrag): (WebKit::DragClient::createDragImageForLink):
  • WebCoreSupport/DragClientGtk.h: Added.
5:09 PM Changeset in webkit [25004] by thatcher
  • 3 edits in trunk/WebKit

Reviewed by Mark Rowe.

<rdar://problem/5403302> HIWebView.h should be #ifdefed out for 64-bit

  • Carbon/HIWebView.h: #ifdef out the header in 64-bit. Adds a comment about 32-bit only.
  • Carbon/CarbonUtils.h: Ditto.
5:05 PM Changeset in webkit [25003] by adachan
  • 2 edits in trunk/WebKit/win

2007-08-10 Ada Chan <adachan@apple.com>

Reviewed by Adam and Darin.


<rdar://problem/5403095> Crash in WebViewWndProc after closing a window
We are seeing another case where WM_SETFOCUS is sent after WM_DESTROY has been handled in WebView.
Bail early in the wndProc if WebView is set to be destroyed.

  • WebView.cpp: (WebViewWndProc):
4:49 PM Changeset in webkit [25002] by andersca
  • 7 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin and Maciej.

<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 and Maciej.

<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. Also, make sure to reset the cache when the node list count has
been 0 and a new node list is registered to avoid any stale cache information.


  • 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):
4:47 PM Changeset in webkit [25001] by oliver
  • 3 edits in trunk/LayoutTests

Reviewed by Mark.

Update layout test to avoid problems caused by differences in whitespace
for NSAttributedString descriptions on Tiger and Leopard

  • fast/text/attributed-substring-from-range-expected.txt:
  • fast/text/attributed-substring-from-range.html:
4:24 PM Changeset in webkit [25000] by thatcher
  • 35 edits
    1 delete in trunk

JavaScriptCore:

Reviewed by Adam.

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

Disable the NPAPI for 64-bit on Mac OS X.

  • Configurations/JavaScriptCore.xcconfig: Use the 64-bit export file.
  • JavaScriptCore.xcodeproj/project.pbxproj: Create a 64-bit export file that filters out the NPN fnctions.
  • bindings/NP_jsobject.cpp: #ifdef out this for 64-bit on Mac OS X
  • bindings/NP_jsobject.h: Ditto.
  • bindings/c/c_class.cpp: Ditto.
  • bindings/c/c_class.h: Ditto.
  • bindings/c/c_instance.cpp: Ditto.
  • bindings/c/c_instance.h: Ditto.
  • bindings/c/c_runtime.cpp: Ditto.
  • bindings/c/c_runtime.h: Ditto.
  • bindings/c/c_utility.cpp: Ditto.
  • bindings/c/c_utility.h: Ditto.
  • bindings/npapi.h: Ditto.
  • bindings/npruntime.cpp: Ditto.
  • bindings/npruntime.h: Ditto.
  • bindings/npruntime_impl.h: Ditto.
  • bindings/npruntime_priv.h: Ditto.
  • bindings/runtime.cpp: (KJS::Bindings::Instance::createBindingForLanguageInstance): don't creat an NPObject on Mac OS X in 64-bit.

WebCore:

Reviewed by Adam.

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

Disable NPObject use in 64-bit on Mac OS X.

  • Configurations/WebCore.xcconfig: Add a framework search path to the sub-framworks of Carbon.
  • WebCore.xcodeproj/project.pbxproj: Filter out the Frame::windowScriptNPObject() symbol in 64-bit.
  • bindings/objc/DOM.mm: (-[DOMElement _NPObject]): Return null in 64-bit.
  • config.h: Set WTF_USE_NPOBJECT to 0 in 64-bit Mac OS X.
  • page/Frame.cpp: (WebCore::Frame::cleanupScriptObjects): Add more #if USE(NPOBJECT) blocks where needed.
  • page/Frame.h: Ditto.
  • page/mac/FrameMac.mm: (WebCore::Frame::createScriptInstanceForWidget): Ditto.
  • page/mac/WebCoreFrameBridge.h: Ditto.
  • page/mac/WebCoreFrameBridge.mm: Ditto.

WebKit:

Reviewed by Adam.

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

Disable NPObject use in 64-bit on Mac OS X. Also generate the 64-bit export file.

  • Configurations/WebKit.xcconfig: Point to the generated 64-bit export file.
  • Plugins/WebBasePluginPackage.h:
  • Plugins/npfunctions.h: #ifdef out this header in 64-bit on Mac OS X.
  • WebKit.LP64.exp: Removed.
  • WebKit.xcodeproj/project.pbxproj: Generate the the 64-bit export file.
  • WebKitPrefix.h: Define WTF_USE_NPOBJECT.
3:20 PM Changeset in webkit [24999] by adele
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Justin.

  • editing/selection/inline-closest-leaf-child-expected.checksum: Added.
  • editing/selection/inline-closest-leaf-child-expected.png: Added.
  • editing/selection/inline-closest-leaf-child-expected.txt: Added.
  • editing/selection/inline-closest-leaf-child.html: Added.

WebCore:

Reviewed by Justin.

Test: editing/selection/inline-closest-leaf-child.html

  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::closestLeafChildForXPos): Return the last leaf if it's the closest match, or if no other leaf matches (for example if all leaves are list markers or non-editable where editable is required).
1:57 PM Changeset in webkit [24998] by andersca
  • 4 edits in trunk

WebCore:

Reviewed by Geoff.

<rdar://problem/5390568>
REGRESSION: –[WebFrame loadHTMLString:baseURL:] leaks the data source.


Revert the fix for <rdar://problem/5133420> which caused us to not cancel
substitute data loads. It's better to remove the assertion in the WebKit layer.


  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didCancel):

WebKit:

Reviewed by Geoff.

<rdar://problem/5390568>
REGRESSION: –[WebFrame loadHTMLString:baseURL:] leaks the data source


If the identifier is not in the map, just bail out instead of asserting. This is a better fix for
<rdar://problem/5133420> because WebCore shouldn't have to worry about the lifetime of WebKit objects.


  • WebView/WebDocumentLoaderMac.mm: (WebDocumentLoaderMac::decreaseLoadCount):
12:39 PM Changeset in webkit [24997] by oliver
  • 5 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

Added new layout test to validate fix for <rdar://problem/5000470> REGRESSION: ATOK IM: reconvert returns incorrect symbol due to inconsistent range domains in TSM

Corrected fast/text/attributed-substring-from-range to account for additional whitespace, and to be correct.

  • fast/text/attributed-substring-from-range-expected.txt:
  • fast/text/attributed-substring-from-range-in-textfield-expected.txt: Added.
  • fast/text/attributed-substring-from-range-in-textfield.html: Added.
  • fast/text/attributed-substring-from-range.html:

WebKit:

Reviewed by Darin.

Fixed <rdar://problem/5000470> REGRESSION: ATOK IM: reconvert returns incorrect symbol due to inconsistent range domains in TSM by working around <rdar://problem/5400551> [NSAttributedString(WebKitExtras) _web_attributedStringFromRange:] adds whitespace to the requested range

We truncate the returned string to the expected length.

  • WebView/WebHTMLView.mm: (-[WebHTMLView attributedSubstringFromRange:]):
11:59 AM Changeset in webkit [24996] by spadma
  • 2 edits in S60/branches/3.1m/WebKit

2007-10-08 Mahesh Kulkarni <mahesh.kulkarni>

Reviewed by Sachin.
DESC: Buildbreak for the fix of Problem with CPluginSkin::PluginScriptableObject
http://bugs.webkit.org/show_bug.cgi?id=14383

  • WebKit\Plugin\src\PluginSkin.cpp: Added "err" variable and defined KPluginScriptabilityAllowed in xls
11:45 AM Changeset in webkit [24995] by weinig
  • 3 edits in trunk/WebCore

Rubber-stamped by Adam Roben.

Fix Windows, Qt and Gtk build.

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
11:10 AM Changeset in webkit [24994] by weinig
  • 8 edits
    30 adds in trunk

LayoutTests:

Reviewed by Maciej.

Tests for <rdar://problem/5395618>

  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode.html: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt: Added.
  • http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS.html: Added.

WebCore:

Reviewed by Maciej.

Fix for <rdar://problem/5395618>

Use checkNodeSecurity when setting the 'src' or 'location' attribute of an
iframe or frame element.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSAttrCustom.cpp: Added. (WebCore::JSAttr::setValue): Call checkNodeSecurity for attributes with a current iframe or frame ownerElement when setting src to a javascript: URL.
  • bindings/js/JSElementCustom.cpp: Added. (WebCore::allowSettingSrcToJavascriptURL): (WebCore::JSElement::setAttribute): Call checkNodeSecurity when element is a frame or iframe and setting he src attribute to a javascript: URL. (WebCore::JSElement::setAttributeNode): Ditto. (WebCore::JSElement::setAttributeNS): Ditto. (WebCore::JSElement::setAttributeNodeNS): Ditto.
  • bindings/js/JSHTMLFrameElementCustom.cpp: Added. (WebCore::allowSettingJavascriptURL): (WebCore::JSHTMLFrameElement::setSrc): Call checkNodeSecurity when setting to a javascript: URL. (WebCore::JSHTMLFrameElement::setLocation): Ditto.
  • bindings/js/JSHTMLIFrameElementCustom.cpp: Added. (WebCore::JSHTMLIFrameElement::setSrc): Call checkNodeSecurity when setting to a javascript: URL.
  • bindings/scripts/CodeGeneratorJS.pm: Add support for [CustomGetter] and [CustomSetter]
  • dom/Attr.idl:
  • dom/Element.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLIFrameElement.idl:
10:22 AM Changeset in webkit [24993] by zecke
  • 11 edits in trunk

WebCore:

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

Reviewed by Anders.

Make the containingWindow a GtkContainer and make use of the
GtkWidget::window instead of the GtkLayout::bin_window.

  • platform/Widget.h:
  • platform/gdk/PlatformScreenGdk.cpp: (WebCore::screenDepth):
  • platform/gdk/ScrollViewGdk.cpp: (WebCore::ScrollView::updateContents): (WebCore::ScrollView::update):
  • platform/gdk/WidgetGdk.cpp: (WebCore::Widget::setContainingWindow): (WebCore::Widget::setCursor):

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

Reviewed by Anders.

Make WebKitGtkPage a GtkContainer to avoid a size_allocate
race of GtkScrollBar and GtkLayout.

  • Api/webkitgtk-marshal.list:
  • Api/webkitgtkframe.cpp:
  • Api/webkitgtkpage.cpp:
  • Api/webkitgtkpage.h:
  • Api/webkitgtkprivate.h:
8:21 AM Changeset in webkit [24992] by zecke
  • 3 edits in trunk/WebKit/gtk

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

Reviewed by Niko.

Minor changes to the WebKit::EditorClient to allow removing
of text from TextFields. Remove the selectWordBeforeMenuEvent method
which is not used and not within WebCore::EditorClient.

  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::shouldDeleteRange): (WebKit::EditorClient::shouldBeginEditing): (WebKit::EditorClient::shouldEndEditing): (WebKit::EditorClient::shouldApplyStyle): (WebKit::EditorClient::shouldInsertNode):
  • WebCoreSupport/EditorClientGtk.h:
7:36 AM Changeset in webkit [24991] by zimmermann
  • 67 edits
    2 adds in branches/feature-branch

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

Final, long-awaited RenderSVGContainer split. Make RenderSVGContainer really a simple
container without special cases for inner <svg> elements or <marker>. Create a new
RenderSVGViewportContainer class handling these cases now.

7:25 AM Changeset in webkit [24990] by hausmann
  • 2 edits in trunk/WebKitQt

Limit the set of properties from the computed style to apply to Qt
plugin widgets, as only a few of them make sense.

7:25 AM Changeset in webkit [24989] by hausmann
  • 3 edits in trunk/WebCore

Revert r24699 as it broke timers. The precision of QTime::toTime_t() is just seconds, which is not good enough. Revert back
to the old implementation and use the simple implementation of currentTime() from win/ for the Qt/Windows build (fingers crossed :)

6:21 AM Changeset in webkit [24988] by zimmermann
  • 50 edits
    8 adds in branches/feature-branch

Reviewed by Oliver & Rob.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12501 (SVG Text fails to respect opacity, fill-opacity and stroke-opacity)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14045 (Incorrect support for opacity, fill-opacity and stroke-opacity)

Based on an older patch from Rob, this fixes SVG text opacity as well as group opacity for solid fills & gradients.
The pattern changes are still missing a testcase (need to wait for Antoine Quint for that).

6:21 AM Changeset in webkit [24987] by hausmann
  • 2 edits in trunk/WebCore

Recognize .htm as valid extension for text/html.

5:56 AM Changeset in webkit [24986] by lars
  • 4 edits in trunk/WebKitQt

Use <object>'s classid attribute for creation of plugins through QWebPage::createPlugin.

5:56 AM Changeset in webkit [24985] by lars
  • 2 edits in trunk/WebCore

remove an assertion that leads to crashes. The whole design of WidgetQt and ScrollViewQt needs to be reevaluated soon anyways.

4:33 AM Changeset in webkit [24984] by bdash
  • 1 edit
    1 add in trunk/WebCore

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

Fix the Mac build.

  • ForwardingHeaders/bindings/runtime_object.h: Added.
4:08 AM Changeset in webkit [24983] by hausmann
  • 2 edits in trunk/WebKitQt

Added support for network jobs from Qt resources using the qrc protocol.

4:08 AM Changeset in webkit [24982] by hausmann
  • 2 edits in trunk/WebKitQt

Added support for "application/x-qt-styled-widget" that is treated like "application/x-qt-plugin" but also
gets a Qt widget stylesheet set from the CSS computed style and the element style attribute.

4:08 AM Changeset in webkit [24981] by hausmann
  • 2 edits in trunk/WebCore

Make sure -fno-strict-aliasing is also added for mkspecs like linux-g++-64.

4:08 AM Changeset in webkit [24980] by hausmann
  • 6 edits in trunk/WebCore

Enable JavaScript bindings for HTML Object/Applet elements in the Qt port.

4:07 AM Changeset in webkit [24979] by hausmann
  • 4 edits in trunk/WebKitQt

Added virtual QWebPage::createPlugin that is called for embedded objects with the mime type "application/x-qt-plugin"
and fixed widget embedding by setting the right QWidget parent.

2:58 AM Changeset in webkit [24978] by zecke
  • 15 edits in trunk/WebKit/gtk

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

Reviewed by Mark.

Rename the namespace from WebKitGtk to WebKit. Move the various *Client
classes into the WebKit namespace. Change the class names to not contain Gtk.
The file names have to contain the Gtk suffix to not clash with files in WebCore (e.g.
bridge/EditorClient.h).

  • Api/webkitgtkframe.cpp:
  • Api/webkitgtkpage.cpp:
  • Api/webkitgtkprivate.cpp:
  • Api/webkitgtkprivate.h:
  • ChangeLog:
  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::ChromeClient): (WebKit::ChromeClient::chromeDestroyed): (WebKit::ChromeClient::windowRect): (WebKit::ChromeClient::setWindowRect): (WebKit::ChromeClient::pageRect): (WebKit::ChromeClient::scaleFactor): (WebKit::ChromeClient::focus): (WebKit::ChromeClient::unfocus): (WebKit::ChromeClient::createWindow): (WebKit::ChromeClient::createModalDialog): (WebKit::ChromeClient::show): (WebKit::ChromeClient::canRunModal): (WebKit::ChromeClient::runModal): (WebKit::ChromeClient::setToolbarsVisible): (WebKit::ChromeClient::toolbarsVisible): (WebKit::ChromeClient::setStatusbarVisible): (WebKit::ChromeClient::statusbarVisible): (WebKit::ChromeClient::setScrollbarsVisible): (WebKit::ChromeClient::scrollbarsVisible): (WebKit::ChromeClient::setMenubarVisible): (WebKit::ChromeClient::menubarVisible): (WebKit::ChromeClient::setResizable): (WebKit::ChromeClient::closeWindowSoon): (WebKit::ChromeClient::canTakeFocus): (WebKit::ChromeClient::takeFocus): (WebKit::ChromeClient::canRunBeforeUnloadConfirmPanel): (WebKit::ChromeClient::runBeforeUnloadConfirmPanel): (WebKit::ChromeClient::runJavaScriptAlert): (WebKit::ChromeClient::runJavaScriptConfirm): (WebKit::ChromeClient::setStatusbarText): (WebKit::ChromeClient::shouldInterruptJavaScript): (WebKit::ChromeClient::tabsToLinks): (WebKit::ChromeClient::windowResizerRect): (WebKit::ChromeClient::addToDirtyRegion): (WebKit::ChromeClient::scrollBackingStore): (WebKit::ChromeClient::updateBackingStore): (WebKit::ChromeClient::mouseDidMoveOverElement): (WebKit::ChromeClient::setToolTip):
  • WebCoreSupport/ChromeClientGtk.h:
  • WebCoreSupport/ContextMenuClientGtk.cpp: (WebKit::ContextMenuClient::contextMenuDestroyed): (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems): (WebKit::ContextMenuClient::contextMenuItemSelected): (WebKit::ContextMenuClient::downloadURL): (WebKit::ContextMenuClient::copyImageToClipboard): (WebKit::ContextMenuClient::searchWithGoogle): (WebKit::ContextMenuClient::lookUpInDictionary): (WebKit::ContextMenuClient::speak):
  • WebCoreSupport/ContextMenuClientGtk.h:
  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::shouldDeleteRange): (WebKit::EditorClient::shouldShowDeleteInterface): (WebKit::EditorClient::isContinuousSpellCheckingEnabled): (WebKit::EditorClient::isGrammarCheckingEnabled): (WebKit::EditorClient::spellCheckerDocumentTag): (WebKit::EditorClient::shouldBeginEditing): (WebKit::EditorClient::shouldEndEditing): (WebKit::EditorClient::shouldInsertText): (WebKit::EditorClient::shouldChangeSelectedRange): (WebKit::EditorClient::shouldApplyStyle): (WebKit::EditorClient::shouldMoveRangeAfterDelete): (WebKit::EditorClient::didBeginEditing): (WebKit::EditorClient::respondToChangedContents): (WebKit::EditorClient::respondToChangedSelection): (WebKit::EditorClient::didEndEditing): (WebKit::EditorClient::didWriteSelectionToPasteboard): (WebKit::EditorClient::didSetSelectionTypesForPasteboard): (WebKit::EditorClient::selectWordBeforeMenuEvent): (WebKit::EditorClient::isEditable): (WebKit::EditorClient::registerCommandForUndo): (WebKit::EditorClient::registerCommandForRedo): (WebKit::EditorClient::clearUndoRedoOperations): (WebKit::EditorClient::canUndo): (WebKit::EditorClient::canRedo): (WebKit::EditorClient::undo): (WebKit::EditorClient::redo): (WebKit::EditorClient::shouldInsertNode): (WebKit::EditorClient::pageDestroyed): (WebKit::EditorClient::smartInsertDeleteEnabled): (WebKit::EditorClient::toggleContinuousSpellChecking): (WebKit::EditorClient::toggleGrammarChecking): (WebKit::EditorClient::handleInputMethodKeypress): (WebKit::EditorClient::EditorClient): (WebKit::EditorClient::textFieldDidBeginEditing): (WebKit::EditorClient::textFieldDidEndEditing): (WebKit::EditorClient::textDidChangeInTextField): (WebKit::EditorClient::doTextFieldCommandFromEvent): (WebKit::EditorClient::textWillBeDeletedInTextField): (WebKit::EditorClient::textDidChangeInTextArea): (WebKit::EditorClient::ignoreWordInSpellDocument): (WebKit::EditorClient::learnWord): (WebKit::EditorClient::checkSpellingOfString): (WebKit::EditorClient::checkGrammarOfString): (WebKit::EditorClient::updateSpellingUIWithGrammarString): (WebKit::EditorClient::updateSpellingUIWithMisspelledWord): (WebKit::EditorClient::showSpellingUI): (WebKit::EditorClient::spellingUIIsShowing):
  • WebCoreSupport/EditorClientGtk.h:
  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::FrameLoaderClient): (WebKit::FrameLoaderClient::userAgent): (WebKit::FrameLoaderClient::createDocumentLoader): (WebKit::FrameLoaderClient::committedLoad): (WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): (WebKit::FrameLoaderClient::dispatchDidCancelAuthenticationChallenge): (WebKit::FrameLoaderClient::dispatchWillSendRequest): (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest): (WebKit::FrameLoaderClient::postProgressStartedNotification): (WebKit::FrameLoaderClient::postProgressFinishedNotification): (WebKit::FrameLoaderClient::frameLoaderDestroyed): (WebKit::FrameLoaderClient::dispatchDidReceiveResponse): (WebKit::FrameLoaderClient::createPlugin): (WebKit::FrameLoaderClient::redirectDataToPlugin): (WebKit::FrameLoaderClient::createJavaAppletWidget): (WebKit::FrameLoaderClient::overrideMediaType): (WebKit::FrameLoaderClient::windowObjectCleared): (WebKit::FrameLoaderClient::setMainFrameDocumentReady): (WebKit::FrameLoaderClient::hasWebView): (WebKit::FrameLoaderClient::hasFrameView): (WebKit::FrameLoaderClient::dispatchDidFinishLoad): (WebKit::FrameLoaderClient::frameLoadCompleted): (WebKit::FrameLoaderClient::saveViewStateToItem): (WebKit::FrameLoaderClient::restoreViewState): (WebKit::FrameLoaderClient::privateBrowsingEnabled): (WebKit::FrameLoaderClient::makeDocumentView): (WebKit::FrameLoaderClient::makeRepresentation): (WebKit::FrameLoaderClient::forceLayout): (WebKit::FrameLoaderClient::forceLayoutForNonHTML): (WebKit::FrameLoaderClient::setCopiesOnScroll): (WebKit::FrameLoaderClient::detachedFromParent1): (WebKit::FrameLoaderClient::detachedFromParent2): (WebKit::FrameLoaderClient::detachedFromParent3): (WebKit::FrameLoaderClient::detachedFromParent4): (WebKit::FrameLoaderClient::loadedFromCachedPage): (WebKit::FrameLoaderClient::dispatchDidHandleOnloadEvents): (WebKit::FrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): (WebKit::FrameLoaderClient::dispatchDidCancelClientRedirect): (WebKit::FrameLoaderClient::dispatchWillPerformClientRedirect): (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage): (WebKit::FrameLoaderClient::dispatchWillClose): (WebKit::FrameLoaderClient::dispatchDidReceiveIcon): (WebKit::FrameLoaderClient::dispatchDidStartProvisionalLoad): (WebKit::FrameLoaderClient::dispatchDidReceiveTitle): (WebKit::FrameLoaderClient::dispatchDidCommitLoad): (WebKit::FrameLoaderClient::dispatchDidFinishDocumentLoad): (WebKit::FrameLoaderClient::dispatchDidFirstLayout): (WebKit::FrameLoaderClient::dispatchShow): (WebKit::FrameLoaderClient::cancelPolicyCheck): (WebKit::FrameLoaderClient::dispatchDidLoadMainResource): (WebKit::FrameLoaderClient::revertToProvisionalState): (WebKit::FrameLoaderClient::clearUnarchivingState): (WebKit::FrameLoaderClient::willChangeTitle): (WebKit::FrameLoaderClient::didChangeTitle): (WebKit::FrameLoaderClient::finishedLoading): (WebKit::FrameLoaderClient::finalSetupForReplace): (WebKit::FrameLoaderClient::setDefersLoading): (WebKit::FrameLoaderClient::isArchiveLoadPending): (WebKit::FrameLoaderClient::cancelPendingArchiveLoad): (WebKit::FrameLoaderClient::clearArchivedResources): (WebKit::FrameLoaderClient::canHandleRequest): (WebKit::FrameLoaderClient::canShowMIMEType): (WebKit::FrameLoaderClient::representationExistsForURLScheme): (WebKit::FrameLoaderClient::generatedMIMETypeForURLScheme): (WebKit::FrameLoaderClient::provisionalLoadStarted): (WebKit::FrameLoaderClient::didFinishLoad): (WebKit::FrameLoaderClient::setDocumentViewFromCachedPage): (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength): (WebKit::FrameLoaderClient::dispatchDidFinishLoading): (WebKit::FrameLoaderClient::dispatchDidFailLoading): (WebKit::FrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad): (WebKit::FrameLoaderClient::dispatchDidFailLoad): (WebKit::FrameLoaderClient::download): (WebKit::FrameLoaderClient::cancelledError): (WebKit::FrameLoaderClient::blockedError): (WebKit::FrameLoaderClient::cannotShowURLError): (WebKit::FrameLoaderClient::interruptForPolicyChangeError): (WebKit::FrameLoaderClient::cannotShowMIMETypeError): (WebKit::FrameLoaderClient::fileDoesNotExistError): (WebKit::FrameLoaderClient::shouldFallBack): (WebKit::FrameLoaderClient::willUseArchive): (WebKit::FrameLoaderClient::saveDocumentViewToCachedPage): (WebKit::FrameLoaderClient::canCachePage): (WebKit::FrameLoaderClient::dispatchCreatePage): (WebKit::FrameLoaderClient::dispatchUnableToImplementPolicy):
  • WebCoreSupport/FrameLoaderClientGtk.h:
  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::inspectorDestroyed): (WebKit::InspectorClient::createPage): (WebKit::InspectorClient::showWindow): (WebKit::InspectorClient::closeWindow): (WebKit::InspectorClient::attachWindow): (WebKit::InspectorClient::detachWindow): (WebKit::InspectorClient::highlight): (WebKit::InspectorClient::hideHighlight):
  • WebCoreSupport/InspectorClientGtk.h:
12:50 AM Changeset in webkit [24977] by bdash
  • 5 edits
    4 adds in trunk

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

Reviewed by Dave Hyatt.

Test: fast/text/international/bidi-neutral-run.html

Fixed several bugs in resolving the embedding level of runs of neutral
characters. Changed the logic to rely on the eor direction only for
the number types, and otherwise consider the last strong type.

  • platform/BidiContext.h: (WebCore::BidiContext::BidiContext): Added an ASSERT.
  • platform/BidiResolver.h: (WebCore::::embed): (WebCore::::createBidiRunsForLine):
  • platform/graphics/GraphicsContext.cpp: (WebCore::TextRunIterator::atEnd): Changed to return true instead of crashing when called on the empty iterator.

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

Reviewed by Dave Hyatt.

  • fast/text/international/bidi-neutral-run-expected.checksum: Added.
  • fast/text/international/bidi-neutral-run-expected.png: Added.
  • fast/text/international/bidi-neutral-run-expected.txt: Added.
  • fast/text/international/bidi-neutral-run.html: Added.

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())
Note: See TracTimeline for information about the timeline view.