WebKit-https.git
17 years ago Reviewed by Ken.
darin [Thu, 2 Oct 2003 15:31:23 +0000 (15:31 +0000)]
    Reviewed by Ken.

        * kwq/KWQRenderTreeDebug.cpp: (quoteAndEscapeNonPrintables): Since our text rendering renders
        non-breaking spaces the same as spaces, dump them as spaces. Do the same with newlines since
        I am about to change our text rendering to do the same with newlines.

        * layout-tests: Updated test results.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5114 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Avoid doing extra work when tearing down the document by checking to see if
hyatt [Thu, 2 Oct 2003 01:43:40 +0000 (01:43 +0000)]
Avoid doing extra work when tearing down the document by checking to see if
we're in the destruction of the document.

        Reviewed by darin

        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_container.cpp:
        (RenderContainer::removeChildNode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Darin
sullivan [Thu, 2 Oct 2003 00:24:38 +0000 (00:24 +0000)]
    Reviewed by Darin

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView viewDidMoveToSuperview]):
skip some work when when we've been removed. This wasn't
causing any trouble before, but was at least conceptually
inefficient.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago - fixed 3441372: REGRESSION (107+): Plain text document is
sullivan [Thu, 2 Oct 2003 00:07:43 +0000 (00:07 +0000)]
- fixed 3441372: REGRESSION (107+): Plain text document is
initially drawn with proportional font

        Reviewed by Hyatt

        * WebView.subproj/WebTextView.m:
        (-[WebTextView setDataSource:]):
Changed a != to an ==

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebKit:
rjw [Wed, 1 Oct 2003 23:57:47 +0000 (23:57 +0000)]
WebKit:
Fixed 3438441.  If a load is triggered by a onload handling, don't add an entry for it into the b/f or history.  The new Google ads use this technique.

        Reviewed by Ken.

        * Misc.subproj/WebKitLogging.h:
        * Misc.subproj/WebKitLogging.m:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:referrer:reload:onLoadEvent:target:triggeringEvent:form:formValues:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _addBackForwardItemClippedAtTarget:]):
        (-[WebFrame _transitionToCommitted:]):
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame _loadItem:withLoadType:]):
        (-[WebFrame _itemForRestoringDocState]):

WebCore:
Fixed 3438441.  Pass extra info up to WebKit about load type, specifically is a load is triggered by JS running in an onLoad handler.

        Reviewed by Ken.

        * khtml/ecma/kjs_binding.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::openURL):
        (KWQKHTMLPart::openURLRequest):
        (KWQKHTMLPart::submitForm):
        (KWQKHTMLPart::urlSelected):
        * kwq/KWQKHTMLPartBrowserExtension.mm:
        (KHTMLPartBrowserExtension::createNewWindow):

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge saveDocumentToPageCache]):
Nothing changed.  Tweaked spacing.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John.
darin [Wed, 1 Oct 2003 23:56:33 +0000 (23:56 +0000)]
    Reviewed by John.

        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _webView]):
        Fixed problem where we'd get a nil WebView and pass crazy values for subframe
        text multipliers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5109 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago <rdar://problem/2942589>: CSS cursors are not implemented
cblu [Wed, 1 Oct 2003 23:27:11 +0000 (23:27 +0000)]
<rdar://problem/2942589>: CSS cursors are not implemented

        Reviewed by Dave.

        * Resources/eastCursor.tiff: Added.
        * Resources/eastResizeCursor.tiff: Added.
        * Resources/helpCursor.tiff: Added.
        * Resources/moveCursor.tiff: Added.
        * Resources/northEastResizeCursor.tiff: Added.
        * Resources/northResizeCursor.tiff: Added.
        * Resources/northWestResizeCursor.tiff: Added.
        * Resources/southEastResizeCursor.tiff: Added.
        * Resources/southResizeCursor.tiff: Added.
        * Resources/southWestResizeCursor.tiff: Added.
        * Resources/waitCursor.tiff: Added.
        * Resources/westResizeCursor.tiff: Added.
        * WebCore.pbproj/project.pbxproj:
        * khtml/css/cssparser.cpp: special-case the hand cursor to mean pointer
        (CSSParser::parseValue):
        * khtml/css/cssvalues.c: generated changes
        (hash_val):
        (findValue):
        * khtml/css/cssvalues.h: generated changes
        * khtml/css/cssvalues.in: removed the progress cursor from the list because it was messing up the mapping
        * khtml/khtmlview.cpp: call new cursor methods
        * kwq/KWQKCursor.h:
        * kwq/KWQKCursor.mm:
        (+[NSCursor _WebCore_cursorWithName:hotSpot:]): new, loads and caches cursors
        (KCursor::crossCursor): get the AppKit cross hair cursor
        (KCursor::handCursor): call _WebCore_cursorWithName:hotSpot:
        (KCursor::sizeAllCursor): ditto
        (KCursor::waitCursor): ditto
        (KCursor::whatsThisCursor): ditto
        (KCursor::eastResizeCursor): new, call _WebCore_cursorWithName:hotSpot:
        (KCursor::northResizeCursor): ditto
        (KCursor::northEastResizeCursor): ditto
        (KCursor::northWestResizeCursor): ditto
        (KCursor::southResizeCursor): ditto
        (KCursor::southEastResizeCursor): ditto
        (KCursor::southWestResizeCursor): ditto
        (KCursor::westResizeCursor): ditto

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5108 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Clean up our detach model so that you can always get to a document, even for
hyatt [Wed, 1 Oct 2003 20:58:56 +0000 (20:58 +0000)]
Clean up our detach model so that you can always get to a document, even for
anonymous content.  Also stubbing out and adding the accessibility objects.

        Reviewed by darin, mjs, john

        * ChangeLog:
        * WebCore.pbproj/project.pbxproj:
        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_box.cpp:
        (RenderBox::detach):
        * khtml/rendering/render_box.h:
        * khtml/rendering/render_canvas.cpp:
        (RenderCanvas::RenderCanvas):
        * khtml/rendering/render_container.cpp:
        (RenderContainer::detach):
        (RenderContainer::addChild):
        (RenderContainer::updatePseudoChild):
        (RenderContainer::insertChildNode):
        (RenderContainer::removeLeftoverAnonymousBoxes):
        * khtml/rendering/render_container.h:
        * khtml/rendering/render_flow.cpp:
        (RenderFlow::createAnonymousFlow):
        (RenderFlow::deleteLineBoxes):
        (RenderFlow::detach):
        * khtml/rendering/render_flow.h:
        * khtml/rendering/render_form.cpp:
        (RenderTextArea::detach):
        * khtml/rendering/render_form.h:
        * khtml/rendering/render_image.cpp:
        (RenderImage::RenderImage):
        (RenderImage::detach):
        * khtml/rendering/render_image.h:
        * khtml/rendering/render_inline.cpp:
        (RenderInline::addChildToFlow):
        (RenderInline::splitFlow):
        (RenderInline::renderName):
        * khtml/rendering/render_list.cpp:
        (RenderListItem::setStyle):
        (RenderListItem::detach):
        (RenderListItem::updateMarkerLocation):
        (RenderListMarker::RenderListMarker):
        * khtml/rendering/render_list.h:
        * khtml/rendering/render_object.cpp:
        (RenderObject::RenderObject):
        (RenderObject::information):
        (RenderObject::dump):
        (RenderObject::createAnonymousBlock):
        (RenderObject::remove):
        (RenderObject::detach):
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_replaced.cpp:
        (RenderWidget::detach):
        * khtml/rendering/render_replaced.h:
        * khtml/rendering/render_table.cpp:
        (RenderTable::addChild):
        (RenderTableSection::detach):
        (RenderTableSection::addChild):
        (RenderTableRow::detach):
        (RenderTableRow::addChild):
        (RenderTableCell::detach):
        * khtml/rendering/render_table.h:
        * khtml/rendering/render_text.cpp:
        (RenderText::detach):
        (RenderText::deleteRuns):
        * khtml/rendering/render_text.h:
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::~DocumentImpl):
        (DocumentImpl::detach):
        (DocumentImpl::getOrCreateAccObjectCache):
        * khtml/xml/dom_docimpl.h:
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::detach):
        * kwq/KWQAccObject.h: Added.
        * kwq/KWQAccObject.mm: Added.
        (-[KWQAccObject x]):
        (-[KWQAccObject y]):
        (-[KWQAccObject width]):
        (-[KWQAccObject height]):
        (-[KWQAccObject detached]):
        (-[KWQAccObject detach]):
        (-[KWQAccObject data]):
        (-[KWQAccObject setData:]):
        (-[KWQAccObject firstChild]):
        (-[KWQAccObject lastChild]):
        (-[KWQAccObject previousSibling]):
        (-[KWQAccObject nextSibling]):
        (-[KWQAccObject parentObject]):
        * kwq/KWQAccObjectCache.h: Added.
        * kwq/KWQAccObjectCache.mm: Added.
        (KWQAccObjectCache::KWQAccObjectCache):
        (KWQAccObjectCache::~KWQAccObjectCache):
        (KWQAccObjectCache::accObject):
        (KWQAccObjectCache::setAccObject):
        (KWQAccObjectCache::removeAccObject):
        (KWQAccObjectCache::detach):
        * layout-tests/css1/pseudo/firstletter-expected.txt:
        * layout-tests/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * layout-tests/fast/css-generated-content/002-expected.txt:
        * layout-tests/fast/css-generated-content/004-expected.txt:
        * layout-tests/fast/css-generated-content/005-expected.txt:
        * layout-tests/fast/css-generated-content/006-expected.txt:
        * layout-tests/fast/selectors/039-expected.txt:
        * layout-tests/fast/selectors/039b-expected.txt:
        * layout-tests/fast/selectors/041-expected.txt:
        * layout-tests/fast/selectors/042-expected.txt:
        * layout-tests/fast/selectors/166a-expected.txt:
        * layout-tests/fast/selectors/168-expected.txt:
        * layout-tests/fast/selectors/168a-expected.txt:
        * layout-tests/fast/selectors/169-expected.txt:
        * layout-tests/fast/selectors/169a-expected.txt:
        * layout-tests/fast/text/firstline/002-expected.txt:
        * layout-tests/fast/text/firstline/003-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoAdding layout test for setting of cssFlaot via a with clause.
