WebKit-https.git
18 years agoRevise layout tests now that we break on hyphens and question marks.
hyatt [Mon, 17 Nov 2003 22:20:03 +0000 (22:20 +0000)]
Revise layout tests now that we break on hyphens and question marks.

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

18 years ago Fix for 2931829, lines with hyphens should break on the hyphens. Match WinIE's...
hyatt [Mon, 17 Nov 2003 22:08:09 +0000 (22:08 +0000)]
Fix for 2931829, lines with hyphens should break on the hyphens.  Match WinIE's behavior of
breaking on - and ?.

        Reviewed by john

        * khtml/rendering/break_lines.cpp:
        (khtml::isBreakable):

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

18 years agoCheck in revised layout tests after changing all the logical font size definitions.
hyatt [Mon, 17 Nov 2003 21:15:40 +0000 (21:15 +0000)]
Check in revised layout tests after changing all the logical font size definitions.

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

18 years ago Fix for 3415771, Safari should use mini form controls when necessary. This patch...
hyatt [Mon, 17 Nov 2003 20:38:09 +0000 (20:38 +0000)]
Fix for 3415771, Safari should use mini form controls when necessary.  This patch adds heuristics for
swapping in mini form controls and also drops intrinsic margins when mini form controls are used.

Fix for 3486454, options/optgroups should strip leading/trailing space.

Together these two fixes solve 3486581, travelocity misrenders because form controls are too large.

Reviewed by Darin

Also fixing 3474994, alink needs to be restricted to actual links and not all <a> tags.

Reviewed by John

Finally, adding :active outlines around <input type=image> (covered by the old bug 3141767).

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::CSSStyleSelector):
        (khtml::CSSStyleSelector::applyRule):
        (khtml::CSSStyleSelector::checkForGenericFamilyChange):
        (khtml::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
        (khtml::):
        (khtml::CSSStyleSelector::fontSizeForKeyword):
        (khtml::CSSStyleSelector::largerFontSize):
        (khtml::CSSStyleSelector::smallerFontSize):
        * khtml/css/cssstyleselector.h:
        * khtml/css/html4.css:
        * khtml/html/html_baseimpl.cpp:
        (HTMLBodyElementImpl::parseAttribute):
        * khtml/khtml_part.cpp:
        (KHTMLPart::setZoomFactor):
        * khtml/rendering/render_form.cpp:
        (RenderFormElement::addIntrinsicMarginsIfAllowed):
        (RenderSelect::updateFromElement):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::recalcStyle):
        (DocumentImpl::attach):
        * kwq/KWQButton.mm:
        (KWQNSControlSizeForFont):

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

18 years ago Back out my change to exclude text runs from getting a relayout on a style change...
hyatt [Mon, 17 Nov 2003 11:45:23 +0000 (11:45 +0000)]
Back out my change to exclude text runs from getting a relayout on a style change.  I totally forgot about
text zooming.

        * khtml/rendering/render_object.cpp:
        (RenderObject::setStyle):

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

18 years agoWebCore:
mjs [Mon, 17 Nov 2003 09:29:57 +0000 (09:29 +0000)]
WebCore:

        Reviewed by Dave.

<rdar://problem/3131664>: add support for the window.print() command used for "print this page" buttons

* khtml/ecma/kjs_window.cpp:
        (Window::get): add support for window.print (Apple-only)
        (WindowFunc::tryCall): ditto
        * khtml/ecma/kjs_window.h: Add Print to enum
        * khtml/ecma/kjs_window.lut.h: Regenerated
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::print): Call bridge.
        * kwq/KWQKHTMLPart.h: Declare above.
        * kwq/WebCoreBridge.h: prototype print method for other side of bridge.

WebKit:

        Reviewed by Dave.

WebKit part of fix for:

<rdar://problem/3131664>: add support for the window.print() command used for "print this page" buttons

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge print]): Call delegate.
        * WebView.subproj/WebDefaultUIDelegate.m:
        (-[WebDefaultUIDelegate webViewPrint:]): Implemented (do nothing).
        * WebView.subproj/WebUIDelegatePrivate.h: Added. Add extra SPI method webViewPrint:
for UI delegate.
        * WebKit.pbproj/project.pbxproj: Install WebUIDelegatePrivate.h as private header

WebBrowser:

        Reviewed by Dave.

WebBrowser part of fix for:

<rdar://problem/3131664>: add support for the window.print() command used for "print this page" buttons

        * BrowserWebController.m:
        (-[BrowserWebView webViewPrint:]): Call printDocument: on the document.

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

18 years ago Reviewed by Darin.
mjs [Mon, 17 Nov 2003 05:34:36 +0000 (05:34 +0000)]
    Reviewed by Darin.

        * kwq/KWQKHTMLPartBrowserExtension.mm:
        (KHTMLPartBrowserExtension::createNewWindow): Check for the
returned part being NULL, not the out value pointer.

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

18 years ago Fix for 3485779, <input type=image> and <button> should not be mouse focusable.
hyatt [Mon, 17 Nov 2003 02:31:10 +0000 (02:31 +0000)]
Fix for 3485779, <input type=image> and <button> should not be mouse focusable.

Fix for 3485795, <input type=image> and <button> are being treated like links when they should not be.

Fix for 3485817, <input type=image> and <button> should obey full keyboard access mode.

Fix for 3485802, fieldset/legend/option/optgroup/label should not be focusable at all.

        Reviewed by kocienda

        * ChangeLog:
        * khtml/html/html_formimpl.cpp:
        (HTMLGenericFormElementImpl::isKeyboardFocusable):
        (HTMLGenericFormElementImpl::isMouseFocusable):
        (HTMLFieldSetElementImpl::isFocusable):
        (HTMLLabelElementImpl::isFocusable):
        (HTMLLegendElementImpl::isFocusable):
        (HTMLOptGroupElementImpl::isFocusable):
        (HTMLOptionElementImpl::HTMLOptionElementImpl):
        (HTMLOptionElementImpl::isFocusable):
        * khtml/html/html_formimpl.h:
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::isMouseFocusable):
        (HTMLAnchorElementImpl::isKeyboardFocusable):
        * khtml/html/html_inlineimpl.h:
        * khtml/khtml_part.cpp:
        (KHTMLPart::tabsToLinks):
        (KHTMLPart::tabsToAllControls):
        * khtml/khtml_part.h:
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::nextKeyViewInFrame):
        (KWQKHTMLPart::tabsToLinks):
        (KWQKHTMLPart::tabsToAllControls):

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

18 years ago Reviewed by John.
darin [Mon, 17 Nov 2003 01:36:46 +0000 (01:36 +0000)]
    Reviewed by John.

        - fixes 3457162 -- selecting text during a page load that blows the text field away causes a crash
        - fixes 3160035 -- crash or hang if you hold down a button while "go to about:blank soon" test runs
        - without causing 3484608 -- REGRESSION: Flash broken at http://www.macromedia.com/

        The WebKit part of this fix is making setDefersCallbacks: work. It had succumbed to bit rot.
        This has a side effect of not considering a page load done until all the plug-in streams are loaded.
        If that's not a good idea, we'll have to keep two separate lists in WebDataSource.

        * WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate setDataSource:]):
        Set the defersCallbacks state from the WebView here so that clients don't have to do it.

        * WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubresourceClient:]): Remove call to
        set the defersCallbacks state on the subresource client, because the above change obviates it.
        (the client/delegate terminology makes it confusing, but it's a subclass). Also loosen the type
        so we can call this on clients for plug-in streams too.
        (-[WebDataSource _removeSubresourceClient:]): Loosen type here too.
        (-[WebDataSource _defersCallbacksChanged]): And here.
        * WebView.subproj/WebDataSourcePrivate.h: Loosen type of subresource client so we can pass in the
        delegates for plug-in streams too.

        * WebView.subproj/WebMainResourceClient.h: Added an _initialRequest field so we can defer the very
        first callback, which does not rely on NSURLConnection.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient dealloc]): Release the initial request.
        (-[WebMainResourceClient loadWithRequestNow:]): Moved the guts of loadWithRequest in here; to be
        used when the request is no longer deferred. Also removed the code to call setDefersCallbacks:
        on the connection, and assert that we are only called when callbacks are not deferred. Because
        the very first callback was not deferred, we would end up calling setDefersCallbacks:NO on the
        WebView, so nothing would be deferred.
        (-[WebMainResourceClient loadWithRequest:]): If callbacks are not deferred, then call the
        loadWithRequestNow: method, otherwise simply store the request in _initialRequest.
        (-[WebMainResourceClient setDefersCallbacks:]): If there is an _initialRequest and we are
        ceasing deferral of callbacks, then call the loadWithRequestNow: method.

        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream start]): Call _addSubresourceClient, and then _removeSubresourceClient
        if the load fails to even start.
        (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): Call _removeSubresourceClient.
        (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): Call _removeSubresourceClient.

        * Plugins.subproj/WebBaseNetscapePluginStream.h: Removed unneeded import.
        * Plugins.subproj/WebPluginDatabase.m: Add import needed now that WebBaseNetscapePluginStream.h
        imports less than before.

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

18 years ago Reviewed by Dave.
mjs [Mon, 17 Nov 2003 01:13:28 +0000 (01:13 +0000)]
    Reviewed by Dave.

- fixed 3484723 - name property of window reference from window.open call is always empty

        * kwq/KWQKHTMLPartBrowserExtension.mm:
        (KHTMLPartBrowserExtension::createNewWindow): Set the part name on the khtml side when
making a new window.

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

18 years ago Fix for 3485766.
hyatt [Mon, 17 Nov 2003 00:02:04 +0000 (00:02 +0000)]
Fix for 3485766.

Make sure DOM elements that are programmatically focused at a time when they have no render objects restore the
focus to their widgets when render objects get built.

        Reviewed by darin

        * khtml/html/html_formimpl.cpp:
        (HTMLGenericFormElementImpl::attach):

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

18 years ago Reviewed by John.
mjs [Sun, 16 Nov 2003 23:03:54 +0000 (23:03 +0000)]
    Reviewed by John.

- fixed 3483829 - JavaScriptCore needs workaround to compile on Merlot

        * JavaScriptCore.pbproj/project.pbxproj: Add -Wno-long-double to
warning flags.

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

