1. 06 Mar, 2008 2 commits
  2. 05 Mar, 2008 1 commit
    • mjs@apple.com's avatar
      WebCore: · 2a58f429
      mjs@apple.com authored
              Reviewed by Sam and Oliver.
      
              - fixed http://bugs.webkit.org/show_bug.cgi?id=16289
              - fixed Acid3 tests 26 and 27 (not exactly the same issue but related)
      
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::JSNode::mark): When marking a node that's in-document,
              mark the owner document if it hasn't been already. This means holding on
              to a single node from an unreferenced document now keeps the whole document alive.
              
              We are now at 90/100 on Acid3.
      
      LayoutTests:
      
              Reviewed by Sam and Oliver.
      
              - test for http://bugs.webkit.org/show_bug.cgi?id=16289
              - test for Acid3 tests 26 and 27 (not exactly the same issue but related)
      
              * fast/dom/gc-11-expected.txt: Added. Test case from bug 16289.
              * fast/dom/gc-11.html: Added.
              * fast/dom/gc-acid3.html: Added. DOM garbage collection part of Acid3.
              * fast/dom/gc-acid3-expected.txt: Added.
              * fast/dom/gc-6-expected.txt: Updated results. The old assumptions of this test
              were in conflict with the requirements of Acid3.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2a58f429
  3. 04 Mar, 2008 5 commits
    • mitz@apple.com's avatar
      WebCore: · f55fe75a
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=17676
                <rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
      
              Test: fast/encoding/url-host-name-non-ascii.html
      
              * platform/KURL.cpp:
              (WebCore::appendEncodedHostname): Added an early return in the all-ASCII
              case to avoid copying the host name twice and corrected the error
              checking after calling uidna_IDNToASCII().
      
      LayoutTests:
      
              - test for http://bugs.webkit.org/show_bug.cgi?id=17676
                <rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
      
              * fast/encoding/url-host-name-non-ascii-expected.txt: Added.
              * fast/encoding/url-host-name-non-ascii.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f55fe75a
    • weinig@apple.com's avatar
      WebCore: · a37bbd4d
      weinig@apple.com authored
              Reviewed by Darin Adler.
      
              Add ClassInfo to custom constructors so that they toString properly
      
              - Take this chance to remove the "Imp" from the end of JSXMLHttpRequestConstructorImp,
                and XSLTProcessorConstructorImp and prefix all the classes with JS. 
      
              * bindings/js/JSAudioConstructor.cpp:
              (WebCore::): Added ClassInfo definition.
              (WebCore::JSAudioConstructor::JSAudioConstructor):
              (WebCore::JSAudioConstructor::construct): Cleanup.
              * bindings/js/JSAudioConstructor.h: Rename m_doc to m_document.
              (WebCore::JSAudioConstructor::classInfo): Added.
      
              * bindings/js/JSHTMLInputElementBase.cpp: Rename HTMLInputElementBasePrototype 
              to JSHTMLInputElementBasePrototype as seen if toString'ed.
              (WebCore::):
      
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              (WebCore::): Added ClassInfo definition.
              * bindings/js/JSHTMLOptionElementConstructor.h:
              (WebCore::JSHTMLOptionElementConstructor::classInfo): Added.
      
              * bindings/js/JSImageConstructor.cpp:
              (WebCore::): Added ClassInfo definition.
              (WebCore::JSImageConstructor::implementsConstruct): Moved here from header.
              * bindings/js/JSImageConstructor.h:
              (WebCore::JSImageConstructor::classInfo): Added.
      
              * bindings/js/JSXMLHttpRequest.cpp:
              (WebCore::): Rename XMLHttpRequestPrototype  to JSXMLHttpRequestPrototype 
              as seen if toString'ed.
              (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
              (WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
              (WebCore::JSXMLHttpRequestConstructor::construct):
              * bindings/js/JSXMLHttpRequest.h: Renamed JSXMLHttpRequestConstructorImp to
              JSXMLHttpRequestConstructor and doc to m_document and 
              (WebCore::JSXMLHttpRequestConstructor::classInfo): Added.
      
              * bindings/js/JSXSLTProcessor.cpp:
              (WebCore::): Renamed XSLTProcessorPrototype to JSXSLTProcessorPrototype and 
              XSLTProcessorConstructorImp to JSXSLTProcessorConstructor.
              (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
              (WebCore::JSXSLTProcessorConstructor::implementsConstruct):
              (WebCore::JSXSLTProcessorConstructor::construct):
              * bindings/js/JSXSLTProcessor.h:
              (WebCore::JSXSLTProcessorConstructor::classInfo): Added.
      
              * bindings/js/kjs_window.cpp:
              (WebCore::JSDOMWindowBase::getValueProperty): Fixed to work with the new class names.
      
      WebKitTools:
      
              Reviewed by Darin Adler.
      
              * Scripts/do-webcore-rename: Update renaming plan.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              Update results for fixed class names.
      
              * fast/dom/Window/window-properties-expected.txt:
              * fast/dom/xmlhttprequest-get-expected.txt:
              * http/tests/xmlhttprequest/event-target-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30763 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a37bbd4d
    • adele@apple.com's avatar
      WebCore: · aee865c5
      adele@apple.com authored
              Reviewed by Beth.
      
              Fix for <rdar://problem/5779718> focus() does not work for anchor elements with no content
      
              If an anchor has zero size, don't exclude it from being focusable from JS, just exclude it
              from being keyboard focusable (using the tab key).
      
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::isFocusable):
              (WebCore::HTMLAnchorElement::isKeyboardFocusable):
      
      LayoutTests:
      
              Reviewed by Beth.
      
              Test for <rdar://problem/5779718> focus() does not work for anchor elements with no content
      
              * fast/events/anchor-empty-focus-expected.txt: Added.
              * fast/events/anchor-empty-focus.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30761 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aee865c5
    • ap@webkit.org's avatar
      Suggested by Darin, rubber-stamped by Mark. · a17471b3
      ap@webkit.org authored
              http://bugs.webkit.org/show_bug.cgi?id=17569
              REGRESSION (r30571): Buzzword.com doesn't load
      
              Rolling out r30571, as determining what is wrong with it proved tricky.
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::tokenizerProcessedData):
              (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30738 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a17471b3
    • weinig@apple.com's avatar
      WebCore: · 6d270f6f
      weinig@apple.com authored
              Reviewed by Mark Rowe.
      
              Move JSClipboard into its own file.
      
              * DerivedSources.make:
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * bindings/js/JSAttrCustom.cpp:
              * bindings/js/JSClipboardCustom.cpp: Added.
              (WebCore::JSClipboard::types):
              (WebCore::JSClipboard::clearData):
              (WebCore::JSClipboard::getData):
              (WebCore::JSClipboard::setData):
              (WebCore::JSClipboard::setDragImage):
              * bindings/js/JSElementCustom.cpp:
              * bindings/js/JSEventCustom.cpp:
              * bindings/js/JSHTMLFrameElementCustom.cpp:
              * bindings/js/JSHTMLIFrameElementCustom.cpp:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_window.cpp:
              * bindings/scripts/CodeGeneratorJS.pm:
              * dom/Clipboard.cpp:
              (WebCore::Clipboard::setDropEffect):
              (WebCore::Clipboard::setEffectAllowed):
              * dom/Clipboard.idl: Added.
      
      LayoutTests:
      
              Reviewed by Mark Rowe.
      
              Update test results.
      
              * fast/dom/Window/window-properties-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30735 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d270f6f
  4. 03 Mar, 2008 5 commits
    • mitz@apple.com's avatar
      WebCore: · c76605ad
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - make :first-letter apply to the first letter in normal flow, skipping
                floats and positioned objects
      
              Test: fast/css/first-letter-skip-out-of-flow.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::updateFirstLetter):
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test that :first-letter applies to the first letter in normal flow,
                skipping floats and positioned objects
      
              * fast/css/first-letter-skip-out-of-flow.html: Added.
              * platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.checksum: Added.
              * platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.png: Added.
              * platform/mac/fast/css/first-letter-skip-out-of-flow-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30724 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c76605ad
    • mrowe@apple.com's avatar
      2008-03-03 Mark Rowe <mrowe@apple.com> · 45e6a3fa
      mrowe@apple.com authored
              Reviewed by Dan Bernstein.
      
              Fix http://bugs.webkit.org/show_bug.cgi?id=17313
              Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
      
              Node::querySelector and SelectorNodeList were not sufficiently initializing the CSSStyleSelector
              before using it to resolve styles, which lead to it having a stale m_style member in some situations.
              This stale m_style member resulted in a wild store that would write over whatever object now resided
              at the location m_style pointed to.
      
              Test: fast/dom/SelectorAPI/bug-17313.html
      
              * dom/Node.cpp:
              (WebCore::Node::querySelector): Call initForStyleResolve to further initialize the CSSStyleSelector.
              * dom/SelectorNodeList.cpp:
              (WebCore::SelectorNodeList::SelectorNodeList): Ditto.
      
      2008-03-03  Mark Rowe  <mrowe@apple.com>
      
              Reviewed by Dan Bernstein.
      
              Test for http://bugs.webkit.org/show_bug.cgi?id=17313
              Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
      
              * fast/dom/SelectorAPI/bug-17313-expected.txt: Added.
              * fast/dom/SelectorAPI/bug-17313.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30722 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      45e6a3fa
    • ddkilzer@apple.com's avatar
      WebCore: · a75202e1
      ddkilzer@apple.com authored
              Dynamically inserting CSS rule with @media query fails with DOM Exception 12
              <http://bugs.webkit.org/show_bug.cgi?id=15986>
      
              Reviewed by Darin.
      
              Allow any valid rule (@font-face, @import, @media, @page or style) to be
              parsed when using CSSStyleSheet.insertRule().  Previously only import and
              style rules were allowed.  Note that @page rules always throw an exception
              because they're not implemented yet, so no test case was added for them.
      
              Tests: fast/css/insertRule-font-face.html
                     fast/css/insertRule-media.html
      
              * css/CSSGrammar.y: Extracted 'valid_rule' out of 'rule'.  Renamed
              'ruleset_or_import' to 'valid_rule_or_import' and changed its definition.
      
      LayoutTests:
      
              Dynamically inserting CSS rule with @media query fails with DOM Exception 12
              <http://bugs.webkit.org/show_bug.cgi?id=15986>
      
              Reviewed by Darin.
      
              * fast/css/insertRule-font-face.html: Added.
              * fast/css/insertRule-media.html: Added.
              * fast/css/resources/insertRule-font-face.js: Added.
              * fast/css/resources/insertRule-media.js: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30715 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a75202e1
    • oliver@apple.com's avatar
      Bug 17620: getImageData lies · 350652b5
      oliver@apple.com authored
      http://bugs.webkit.org/show_bug.cgi?id=17620
      
      Reviewed by Mark Rowe
      
      Correct logic to actually iterate over the source row
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30711 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      350652b5
    • oliver@apple.com's avatar
      Correct incorrect assertion · 7babd229
      oliver@apple.com authored
      Reviewed by Mark Rowe
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30710 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7babd229
  5. 02 Mar, 2008 1 commit
  6. 01 Mar, 2008 2 commits
    • oliver@apple.com's avatar
      Bug 16954: Support putImageData · 18ed29dc
      oliver@apple.com authored
      Reviewed by Sam Weinig.
      
      Implement support for HTML5's putImageData for the CG port.  All other ports
      are currently just using stubs for the final blit.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      18ed29dc
    • weinig@apple.com's avatar
      WebCore: · 4ba897c4
      weinig@apple.com authored
              Reviewed by Darin Adler.
      
              Search the entire prototype chain when doing early prototype lookup in
              the Window's getOwnPropertySlot method.
      
              Makes fast/dom/Window/window-function-name-getter-precedence.html pass all tests.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getOwnPropertySlot):
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              Update test result.
      
              * fast/dom/Window/window-function-name-getter-precedence-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ba897c4
  7. 29 Feb, 2008 2 commits
    • mrowe@apple.com's avatar
      2008-02-29 Robert Blaut <webkit@blaut.biz> · 94335d6c
      mrowe@apple.com authored
              Reviewed by Darin Adler.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=17532
                Webkit imports styles from <link> element which doesn't have rel=stylesheet defined
      
              Test: fast/html/link-rel-stylesheet.html
      
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::process):
      
      2008-02-29  Robert Blaut  <webkit@blaut.biz>
      
              Reviewed by Darin Adler.
      
              - Tests for http://bugs.webkit.org/show_bug.cgi?id=17532
                Webkit imports styles from <link> element which doesn't have rel=stylesheet defined
      
              * fast/html/link-rel-stylesheet.html: Added.
              * fast/media/mq-simple-query-02.html:
              * fast/media/mq-width-absolute-02.html:
              * platform/mac/fast/html/link-rel-stylesheet-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      94335d6c
    • mitz@apple.com's avatar
      WebCore: · 6fa3cd2c
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix a bug where explicit embedding past the end of a line could
                affect text that line
      
              Test: fast/text/embed-at-end-of-pre-wrap-line.html
      
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::skipWhitespace): Removed calls to
              setAdjustEmbedding().
              (WebCore::RenderBlock::findNextLineBreak): Added calls to
              setAdjustEmbedding() around skipWhitespace() only where needed.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test for a bug where explicit embedding past the end of a line could
                affect text that line
      
              * fast/text/embed-at-end-of-pre-wrap-line.html: Added.
              * platform/mac-leopard/fast/text/embed-at-end-of-pre-wrap-line-expected.checksum: Added.
              * platform/mac-leopard/fast/text/embed-at-end-of-pre-wrap-line-expected.png: Added.
              * platform/mac/fast/text/embed-at-end-of-pre-wrap-line-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fa3cd2c
  8. 28 Feb, 2008 1 commit
    • justin.garcia@apple.com's avatar
      WebCore: · 131b4fd5
      justin.garcia@apple.com authored
              Reviewed by Darin Adler.
      
              <rdar://problem/4930986> REGRESSION: Paste As Quotation pastes black text instead of blue
              
              Add a second style span at copy time to hold document default styles.  This helps us
              differentiate between those and user applied styles at paste time, where we'll want
              to let Mail's Paste As Quotation blockquote override document default styles, but
              not others.
      
              * css/CSSComputedStyleDeclaration.cpp:
              (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed the unit type used 
              for -webkit-text-stroke-width from CSS_NUMBER to CSS_PX, to match other properties that 
              are thick | medium | thin | <length>.  Before, there was a mismatch between the unit 
              type of -webkit-text-stroke-width property values in a CSSComputedStyleDeclaration for 
              an element and that element's inlineStyleDecl(), causing identical values to always appear 
              different to diff().
              * editing/ReplaceSelectionCommand.cpp:
              (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Fixed.  Don't just change
              the class to an empty string, completely remove it, it's no longer needed.
              (WebCore::handleStyleSpansBeforeInsertion): Moved the optimization from doApply here.
              (WebCore::ReplaceSelectionCommand::handleStyleSpans): 
              Added, replaces removeRedundantStyles.
              We aren't (yet) removing all redundant styles, just those on style spans, so I removed the
              unused code and renamed the function.
              There won't be more than two style spans that we need to consider, the one with the 
              source document's default styles and styles on the commonAncestor of the copied Range, 
              so don't look for more than two.
              Let elements that wrap the incoming fragment override the source document's styles.
              (WebCore::ReplaceSelectionCommand::doApply): Moved code to handleStyleSpansBeforeInsertion
              and call the renamed handleStyleSpans.
              * editing/ReplaceSelectionCommand.h:
              * editing/markup.cpp:
              (WebCore::removeDefaultStyles): Added.  Don't add document defaults to the style span
              that holds user applied styles, since they'll be added to their own style span.
              (WebCore::createMarkup):
              Add a second style span that holds just the document defaults. This lets us differentiate
              between those and user applied styles at paste time.
              Mail blockquotes are just another type of special element, moved their handling there. This
              also lets paste code make assumptions about the position of the two style spans (they are 
              *always* parent-child).
      
      LayoutTests:
      
              Reviewed by Darin Adler.
              
              <rdar://problem/4930986> REGRESSION: Paste As Quotation pastes black text instead of blue
      
              Demonstrates the bug:
              * editing/pasteboard/4930986-1-expected.txt: Added.
              * editing/pasteboard/4930986-1.html: Added.
              * editing/pasteboard/4930986-2-expected.txt: Added.
              * editing/pasteboard/4930986-2.html: Added.
              
              Demonstrates a problem with the first version of the patch:
              * editing/pasteboard/4930986-3-expected.txt: Added.
              * editing/pasteboard/4930986-3.html: Added.
              
              Visual problem fixed.  An anonymous renderer changed position, DOM remains unchanged:
              * editing/execCommand/5144139-1.html:
              * platform/mac/editing/execCommand/5144139-1-expected.checksum:
              * platform/mac/editing/execCommand/5144139-1-expected.png:
              * platform/mac/editing/execCommand/5144139-1-expected.txt:
      
              Removed unnecessary style spans, visual result unchanged:
              * platform/mac/editing/pasteboard/merge-end-blockquote-expected.checksum:
              * platform/mac/editing/pasteboard/merge-end-blockquote-expected.png:
              * platform/mac/editing/pasteboard/merge-end-blockquote-expected.txt:
              * platform/mac/editing/style/font-family-with-space-expected.checksum:
              * platform/mac/editing/style/font-family-with-space-expected.png:
              * platform/mac/editing/style/font-family-with-space-expected.txt:
              
              A style span isn't removed because at paste time because we don't anticipate 
              encountering styles on style spans that are non-inheritable, because we don't 
              create style spans like that at copy time. Turned this into a text only 
              test. Test remains visually unchanged:
              * editing/pasteboard/5245519-expected.txt: Added.
              * editing/pasteboard/5245519.html:
              * platform/mac/editing/pasteboard/5245519-expected.checksum: Removed.
              * platform/mac/editing/pasteboard/5245519-expected.png: Removed.
              * platform/mac/editing/pasteboard/5245519-expected.txt: Removed.
      
              Added an extra empty anonymous renderer, DOM and visual result remain unchanged:
              * platform/mac/editing/execCommand/create-list-with-hr-expected.checksum:
              * platform/mac/editing/execCommand/create-list-with-hr-expected.png:
              * platform/mac/editing/execCommand/create-list-with-hr-expected.txt:
              * platform/mac/editing/pasteboard/paste-list-001-expected.checksum:
              * platform/mac/editing/pasteboard/paste-list-001-expected.png:
              * platform/mac/editing/pasteboard/paste-list-001-expected.txt:
              * platform/mac/editing/pasteboard/paste-table-001-expected.checksum:
              * platform/mac/editing/pasteboard/paste-table-001-expected.png:
              * platform/mac/editing/pasteboard/paste-table-001-expected.txt:
              * platform/mac/editing/pasteboard/paste-text-003-expected.checksum:
              * platform/mac/editing/pasteboard/paste-text-003-expected.png:
              * platform/mac/editing/pasteboard/paste-text-003-expected.txt:
              
              Reflects changes to CSSComputedStyleDeclaration::getPropertyCSSValue:
              * fast/css/computed-style-expected.txt:
              * fast/css/computed-style-without-renderer-expected.txt:
              
              We don't remove styles from style spans that are overridden by all of their 
              children, even though they are unnecessary. We've never done this, but now
              that there can be two style spans at paste time we are more likely to have 
              a style span left over because of this problem.  Mentioned this in the test 
              case and turned this into a text only test:
              * editing/pasteboard/4840662.html:
              * editing/pasteboard/4840662-expected.txt: Added.
              * platform/mac/editing/pasteboard/4840662-expected.checksum: Removed.
              * platform/mac/editing/pasteboard/4840662-expected.png: Removed.
              * platform/mac/editing/pasteboard/4840662-expected.txt: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30649 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      131b4fd5
  9. 27 Feb, 2008 2 commits
    • mitz@apple.com's avatar
      WebCore: · c92d1283
      mitz@apple.com authored
              Reviewed by John Sullivan.
      
              - fix <rdar://problem/5607547> Single letter surrounded by soft hyphens can disappear
      
              Test: fast/text/soft-hyphen-2.html
      
              * rendering/bidi.cpp:
              (WebCore::chopMidpointsAt): Changed to iterate midpoints backwards, so
              that if there are two midpoints at the given position, only the last one
              will be chopped off.
      
      LayoutTests:
      
              Reviewed by John Sullivan.
      
              - test for <rdar://problem/5607547> Single letter surrounded by soft hyphens can disappear
      
              * fast/text/soft-hyphen-2.html: Added.
              * platform/mac/fast/text/soft-hyphen-2-expected.checksum: Added.
              * platform/mac/fast/text/soft-hyphen-2-expected.png: Added.
              * platform/mac/fast/text/soft-hyphen-2-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30644 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c92d1283
    • mitz@apple.com's avatar
      WebCore: · 37717da4
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - make centered text in right-to-left blocks spill over to the left
      
              Test: fast/text/align-center-rtl-spill.html
      
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::computeHorizontalPositionsForLine):
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test that centered text in right-to-left blocks spills over to the left
      
              * fast/text/align-center-rtl-spill.html: Added.
              * platform/mac/fast/text/align-center-rtl-spill-expected.checksum: Added.
              * platform/mac/fast/text/align-center-rtl-spill-expected.png: Added.
              * platform/mac/fast/text/align-center-rtl-spill-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30642 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37717da4
  10. 26 Feb, 2008 3 commits
  11. 25 Feb, 2008 3 commits
    • mitz@apple.com's avatar
      WebCore: · 51017321
      mitz@apple.com authored
              Reviewed by Sam Weinig.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=17152
                Paragraphs indented with :first-letter and text-align CSS render incorrectly
      
              Test: fast/text/apply-start-width-after-skipped-text.html
      
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::findNextLineBreak): Improved the logic for when
              to figure in the padding, border and margin before a text node when the
              line begins inside a text node.
      
      LayoutTests:
      
              Reviewed by Sam Weinig.
      
              - test for http://bugs.webkit.org/show_bug.cgi?id=17152
                Paragraphs indented with :first-letter and text-align CSS render incorrectly
      
              * fast/text/apply-start-width-after-skipped-text.html: Added.
              * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.checksum: Added.
              * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.png: Added.
              * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30590 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      51017321
    • darin@apple.com's avatar
      WebCore: · 129cdd7b
      darin@apple.com authored
              Reviewed by Anders.
              Based on a patch by Tim Steele <timsteele41@gmail.com>.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=17186
                Fragment navigation within a page permanently cancels meta refresh
      
              Test: fast/loader/meta-refresh-anchor-click.html
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::load): When load type is FrameLoadTypeRedirectWithLockedHistory,
              always do a real load. This makes sure that meta refresh loads are treated as real loads
              rather than anchor scrolls. Also tweaked formatting a bit.
              (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): This function is
              an alternate way to complete a load, so it needs to start the redirection timer if
              redirection has already been scheduled.
      
      LayoutTests:
      
              Reviewed by Anders.
      
              - test for http://bugs.webkit.org/show_bug.cgi?id=17186
                Fragment navigation within a page permanently cancels meta refresh
      
              * fast/loader/meta-refresh-anchor-click-expected.txt: Added.
              * fast/loader/meta-refresh-anchor-click.html: Added.
              * fast/loader/resources/meta-refresh-subframe.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30571 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      129cdd7b
    • mrowe@apple.com's avatar
      2008-02-25 Johnny Ding <johnnyding.webkit@gmail.com> · 8dbab3a4
      mrowe@apple.com authored
              Reviewed by Darin Adler.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=17444
      
              In HTMLTokenizer::write, the code checks 'pendingScripts.isEmpty()' to decide
              whether to save prependingSrc or not. However, in HTMLTokenizer::scriptHandler
              and HTMLTokenizer::scriptExecution, the code checks testBit:LoadingExtScript
              to decide whether to save prependingSrc or not. The later behavior is not right
              because, in scriptHandler and scriptExecution, even the pendingScripts queue is
              empty, the testBit:LoadingExtScript might be TRUE.
      
              Test: fast/tokenizer/nested-multiple-scripts.html
      
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::scriptHandler): check pendingScripts.isEmpty() instead of
              checking state.loadingExtScript().
              (WebCore::HTMLTokenizer::scriptExecution): check pendingScripts.isEmpty() instead of
              checking state.loadingExtScript().
      
      2008-02-25  Johnny Ding  <johnnyding.webkit@gmail.com>
      
              Reviewed by Darin Adler.
      
              - bug http://bugs.webkit.org/show_bug.cgi?id=17444
              Test for multiple nested scripts which are in a external script.
      
              * fast/tokenizer/nested-multiple-scripts-expected.txt: Added.
              * fast/tokenizer/nested-multiple-scripts.html: Added.
              * fast/tokenizer/resources/external-script-1.js: Added.
              * fast/tokenizer/resources/external-script-2.js: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30563 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8dbab3a4
  12. 24 Feb, 2008 2 commits
    • mitz@apple.com's avatar
      WebCore: · 25beac6d
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix float positioning when a float that does not fit on the line is
                followed by a float that does
      
              Test: fast/block/float/narrow-after-wide.html
      
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::findNextLineBreak): Changed to not position any
              more floats on the line once a float that does not fit is encountered.
              That float should be pushed to the next line, and so should all floats
              that follow, regardless of whether they can fit on the current line.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test float positioning when a float that does not fit on the line is
                followed by a float that does
      
              * fast/block/float/narrow-after-wide.html: Added.
              * platform/mac/fast/block/float/narrow-after-wide-expected.checksum: Added.
              * platform/mac/fast/block/float/narrow-after-wide-expected.png: Added.
              * platform/mac/fast/block/float/narrow-after-wide-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30551 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      25beac6d
    • darin@apple.com's avatar
      WebCore: · c9bc8d37
      darin@apple.com authored
              Reviewed by Sam.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=16770
                Acid3 expects :visited styled links to restyle on iframe load
      
              Disentangle global history updating from the back/forward history.
              There are many cases where we don't want to create a new back/forward
              item, but we do still want to add to the global history (used for visited
              link coloring) in those cases.
      
              Test: fast/history/subframe-is-visited.html
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::updateGlobalHistory): Renamed from
              addHistoryForCurrentLocation and removed the back/forward handling.
              (WebCore::FrameLoader::updateHistoryForStandardLoad): Streamlined logic a
              bit. Replaced call to addHistoryForCurrentLocation with a call to
              addBackForwardItemClippedAtTarget. Added an unconditional call to
              updateGlobalHistory.
              (WebCore::FrameLoader::updateHistoryForClientRedirect): Added a FIXME;
              why doesn't this function update global history?
              (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Ditto.
              (WebCore::FrameLoader::updateHistoryForReload): Replaced the direct call
              the client with a call to the new updateGlobalHistory function.
              (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Did
              the same changes as for updateHistoryForStandardLoad.
              * loader/FrameLoader.h: More of the same.
      
              * loader/FrameLoaderClient.h: Removed updateGlobalHistoryForReload and
              renamed updateGlobalHistoryForStandardLoad to updateGlobalHistory.
      
              * svg/graphics/SVGImageEmptyClients.h:
              (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistory): Updated to
              match the above.
      
      WebKit/gtk:
      
              Reviewed by Sam.
      
              - remove separate client calls for "standard" and "reload' history
      
              * WebCoreSupport/FrameLoaderClientGtk.cpp:
              (WebKit::FrameLoaderClient::updateGlobalHistory):
              * WebCoreSupport/FrameLoaderClientGtk.h:
      
      WebKit/mac:
      
              Reviewed by Sam.
      
              - remove separate client calls for "standard" and "reload' history
      
              * WebCoreSupport/WebFrameLoaderClient.h:
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::updateGlobalHistory):
      
      WebKit/qt:
      
              Reviewed by Sam.
      
              - remove separate client calls for "standard" and "reload' history
      
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::FrameLoaderClientQt::updateGlobalHistory):
              * WebCoreSupport/FrameLoaderClientQt.h:
      
      WebKit/win:
      
              Reviewed by Sam.
      
              - remove separate client calls for "standard" and "reload' history
      
              * WebFrame.cpp:
              (WebFrame::updateGlobalHistory):
              * WebFrame.h:
      
      WebKit/wx:
      
              Reviewed by Sam.
      
              - remove separate client calls for "standard" and "reload' history
      
              * WebKitSupport/FrameLoaderClientWx.cpp:
              (WebCore::FrameLoaderClientWx::updateGlobalHistory):
              * WebKitSupport/FrameLoaderClientWx.h:
      
      LayoutTests:
      
              Reviewed by Sam.
      
              - test for http://bugs.webkit.org/show_bug.cgi?id=16770
                Acid3 expects :visited styled links to restyle on iframe load
      
              * fast/history/resources/subframe.html: Added.
              * fast/history/subframe-is-visited-expected.txt: Added.
              * fast/history/subframe-is-visited.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30549 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9bc8d37
  13. 23 Feb, 2008 4 commits
    • mitz@apple.com's avatar
      WebCore: · cfd9b7b0
      mitz@apple.com authored
              Reviewed by Dave Hyatt.
      
              - make non-autowrapping text clear floats
      
              Test: fast/text/whitespace/nowrap-clear-float.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::nextFloatBottomBelow): Renamed nearestFloat() to
              this and changed to avoid comparing bottom to 0 in each iteration.
              (WebCore::RenderBlock::getClearDelta): Updated comment for the rename.
              * rendering/RenderBlock.h:
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::fitBelowFloats): Added. Factored out of
              findNextLineBreak() and simplified.
              (WebCore::RenderBlock::findNextLineBreak): Changed to call
              fitBelowFloats(). Fixed the bug by trying to fit below floats in the
              case of non-wrapping text. Removed some redundancy.
      
      LayoutTests:
      
              Reviewed by Dave Hyatt.
      
              - test that non-autowrapping text clear floats
      
              * fast/text/whitespace/nowrap-clear-float.html: Added.
              * platform/mac-leopard/fast/text/whitespace: Added.
              * platform/mac-leopard/fast/text/whitespace/nowrap-clear-float-expected.checksum: Added.
              * platform/mac-leopard/fast/text/whitespace/nowrap-clear-float-expected.png: Added.
              * platform/mac/fast/text/whitespace/nowrap-clear-float-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cfd9b7b0
    • mitz@apple.com's avatar
      - undo an accidental change to a test's expected results from r30431. · 75d7f636
      mitz@apple.com authored
              * fast/js/date-DST-time-cusps-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30519 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      75d7f636
    • mitz@apple.com's avatar
      Rubber-stamped by Sam Weinig and Anders Carlsson. · 7803719d
      mitz@apple.com authored
              - updated results for <rdar://problem/5714333> Add document.getSelection()
      
              * fast/dom/Window/window-properties-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30518 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7803719d
    • ap@webkit.org's avatar
      Reviewed by Darin. · 8c7fd040
      ap@webkit.org authored
              A few tweaks to PCRE-based regex test suite.
      
              * fast/regex/pcre-test-runner.js: Added support for global regexes. Emulate PCRE test runner
              more precisely by trimming trailing whitespace from some lines.
      
              * fast/regex/test1-expected.txt:
              * fast/regex/test4-expected.txt:
              * fast/regex/testinput1:
              * fast/regex/testinput4:
              * fast/regex/testoutput1:
              * fast/regex/testoutput4:
              Updated to PCRE 7.6.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30517 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c7fd040
  14. 22 Feb, 2008 3 commits
    • oliver@apple.com's avatar
      Bug 17486: Support HTML5 Canvas.getImageData API · ae996a97
      oliver@apple.com authored
      Support Canvas.getImageData and Canvas.createImageData
      
      Reviewed by Sam W.
      
      This patch adds support for all the pixel reading portions
      of the HTML5 Canvas spec.  There are two new types ImageData
      and CanvasPixelArray which are used to provide the HTML5
      ImageData object, and the required semantics for assignment
      to the ImageData data array.
      
      We only implement the CG version of ImageBuffer::getImageData,
      but the logic is null safe, so this will not introduce any
      crashes into other platforms, unfortunately it will result in
      JS Object detection "lying" on non-CG platforms.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30506 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae996a97
    • ggaren@apple.com's avatar
      JavaScriptCore: · 5ffdb7b1
      ggaren@apple.com authored
              Reviewed by Sam Weinig.
              
              Partial fix for <rdar://problem/5744037> Gmail out of memory (17455)
              
              I'm removing KJS_MEM_LIMIT for the following reasons:
              
              - We have a few reports of KJS_MEM_LIMIT breaking important web
              applications, like GMail and Google Reader. (For example, if you
              simply open 12 GMail tabs, tab #12 will hit the limit.)
      
              - Firefox has no discernable JS object count limit, so any limit, even
              a large one, is a potential compatibility problem.
              
              - KJS_MEM_LIMIT does not protect against malicious memory allocation,
              since there are many ways to maliciously allocate memory without
              increasing the JS object count.
              
              - KJS_MEM_LIMIT is already mostly broken, since it only aborts the
              script that breaches the limit, not any subsequent scripts.
              
              - We've never gotten bug reports about websites that would have
              benefited from an unbroken KJS_MEM_LIMIT. The initial check-in of
              KJS_MEM_LIMIT (KJS revision 80061) doesn't mention a website that
              needed it.
              
              - Any website that brings you anywhere close to crashing due to the
              number of live JS objects will almost certainly put up the "slow
              script" dialog at least 20 times beforehand.
      
              * kjs/collector.cpp:
              (KJS::Collector::collect):
              * kjs/collector.h:
              * kjs/nodes.cpp:
              (KJS::TryNode::execute):
      
      LayoutTests:
      
              Reviewed by Sam Weinig.
              
              Removing the test for KJS_MEM_LIMIT, since I removed KJS_MEM_LIMIT.
      
              * fast/js/out-of-memory-expected.txt: Removed.
              * fast/js/out-of-memory.html: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5ffdb7b1
    • oliver@apple.com's avatar
      <rdar://problem/5759327> REGRESSION: while(NaN) acts like while(true) · 9c3b3ab0
      oliver@apple.com authored
      Reviewed by Alexey P.
      
      Fix yet another case where we incorrectly relied on implicit double
      to bool coercion.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9c3b3ab0
  15. 21 Feb, 2008 4 commits