hyatt [Wed, 1 Oct 2003 20:36:13 +0000 (20:36 +0000)]
Adding layout test for setting of cssFlaot via a with clause.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5106 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3163840, the images are mispositioned on the DHTML menus at the top of
hyatt [Wed, 1 Oct 2003 20:30:38 +0000 (20:30 +0000)]
Fix for 3163840, the images are mispositioned on the DHTML menus at the top of
www.aa.com (and in many other places).  We needed to support returning the right
value from hasProperty and tryGet for 'cssFloat'.

This patch also adds support for getting/setting our custom CSS properties (-khtml-*)
and just factors the code a bit better for all the special values.

        Reviewed by darin

        * khtml/ecma/kjs_css.cpp:
        (cssPropertyName):
        (DOMCSSStyleDeclaration::hasProperty):
        (DOMCSSStyleDeclaration::tryGet):
        (DOMCSSStyleDeclaration::tryPut):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Wed, 1 Oct 2003 20:22:52 +0000 (20:22 +0000)]
    Reviewed by Dave.

        - fixed 3437309 -- REGRESSION (100-107): Javascript menu doesn't work at www.aa.com

        * khtml/xml/dom_elementimpl.cpp: (ElementImpl::removeAttribute): Restored the old behavior
        for removeAttribute and removeAttributeNS; these don't give NOT_FOUND_ERR. But keep the
        NOT_FOUND_ERR for removeAttributeNode and removedNamedItem.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5104 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by me
kocienda [Wed, 1 Oct 2003 19:57:27 +0000 (19:57 +0000)]
    Reviewed by me

        * kwq/KWQWidget.mm:
        (QWidget::focusPolicy): Improved comment.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5103 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Maciej
kocienda [Wed, 1 Oct 2003 18:48:13 +0000 (18:48 +0000)]
    Reviewed by Maciej

Fix for these bugs:

<rdar://problem/3439736>: WebCore form button widgets do not accept focus
<rdar://problem/3440770>: WebCore form button widgets do not take part in tabbing order

        * kwq/KWQButton.h: Add focusPolicy function declaration.
        * kwq/KWQButton.mm:
        (-[KWQButton nextKeyView]): Add tabbing support for buttons.
        (-[KWQButton previousKeyView]): Ditto
        (-[KWQButton nextValidKeyView]): Ditto
        (-[KWQButton previousValidKeyView]): Ditto
        (QButton::focusPolicy): Add focusPolicy implementation. This calls through
        to the recently-added accessor for full keyboard access to help in the
        determination for focus policy. For now, full keyboard access must be
        turned on for buttons to receive focus.
        * kwq/KWQTextEdit.h: Remove focusPolicy specialization from this class. The
implementation in QWidget now serves this class well.
        * kwq/KWQTextEdit.mm: Ditto
        * kwq/KWQWidget.h: Added isEnabled function. Small, unrelated cleanup to
move the no-implementation setFocusPolicy() and setFocusProxy() functions
fully into the header file.
        * kwq/KWQWidget.mm:
        (QWidget::isEnabled): Added. Calls through to the Cocoa view to retrieve
this information.
        (QWidget::focusPolicy): Much improved focus policy function is now more
general in stipulating the conditions for focus policy, and will work for
more widgets.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5102 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3440804, broken scrollbars in downloads window. Make Auto be the default
hyatt [Wed, 1 Oct 2003 18:36:57 +0000 (18:36 +0000)]
Fix for 3440804, broken scrollbars in downloads window.  Make Auto be the default
value in the enum, so that all scrollviews will be automatically initialized to be
auto.

Reviewed by cblu

        * kwq/KWQScrollView.h:
        * kwq/WebCoreFrameView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5100 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3440804, broken scrollbars in downloads window. Make Auto be the default
hyatt [Wed, 1 Oct 2003 18:34:46 +0000 (18:34 +0000)]
Fix for 3440804, broken scrollbars in downloads window.  Make Auto be the default
value in the enum, so that all scrollviews will be automatically initialized to be
auto.

        Reviewed by cblu

        * WebView.subproj/WebDynamicScrollBarsView.m:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5099 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Attempt to find a reasonable font using a simple string matching heuristic if
rjw [Wed, 1 Oct 2003 00:47:11 +0000 (00:47 +0000)]
Attempt to find a reasonable font using a simple string matching heuristic if
none of the fonts actually specified are found.  In particular we will use
Geeza Pro if "arabic", "urdu", or "pashto" is contained (case-insensitive) in
any of the requested font family names.  Geeza Pro is a much better fallback
font for Arabic (and variant languages) than Helvetica.

        Reviewed by Chris.

        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory fontWithFamilies:traits:size:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebKit:
sullivan [Wed, 1 Oct 2003 00:38:25 +0000 (00:38 +0000)]
WebKit:

        - fixed 3045617 -- Make Text Bigger/Smaller doesn't affect non-html documents.

        I added an internal protocol inside WebKit to make this work, and implemented
        it for plain text and RTF. I also slightly shuffled the existing code to
        handle this for HTML so that it goes through the new protocol in that case
        also.

        Reviewed by NOBODY (OOPS!).

        * WebView.subproj/WebDocumentInternal.h: Added.
        New header file, holds definition of
_web_WebDocumentTextSizing protocol.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _textSizeMultiplierChanged]):
        if the document view conforms to the new protocol,
        tell it that the multiplier has changed. Also, don't
        tell the bridge here anymore; let WebHTMLView do that.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _updateTextSizeMultiplier]):
        tell the bridge here instead of having WebFrame do so
        (-[WebHTMLView viewDidMoveToSuperview]):
        call _updateTextSizeMultiplier (in case it changed while we were switched out)
        (-[WebHTMLView _web_textSizeMultiplierChanged]):
        call _updateTextSizeMultiplier

        * WebView.subproj/WebTextRepresentation.m:
        (-[WebTextRepresentation receivedData:withDataSource:]):

        * WebView.subproj/WebTextView.h:
now implements _web_WebDocumentTextSizing protocol;
        new ivar for holding local copy of text size multiplier;
        new public method appendReceivedData:fromDataSource:

        * WebView.subproj/WebTextView.m:
        (-[WebTextView initWithFrame:]):
        set local copy of text size multiplier to 1.0
        (-[WebTextView _textSizeMultiplierFromWebView]):
        new method, asks the webview's opinion of the text size multiplier
        (-[WebTextView setFixedWidthFont]):
        use the text size multiplier when setting font size
        (-[WebTextView _adjustRichTextFontSizeByRatio:]):
        new method, borrowed from Mail and tweaked, that walks through
        the rich text and adjusts the font sizes
        (-[WebTextView _updateTextSizeMultiplier]):
        new method, updates local copy of text size multiplier to
        match webview's opinion
        (-[WebTextView setDataSource:]):
        set the text size multiplier appropriately before setting the
        fixed-width font; this is too early for the RTF case though
        since the fonts are embedded in the data
        (-[WebTextView appendReceivedData:fromDataSource:]):
        new method. Most of this logic was in WebTextRepresentation, but
        it's a little better encapsulated here, plus now it handles the
        text multiplier for RTF.
        (-[WebTextView defaultsChanged:]):
        added comment
        (-[WebTextView _web_textSizeMultiplierChanged]):
        call updateTextSizeMultiplier

        * WebView.subproj/WebView.m:
        (-[WebView canMakeTextSmaller]):
        (-[WebView canMakeTextLarger]):
        return NO if the main frame doesn't support the text sizing protocol. This means
        that if the main frame doesn't support it but a subframe does, you can't adjust
        the text size. This seems fine for now since the only case with subframes is
        HTML, where the main frame does support changing text size.

        * WebKit.pbproj/project.pbxproj:
        updated for new file

WebBrowser:

        Reviewed by Darin

        * HTMLSourceDocument.h:
removed unused _textSizeMultiplier ivar

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5097 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed: <rdar://problem/3428262>: Plugin loads for static files, but not PHP scripts
cblu [Wed, 1 Oct 2003 00:08:26 +0000 (00:08 +0000)]
Fixed: <rdar://problem/3428262>: Plugin loads for static files, but not PHP scripts

        Reviewed by rjw.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge frameRequiredForMIMEType:]): load the plug-in DB so this method returns reliable results.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5096 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by me
kocienda [Tue, 30 Sep 2003 23:17:34 +0000 (23:17 +0000)]
    Reviewed by me

        * WebCore.pbproj/project.pbxproj: Made WebCoreKeyboardAccess.h a private header.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5095 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed: <rdar://problem/3006869>: show image dimensions in title bar when single...