18 years ago Add border info to the render tree dumper.
hyatt [Sun, 16 Nov 2003 23:02:20 +0000 (23:02 +0000)]
Add border info to the render tree dumper.

        * khtml/rendering/render_style.h:
        (khtml::BorderValue::operator!=):
        * kwq/KWQRenderTreeDebug.cpp:
        (printBorderStyle):
        (operator<<):
        * layout-tests/apple-only/base/bugzilla.mozilla.org/index-expected.txt:
        * layout-tests/apple-only/base/home.netscape.com/index-expected.txt:
        * layout-tests/apple-only/base/lxr.mozilla.org/index-expected.txt:
        * layout-tests/apple-only/base/my.netscape.com/index-expected.txt:
        * layout-tests/apple-only/base/news.cnet.com/index-expected.txt:
        * layout-tests/apple-only/base/web.icq.com/index-expected.txt:
        * layout-tests/apple-only/base/www.altavista.com/index-expected.txt:
        * layout-tests/apple-only/base/www.amazon.com/index-expected.txt:
        * layout-tests/apple-only/base/www.cnn.com/index-expected.txt:
        * layout-tests/apple-only/base/www.digitalcity.com/index-expected.txt:
        * layout-tests/apple-only/base/www.ebay.com/index-expected.txt:
        * layout-tests/apple-only/base/www.excite.com/index-expected.txt:
        * layout-tests/apple-only/base/www.expedia.com/index-expected.txt:
        * layout-tests/apple-only/base/www.iplanet.com/index-expected.txt:
        * layout-tests/apple-only/base/www.mapquest.com/index-expected.txt:
        * layout-tests/apple-only/base/www.microsoft.com/index-expected.txt:
        * layout-tests/apple-only/base/www.moviefone.com/index-expected.txt:
        * layout-tests/apple-only/base/www.msn.com/index-expected.txt:
        * layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
        * layout-tests/apple-only/base/www.nytimes.com/index-expected.txt:
        * layout-tests/apple-only/base/www.nytimes.com_Table/index-expected.txt:
        * layout-tests/apple-only/base/www.quicken.com/index-expected.txt:
        * layout-tests/apple-only/base/www.sun.com/index-expected.txt:
        * layout-tests/apple-only/base/www.time.com/index-expected.txt:
        * layout-tests/apple-only/base/www.travelocity.com/index-expected.txt:
        * layout-tests/apple-only/base/www.w3.org_DOML2Core/index-expected.txt:
        * layout-tests/apple-only/base/www.yahoo.com/index-expected.txt:
        * layout-tests/apple-only/base/www.zdnet.com/index-expected.txt:
        * layout-tests/apple-only/base/www.zdnet.com_Gamespot.com/index-expected.txt:
        * layout-tests/css1/basic/class_as_selector-expected.txt:
        * layout-tests/css1/basic/comments-expected.txt:
        * layout-tests/css1/basic/containment-expected.txt:
        * layout-tests/css1/basic/contextual_selectors-expected.txt:
        * layout-tests/css1/basic/grouping-expected.txt:
        * layout-tests/css1/basic/id_as_selector-expected.txt:
        * layout-tests/css1/basic/inheritance-expected.txt:
        * layout-tests/css1/box_properties/acid_test-expected.txt:
        * layout-tests/css1/box_properties/border-expected.txt:
        * layout-tests/css1/box_properties/border_bottom-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_width-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_color-expected.txt:
        * layout-tests/css1/box_properties/border_color_inline-expected.txt:
        * layout-tests/css1/box_properties/border_inline-expected.txt:
        * layout-tests/css1/box_properties/border_left-expected.txt:
        * layout-tests/css1/box_properties/border_left_inline-expected.txt:
        * layout-tests/css1/box_properties/border_left_width-expected.txt:
        * layout-tests/css1/box_properties/border_left_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_right-expected.txt:
        * layout-tests/css1/box_properties/border_right_inline-expected.txt:
        * layout-tests/css1/box_properties/border_right_width-expected.txt:
        * layout-tests/css1/box_properties/border_right_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_style-expected.txt:
        * layout-tests/css1/box_properties/border_style_inline-expected.txt:
        * layout-tests/css1/box_properties/border_top-expected.txt:
        * layout-tests/css1/box_properties/border_top_inline-expected.txt:
        * layout-tests/css1/box_properties/border_top_width-expected.txt:
        * layout-tests/css1/box_properties/border_top_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_width-expected.txt:
        * layout-tests/css1/box_properties/border_width_inline-expected.txt:
        * layout-tests/css1/box_properties/clear-expected.txt:
        * layout-tests/css1/box_properties/clear_float-expected.txt:
        * layout-tests/css1/box_properties/float-expected.txt:
        * layout-tests/css1/box_properties/float_elements_in_series-expected.txt:
        * layout-tests/css1/box_properties/float_margin-expected.txt:
        * layout-tests/css1/box_properties/float_on_text_elements-expected.txt:
        * layout-tests/css1/box_properties/height-expected.txt:
        * layout-tests/css1/box_properties/margin-expected.txt:
        * layout-tests/css1/box_properties/margin_bottom-expected.txt:
        * layout-tests/css1/box_properties/margin_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_left-expected.txt:
        * layout-tests/css1/box_properties/margin_left_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_right-expected.txt:
        * layout-tests/css1/box_properties/margin_right_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_top-expected.txt:
        * layout-tests/css1/box_properties/margin_top_inline-expected.txt:
        * layout-tests/css1/box_properties/padding-expected.txt:
        * layout-tests/css1/box_properties/padding_bottom-expected.txt:
        * layout-tests/css1/box_properties/padding_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_left-expected.txt:
        * layout-tests/css1/box_properties/padding_left_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_right-expected.txt:
        * layout-tests/css1/box_properties/padding_right_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_top-expected.txt:
        * layout-tests/css1/box_properties/padding_top_inline-expected.txt:
        * layout-tests/css1/box_properties/width-expected.txt:
        * layout-tests/css1/cascade/cascade_order-expected.txt:
        * layout-tests/css1/cascade/important-expected.txt:
        * layout-tests/css1/classification/display-expected.txt:
        * layout-tests/css1/classification/list_style-expected.txt:
        * layout-tests/css1/classification/list_style_image-expected.txt:
        * layout-tests/css1/classification/list_style_position-expected.txt:
        * layout-tests/css1/classification/list_style_type-expected.txt:
        * layout-tests/css1/classification/white_space-expected.txt:
        * layout-tests/css1/color_and_background/background-expected.txt:
        * layout-tests/css1/color_and_background/background_attachment-expected.txt:
        * layout-tests/css1/color_and_background/background_color-expected.txt:
        * layout-tests/css1/color_and_background/background_image-expected.txt:
        * layout-tests/css1/color_and_background/background_position-expected.txt:
        * layout-tests/css1/color_and_background/background_repeat-expected.txt:
        * layout-tests/css1/color_and_background/color-expected.txt:
        * layout-tests/css1/conformance/forward_compatible_parsing-expected.txt:
        * layout-tests/css1/font_properties/font-expected.txt:
        * layout-tests/css1/font_properties/font_family-expected.txt:
        * layout-tests/css1/font_properties/font_size-expected.txt:
        * layout-tests/css1/font_properties/font_style-expected.txt:
        * layout-tests/css1/font_properties/font_variant-expected.txt:
        * layout-tests/css1/font_properties/font_weight-expected.txt:
        * layout-tests/css1/formatting_model/canvas-expected.txt:
        * layout-tests/css1/formatting_model/floating_elements-expected.txt:
        * layout-tests/css1/formatting_model/height_of_lines-expected.txt:
        * layout-tests/css1/formatting_model/inline_elements-expected.txt:
        * layout-tests/css1/formatting_model/replaced_elements-expected.txt:
        * layout-tests/css1/formatting_model/vertical_formatting-expected.txt:
        * layout-tests/css1/pseudo/anchor-expected.txt:
        * layout-tests/css1/pseudo/firstletter-expected.txt:
        * layout-tests/css1/pseudo/firstline-expected.txt:
        * layout-tests/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * layout-tests/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * layout-tests/css1/text_properties/letter_spacing-expected.txt:
        * layout-tests/css1/text_properties/line_height-expected.txt:
        * layout-tests/css1/text_properties/text-transform-expected.txt:
        * layout-tests/css1/text_properties/text_align-expected.txt:
        * layout-tests/css1/text_properties/text_decoration-expected.txt:
        * layout-tests/css1/text_properties/text_indent-expected.txt:
        * layout-tests/css1/text_properties/text_transform-expected.txt:
        * layout-tests/css1/text_properties/vertical_align-expected.txt:
        * layout-tests/css1/text_properties/word_spacing-expected.txt:
        * layout-tests/css1/units/color_units-expected.txt:
        * layout-tests/css1/units/length_units-expected.txt:
        * layout-tests/css1/units/percentage_units-expected.txt:
        * layout-tests/css1/units/urls-expected.txt:
        * layout-tests/fast/block/basic/001-expected.txt:
        * layout-tests/fast/block/basic/002-expected.txt:
        * layout-tests/fast/block/basic/003-expected.txt:
        * layout-tests/fast/block/basic/004-expected.txt:
        * layout-tests/fast/block/basic/007-expected.txt:
        * layout-tests/fast/block/basic/011-expected.txt:
        * layout-tests/fast/block/basic/015-expected.txt:
        * layout-tests/fast/block/basic/016-expected.txt:
        * layout-tests/fast/block/basic/017-expected.txt:
        * layout-tests/fast/block/basic/018-expected.txt:
        * layout-tests/fast/block/basic/019-expected.txt:
        * layout-tests/fast/block/float/004-expected.txt:
        * layout-tests/fast/block/float/005-expected.txt:
        * layout-tests/fast/block/float/006-expected.txt:
        * layout-tests/fast/block/float/007-expected.txt:
        * layout-tests/fast/block/float/012-expected.txt:
        * layout-tests/fast/block/float/013-expected.txt:
        * layout-tests/fast/block/float/015-expected.txt:
        * layout-tests/fast/block/float/016-expected.txt:
        * layout-tests/fast/block/float/017-expected.txt:
        * layout-tests/fast/block/float/019-expected.txt:
        * layout-tests/fast/block/float/021-expected.txt:
        * layout-tests/fast/block/float/022-expected.txt:
        * layout-tests/fast/block/float/024-expected.txt:
        * layout-tests/fast/block/float/025-expected.txt:
        * layout-tests/fast/block/float/026-expected.txt:
        * layout-tests/fast/block/float/027-expected.txt:
        * layout-tests/fast/block/float/028-expected.txt:
        * layout-tests/fast/block/margin-collapse/001-expected.txt:
        * layout-tests/fast/block/margin-collapse/005-expected.txt:
        * layout-tests/fast/block/margin-collapse/006-expected.txt:
        * layout-tests/fast/block/margin-collapse/010-expected.txt:
        * layout-tests/fast/block/margin-collapse/011-expected.txt:
        * layout-tests/fast/block/margin-collapse/012-expected.txt:
        * layout-tests/fast/block/margin-collapse/015-expected.txt:
        * layout-tests/fast/block/margin-collapse/016-expected.txt:
        * layout-tests/fast/block/margin-collapse/017-expected.txt:
        * layout-tests/fast/block/margin-collapse/018-expected.txt:
        * layout-tests/fast/block/margin-collapse/019-expected.txt:
        * layout-tests/fast/block/margin-collapse/020-expected.txt:
        * layout-tests/fast/block/margin-collapse/021-expected.txt:
        * layout-tests/fast/block/margin-collapse/022-expected.txt:
        * layout-tests/fast/block/margin-collapse/024-expected.txt:
        * layout-tests/fast/block/margin-collapse/025-expected.txt:
        * layout-tests/fast/block/margin-collapse/026-expected.txt:
        * layout-tests/fast/block/margin-collapse/027-expected.txt:
        * layout-tests/fast/block/margin-collapse/028-expected.txt:
        * layout-tests/fast/block/margin-collapse/029-expected.txt:
        * layout-tests/fast/block/margin-collapse/030-expected.txt:
        * layout-tests/fast/block/margin-collapse/032-expected.txt:
        * layout-tests/fast/block/margin-collapse/033-expected.txt:
        * layout-tests/fast/block/margin-collapse/034-expected.txt:
        * layout-tests/fast/block/margin-collapse/035-expected.txt:
        * layout-tests/fast/block/margin-collapse/041-expected.txt:
        * layout-tests/fast/block/margin-collapse/042-expected.txt:
        * layout-tests/fast/block/margin-collapse/043-expected.txt:
        * layout-tests/fast/block/positioning/048-expected.txt:
        * layout-tests/fast/block/positioning/049-expected.txt:
        * layout-tests/fast/block/positioning/050-expected.txt:
        * layout-tests/fast/block/positioning/051-expected.txt:
        * layout-tests/fast/block/positioning/056-expected.txt:
        * layout-tests/fast/block/positioning/057-expected.txt:
        * layout-tests/fast/block/positioning/058-expected.txt:
        * layout-tests/fast/block/positioning/auto/001-expected.txt:
        * layout-tests/fast/block/positioning/auto/002-expected.txt:
        * layout-tests/fast/block/positioning/auto/003-expected.txt:
        * layout-tests/fast/block/positioning/auto/004-expected.txt:
        * layout-tests/fast/block/positioning/auto/005-expected.txt:
        * layout-tests/fast/block/positioning/auto/006-expected.txt:
        * layout-tests/fast/clip/013-expected.txt:
        * layout-tests/fast/clip/014-expected.txt:
        * layout-tests/fast/css-generated-content/006-expected.txt:
        * layout-tests/fast/css/003-expected.txt:
        * layout-tests/fast/css/004-expected.txt:
        * layout-tests/fast/css/005-expected.txt:
        * layout-tests/fast/dynamic/002-expected.txt:
        * layout-tests/fast/dynamic/004-expected.txt:
        * layout-tests/fast/encoding/utf-16-big-endian-expected.txt:
        * layout-tests/fast/encoding/utf-16-little-endian-expected.txt:
        * layout-tests/fast/flexbox/007-expected.txt:
        * layout-tests/fast/flexbox/008-expected.txt:
        * layout-tests/fast/flexbox/009-expected.txt:
        * layout-tests/fast/flexbox/011-expected.txt:
        * layout-tests/fast/flexbox/016-expected.txt:
        * layout-tests/fast/flexbox/017-expected.txt:
        * layout-tests/fast/flexbox/018-expected.txt:
        * layout-tests/fast/flexbox/019-expected.txt:
        * layout-tests/fast/flexbox/022-expected.txt:
        * layout-tests/fast/flexbox/025-expected.txt:
        * layout-tests/fast/forms/001-expected.txt:
        * layout-tests/fast/forms/002-expected.txt:
        * layout-tests/fast/forms/006-expected.txt:
        * layout-tests/fast/forms/007-expected.txt:
        * layout-tests/fast/forms/form-element-geometry-expected.txt:
        * layout-tests/fast/frames/001-expected.txt:
        * layout-tests/fast/inline-block/001-expected.txt:
        * layout-tests/fast/inline-block/002-expected.txt:
        * layout-tests/fast/inline-block/003-expected.txt:
        * layout-tests/fast/inline/001-expected.txt:
        * layout-tests/fast/invalid/008-expected.txt:
        * layout-tests/fast/invalid/014-expected.txt:
        * layout-tests/fast/invalid/016-expected.txt:
        * layout-tests/fast/lists/001-expected.txt:
        * layout-tests/fast/lists/004-expected.txt:
        * layout-tests/fast/lists/007-expected.txt:
        * layout-tests/fast/overflow/001-expected.txt:
        * layout-tests/fast/overflow/002-expected.txt:
        * layout-tests/fast/overflow/004-expected.txt:
        * layout-tests/fast/replaced/005-expected.txt:
        * layout-tests/fast/replaced/006-expected.txt:
        * layout-tests/fast/replaced/008-expected.txt:
        * layout-tests/fast/selectors/009-expected.txt:
        * layout-tests/fast/selectors/014-expected.txt:
        * layout-tests/fast/selectors/032-expected.txt:
        * layout-tests/fast/selectors/033-expected.txt:
        * layout-tests/fast/selectors/039-expected.txt:
        * layout-tests/fast/selectors/039b-expected.txt:
        * layout-tests/fast/selectors/064-expected.txt:
        * layout-tests/fast/selectors/077-expected.txt:
        * layout-tests/fast/selectors/077b-expected.txt:
        * layout-tests/fast/selectors/078-expected.txt:
        * layout-tests/fast/selectors/078b-expected.txt:
        * layout-tests/fast/selectors/166a-expected.txt:
        * layout-tests/fast/table/003-expected.txt:
        * layout-tests/fast/table/004-expected.txt:
        * layout-tests/fast/table/005-expected.txt:
        * layout-tests/fast/table/006-expected.txt:
        * layout-tests/fast/table/007-expected.txt:
        * layout-tests/fast/table/008-expected.txt:
        * layout-tests/fast/table/009-expected.txt:
        * layout-tests/fast/table/015-expected.txt:
        * layout-tests/fast/table/017-expected.txt:
        * layout-tests/fast/table/018-expected.txt:
        * layout-tests/fast/table/020-expected.txt:
        * layout-tests/fast/table/023-expected.txt:
        * layout-tests/fast/table/025-expected.txt:
        * layout-tests/fast/table/027-expected.txt:
        * layout-tests/fast/table/028-expected.txt:
        * layout-tests/fast/table/029-expected.txt:
        * layout-tests/fast/table/030-expected.txt:
        * layout-tests/fast/table/035-expected.txt:
        * layout-tests/fast/table/036-expected.txt:
        * layout-tests/fast/table/038-expected.txt:
        * layout-tests/fast/table/border-collapsing/001-expected.txt:
        * layout-tests/fast/table/border-collapsing/002-expected.txt:
        * layout-tests/fast/table/border-collapsing/003-expected.txt:
        * layout-tests/fast/table/border-collapsing/004-expected.txt:
        * layout-tests/fast/table/large-width-expected.txt:
        * layout-tests/fast/table/nobr-expected.txt:
        * layout-tests/fast/text/basic/001-expected.txt:
        * layout-tests/fast/text/basic/003-expected.txt:
        * layout-tests/fast/text/basic/004-expected.txt:
        * layout-tests/fast/text/basic/005-expected.txt:
        * layout-tests/fast/text/basic/006-expected.txt:
        * layout-tests/fast/text/basic/007-expected.txt:
        * layout-tests/fast/text/basic/012-expected.txt:
        * layout-tests/fast/text/firstline/002-expected.txt:
        * layout-tests/fast/text/whitespace/002-expected.txt:
        * layout-tests/fast/text/whitespace/003-expected.txt:
        * layout-tests/fast/text/whitespace/020-expected.txt:
        * layout-tests/fast/text/whitespace/023-expected.txt:
        * layout-tests/fast/text/whitespace/024-expected.txt:
        * layout-tests/fast/text/whitespace/025-expected.txt:
        * layout-tests/fast/text/whitespace/027-expected.txt:

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

