Add a dynamic id manipulation test.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5517 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Moving this test.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5518 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding css tests.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5519 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix overflow test to be in strict mode.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        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: http://svn.webkit.org/repository/webkit/trunk@5521 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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: http://svn.webkit.org/repository/webkit/trunk@5522 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5523 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        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: http://svn.webkit.org/repository/webkit/trunk@5527 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        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: http://svn.webkit.org/repository/webkit/trunk@5530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        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: http://svn.webkit.org/repository/webkit/trunk@5531 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5532 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Reviewed by Darin.

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


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5534 268f45cc-cd09-0410-ab3c-d52691b4dbfc
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: http://svn.webkit.org/repository/webkit/trunk@5535 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5536 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5537 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Check in revised layout tests after changing all the logical font size definitions.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5538 268f45cc-cd09-0410-ab3c-d52691b4dbfc
	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: http://svn.webkit.org/repository/webkit/trunk@5539 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Revise layout tests now that we break on hyphens and question marks.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5540 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Reviewed by Maciej

	Fix for this bug:

	<rdar://problem/3480023>: Links don't work if there's a colon in the URL

	The colon in the URL was confusing KURL. I modified some checks in
	KURL so that its search for schemes stops when a non-scheme
	character is found rather than when a path end segment character
	is found.

        * kwq/KWQKURL.mm: Added a new Colon class to the table of characters.
        (isSchemeCharOrColon): New helper.
        (KURL::KURL): Call on new helper when looking for a scheme.
        (KURL::findHostnameInHierarchicalURL): Ditto.


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