cblu [Tue, 30 Sep 2003 23:07:26 +0000 (23:07 +0000)]
Fixed: <rdar://problem/3006869>: show image dimensions in title bar when single image is loaded

        Reviewed by rjw.

        * English.lproj/Localizable.strings:
        * WebView.subproj/WebImageRepresentation.m:
        (-[WebImageRepresentation title]): return "foo.jpg 50x50 pixels"

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5094 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed 3420396. If a frame targets _top and a URL that contains a fragment (very...
rjw [Tue, 30 Sep 2003 23:04:14 +0000 (23:04 +0000)]
Fixed 3420396.  If a frame targets _top and a URL that contains a fragment (very unusual, it's meaningless for a frameset to contain a named anchor point) the frameset won't be reloaded.  Our normal path is to just scroll to the anchor point.  This is only important because our Help folks oddly depend on the behavior.

        Reviewed by Chris.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5093 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoI added this file earlier, but a cvs-abandon command removed it. Re-adding and commit...
kocienda [Tue, 30 Sep 2003 22:47:55 +0000 (22:47 +0000)]
I added this file earlier, but a cvs-abandon command removed it. Re-adding and committing.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
kocienda [Tue, 30 Sep 2003 22:47:03 +0000 (22:47 +0000)]
WebCore:

        Reviewed by Maciej

        Fix for this bug:

        <rdar://problem/3439688>: WebKit needs to retrieve full keyboard access preference

        * WebCore.pbproj/project.pbxproj:
        * kwq/KWQKHTMLPart.h: Declare keyboardUIMode accessor.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::keyboardUIMode): Implement keyboardUIMode accessor (calls through the bridge).
        * kwq/WebCoreBridge.h: Declare the bridge accessor.
        * kwq/WebCoreKeyboardAccess.h: Added. Header defines keyboard UI mode constants.

WebKit:

        Reviewed by Maciej

        Fix for this bug:

        <rdar://problem/3439688>: WebKit needs to retrieve full keyboard access preference

        * WebCoreSupport.subproj/WebBridge.h: Add two ivars: one to track the keyboard
        UI mode, the other a flag we use to register for notifications.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dealloc]): Remove the notification observer to keyboard UI mode changes.
        (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): New method. Accesses the
        preferences to get the current keyboard UI mode.
        (-[WebBridge keyboardUIMode]): Returns the current keyboard UI mode. Registers for
        notifications of keyboard UI mode changes when called the first time.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
mjs [Tue, 30 Sep 2003 21:58:07 +0000 (21:58 +0000)]
WebCore:

        Reviewed by Ken.

- fixed 3375281 - Keyboard event handlers not fired if focus not in form field
- fixed 3242927 - KeyPressed Event in Javascript don't work
- fixed 3375353 - keyboard event.target not updated when blurring from form items
- fixed 3183754 - returning false from key press handlers does not prevent typing or form submission

        * khtml/xml/dom_nodeimpl.cpp:
(NodeImpl::dispatchKeyEvent): Force false when defaultHandled instead of
based on a weird rule appropriate for KDE but not for us.
        * kwq/KWQKHTMLPart.mm:
(KWQKHTMLPart::keyEvent): If there's no focus node, give the event
to the body element instead of giving up. Also, reverse
expectedsense of return value dispatchKeyEvent, since it returns
true if it *didn't* swallow the event. And finally, let the key press
event as well as the key down event for the initial NSKeyDown block
default handling.
* kwq/KWQListBox.mm:
        (-[KWQTableView keyDown:]): Respect return value from interceptKeyEvent:
        (-[KWQTableView keyUp:]): ditto
        * kwq/KWQTextArea.mm:
        (-[KWQTextAreaTextView keyDown:]): ditto
        (-[KWQTextAreaTextView keyUp:]): ditto
        * kwq/KWQTextField.mm:
        (-[KWQTextField textView:shouldHandleEvent:]): ditto

WebKit:

        Reviewed by Ken.

- fixed 3375281 - Keyboard event handlers not fired if focus not in form field
- fixed 3242927 - KeyPressed Event in Javascript don't work
- fixed 3375353 - keyboard event.target not updated when blurring from form items
- fixed 3183754 - returning false from key press handlers does not prevent typing or form submission

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView keyDown:]): Ask the bridge before passing the event along.
        (-[WebHTMLView keyUp:]): Likewise.
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m: Remove dead code.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed 3422138. We weren't sending a didChange call for isLoading until the load...
rjw [Tue, 30 Sep 2003 21:06:30 +0000 (21:06 +0000)]
Fixed 3422138.  We weren't sending a didChange call for isLoading until the load was complete!  Also [WebView isLoading] wasn't accounting for provisional datasources.

        Reviewed by Chris.

        * WebView.subproj/WebView.m:
        (-[WebView isLoading]):
        * WebView.subproj/WebViewPrivate.h:
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _didStartProvisionalLoadForFrame:]):
        (-[WebView _didCommitLoadForFrame:]):
        (-[WebView _didFinishLoadForFrame:]):
        (-[WebView _didFailLoadWithError:forFrame:]):
        (-[WebView _didFailProvisionalLoadWithError:forFrame:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoUpdate layout tests.
hyatt [Tue, 30 Sep 2003 19:53:04 +0000 (19:53 +0000)]
Update layout tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoBacking out an accidental commit.
hyatt [Tue, 30 Sep 2003 18:47:22 +0000 (18:47 +0000)]
Backing out an accidental commit.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Improvements to scrolling and layout. Also fixing 3264346, body overflow should
hyatt [Tue, 30 Sep 2003 18:46:27 +0000 (18:46 +0000)]
Improvements to scrolling and layout.  Also fixing 3264346, body overflow should
apply to document's scrollbars.

        Reviewed by darin

        * WebView.subproj/WebDynamicScrollBarsView.h:
        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView initWithFrame:]):
        (-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]):
        (-[WebDynamicScrollBarsView updateScrollers]):
        (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
        (-[WebDynamicScrollBarsView setAllowsScrolling:]):
        (-[WebDynamicScrollBarsView allowsScrolling]):
        (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
        (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]):
        (-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
        (-[WebDynamicScrollBarsView allowsVerticalScrolling]):
        (-[WebDynamicScrollBarsView horizontalScrollingMode]):
        (-[WebDynamicScrollBarsView verticalScrollingMode]):
        (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]):
        (-[WebDynamicScrollBarsView setVerticalScrollingMode:]):
        (-[WebDynamicScrollBarsView setScrollingMode:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Improvements to layout transitions and scrollbar appearance/disappearance.
hyatt [Tue, 30 Sep 2003 18:45:47 +0000 (18:45 +0000)]
Improvements to layout transitions and scrollbar appearance/disappearance.
Also implementing a fix for 3264346, overflow applied to body should apply to
the document's scrollers.

        Reviewed by darin

        * khtml/html/html_baseimpl.cpp:
        (HTMLFrameElementImpl::parseAttribute):
        * khtml/khtmlview.cpp:
        (KHTMLView::KHTMLView):
        (KHTMLView::~KHTMLView):
        (KHTMLView::resetScrollBars):
        (KHTMLView::clear):
        (KHTMLView::initScrollBars):
        (KHTMLView::applyBodyScrollQuirk):
        (KHTMLView::inLayout):
        * khtml/khtmlview.h:
        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_block.h:
        * khtml/rendering/render_canvas.cpp:
        (RenderCanvas::layout):
        * khtml/rendering/render_form.cpp:
        (TextAreaWidget::TextAreaWidget):
        * khtml/rendering/render_frames.cpp:
        (RenderFrame::slotViewCleared):
        (RenderPartObject::slotViewCleared):
        * khtml/rendering/render_list.cpp:
        (RenderListMarker::calcMinMaxWidth):
        * khtml/rendering/render_object.cpp:
        (RenderObject::repaint):
        (RenderObject::repaintRectangle):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::setInPageCache):
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::createPart):
        * kwq/KWQRenderTreeDebug.cpp:
        (write):
        (externalRepresentation):
        * kwq/KWQScrollView.h:
        * kwq/KWQScrollView.mm:
        (QScrollView::setVScrollBarMode):
        (QScrollView::setHScrollBarMode):
        (QScrollView::setScrollBarsMode):
        (QScrollView::vScrollBarMode):
        (QScrollView::hScrollBarMode):
        (QScrollView::hasVerticalScrollBar):
        (QScrollView::hasHorizontalScrollBar):
        (QScrollView::suppressScrollBars):
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge installInFrame:]):
        * kwq/WebCoreFrameView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3437260, nil deref of the render style because it hasn't been set yet.
hyatt [Tue, 30 Sep 2003 18:39:03 +0000 (18:39 +0000)]
Fix for 3437260, nil deref of the render style because it hasn't been set yet.
Fallout from my incremental repainting landing.

        Reviewed by darin

        * khtml/rendering/render_replaced.cpp:
        (RenderWidget::setQWidget):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Tue, 30 Sep 2003 18:35:43 +0000 (18:35 +0000)]
    Reviewed by Dave.

        Rolled in Harri Porten's change to accept non-breaking space in JavaScript.

        * kjs/lexer.cpp: (Lexer::isWhiteSpace): Accept 00A0 as "whitespace".

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3438479, tables expand on every layout when a cell has percentage height
hyatt [Tue, 30 Sep 2003 18:30:31 +0000 (18:30 +0000)]
Fix for 3438479, tables expand on every layout when a cell has percentage height
children.

        Reviewed by darin

        * khtml/rendering/render_table.cpp:
        (RenderTableSection::calcRowHeight):
        (RenderTableRow::layout):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed: <rdar://problem/3332460>: nil-deref in khtml::RenderWidget::eventFilter with...
cblu [Mon, 29 Sep 2003 23:04:02 +0000 (23:04 +0000)]
Fixed: <rdar://problem/3332460>: nil-deref in khtml::RenderWidget::eventFilter with onchange handler

        Reviewed by darin.

        * kwq/KWQTextField.mm:
        (-[KWQTextField controlTextDidEndEditing:]): call setHasFocus:NO last so we have the widget that lets us get to the bridge and lets us call controlTextDidEndEditing

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3425053, text past the bottom of a positioned table doesn't repaint.
hyatt [Mon, 29 Sep 2003 22:33:45 +0000 (22:33 +0000)]
Fix for 3425053, text past the bottom of a positioned table doesn't repaint.
3426847 is the same bug.  Both are fixed by ensuring that calcHeight doesn't actually
do anything other than margin computation and position determination for positioned
elements.  In reality, for weird edge cases like implying the height via explicit top and
bottom properties, we'll still be wrong.

        Reviewed by darin

        * ChangeLog:
        * khtml/rendering/render_table.cpp:
        (RenderTable::layout):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5080 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed: <rdar://problem/3422739>: Plug-in streams not cancelled when plug-in returns...