18 years agoWebCore:
mjs [Sun, 16 Nov 2003 21:25:23 +0000 (21:25 +0000)]
WebCore:

        Reviewed by John.

- fixed 3362841 - javascript History Object length property is always 0

        * kwq/KWQKPartsBrowserInterface.mm:
        (KParts::BrowserInterface::property): For the historyLength property,
retturn a UInt variant, not Int, because that's what the kjs_window code
expects.

WebKit:

        Reviewed by John.

- fixed 3362841 - javascript History Object length property is always 0

* WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge historyLength]): Add one to the length to match other browsers.

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

18 years ago Reviewed by Ken and Dave.
mjs [Sun, 16 Nov 2003 21:20:06 +0000 (21:20 +0000)]
    Reviewed by Ken and Dave.

- fixed 3471925 - getting and setting cssText not implemented

        * khtml/css/css_valueimpl.cpp:
        (CSSStyleDeclarationImpl::cssText): Implemented by gathering text of all
properties (that are not non-CSS hints), separated with semicolons.
        (CSSStyleDeclarationImpl::setCssText): Implemented by clearing all existing
properties (that are not non-CSS hints) and invoking css parser.
        (CSSValueListImpl::cssText): Implemented.
        (FontValueImpl::cssText): Implemented.
        (ShadowValueImpl::cssText): Implemented.
        (CSSProperty::cssText): Implemented.
        * khtml/css/css_valueimpl.h: Declared new methods; made
CSSValueImpl::cssText() pure virtual; removed CSSValueImpl::setCssText().

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

18 years agoFix overflow test to be in strict mode.
hyatt [Sun, 16 Nov 2003 21:02:57 +0000 (21:02 +0000)]
Fix overflow test to be in strict mode.

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

18 years agoAdding css tests.
hyatt [Sun, 16 Nov 2003 21:01:25 +0000 (21:01 +0000)]
Adding css tests.

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

18 years agoMoving this test.
hyatt [Sun, 16 Nov 2003 21:00:42 +0000 (21:00 +0000)]
Moving this test.

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

18 years agoAdd a dynamic id manipulation test.
hyatt [Sun, 16 Nov 2003 20:57:04 +0000 (20:57 +0000)]
Add a dynamic id manipulation test.

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

18 years agoAdding basic block tests for hr and h1
hyatt [Sun, 16 Nov 2003 20:53:19 +0000 (20:53 +0000)]
Adding basic block tests for hr and h1

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

18 years agoAdd new tests for float displacement.
hyatt [Sun, 16 Nov 2003 20:51:28 +0000 (20:51 +0000)]
Add new tests for float displacement.

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

18 years agoFix the alignment test.
hyatt [Sun, 16 Nov 2003 20:50:00 +0000 (20:50 +0000)]
Fix the alignment test.

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

18 years ago 3485717, Cleanup of the float code. Eliminated the -khtml-flow-mode style property...
hyatt [Sun, 16 Nov 2003 20:48:12 +0000 (20:48 +0000)]
3485717, Cleanup of the float code.  Eliminated the -khtml-flow-mode style property in favor of two simple methods,
avoidsFloats() and usesLineWidth().  avoidsFloats can be called to tell whether an object does not want
floats to intrude into its space (and that it should also move to avoid floats).  usesLineWidth is called
to find out if an object's containing block width is the line width or the content width, and has all the
right smarts to emulate WinIE's behaviors in both quirks and strict mode.

Also fixed a bug (3485718) where overflow:scroll blocks with auto height did not factor in the horizontal scrollbar's
height (thus causing it to paint on top of content).

        Reviewed by darin

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyRule):
        * khtml/css/cssvalues.c:
        (hash_val):
        (findValue):
        * khtml/css/cssvalues.h:
        * khtml/css/cssvalues.in:
        * khtml/css/html4.css:
        * khtml/rendering/bidi.cpp:
        (khtml::RenderBlock::layoutInlineChildren):
        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::layoutBlock):
        (khtml::RenderBlock::layoutBlockChildren):
        (khtml::RenderBlock::clearFloats):
        * khtml/rendering/render_box.cpp:
        (RenderBox::containingBlockWidth):
        (RenderBox::calcWidth):
        * khtml/rendering/render_object.cpp:
        (RenderObject::isHR):
        * khtml/rendering/render_object.h:
        (khtml::RenderObject::avoidsFloats):
        (khtml::RenderObject::usesLineWidth):
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::NonInheritedFlags::operator==):
        (khtml::RenderStyle::setBitDefaults):
        (khtml::RenderStyle::initialTextDecoration):
        * khtml/rendering/render_table.cpp:
        (RenderTable::calcWidth):

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

18 years ago Fix for 3485260, regression on Uniview site from incremental repainting. When appen...
hyatt [Sun, 16 Nov 2003 06:22:09 +0000 (06:22 +0000)]
Fix for 3485260, regression on Uniview site from incremental repainting.  When appending/inserting child
nodes into the render tree, we need to always mark them as needing layout themselves (and not just as
having children needing layout).  This ensures that the incremental repainting code will know to repaint the
enclosing container (even though that container's size may not change).

Fix for 3411960, block-level replaced elements should avoid floats.

Fix for 3463234, floats should not intrude into overflow blocks (even when siblings happen to get in
between the float and the overflow block).

Fix for 3485576, the containing block for text runs is incorrect.

Fix for 3485577, text runs should not trigger layout when style is re-resolved.

        Reviewed by darin

        * khtml/rendering/render_container.cpp:
        (RenderContainer::appendChildNode):
        (RenderContainer::insertChildNode):
        * khtml/rendering/render_box.cpp
* khtml/rendering/render_object.cpp

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

18 years ago Fix for 3473707, 100% height positioned divs are too tall. The padding box wasn...
hyatt [Sat, 15 Nov 2003 04:53:47 +0000 (04:53 +0000)]
Fix for 3473707, 100% height positioned divs are too tall.  The padding box wasn't being used like it was
supposed to be when calcing percentage heights.

        Reviewed by kocienda

        * khtml/rendering/render_box.cpp:
        (RenderBox::calcAbsoluteVertical):

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

18 years agoWebKit:
sullivan [Sat, 15 Nov 2003 00:46:28 +0000 (00:46 +0000)]
WebKit:

        - WebKit part of fix for <rdar://problem/3474757>: Safari on-screen text needs review

        Reviewed by Ken.

        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultUIDelegate menuItemWithTag:]):
        change "Download Link to Disk" to "Download Linked File to Disk"

        * English.lproj/Localizable.strings:
        updated for these changes

WebBrowser:

        - WebBrowser part of fix for <rdar://problem/3474757>: Safari on-screen text needs review

        Reviewed by Ken.

        Many text changes. In a small number of places I got to delete stuff, but
        mostly I just changed the words to match Ron's edit (after much discussion).

        * ABHomePagesController.m:
        (-[ABHomePagesController openAddressBook:]):
        * AppController.m:
        (-[AppController confirmSwitchDefaultBrowser]):
        (-[AppController _showResourceFileWithName:extension:]):
        * BookmarksController.m:
        (-[BookmarksController tellUserAboutExceptionInFileLockingCode]):
        (-[BookmarksController tellUserThatISyncWon]):
        (-[BookmarksController tellUserThatExternalChangePreemptedLocalChange]):
        (-[BookmarksController exportBookmarks:]):
        * BrowserDocument.m:
        (-[BrowserDocument panel:userEnteredFilename:confirmed:]):
        * BrowserWebBookmarkExtras.m:
        (-[WebBookmark _goToWithWindowPolicy:]):
        * BrowserWebController.m:
        (-[BrowserWebView mouseoverTextForElement:modifierFlags:]):
        (-[BrowserWebView webView:unableToImplementPolicyWithError:frame:]):
        (-[BrowserWebView openFileExternallyWithRequest:inFrame:]):
        (-[BrowserWebView revealInFinderWithRequest:inFrame:]):
        (-[BrowserWebView decidePolicyForAction:request:frame:newFrameName:decisionListener:]):
        (-[BrowserWebView displayName]):
        * BrowserWindowController.m:
        (-[BrowserWindowController setUpSearchField]):
        (-[BrowserWindowController goToToolbarLocationWithWindowPolicy:]):
        * ContextMenuHandler.m:
        (-[BrowserWebView webView:contextMenuItemsForElement:defaultMenuItems:]):
        (-[BrowserWebView saveFileWrapperForURLKey:menuItem:]):
        * DownloadRow.m:
        (-[DownloadRow _statusText]):
        (-[DownloadRow open:]):
        * DownloadViewController.m:
        (-[DownloadViewController _openEntries:]):
        (-[DownloadViewController _revealEntries:]):
        * DownloadWindowController.m:
        (-[DownloadWindowController windowDidLoad]):
        (-[DownloadWindowController askToTerminateWhileDownloading]):
        (-[DownloadWindowController reportInvalidDownloadFileErrorForPath:]):
        * FavoriteButton.m:
        (-[FavoriteButton setBookmark:]):
        (-[FavoriteButton confirmDeletingFolder]):
        * FavoritesBar.m:
        (-[FavoritesBar initWithView:]):
        * FormCompletionController.m:
        (+[FormCompletionController _frame:sourceFrame:willSubmitLoginForm:withValues:formInfo:submissionListener:]):
        (+[FormCompletionController autoFillInWebView:]):
        * LoadProgressMonitor.m:
        (-[LoadProgressMonitor _busyStatus]):
        (-[LoadProgressMonitor _statusSummary]):
        (-[LoadProgressMonitor webView:plugInFailedWithError:dataSource:]):
        * LocationChangeError.m:
        (-[LocationChangeHandler specializedTitleForError:]):
        (-[LocationChangeHandler specializedMessageForError:dataSource:]):
        (-[LocationChangeHandler genericTitleForError:]):
        (-[LocationChangeHandler genericMessageForError:]):
        * LocationChangeHandler.m:
        (-[LocationChangeHandler webView:locationChangeDone:forDataSource:]):
        * Preferences.subproj/AutoFillPreferences.m:
        (-[AutoFillPreferences editMyCard:]):
        * Preferences.subproj/BookmarkPreferences.m:
        (-[BookmarkPreferences configureSynchronizing:]):
        * Preferences.subproj/SecurityPreferences.m:
        (-[SecurityPreferences toggleJavaScriptCanOpenWindows:]):
        * RendezvousController.m:
        (-[RendezvousController reportErrorForServiceName:]):
        * TabBarView.m:
        (-[TabBarView initWithFrame:]):
        * main.m:
        (storeVersionInPreferences):
        Changed or removed words.

        * English.lproj/Localizable.strings:
        updated for these changes

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

18 years ago Reviewed by John
kocienda [Fri, 14 Nov 2003 23:29:57 +0000 (23:29 +0000)]
    Reviewed by John

        Fix for this bug:

        <rdar://problem/3481701>: Crashes before loading page/no error msg
        (forums.pelicanparts.com) Works in IE and Netscape

        This fix is really a workaround for this bug:

        <rdar://problem/3484937>: Horribly malformed URL crashes when call
        is made to CFURLCopyHostName

        The fix is to avoid all usages of [NSURL host] by replacing all
        such calls with a private URL method added to WebNSURLExtras.

I copied a number of URL methods from the private NSURL
extras file in Foundation to the WebKit URL extras file.

        * Misc.subproj/WebNSDataExtras.h: Added. Helper for new URL extras.
        * Misc.subproj/WebNSDataExtras.m: Ditto.
        (-[NSData _web_isCaseInsensitiveEqualToCString:]): New helper.
        * Misc.subproj/WebNSURLExtras.h:
        * Misc.subproj/WebNSURLExtras.m:
        (-[NSURL _web_hasQuestionMarkOnlyQueryString]): Added.
        (-[NSURL _web_schemeSeparatorWithoutColon]): Added.
        (-[NSURL _web_dataForURLComponentType:]): Added.
        (-[NSURL _web_schemeData]): Added.
        (-[NSURL _web_hostData]): Added.
        (-[NSURL _web_hostString]): Added.
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebView.m:
        (-[WebView userAgentForURL:]): Replace call to [NSURL host] with new
extras _web_hostString method.

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

18 years agotree is open for Safari-115
vicki [Fri, 14 Nov 2003 20:21:41 +0000 (20:21 +0000)]
tree is open for Safari-115

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

18 years agoSafari-114 stamp
vicki [Fri, 14 Nov 2003 20:13:10 +0000 (20:13 +0000)]
Safari-114 stamp

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

18 years ago - rolled out Darin's fixes for 3457162 and 3160035, since these changes broke...
vicki [Fri, 14 Nov 2003 20:05:37 +0000 (20:05 +0000)]
    - rolled out Darin's fixes for 3457162 and 3160035, since these changes broke plugins on macromedia.com and disney.go.com

        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate setDataSource:]):
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _addSubresourceClient:]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient dealloc]):
        (-[WebMainResourceClient loadWithRequest:]):
        (-[WebMainResourceClient setDefersCallbacks:]):

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

18 years ago - backed out changes unintentionally commited while the tree was closed
mjs [Fri, 14 Nov 2003 19:38:25 +0000 (19:38 +0000)]
    - backed out changes unintentionally commited while the tree was closed

        * khtml/css/css_valueimpl.cpp:
        * khtml/css/css_valueimpl.h:
        * kwq/KWQKPartsBrowserInterface.mm:

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

18 years ago Reviewed by Ken.
mjs [Fri, 14 Nov 2003 19:29:44 +0000 (19:29 +0000)]
    Reviewed by Ken.

- fixed 3471925 - getting and setting cssText not implemented

        * khtml/css/css_valueimpl.cpp:
        (CSSStyleDeclarationImpl::cssText): Implemented by gathering text of all
properties, separated with semicolons.
        (CSSStyleDeclarationImpl::setCssText): Implemented by clearing all existing
properties and invoking css parser.
        (CSSValueListImpl::cssText): Implemented.
        (FontValueImpl::cssText): Implemented.
        (ShadowValueImpl::cssText): Implemented.
        (CSSProperty::cssText): Implemented.
        * khtml/css/css_valueimpl.h: Declared new methods; made
CSSValueImpl::cssText() pure virtual; removed
CSSValueImpl::setCssText().

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

18 years ago Reviewed by John.
darin [Fri, 14 Nov 2003 17:47:13 +0000 (17:47 +0000)]
    Reviewed by John.

        - fixes 3457162 -- selecting text during a page load that blows the text field away causes a crash
        - fixes 3160035 -- crash or hang if you hold down a button while "go to about:blank soon" test runs

        The WebKit part of this fix is making setDefersCallbacks: work. It had succumbed to bit rot.

        * WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate setDataSource:]):
        Set the defersCallbacks state from the WebView here so that clients don't have to do it.
        * WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubresourceClient:]): Remove call to
        set the defersCallbacks state on the subresource client, because the above change obviates it.
        (the client/delegate terminology makes it confusing, but it's a subclass).

        * WebView.subproj/WebMainResourceClient.h: Added an _initialRequest field so we can defer the very
        first callback, which does not rely on NSURLConnection.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient dealloc]): Release the initial request.
        (-[WebMainResourceClient loadWithRequestNow:]): Moved the guts of loadWithRequest in here; to be
        used when the request is no longer deferred. Also removed the code to call setDefersCallbacks:
        on the connection, and assert that we are only called when callbacks are not deferred. Because
        the very first callback was not deferred, we would end up calling setDefersCallbacks:NO on the
        WebView, so nothing would be deferred.
        (-[WebMainResourceClient loadWithRequest:]): If callbacks are not deferred, then call the
        loadWithRequestNow: method, otherwise simply store the request in _initialRequest.
        (-[WebMainResourceClient setDefersCallbacks:]): If there is an _initialRequest and we are
        ceasing deferral of callbacks, then call the loadWithRequestNow: method.

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

18 years ago Reviewed by John.
darin [Fri, 14 Nov 2003 17:30:40 +0000 (17:30 +0000)]
    Reviewed by John.

        - first half of fix for 3457162 -- selecting text during a page load that blows the text field
          away causes a crash

        The WebCore part of this fix is to generalize the "defers loading" feature to all mouse clicks,
        rather than just doing it for mouse clicks on the combo box.

        * kwq/KWQComboBox.mm: (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]):
        Remove code to defer loading.
        * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::passWidgetMouseDownEventToWidget): Put the code here
        instead.

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

18 years ago - fixed <rdar://problem/3483585>: Option-tab in a text field inputs
sullivan [Fri, 14 Nov 2003 17:12:12 +0000 (17:12 +0000)]
    - fixed <rdar://problem/3483585>: Option-tab in a text field inputs
        a character rather than tabbing to the next widget

        Reviewed by Ken.

        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::handleKeyboardOptionTabInView):
        New method. If current event is option-tab or option-shift-tab, do
        keyboard navigation and return YES.

        * kwq/KWQTextArea.mm:
        (-[KWQTextArea textDidChange:]):
        Bail out if KWQKHTMLPart::handleKeyboardOptionTabInView returns YES.

        * kwq/KWQTextField.mm:
        (-[KWQTextField controlTextDidChange:]):
        Bail out if KWQKHTMLPart::handleKeyboardOptionTabInView returns YES.

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

18 years ago Reviewed by Dave.
darin [Fri, 14 Nov 2003 08:09:19 +0000 (08:09 +0000)]
    Reviewed by Dave.

        - fixed 3472875 -- REGRESSION (109-110): insertion point does not blink in a nonempty textarea
        - fixed 3484002 -- disabling, then enabling a read-only <textarea> will make it editable

        * kwq/KWQTextArea.mm:
        (-[KWQTextArea setText:]): Call updateTextColor after setting the text.
        (-[KWQTextArea setEditable:]): Don't set the NSTextView editable property directly,
        because we don't want to make a disabled text view editable right away, but we need
        to later if it's enabled.
        (-[KWQTextArea isEditable]): Don't get the NSTextView editable property directly,
        because it can be appropriate to return YES even if the text view happens to be disabled.
        (-[KWQTextAreaTextView initWithFrame:textContainer:]): Initialize editableIfEnabled to YES.
        (-[KWQTextAreaTextView setEnabled:]): Don't set the editable state to true if
        editableIfEnabled is NO. The old code would make a read-only field editable if you
        changed it to be enabled. Also update the color of the text here.
        (-[KWQTextAreaTextView setEditableIfEnabled:]): Store the editableIfEnabled state in a
        field, and then alter the state of the editable flag to match if we're currently enabled.
        (-[KWQTextAreaTextView isEditableIfEnabled]): Return the editableIfEnabled state.
        (-[KWQTextAreaTextView updateTextColor]): Update the color of the text. This was done in
        drawRect: before, which was the cause of the lack of insertion point.

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

18 years ago Reviewed by Dave.
darin [Fri, 14 Nov 2003 06:15:12 +0000 (06:15 +0000)]
    Reviewed by Dave.

        - fixed 3474330 -- tooltips do not work for <area> elements

        * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): When looking for a title, start
        with innerNode (which can be an <area> inside a <map>). This matches what Mozilla does.

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

18 years ago Reviewed by John.
mjs [Fri, 14 Nov 2003 05:05:24 +0000 (05:05 +0000)]
    Reviewed by John.

- fixed - 3479285 - hang at www.saccourt.com
- fixed - 3477088 - (85-112) Safari frozen loading a page at Postal Service site of Taiwan

        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLSelectCollection::tryPut): Use the range-checking
version of the number-conversion function to avoid negative
numbers and NaN.

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

18 years ago Factored common code between copy constructor and assignment operator.
rjw [Fri, 14 Nov 2003 02:29:08 +0000 (02:29 +0000)]
Factored common code between copy constructor and assignment operator.

        Reviewed by Chris.

        * ChangeLog:
        * bindings/jni/jni_runtime.h:
        (Bindings::JavaConstructor::_commonCopy):
        (Bindings::JavaConstructor::JavaConstructor):
        (Bindings::JavaConstructor::operator=):
        (Bindings::JavaField::type):
        * bindings/runtime.h:

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

18 years agoJavaScriptCore:
rjw [Fri, 14 Nov 2003 02:17:00 +0000 (02:17 +0000)]
JavaScriptCore:
More LiveConnect stuff.  This checkin adds abstract classes to model
language runtimes and a JNI based set of concrete implementations for
Java.

        Reviewed by Chris.

        * JavaScriptCore.pbproj/project.pbxproj:
        * Makefile.am:
        * bindings/Makefile.am: Removed.
        * bindings/jni/Makefile.am: Removed.
        * bindings/jni/jni_runtime.cpp: Added.
        (JavaField::JavaField):
        (JavaConstructor::JavaConstructor):
        (JavaMethod::JavaMethod):
        (JavaClass::JavaClass):
        * bindings/jni/jni_runtime.h: Added.
        (Bindings::JavaString::JavaString):
        (Bindings::JavaString::~JavaString):
        (Bindings::JavaString::operator=):
        (Bindings::JavaString::characters):
        (Bindings::JavaParameter::JavaParameter):
        (Bindings::JavaParameter::~JavaParameter):
        (Bindings::JavaParameter::operator=):
        (Bindings::JavaParameter::type):
        (Bindings::JavaConstructor::JavaConstructor):
        (Bindings::JavaConstructor::~JavaConstructor):
        (Bindings::JavaConstructor::operator=):
        (Bindings::JavaConstructor::parameterAt):
        (Bindings::JavaConstructor::numParameters):
        (Bindings::JavaField::JavaField):
        (Bindings::JavaField::~JavaField):
        (Bindings::JavaField::operator=):
        (Bindings::JavaField::name):
        (Bindings::JavaField::type):
        (Bindings::JavaMethod::JavaMethod):
        (Bindings::JavaMethod::_commonDelete):
        (Bindings::JavaMethod::~JavaMethod):
        (Bindings::JavaMethod::_commonCopy):
        (Bindings::JavaMethod::operator=):
        (Bindings::JavaMethod::name):
        (Bindings::JavaMethod::returnType):
        (Bindings::JavaMethod::parameterAt):
        (Bindings::JavaMethod::numParameters):
        (Bindings::JavaClass::_commonDelete):
        (Bindings::JavaClass::~JavaClass):
        (Bindings::JavaClass::_commonCopy):
        (Bindings::JavaClass::JavaClass):
        (Bindings::JavaClass::operator=):
        (Bindings::JavaClass::name):
        (Bindings::JavaClass::methodAt):
        (Bindings::JavaClass::numMethods):
        (Bindings::JavaClass::constructorAt):
        (Bindings::JavaClass::numConstructors):
        (Bindings::JavaClass::fieldAt):
        (Bindings::JavaClass::numFields):
        * bindings/jni/jni_utility.cpp:
        (callJNIMethod):
        (callJNIMethodA):
        (callJNIObjectMethod):
        (callJNIByteMethod):
        (callJNICharMethod):
        (callJNIShortMethod):
        (callJNIIntMethod):
        (callJNILongMethod):
        (callJNIFloatMethod):
        (callJNIDoubleMethod):
        (callJNIVoidMethodA):
        (callJNIObjectMethodA):
        (callJNIByteMethodA):
        (callJNICharMethodA):
        (callJNIShortMethodA):
        (callJNIIntMethodA):
        (callJNILongMethodA):
        (callJNIFloatMethodA):
        (callJNIDoubleMethodA):
        (getCharactersFromJString):
        (releaseCharactersForJString):
        * bindings/jni/jni_utility.h:
        * bindings/objc/Makefile.am: Removed.
        * bindings/runtime.h: Added.
        (Bindings::Parameter::~Parameter):
        (Bindings::Constructor::~Constructor):
        (Bindings::Field::~Field):
        (Bindings::Method::~Method):
        (Bindings::Class::~Class):