cblu [Mon, 29 Sep 2003 22:05:49 +0000 (22:05 +0000)]
Fixed: <rdar://problem/3422739>: Plug-in streams not cancelled when plug-in returns error from NPP_NewStream

        Reviewed by mjs.

        * Plugins.subproj/WebBaseNetscapePluginStream.h: renamed receivedError to cancelWithReason
        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): call cancelWithReason if NPP_NewStream returns an error
        (-[WebBaseNetscapePluginStream cancelWithReason:]): renamed
        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): tweak
        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        (-[WebNetscapePluginRepresentation receivedError:withDataSource:]): call renamed cancelWithReason
(-[WebNetscapePluginRepresentation cancelWithReason:]): new override, stop load then call super
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream cancelWithReason:]): new override, stop load then call super
        (-[WebNetscapePluginStream stop]): call cancelWithReason
        (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): call renamed cancelWithReason
        (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): call renamed cancelWithReason

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoForgot to commit expected.txt for new whitespace test.
hyatt [Mon, 29 Sep 2003 21:10:59 +0000 (21:10 +0000)]
Forgot to commit expected.txt for new whitespace test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoAdd layout test for abs positioned object inside relpositioned inline containing...
hyatt [Mon, 29 Sep 2003 21:10:15 +0000 (21:10 +0000)]
Add layout test for abs positioned object inside relpositioned inline containing block

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoAdding layout test for <pre> maxwidth bug.
hyatt [Mon, 29 Sep 2003 20:29:47 +0000 (20:29 +0000)]
Adding layout test for <pre> maxwidth bug.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Make sure that timeouts updateRendering after they execute the scheduled timer
hyatt [Mon, 29 Sep 2003 20:27:42 +0000 (20:27 +0000)]
Make sure that timeouts updateRendering after they execute the scheduled timer
action.

Also fixing 3429455, maxwidth of pres miscomputed when two blank lines occur at
the end of a pre text run.

        Reviewed by darin, mjs (setTimeout fix), darin (pre fix)

        * khtml/ecma/kjs_window.cpp:
        (ScheduledAction::execute):
        * khtml/rendering/render_text.cpp:
        (RenderText::trimmedMinMaxWidth):
        (RenderText::calcMinMaxWidth):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5075 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John.
darin [Mon, 29 Sep 2003 16:49:18 +0000 (16:49 +0000)]
    Reviewed by John.

        - fixed 3437292 -- Safari uses wrong characters for &and; and &or; entities

        * khtml/html/kentities.gperf: Corrected values for &and; and &or; entities.
        Checked all the rest against a list on the W3C site, and those are the only two that were wrong.
        * khtml/html/kentities.c: Regnenerated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John
kocienda [Fri, 26 Sep 2003 16:44:51 +0000 (16:44 +0000)]
    Reviewed by John

Fix for this bug:

<rdar://problem/3435532>: REGRESSION: tabbing to textareas causes infinite recursion

Add recursion guards to the becomeFirstResponder method, otherwise calling
eventFilter with a FocusIn event will cause the infinite recursion
described in the bug.

        * kwq/KWQTextArea.mm:
        (-[KWQTextAreaTextView becomeFirstResponder]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5073 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John.
mjs [Fri, 26 Sep 2003 04:12:32 +0000 (04:12 +0000)]
    Reviewed by John.

        * khtml/ecma/kjs_window.cpp:
        (Window::installTimeout): Variant that takes a function and args.
(WindowFunc::tryCall): If the argument is a function, call the
function variant of installTimeout instead of pointlessly passing
the string. Also, correctly implement the code to pass extra args
along.
        * khtml/ecma/kjs_window.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5072 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoTools:
mjs [Fri, 26 Sep 2003 04:08:15 +0000 (04:08 +0000)]
Tools:

Roll out build system change since it did not actually work. :-(

        * Scripts/SourceTools.pm:
        * Scripts/embed-into-alex: Added.
        * Scripts/embed-into-webkit: Removed.

JavaScriptCore:

Roll out build system change since it did not actually work. :-(

        * JavaScriptCore.pbproj/project.pbxproj:
        * Makefile.am:

WebCore:

Roll out build system change since it did not actually work. :-(

        * WebCore.pbproj/project.pbxproj:

WebKit:

Roll out build system change since it did not actually work. :-(

        * WebKit.pbproj/project.pbxproj:

WebBrowser:

Roll out build system change since it did not actually work. :-(

        * WebBrowser.pbproj/project.pbxproj:
        * add-environment.sh: Removed.
        * embed-frameworks.sh: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5071 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoUpdating the layout tests.
hyatt [Fri, 26 Sep 2003 01:04:06 +0000 (01:04 +0000)]
Updating the layout tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5070 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Change layout so that it is called from the private _recursive functions instead of
hyatt [Fri, 26 Sep 2003 00:58:11 +0000 (00:58 +0000)]
Change layout so that it is called from the private _recursive functions instead of
inside drawRect.

        Reviewed by kocienda

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView layoutToPageWidth:adjustingViewSize:]):
        (-[WebHTMLView drawRect:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:testDirtyRect:]):
        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
        (-[WebHTMLView _web_setPrintingModeRecursive]):
        (-[WebHTMLView _web_clearPrintingModeRecursive]):
        (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
        (-[NSView _web_setPrintingModeRecursive]):
        (-[NSView _web_clearPrintingModeRecursive]):
        (-[NSView _web_layoutIfNeededRecursive:testDirtyRect:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5069 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Landing the new repainting code. This code eliminates many redundant layouts, makes
hyatt [Fri, 26 Sep 2003 00:57:15 +0000 (00:57 +0000)]
Landing the new repainting code.  This code eliminates many redundant layouts, makes
layout scheduling work properly when called from WebKit, cleans up relpositioned inlines
that act as containing blocks for absolute positioned children, and eliminates the
repaint timer.

        Reviewed by kocienda

        * ChangeLog:
        * khtml/html/html_documentimpl.cpp:
        (HTMLDocumentImpl::close):
        * khtml/khtmlview.cpp:
        (KHTMLView::KHTMLView):
        * khtml/khtmlview.h:
        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_block.h:
        * khtml/rendering/render_box.cpp:
        (RenderBox::setStyle):
        (RenderBox::setPixmap):
        (RenderBox::getAbsoluteRepaintRect):
        (RenderBox::computeAbsoluteRepaintRect):
        (RenderBox::repaintIfMoved):
        (RenderBox::calcAbsoluteHorizontal):
        (RenderBox::calcAbsoluteVertical):
        * khtml/rendering/render_box.h:
        * khtml/rendering/render_canvas.cpp:
        (RenderCanvas::layout):
        (RenderCanvas::repaintViewRectangle):
        (RenderCanvas::getAbsoluteRepaintRect):
        (RenderCanvas::computeAbsoluteRepaintRect):
        * khtml/rendering/render_canvas.h:
        * khtml/rendering/render_container.cpp:
        (RenderContainer::addChild):
        (RenderContainer::removeChildNode):
        (RenderContainer::removeChild):
        (RenderContainer::appendChildNode):
        (RenderContainer::insertChildNode):
        * khtml/rendering/render_flexbox.cpp:
        * khtml/rendering/render_flow.cpp:
        (RenderFlow::getAbsoluteRepaintRect):
        * khtml/rendering/render_flow.h:
        * khtml/rendering/render_image.cpp:
        (RenderImage::setPixmap):
        (RenderImage::layout):
        * khtml/rendering/render_inline.cpp:
        (RenderInline::addChildToFlow):
        * khtml/rendering/render_layer.cpp:
        (RenderLayer::convertToLayerCoords):
        * khtml/rendering/render_list.cpp:
        (RenderListMarker::setPixmap):
        * khtml/rendering/render_object.cpp:
        (RenderObject::RenderObject):
        (RenderObject::setNeedsLayout):
        (RenderObject::setChildNeedsLayout):
        (RenderObject::markContainingBlocksForLayout):
        (RenderObject::containingBlock):
        (RenderObject::repaint):
        (RenderObject::repaintRectangle):
        (RenderObject::repaintAfterLayoutIfNeeded):
        (RenderObject::repaintIfMoved):
        (RenderObject::repaintPositionedAndFloatingDescendants):
        (RenderObject::getAbsoluteRepaintRect):
        (RenderObject::getAbsoluteRepaintRectIncludingDescendants):
        (RenderObject::computeAbsoluteRepaintRect):
        (RenderObject::setStyle):
        (RenderObject::container):
        (RenderObject::detach):
        (RenderObject::scheduleRelayout):
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_style.cpp:
        (RenderStyle::diff):
        * khtml/rendering/render_table.cpp:
        (RenderTable::layout):
        (RenderTableRow::getAbsoluteRepaintRect):
        (RenderTableCell::computeAbsoluteRepaintRect):
        * khtml/rendering/render_table.h:
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeBaseImpl::insertBefore):
        (NodeBaseImpl::replaceChild):
        (NodeBaseImpl::appendChild):
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::clearTimers):
        * kwq/KWQRenderTreeDebug.cpp:
        (write):
        (externalRepresentation):
        * kwq/KWQRenderTreeDebug.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5068 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoFix the css1 failure, since we now pass the test.
hyatt [Thu, 25 Sep 2003 22:42:00 +0000 (22:42 +0000)]
Fix the css1 failure, since we now pass the test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5067 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed 3433802. Written by Ed. Carbon WebView doesn't detach native view when removed.
rjw [Thu, 25 Sep 2003 22:31:00 +0000 (22:31 +0000)]
Fixed 3433802.  Written by Ed.  Carbon WebView doesn't detach native view when removed.

        Reviewed by Richard.

        * Carbon.subproj/HIWebView.m:
        (OwningWindowChanged):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5066 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed 3433488. Written by Ed. WebKit doesn't sync window visibility when new webvi...
rjw [Thu, 25 Sep 2003 22:26:47 +0000 (22:26 +0000)]
Fixed 3433488.  Written by Ed.  WebKit doesn't sync window visibility when new webview added to visible window.

        Reviewed by Richard.

        * Carbon.subproj/CarbonWindowAdapter.m:
        (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5065 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fixed 3434854. Written by Ed. Correctly handle window modality in carbon.
rjw [Thu, 25 Sep 2003 22:15:00 +0000 (22:15 +0000)]
Fixed 3434854.  Written by Ed.  Correctly handle window modality in carbon.

        Reviewed by Richard.

        * Carbon.subproj/CarbonWindowAdapter.m:
        (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):

2003-09-25  Maciej Stachowiak  <mjs@apple.com>

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoTools:
mjs [Thu, 25 Sep 2003 21:09:03 +0000 (21:09 +0000)]
Tools:

        Reviewed by Darin.

        * Scripts/SourceTools.pm: Don't try to install Foundation on the
system any more. The new build setup takes care of it.
        * Scripts/embed-into-alex: Removed.
        * Scripts/embed-into-webkit: Added.

JavaScriptCore:

        Reviewed by Darin.

        * JavaScriptCore.pbproj/project.pbxproj: Don't hack install name. Instead
of embedding into Safari, embed into WebKit as sub-umbrella.
        * Makefile.am: Don't forget to rebuild if the user removes
JavaScript.framework from symroots manually.

WebCore:

        Reviewed by Darin.

        * WebCore.pbproj/project.pbxproj: Don't hack install name. Instead
of embedding into Safari, embed into WebKit as sub-umbrella.

WebKit:

        Reviewed by Darin.

Updated setup for engineering builds. Don't embed the framework
into Safari or hack the install name. However, do copy WebCore and
JavaScriptCore into the proper sub-umbrella locations.

        * WebKit.pbproj/project.pbxproj:
        * embed-frameworks.sh: Added.

WebBrowser:

        Reviewed by Darin.

Changed things around for the engineering Safari build. Instead of
building frameworks embedded, set DYLD_FRAMEWORK_PATH via the
Info.plist (for engineering builds only). This also removes the
need to install engineering builds of Foundation on the system.

        * WebBrowser.pbproj/project.pbxproj:
        * add-environment.sh: Added.
        * embed-frameworks.sh: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5063 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoThe tree is open for Safari-108!
vicki [Thu, 25 Sep 2003 20:43:54 +0000 (20:43 +0000)]
The tree is open for Safari-108!

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5062 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoSafari-107 stamp.
vicki [Thu, 25 Sep 2003 20:40:57 +0000 (20:40 +0000)]
Safari-107 stamp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5060 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago - rolled out change to fix 3390850 because it caused a performance regression
darin [Thu, 25 Sep 2003 19:59:23 +0000 (19:59 +0000)]
    - rolled out change to fix 3390850 because it caused a performance regression

        * khtml/misc/decoder.cpp: (Decoder::decode): Rolled out change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5059 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Darin
kocienda [Thu, 25 Sep 2003 17:06:27 +0000 (17:06 +0000)]
    Reviewed by Darin

        Fix for this bug:

        <rdar://problem/3341222>: WebView doesn't follow AppKit default nextKeyView pattern

        * WebCoreSupport.subproj/WebBridge.h: Added a variable to guard against recursion
        in -[WebBridge inNextKeyViewOutsideWebFrameViews].
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge inNextKeyViewOutsideWebFrameViews]): Accessor for recursion guard.
        (-[WebBridge nextKeyViewOutsideWebFrameViews]): Do not ask webView for its
        next key view, but rather, ask it for the next key view of the last view in
        its key view loop. This is what will get us to the next view outside of the
        webView.
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView nextKeyView]): Ask AppKit, rather than khtml, for the next key
        key view if -[WebBridge inNextKeyViewOutsideWebFrameViews] returns YES. Doing
        so gives us the correct answer as calculated by AppKit, and makes HTML views
        behave like other views. This check also heads off an infinite recursion
        through -[WebBridge nextKeyViewOutsideWebFrameViews].

Also did some cleanup of some code that was marked for removal "some day".
That "some day" is today.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5058 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John.
darin [Thu, 25 Sep 2003 17:00:02 +0000 (17:00 +0000)]
    Reviewed by John.

        - fixed 3176853 -- can't attach files that have no extensions with Yahoo mail (bad Content-Type headers)

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge MIMETypeForPath:]):
        Return @"application/octet-stream" rather than nil or empty string when the type is not known.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5057 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave
kocienda [Thu, 25 Sep 2003 16:51:11 +0000 (16:51 +0000)]
    Reviewed by Dave

Name change: TextRun is now InlineTextBox. Some related names
have been changed as well. There should be no change in
behavior as a result of this patch.

        * khtml/khtml_part.cpp:
        (KHTMLPart::selectedText):
        (firstRunAt):
        (lastRunAt):
        (startAndEndLineNodesIncludingNode):
        * khtml/rendering/bidi.cpp:
        * khtml/rendering/render_flow.cpp:
        (RenderFlow::paintLineBoxDecorations):
        * khtml/rendering/render_line.cpp:
        (InlineFlowBox::placeBoxesHorizontally):
        (InlineFlowBox::placeBoxesVertically):
        * khtml/rendering/render_line.h:
        * khtml/rendering/render_text.cpp:
        (InlineTextBox::detach):
        (throw):
        (InlineTextBox::operator delete):
        (InlineTextBox::paintSelection):
        (InlineTextBox::paintDecoration):
        (InlineTextBox::checkSelectionPoint):
        (InlineTextBoxArray::InlineTextBoxArray):
        (InlineTextBoxArray::compareItems):
        (InlineTextBoxArray::findFirstMatching):
        (RenderText::deleteRuns):
        (RenderText::findNextInlineTextBox):
        (RenderText::nodeAtPoint):
        (RenderText::checkSelectionPointIgnoringContinuations):
        (RenderText::cursorPos):
        (RenderText::posOfChar):
        (RenderText::paintObject):
        (RenderText::createInlineBox):
        (RenderText::position):
        (RenderText::width):
        * khtml/rendering/render_text.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::attributedString):
        * kwq/KWQRenderTreeDebug.cpp:
        (writeTextRun):
        (write):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5056 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Added a new layout test.
darin [Thu, 25 Sep 2003 14:50:17 +0000 (14:50 +0000)]
    Added a new layout test.

        * layout-tests/fast/forms/form-element-geometry-expected.txt: Added.
        * layout-tests/fast/forms/form-element-geometry.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5055 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago * layout-tests/fast/table/003-expected.txt: Updated for textarea width change.
darin [Thu, 25 Sep 2003 06:36:18 +0000 (06:36 +0000)]
    * layout-tests/fast/table/003-expected.txt: Updated for textarea width change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5054 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoAdded marker now that the change was reviewed by Maciej.
darin [Thu, 25 Sep 2003 04:34:22 +0000 (04:34 +0000)]
Added marker now that the change was reviewed by Maciej.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5053 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago * WebView.subproj/WebHTMLView.m:
darin [Thu, 25 Sep 2003 04:28:55 +0000 (04:28 +0000)]
    * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
        Added one more call to _stopAutoscrollTimer for when drags begin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5052 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago*** empty log message ***
hyatt [Thu, 25 Sep 2003 00:47:40 +0000 (00:47 +0000)]
*** empty log message ***

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5051 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoAdding clipping tests.
hyatt [Thu, 25 Sep 2003 00:44:44 +0000 (00:44 +0000)]
Adding clipping tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5050 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3429646, <img src="blah"<img src="foo"> should show up as two images.
hyatt [Thu, 25 Sep 2003 00:37:35 +0000 (00:37 +0000)]
Fix for 3429646, <img src="blah"<img src="foo"> should show up as two images.

        Reviewed by darin

        * khtml/html/htmlparser.cpp:
        (KHTMLParser::handleResidualStyleCloseTagAcrossBlocks):
        * khtml/html/htmltokenizer.cpp:
        (HTMLTokenizer::parseTag):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5049 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Thu, 25 Sep 2003 00:09:14 +0000 (00:09 +0000)]
    Reviewed by Dave.

        - fixed a recent regression, and ...
        - fixed 3386544 -- ARCH: <object>s don't support transclusion like <iframe>s do

        * khtml/khtml_part.cpp: (KHTMLPart::childFrame): Added back a cast I should
        not have removed to fix the function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5048 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3430612, crash on about:blank in updateHoverActiveState. Just missing
hyatt [Thu, 25 Sep 2003 00:00:28 +0000 (00:00 +0000)]
Fix for 3430612, crash on about:blank in updateHoverActiveState.  Just missing
a null-check.  Also remove a hover optimization that was bogus.

        Reviewed by darin

        * khtml/rendering/render_layer.cpp:
        (RenderLayer::updateHoverActiveState):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5047 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebKit:
rjw [Wed, 24 Sep 2003 23:05:26 +0000 (23:05 +0000)]
WebKit:

Fixed 3420736.  Clear renderer caches when get an ATS font changed notification.  This fix may be moot depending on progress toward fixing 2695906.  Also 3428451 needs to should be resolved.