Tests:
        More tweaks to test new LiveConnect stuff.

        * DumpJava/main.cpp:
        (dumpClass):

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

18 years agoWebCore:
kocienda [Fri, 14 Nov 2003 00:34:57 +0000 (00:34 +0000)]
WebCore:

        Reviewed by John

Fix for this bug:

<rdar://problem/3483284>: Tabbing to links needs to honor new
WebKit tab-to-links preference

In addition to fixing the bug, I also did a bit of cleanup
in the code which helps to determine tab order.

Biggest change is to modify the keyboard UI mode function so
that it is a set of flags, rather than a straight-up value.

I also tweaked the names on the keyboard UI mode constants
to make them read better.

        * kwq/KWQButton.mm:
        (QButton::focusPolicy): Tweaks to make more readable and use
new model for keyboard UI mode.
        * kwq/KWQComboBox.mm:
        (QComboBox::focusPolicy): Ditto. Plus, this function was not
blocking exceptions.
        * kwq/KWQFileButton.mm:
        (KWQFileButton::focusPolicy): Tweaks to make more readable and use
        new model for keyboard UI mode.
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::nextKeyViewInFrame): Now checks new tabsToLinks
function to determine if links can be tabbed to.
        (KWQKHTMLPart::currentEventIsKeyboardOptionTab): New function
checks for option-tab keyboard event.
        (KWQKHTMLPart::tabsToLinks): New helper to take keyboard UI mode
and option-tab into account.
        (KWQKHTMLPart::keyboardUIMode): Name tweak.
        * kwq/KWQListBox.mm: Tweaks to make more readable and use
        new model for keyboard UI mode.
        (QListBox::focusPolicy):
        * kwq/WebCoreKeyboardAccess.h: Tweaked names. Added WebCoreKeyboardAccessTabsToLinks.

WebKit:

        Reviewed by John

Fix for this bug:

<rdar://problem/3483284>: Tabbing to links needs to honor new
WebKit tab-to-links preference

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dealloc]): Remove self from notification center.
        (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): Now
checks for WebCoreKeyboardAccessTabsToLinks preference.
        (-[WebBridge keyboardUIMode]): Adds self to notification center
to pick up changes to WebPreferences.

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

18 years ago Reviewed by John.
mjs [Thu, 13 Nov 2003 22:53:00 +0000 (22:53 +0000)]
    Reviewed by John.

- fixed 3472562 - Null or Undefined variables passed to IN operator cause javascript exceptions

        * kjs/nodes.cpp:
        (ForInNode::execute): If the in value is null or undefined, bail
out early, since attempting to iterate its properties will throw
an exception.

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

18 years ago Reviewed by John
kocienda [Thu, 13 Nov 2003 21:37:17 +0000 (21:37 +0000)]
    Reviewed by John

Fix for this bug:

<rdar://problem/3481719>: WebKit needs preference for tabbing to links

        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences initialize]): Add initialization of new
WebKitTabToLinksPreferenceKey.
        (-[WebPreferences setTabsToLinks:]): Added preference setter.
        (-[WebPreferences tabsToLinks]): Added preference getter.
        * WebView.subproj/WebPreferencesPrivate.h: Declared new methods as
SPI on WebPreferences.

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

18 years ago Implement a custom unfurl marquee style.
hyatt [Thu, 13 Nov 2003 20:13:11 +0000 (20:13 +0000)]
Implement a custom unfurl marquee style.

        Reviewed by john

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyRule):
        * khtml/css/cssvalues.c:
        (hash_val):
        (findValue):
        * khtml/css/cssvalues.h:
        * khtml/css/cssvalues.in:
        * khtml/rendering/render_box.cpp:
        (RenderBox::calcHeight):
        * khtml/rendering/render_layer.cpp:
        (m_direction):
        (Marquee::isUnfurlMarquee):
        (Marquee::start):
        (Marquee::updateMarqueePosition):
        (Marquee::updateMarqueeStyle):
        (Marquee::timerEvent):
        * khtml/rendering/render_layer.h:
        (khtml::):
        * khtml/rendering/render_style.h:
        (khtml::):

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

18 years ago Reviewed by John
kocienda [Thu, 13 Nov 2003 19:42:20 +0000 (19:42 +0000)]
    Reviewed by John

Fix for this bug:

<rdar://problem/3480761>: event object type attribute returns
khtml_keypress instead of keypress

Fixed string so that it returns keypress instead of khtml_keypress.
While I was at it, I changed the constant used for this event from
KHTML_KEYPRESS_EVENT to KEYPRESS_EVENT.

        * khtml/ecma/kjs_binding.cpp:
        (ScriptInterpreter::wasRunByUserGesture): Constant name fixup.
        * khtml/ecma/kjs_dom.cpp: Ditto.
        (DOMNode::getValueProperty): Ditto.
        (DOMNode::putValue): Ditto.
        * khtml/ecma/kjs_window.cpp:
        (Window::get): Ditto.
        (Window::put): Ditto.
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::parseAttribute): Ditto.
        * khtml/html/html_formimpl.cpp:
        (HTMLInputElementImpl::defaultEventHandler): Ditto.
        (HTMLSelectElementImpl::defaultEventHandler): Ditto.
        * khtml/xml/dom2_eventsimpl.cpp:
        (EventImpl::idToType): This is the change that fixes the bug.
        (KeyboardEventImpl::KeyboardEventImpl): Constant name fixup.
        * khtml/xml/dom2_eventsimpl.h:
        (DOM::EventImpl::): Ditto.

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

18 years ago Reviewed by Ken.
darin [Thu, 13 Nov 2003 17:39:46 +0000 (17:39 +0000)]
    Reviewed by Ken.

        - fixed 3452554 -- keyCode attribute for DOM events reports incorrect value

        * khtml/dom/dom2_events.cpp:
        (UIEvent::keyCode): Return the Windows key code for keydown and keyup events.
        But for other events, return the character code. This matches IE.
        (UIEvent::which): Same behavior for now; may need further refinement.

        * kwq/KWQEvent.h: Change QEvent to allow copying. The Qt version probably doesn't
        allow it, but for us it's no big deal. Our event objects are just data holders.
        (QKeyEvent::QKeyEvent): Change parameters; take an NSEvent and figure the rest out
        here. Except for now get the type, button state, and auto repeat flag from the caller
        because that's a smaller change from how things are done now. I'll take this the next
        step later.
        * kwq/KWQEvent.mm:
        (characterCode): Added. Extracts the character code from the string if it's exactly
        1 character long.
        (WindowsKeyCode): Added. Given an event, figures out the Windows key code.
        (QKeyEvent::QKeyEvent): Changed to get things from the NSEvent rather than having them
        passed individually. One change is that _ascii is now the Unicode value of the first
        character in the string. This causes us to return the Unicode value from keyCode for
        keypress events. Another change is that we now compute the Windows key code.

        * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::keyEvent): Change to use the new QKeyEvent
        constructor, passing in the NSEvent.

        * khtml/xml/dom2_eventsimpl.cpp: (KeyboardEventImpl::KeyboardEventImpl):
        In APPLE_CHANGES, copy the QKeyEvent using the copy constructor rather than
        listing the fields. This is easier to maintain when the list of fields changes.

        * khtml/rendering/render_form.cpp: (ComboBoxWidget::eventFilter): Put #if
        !APPLE_CHANGES around code that constructs a QKeyEvent. We don't ever run this
        code, but now we can't compile it either so we need the #if.

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

18 years ago - fixed the build
darin [Thu, 13 Nov 2003 04:33:46 +0000 (04:33 +0000)]
    - fixed the build

        * Makefile.am: Fix the build by removing the bindings directory from SUBDIRS.
        Later, we can either add this back and add the Makefile.am files to the top
        level configure.in or leave it out and remove the Makefile.am files.

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

18 years ago Fixed 3475082. Remove unnecessary orderKey before showKey.
rjw [Thu, 13 Nov 2003 02:04:48 +0000 (02:04 +0000)]
Fixed 3475082.  Remove unnecessary orderKey before showKey.

Written by Ed Voas.

        Reviewed by Richard.

        * Carbon.subproj/CarbonWindowAdapter.m:
        (-[CarbonWindowAdapter makeKeyWindow]):

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

18 years ago Added utility functions for calling JNI methods.
rjw [Thu, 13 Nov 2003 01:56:13 +0000 (01:56 +0000)]
Added utility functions for calling JNI methods.

        Reviewed by Chris.

        * JavaScriptCore.pbproj/project.pbxproj:
        * Makefile.am:
        * bindings/Makefile.am: Added.
        * bindings/jni/Makefile.am: Added.
        * bindings/jni/jni_utility.cpp: Added.
        (attachToJavaVM):
        (callJNIMethod):
        (callJNIVoidMethod):
        (callJNIObjectMethod):
        (callJNIByteMethod):
        (callJNICharMethod):
        (callJNIShortMethod):
        (callJNIIntMethod):
        (callJNILongMethod):
        (callJNIFloatMethod):
        (callJNIDoubleMethod):
        * bindings/jni/jni_utility.h: Added.
        * bindings/objc/Makefile.am: Added.

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

18 years ago Fixed: <rdar://problem/3482147>: replace _releaseFutureIconForURL assertion with...
cblu [Thu, 13 Nov 2003 00:19:14 +0000 (00:19 +0000)]
Fixed: <rdar://problem/3482147>: replace _releaseFutureIconForURL assertion with a log statement

        Reviewed by rjw.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _releaseFutureIconForURL:]):

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

18 years ago Fix for 3482132, incremental repainting for layout, i.e., only repaint areas that...
hyatt [Wed, 12 Nov 2003 23:37:05 +0000 (23:37 +0000)]
Fix for 3482132, incremental repainting for layout, i.e., only repaint areas that change when
doing a layout.

        Reviewed by kocienda

        * khtml/khtmlview.h:
        * khtml/rendering/render_canvas.cpp:
        (RenderCanvas::repaintViewRectangle):
        * khtml/rendering/render_layer.h:
        * khtml/rendering/render_object.cpp:
        (RenderObject::setNeedsLayout):
        (RenderObject::setChildNeedsLayout):
        * khtml/rendering/render_object.h:
        * khtml/rendering/render_table.cpp:
        (RenderTableSection::layoutRows):

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

18 years ago Reviewed by me
kocienda [Wed, 12 Nov 2003 20:08:37 +0000 (20:08 +0000)]
    Reviewed by me

I am an idiot for just assuming that these elements implement a focus()
function, without actually compiling and testing. I will have to add
this function to these elements so I can make this work.

        * khtml/html/html_formimpl.cpp:
        (HTMLButtonElementImpl::accessKeyAction): These elements do not implement focus().
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::accessKeyAction): Ditto.

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

18 years ago Reviewed by Richard
kocienda [Wed, 12 Nov 2003 20:05:59 +0000 (20:05 +0000)]
    Reviewed by Richard

        * khtml/html/html_formimpl.cpp:
        (HTMLButtonElementImpl::click): Implemented. Missed this in my earlier patch.
        (HTMLButtonElementImpl::accessKeyAction): Added. Focus and click.
        (HTMLInputElementImpl::accessKeyAction): Added. Focus the element.
        (HTMLSelectElementImpl::accessKeyAction): Added. Focus the element.
        (HTMLTextAreaElementImpl::accessKeyAction): Added. Focus the element.
        * khtml/html/html_formimpl.h:
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::accessKeyAction): Added. Focus and click.
        * khtml/html/html_inlineimpl.h:
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::addElementById): Dirty the accesskey dictionary.
        (DocumentImpl::removeElementById): Ditto.
        (DocumentImpl::getElementByAccessKey): Function to look up an element
based on the key provided.
        (DocumentImpl::setDocumentChanged): Dirty the accesskey dictionary.
        (DocumentImpl::defaultEventHandler): Check the accesskey dictionary
to see if some element wants to handle a key event.
        * khtml/xml/dom_docimpl.h:
        * khtml/xml/dom_elementimpl.h:
        (DOM::ElementImpl::accessKeyAction): Added. Send a click to the element.

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

18 years ago Reviewed by Richard
kocienda [Wed, 12 Nov 2003 17:32:54 +0000 (17:32 +0000)]
    Reviewed by Richard

Fix for this bug:

<rdar://problem/3481600>: key event objects do not preserve unmodified keys

        * khtml/xml/dom2_eventsimpl.cpp: Modified constructor call to include
unmodifiedText.
        (KeyboardEventImpl::KeyboardEventImpl):
        * kwq/KWQEvent.h: Added unmodifiedText accessor and variable to QKeyEvent.
        * kwq/KWQEvent.mm:
        (QKeyEvent::QKeyEvent): Modified constructor to include unmodifiedText.
        (QKeyEvent::unmodifiedText): Added accessor.
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::keyEvent): Modified constructor call to include
        unmodifiedText.

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

18 years ago Reviewed by Maciej
kocienda [Wed, 12 Nov 2003 16:49:17 +0000 (16:49 +0000)]
    Reviewed by Maciej

        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::click): Implemented a programmatic click function for
elements.
        * khtml/html/html_elementimpl.h:
        * khtml/html/html_formimpl.cpp:
        (HTMLFormElementImpl::submitClick): Implemented a programmatic click function for
elements.
        (HTMLInputElementImpl::click): This implementation calls through
to Cocoa button programmatic click function to get user interface
feedback for button elements, and calls through to the superclass
for other elements.
        * khtml/html/html_formimpl.h:
        * khtml/html/html_inlineimpl.cpp: Removed click() function for anchors.
No longer needed.
        * khtml/html/html_inlineimpl.h: Ditto.

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

18 years agoFix build bustage in deployment builds.
hyatt [Wed, 12 Nov 2003 09:20:01 +0000 (09:20 +0000)]
Fix build bustage in deployment builds.

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

18 years ago Fix for 3481134, shorthand parsing in CSS does not fill in omitted values. The...
hyatt [Wed, 12 Nov 2003 08:48:16 +0000 (08:48 +0000)]
Fix for 3481134, shorthand parsing in CSS does not fill in omitted values.  The fix is to implement
the CSS3 'initial' value for all properties (covered by 3481323), and then to fill in the omitted
values with the 'initial' value.

This patch also fixes two bugs in the style system: 3481324, collapsed borders with border-style: none
should always return a width of 0, and 3481322, 'clip' not inheriting properly in CSS when explicit
inheritance is used.

        Reviewed by mjs

        * khtml/css/css_valueimpl.cpp:
        (CSSInitialValueImpl::cssText):
        * khtml/css/css_valueimpl.h:
        (DOM::CSSInitialValueImpl::cssValueType):
        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        (CSSParser::parseShortHand):
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyRule):
        * khtml/css/cssvalues.c:
        (hash_val):
        (findValue):
        * khtml/css/cssvalues.h:
        * khtml/css/cssvalues.in:
        * khtml/dom/css_value.h:
        (DOM::CSSValue::):
        * khtml/rendering/render_style.cpp:
        (StyleBoxData::StyleBoxData):
        (StyleVisualData::StyleVisualData):
        (StyleBackgroundData::StyleBackgroundData):
        (StyleMarqueeData::StyleMarqueeData):
        (StyleFlexibleBoxData::StyleFlexibleBoxData):
        (opacity):
        (StyleInheritedData::StyleInheritedData):
        (RenderStyle::diff):
        * khtml/rendering/render_style.h:
        (khtml::BorderValue::BorderValue):
        (khtml::CollapsedBorderValue::width):
        (khtml::RenderStyle::InheritedFlags::operator==):
        (khtml::RenderStyle::setBitDefaults):
        (khtml::RenderStyle::resetBorderTop):
        (khtml::RenderStyle::resetBorderRight):
        (khtml::RenderStyle::resetBorderBottom):
        (khtml::RenderStyle::resetBorderLeft):
        (khtml::RenderStyle::resetOutline):
        (khtml::RenderStyle::setHasClip):
        (khtml::RenderStyle::resetMargin):
        (khtml::RenderStyle::resetPadding):
        (khtml::RenderStyle::setCursor):

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

18 years ago Reviewed by John.
mjs [Wed, 12 Nov 2003 01:30:11 +0000 (01:30 +0000)]
    Reviewed by John.

- fixed 3479537 - reproducible crash in KJS::WindowFunc::tryCall

        * khtml/ecma/kjs_window.cpp:
        (WindowFunc::tryCall): Check part and doc impl for null.

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

18 years ago Reviewed by Ken.
mjs [Tue, 11 Nov 2003 23:16:10 +0000 (23:16 +0000)]
    Reviewed by Ken.

- fixed 3472330 -  REGRESSION: onKeyPress handler not called when hitting keys in <input type=password> field

        * kwq/KWQTextField.mm:
        (-[KWQSecureTextField initWithQLineEdit:]): New initializer, so
the secure text field knows about the widget.
        (-[KWQTextField setPasswordMode:]): Use new initializer for
KWQSecureTextField.
        (-[KWQSecureTextField textView:shouldHandleEvent:]): New method,
do the same thing as the non-secure text field to pass the event on.
        (-[KWQSecureTextField textView:didHandleEvent:]): Ditto.

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

18 years ago Reviewed by Maciej
kocienda [Tue, 11 Nov 2003 21:58:52 +0000 (21:58 +0000)]
    Reviewed by Maciej

Fix for this bug:

<rdar://problem/3480173>: Too many names for programmatic click functions

Changed all instances of performClick() and simulateClick() to click().
Changed all instances of performSubmitClick() to submitClick().

Additionally, KWQButton had a simulateClick method, which was redundant
given that its superclass has a performClick: method.

        * khtml/html/html_formimpl.cpp:
        (HTMLFormElementImpl::submitClick):
        (HTMLInputElementImpl::defaultEventHandler):
        (HTMLSelectElementImpl::defaultEventHandler):
        * khtml/html/html_formimpl.h:
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::defaultEventHandler):
        (HTMLAnchorElementImpl::click):
        * khtml/html/html_inlineimpl.h:
        * khtml/rendering/render_form.cpp:
        (RenderLineEdit::slotReturnPressed):
        * kwq/KWQButton.h:
        * kwq/KWQButton.mm:
        (QButton::click):

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

18 years ago Reviewed by John.
mjs [Tue, 11 Nov 2003 21:51:46 +0000 (21:51 +0000)]
    Reviewed by John.

- fixed 3475272 - custom property on CSSStyleObject won't hold a value

        * khtml/ecma/kjs_css.cpp:
        (DOMCSSStyleDeclaration::tryPut): If the property is not a css property,
save it as a custom object property in the normal way.

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

18 years ago - fixed <rdar://problem/3480421>: Focus rings around links are too thick,
sullivan [Tue, 11 Nov 2003 21:06:23 +0000 (21:06 +0000)]
    - fixed <rdar://problem/3480421>: Focus rings around links are too thick,
        should use 3 px instead of 5 px

        Reviewed by Don and Ken.

        * khtml/css/html4.css:
        use 3px instead of 5 px for :active, :focus

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

18 years ago Reviewed by John
kocienda [Tue, 11 Nov 2003 20:59:33 +0000 (20:59 +0000)]
    Reviewed by John

In the DOM Level 3 Events specification, keydown and keyup are
standard events. We can remove the KHTML component in the names
of these constants. Note that the keypress event is still
nonstandard and will retain the KHTML name component.

        * khtml/ecma/kjs_binding.cpp:
        (ScriptInterpreter::wasRunByUserGesture)
        * khtml/ecma/kjs_dom.cpp:
        (DOMNode::getValueProperty)
        (DOMNode::putValue)
        * khtml/ecma/kjs_window.cpp:
        (Window::get)
        (Window::put)
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::parseAttribute)
        * khtml/html/html_formimpl.cpp:
        (HTMLGenericFormElementImpl::defaultEventHandler)
        * khtml/html/html_inlineimpl.cpp:
        (HTMLAnchorElementImpl::defaultEventHandler)
        * khtml/xml/dom2_eventsimpl.cpp:
        (EventImpl::typeToId)
        (EventImpl::idToType)
        (KeyboardEventImpl::KeyboardEventImpl)
        * khtml/xml/dom2_eventsimpl.h:
        (DOM::EventImpl::)

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

18 years ago Fixed: <rdar://problem/3480281>: drag image of selected text and images include...
cblu [Tue, 11 Nov 2003 19:30:05 +0000 (19:30 +0000)]
Fixed: <rdar://problem/3480281>: drag image of selected text and images include broken images

        Reviewed by dave.

        * khtml/rendering/render_image.cpp:
        (RenderImage::paintObject): when drawing the drag image, don't draw the broken image

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

18 years ago Reviewed by sullivan.
vicki [Tue, 11 Nov 2003 18:34:40 +0000 (18:34 +0000)]
    Reviewed by sullivan.

- rolled Merlot build fix onto the trunk

        * WebCorePrefix.h: added #include <sys/types.h>

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

18 years ago Fix for 3473531, text nested in hr inside h3 did not get the h3's style.
hyatt [Tue, 11 Nov 2003 01:12:41 +0000 (01:12 +0000)]
Fix for 3473531, text nested in hr inside h3 did not get the h3's style.

        Reviewed by darin

        * khtml/html/dtd.cpp:
        (DOM::checkChild):

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

18 years ago Fix for 3478435, <hr> tags should be centered by default. Ditched the 1px margin...
hyatt [Tue, 11 Nov 2003 01:03:15 +0000 (01:03 +0000)]
Fix for 3478435, <hr> tags should be centered by default.  Ditched the 1px margin as well.