Also added code to get and log entry point for the function used to get a Java class from plugins.  That class is used for LiveConnect support.

        Reviewed by John.

        * Misc.subproj/WebKitLogging.h:
        * Misc.subproj/WebKitLogging.m:
        * Plugins.subproj/WebNetscapePluginPackage.h:
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage load]):
        * Plugins.subproj/npapi.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (FillStyleWithAttributes):
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory clearCaches]):
        (fontsChanged):
        (+[WebTextRendererFactory createSharedFactory]):
        (-[WebTextRendererFactory fontWithFamily:traits:size:]):
        (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):

WebCore:
Fixed 3420736.  Clear renderer caches when get an ATS font changed notification.  This fix may be moot depending on progress toward fixing 2695906.

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (+[WebCoreBridge updateAllViews]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5046 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago - a new test for JavaScript date parsing
darin [Wed, 24 Sep 2003 16:37:31 +0000 (16:37 +0000)]
    - a new test for JavaScript date parsing

        * layout-tests/fast/js/date-parse-test-expected.txt: Added.
        * layout-tests/fast/js/date-parse-test.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5045 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Wed, 24 Sep 2003 16:37:10 +0000 (16:37 +0000)]
    Reviewed by Ken.

        - fixed 3421107 -- some dates that other browsers can parse can't be parsed by KJS's Date.parse()

        * kjs/date_object.cpp: (KJS::KRFCDate_parseDate): Added code to be more strict about month names,
        to allow a time zone after date even if the date omits the time, and to understand AM and PM.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5044 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Wed, 24 Sep 2003 15:55:20 +0000 (15:55 +0000)]
    Reviewed by Ken.

        - fixed ownerElement for documents in HTML objects (helpful for some work Dave is doing)

        * khtml/khtml_part.h: Change name of frame function to childFrame for clarity.
        * khtml/khtml_part.cpp:
        (KHTMLPart::slotChildStarted): Call the frame function by its new name, childFrame.
        (KHTMLPart::slotChildCompleted): Ditto.
        (KHTMLPart::slotChildURLRequest): Ditto.
        (KHTMLPart::childFrame): Change name from frame to childFrame for clarity, and make it work
        for parts inside HTML objects, not just normal frames and iframes. The change in behavior is
        the actual fix. Note that for the three callers above, it's an error to call this when the
        result would be 0, so there's no harm in doing the extra search of HTML objects in those cases.

        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::ownerElement): Call the frame function by its new
        name, childFrame. This is the caller that will benefit most from the change in behavior.

        * kwq/KWQKHTMLPart.h: Remove childFrameForPart function, which is superseded by the
        childFrame function now.
        * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrameHierarchy): Use childFrame instead
        of childFrameForPart.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5043 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Wed, 24 Sep 2003 04:52:35 +0000 (04:52 +0000)]
    Reviewed by Ken.

        - fixed 3390850 -- Shift_JIS in meta tag ignored because <img> tag in JavaScript comes first (vintagecomp.com)

        * khtml/misc/decoder.cpp: (Decoder::decode): Don't let tags inside a script make us think we're in the body.
        Later we can enhance this even more.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5042 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoUpdate bug number to 3127833 -- autoscroll only works when mouse is moving.
darin [Tue, 23 Sep 2003 23:45:25 +0000 (23:45 +0000)]
Update bug number to 3127833 -- autoscroll only works when mouse is moving.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5041 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by John and Richard.
darin [Tue, 23 Sep 2003 23:19:58 +0000 (23:19 +0000)]
    Reviewed by John and Richard.

        - fixed 3367377 -- autoscroll only works when mouse is moving

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView viewDidMoveToWindow]): Stop the auto-scroll timer. This covers
        the case where a view is removed from the view hierarchy while the mouse is down.
        (-[WebHTMLView mouseDown:]): Start the auto-scroll timer.
        (-[WebHTMLView mouseUp:]): Stop the auto-scroll timer.
        * WebView.subproj/WebHTMLViewPrivate.h: Add an auto-scroll timer, and methods
        to start and stop it.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _startAutoscrollTimer]): Create and schedule a timer. It uses the
        same 1/10 second interval that NSTextView uses for its scrolling timer.
        (-[WebHTMLView _stopAutoscrollTimer]): Invalidate and release the timer.
        (-[WebHTMLView _autoscroll]): Check for a mouse up event in the queue; if one is
        there, then no autoscrlling. But if not, then create a fake mouse dragged event
        and dispatch it; that will lead to autoscrolling.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Tue, 23 Sep 2003 14:47:30 +0000 (14:47 +0000)]
    Reviewed by Ken.

        - fixed 3292723 -- onBlur() getting called twice on <input type=text>

        * khtml/rendering/render_replaced.cpp: (RenderWidget::eventFilter):
        Call setFocusNode(0) instead of explicitly sending a blur event, otherwise
        setFocusNode will send a second blur event later.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5039 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoFix minor coding style issue in this test; something was being
darin [Tue, 23 Sep 2003 06:34:09 +0000 (06:34 +0000)]
Fix minor coding style issue in this test; something was being
computed twice.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5038 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoFix check-in snafu.
darin [Tue, 23 Sep 2003 06:28:48 +0000 (06:28 +0000)]
Fix check-in snafu.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5037 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Tue, 23 Sep 2003 06:11:38 +0000 (06:11 +0000)]
    Reviewed by Dave.

        - worked around 3429631 -- window stops getting mouse moved events after first tooltip appears

        * WebView.subproj/WebHTMLViewPrivate.m: (-[NSToolTipPanel setAcceptsMouseMovedEvents:]):
        Do nothing, preventing the real setAcceptsMouseMovedEvents: (in class NSWindow) from being called.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5036 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Tue, 23 Sep 2003 06:09:45 +0000 (06:09 +0000)]
    Reviewed by Dave.

        - worked around 3429631 -- window stops getting mouse moved events after first tooltip appears

        * WebView.subproj/WebHTMLViewPrivate.m: (-[NSToolTipPanel setAcceptsMouseMovedEvents:]):
        Do nothing, preventing the real setAcceptsMouseMovedEvents: (in class NSWindow) from being called.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5035 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago - fixed 3391837 -- we list ISO-8859-8-E as visual ordering for Hebrew; it...
darin [Tue, 23 Sep 2003 04:03:16 +0000 (04:03 +0000)]
    - fixed 3391837 -- we list ISO-8859-8-E as visual ordering for Hebrew; it's "explicit ordering", not supported

        * kwq/mac-encodings.txt: Removed ISO-8859-8-E.
        * kwq/KWQCharsetData.c: Regenerated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5034 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago * kwq/KWQTextEdit.mm: (QTextEdit::sizeWithColumnsAndRows): Made it compile.
darin [Mon, 22 Sep 2003 23:29:42 +0000 (23:29 +0000)]
    * kwq/KWQTextEdit.mm: (QTextEdit::sizeWithColumnsAndRows): Made it compile.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5033 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Maciej.
darin [Mon, 22 Sep 2003 22:09:01 +0000 (22:09 +0000)]
    Reviewed by Maciej.

        - fixed 3306041 -- Airborne tracking number field too narrow, tracking doesn't work (textare col property)

        * khtml/rendering/render_form.cpp: (RenderTextArea::calcMinMaxWidth): Call the QTextEdit
        to ask it what size, rather than trying to compute it. This is the same thing we do with
        other widgets, I just hadn't done textarea yet.

        * kwq/KWQTextEdit.h: Added sizeWithColumnsAndRows function.
        * kwq/KWQTextEdit.mm: (QTextEdit::sizeWithColumnsAndRows): Added. Calls through to the
        KWQTextArea object.

        * kwq/KWQTextArea.h: Added sizeWithColumns:rows: method.
        * kwq/KWQTextArea.mm:
        (-[KWQTextArea _createTextView]): Make consistent with other callers of the size mapping methods
        by using [self class] instead of NSScrollView, and getting hasHorizontalScroller and
        hasVerticalScroller from the view.
        (-[KWQTextArea setFrame:]): Make consistent with other callers of the size mapping methods
        by using [self class] instead of NSScrollView.
        (-[KWQTextArea sizeWithColumns:rows:]): Added. Starts by computing the width and height of the
        columns specified, using a canonical width of a "0" character. Then converts that to a container
        size by adding line fragment padding. Then converts that into the text view size by adding the
        text container inset. Then converts that into the scroll view size by calling frameSizeForContentSize:.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5032 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agotop level:
darin [Mon, 22 Sep 2003 18:16:08 +0000 (18:16 +0000)]
top level:

        * configure.in: Add "OptimizedWithSymbols" build style.

JavaScriptCore:

        * JavaScriptCore.pbproj/project.pbxproj: Rename Mixed build style to OptimizedWithSymbols.

WebCore:

        * WebCore.pbproj/project.pbxproj: Rename Mixed build style to OptimizedWithSymbols.

WebKit:

        * WebKit.pbproj/project.pbxproj: Rename Mixed build style to OptimizedWithSymbols.

WebBrowser:

        * WebBrowser.pbproj/project.pbxproj: Rename Mixed build style to OptimizedWithSymbols.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5031 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoTweaked some old ChangeLog entries to get rid of "Reviewed by NOBODY".
darin [Mon, 22 Sep 2003 15:22:40 +0000 (15:22 +0000)]
Tweaked some old ChangeLog entries to get rid of "Reviewed by NOBODY".

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5030 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Mon, 22 Sep 2003 15:21:34 +0000 (15:21 +0000)]
    Reviewed by Ken.

        - research determined we were using nothing defined in config.h, so I got rid of it

        * Makefile.am: Removed rules to generate config.h.
        * config.h: Removed.

        * WebCore.pbproj/project.pbxproj: Removed define of HAVE_CONFIG_H.

        * WebCorePrefix.h: Removed include of <config.h>.

        * ForwardingHeaders/config.h: Emptied this file out. Can't remove this because there are
        some includes of <config.h> without HAVE_CONFIG_H wrappers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5029 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Ken.