Fix for 3479441, <h1>-<h6> tags should *not* be centered by default.  They should also use bold instead of
bolder.

        Reviewed by darin

        * khtml/css/html4.css:
        * khtml/html/html_blockimpl.cpp:
        (HTMLHRElementImpl::parseAttribute):
        * layout-tests/apple-only/base/bugzilla.mozilla.org/index-expected.txt:
        * layout-tests/apple-only/base/home.netscape.com/index-expected.txt:
        * layout-tests/apple-only/base/www.altavista.com/index-expected.txt:
        * layout-tests/apple-only/base/www.cnn.com/index-expected.txt:
        * layout-tests/apple-only/base/www.digitalcity.com/index-expected.txt:
        * layout-tests/apple-only/base/www.ebay.com/index-expected.txt:
        * layout-tests/apple-only/base/www.excite.com/index-expected.txt:
        * layout-tests/apple-only/base/www.mapquest.com/index-expected.txt:
        * layout-tests/apple-only/base/www.microsoft.com/index-expected.txt:
        * layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
        * layout-tests/apple-only/base/www.nytimes.com/index-expected.txt:
        * layout-tests/apple-only/base/www.nytimes.com_Table/index-expected.txt:
        * layout-tests/apple-only/base/www.quicken.com/index-expected.txt:
        * layout-tests/apple-only/base/www.w3.org_DOML2Core/index-expected.txt:
        * layout-tests/css1/basic/class_as_selector-expected.txt:
        * layout-tests/css1/basic/comments-expected.txt:
        * layout-tests/css1/basic/containment-expected.txt:
        * layout-tests/css1/basic/contextual_selectors-expected.txt:
        * layout-tests/css1/basic/grouping-expected.txt:
        * layout-tests/css1/basic/id_as_selector-expected.txt:
        * layout-tests/css1/basic/inheritance-expected.txt:
        * layout-tests/css1/box_properties/border-expected.txt:
        * layout-tests/css1/box_properties/border_bottom-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_width-expected.txt:
        * layout-tests/css1/box_properties/border_bottom_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_color-expected.txt:
        * layout-tests/css1/box_properties/border_color_inline-expected.txt:
        * layout-tests/css1/box_properties/border_inline-expected.txt:
        * layout-tests/css1/box_properties/border_left-expected.txt:
        * layout-tests/css1/box_properties/border_left_inline-expected.txt:
        * layout-tests/css1/box_properties/border_left_width-expected.txt:
        * layout-tests/css1/box_properties/border_left_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_right-expected.txt:
        * layout-tests/css1/box_properties/border_right_inline-expected.txt:
        * layout-tests/css1/box_properties/border_right_width-expected.txt:
        * layout-tests/css1/box_properties/border_right_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_style-expected.txt:
        * layout-tests/css1/box_properties/border_style_inline-expected.txt:
        * layout-tests/css1/box_properties/border_top-expected.txt:
        * layout-tests/css1/box_properties/border_top_inline-expected.txt:
        * layout-tests/css1/box_properties/border_top_width-expected.txt:
        * layout-tests/css1/box_properties/border_top_width_inline-expected.txt:
        * layout-tests/css1/box_properties/border_width-expected.txt:
        * layout-tests/css1/box_properties/border_width_inline-expected.txt:
        * layout-tests/css1/box_properties/clear-expected.txt:
        * layout-tests/css1/box_properties/clear_float-expected.txt:
        * layout-tests/css1/box_properties/float-expected.txt:
        * layout-tests/css1/box_properties/float_elements_in_series-expected.txt:
        * layout-tests/css1/box_properties/float_margin-expected.txt:
        * layout-tests/css1/box_properties/float_on_text_elements-expected.txt:
        * layout-tests/css1/box_properties/height-expected.txt:
        * layout-tests/css1/box_properties/margin-expected.txt:
        * layout-tests/css1/box_properties/margin_bottom-expected.txt:
        * layout-tests/css1/box_properties/margin_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_left-expected.txt:
        * layout-tests/css1/box_properties/margin_left_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_right-expected.txt:
        * layout-tests/css1/box_properties/margin_right_inline-expected.txt:
        * layout-tests/css1/box_properties/margin_top-expected.txt:
        * layout-tests/css1/box_properties/margin_top_inline-expected.txt:
        * layout-tests/css1/box_properties/padding-expected.txt:
        * layout-tests/css1/box_properties/padding_bottom-expected.txt:
        * layout-tests/css1/box_properties/padding_bottom_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_left-expected.txt:
        * layout-tests/css1/box_properties/padding_left_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_right-expected.txt:
        * layout-tests/css1/box_properties/padding_right_inline-expected.txt:
        * layout-tests/css1/box_properties/padding_top-expected.txt:
        * layout-tests/css1/box_properties/padding_top_inline-expected.txt:
        * layout-tests/css1/box_properties/width-expected.txt:
        * layout-tests/css1/cascade/cascade_order-expected.txt:
        * layout-tests/css1/cascade/important-expected.txt:
        * layout-tests/css1/classification/display-expected.txt:
        * layout-tests/css1/classification/list_style-expected.txt:
        * layout-tests/css1/classification/list_style_image-expected.txt:
        * layout-tests/css1/classification/list_style_position-expected.txt:
        * layout-tests/css1/classification/list_style_type-expected.txt:
        * layout-tests/css1/classification/white_space-expected.txt:
        * layout-tests/css1/color_and_background/background-expected.txt:
        * layout-tests/css1/color_and_background/background_attachment-expected.txt:
        * layout-tests/css1/color_and_background/background_color-expected.txt:
        * layout-tests/css1/color_and_background/background_image-expected.txt:
        * layout-tests/css1/color_and_background/background_position-expected.txt:
        * layout-tests/css1/color_and_background/background_repeat-expected.txt:
        * layout-tests/css1/color_and_background/color-expected.txt:
        * layout-tests/css1/conformance/forward_compatible_parsing-expected.txt:
        * layout-tests/css1/font_properties/font-expected.txt:
        * layout-tests/css1/font_properties/font_family-expected.txt:
        * layout-tests/css1/font_properties/font_size-expected.txt:
        * layout-tests/css1/font_properties/font_style-expected.txt:
        * layout-tests/css1/font_properties/font_variant-expected.txt:
        * layout-tests/css1/font_properties/font_weight-expected.txt:
        * layout-tests/css1/formatting_model/canvas-expected.txt:
        * layout-tests/css1/formatting_model/floating_elements-expected.txt:
        * layout-tests/css1/formatting_model/height_of_lines-expected.txt:
        * layout-tests/css1/formatting_model/inline_elements-expected.txt:
        * layout-tests/css1/formatting_model/replaced_elements-expected.txt:
        * layout-tests/css1/formatting_model/vertical_formatting-expected.txt:
        * layout-tests/css1/pseudo/anchor-expected.txt:
        * layout-tests/css1/pseudo/firstletter-expected.txt:
        * layout-tests/css1/pseudo/firstline-expected.txt:
        * layout-tests/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * layout-tests/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * layout-tests/css1/text_properties/letter_spacing-expected.txt:
        * layout-tests/css1/text_properties/line_height-expected.txt:
        * layout-tests/css1/text_properties/text-transform-expected.txt:
        * layout-tests/css1/text_properties/text_align-expected.txt:
        * layout-tests/css1/text_properties/text_decoration-expected.txt:
        * layout-tests/css1/text_properties/text_indent-expected.txt:
        * layout-tests/css1/text_properties/text_transform-expected.txt:
        * layout-tests/css1/text_properties/vertical_align-expected.txt:
        * layout-tests/css1/text_properties/word_spacing-expected.txt:
        * layout-tests/css1/units/color_units-expected.txt:
        * layout-tests/css1/units/length_units-expected.txt:
        * layout-tests/css1/units/percentage_units-expected.txt:
        * layout-tests/css1/units/urls-expected.txt:
        * layout-tests/fast/encoding/utf-16-big-endian-expected.txt:
        * layout-tests/fast/encoding/utf-16-little-endian-expected.txt:

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

18 years ago Fixed: <rdar://problem/3479266>: selected images don't obey CSS3 selection backgroun...
cblu [Tue, 11 Nov 2003 00:00:54 +0000 (00:00 +0000)]
Fixed: <rdar://problem/3479266>: selected images don't obey CSS3 selection background-color attribute

        Reviewed by dave.

        * khtml/rendering/render_image.cpp:
        (RenderImage::selectionTintColor): new, takes style into account
        (RenderImage::paintObject): use selectionTintColor
        * khtml/rendering/render_image.h:
        * kwq/KWQPainter.h: removed selectedImageTintColor
        * kwq/KWQPainter.mm:

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

18 years ago Fix for 3479287, macro-ize the handling of the CSS 'inherit' value. This patch...
hyatt [Mon, 10 Nov 2003 23:52:25 +0000 (23:52 +0000)]
Fix for 3479287, macro-ize the handling of the CSS 'inherit' value.  This patch is preparation for
adding support for the 'initial' value, which will be used to fix the CSS parser's shorthand parsing
bugs.

        Reviewed by kocienda

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * khtml/css/cssproperties.c:
        (hash_prop):
        (findProp):
        * khtml/css/cssproperties.h:
        * khtml/css/cssproperties.in:
        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::applyRule):
        * khtml/khtmlview.cpp:
        (KHTMLView::layout):

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

18 years ago Fixed:
cblu [Mon, 10 Nov 2003 23:21:54 +0000 (23:21 +0000)]
Fixed:
<rdar://problem/3478883>: REGRESSION (113-114u): drag image for selected text includes unselected images
<rdar://problem/3479204>: selected images don't look selected

        Reviewed by dave.

        * khtml/rendering/render_image.cpp:
        (RenderImage::RenderImage): init m_selectionState
        (RenderImage::paintObject): draw a tint over the image if selected, don't draw anything if not selected and the action is PaintActionSelection
        * khtml/rendering/render_image.h:
        (khtml::RenderImage::selectionState): new
        (khtml::RenderImage::setSelectionState): new
        * kwq/KWQPainter.h:
        * kwq/KWQPainter.mm:
        (QPainter::selectedImageTintColor): new

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

18 years ago Reviewed by Hyatt
kocienda [Mon, 10 Nov 2003 22:41:21 +0000 (22:41 +0000)]
    Reviewed by Hyatt

Fix for this bug:

<rdar://problem/3477795>: REGRESSION: can't submit form without
submit button by hitting return (cocoadev.com)

When I changed submitting forms using the return key in a text field
to go through a search for the correct submit or image input
element to use when submitting, I neglected to cover the case of
forms which have neither a submit or image input element. When
I encounter a form such as this now, I submit it anyway after
performing the submit or image input element and failing to find one.

        * khtml/html/html_formimpl.cpp:
        (HTMLFormElementImpl::performSubmitClick)

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

18 years agoForget to change NOBODY to Darin.
rjw [Mon, 10 Nov 2003 21:54:23 +0000 (21:54 +0000)]
Forget to change NOBODY to Darin.

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

18 years agoWebKit:
rjw [Mon, 10 Nov 2003 21:51:46 +0000 (21:51 +0000)]
WebKit:
Fixed 3478765.  Use ICU to access unicode properties.
Fixed 3478831.  Unicode property/conversion functions should be 32 bit savvy.
Fixed 3478885.  Remove dead arabic shaping code

        Reviewed by NOBODY (OOPS!).

        * Misc.subproj/WebUnicode.h:
        * Misc.subproj/WebUnicode.m:
        (_unicodeDigitValue):
        (_unicodeDirection):
        (_unicodeMirrored):
        (_unicodeMirroredChar):
        (_unicodeLower):
        (_unicodeUpper):
        (WebKitInitializeUnicode):
        (shapeForNextCharacter):
        (initializeCharacterShapeIterator):
        * Misc.subproj/WebUnicodeTables.m:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (widthForNextCharacter):
        (fontContainsString):
WebCore:
Fixed 3478765.  Use ICU to access unicode properties.
Fixed 3478831.  Unicode property/conversion functions should be 32 bit savvy.

        Reviewed by NOBODY (OOPS!).

        * WebCore-combined.exp:
        * WebCore.exp:
        * kwq/KWQChar.mm:
        (QChar::lower):
        (QChar::upper):
        (QChar::mirroredChar):
        * kwq/KWQString.h:
        (QChar::direction):
        * kwq/WebCoreUnicode.cpp:
        * kwq/WebCoreUnicode.h:

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

18 years agoAdded expected results for text-transform test.
rjw [Mon, 10 Nov 2003 20:45:07 +0000 (20:45 +0000)]
Added expected results for text-transform test.

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

18 years agoRemoved Turkish and Deseret from the test case. These don't work yet.
rjw [Mon, 10 Nov 2003 20:42:12 +0000 (20:42 +0000)]
Removed Turkish and Deseret from the test case.  These don't work yet.

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

18 years ago Fixed: <rdar://problem/3478351>: Safari: URL Alias on Dock failed to open the 2byte URL
cblu [Mon, 10 Nov 2003 19:58:16 +0000 (19:58 +0000)]
Fixed: <rdar://problem/3478351>: Safari: URL Alias on Dock failed to open the 2byte URL

        Reviewed by dave.

        * Misc.subproj/WebNSURLExtras.m:
        (-[NSString _web_mapHostNameWithRange:encode:makeString:]): if the host name is percent-escaped, use CFURLCreateStringByReplacingPercentEscapes

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

18 years ago Fixed: <rdar://problem/3478781>: drag image of selected text and images doesn't...
cblu [Mon, 10 Nov 2003 18:49:18 +0000 (18:49 +0000)]
Fixed: <rdar://problem/3478781>: drag image of selected text and images doesn't include images

        Reviewed by rjw.

        * khtml/rendering/render_image.cpp:
        (RenderImage::paintObject): paint when the paint action is PaintActionSelection
        * khtml/rendering/render_replaced.cpp:
        (RenderReplaced::paint): ditto

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

18 years ago Reviewed by John
kocienda [Mon, 10 Nov 2003 18:46:43 +0000 (18:46 +0000)]
    Reviewed by John

Fix for this bug:

<rdar://problem/3477624>: REGRESSION (113): Using input method to
enter non-ascii text submits the form

This regression has been in the tree for a couple of versions now,
since we improved the way key events are processed. The solution
is to ask the text input manager if it has any marked text when
the return key (or enter key) is pressed, because if it does, the key
needs to work in the "accept" role for the input manager. Fixing
in this way has the pleasant effect of making return/enter key
behavior "do the right thing" based on context.

        * khtml/html/html_formimpl.cpp:
        (HTMLInputElementImpl::defaultEventHandler): Add check to see
if text input manager has marked text before submitting text
and password fields. Broke out key handling for checkboxes and
radios, since the old code for these widgets worked fine.
        * kwq/KWQLineEdit.h: Added hasMarkedText function.
        * kwq/KWQLineEdit.mm:
        (QLineEdit::hasMarkedText): Returns whether the current input
manager has marked text or not.

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

18 years ago Use ICU for upper/lower conversion. Fixed 3477157, 3478455, 3478456, 3478457, 3478486.
rjw [Mon, 10 Nov 2003 18:00:35 +0000 (18:00 +0000)]
Use ICU for upper/lower conversion.  Fixed 34771573478455347845634784573478486.
Remaining issues with surrogates (3477159) and Turkish I (3478482).

        Reviewed by Ken.

        * Misc.subproj/WebUnicode.m:
        (_unicodeLower):
        (_unicodeUpper):

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

18 years ago Reviewed by John.
darin [Mon, 10 Nov 2003 16:31:34 +0000 (16:31 +0000)]
    Reviewed by John.

        - fixed 3477528 -- array.sort(function) fails if the function returns a non-zero value that rounds to zero

        * kjs/array_object.cpp:
        (compareByStringForQSort): Added checks for undefined values to match what the specification calls for.
        (compareWithCompareFunctionForQSort): Added checks for undefined values as above, and also changed the
        code that looks at the compare function result to look at the number returned without rounding to an integer.
        (ArrayProtoFuncImp::call): Changed the code that looks at the compare function result to look at the number
        returned without rounding to an integer.

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

18 years ago Reviewed by Dave.
darin [Mon, 10 Nov 2003 08:26:45 +0000 (08:26 +0000)]
    Reviewed by Dave.

        - fixed 3478173 -- REGRESSION (112-113): getElementById is failing for many types of elements

        The problem was that ElementImpl::attach was being skipped for many objects with classes
        derived from ElementImpl. By changing them all to call up to their base classes instead of
        skipping levels, the bug went away. This was possible (and easy to do) because of the
        rendererIsNeeded() change I made a while back.

        * khtml/html/html_baseimpl.cpp:
        (HTMLFrameElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
        and then calling NodeBaseImpl::attach(). This was a remnant of the old way of changing the logic
        about when to create the renderer, not needed now that we have rendererIsNeeded().
        (HTMLFrameSetElementImpl::attach): Ditto.
        (HTMLIFrameElementImpl::attach): Ditto.

        * khtml/html/html_formimpl.h: Removed many unused attach() overrides.
        * khtml/html/html_formimpl.cpp:
        (HTMLGenericFormElementImpl::attach): Ditto.
        (HTMLButtonElementImpl::attach): Removed, because now the base class's attach does the right thing.
        (HTMLFieldSetElementImpl::attach): Ditto.
        (HTMLInputElementImpl::attach): Removed explicit createRendererIfNeeded call, not needed now that
        HTMLGenericFormElementImpl calls through to its base class.
        (HTMLLegendElementImpl::attach): Removed, because now the base class's attach does the right thing.
        (HTMLSelectElementImpl::attach): Ditto.
        (HTMLTextAreaElementImpl::attach): Ditto.

        * khtml/html/html_imageimpl.cpp:
        (HTMLImageElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
        and then calling NodeBaseImpl::attach().
        (HTMLImageElementImpl::detach): Call base class's detach() instead of NodeBaseImpl::detach(). No
        need to skip the ElementImpl::detach() function, and important not to for the new "id" optimization.

        * khtml/html/html_inlineimpl.h: Removed HTMLBRElementImpl::attach override.
        * khtml/html/html_inlineimpl.cpp: (HTMLBRElementImpl::attach): Call base class's attach() instead
        of creating renderer explicitly and then calling NodeBaseImpl::attach().

        * khtml/html/html_objectimpl.h: Removed HTMLAppletElementImpl::attach override.
        * khtml/html/html_objectimpl.cpp:
        (HTMLAppletElementImpl::attach): Removed, because the base class's attach does the right thing.
        (HTMLEmbedElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
        and then calling NodeBaseImpl::attach().
        (HTMLObjectElementImpl::attach): Ditto.

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

18 years agoAdd layout test for letter/word spacing bug.
hyatt [Sun, 9 Nov 2003 23:43:26 +0000 (23:43 +0000)]
Add layout test for letter/word spacing bug.

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

18 years ago Fix for 3478317, letter/word-spacing don't inherit properly through italic/bold...
hyatt [Sun, 9 Nov 2003 23:41:24 +0000 (23:41 +0000)]
Fix for 3478317, letter/word-spacing don't inherit properly through italic/bold elements.

        Reviewed by darin

        * khtml/rendering/font.h:
        (khtml::Font::Font):
        * khtml/rendering/render_style.h:
        (khtml::RenderStyle::setFontDef):

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

18 years ago Fix for 3478309, make sure backgrounds paint in the border box and not just in the...
hyatt [Sun, 9 Nov 2003 22:30:20 +0000 (22:30 +0000)]
Fix for 3478309, make sure backgrounds paint in the border box and not just in the padding box.

        Reviewed by darin

Also making sure that <frame>s aren't transparent, since other browsers seem to only make <iframe>s/<object>s
be transparent.

        * khtml/rendering/render_box.cpp:
        (RenderBox::paintRootBoxDecorations):
        (RenderBox::paintBackgroundExtended):

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

18 years ago Reviewed by John.
darin [Sun, 9 Nov 2003 05:10:57 +0000 (05:10 +0000)]
    Reviewed by John.

        - fixed 3478025 -- links with non-Latin-1 characters in the hostname are not getting IDN-encoded

        * kwq/KWQKURL.mm:
        (KURL::parse): Changed existing code to take advantage of the fact that a NUL character
        is classified as a path segment end character.
        (KURL::findHostnameInHierarchicalURL): Don't treat NUL characters as terminating characters
        for hostnames, because QChar::latin1() turns all non-Latin-1 characters into NUL characters.

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

18 years ago Reviewed by John.
darin [Sat, 8 Nov 2003 23:24:54 +0000 (23:24 +0000)]
    Reviewed by John.

        - fixed 3477509 -- REGRESSION (112-113): crash in KHTMLPart::processObjectRequest at espn.com, chosun.com

        * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest): Use a dynamic_cast to check the type of the
        part rather than assuming it's always a KHTMLPart. The crash was caused by casting a KWQPluginPart to
        KHTMLPart.

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

18 years ago Fixed: <rdar://problem/3240778>: add "save" menu item to contextual menu for text...
cblu [Sat, 8 Nov 2003 17:40:51 +0000 (17:40 +0000)]
Fixed: <rdar://problem/3240778>: add "save" menu item to contextual menu for text pages

        Reviewed by darin.

        * WebView.subproj/WebTextView.m:
        (-[WebTextView menuForEvent:]): Made WebTextView's context menu behavior like WebHTMLView's context menu behavior with regards to selection. If the control-click was on a selection, show menu options for the selection like copy. If it was not on a selection, show menu options such as save and print. Don't select anything when control-clicking.

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

18 years ago Fixed: <rdar://problem/3478022>: assertion failure while loading WMP content
cblu [Sat, 8 Nov 2003 17:40:23 +0000 (17:40 +0000)]
Fixed: <rdar://problem/3478022>: assertion failure while loading WMP content

        Reviewed by darin.

        * ChangeLog:
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): Don't continue if the stream is cancelled in startStreamWithResponse.

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

18 years ago Reviewed by Richard.
darin [Sat, 8 Nov 2003 17:39:17 +0000 (17:39 +0000)]
    Reviewed by Richard.

        - event cleanup motivated by questions on khtml-devel

        * khtml/dom/dom2_events.h: Removed eventModuleName.
        * khtml/dom/dom2_events.cpp: Removed eventModuleName.

        * khtml/xml/dom2_eventsimpl.h: Removed eventModuleName, made many trivially simple
        functions inline, made virtual functions no longer inline. Also made some functions const.
        (DOM::EventImpl::propagationStopped): Made this non-virtual; there was no reason for
        it to be virtual I could see.
        (DOM::EventImpl::defaultPrevented): Ditto.
        (DOM::EventImpl::setDefaultHandled): Ditto.
        (DOM::UIEventImpl::view): Made this inline.
        (DOM::UIEventImpl::detail): Ditto.
        (DOM::MouseEventImpl::screenX): Ditto.
        (DOM::MouseEventImpl::screenY): Ditto.
        (DOM::MouseEventImpl::clientX): Ditto.
        (DOM::MouseEventImpl::clientY): Ditto.
        (DOM::MouseEventImpl::layerX): Ditto.
        (DOM::MouseEventImpl::layerY): Ditto.
        (DOM::MouseEventImpl::ctrlKey): Ditto.
        (DOM::MouseEventImpl::shiftKey): Ditto.
        (DOM::MouseEventImpl::altKey): Ditto.
        (DOM::MouseEventImpl::metaKey): Ditto.
        (DOM::MouseEventImpl::button): Ditto.
        (DOM::MouseEventImpl::relatedTarget): Ditto.
        (DOM::MutationEventImpl::relatedNode): Ditto.
        (DOM::MutationEventImpl::prevValue): Ditto.
        (DOM::MutationEventImpl::newValue): Ditto.
        (DOM::MutationEventImpl::attrName): Ditto.
        (DOM::MutationEventImpl::attrChange): Ditto.

        * khtml/ecma/kjs_events.cpp: (KJS::getDOMEvent): Changed implementation to no longer
        require eventModuleName(), and removed some unneeded casts.

        * khtml/xml/dom2_eventsimpl.cpp: Made lots of functions inline.
        (EventImpl::isUIEvent): Since this is virtual, make it no longer inline.
        (EventImpl::isMouseEvent): Ditto.
        (EventImpl::isMutationEvent): Ditto.
        (EventImpl::isKeyboardEvent): Ditto.
        (UIEventImpl::isUIEvent): Ditto.
        (MouseEventImpl::isMouseEvent): Ditto.
        (KeyboardEventImpl::isKeyboardEvent): Ditto.
        (MutationEventImpl::isMutationEvent): Ditto.

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

18 years ago Fixed: <rdar://problem/3020196>: links with href="" don't show hand cursor when...
cblu [Sat, 8 Nov 2003 01:08:39 +0000 (01:08 +0000)]
Fixed: <rdar://problem/3020196>: links with href="" don't show hand cursor when you mouse over them

        Reviewed by darin.

        * khtml/khtmlview.cpp:
        (KHTMLView::viewportMouseMoveEvent): check if the URL on the event is non-NULL, not if it is non-empty

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

18 years agoWebKit:
rjw [Fri, 7 Nov 2003 18:57:39 +0000 (18:57 +0000)]
WebKit:
Fixed 3477067.  Use our case unicode conversion routines.

        Reviewed by Ken.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (toUpper):
WebCore:
Fixed 3477067.  Use our case unicode conversion routines.

        Reviewed by Ken.

        * kwq/KWQChar.mm:
        (QChar::lower):
        (QChar::upper):

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

18 years agoNew text-transform test case from Dave at CSS WG.
rjw [Fri, 7 Nov 2003 17:51:16 +0000 (17:51 +0000)]
New text-transform test case from Dave at CSS WG.

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

18 years agoAdding runin tests finally.
hyatt [Fri, 7 Nov 2003 07:59:30 +0000 (07:59 +0000)]
Adding runin tests finally.

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

18 years ago Fixes for 3476717, inline blocks should expand to encompass floats; 3476718, inline...
hyatt [Fri, 7 Nov 2003 07:58:36 +0000 (07:58 +0000)]
Fixes for 3476717, inline blocks should expand to encompass floats; 3476718, inline blocks should not
collapse margins with children; and 3476721, run-ins and compacts can flow into anonymous blocks, even
ones that they caused to be created by failing to run in/compact in the first place.

        Reviewed by darin (inline block fixes only).

        * khtml/rendering/render_block.cpp:
        (khtml::RenderBlock::layoutBlock):
        (khtml::RenderBlock::layoutBlockChildren):

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

18 years agoAdding inline-block growth/collapsing layout tests.
hyatt [Fri, 7 Nov 2003 07:41:52 +0000 (07:41 +0000)]
Adding inline-block growth/collapsing layout tests.

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

18 years ago Fixed 3476563. Remove unnecessary call to set view position after load completes.
rjw [Fri, 7 Nov 2003 03:37:56 +0000 (03:37 +0000)]
Fixed 3476563.  Remove unnecessary call to set view position after load completes.

        Reviewed by Gramps.

        * khtml/khtml_part.cpp:
        (KHTMLPart::checkCompleted):

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

18 years ago Fixed 3476393. Call scrollPoint: recursively up the view hierarchy to ensure point...
rjw [Fri, 7 Nov 2003 00:40:03 +0000 (00:40 +0000)]
Fixed 3476393.  Call scrollPoint: recursively up the view hierarchy to ensure point is visible.

        Reviewed by Ken.

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_scrollPointToVisible:fromView:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView scrollPoint:]):

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

18 years ago * khtml/rendering/render_image.h:
cblu [Thu, 6 Nov 2003 23:42:34 +0000 (23:42 +0000)]
    * khtml/rendering/render_image.h:
        (khtml::RenderImage::isDisplayingError): forgot to remove the "virtual" part of the declaration

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

18 years ago Fixed:
cblu [Thu, 6 Nov 2003 23:37:53 +0000 (23:37 +0000)]
Fixed:
<rdar://problem/3275118>: Dragging from missing-image link stretches missing-image icon to size of missing image
<rdar://problem/3476225>: assert dragging non-existant images

        Reviewed by rjw.

        * khtml/rendering/render_image.h:
        (khtml::RenderImage::isDisplayingError): new method, returns true for the broken image
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge elementAtPoint:]): only provide info if there is an image and the image is not broken

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

18 years ago Reviewed by Richard
kocienda [Thu, 6 Nov 2003 21:29:06 +0000 (21:29 +0000)]
    Reviewed by Richard

Fixes for these bugs:

<rdar://problem/3476006>: Form file input widgets do not scroll
to view when focused

<rdar://problem/3476007>: Form file input widgets should only
focus when full keyboard access is on

        * kwq/KWQFileButton.h: Added focusPolicy declaration.
        * kwq/KWQFileButton.mm:
        (KWQFileButton::focusPolicy): Added. Now works like other buttons.
Fixes 3476007.
        (KWQFileButton::focusChanged): Added. Code similar to text area
widgets. Fixes 3476006.

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