darin [Mon, 22 Sep 2003 15:21:10 +0000 (15:21 +0000)]
    Reviewed by Ken.

        * kjs/config.h: Added HAVE_SYS_PARAM_H, since KJS does look for this header, and we do
        indeed have it. Just something I noticed in passing while cleaning up configure.in.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5028 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView removeTrackingRect...
darin [Mon, 22 Sep 2003 02:27:26 +0000 (02:27 +0000)]
    * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView removeTrackingRect:]): Remove bogus assert.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5027 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
darin [Mon, 22 Sep 2003 00:33:22 +0000 (00:33 +0000)]
WebCore:

        Reviewed by Dave.

        - fixed 3106411 -- show title attribute for page elements in tooltip on mouseover (important for PeopleSoft)

        * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Set the value of a new element dictionary
        key, WebCoreElementTitleKey. This gives the title for an element, walking up the DOM tree as necessary
        to find it. It's used for tool tips at the WebKit level.
        * kwq/WebCoreBridge.h: Added WebCoreElementTitleKey and WebCorePageCacheStateKey.

        * WebCore.exp: Added all the constants from WebCoreBridge.h; these should be exported even though they
        are not being used at the moment because the "WebCore and WebKit use the same constant keys" hack we
        are doing at the WebKit level means we can just use the WebKit keys on the WebKit side.
        * WebCore-combined.exp: Regenerated.

WebKit:

        Reviewed by Dave.

        - fixed 3106411 -- show title attribute for page elements in tooltip on mouseover (important for PeopleSoft)

        * WebView.subproj/WebHTMLViewPrivate.h: Added fields needed for tool tip implementation.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLViewPrivate dealloc]): Release the tool tip string.
        (-[WebHTMLView addTrackingRect:owner:userData:assumeInside:]): Override the default NSView
        tracking rectangle implementation so we can trick the tool tip manager into trusting us about
        when you leave and enter the rectangle for each element.
        (-[WebHTMLView removeTrackingRect:]): The other half of the above stuff.
        (-[WebHTMLView _sendToolTipMouseExited]): Added. Makes an event just good enough to fool the tool tip
        manager, and send it on.
        (-[WebHTMLView _sendToolTipMouseEntered]): Ditto.
        (-[WebHTMLView _setToolTip:]): Added. Manages the new and old tool tips in a way that fools the tool
        tip manager into working even though we don't know the rectangles of the tool tips beforehand. The
        advantage of using AppKit tool tips is that they have all sorts of nice little features, like wrapping
        to a nice rectangular shape and fading out when you move away.
        (-[WebHTMLView view:stringForToolTip:point:userData:]): This is how the tool tip manager gets the actual
        tool tip text.
        (-[WebHTMLView _updateMouseoverWithEvent:]): Call _setToolTip method, using the value passed along with the
        WebCoreElementTitleKey in the dictionary.

        - unrelated code cleanup

        * WebView.subproj/WebFramePrivate.h: Don't define WebCorePageCacheStateKey here; instead use
        a definition exported from WebCore.
        * WebView.subproj/WebFramePrivate.m: Ditto.
        * English.lproj/StringsNotToBeLocalized.txt: Update for above changes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5026 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Sun, 21 Sep 2003 04:00:16 +0000 (04:00 +0000)]
    Reviewed by Dave.

        - fixed 3419380 -- JavaScript Date.getTimezoneOffset is off by one hour (during daylight savings)

        * kjs/date_object.cpp: (DateProtoFuncImp::call): The daylight savings correction
        in here was incorrect. Perhaps I should have corrected it for the non-BSD case too,
        but I'm not sure the issue is the same.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5025 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Sun, 21 Sep 2003 03:59:03 +0000 (03:59 +0000)]
    Reviewed by Dave.

        - fixed 3328481 -- selection in select element list box does not scroll into view when set programatically

        * kwq/KWQListBox.mm: (QListBox::setSelected): Scroll newly-selected item into view.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5024 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Sun, 21 Sep 2003 03:55:04 +0000 (03:55 +0000)]
    Reviewed by Dave.

        - fixed 3429384 -- REGRESSION (89-90): nil-deref in KHTMLPart::write() (cheshiremotorcyclesalvage.com)

        * khtml/khtml_part.cpp: (KHTMLPart::write): Add a nil check.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5023 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Sun, 21 Sep 2003 03:53:06 +0000 (03:53 +0000)]
    Reviewed by Dave.

        - more fixes for the W3C DOM tests

        * khtml/dom/dom_doc.cpp: (Document::createAttributeNS): Check that the attribute name
        is valid and throw INVALID_CHARACTER_ERR if not.

        * khtml/dom/dom_element.cpp:
        (Element::removeAttributeNode): Get the attribute name properly. The old code would always
        get a 0, so this function would always fail.
        (Element::setAttributeNS): Check that the attribute name is valid and throw
        INVALID_CHARACTER_ERR if not.
        (Element::setAttributeNodeNS): Remove redundant exception checks that are also done by
        setNamedItem in the implementation. I had to change the implementation of one, so I decided
        it was better not to have any duplication.

        * khtml/xml/dom_docimpl.h: Added isValidName function.
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::createHTMLElement): Check that the attribute name is valid and throw
        INVALID_CHARACTER_ERR if not.
        (DocumentImpl::isValidName): Added. Used to check for valid names.

        * khtml/xml/dom_elementimpl.cpp:
        (NamedAttrMapImpl::setNamedItem): Don't do the document check until after checking for
        the "replace self" case. Otherwise we raise a spurious "in use" exception.
        (NamedAttrMapImpl::addAttribute): Point the new attribute at the element.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5022 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
mjs [Sat, 20 Sep 2003 01:22:05 +0000 (01:22 +0000)]
WebCore:

        Reviewed by Darin.

Roll out old fix for 3410980 and do a new better fix.

        * khtml/html/html_documentimpl.cpp:
        (HTMLDocumentImpl::close):
        * khtml/khtml_part.h:
        * kwq/KWQKHTMLPart.mm:
        * kwq/WebCoreBridge.h:

WebKit:

        Reviewed by Darin.

Roll out old fix for 3410980.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge goBackOrForward:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Fri, 19 Sep 2003 23:55:42 +0000 (23:55 +0000)]
    Reviewed by Dave.

        - update layout tests for Dave's change

        * layout-tests/apple-only/base/www.excite.com/index-expected.txt:
        * layout-tests/fast/block/positioning/051-expected.txt:
        * layout-tests/fast/overflow/003-expected.txt:

        - fixed 3426272 -- sites that use text-shadow cause leaks (QPainter::setShadow)

        * kwq/KWQPainter.mm: (QPainter::setShadow): Release the color space and color.

        - fixed some errors that caused failures in the W3C DOM suite

        * khtml/ecma/kjs_binding.cpp:
        (DOMObject::get): Put "code" in the error object.
        (DOMObject::put): Put "code" in the error object.
        (DOMFunction::get): Put "code" in the error object.

        * khtml/ecma/kjs_dom.cpp: (DOMCharacterDataProtoFunc::tryCall):
        Add checks for negative count values. Not clear whether this change is
        really great, but it helps us pass W3C DOM tests and clearly won't affect
        normal pages in any bad way.

        * khtml/xml/dom_elementimpl.cpp:
        (AttrImpl::AttrImpl): Set m_specified to true. Since we never set up the
        attributes from the DTD anyway, this is fine for now. If we ever go crazy
        and implement that, then the bit field is sitting here waiting for us.
        (NamedAttrMapImpl::removeNamedItem): The comment from KHTML says they
        don't raise the not found exception because "the DOM 2 spec doesn't say
        you should". But the DOM Level 1 specification clearly does, and the W3C
        DOM Level 1 Core test requires it, so I'm putting it in.

        * khtml/xml/dom_nodeimpl.cpp: (NodeImpl::checkAddChild): Typo; this was
        returning the wrong error code in the "wrong document" case.

        * khtml/xml/dom_stringimpl.cpp:
        (DOMStringImpl::remove): Fix overflow case.
        (DOMStringImpl::substring): Fix overflow case.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoFix build error.
hyatt [Fri, 19 Sep 2003 23:28:28 +0000 (23:28 +0000)]
Fix build error.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Fix for 3401409, fix negative z-index. This code actually substantially
hyatt [Fri, 19 Sep 2003 22:54:38 +0000 (22:54 +0000)]
Fix for 3401409, fix negative z-index.  This code actually substantially
reworks layers to be more efficient in both painting and event handling.
It also fixes bugs with clipping as well as with negative z-indices.

        Reviewed by kocienda

        * khtml/css/cssstyleselector.cpp:
        * khtml/rendering/render_block.cpp:
        * khtml/rendering/render_block.h:
        * khtml/rendering/render_box.cpp:
        (RenderBox::setStyle):
        (RenderBox::repaintRectangle):
        * khtml/rendering/render_box.h:
        * khtml/rendering/render_frames.cpp:
        (RenderFrameSet::nodeAtPoint):
        * khtml/rendering/render_frames.h:
        * khtml/rendering/render_image.cpp:
        (RenderImage::nodeAtPoint):
        * khtml/rendering/render_image.h:
        * khtml/rendering/render_inline.cpp:
        (RenderInline::nodeAtPoint):
        * khtml/rendering/render_inline.h:
        * khtml/rendering/render_layer.cpp:
        (RenderLayer::RenderLayer):
        (RenderLayer::~RenderLayer):
        (RenderLayer::updateLayerPosition):
        (RenderLayer::stackingContext):
        (RenderLayer::enclosingPositionedAncestor):
        (RenderLayer::transparentAncestor):
        (RenderLayer::addChild):
        (RenderLayer::removeChild):
        (RenderLayer::convertToLayerCoords):
        (RenderLayer::checkScrollbarsAfterLayout):
        (RenderLayer::paintScrollbars):
        (RenderLayer::paint):
        (setClip):
        (restoreClip):
        (RenderLayer::paintLayer):
        (RenderLayer::nodeAtPoint):
        (RenderLayer::nodeAtPointForLayer):
        (RenderLayer::calculateClipRects):
        (RenderLayer::calculateRects):
        (RenderLayer::intersectsDamageRect):
        (RenderLayer::containsPoint):
        (hoverAncestor):
        (commonAncestor):
        (RenderLayer::updateHoverActiveState):
        (sortByZOrder):
        (RenderLayer::dirtyZOrderLists):
        (RenderLayer::updateZOrderLists):
        (RenderLayer::collectLayers):
        * khtml/rendering/render_layer.h:
        * khtml/rendering/render_object.cpp:
        (RenderObject::setStyle):
        (RenderObject::document):
        (RenderObject::renderArena):
        (RenderObject::nodeAtPoint):
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_text.cpp:
        (RenderText::nodeAtPoint):
        * khtml/rendering/render_text.h:
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::~DocumentImpl):
        (DocumentImpl::recalcStyleSelector):
        (DocumentImpl::setHoverNode):
        * khtml/xml/dom_docimpl.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::paint):
        (KWQKHTMLPart::paintSelectionOnly):
        (KWQKHTMLPart::adjustPageHeight):
        * kwq/KWQRect.h:
        * kwq/KWQRenderTreeDebug.cpp:
        (write):
        (writeLayers):
        (externalRepresentation):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5009 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Dave.
darin [Fri, 19 Sep 2003 22:16:10 +0000 (22:16 +0000)]
    Reviewed by Dave.

        * layout-tests: Updated for my mini-controls change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
darin [Fri, 19 Sep 2003 21:46:47 +0000 (21:46 +0000)]
WebCore:

        Reviewed by Dave.

        - do the prep work for the mini controls feature; Dave will finish this

        * khtml/rendering/render_form.cpp: (RenderFormElement::updateFromElement):
        Tell the widget about the font size. Our widgets use the font size to
        decide whether to use Aqua normal, small, or mini.

        * kwq/KWQButton.h: Add setFont.
        * kwq/KWQButton.mm:
        (QButton::setFont): Set control size based on font.
        (KWQNSControlSizeForFont): Determine control size given a font. Dave is going
        to tweak this later.

        * kwq/KWQCheckBox.h: Add dimensions function for metrics for each control size.
        * kwq/KWQCheckBox.mm:
        (QCheckBox::sizeHint): Use dimensions.
        (QCheckBox::frameGeometry): Use dimensions.
        (QCheckBox::setFrameGeometry): Use dimensions.
        (QCheckBox::baselinePosition): Use dimensions.
        (QCheckBox::dimensions): Added. Has newly tweaked values for all dimensions for
        all three control sizes.

        * kwq/KWQComboBox.h: Add setFont and dimensions.
        * kwq/KWQComboBox.mm:
        (QComboBox::sizeHint): Use dimensions.
        (QComboBox::frameGeometry): Use dimensions.
        (QComboBox::setFrameGeometry): Use dimensions.
        (QComboBox::baselinePosition): Use dimensions.
        (QComboBox::setFont): Use dimensions.
        (QComboBox::dimensions): Added. Has newly tweaked values for all dimensions for
        all three control sizes.

        * kwq/KWQFileButton.mm: (KWQFileButton::baselinePosition): Change to adapt to
        flipped version of file button NSControl.

        * kwq/KWQPushButton.h: Add dimensions function for metrics for each control size.
        * kwq/KWQPushButton.mm:
        (QPushButton::sizeHint): Use dimensions.
        (QPushButton::frameGeometry): Use dimensions.
        (QPushButton::setFrameGeometry): Use dimensions.
        (QPushButton::baselinePosition): Use dimensions.
        (QPushButton::dimensions): Added. Has newly tweaked values for all dimensions for
        all three control sizes.

        * kwq/KWQRadioButton.h: Add dimensions function for metrics for each control size.
        * kwq/KWQRadioButton.mm:
        (QRadioButton::sizeHint): Use dimensions.
        (QRadioButton::frameGeometry): Use dimensions.
        (QRadioButton::setFrameGeometry): Use dimensions.
        (QRadioButton::baselinePosition): Use dimensions.
        (QRadioButton::dimensions): Added. Has newly tweaked values for all dimensions for
        all three control sizes.

WebKit:

        Reviewed by Dave.

        - do the prep work for the mini controls feature; Dave will finish this

        * WebCoreSupport.subproj/WebFileButton.m:
        (-[WebFileButton isFlipped]): Make this flipped, easier to understand coordinates that way.
        (-[WebFileButton drawRect:]): Update for flipped-ness.
        (-[WebFileButton visualFrame]): Update for flipped-ness.
        (-[WebFileButton setVisualFrame:]): Update for flipped-ness.
        (-[WebFileButton baseline]): Update for flipped-ness.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
mjs [Fri, 19 Sep 2003 20:46:17 +0000 (20:46 +0000)]
WebCore:

        Reviewed by Darin.

- fixed 3410980 - FileMaker: going forward with an empty forward list makes a frame come out blank sometimes

        * khtml/html/html_documentimpl.cpp:
        (HTMLDocumentImpl::close): Remove redundant check removed.
        * khtml/khtml_part.h:
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::scheduleHistoryNavigation): Only call the base class
method to actually schedule when it's possible to go back or forward
that number of steps.
        * kwq/WebCoreBridge.h:

WebKit:

        Reviewed by Darin.

- fixed 3410980 - FileMaker: going forward with an empty forward list makes a frame come out blank sometimes

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge backOrForwardItemWithDistance:]): Factored out from goBackOrForward.
        (-[WebBridge canGoBackOrForward:]): Use the new method.
        (-[WebBridge goBackOrForward:]): Likewise.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years ago Reviewed by Maciej.
darin [Thu, 18 Sep 2003 21:56:56 +0000 (21:56 +0000)]
    Reviewed by Maciej.

        * kjs/date_object.cpp: Removed our CF-based implementations of gmtime, localtime,
        mktime, timegm, and time, since they no longer have the slow "hit the filesystem
        every time" behavior.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5005 268f45cc-cd09-0410-ab3c-d52691b4dbfc

17 years agoWebCore:
sullivan [Thu, 18 Sep 2003 15:26:08 +0000 (15:26 +0000)]
WebCore:

- WebCore part of fix for 3157018 -- Would like option to
not print backgrounds

        Reviewed by Darin

        * kwq/KWQKHTMLSettings.h:
add _shouldPrintBackgrounds field and accessors

        * kwq/WebCoreSettings.h:
add shouldPrintBackgrounds field and accessors
        * kwq/WebCoreSettings.mm:
        (-[WebCoreSettings setShouldPrintBackgrounds:]):
new method, passes value to KHTMLSettings
        (-[WebCoreSettings shouldPrintBackgrounds]):
new method

        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge styleSheetForPrinting]):
new method, returns a style sheet that has backgrounds
turned off if preference is set that way.
        (-[WebCoreBridge reapplyStylesForDeviceType:]):
if printing, set the printStyleSheet to the one we
created based on the preferences. (KHTML has always
had support for a special printStyleSheet, but it was
only being used in !APPLE_CHANGES code.)

        * khtml/rendering/render_style.h:
add shouldCorrectTextColor boolean field and accessors

        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::recalcStyle):
tell style to correct text colors if backgrounds aren't being printed

        * khtml/rendering/render_text.cpp:
        (TextRun::paintSelection):
added comment
        (simpleDifferenceBetweenColors):
new function, computes a quick measure of difference
between colors
        (correctedTextColor):
if text and background colors are too similar, returns
lightened or darkened text color
        (RenderText::paintObject):
if style says to correct text colors, call correctedTextColor

WebKit:

- WebKit part of fix for 3157018 -- Would like option to
not print backgrounds

        Reviewed by Darin

        * WebView.subproj/WebPreferences.h:
new accessor methods for new shouldPrintBackgrounds preference
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences initialize]):
set initial value for WebKitShouldPrintBackgroundsPreferenceKey
to NO
        (-[WebPreferences shouldPrintBackgrounds]):
new method, read NSUserDefaults value
        (-[WebPreferences setShouldPrintBackgrounds:]):
new method, write NSUserDefault value

        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _updateWebCoreSettingsFromPreferences:]):
tell WebCore about value of shouldPrintBackgrounds

        * English.lproj/StringsNotToBeLocalized.txt:
Updated for these and other recent changes

WebBrowser:

- WebBrowser part of fix for 3157018 -- Would like option to
not print backgrounds

        Reviewed by Darin

* English.lproj/PrintingAccessoryView.nib:
new nib file, contains view holding single "Print
Backgrounds" checkbox

        * PrintingAccessoryViewController.h: Added.
        * PrintingAccessoryViewController.m: Added.
        (-[PrintingAccessoryViewController init]):
load the nib file with self as owner
        (+[PrintingAccessoryViewController sharedController]):
returns shared instance used by BrowserDocument
        (-[PrintingAccessoryViewController togglePrintBackgrounds:]):
toggle the WebKit preference (which in turn updates the
WebCore setting)
        (-[PrintingAccessoryViewController accessoryView]):
returns the view from the nib that will be displayed in the
print panel, after updating the checkbox state

        * BrowserDocument.m:
        (-[BrowserDocument printWebFrameView:showingPrintPanel:]):
Set up print panel's accessory view

        * Preferences.subproj/AppearancePreferences.m:
removed unused method I stumbled across

        * WebBrowser.pbproj/project.pbxproj:
updated for new files

        * English.lproj/StringsNotToBeLocalized.txt:
Updated for these changes

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5004 268f45cc-cd09-0410-ab3c-d52691b4dbfc