1. 13 May, 2008 3 commits
    • ap@webkit.org's avatar
      Reviewed by John Sullivan. · c6c08514
      ap@webkit.org authored
              <rdar://problem/4852077> REGRESSION: The content of the HTML file which is saved as Thai
              (ISO 8859-11) disappear.
      
              <rdar://problem/5842597> Thai ISO-8859-11 should be upgraded to Windows-874
      
              Test: fast/encoding/char-decoding.html
      
              * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
              Register ISO-8859-11, which doesn't have a standard IANA name, despite following
              the usual 8859 naming scheme. Also, made TIS-620 map to windows-874-2000 explicitly.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6c08514
    • ap@webkit.org's avatar
      Reviewed by Eric Seidel. · a1b6f102
      ap@webkit.org authored
              https://bugs.webkit.org/show_bug.cgi?id=18681
              <rdar://problem/5888130> WebKit should not remove BOM characters from content.
      
              We were only trying to match Firefox, and it doesn't do this any more.
      
              Tests: fast/encoding/bom-in-content.html
                     fast/encoding/bom-in-content-utf16.html
      
              * platform/text/TextDecoder.cpp: (WebCore::TextDecoder::checkForBOM): Skip the BOM if it's
              at the start of input stream.
      
              * platform/text/TextCodec.cpp:
              * platform/text/TextCodec.h:
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::decode):
              * platform/text/TextCodecUTF16.cpp:
              (WebCore::TextCodecUTF16::decode):
              * platform/text/mac/TextCodecMac.cpp:
              (WebCore::TextCodecMac::decode):
              Don't remove the BOM.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a1b6f102
    • ap@webkit.org's avatar
      Reviewed by Darin. · 6e8259dd
      ap@webkit.org authored
              <rdar://problem/5841351> Turkish ISO 8859-9 encoding should be treated as windows-1254
      
              Match IE and upgrade ISO-8859-9 to windows-1254, which is its strict superset.
      
              Test: fast/encoding/char-decoding.html
      
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::registerExtendedEncodingNames): Register the standard name
              unconditionally. Previously, we registered windows-949-2000 as a special case that lacked 
              an IANA standard name, and got away with not registering GBK because it happened
              to be reported by ICU normally earlier than any encoding upgraded to it.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33377 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e8259dd
  2. 12 May, 2008 1 commit
    • aroben@apple.com's avatar
      Fix a MSVC warning in TextCodecICU · 94a6a3d4
      aroben@apple.com authored
              Reviewed by John Sullivan and Dan Bernstein.
      
              * platform/text/TextCodecICU.cpp:
              (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
              UCNV_SUB_STOP_ON_ILLEGAL is a string literal, so using == with it
              doesn't really do what we want. Use strcmp instead. It's OK to pass an
              unknown value to strcmp here since 1) UCNV_SUB_STOP_ON_ILLEGAL is only
              a single character long so we're not going to ready more than 2 bytes
              from oldContext, and 2) we're inside an ASSERT which will cause a
              crash anyway if it fails.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      94a6a3d4
  3. 26 Mar, 2008 2 commits
    • darin@apple.com's avatar
      2008-03-26 Darin Adler <darin@apple.com> · 15c2cfdb
      darin@apple.com authored
              Rubber stamped by Maciej.
      
              - removed a couple log messages in error cases that are handled internally
      
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::decode): Removed the LOG_ERROR.
              * platform/text/mac/TextCodecMac.cpp:
              (WebCore::TextCodecMac::decode): Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15c2cfdb
    • eric@webkit.org's avatar
      Reviewed by darin. · 4f9b2dd1
      eric@webkit.org authored
              Fix, makes us pass Test 70
              XML documents should be strict about encoding checks
              http://bugs.webkit.org/show_bug.cgi?id=17079
      
              Test: fast/encoding/invalid-xml.html
      
              * WebCore.base.exp:
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::write):
              * loader/CachedFont.cpp:
              (WebCore::CachedFont::ensureSVGFontData):
              * loader/TextResourceDecoder.cpp:
              (WebCore::TextResourceDecoder::TextResourceDecoder):
              (WebCore::TextResourceDecoder::decode):
              * loader/TextResourceDecoder.h:
              * platform/text/TextCodec.h:
              (WebCore::TextCodec::decode):
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::decodeToBuffer):
              (WebCore::ErrorCallbackSetter::ErrorCallbackSetter):
              (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
              (WebCore::TextCodecICU::decode):
              * platform/text/TextCodecICU.h:
              * platform/text/TextCodecLatin1.cpp:
              * platform/text/TextCodecLatin1.h:
              * platform/text/TextCodecUTF16.cpp:
              * platform/text/TextCodecUTF16.h:
              * platform/text/TextCodecUserDefined.cpp:
              * platform/text/TextCodecUserDefined.h:
              * platform/text/TextDecoder.cpp:
              (WebCore::TextDecoder::checkForBOM):
              * platform/text/TextDecoder.h:
              (WebCore::TextDecoder::decode):
              * platform/text/TextEncoding.cpp:
              (WebCore::TextEncoding::decode):
              * platform/text/TextEncoding.h:
              (WebCore::TextEncoding::decode):
              * platform/text/mac/TextCodecMac.cpp:
              (WebCore::TextCodecMac::decode):
              * platform/text/mac/TextCodecMac.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4f9b2dd1
  4. 16 Mar, 2008 1 commit
    • darin@apple.com's avatar
      WebCore: · 81ff5aa6
      darin@apple.com authored
      2008-03-16  Marvin Decker  <marv.decker@gmail.com>
      
              Reviewed by Darin.
      
              Fix bug 15119: URL query characters that are unencodable in the
              request's character set should be converted to XML entities with
              non-alphanumeric characters escaped.
      
              Test: http/tests/uri/escaped-entity.html
      
              * html/FormDataList.cpp:
              (WebCore::FormDataList::appendString):
              * html/HTMLFormElement.cpp:
              (WebCore::HTMLFormElement::formData):
              * platform/KURL.cpp:
              (WebCore::encodeRelativeString):
              * platform/text/String.cpp:
              (WebCore::String::latin1):
              (WebCore::String::utf8):
              * platform/text/TextCodec.cpp:
              (WebCore::TextCodec::unencodableCharReplacement):
              * platform/text/TextCodec.h:
              (WebCore::):
              * platform/text/TextCodecICU.cpp:
              (WebCore::urlEscapedEntityCallback):
              (WebCore::gbkUrlEscapedEntityCallack):
              (WebCore::TextCodecICU::encode):
              * platform/text/TextCodecICU.h:
              (WebCore::TextCodecICU::setNeedsGBKFallbacks):
              * platform/text/TextCodecLatin1.cpp:
              (WebCore::encodeComplexWindowsLatin1):
              (WebCore::TextCodecLatin1::encode):
              * platform/text/TextCodecLatin1.h:
              * platform/text/TextCodecUTF16.cpp:
              (WebCore::TextCodecUTF16::encode):
              * platform/text/TextCodecUTF16.h:
              * platform/text/TextCodecUserDefined.cpp:
              (WebCore::encodeComplexUserDefined):
              (WebCore::TextCodecUserDefined::encode):
              * platform/text/TextCodecUserDefined.h:
              * platform/text/TextEncoding.cpp:
              (WebCore::TextEncoding::encode):
              * platform/text/TextEncoding.h:
              * platform/text/mac/TextCodecMac.cpp:
              (WebCore::TextCodecMac::encode):
              * platform/text/mac/TextCodecMac.h:
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::send):
      
      LayoutTests:
      
      2008-03-16  Marvin Decker  <marv.decker@gmail.com>
      
              Reviewed by Darin.
      
              Fix bug 15119, unencodable characters in URLs should be entity-escaped.
      
              * http/tests/uri/escaped-entity-expected.txt: Added.
              * http/tests/uri/escaped-entity.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31089 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81ff5aa6
  5. 10 Mar, 2008 1 commit
    • eric@webkit.org's avatar
      Reviewed by Darin. · 87d855b8
      eric@webkit.org authored
              Remove KJS::UChar, use ::UChar instead
              http://bugs.webkit.org/show_bug.cgi?id=17017
      
              To functional changes, thus no tests.
      
              * bindings/js/JSCSSStyleDeclarationCustom.cpp:
              (WebCore::hasCSSPropertyNamePrefix):
              (WebCore::cssPropertyName):
              * bindings/js/JSDOMWindowBase.cpp:
              (WebCore::windowProtoFuncAToB):
              (WebCore::windowProtoFuncBToA):
              * bindings/js/JSSVGPODTypeWrapper.h:
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::evaluate):
              * bridge/objc/objc_utility.mm:
              (KJS::Bindings::throwError):
              * dom/Document.cpp:
              (WebCore::Document::parseQualifiedName):
              * platform/text/AtomicString.cpp:
              (WebCore::AtomicString::add):
              * platform/text/String.cpp:
              (WebCore::String::String):
              (WebCore::String::operator Identifier):
              (WebCore::String::operator UString):
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::decode):
              * svg/SVGAnimatedTemplate.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87d855b8
  6. 08 Mar, 2008 1 commit
    • ap@webkit.org's avatar
      Reviewed by Darin. · f7071608
      ap@webkit.org authored
              REGRESSION: Korean decoding doesn't support extended EUC-KR.
      
              Test: fast/encoding/char-decoding.html
      
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::registerExtendedEncodingNames): Untangle the system of duplicate ICU
              encoding names by manually registering windows-939-2000, and mapping all other related
              encodings to it.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@30894 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f7071608
  7. 20 Feb, 2008 1 commit
  8. 27 Jan, 2008 1 commit
  9. 14 Jan, 2008 1 commit
    • darin@apple.com's avatar
      JavaScriptCore: · 83833157
      darin@apple.com authored
              Reviewed by Adam.
      
              - re-speed-up the page load test (my StringImpl change slowed it down)
      
              * wtf/RefCounted.h:
              (WTF::RefCounted::RefCounted): Allow derived classes to start with a reference
              count other than 0. Eventually everyone will want to start with a 1. This is a
              staged change. For now, there's a default of 0, and you can specify 1. Later,
              there will be no default and everyone will have to specify. And then later, there
              will be a default of 1. Eventually, we can take away even the option of starting
              with 0!
      
              * wtf/Vector.h:
              (WTF::Vector::Vector): Sped up creation of non-empty vectors by removing the
              overhead of first constructing something empty and then calling resize.
              (WTF::Vector::clear): Sped up the common case of calling clear on an empty
              vector by adding a check for that case.
              (WTF::Vector::releaseBuffer): Marked this function inline and removed a branch
              in the case of vectors with no inline capacity (normal vectors) by leaving out
              the code to copy the inline buffer in that case.
      
      WebCore:
      
              Reviewed by Adam.
      
              - re-speed-up the page load test (my StringImpl change slowed it down)
                <rdar://problem/5677241> 1.5% PLT regression from r29098
      
              To reverse the slowdown I caused by changing StringImpl, I tightened it up,
              and also did a little optimization in the HTML tokenizer and in other clients
              of Vector.
      
              * WebCore.base.exp: Removed export of a now-inline function.
      
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseTransitionProperty): Removed use of DeprecatedString
              to get property ID. This could be sped up even more by writing a fast path
              to use a local Vector<char> rather than allocating a string.
              (WebCore::convertASCIIToFloat): Added. Allows numeric conversion without
              allocating a string object to hold the number.
              (WebCore::CSSParser::lex): Changed to call convertASCIIToFloat instead of
              DeprecatedString::toFloat.
      
              * dom/Element.h:
              (WebCore::Element::hasTagName): Made this non-virtual and inline if you have
              an Element*. It's still virtual if you have a Node*.
              (WebCore::Element::virtualHasTagName): Virtual version that makes the Node*
              case work.
      
              * dom/Node.h:
              (WebCore::Node::hasTagName): Made this non-virtual and inline so that Element
              can override it with an inline. This is the same technique we use for
              firstChild and lastChild.
              (WebCore::Node::virtualHasTagName): This is the private virtual that Element
              overrides.
      
              * dom/Text.cpp:
              (WebCore::Text::splitText): Clean up by using a RefPtr here instead of a
              PassRefPtr.
      
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::parseSpecial): Use the new advancePastNonNewline(),
              which is more efficient in cases where we know the character is not a newline
              and hence we don't have to update the line number.
              (WebCore::HTMLTokenizer::parseComment): Ditto.
              (WebCore::HTMLTokenizer::parseServer): Ditto.
              (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
              (WebCore::HTMLTokenizer::parseText): Ditto.
              (WebCore::HTMLTokenizer::parseEntity): Ditto.
              (WebCore::HTMLTokenizer::parseTag): Ditto. Also streamline the QuotedValue case
              so there's one less branch taken for non-punctuation characters since this
              code path is *so* hot.
              (WebCore::HTMLTokenizer::write): More of the same.
      
              * loader/Cache.cpp:
              (WebCore::Cache::lruListFor): Use Vector::grow instead of resize.
      
              * loader/DocumentLoader.cpp:
              (WebCore::canonicalizedTitle): Use StringBuffer instead of Vector<UChar>.
      
              * loader/TextResourceDecoder.cpp:
              (WebCore::TextResourceDecoder::checkForCSSCharset): Use Vector::grow instead of resize.
              (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
              (WebCore::TextResourceDecoder::decode): Use Vector::grow and shrink instead of resize.
              (WebCore::TextResourceDecoder::flush): Use Vector::shrink instead of resize.
      
              * platform/KURL.cpp:
              (WebCore::KURL::decode_string): Use Vector::grow instead of resize.
      
              * platform/SharedBuffer.cpp:
              (WebCore::SharedBuffer::clear): Use Vector::shrink instead of resize.
      
              * platform/graphics/BitmapImage.cpp:
              (WebCore::BitmapImage::cacheFrame): Use Vector::grow instead of resize.
      
              * platform/network/FormData.cpp:
              (WebCore::FormData::appendData): Use Vector::grow instead of resize.
              (WebCore::FormData::flatten): Ditto.
      
              * platform/text/AtomicString.cpp:
              (WebCore::CStringTranslator::translate): Use a new StringImpl constructor made just
              for use by AtomicString. Avoids setting fields twice, and also preserves reference
              count behavior (which I changed for the other constructors, since they're entirely
              private and used only inside the class).
              (WebCore::UCharBufferTranslator::translate): Ditto.
      
              * platform/text/Base64.cpp:
              (WebCore::base64Encode): Use Vector::grow instead of resize.
              (WebCore::base64Decode): Use Vector::grow and shrink instead of resize.
      
              * platform/text/PlatformString.h:
              (WebCore::String::adopt): Added an overload for the new StringBuffer class. Also
              made both versions inline.
      
              * platform/text/SegmentedString.h:
              (WebCore::SegmentedString::advancePastNewline): Added. One less branch for case
              where the character is known to be a newline.
              (WebCore::SegmentedString::advancePastNonNewline): Added. Less code for case where
              the character is known not to be a newline.
      
              * platform/text/String.cpp:
              (WebCore::String::append): Use StringBuffer instead of Vector<UChar>.
              (WebCore::String::insert): Ditto.
              (WebCore::String::truncate): Ditto.
              (WebCore::String::remove): Ditto.
              (WebCore::String::format): Use Vector::grow instead of resize.
      
              * platform/text/StringImpl.cpp:
              (WebCore::StringImpl::StringImpl): Changed constructors to start with a refCount
              of 1 instead of 0, and made them all inline. Eliminates the WithOneRef constructor
              since they all behave this way now. The only exceptions are the constructors for
              AtomicString, which retain the old behavior.
              (WebCore::StringImpl::empty): Simplified, since we no longer need to use the
              special WithOneRef constructor.
              (WebCore::StringImpl::toCoordsArray): Use StringBuffer instead of Vector<UChar>.
              (WebCore::StringImpl::lower): Ditto.
              (WebCore::StringImpl::upper): Ditto.
              (WebCore::StringImpl::secure): Ditto.
              (WebCore::StringImpl::foldCase): Ditto.
              (WebCore::StringImpl::simplifyWhiteSpace): Ditto. Also change to use Vector::shrink
              instead of resize (since half of the function uses Vector<UChar>).
              (WebCore::StringImpl::capitalize): Use StringBuffer instead of Vector<UChar>.
              (WebCore::StringImpl::replace): Ditto.
              (WebCore::StringImpl::ascii): Streamlined a bit.
              (WebCore::StringImpl::createStrippingNullCharacters): Use StringBuffer insetad of
              Vector<UChar>. Took out checks for null characters and 0 length that aren't needed.
              Coded the check for null characters in a slightly more efficient way. Since this
              is so hot, didn't call adopt at all, putting the code right in here, including
              the call to the StringImpl constructor and adoptRef (for the fast case).
              (WebCore::StringImpl::adopt): Added a version for the new StringBuffer class.
              Removed the attempt to resize the buffer at the time we adopt based on measuring
              actual use and realizing that it's just a character here or there and not worth
              a call to fastRealloc. Changed to use adoptRef since the constructor now starts
              with a refCount of 1.
              (WebCore::StringImpl::create): Changed to use adoptRef since the constructor now
              starts with a refCount of 1.
              (WebCore::StringImpl::createWithTerminatingNullCharacter): Ditto.
              (WebCore::StringImpl::copy): Ditto. Also made non-inline since the constructor
              itself is now inline.
      
              * platform/text/StringImpl.h: Added a StringBuffer class that's useful for
              putting characters into a buffer before creating an immutable string. Not good
              at resizing the way Vector<UChar> is, so only useful for things that rarely need
              to be resized. Added a new AdoptBuffer constructor and empty constructor, but
              made all constructors private so they can be inlined and only used inside the
              StringImpl class. Added two new constructors for AtomicString. Made copy()
              no longer inline. Changed the type of the [] operator to unsigned instead of
              int and added an assertion. Made the hash functions inline.
      
              * platform/text/TextCodecICU.cpp:
              (WebCore::TextCodecICU::encode): Use Vector::grow instead of resize.
      
              * platform/text/TextCodecLatin1.cpp:
              (WebCore::TextCodecLatin1::decode): Use StringBuffer instead of Vector<UChar>.
              (WebCore::encodeComplexWindowsLatin1): Use Vector::grow instead of resize.
      
              * platform/text/TextCodecUTF16.cpp:
              (WebCore::TextCodecUTF16::decode): Use StringBuffer instead of Vector<UChar>.
      
              * platform/text/TextCodecUserDefined.cpp:
              (WebCore::TextCodecUserDefined::decode): Use StringBuffer instead of Vector<UChar>.
              (WebCore::encodeComplexUserDefined): Use Vector::grow instead of resize.
      
              * platform/text/TextEncoding.cpp:
              (WebCore::TextEncoding::encode): Use Vector::grow instead of resize.
      
              * platform/text/TextStream.cpp:
              (WebCore::TextStream::operator<<): Use Vector::grow instead of resize.
      
              * platform/text/mac/TextCodecMac.cpp:
              (WebCore::TextCodecMac::encode): Use Vector::grow instead of resize.
      
              * rendering/AutoTableLayout.cpp:
              (WebCore::AutoTableLayout::insertSpanCell): Use Vector::grow instead of resize.
      
              * rendering/RenderFrameSet.h:
              (WebCore::FrameEdgeInfo::FrameEdgeInfo): Allocate vectors with the correct initial
              size instead of calling resize on them after allocating empty.
      
              * rendering/RenderListMarker.cpp:
              (WebCore::RenderListMarker::paint): Use Vector::grow instead of resize.
      
              * rendering/RenderStyle.cpp: Removed CursorList::operator==.
              * rendering/RenderStyle.h:
              (WebCore::CursorList::operator==): Implemented using the Vector ==.
              (WebCore::CursorList::operator!=): Ditto.
      
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::splitColumn): Use Vector::grow instead of resize.
              (WebCore::RenderTable::appendColumn): Ditto.
      
              * rendering/RenderTableSection.cpp:
              (WebCore::RenderTableSection::ensureRows): Use Vector::grow instead of resize.
      
              * rendering/bidi.cpp:
              (WebCore::addMidpoint): Use Vector::grow instead of resize.
      
              * xml/XPathNodeSet.h:
              (WebCore::XPath::NodeSet::clear): Use Vector::shrink instead of resize.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29470 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83833157
  10. 30 Nov, 2007 1 commit
  11. 29 Oct, 2007 1 commit
    • mjs's avatar
      JavaScriptCore: · 762ea48f
      mjs authored
              Reviewed by Mark.
              
              - re-enable asserts for access to empty or deleted keys
      
              * wtf/HashTable.h:
              (WTF::::lookup):
              (WTF::::lookupForWriting):
              (WTF::::fullLookupForWriting):
              (WTF::::add):
      
      WebCore:
      
              Reviewed by Mark.
      
              - fixed assertion failures detected by the new assertions
      
              * bindings/objc/DOMRGBColor.mm:
              (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc]
              because it's not a pointer and shouldn't be in the normal wrapper cache.
              * dom/Document.cpp:
              (WebCore::Document::addImageMap): Don't access hashmap if name is null.
              (WebCore::Document::removeImageMap): ditto
              * dom/StyledElement.cpp:
              (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class
              when the class attribute is empty.
              * platform/TextCodecICU.cpp:
              (WebCore::gbkCallbackEscape): Don't look up 0 code points.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      762ea48f
  12. 11 May, 2007 1 commit
    • oliver's avatar
      2007-05-11 Oliver Hunt <oliver@apple.com> · 64b30870
      oliver authored
      LayoutTests:
      
              Reviewed by Hyatt.
              
              Layout test for x-mac-roman character encoding.
      
              * fast/encoding/xmacroman-encoding-test-expected.txt: Added.
              * fast/encoding/xmacroman-encoding-test.html: Added.
      
      WebCore:
      
              Reviewed by Hyatt.
              
              <rdar://problem/5195473> REGRESSION: "Curly quote" fails to 
              be displayed correctly even when META tag specifies charset=x-mac-roman
      
      
              * platform/TextCodecICU.cpp:
              (WebCore::TextCodecICU::registerExtendedEncodingNames):
              Register the xmacroman encoding
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      64b30870
  13. 03 May, 2007 1 commit
    • darin's avatar
      Reviewed by Anders. · ce35c744
      darin authored
              - make ICU initialization lazy to speed up application start-up time
                (when it includes an initial webpage load)
      
              * platform/TextCodecICU.h: Replaced registerEncodingNames and
              registerCodecs with registerBaseEncodingNames, registerBaseCodecs,
              registerExtendedEncodingNames, and registerExtendedCodecs.
              * platform/TextCodecICU.cpp:
              (WebCore::newTextCodecICU): Moved up to the top of the file.
              (WebCore::TextCodecICU::registerBaseEncodingNames): Added. Registers
              just UTF-8.
              (WebCore::TextCodecICU::registerBaseCodecs): Ditto.
              (WebCore::TextCodecICU::registerExtendedEncodingNames): Renamed.
              (WebCore::TextCodecICU::registerExtendedCodecs): Ditto.
              (WebCore::TextCodecICU::createICUConverter): Compare with the name
              "GBK" in a way that does not require extending the maps.
      
              * platform/TextEncoding.cpp:
              (WebCore::TextEncoding::usesVisualOrdering): Added code so this will
              just return false if we haven't used any extended encoding names yet.
              The result will be correct, and we won't ask for an encoding name that
              will require registering the extended encoding names.
              (WebCore::TextEncoding::isJapanese): Ditto.
              (WebCore::TextEncoding::backslashAsCurrencySymbol): Ditto, but return
              a backslash instead of false.
      
              * platform/TextEncodingRegistry.h: Added a new function named
               noExtendedTextEncodingNameUsed.
              * platform/TextEncodingRegistry.cpp:
              (WebCore::buildBaseTextCodecMaps): Added. Registers the base encodings,
              including Latin-1 because it's the default, and the UTF encodings.
              (WebCore::extendTextCodecMaps): Added. Registers all the other encodings.
              (WebCore::newTextCodec): Removed the all to buildTextCodecMap because
              we always build the map when making the canonical encoding name.
              (WebCore::atomicCanonicalTextEncodingName): Changed code to build only
              the base maps at first, then extend the maps the first time we run into
              a name we don't know.
              (WebCore::noExtendedTextEncodingNameUsed): Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce35c744
  14. 08 Mar, 2007 1 commit
    • oliver's avatar
      2007-03-08 Oliver Hunt <oliver@apple.com> · 9a648fe1
      oliver authored
              Reviewed by Adam.
      WebCore:
              To match old TEC behaviour when using ICU we need to use 
              a few manual fallback encodings for the GBK/EUC-CN charsets
      
              <rdar://problem/4708689> -- REGRESSION: Some symbols with 2-byte display as garbage in Hotmail.
      
              * platform/TextCodecICU.cpp:
              (WebCore::TextCodecICU::TextCodecICU):
              (WebCore::TextCodecICU::createICUConverter):
              (WebCore::gbkEscapes):
              (WebCore::gbkCallbackEscape):
              (WebCore::gbkCallbackSubstitute):
              (WebCore::TextCodecICU::encode):
              * platform/TextCodecICU.h:
              (WebCore::TextCodecICU::needsGBKFallbacks):
              (WebCore::TextCodecICU::setNeedsGBKFallbacks):
              
      LayoutTests:
              Adding GBK character encoding tests
      
              * fast/encoding/char-encoding-expected.txt:
              * fast/encoding/char-encoding.html:
              
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20059 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9a648fe1
  15. 27 Feb, 2007 1 commit
    • darin's avatar
      Reviewed by Alexey. · 56f93783
      darin authored
              - fix http://bugs.webkit.org/show_bug.cgi?id=12909
                should use ICU, not TEC, for MacRoman decoding
      
              * platform/TextCodecICU.cpp: (WebCore::TextCodecICU::registerEncodingNames):
              Add "macroman" as an alias for "macintosh". We have seen that in use in mail,
              although I'm not sure it's used on the web.
      
              * platform/mac/mac-encodings.txt: Remove MacRoman line, which was added back
              as part of the patch for bug 4971226. But by adding it to the this file rather
              than the ICU codec, we get it only on Mac OS X. And long term we are trying to
              get rid of the use of TEC entirely, so we want this file to be as empty as
              possible.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19883 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56f93783
  16. 26 Feb, 2007 1 commit
  17. 29 Oct, 2006 1 commit
    • darin's avatar
      WebCore: · 5b2cbe11
      darin authored
              - did the do-webcore-rename renames, including a number of changes
                to the names of loader files (and WebResourceLoader -> ResourceLoader),
                jScript() to scriptProxy(), jScriptEnabled() to javaScriptEnabled(),
                and improvements to the names of decoder classes and their source
                files (Decoder -> TextResourceDecoder, StreamingTextDecoder -> TextCodec)
      
      WebKit:
      
              - update for the WebCore renames
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b2cbe11
  18. 05 Oct, 2006 1 commit
    • ap's avatar
      Reviewed by Darin. · e712841d
      ap authored
              http://bugs.webkit.org/show_bug.cgi?id=11054
              REGRESSION: Traditional Chinese encoding in login authentication
      
              1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
              2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
              for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
      
      WebCore:
              * platform/StreamingTextDecoderICU.cpp:
              (WebCore::TextCodecICU::registerEncodingNames):
      
      LayoutTests:
              Each of these tests is passed by Firefox 1.5 and/or WinIE 6.
      
              * fast/encoding/GBK/EUC-CN-expected.txt: Added.
              * fast/encoding/GBK/EUC-CN.html: Added.
              * fast/encoding/GBK/chinese-expected.txt: Added.
              * fast/encoding/GBK/chinese.html: Added.
              * fast/encoding/GBK/cn-gb-expected.txt: Added.
              * fast/encoding/GBK/cn-gb.html: Added.
              * fast/encoding/GBK/csgb2312-expected.txt: Added.
              * fast/encoding/GBK/csgb2312.html: Added.
              * fast/encoding/GBK/csgb231280-expected.txt: Added.
              * fast/encoding/GBK/csgb231280.html: Added.
              * fast/encoding/GBK/gb2312-expected.txt: Added.
              * fast/encoding/GBK/gb2312.html: Added.
              * fast/encoding/GBK/gb_2312-80-expected.txt: Added.
              * fast/encoding/GBK/gb_2312-80.html: Added.
              * fast/encoding/GBK/gbk-expected.txt: Added.
              * fast/encoding/GBK/gbk.html: Added.
              * fast/encoding/GBK/iso-ir-58-expected.txt: Added.
              * fast/encoding/GBK/iso-ir-58.html: Added.
              * fast/encoding/GBK/x-euc-cn-expected.txt: Added.
              * fast/encoding/GBK/x-euc-cn.html: Added.
              * fast/encoding/GBK/x-gbk-expected.txt: Added.
              * fast/encoding/GBK/x-gbk.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16807 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e712841d
  19. 28 Sep, 2006 1 commit
    • darin's avatar
      JavaScriptCore: · 6138a1eb
      darin authored
              Reviewed by Alice.
      
              - support for change that should fix <rdar://problem/4733044>
                REGRESSION: XML iBench shows 10% perf. regression (copying
                strings while decoding)
      
              * wtf/Vector.h: Changed VectorBuffer so that the general case
              contains an instance of the 0 case, since deriving from it
              was violating the Liskov Substitution Principle.
              (WTF::VectorBuffer::releaseBuffer): Added. Releases the buffer so it can
              be adopted by another data structure that uses the FastMalloc.h allocator.
              Returns 0 if the internal buffer was being used.
              (WTF::Vector::releaseBuffer): Added. Releases the buffer as above or creates
              a new one in the case where the internal buffer was being used.
      
      WebCore:
      
              Reviewed by Alice.
      
              - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
                10% perf. regression (copying strings while decoding)
      
              Use Vector<UChar> instead of String when building up the decoded string in
              the ICU and Mac decoders. Using String leads to O(n^2) behavior because
              String grows the buffer every single time that append is called. Using
              Vector::append instead of String::append also avoids constructing a string
              each time just to append and a questionable copy that is done inside the
              String::append function which also contributed to the slowness.
      
              * platform/PlatformString.h:
              * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
              Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
              allocation.
              * platform/StringImpl.h:
              * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
      
              * platform/StreamingTextDecoder.h:
              * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
              Change to use a Vector<UChar> instead of a String, since vectors have better
              resizing performance (they store a separate capacity).
      
              * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
              * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
              Change to use Vector<UChar> instead of String and then create a string at
              the end of the process using the new adopt function.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6138a1eb
  20. 05 Sep, 2006 1 commit
    • darin's avatar
      LayoutTests: · b3547a37
      darin authored
              Reviewed by Alexey.
      
              - test for bug where the charset in a link element for a CSS stylesheet is ignored.
                I noticed this while working on new text encoding machinery.
      
              * fast/encoding/css-link-charset-expected.txt: Added.
              * fast/encoding/css-link-charset.css: Added.
              * fast/encoding/css-link-charset.html: Added.
      
              - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=10681
                REGRESSION: Reproducible crash at Wikipedia
                (Alexey wrote this one, I reviewed.)
      
              * fast/forms/form-data-encoding-normalization-overrun-expected.txt: Added.
              * fast/forms/form-data-encoding-normalization-overrun.html: Added.
      
              - and a tweak to an existing test
      
              * fast/forms/form-data-encoding.html: Changed to dump encoded URL so it's easier to
              diagnose this when it fails.
      
      WebCore:
      
              Reviewed by Alexey.
      
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=10728
                text encodings should work without a numeric ID
      
              - includes a fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10681
                REGRESSION: Reproducible crash at Wikipedia
      
              - fixed a bug where link elements would not set the charset properly for
                CSS stylesheets they loaded
      
              - converted DeprecatedString code paths that are related to decoding web
                pages to use String instead, to ensure that conversion back and forth won't
                hurt performance
      
              Test: fast/encoding/css-link-charset.html
              Test: fast/forms/form-data-encoding-normalization-overrun.html
      
              Coverage for encoding issues is pretty good, so we probably don't need more
              tests to land this. Our existing tests did find issues with this patch while
              it was under development. And I suppose it would be nice to have even more tests.
      
              * platform/TextEncoding.h:
              * platform/TextEncoding.cpp:
              (WebCore::addEncodingName): Added. Used to build up the set used by isJapanese.
              (WebCore::TextEncoding::TextEncoding): Removed boolean "eight bit only" parameter and
              added an overload for String as well as const char*. Simplified because now the only
              data member is m_name -- calls the registry's atomicCanonicalTextEncodingName function
              to make the name canonical (resolve aliases) and atomic (use a single pointer for each
              encoding name so we can compare and hash efficiently).
              (WebCore::TextEncoding::decode): Renamed from toUnicode. Just a simple wrapper on top
              of TextDecoder that can be used when the data to decode is all present at once.
              (WebCore::TextEncoding::encode): Renamed from fromUnicode. Handles the normalization and
              then uses the registry to get a codec to handle the rest.
              (WebCore::TextEncoding::usesVisualOrdering): New implementation that compares with the
              name of the only encoding that uses visual ordering. We blur the concepts a bit so that
              we treat the visual ordering and logical ordering variations as two separate encodings.
              (WebCore::TextEncoding::isJapanese): New implementation that uses a set to efficiently
              determine if an encoding is Japanese.
              (WebCore::TextEncoding::backslashAsCurrencySymbol): New implementation that compares
              with the names of the two encodings that have the strange backslash.
              (WebCore::TextEncoding::closest8BitEquivalent): Added. Replaces the old "eight bit only"
              boolean parameter to the constructor.
              (WebCore::ASCIIEncoding): Added.
              (WebCore::Latin1Encoding): Added.
              (WebCore::UTF16BigEndianEncoding): Added.
              (WebCore::UTF16LittleEndianEncoding): Added.
              (WebCore::UTF8Encoding): Added.
              (WebCore::WindowsLatin1Encoding): Added.
      
              * platform/TextEncodingRegistry.h: Added.
              * platform/TextEncodingRegistry.cpp: Added. Keeps a table of all the character set
              aliases and names and another of all the codecs and parameters for each name.
      
              * platform/TextDecoder.h: Added.
              * platform/TextDecoder.cpp: Added. Contains logic to look for a BOM and hand the data
              to the proper codec, based on code that used to be in both the ICU and Mac codecs.
      
              * platform/StreamingTextDecoder.h: Renamed class to TextCodec. We'll rename
              the files in a later check-in. Moved creation functions into TextEncodingRegistry.h.
              Added typedefs of the registrar function types so classes derived from this one
              can use them without including the TextEncodingRegistry header. Renamed toUnicode
              and fromUnicode to decode and encode. Changed the parameter and return types so that
              the parameters are pointers to the data and the return types are String and CString.
              * platform/StreamingTextDecoder.cpp:
              (WebCore::TextCodec::appendOmittingBOM): Added. Helper function used by multiple
              classes derived from this one.
      
              * platform/TextCodecLatin1.h: Added.
              * platform/TextCodecLatin1.cpp: Added. Contains logic to handle encoding and decoding
              Windows Latin-1, based on code that used to be in both the ICU and Mac codecs.
      
              * platform/TextCodecUTF16.h: Added.
              * platform/TextCodecUTF16.cpp: Added. Contains logic to handle encoding and decoding
              UTF-16, based on code that used to be in both the ICU and Mac codecs.
      
              * platform/StreamingTextDecoderICU.h: Renamed class to TextCodecICU. We'll rename
              the files in a later check-in. Removed all the functions having to do with handling
              BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
              because that's superseded by the registry. Added registry hook functions.
              * platform/StreamingTextDecoderICU.cpp:
              (WebCore::TextCodecICU::registerEncodingNames): Added. Registers all encodings that
              ICU can handle with the "IANA" standard. Also includes a special case for a particular
              type of encoding for Hebrew that uses logical ordering. Also includes aliases that are
              not in ICU but that were historically known to WebKit for encodings that ICU handles. 
              (WebCore::newTextCodecICU): Added. Used by registerCodecs.
              (WebCore::TextCodecICU::registerCodecs): Added. Registers codecs for the same encodings
              as above.
              (WebCore::TextCodecICU::TextCodecICU): Much simplified since this now only handles the
              actual ICU encoding and decoding.
              (WebCore::TextCodecICU::~TextCodecICU): Renamed.
              (WebCore::TextCodecICU::releaseICUConverter): Changed to be a const member function.
              (WebCore::TextCodecICU::createICUConverter): Changed to be a const member function and
              to check if the cached converter can be reused in a simpler way.
              (WebCore::TextCodecICU::decode): Updated for changes to types.
              (WebCore::TextCodecICU::encode): Updated for changes to types, and removed normalization
              since this is now handled by the caller.
      
              * platform/mac/StreamingTextDecoderMac.h: Renamed class to TextCodecMac. We'll rename
              the files in a later check-in. Removed all the functions having to do with handling
              BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
              because that's superseded by the registry. Added registry hook functions.
              * platform/mac/StreamingTextDecoderMac.cpp:
              (WebCore::TextCodecMac::registerEncodingNames): Added. Registers encodings based on
              the charset table generated by the make-charset-table.pl perl script.
              (WebCore::newTextCodecMac): Added. Used by registerCodecs.
              (WebCore::TextCodecMac::registerCodecs): Added. Registers codecs for the same encodings
              as above.
              (WebCore::TextCodecMac::TextCodecMac): Much simplified since this now only handles the
              actual TEC/CF encoding and decoding.
              (WebCore::TextCodecMac::~TextCodecMac): Renamed.
              (WebCore::TextCodecMac::releaseTECConverter): Changed to be a const member function.
              (WebCore::TextCodecMac::createTECConverter): Changed to be a const member function.
              (WebCore::TextCodecMac::decode): Updated for changes to types.
              (WebCore::TextCodecMac::encode): Updated for changes to types, and removed normalization
              since this is now handled by the caller.
      
              * platform/mac/mac-encodings.txt: Removed most of the names in this file. This now
              only includes encodings where we want to use Mac OS X Carbon Text Encoding Converter,
              which is only encodings that are not supported by ICU.
              * platform/make-charset-table.pl: Removed flags from output. We don't use them any more.
              * platform/CharsetData.h: Changed from a platform-independent header into a
              Macintosh-specific one. A later patch should move this and rename it. Also
              subsumes ExtraCFEncodings.h.
      
              * WebCore.xcodeproj/project.pbxproj: Added new files. Changed the prefix on the
              "make character sets" rule to be kTextEncoding instead of kCFStringEncoding.
      
              * loader/Decoder.h: Change the default encoding parameter to the constructor to be
              a TextEncoding object. Renamed setEncodingName to setEncoding, and made it take a
              TextEncoding for the encoding. Removed the encodingName and visuallyOrdered functions,
              since TextEncoding supports both directly in a straightforward way. Changed both
              decode and flush functions to return String instead of DeprecatedString. Added a
              number of private functions to factor this class a bit more so it's easier to read.
              Got rid of a number of redundant data members. Changed the buffer to a Vector<char>.
              * loader/Decoder.cpp:
              (WebCore::Decoder::determineContentType): Added. Used by constructor to determine
              the content type based on the passed-in MIME type.
              (WebCore::Decoder::defaultEncoding): Added. Used by constructor to determine the
              default encoding based on the passed in default and the content type.
              (WebCore::Decoder::Decoder): Changed to use the functions above. Also renamed
              m_reachedBody to m_checkedForHeadCharset.
              (WebCore::Decoder::setEncoding): Renamed and changed to take an encoding rather
              than an encoding name.
              (WebCore::Decoder::checkForBOM): Factored out of decode.
              (WebCore::Decoder::checkForCSSCharset): Factored out of decode.
              (WebCore::Decoder::checkForHeadCharset): Factored out of decode.
              (WebCore::Decoder::detectJapaneseEncoding): Factored out of decode.
              (WebCore::Decoder::decode): Refactored so it's no longer one huge function.
              Changed to use the new Vector<char> and the new API for TextDecoder.
              (WebCore::Decoder::flush): Added code to empty out the buffer. Not an issue in
              practice since we don't re-use the decoder after flushing it.
      
              * platform/UChar.h: Added. Has the type named WebCore::UChar that we'll be switching
              to. We'll switch away from the ICU ::UChar type, because we don't want to be so
              closely tied to ICU -- include this instead of <unicode/umachine.h>.
      
              * platform/PlatformString.h:
              * platform/String.cpp:
              (WebCore::String::latin1): Updated for changes to TextEncoding.
              (WebCore::String::utf8): Ditto.
              (WebCore::String::newUninitialized): Added. Gives a way to create a String and
              then write directly into its buffer.
      
              * platform/StringImpl.h: Changed return value for charactersWithNullTermination to
              be a const UChar*. While it's true that this function changes the underlying
              StringImpl, the characters still shouldn't be modified with the returned pointer.
              * platform/StringImpl.cpp:
              (WebCore::StringImpl::charactersWithNullTermination): Updated for change above.
              (WebCore::StringImpl::newUninitialized): Added. Gives a way to create a StringImpl
              and then write directly into its buffer.
      
              * platform/CString.h:
              * platform/CString.cpp: (WebCore::CString::newUninitialized): Added. Gives a way
              to create a CString and then write directly into its buffer.
      
              * bridge/mac/WebCoreFrameBridge.h: Removed textEncoding method, and replaced
              +[WebCoreFrameBridge stringWithData:textEncoding:] with
              -[WebCoreFrameBridge stringWithData:] to avoid having to pass text encoding
              IDs around.
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge setEncoding:userChosen:]): Removed now-unneeded conversion
              to DeprecatedString.
              (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
              Ditto.
              (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): Ditto.
              (-[WebCoreFrameBridge referrer]): Removed now-unneeded call to getNSString.
              (-[WebCoreFrameBridge stringWithData:]): Added. Asks the document's decoder
              what its encoding is, and decodes using that.
              (+[WebCoreFrameBridge stringWithData:textEncodingName:]): Simplified so it
              no longer involved a text encoding ID number.
              (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
              Changed to use UChar instead of DeprecatedChar.
              (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): Removed
              now-unneeded conversion to DeprecatedString.
              (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Ditto.
      
              * html/HTMLFormElement.cpp:
              (WebCore::encodeCString): Changed parameter to CString.
              (WebCore::HTMLFormElement::formData): Updated code for improvements to TextEncoding.
      
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedCSSStyleSheet.cpp:
              (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Fixed mistake where the
              decoder was created without passing in the character set. Also changed from
              DeprecatedString to String.
              (WebCore::CachedCSSStyleSheet::setCharset): More of the same.
      
              * bindings/js/kjs_window.h: (KJS::ScheduledAction::ScheduledAction): Changed
              to use String instead of DeprecatedString, UChar instead of DeprecatedChar,
              CString instead of DeprecatedCString, etc.
              * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
              * bridge/mac/FrameMac.h: Ditto.
              * bridge/mac/FrameMac.mm: (WebCore::FrameMac::isCharacterSmartReplaceExempt):
              Ditto.
              * bridge/mac/WebCoreAXObject.mm:
              (-[WebCoreAXObject helpText]): Ditto.
              (-[WebCoreAXObject value]): Ditto.
              (-[WebCoreAXObject accessibilityDescription]): Ditto.
              (-[WebCoreAXObject doAXStringForTextMarkerRange:]): Ditto.
              * bridge/mac/WebCoreEncodings.mm: (+[WebCoreEncodings decodeData:]): Ditto.
              Also fixed code that does a deref without a ref to use RefPtr instead.
              * bridge/mac/WebCoreScriptDebugger.mm:
              (-[WebCoreScriptCallFrame evaluateWebScript:]): Ditto.
              * bridge/mac/WebCoreSettings.mm:
              (-[WebCoreSettings setDefaultTextEncoding:]): Ditto.
              * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): Ditto.
              * css/cssparser.cpp: (WebCore::CSSParser::lex): Ditto.
              * dom/Document.h:
              * dom/Document.cpp:
              (WebCore::Document::setCharset): Ditto.
              (WebCore::Document::write): Ditto.
              (WebCore::Document::determineParseMode): Ditto.
              * dom/ProcessingInstruction.cpp:
              (WebCore::ProcessingInstruction::checkStyleSheet): Ditto.
              * dom/XMLTokenizer.h:
              * dom/XMLTokenizer.cpp:
              (WebCore::shouldAllowExternalLoad): Ditto.
              (WebCore::createStringParser): Ditto.
              (WebCore::XMLTokenizer::write): Ditto.
              (WebCore::toString): Ditto.
              (WebCore::handleElementAttributes): Ditto.
              (WebCore::XMLTokenizer::startElementNs): Ditto.
              (WebCore::XMLTokenizer::endElementNs): Ditto.
              (WebCore::XMLTokenizer::characters): Ditto.
              (WebCore::XMLTokenizer::processingInstruction): Ditto.
              (WebCore::XMLTokenizer::cdataBlock): Ditto.
              (WebCore::XMLTokenizer::comment): Ditto.
              (WebCore::XMLTokenizer::internalSubset): Ditto.
              (WebCore::getXHTMLEntity): Ditto.
              (WebCore::externalSubsetHandler): Ditto.
              (WebCore::XMLTokenizer::initializeParserContext): Ditto.
              (WebCore::XMLTokenizer::notifyFinished): Ditto.
              (WebCore::xmlDocPtrForString): Ditto.
              (WebCore::parseXMLDocumentFragment): Ditto.
              (WebCore::attributesStartElementNsHandler): Ditto.
              (WebCore::parseAttributes): Ditto.
              * html/FormDataList.h:
              * html/FormDataList.cpp:
              (WebCore::FormDataList::appendString): Ditto. Also changed to call the
              encoding function by its new name and with new parameters.
              (WebCore::FormDataList::appendFile): Ditto.
              * html/HTMLDocument.h:
              * html/HTMLDocument.cpp:
              (WebCore::parseDocTypePart): Ditto.
              (WebCore::containsString): Ditto.
              (WebCore::parseDocTypeDeclaration): Ditto.
              (WebCore::HTMLDocument::determineParseMode): Ditto.
              * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Ditto.
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::parseMappedAttribute): Ditto.
              * html/HTMLTokenizer.h:
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::scriptHandler): Ditto.
              (WebCore::HTMLTokenizer::parseTag): Ditto.
              (WebCore::HTMLTokenizer::write): Ditto.
              (WebCore::HTMLTokenizer::finish): Ditto.
              (WebCore::parseHTMLDocumentFragment): Ditto.
              * loader/Cache.h:
              * loader/Cache.cpp:
              (WebCore::Cache::requestStyleSheet): Ditto.
              (WebCore::Cache::requestScript): Ditto.
              * loader/CachedResource.h: Ditto.
              * loader/CachedScript.h:
              * loader/CachedScript.cpp:
              (WebCore::CachedScript::CachedScript): Ditto.
              (WebCore::CachedScript::ref): Ditto.
              (WebCore::CachedScript::deref): Ditto.
              (WebCore::CachedScript::setCharset): Ditto.
              (WebCore::CachedScript::data): Ditto.
              (WebCore::CachedScript::checkNotify): Ditto.
              * loader/CachedXBLDocument.h:
              * loader/CachedXBLDocument.cpp:
              (WebCore::CachedXBLDocument::setCharset): Ditto.
              * loader/CachedXSLStyleSheet.h:
              * loader/CachedXSLStyleSheet.cpp:
              (WebCore::CachedXSLStyleSheet::setCharset): Ditto.
              * loader/DocLoader.cpp:
              (WebCore::DocLoader::requestStyleSheet): Ditto.
              (WebCore::DocLoader::requestScript): Ditto.
              * loader/DocLoader.h: Ditto.
              * loader/FormData.h:
              * loader/FormData.cpp:
              (WebCore::FormData::FormData): Ditto.
              (WebCore::FormData::appendFile): Ditto.
              (WebCore::FormData::flattenToString): Ditto.
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::setStyleSheet): Ditto.
              (WebCore::getString): Ditto.
              (WebCore::Frame::replaceContentsWithScriptResult): Ditto.
              (WebCore::Frame::executeScript): Ditto.
              (WebCore::Frame::clear): Ditto.
              (WebCore::Frame::write): Ditto.
              (WebCore::Frame::endIfNotLoading): Ditto.
              (WebCore::Frame::baseTarget): Ditto.
              (WebCore::Frame::scheduleRedirection): Ditto.
              (WebCore::Frame::scheduleLocationChange): Ditto.
              (WebCore::Frame::scheduleHistoryNavigation): Ditto.
              (WebCore::Frame::changeLocation): Ditto.
              (WebCore::Frame::redirectionTimerFired): Ditto.
              (WebCore::Frame::encoding): Ditto.
              (WebCore::Frame::submitForm): Ditto.
              (WebCore::Frame::referrer): Ditto.
              (WebCore::Frame::isCharacterSmartReplaceExempt): Ditto.
              (WebCore::Frame::setEncoding): Ditto.
              * page/Settings.h: Ditto.
              * platform/SegmentedString.h: Ditto.
              * platform/SegmentedString.cpp: Ditto.
              * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Ditto.
              * xml/XSLTProcessor.cpp:
              (WebCore::transformTextStringToXHTMLDocumentString): Ditto.
              (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
              * xml/xmlhttprequest.h:
              * xml/xmlhttprequest.cpp:
              (WebCore::XMLHttpRequest::open): Ditto.
              (WebCore::XMLHttpRequest::send): Ditto.
              (WebCore::XMLHttpRequest::receivedData): Ditto.
      
              * platform/DeprecatedString.cpp:
              (WebCore::DeprecatedString::fromUtf8): Updated for changes to TextEncoding.
              (WebCore::DeprecatedString::utf8): Ditto.
      
              * platform/KURL.h:
              * platform/KURL.cpp:
              (WebCore::KURL::KURL): Updated to overload based on presence or absence of
              TextEncoding rather than having a default.
              (WebCore::KURL::init): Moved body of constructor in here. Updated to use
              the new TextEncoding interface.
              (WebCore::KURL::decode_string): Updated to overload based on presence or
              absence of TextEncoding rather than having a default. Updated to use
              the new TextEncoding interface.
              (WebCore::encodeRelativeString): Updated to use the new TextEncoding interface.
      
              * platform/Font.cpp: (WebCore::WidthIterator::normalizeVoicingMarks): Fixed
              code to use U_ZERO_ERROR instead of a typecast.
      
              * bindings/js/kjs_proxy.h: Removed unneeded declaration of DeprecatedString.
              * platform/GraphicsContext.h: Ditto.
      
              * platform/GraphicsContext.cpp: Removed unneeded include of "DeprecatedString.h".
              * rendering/break_lines.cpp: Ditto.
              * xml/XMLSerializer.cpp: Ditto.
      
              * platform/mac/FontDataMac.mm: Removed unneeded include of <unicode/unorm.h>.
      
              * platform/CharsetNames.h: Emptied out this file. A later patch could remove it.
              * platform/CharsetNames.cpp: Ditto.
              * platform/mac/ExtraCFEncodings.h: Ditto.
      
      WebKit:
      
              Reviewed by Alexey.
      
              - WebKit side of changes to encoding
      
              * WebView/WebHTMLRepresentation.m: (-[WebHTMLRepresentation documentSource]):
              Changed to call new -[WebCoreFrameBridge stringWithData:] instead of the calling
              the old methods that used a CFStringEncoding: -[WebCoreFrameBridge textEncoding]
              and +[WebCoreFrameBridge stringWithData:textEncoding:].
      
              * WebView/WebResource.m: (-[WebResource _stringValue]): Removed special case for
              nil encoding name. The bridge itself now has the rule that "nil encoding name
              means Latin-1", so we don't need to check for nil.
      
              * WebView/WebFrame.m: (-[WebFrame _checkLoadComplete]): Retain the frame until
              we get the parent frame while walking up parent frames, because it's possible
              for _checkLoadCompleteForThisFrame to release the last reference to the frame.
              (Not reviewed; needed to run performance tests successfully.)
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b3547a37
  21. 03 Aug, 2006 1 commit
    • weinig's avatar
      JavaScriptCore: · f18aae37
      weinig authored
              Reviewed by Darin.
      
              - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
                Make WebCore compile with -Wundef
      
                * Adds -Wundef flag to Xcode project
                * Converts #ifs to #ifdef and #ifndefs where needed.
                * Added #define YYMAXDEPTH 10000 in kjs/grammar.y
                  to fix a warning from within Bison.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/jni/jni_jsobject.cpp:
              (JavaJSObject::getSlot):
              (JavaJSObject::setSlot):
              * bindings/npapi.h:
              * bindings/objc/objc_class.mm:
              (KJS::Bindings::ObjcClass::methodsNamed):
              (KJS::Bindings::ObjcClass::fieldNamed):
              * bindings/objc/objc_instance.mm:
              (ObjcInstance::invokeMethod):
              * bindings/objc/objc_runtime.mm:
              (ObjcMethod::getMethodSignature):
              (ObjcField::name):
              (ObjcField::type):
              * kjs/grammar.y:
              * kjs/identifier.h:
      
      JavaScriptGlue:
      
              Reviewed by Darin.
      
              - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
                Make WebCore compile with -Wundef
      
                * Adds -Wundef flag to Xcode project
      
              * JavaScriptGlue.xcodeproj/project.pbxproj:
      
      WebCore:
      
              Reviewed by Darin.
      
              - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
                Make WebCore compile with -Wundef
      
                * Adds -Wundef flag to Xcode project
                * Converts #ifs to #ifdef and #ifndefs where needed.
                * Replaces #ifdef WIN32 with #if PLATFORM(WIN_OS) or PLATFORM(WIN)
                  (and in one instance in config.h with #if !COMPILER(MSVC))
                * Added #define YYMAXDEPTH 10000 in XPathGrammar.y and CSSGrammar.y
                  to fix a warning from within Bison.
                * Cleaned up style a little in surrounding code.
      
              * WebCore.xcodeproj/project.pbxproj:
              * bridge/mac/WebCoreAXObject.mm:
              (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
              * config.h:
              * css/CSSGrammar.y:
              * css/MediaFeatureNames.cpp:
              * css/MediaFeatureNames.h:
              * css/cssparser.cpp:
              * dom/ContainerNode.cpp:
              (WebCore::ContainerNode::setActive):
              * dom/Element.cpp:
              (WebCore::Element::attach):
              * dom/Element.h:
              * dom/EventNames.cpp:
              * dom/EventNames.h:
              * dom/NamedAttrMap.h:
              * dom/Position.cpp:
              * dom/QualifiedName.cpp:
              * dom/QualifiedName.h:
              * dom/Range.h:
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::error):
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::scriptHandler):
              (WebCore::HTMLTokenizer::scriptExecution):
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::continueProcessing):
              (WebCore::HTMLTokenizer::write):
              (WebCore::HTMLTokenizer::timerFired):
              (WebCore::HTMLTokenizer::notifyFinished):
              * kcanvas/device/quartz/KCanvasFilterQuartz.h:
              * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/css/SVGRenderStyleDefs.h:
              * ksvg2/scripts/make_names.pl:
              * loader/CachedResource.h:
              * loader/LoaderFunctions.h:
              * loader/loader.h:
              * page/Frame.cpp:
              * page/FrameTree.cpp:
              * page/FrameView.cpp:
              (WebCore::FrameView::clear):
              (WebCore::FrameView::layout):
              (WebCore::FrameView::layoutTimerFired):
              (WebCore::FrameView::scheduleRelayout):
              (WebCore::FrameView::unscheduleRelayout):
              * platform/AtomicString.cpp:
              * platform/AtomicString.h:
              * platform/Cursor.h:
              * platform/DeprecatedArray.h:
              * platform/DeprecatedString.cpp:
              (WebCore::allocateHandle):
              (WebCore::initializeHandleNodeBlock):
              (WebCore::freeHandle):
              * platform/FloatPoint.h:
              * platform/FloatRect.h:
              * platform/FloatSize.h:
              * platform/GraphicsContext.h:
              * platform/Image.h:
              * platform/IntPoint.h:
              * platform/IntRect.h:
              (WebCore::IntRect::inflateX):
              (WebCore::IntRect::inflateY):
              * platform/IntSize.h:
              * platform/PlatformKeyboardEvent.h:
              * platform/PlatformMouseEvent.h:
              * platform/PlatformString.h:
              * platform/ResourceLoader.h:
              * platform/ResourceLoaderInternal.h:
              (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
              * platform/ScrollView.h:
              * platform/StaticConstructors.h:
              * platform/StreamingTextDecoderICU.cpp:
              (WebCore::StreamingTextDecoderICU::convert):
              * platform/StringImpl.h:
              * platform/Widget.h:
              * platform/mac/BlockExceptions.mm:
              * platform/mac/ColorMac.mm:
              (+[WebCoreControlTintObserver WebCore]):
              * platform/mac/FloatPointMac.mm:
              * platform/mac/FloatRectMac.mm:
              * platform/mac/FloatSizeMac.mm:
              * platform/mac/FontMac.mm:
              * platform/mac/GraphicsContextMac.mm:
              (WebCore::GraphicsContext::drawFocusRing):
              * platform/mac/IntPointMac.mm:
              * platform/mac/IntRectMac.mm:
              * platform/mac/IntSizeMac.mm:
              * platform/mac/WebCoreSystemInterface.h:
              * rendering/RenderBlock.h:
              * rendering/RenderTableCell.h:
              * rendering/bidi.cpp:
              (WebCore::appendRun):
              (WebCore::RenderBlock::layoutInlineChildren):
              * xml/XSLTProcessor.cpp:
              (WebCore::parseErrorFunc):
              * xpath/impl/XPathGrammar.y:
      
      WebKit:
      
              Reviewed by Darin.
      
              - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
                Make WebCore compile with -Wundef
      
                * Adds -Wundef flag to Xcode project
                * Converts #ifs to #ifdef and #ifndefs where needed.
      
              * Carbon/CarbonUtils.m:
              * Carbon/CarbonWindowAdapter.m:
              * Carbon/HIViewAdapter.m:
              (+[NSView bindHIViewToNSView:nsView:]):
              * Carbon/HIWebView.m:
              (HIWebViewEventHandler):
              * Misc/WebFileDatabase.m:
              (UniqueFilePathForKey):
              * Misc/WebNSWindowExtras.m:
              (swizzleInstanceMethod):
              * Misc/WebTypesInternal.h:
              * Plugins/WebNetscapeDeprecatedFunctions.c:
              * Plugins/WebNetscapeDeprecatedFunctions.h:
              * Plugins/WebNetscapePluginPackage.h:
              * Plugins/WebNetscapePluginPackage.m:
              (-[WebNetscapePluginPackage unloadWithoutShutdown]):
              (-[WebNetscapePluginPackage load]):
              * WebKit.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f18aae37
  22. 15 Jul, 2006 1 commit
    • ap's avatar
      Reviewed by Darin. · 2bc2673f
      ap authored
              Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4195
              REGRESSION: KOI8-U encoding no longer supported.
      
              Tests:
              * http/tests/misc/BOM-override.pl
              * http/tests/misc/BOM-override-script.html
              * fast/encoding/charset-koi8-u.html
              * fast/encoding/charset-x-nextstep.html
      
              Restored a TEC code path for encodings that are not supported by ICU (but which currently
              passes all layout tests even by itself with ICU disabled). A lot of refactoring is 
              still needed - most importantly, round-tripping encoding names via CFStringEncoding 
              makes little sense now.
      
              * WebCore.exp:
              * bridge/mac/WebCoreTextDecoder.h: Removed.
              * bridge/mac/WebCoreTextDecoder.mm: Removed.
              WebCoreTextDecoder was not used anywhere since WebTextView was moved into WebCore.
      
              * loader/Decoder.cpp:
              (Decoder::Decoder):
              (Decoder::setEncodingName):
              (Decoder::decode):
              Use StreamingTextDecoder::create().
      
              * platform/StreamingTextDecoder.cpp:
              (WebCore::StreamingTextDecoder::create):
              (WebCore::StreamingTextDecoder::~StreamingTextDecoder):
              * platform/StreamingTextDecoder.h:
              StreamingTextDecoder is just an abstract interface to implementations now.
      
              * platform/StreamingTextDecoderICU.cpp: Added.
              (WebCore::StreamingTextDecoderICU::StreamingTextDecoderICU):
              (WebCore::StreamingTextDecoderICU::~StreamingTextDecoderICU):
              (WebCore::StreamingTextDecoderICU::releaseICUConverter):
              (WebCore::StreamingTextDecoderICU::textEncodingSupported):
              (WebCore::StreamingTextDecoderICU::convertUTF16):
              (WebCore::StreamingTextDecoderICU::convertIfASCII):
              (WebCore::StreamingTextDecoderICU::createICUConverter):
              (WebCore::StreamingTextDecoderICU::appendOmittingBOM):
              (WebCore::StreamingTextDecoderICU::convertUsingICU):
              (WebCore::StreamingTextDecoderICU::convert):
              (WebCore::StreamingTextDecoderICU::toUnicode):
              (WebCore::StreamingTextDecoderICU::fromUnicode):
              * platform/StreamingTextDecoderICU.h: Added.
              Renamed from StreamingTextDecoder; added a way to tell whether the encoding is actually
              supported by the decoder; minor cleanup.
      
              * platform/TextEncoding.cpp:
              (WebCore::TextEncoding::effectiveEncoding): Moved from StreamingTextDecoder.
              (WebCore::TextEncoding::toUnicode): Use StreamingTextDecoder::create().
              (WebCore::TextEncoding::fromUnicode): Moved to StreamingTextDecoderICU.
              
              * platform/TextEncoding.h: Changed __APPLE__ to PLATFORM(MAC); added effectiveEncoding().
      
              * platform/mac/StreamingTextDecoderMac.cpp: Added.
              (WebCore::StreamingTextDecoderMac::StreamingTextDecoderMac):
              (WebCore::StreamingTextDecoderMac::~StreamingTextDecoderMac):
              (WebCore::StreamingTextDecoderMac::releaseTECConverter):
              (WebCore::StreamingTextDecoderMac::textEncodingSupported):
              (WebCore::StreamingTextDecoderMac::convertUTF16):
              (WebCore::StreamingTextDecoderMac::convertIfASCII):
              (WebCore::StreamingTextDecoderMac::createTECConverter):
              (WebCore::StreamingTextDecoderMac::appendOmittingBOM):
              (WebCore::StreamingTextDecoderMac::convertOneChunkUsingTEC):
              (WebCore::StreamingTextDecoderMac::convertUsingTEC):
              (WebCore::StreamingTextDecoderMac::convert):
              (WebCore::StreamingTextDecoderMac::toUnicode):
              (WebCore::StreamingTextDecoderMac::fromUnicode):
              * platform/mac/StreamingTextDecoderMac.h: Added.
              (WebCore::StreamingTextDecoderMac::convert):
              This is a TEC+CFString code path for decoding, basically restored from a year-old revision.
      
              * platform/mac/TextEncodingMac.cpp: Removed. Code moved to StreamingTextDecoderMac.
      
              * WebCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15449 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2bc2673f
  23. 09 Jul, 2006 1 commit
    • darin's avatar
      Rubber stamped by Maciej (kinda). · b53ebdcb
      darin authored
              - did the next pass of renaming (used do-webcore-rename script)
                this takes care of most of the remaining KWQ names (almost all)
      
              * WebCore+SVG/DOMList.h:
              * WebCore.vcproj/WebCore/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_window.cpp:
              * bindings/objc/DOMHTML.mm:
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * bridge/mac/WebCoreSettings.h:
              * bridge/mac/WebCoreSettings.mm:
              * bridge/win/FrameWin.cpp:
              * css/CSSPrimitiveValue.cpp:
              * css/CSSValueKeywords.in:
              * css/MediaQueryEvaluator.cpp:
              * css/cssparser.cpp:
              * css/cssstyleselector.cpp:
              * css/cssstyleselector.h:
              * dom/CharacterData.cpp:
              * dom/CharacterData.h:
              * dom/Document.cpp:
              * dom/Element.cpp:
              * dom/Element.h:
              * dom/EventTargetNode.cpp:
              * dom/EventTargetNode.h:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Position.cpp:
              * dom/ProcessingInstruction.cpp:
              * dom/QualifiedName.cpp:
              * dom/QualifiedName.h:
              * dom/XMLTokenizer.cpp: Added.
              * dom/xml_tokenizer.cpp: Removed.
              * dom/xml_tokenizer.h: Removed.
              * editing/EditAction.h:
              * editing/HTMLInterchange.cpp:
              * editing/HTMLInterchange.h:
              * editing/Selection.h:
              * editing/SelectionController.h:
              * editing/TextAffinity.h:
              * editing/TextIterator.cpp:
              * editing/TextIterator.h:
              * editing/VisiblePosition.h:
              * editing/htmlediting.cpp:
              * editing/markup.cpp:
              * editing/markup.h:
              * editing/visible_units.cpp:
              * editing/visible_units.h:
              * html/HTMLDocument.cpp:
              * html/HTMLFontElement.cpp:
              * html/HTMLInputElement.cpp:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLSelectElement.h:
              * html/HTMLTextAreaElement.cpp:
              * html/HTMLTextFieldInnerElement.cpp:
              * html/HTMLTokenizer.cpp:
              * html/HTMLTokenizer.h:
              * kcanvas/KCanvasContainer.cpp: Removed.
              * kcanvas/KCanvasContainer.h: Removed.
              * kcanvas/KCanvasCreator.cpp:
              * kcanvas/KCanvasFilters.cpp:
              * kcanvas/KCanvasFilters.h:
              * kcanvas/KCanvasMatrix.cpp:
              * kcanvas/KCanvasMatrix.h:
              * kcanvas/KCanvasPath.cpp:
              * kcanvas/KCanvasPath.h:
              * kcanvas/KCanvasResources.cpp:
              * kcanvas/KCanvasResources.h:
              * kcanvas/KCanvasTreeDebug.cpp:
              * kcanvas/KCanvasTreeDebug.h:
              * kcanvas/RenderForeignObject.cpp:
              * kcanvas/RenderForeignObject.h:
              * kcanvas/RenderPath.cpp:
              * kcanvas/RenderPath.h:
              * kcanvas/RenderSVGContainer.cpp: Added.
              * kcanvas/RenderSVGContainer.h: Added.
              * kcanvas/RenderSVGImage.cpp:
              * kcanvas/RenderSVGImage.h:
              * kcanvas/RenderSVGText.cpp:
              * kcanvas/RenderSVGText.h:
              * kcanvas/device/KRenderingPaintServer.h:
              * kcanvas/device/KRenderingPaintServerGradient.cpp:
              * kcanvas/device/KRenderingPaintServerGradient.h:
              * kcanvas/device/KRenderingPaintServerPattern.cpp:
              * kcanvas/device/KRenderingPaintServerPattern.h:
              * kcanvas/device/KRenderingPaintServerSolid.cpp:
              * kcanvas/device/KRenderingPaintServerSolid.h:
              * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
              * kcanvas/device/quartz/KCanvasItemQuartz.h:
              * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
              * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
              * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
              * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
              * ksvg2/css/CSSValueKeywords.in:
              * ksvg2/css/SVGRenderStyleDefs.cpp:
              * ksvg2/misc/KCanvasRenderingStyle.cpp:
              * ksvg2/misc/KSVGTimeScheduler.cpp:
              * ksvg2/svg/SVGAElement.cpp:
              * ksvg2/svg/SVGAnimateTransformElement.cpp:
              * ksvg2/svg/SVGAnimateTransformElement.h:
              * ksvg2/svg/SVGGElement.cpp:
              * ksvg2/svg/SVGHelper.cpp:
              * ksvg2/svg/SVGHelper.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGLinearGradientElement.cpp:
              * ksvg2/svg/SVGMarkerElement.cpp:
              * ksvg2/svg/SVGMaskElement.cpp:
              * ksvg2/svg/SVGMatrix.cpp:
              * ksvg2/svg/SVGMatrix.h:
              * ksvg2/svg/SVGPatternElement.cpp:
              * ksvg2/svg/SVGRadialGradientElement.cpp:
              * ksvg2/svg/SVGSVGElement.cpp:
              * ksvg2/svg/SVGStyledElement.h:
              * ksvg2/svg/SVGStyledTransformableElement.cpp:
              * ksvg2/svg/SVGStyledTransformableElement.h:
              * ksvg2/svg/SVGSwitchElement.cpp:
              * ksvg2/svg/SVGTextElement.cpp:
              * ksvg2/svg/SVGTransformable.h:
              * ksvg2/svg/SVGUseElement.cpp:
              * kwq/AffineTransform.cpp: Added.
              * kwq/AffineTransform.h: Added.
              * kwq/DeprecatedCString.cpp: Added.
              * kwq/DeprecatedCString.h: Added.
              * kwq/DeprecatedPtrQueue.h: Added.
              * kwq/FileButton.h: Added.
              * kwq/FileButton.mm: Added.
              * kwq/FormDataMac.mm: Added.
              * kwq/KWQCString.cpp: Removed.
              * kwq/KWQCString.h: Removed.
              * kwq/KWQComboBox.h: Removed.
              * kwq/KWQComboBox.mm: Removed.
              * kwq/KWQEditCommand.h: Removed.
              * kwq/KWQEditCommand.mm: Removed.
              * kwq/KWQFileButton.h: Removed.
              * kwq/KWQFileButton.mm: Removed.
              * kwq/KWQFormData.h: Removed.
              * kwq/KWQFormData.mm: Removed.
              * kwq/KWQKHTMLSettings.h: Removed.
              * kwq/KWQKIOGlobal.h: Removed.
              * kwq/KWQKSSLKeyGen.h: Removed.
              * kwq/KWQKSSLKeyGen.mm: Removed.
              * kwq/KWQLineEdit.h: Removed.
              * kwq/KWQLineEdit.mm: Removed.
              * kwq/KWQListBox.h: Removed.
              * kwq/KWQListBox.mm: Removed.
              * kwq/KWQLoader.h: Removed.
              * kwq/KWQLoader.mm: Removed.
              * kwq/KWQPageState.h: Removed.
              * kwq/KWQPageState.mm: Removed.
              * kwq/KWQPtrQueue.h: Removed.
              * kwq/KWQResourceLoader.h: Removed.
              * kwq/KWQResourceLoader.mm: Removed.
              * kwq/KWQScrollBar.h: Removed.
              * kwq/KWQScrollBar.mm: Removed.
              * kwq/KWQSlider.h: Removed.
              * kwq/KWQSlider.mm: Removed.
              * kwq/KWQTextEdit.h: Removed.
              * kwq/KWQTextEdit.mm: Removed.
              * kwq/KWQTextStream.cpp: Removed.
              * kwq/KWQTextStream.h: Removed.
              * kwq/KWQWMatrix.cpp: Removed.
              * kwq/KWQWMatrix.h: Removed.
              * kwq/ListBox.h: Added.
              * kwq/ListBox.mm: Added.
              * kwq/LoaderFunctions.h: Added.
              * kwq/LoaderFunctions.mm: Added.
              * kwq/PopUpButton.h: Added.
              * kwq/PopUpButton.mm: Added.
              * kwq/SSLKeyGenerator.h: Added.
              * kwq/SSLKeyGenerator.mm: Added.
              * kwq/Settings.h: Added.
              * kwq/TextBox.h: Added.
              * kwq/TextBox.mm: Added.
              * kwq/TextField.h: Added.
              * kwq/TextField.mm: Added.
              * kwq/TextStream.cpp: Added.
              * kwq/TextStream.h: Added.
              * kwq/WebCoreEditCommand.h: Added.
              * kwq/WebCoreEditCommand.mm: Added.
              * kwq/WebCorePageState.h: Added.
              * kwq/WebCorePageState.mm: Added.
              * kwq/WebCoreResourceLoaderImp.h: Added.
              * kwq/WebCoreResourceLoaderImp.mm: Added.
              * kwq/WebCoreScrollBar.h: Added.
              * kwq/WebCoreScrollBar.mm: Added.
              * kwq/WebCoreSlider.h: Added.
              * kwq/WebCoreSlider.mm: Added.
              * loader/Cache.h:
              * loader/CachedCSSStyleSheet.cpp:
              * loader/CachedImage.cpp:
              * loader/CachedObject.h:
              * loader/CachedObjectClientWalker.h:
              * loader/CachedResource.h:
              * loader/CachedResourceClientWalker.h:
              * loader/CachedScript.h:
              * loader/CachedXBLDocument.h:
              * loader/Decoder.h:
              * loader/DocLoader.cpp:
              * loader/DocLoader.h:
              * loader/FormData.h:
              * loader/ImageDocument.cpp:
              * loader/PluginDocument.cpp:
              * loader/TextDocument.cpp:
              * loader/loader.cpp:
              * loader/loader.h:
              * page/Frame.cpp:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/Page.cpp:
              * page/Page.h:
              * platform/DeprecatedPtrList.h:
              * platform/DeprecatedPtrListImpl.cpp:
              * platform/DeprecatedPtrListImpl.h:
              * platform/DeprecatedString.cpp:
              * platform/DeprecatedString.h:
              * platform/DeprecatedStringList.cpp:
              * platform/DeprecatedStringList.h:
              * platform/DeprecatedValueList.h:
              * platform/DeprecatedValueListImpl.cpp:
              * platform/DeprecatedValueListImpl.h:
              * platform/FloatSize.h:
              * platform/Font.cpp:
              * platform/KURL.cpp:
              * platform/RegularExpression.cpp:
              * platform/RegularExpression.h:
              * platform/SegmentedString.h:
              * platform/StreamingTextDecoder.cpp:
              * platform/String.cpp:
              * platform/StringImpl.cpp:
              * platform/TextEncoding.cpp:
              * platform/TransferJob.cpp:
              * platform/TransferJob.h:
              * platform/TransferJobInternal.h:
              * platform/gdk/FrameGdk.cpp:
              * platform/gdk/TemporaryLinkStubs.cpp:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              * platform/mac/CursorMac.mm:
              * platform/mac/DeprecatedStringMac.mm: Added.
              * platform/mac/FontCacheMac.mm:
              * platform/mac/FontMac.mm:
              * platform/mac/FoundationExtras.h:
              * platform/mac/ImageMac.mm:
              * platform/mac/KURLMac.mm:
              * platform/mac/MouseEventMac.mm: Removed.
              * platform/mac/QStringListMac.mm: Removed.
              * platform/mac/QStringMac.mm: Removed.
              * platform/mac/TransferJobMac.mm:
              * platform/mac/WebCoreTextArea.h:
              * platform/mac/WebCoreTextArea.mm:
              * platform/mac/WebCoreTextField.h:
              * platform/mac/WebCoreTextField.mm:
              * platform/mac/WidgetMac.mm:
              * platform/win/TemporaryLinkStubs.cpp:
              * rendering/DataRef.h:
              * rendering/DeprecatedRenderSelect.cpp:
              * rendering/DeprecatedRenderSelect.h:
              * rendering/DeprecatedSlider.cpp:
              * rendering/InlineFlowBox.cpp:
              * rendering/RenderApplet.cpp:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBlock.h:
              * rendering/RenderContainer.cpp:
              * rendering/RenderFileButton.cpp:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFormElement.cpp:
              * rendering/RenderFrameSet.cpp:
              * rendering/RenderFrameSet.h:
              * rendering/RenderImage.cpp:
              * rendering/RenderInline.cpp:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayer.h:
              * rendering/RenderLineEdit.cpp:
              * rendering/RenderListItem.cpp:
              * rendering/RenderListMarker.cpp:
              * rendering/RenderObject.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderPartObject.cpp:
              * rendering/RenderReplaced.cpp:
              * rendering/RenderStyle.cpp: Added.
              * rendering/RenderStyle.h: Added.
              * rendering/RenderTable.cpp:
              * rendering/RenderTable.h:
              * rendering/RenderTableCell.cpp:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableCol.cpp:
              * rendering/RenderTableCol.h:
              * rendering/RenderTableRow.cpp:
              * rendering/RenderTableSection.cpp:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextArea.cpp:
              * rendering/RenderTextControl.cpp: Added.
              * rendering/RenderTextControl.h: Added.
              * rendering/RenderTextField.cpp: Removed.
              * rendering/RenderTextField.h: Removed.
              * rendering/RenderTheme.cpp:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderTreeAsText.cpp:
              * rendering/RenderTreeAsText.h:
              * rendering/RenderView.cpp:
              * rendering/RenderWidget.cpp:
              * rendering/bidi.cpp:
              * rendering/render_style.cpp: Removed.
              * rendering/render_style.h: Removed.
              * xml/XSLStyleSheet.cpp:
              * xml/XSLTProcessor.cpp:
              * xml/xmlhttprequest.cpp:
              * xpath/impl/XPathParser.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15253 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b53ebdcb
  24. 19 Jun, 2006 1 commit
    • ap's avatar
      Reviewed by Darin. · cc9642f9
      ap authored
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=8972
              REGRESSION: invalid UTF-8 sequences are not displayed
      
              Test: LayoutTests/fast/encoding/invalid-UTF-8.html
      
              * dom/xml_tokenizer.cpp:
              (WebCore::getXHTMLEntity): Properly null-terminate the result. This didn't matter
              before, because the garbage at the end was guaranteed to be invalid UTF-8, and was 
              omitted in appendOmittingUnwanted();
      
              * platform/StreamingTextDecoder.cpp:
              (WebCore::StreamingTextDecoder::appendOmittingBOM): Only omit BOM characters.
              Renamed back from appendOmittingUnwanted();
      
              (WebCore::StreamingTextDecoder::convertUsingICU):
              * platform/StreamingTextDecoder.h:
              Update for the above function renaming.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14911 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cc9642f9
  25. 09 May, 2006 2 commits
    • darin's avatar
      LayoutTests: · 7ab3109f
      darin authored
              - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6310
                text-transform: uppercase/lowercase don't handle cases one character becomes two
      
              * fast/css/case-transform.html: Added.
              * fast/css/case-transform-expected.txt: Added.
      
      WebCore:
      
              Rubber stamped by Hyatt.
      
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=8782
                use ICU and UChar more, QChar less
      
              - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6310
                text-transform: uppercase/lowercase don't handle cases one character becomes two
      
              Test: fast/css/case-transform.html
      
              By using ICU more, this fixes some bugs in a few places.
      
              * bindings/js/JSXMLSerializer.cpp:
              * css/css_valueimpl.h:
              * kwq/KWQTextStream.cpp:
              * loader/CachedObject.h:
              * platform/Color.cpp:
              Add includes of DeprecatedString.h as needed, now that StringImpl.h no longer
              includes it.
      
              * bindings/js/kjs_css.cpp: (KJS::cssPropertyName):
              Eliminate use of QChar::latin1() in a case where it's not helpful.
      
              * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::evaluate):
              Use characters() function instead of the old unicode() function.
      
              * bindings/js/kjs_window.cpp: (KJS::isSeparator):
              Use UChar instead of QChar.
      
              * bindings/objc/DOMInternal.mm:
              (StringImpl::operator NSString*): Remove typecast that's no longer needed.
              (String::String): Ditto. Also use Vector for local buffer to make code read simpler.
      
              * bridge/mac/FrameMac.mm:
              (WebCore::selectorForKeyEvent): Remove call to unicode() function, no longer needed.
              (WebCore::FrameMac::setTitle): Remove QChar cast, no longer needed.
              (WebCore::FrameMac::setStatusBarText): Ditto.
              (WebCore::FrameMac::advanceToNextMisspelling): Use UChar instead of QChar.
              (WebCore::FrameMac::runJavaScriptAlert): Remove QChar cast, no longer needed.
              (WebCore::FrameMac::runJavaScriptConfirm): Ditto.
              (WebCore::FrameMac::runJavaScriptPrompt): Ditto.
              (WebCore::FrameMac::attributedString): Replaces calls of QChar::direction() with
              calls to u_charDirection and use ICU constants instead of QChar ones.
              (WebCore::FrameMac::markMisspellings): Remove QChar cast, no longer needed. Added a
              QChar cast so we can call isSpace -- slated to be removed later.
              (WebCore::FrameMac::shouldClose): Remove QChar cast, no longer needed.
      
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge selectedString]): Remove QChar cast, no longer needed.
              (-[WebCoreFrameBridge stringForRange:]): Ditto.
      
              * css/CSSGrammar.y: Update for field name change from string to characters.
              Use UChar instead of unsigned short. 
      
              * css/css_valueimpl.cpp:
              (WebCore::propertyID): Use UChar instead of unsigned short and get rid of call to
              unicode() function, no longer needed.
              (WebCore::quoteStringIfNeeded): Use strings when building up a resulting string,
              instead of depending on the feature where you can append characters to a string.
      
              * css/csshelper.cpp: (WebCore::parseURL): Remove calls to unicode() function and
              rewrite to obviate the need to call lower() just to check for a few constant
              character values. Also remove a now-unneeded type cast.
      
              * css/cssparser.h: Changed ParseString field to use UChar and to be named characters
              instead of string. Changed many other fields to be UChar instead of unsigned short.
              (WebCore::domString): Update for that.
              (WebCore::atomicString): Ditto.
              * css/cssparser.cpp:
              (WebCore::ParseString::lower): Use u_tolower instead of QChar::lower(). Also change
              name to characters from string.
              (WebCore::CSSParser::setupParser): Use UChar instead of unsigned short.
              (WebCore::CSSParser::lex): Ditto. Also update for characters name change.
              (WebCore::CSSParser::text): Use UChar instead of unsigned short. Also tweak some
              of the code a little bit to handle a couple of overflow cases better and reduce
              type casting.
              (WebCore::deprecatedString): Moved here so we don't have to include DeprecatedString.h
              in the header file.
      
              * css/cssstyleselector.cpp: (WebCore::checkPseudoState): Added a type cast since this
              code now bridges the world between modern code and QChar/DeprecatedString.
      
              * dom/CharacterData.cpp: (WebCore::CharacterData::CharacterData): Changed QChar to UChar.
      
              * dom/Document.h:
              * dom/Document.cpp:
              (WebCore::Document::isValidName): Updated for name change from unicode to characters.
              (WebCore::Document::parseQualifiedName): Ditto.
              (WebCore::Document::backslashAsCurrencySymbol): Changed return type to UChar.
      
              * dom/NamedMappedAttrMap.cpp:
              (WebCore::isClassWhitespace): Changed parameter to UChar from QChar.
              (WebCore::NamedMappedAttrMap::parseClassAttribute): Changed from UChar to QChar and
              from unicode to characters.
      
              * dom/Position.cpp:
              (WebCore::Position::leadingWhitespacePosition): Changed from QChar to UChar.
              (WebCore::Position::trailingWhitespacePosition): Ditto.
      
              * dom/StyledElement.cpp:
              (WebCore::isClassWhitespace): Changed from QChar to UChar.
              (WebCore::StyledElement::addCSSLength): Changed from QChar to UChar, and remove one
              case where latin1() was used and was not helpful.
              (WebCore::StyledElement::addCSSColor): Removed unicode() function call, no longer needed.
      
              * dom/dom2_eventsimpl.cpp: (WebCore::KeyboardEvent::charCode):
              * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::constrainValue):
              Removed unicode() function call, no longer needed.
      
              * dom/xml_tokenizer.h: Removed default parameter for xmlDocPtrForString so we don't have
              to include the DeprecatedString.h header in this file (and since no one uses it).
      
              * editing/HTMLInterchange.cpp: (convertHTMLTextToInterchangeFormat): Added a couple calls
              to the unicode() function to bridge the gap from QChar/DeprecatedString back to modern
              code.
      
              * editing/InsertTextCommand.cpp: Removed unused function.
      
              * editing/TextIterator.h: Changed from QChar to UChar.
              * editing/TextIterator.cpp:
              (WebCore::TextIterator::TextIterator): Initialize m_lastCharacter since it's now a UChar
              (which is just a typedef) rather than a QChar (which was a class with a default value of 0).
              (WebCore::TextIterator::handleTextNode): Updated to use characters() instead of unicode().
              (WebCore::TextIterator::handleTextBox): Removed unicode() call since it's now a UChar instead
              of a QChar.
              (WebCore::TextIterator::emitCharacter): More of the same.
              (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
              (WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto.
              (WebCore::CharacterIterator::string): Ditto.
              (WebCore::WordAwareIterator::advance): Ditto.
              (WebCore::WordAwareIterator::length): Ditto.
              (WebCore::WordAwareIterator::characters): Ditto.
              (WebCore::CircularSearchBuffer::CircularSearchBuffer): Changed to use UChar
              instead of QChar, but also to use foldCase() instead of lower(), because
              we want case folding here, not lowercasing.
              (WebCore::CircularSearchBuffer::append): Ditto, with u_foldCase.
              (WebCore::CircularSearchBuffer::isMatch): Ditto.
              (WebCore::plainText): Added type cast since this bridges the gap from the modern stuff
              to QChar/DeprecatedString.
      
              * editing/VisiblePosition.h: Changed from QChar to UChar.
              * editing/VisiblePosition.cpp: (WebCore::VisiblePosition::characterAfter): Ditto.
      
              * editing/markup.cpp: (WebCore::escapeTextForMarkup): Changed code that used latin1()
              for no good reason to use unicode() instead.
       
              * html/HTMLTokenizer.h: Changed from QChar to UChar.
              * html/HTMLTokenizer.cpp: Changed from QChar to UChar, including removing the
              KHTML_ALLOC_QCHAR_VEC and KHTML_DELETE_QCHAR_VEC macros, which weren't being
              used consistently anyway.
              (WebCore::fixUpChar): More of the same.
              (WebCore::tagMatch): Ditto.
              (WebCore::HTMLTokenizer::reset): Ditto.
              (WebCore::HTMLTokenizer::begin): Ditto. Also corrected anomaly where buffer
              size was not the same as the size value -- this was only true in the initial
              allocation, so I believe there was no value in it.
              (WebCore::HTMLTokenizer::parseSpecial): Ditto. Also removed a use of latin1()
              that was unnnecessary extra work.
              (WebCore::HTMLTokenizer::scriptHandler): More of the same.
              (WebCore::HTMLTokenizer::parseComment): Ditto.
              (WebCore::HTMLTokenizer::parseServer): Ditto.
              (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto. Another unnecessary
              use of latin1() removed.
              (WebCore::HTMLTokenizer::parseText): Ditto.
              (WebCore::HTMLTokenizer::parseEntity): Ditto. Changed hex-parsing code to handle
              uppercase hex a more-efficient way than calling QChar::lower() on each character.
              Also changed surrogate code logic to fix a couple things -- reject character codes
              > 0x10FFFF as it should and use U16_LEAD and U16_TRAIL instead of writing our
              own versions of these.
              (WebCore::HTMLTokenizer::parseTag): Ditto.
              (WebCore::HTMLTokenizer::write): Ditto.
              (WebCore::HTMLTokenizer::end): Ditto.
              (WebCore::HTMLTokenizer::finish): Ditto.
              (WebCore::HTMLTokenizer::enlargeBuffer): Ditto.
              (WebCore::HTMLTokenizer::enlargeScriptBuffer): Ditto.
              (WebCore::HTMLTokenizer::notifyFinished):
              (WebCore::decodeNamedEntity): Ditto.
      
              * html/html_inlineimpl.cpp: (WebCore::parseFontSizeNumber): Changed from QChar
              to UChar, including using u_isdigit and u_charDigitValue instead of QChar::isNumber
              and QChar::digitValue. Also removed unneeded range checking that's already done
              by WebCore::String.
      
              * kwq/KWQLoader.mm: (KWQIsResponseURLEqualToURL): Rewrote to use Vector and UChar,
              removing all the type casts and making the whole function much shorter.
      
              * kwq/WebCoreAXObject.mm:
              (AXAttributedStringAppendText): Use UChar instead of QChar.
              (-[WebCoreAXObject doAXAttributedStringForTextMarkerRange:]): More of the same.
      
              * loader/Cache.h: Remove unnecessary default parameters, preventing the need to
              include the DeprecatedString.h header in this header. Cleaned up the header
              structure a bit, removing some obsolete and redundant comments and fixing typos.
              * loader/Cache.cpp: Removed unused preload functions.
      
              * page/Frame.h:
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::UserStyleSheetLoader): Added explicit arguments.
              This was the only caller anywhere that took advantage of the default parameter
              values in one of the Cache class request functions.
              (WebCore::Frame::backslashAsCurrencySymbol): Changed QChar to UChar.
      
              * platform/AtomicString.h: Changed QChar to UChar. Removed constructor that makes
              an AtomicString from a single character. Renamed unicode() function to characters().
              Renamed KHTML_ATOMICSTRING_HIDE_GLOBALS to ATOMICSTRING_HIDE_GLOBALS.
              * platform/AtomicString.cpp:
              (WebCore::CStringTranslator::equal): Changed QChar to UChar.
              (WebCore::operator==): Changed unicode() to characters().
              (WebCore::UCharBufferTranslator::hash): More of the same.
              (WebCore::UCharBufferTranslator::equal): Ditto.
              (WebCore::UCharBufferTranslator::translate): Ditto.
              (WebCore::AtomicString::add): Ditto.
              (WebCore::AtomicString::operator Identifier): Ditto.
              (WebCore::AtomicString::operator UString): Ditto.
              (WebCore::AtomicString::AtomicString): Moved here so we don't need DeprecatedString.h
              in the header.
              (WebCore::AtomicString::deprecatedString): Ditto.
      
              * platform/DeprecatedString.h: Removed QChar::Direction enum and all the DirXXX values,
              isDigit, isLetter, isNumber, isLetterOrNumber, isPunct, digitValue, and direction functions.
              (QChar::isSpace): Changed to use u_charDirection instead of QChar::direction.
      
              * platform/Font.h: (WebCore::Font::width): Changed QChar to UChar.
              * platform/Font.cpp: (WebCore::Font::width): Ditto.
      
              * platform/GraphicsContext.h:
              * platform/GraphicsContext.cpp:
              (WebCore::GraphicsContext::drawText): Changed QChar to UChar. Removed horizontalAlignment
              parameter from simplified string drawing entry point, since it's not used.
              (WebCore::GraphicsContext::drawHighlightForText): Changed QChar to UChar.
      
              * platform/PlatformString.h: Changed QChar to UChar. Removed constructor that makes
              a String from a single character. Renamed unicode() function to characters(). Added
              an append function and changed += operator to just call that. Added a foldCase() function.
              Removed the concatenation operators that add individual strings before or after.
              * platform/String.cpp:
              (WebCore::String::String): Changed QChar to UChar.
              (WebCore::String::append): Renamed from operator+= and removed the return value.
              (WebCore::String::operator[]): Changed QChar to UChar.
              (WebCore::String::foldCase): Added.
              (WebCore::String::percentage): More of the same.
              (WebCore::String::characters): Renamed from unicode().
              (WebCore::String::deprecatedString): More of the same.
              (WebCore::String::sprintf): Fixed mistakes in the comments.
              (WebCore::String::isEmpty): Tweaked a bit.
              (WebCore::operator==): More of the same.
              (WebCore::String::operator Identifier): Ditto.
              (WebCore::String::operator UString): Ditto.
      
              * platform/SegmentedString.h: Changed from QChar to UChar. Had to initialize
              data members that are now UChar.
              * platform/SegmentedString.cpp:
              (WebCore::SegmentedString::length): Updated for change from QChar to UChar.
              (WebCore::SegmentedString::append): Ditto.
              (WebCore::SegmentedString::prepend): Ditto.
              (WebCore::SegmentedString::toString): Ditto.
      
              * platform/StringHash.h: Updated to use UChar instead of QChar and for name changes.
              Also changed to use case folding intead of lowercasing for case insensitive hashing.
      
              * platform/StringImpl.h:
              * platform/StringImpl.cpp:
              (WebCore::newUCharVector): Changed to UChar from QChar.
              (WebCore::deleteUCharVector): Ditto.
              (WebCore::StringImpl::StringImpl): Ditto.
              (WebCore::StringImpl::init): Ditto. Also renamed from initWithChar and initWithQChar.
              (WebCore::StringImpl::~StringImpl): Ditto.
              (WebCore::StringImpl::append): Ditto.
              (WebCore::StringImpl::insert): Ditto.
              (WebCore::StringImpl::truncate): Ditto.
              (WebCore::StringImpl::remove): Ditto.
              (WebCore::StringImpl::split): Ditto.
              (WebCore::StringImpl::containsOnlyWhitespace): Ditto. Also added comment because this
              function seems a little broken.
              (WebCore::parseLength): More of the same.
              (WebCore::StringImpl::toCoordsArray): Ditto.
              (WebCore::StringImpl::toLengthArray): Ditto.
              (WebCore::StringImpl::isLower): Ditto.
              (WebCore::StringImpl::lower): Rewrote to use u_strToLower.
              (WebCore::StringImpl::upper): Rewrote to use u_strToUpper.
              (WebCore::StringImpl::foldCase): Added. Uses u_strFoldCase.
              (WebCore::getWordBreakIterator): Changed to use U_FAILURE instead of accepting only
              U_ZERO_ERROR as a success code.
              (WebCore::StringImpl::capitalize): More QChar to UChar changes.
              (WebCore::StringImpl::toInt): Ditto.
              (WebCore::equal): Changed from QChar to UChar and was careful to preserve the old
              semantics where "high ASCII" is treated as U+0080-U+00FF even though I don't know
              if this feature is important.
              (WebCore::equalIgnoringCase): Ditto, but used case folding instead of lowercasing
              by using the u_foldCase and u_memcasecmp functions. Also renamed from
              equalCaseInsensitive for more-consistent naming.
              (WebCore::StringImpl::find): Ditto. Use case folding for the case insensitive branch.
              (WebCore::StringImpl::replace): More of the same.
              (WebCore::StringImpl::computeHash): Ditto.
              (WebCore::StringImpl::ascii): Ditto.
      
              * platform/TextBoundaries.h: Changed from QChar to UChar.
              * platform/mac/TextBoundaries.mm:
              (WebCore::findWordBoundary): Made the change to UChar and removed some type casts.
              (WebCore::findNextWordFromIndex): Ditto.
              (WebCore::findSentenceBoundary): Ditto.
              (WebCore::findNextSentenceFromIndex): Ditto.
      
              * platform/TextEncoding.h:
              * platform/TextEncoding.cpp:
              (WebCore::TextEncoding::backslashAsCurrencySymbol): Changed from QChar to UChar.
              (WebCore::TextEncoding::fromUnicode): More of the same.
              * platform/mac/TextEncodingMac.cpp: (WebCore::TextEncoding::fromUnicode): More
              of the same.
      
              * platform/mac/FontFamilyMac.mm: (WebCore::FontFamily::getNSFamily): Removed a
              now-unneeded type cast.
      
              * platform/mac/FontMac.mm:
              (WebCore::Font::selectionRectForText):
              (WebCore::Font::drawText):
              (WebCore::Font::drawHighlightForText):
              (WebCore::Font::floatWidth):
              (WebCore::Font::checkSelectionPoint):
              Changed QChar to UChar and removed some now-unneeded type casts.
      
              * editing/RebalanceWhitespaceCommand.cpp: (WebCore::isWhitespace):
              * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
              * editing/visible_units.cpp:
              (WebCore::previousBoundary):
              (WebCore::nextBoundary):
              (WebCore::startWordBoundary):
              (WebCore::endWordBoundary):
              (WebCore::previousWordPositionBoundary):
              (WebCore::nextWordPositionBoundary):
              (WebCore::startSentenceBoundary):
              (WebCore::endSentenceBoundary):
              (WebCore::previousSentencePositionBoundary):
              (WebCore::nextSentencePositionBoundary):
              (WebCore::startOfParagraph):
              (WebCore::endOfParagraph):
              * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::selectionRect):
              (WebCore::InlineTextBox::paint):
              (WebCore::InlineTextBox::paintSelection):
              (WebCore::InlineTextBox::paintMarkedTextBackground):
              (WebCore::InlineTextBox::paintTextMatchMarker):
              (WebCore::InlineTextBox::offsetForPosition):
              (WebCore::InlineTextBox::positionForOffset):
              * rendering/RenderBlock.cpp:
              (WebCore::stripTrailingSpace):
              (WebCore::RenderBlock::updateFirstLetter):
              * rendering/RenderFlexibleBox.cpp:
              (WebCore::RenderFlexibleBox::layoutVerticalBox):
              * rendering/RenderObject.h:
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::backslashAsCurrencySymbol):
              * rendering/RenderTreeAsText.cpp: (quoteAndEscapeNonPrintables):
              * rendering/break_lines.cpp: (WebCore::nextBreakablePosition):
              * rendering/break_lines.h: (WebCore::isBreakable):
              * rendering/render_style.h: (WebCore::RenderStyle::isCollapsibleWhiteSpace):
              * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString):
              * xml/xmlhttprequest.cpp:
              (WebCore::getMIMEType):
              (WebCore::getCharset):
              Changed QChar to UChar.
      
              * rendering/RenderImage.cpp:
              (WebCore::RenderImage::imageChanged): Changed QChar to UChar.
              (WebCore::RenderImage::paint): Changed callers of drawText to no-longer pass 0
              for the horizontal alignment, since I removed that parameters.
      
              * rendering/RenderText.h: Changed QChar to UChar.
              * rendering/RenderText.cpp:
              (WebCore::characterBreakIterator): Update for name change.
              (WebCore::RenderText::RenderText): Ditto.
              (WebCore::RenderText::allAscii): Remove uneeded unicode() and allow the value
              U+007F to count as ASCII.
              (WebCore::RenderText::cacheWidths): Changed QChar to UChar.
              (WebCore::RenderText::widthFromCache): Changed code that deals with direction to
              use the ICU direction calls.
              (WebCore::RenderText::trimmedMinMaxWidth): Changed QChar to UChar.
              (WebCore::RenderText::calcMinMaxWidth): Ditto.
              (WebCore::RenderText::containsOnlyWhitespace): Ditto.
              (WebCore::RenderText::setText): Ditto.
              (WebCore::RenderText::width): Ditto.
      
              * rendering/RenderTextField.cpp:
              (WebCore::RenderTextField::updateFromElement): Removed unneeded QChar cast.
              (WebCore::RenderTextField::calcMinMaxWidth): Changed from QChar to UChar.
      
              * rendering/bidi.h:
              * rendering/bidi.cpp:
              (WebCore::BidiIterator::BidiIterator):
              (WebCore::BidiState::BidiState):
              (WebCore::BidiContext::BidiContext):
              (WebCore::bidiNext):
              (WebCore::bidiFirst):
              (WebCore::BidiIterator::current):
              (WebCore::BidiIterator::direction):
              (WebCore::addRun):
              (WebCore::checkMidpoints):
              (WebCore::appendRun):
              (WebCore::embed):
              (WebCore::RenderBlock::tabWidth):
              (WebCore::RenderBlock::computeHorizontalPositionsForLine):
              (WebCore::RenderBlock::bidiReorderLine):
              (WebCore::RenderBlock::layoutInlineChildren):
              (WebCore::skipNonBreakingSpace):
              (WebCore::RenderBlock::skipWhitespace):
              (WebCore::RenderBlock::findNextLineBreak):
              (WebCore::RenderBlock::checkLinesForTextOverflow):
              Changed from QChar to UChar and all direction from QChar constants to the
              ones from ICU.
      
              * rendering/render_form.cpp:
              (WebCore::RenderLineEdit::updateFromElement):
              (WebCore::RenderSelect::updateFromElement):
              (WebCore::RenderTextArea::updateFromElement):
              (WebCore::RenderTextArea::text):
              (WebCore::RenderTextArea::textWithHardLineBreaks):
              Got rid of now-unneeded QChar type casts.
      
              * rendering/render_line.cpp:
              (WebCore::InlineFlowBox::placeBoxesHorizontally): Updated for change from QChar
              to UChar.
              (WebCore::EllipsisBox::paint): Updated for unicode() -> characters() name change.
      
              * rendering/render_list.cpp:
              (WebCore::toRoman): Updated from QChar to UChar.
              (WebCore::toLetterString): Ditto.
              (WebCore::toHebrew): More of the same, also cleaned up the logic a bit.
              (WebCore::RenderListMarker::paint): Removed the alignment parameters from the
              various functions. Also removed all reliance on the width-measuring functions
              that take a string.
              (WebCore::RenderListMarker::calcMinMaxWidth): More of the same.
              (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14273 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7ab3109f
    • mjs's avatar
      JavaScriptCore: · bb863518
      mjs authored
              Rubber stamped by Anders.
              
              - renamed kxmlcore to wtf
              
              kxmlcore --> wtf
              KXMLCore --> WTF
              WKC --> WTF
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/c/c_instance.cpp:
              * bindings/objc/WebScriptObject.mm:
              * kjs/JSImmediate.h:
              * kjs/Parser.cpp:
              * kjs/Parser.h:
              * kjs/array_object.cpp:
              * kjs/collector.cpp:
              (KJS::Collector::registerThread):
              * kjs/collector.h:
              * kjs/config.h:
              * kjs/function.cpp:
              (KJS::isStrWhiteSpace):
              * kjs/function.h:
              * kjs/identifier.cpp:
              * kjs/internal.cpp:
              * kjs/internal.h:
              * kjs/lexer.cpp:
              (Lexer::shift):
              (Lexer::isWhiteSpace):
              (Lexer::isIdentStart):
              (Lexer::isIdentPart):
              * kjs/lookup.cpp:
              * kjs/nodes.cpp:
              * kjs/nodes.h:
              * kjs/number_object.cpp:
              * kjs/object.h:
              * kjs/property_map.cpp:
              * kjs/property_map.h:
              * kjs/string_object.cpp:
              (StringProtoFunc::callAsFunction):
              * kjs/testkjs.cpp:
              (testIsInteger):
              * kjs/ustring.cpp:
              * kjs/ustring.h:
              * kxmlcore: Removed.
              * kxmlcore/AlwaysInline.h: Removed.
              * kxmlcore/Assertions.cpp: Removed.
              * kxmlcore/Assertions.h: Removed.
              * kxmlcore/FastMalloc.cpp: Removed.
              * kxmlcore/FastMalloc.h: Removed.
              * kxmlcore/FastMallocInternal.h: Removed.
              * kxmlcore/Forward.h: Removed.
              * kxmlcore/HashCountedSet.h: Removed.
              * kxmlcore/HashFunctions.h: Removed.
              * kxmlcore/HashMap.h: Removed.
              * kxmlcore/HashSet.h: Removed.
              * kxmlcore/HashTable.cpp: Removed.
              * kxmlcore/HashTable.h: Removed.
              * kxmlcore/HashTraits.h: Removed.
              * kxmlcore/ListRefPtr.h: Removed.
              * kxmlcore/Noncopyable.h: Removed.
              * kxmlcore/OwnArrayPtr.h: Removed.
              * kxmlcore/OwnPtr.h: Removed.
              * kxmlcore/PassRefPtr.h: Removed.
              * kxmlcore/Platform.h: Removed.
              * kxmlcore/RefPtr.h: Removed.
              * kxmlcore/TCPageMap.h: Removed.
              * kxmlcore/TCSpinLock.h: Removed.
              * kxmlcore/TCSystemAlloc.cpp: Removed.
              * kxmlcore/TCSystemAlloc.h: Removed.
              * kxmlcore/UnusedParam.h: Removed.
              * kxmlcore/Vector.h: Removed.
              * kxmlcore/VectorTraits.h: Removed.
              * kxmlcore/unicode: Removed.
              * kxmlcore/unicode/Unicode.h: Removed.
              * kxmlcore/unicode/UnicodeCategory.h: Removed.
              * kxmlcore/unicode/icu: Removed.
              * kxmlcore/unicode/icu/UnicodeIcu.h: Removed.
              * kxmlcore/unicode/posix: Removed.
              * kxmlcore/unicode/qt3: Removed.
              * kxmlcore/unicode/qt4: Removed.
              * kxmlcore/unicode/qt4/UnicodeQt4.h: Removed.
              * pcre/pcre_get.c:
              * wtf: Added.
              * wtf/Assertions.cpp:
              * wtf/Assertions.h:
              * wtf/FastMalloc.cpp:
              (WTF::TCMalloc_ThreadCache::Scavenge):
              (WTF::do_malloc):
              (WTF::do_free):
              (WTF::TCMallocGuard::TCMallocGuard):
              (WTF::malloc):
              (WTF::free):
              (WTF::calloc):
              (WTF::cfree):
              (WTF::realloc):
              * wtf/FastMalloc.h:
              * wtf/FastMallocInternal.h:
              * wtf/Forward.h:
              * wtf/HashCountedSet.h:
              * wtf/HashFunctions.h:
              * wtf/HashMap.h:
              * wtf/HashSet.h:
              * wtf/HashTable.cpp:
              * wtf/HashTable.h:
              * wtf/HashTraits.h:
              * wtf/ListRefPtr.h:
              * wtf/Noncopyable.h:
              * wtf/OwnArrayPtr.h:
              * wtf/OwnPtr.h:
              * wtf/PassRefPtr.h:
              * wtf/RefPtr.h:
              * wtf/TCSystemAlloc.cpp:
              (TCMalloc_SystemAlloc):
              * wtf/Vector.h:
              * wtf/VectorTraits.h:
              * wtf/unicode/UnicodeCategory.h:
              * wtf/unicode/icu/UnicodeIcu.h:
      
      JavaScriptGlue:
      
              Rubber stamped by Anders.
              
              - renamed kxmlcore to wtf
              
              kxmlcore --> wtf
              KXMLCore --> WTF
              WKC --> WTF
      
              * config.h:
              * kxmlcore: Removed.
              * kxmlcore/AlwaysInline.h: Removed.
              * kxmlcore/Assertions.h: Removed.
              * kxmlcore/FastMalloc.h: Removed.
              * kxmlcore/Forward.h: Removed.
              * kxmlcore/HashCountedSet.h: Removed.
              * kxmlcore/HashSet.h: Removed.
              * kxmlcore/Noncopyable.h: Removed.
              * kxmlcore/OwnArrayPtr.h: Removed.
              * kxmlcore/OwnPtr.h: Removed.
              * kxmlcore/PassRefPtr.h: Removed.
              * kxmlcore/Platform.h: Removed.
              * kxmlcore/RefPtr.h: Removed.
              * kxmlcore/Vector.h: Removed.
              * wtf: Added.
      
      WebCore:
      
              Rubber stamped by Anders.
              
              - renamed kxmlcore to wtf
              
              kxmlcore --> wtf
              KXMLCore --> WTF
              WKC --> WTF
      
              * ForwardingHeaders/kxmlcore: Removed.
              * ForwardingHeaders/kxmlcore/AlwaysInline.h: Removed.
              * ForwardingHeaders/kxmlcore/Assertions.h: Removed.
              * ForwardingHeaders/kxmlcore/FastMalloc.h: Removed.
              * ForwardingHeaders/kxmlcore/Forward.h: Removed.
              * ForwardingHeaders/kxmlcore/HashCountedSet.h: Removed.
              * ForwardingHeaders/kxmlcore/HashMap.h: Removed.
              * ForwardingHeaders/kxmlcore/HashSet.h: Removed.
              * ForwardingHeaders/kxmlcore/HashTraits.h: Removed.
              * ForwardingHeaders/kxmlcore/Noncopyable.h: Removed.
              * ForwardingHeaders/kxmlcore/OwnArrayPtr.h: Removed.
              * ForwardingHeaders/kxmlcore/OwnPtr.h: Removed.
              * ForwardingHeaders/kxmlcore/PassRefPtr.h: Removed.
              * ForwardingHeaders/kxmlcore/Platform.h: Removed.
              * ForwardingHeaders/kxmlcore/RefPtr.h: Removed.
              * ForwardingHeaders/kxmlcore/Vector.h: Removed.
              * ForwardingHeaders/wtf: Added.
              * bindings/js/JSHTMLElementWrapperFactory.h:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOMImplementationFront.h:
              * bridge/JavaAppletWidget.h:
              * bridge/mac/WebCoreFrameNamespaces.mm:
              * bridge/mac/WebCorePageBridge.mm:
              (initializeLogChannel):
              * bridge/mac/WebCoreStringTruncator.mm:
              * bridge/mac/WebCoreViewFactory.m:
              * config.h:
              * css/css_base.h:
              * css/css_valueimpl.h:
              * css/csshelper.cpp:
              * css/cssparser.h:
              * dom/DOMImplementation.h:
              * dom/Document.h:
              * dom/NamedNodeMap.h:
              * dom/Node.h:
              * dom/NodeList.h:
              * dom/QualifiedName.cpp:
              * dom/Range.h:
              * dom/StyledElement.cpp:
              * dom/dom2_traversalimpl.h:
              * dom/xml_tokenizer.h:
              * editing/RebalanceWhitespaceCommand.cpp:
              * editing/RemoveCSSPropertyCommand.cpp:
              * editing/RemoveNodeAttributeCommand.cpp:
              * editing/RemoveNodeCommand.cpp:
              * editing/RemoveNodePreservingChildrenCommand.cpp:
              * editing/ReplaceSelectionCommand.h:
              * editing/Selection.cpp:
              * editing/SetNodeAttributeCommand.cpp:
              * editing/SplitElementCommand.cpp:
              * editing/SplitTextNodeCommand.cpp:
              * editing/SplitTextNodeContainingElementCommand.cpp:
              * editing/TextIterator.h:
              * editing/htmlediting.h:
              * editing/markup.h:
              * html/CanvasGradient.h:
              * html/CanvasRenderingContext2D.h:
              * html/CanvasStyle.cpp:
              * html/HTMLCollection.h:
              * html/HTMLElementFactory.h:
              * kcanvas/KCanvasFilters.cpp:
              * kcanvas/KCanvasPath.h:
              * kcanvas/RenderPath.cpp:
              * kcanvas/RenderSVGImage.cpp:
              * kcanvas/RenderSVGText.cpp:
              * kcanvas/device/quartz/KCanvasItemQuartz.mm:
              * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
              * kcanvas/device/quartz/QuartzSupport.mm:
              * ksvg2/misc/KSVGTimeScheduler.h:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/scripts/make_names.pl:
              * ksvg2/svg/SVGDOMImplementation.cpp:
              * ksvg2/svg/SVGExternalResourcesRequired.h:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGMaskElement.cpp:
              * ksvg2/svg/SVGStyledElement.cpp:
              * ksvg2/svg/SVGTests.h:
              * ksvg2/svg/SVGTransform.h:
              * ksvg2/svg/SVGTransformable.cpp:
              * kwq/AccessibilityObjectCache.h:
              * kwq/KWQCString.cpp:
              * kwq/KWQFormData.mm:
              * kwq/KWQListBox.mm:
              * kwq/KWQResourceLoader.mm:
              * kwq/KWQTextEdit.mm:
              * loader/Cache.h:
              * loader/CachedObject.h:
              * loader/CachedObjectClientWalker.h:
              * loader/Decoder.h:
              * loader/DocLoader.h:
              * loader/loader.cpp:
              * loader/loader.h:
              * page/DOMWindow.h:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameTree.cpp:
              * page/Page.cpp:
              * page/Page.h:
              * page/Plugin.h:
              * platform/Arena.cpp:
              * platform/ArrayImpl.h:
              * platform/AtomicString.cpp:
              * platform/CharsetNames.cpp:
              * platform/Color.cpp:
              * platform/DeprecatedPtrListImpl.cpp:
              * platform/DeprecatedValueListImpl.h:
              * platform/FontFallbackList.h:
              * platform/GraphicsContext.h:
              * platform/GraphicsTypes.cpp:
              * platform/Image.h:
              * platform/KURL.cpp:
              * platform/Logging.cpp:
              * platform/Logging.h:
              * platform/PlatformString.h:
              * platform/PlugInInfoStore.h:
              * platform/StreamingTextDecoder.cpp:
              * platform/StreamingTextDecoder.h:
              * platform/String.cpp:
              * platform/StringHash.h:
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/TextEncoding.cpp:
              * platform/Timer.cpp:
              * platform/Timer.h:
              * platform/TransferJob.h:
              * platform/TransferJobInternal.h:
              * platform/mac/BlockExceptions.mm:
              * platform/mac/ColorMac.mm:
              * platform/mac/FontData.mm:
              * platform/mac/KURLMac.mm:
              * platform/mac/QStringMac.mm:
              * platform/mac/SharedTimerMac.cpp:
              * platform/mac/TextEncodingMac.cpp:
              * platform/mac/WebCoreImageRendererFactory.m:
              * platform/mac/WebCoreKeyGenerator.m:
              * platform/mac/WebCoreTextArea.mm:
              * platform/mac/WebCoreTextField.mm:
              * platform/mac/WebTextRendererFactory.h:
              * platform/mac/WebTextRendererFactory.mm:
              * platform/win/TemporaryLinkStubs.cpp:
              (JavaAppletWidget::JavaAppletWidget):
              * rendering/InlineTextBox.cpp:
              * rendering/RenderText.cpp:
              * rendering/RenderTreeAsText.cpp:
              * rendering/bidi.cpp:
              * xml/XSLTProcessor.h:
              * xpath/impl/XPathExpressionNode.h:
              * xpath/impl/XPathParser.h:
              * xpath/impl/XPathPath.h:
              * xpath/impl/XPathUtil.h:
      
      WebKit:
      
              Rubber stamped by Anders.
              
              - renamed kxmlcore to wtf
              
              kxmlcore --> wtf
              KXMLCore --> WTF
              WKC --> WTF
      
              * Misc/WebKitLogging.h:
              * Misc/WebKitLogging.m:
              (initializeLogChannel):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14256 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb863518
  26. 13 Apr, 2006 1 commit
    • ap's avatar
      WebCore: · f3a35d35
      ap authored
              Reviewed by Darin.
      
              - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7602
              Only use fixupChar for entities
      
              * html/HTMLTokenizer.cpp: Only use fixUpChar() when handling entities.
              (WebCore::HTMLTokenizer::parseSpecial):
              (WebCore::HTMLTokenizer::parseText):
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::write):
              * platform/StreamingTextDecoder.cpp:
              (WebCore::StreamingTextDecoder::convert): Remove the special case for Latin-1, because it is already handled 
              via effectiveEncoding().
              * platform/StreamingTextDecoder.h: Remove convertLatin1().
      
      LayoutTests:
              Tests that Latin-1 is handled as windows-1252
              (see http://bugzilla.opendarwin.org/show_bug.cgi?id=7602). Some existing tests
              already did cover this, but only indirectly.
      
              * fast/encoding/latin1-winlatin-expected.txt: Added.
              * fast/encoding/latin1-winlatin.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13863 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f3a35d35
  27. 11 Apr, 2006 1 commit
    • darin's avatar
      JavaScriptCore: · 36d1136a
      darin authored
              Rubber-stamped by John Sullivan.
      
              - switched from a shell script to a makefile for generated files
              - removed lots of unneeded includes
              - added new Forward.h and HashForward.h headers that allow compiling with
                fewer unneeded templates
      
              * DerivedSources.make: Added.
              * generate-derived-sources: Removed.
              * JavaScriptCore.xcodeproj/project.pbxproj: Added new files, changed to use
              DerivedSources.make.
      
              * kxmlcore/Forward.h: Added.
              * kxmlcore/HashForward.h: Added.
      
              * kxmlcore/HashCountedSet.h: Include HashForward for default args.
              * kxmlcore/HashMap.h: Ditto.
              * kxmlcore/HashSet.h: Ditto.
      
              * kjs/object.h:
              * kjs/object.cpp:
              Moved KJS_MAX_STACK into the .cpp file.
      
              * bindings/NP_jsobject.cpp:
              * bindings/c/c_instance.h:
              * bindings/jni/jni_class.h:
              * bindings/jni/jni_runtime.h:
              * bindings/jni/jni_utility.h:
              * bindings/objc/WebScriptObject.mm:
              * bindings/objc/WebScriptObjectPrivate.h:
              * bindings/objc/objc_class.h:
              * bindings/objc/objc_class.mm:
              * bindings/objc/objc_instance.h:
              * bindings/objc/objc_instance.mm:
              * bindings/objc/objc_runtime.mm:
              * bindings/objc/objc_utility.mm:
              * bindings/runtime.h:
              * bindings/runtime_array.cpp:
              * bindings/runtime_array.h:
              * bindings/runtime_method.cpp:
              * bindings/runtime_method.h:
              * bindings/runtime_object.cpp:
              * bindings/runtime_root.h:
              * kjs/JSImmediate.cpp:
              * kjs/Parser.h:
              * kjs/array_object.cpp:
              * kjs/array_object.h:
              * kjs/bool_object.cpp:
              * kjs/bool_object.h:
              * kjs/collector.h:
              * kjs/context.h:
              * kjs/debugger.cpp:
              * kjs/error_object.h:
              * kjs/function_object.h:
              * kjs/internal.h:
              * kjs/lexer.cpp:
              * kjs/math_object.cpp:
              * kjs/math_object.h:
              * kjs/nodes.cpp:
              * kjs/nodes.h:
              * kjs/number_object.cpp:
              * kjs/number_object.h:
              * kjs/object_object.cpp:
              * kjs/operations.cpp:
              * kjs/protected_reference.h:
              * kjs/reference.h:
              * kjs/reference_list.h:
              * kjs/regexp_object.h:
              * kjs/string_object.cpp:
              * kjs/string_object.h:
              * kjs/testkjs.cpp:
              * kjs/value.cpp:
              * kjs/value.h:
              * kxmlcore/HashTable.h:
              * kxmlcore/ListRefPtr.h:
              * kxmlcore/TCPageMap.h:
              * kxmlcore/Vector.h:
              Removed unneeded header includes.
      
      JavaScriptGlue:
      
              Rubber-stamped by John Sullivan.
      
              - added forwarding headers for the new Forward.h and HashForward.h files
      
              * kxmlcore/Forward.h: Added.
              * kxmlcore/HashForward.h: Added.
      
      WebCore:
      
              Rubber-stamped by John Sullivan (except for pbxproj change).
      
              - updated to use the new Forward.h and HashForward.h headers
              - moved the showTree debugging functions out of the WebCore
                namespace so they are easier to call from gdb, and renamed
                the showTree member functions so they don't get in the way;
                now you can do "call showTree(x)" in gdb and it just works
              - removed a lot of unneeded includes
      
              * WebCore.xcodeproj/project.pbxproj: Fixed a lot of paths that
              were not relative to the enclosing group.
      
              * ForwardingHeaders/kxmlcore/Forward.h: Added.
              * ForwardingHeaders/kxmlcore/HashForward.h: Added.
              * bindings/js/JSCanvasRenderingContext2DBase.cpp:
              * bindings/js/JSXMLHttpRequest.cpp:
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.cpp:
              * bindings/js/kjs_navigator.cpp:
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_proxy.cpp:
              * bindings/js/kjs_traversal.h:
              * bindings/js/kjs_window.cpp:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOM.mm:
              * bindings/objc/DOMCSS.mm:
              * bindings/objc/DOMCore.h:
              * bindings/objc/DOMEvents.mm:
              * bindings/objc/DOMHTML.mm:
              * bindings/objc/DOMImplementationFront.h:
              * bindings/objc/DOMInternal.mm:
              * bindings/objc/DOMUtility.mm:
              * bindings/objc/DOMViews.mm:
              * bridge/BrowserExtension.h:
              * bridge/mac/BrowserExtensionMac.mm:
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * bridge/mac/WebCoreFrameNamespaces.mm:
              * bridge/mac/WebCoreJavaScript.mm:
              * bridge/win/PageWin.cpp:
              * css/CSSComputedStyleDeclaration.cpp:
              * css/css_base.h:
              * css/css_ruleimpl.h:
              * css/css_valueimpl.cpp:
              * css/cssparser.cpp:
              * css/cssparser.h:
              * css/cssstyleselector.cpp:
              * css/cssstyleselector.h:
              * dom/AbstractView.h:
              * dom/AtomicStringList.h:
              * dom/Attribute.cpp:
              * dom/Attribute.h:
              * dom/Comment.cpp:
              * dom/ContainerNode.cpp:
              * dom/DOMImplementation.cpp:
              * dom/DOMImplementation.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/Element.h:
              * dom/EventTargetNode.cpp:
              (WebCore::EventTargetNode::dump):
              (WebCore::forbidEventDispatch):
              (WebCore::allowEventDispatch):
              (WebCore::eventDispatchForbidden):
              * dom/EventTargetNode.h:
              (WebCore::EventTargetNode::postDispatchEventHandler):
              * dom/NamedAttrMap.h:
              * dom/Node.cpp:
              (WebCore::Node::showNode):
              (WebCore::Node::showTree):
              (WebCore::Node::showTreeAndMark):
              (showTree):
              * dom/Node.h:
              * dom/NodeList.cpp:
              * dom/NodeList.h:
              * dom/Position.cpp:
              (showTree):
              * dom/Position.h:
              * dom/Range.cpp:
              * dom/Range.h:
              * dom/StyledElement.cpp:
              * dom/StyledElement.h:
              * dom/dom2_eventsimpl.cpp:
              * dom/dom2_eventsimpl.h:
              * dom/dom2_traversalimpl.h:
              * dom/dom_xmlimpl.cpp:
              * dom/xml_tokenizer.cpp:
              * dom/xml_tokenizer.h:
              * editing/AppendNodeCommand.cpp:
              * editing/ApplyStyleCommand.cpp:
              * editing/ApplyStyleCommand.h:
              * editing/BreakBlockquoteCommand.cpp:
              * editing/CompositeEditCommand.cpp:
              * editing/CreateLinkCommand.cpp:
              * editing/DeleteFromTextNodeCommand.cpp:
              * editing/DeleteFromTextNodeCommand.h:
              * editing/DeleteSelectionCommand.cpp:
              * editing/EditCommand.cpp:
              * editing/EditCommand.h:
              * editing/HTMLInterchange.cpp:
              * editing/InsertIntoTextNodeCommand.cpp:
              * editing/InsertIntoTextNodeCommand.h:
              * editing/InsertLineBreakCommand.cpp:
              * editing/InsertNodeBeforeCommand.cpp:
              * editing/InsertParagraphSeparatorCommand.cpp:
              * editing/InsertTextCommand.cpp:
              * editing/JSEditor.cpp:
              * editing/JoinTextNodesCommand.cpp:
              * editing/MergeIdenticalElementsCommand.cpp:
              * editing/ModifySelectionListLevelCommand.cpp:
              * editing/MoveSelectionCommand.cpp:
              * editing/RebalanceWhitespaceCommand.h:
              * editing/RemoveCSSPropertyCommand.h:
              * editing/ReplaceSelectionCommand.cpp:
              * editing/ReplaceSelectionCommand.h:
              * editing/Selection.cpp:
              (WebCore::Selection::formatForDebugger):
              (WebCore::Selection::showTree):
              (showTree):
              * editing/Selection.h:
              * editing/SelectionController.cpp:
              (WebCore::SelectionController::formatForDebugger):
              (WebCore::SelectionController::showTree):
              (showTree):
              * editing/SelectionController.h:
              * editing/TextIterator.cpp:
              * editing/TextIterator.h:
              * editing/TypingCommand.cpp:
              * editing/TypingCommand.h:
              * editing/UnlinkCommand.cpp:
              * editing/VisiblePosition.cpp:
              (WebCore::isEqualIgnoringAffinity):
              (WebCore::VisiblePosition::formatForDebugger):
              (WebCore::VisiblePosition::showTree):
              (showTree):
              * editing/VisiblePosition.h:
              (WebCore::VisiblePosition::VisiblePosition):
              (WebCore::operator==):
              * editing/WrapContentsInDummySpanCommand.cpp:
              * editing/htmlediting.h:
              * editing/markup.cpp:
              * editing/markup.h:
              (WebCore::):
              * editing/visible_units.cpp:
              * html/CanvasGradient.cpp:
              * html/CanvasRenderingContext2D.h:
              * html/CanvasStyle.cpp:
              * html/CanvasStyle.h:
              * html/FormDataList.cpp:
              * html/FormDataList.h:
              * html/HTMLCollection.cpp:
              * html/HTMLCollection.h:
              * html/HTMLDocument.cpp:
              * html/HTMLDocument.h:
              * html/HTMLElement.cpp:
              * html/HTMLElementFactory.cpp:
              * html/HTMLElementFactory.h:
              * html/HTMLFormCollection.cpp:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLInputElement.cpp:
              * html/HTMLParser.cpp:
              * html/HTMLSelectElement.cpp:
              * html/HTMLSelectElement.h:
              * html/HTMLTokenizer.cpp:
              * html/HTMLTokenizer.h:
              * html/html_baseimpl.cpp:
              * html/html_headimpl.h:
              * kcanvas/KCanvasCreator.cpp:
              * kcanvas/KCanvasFilters.h:
              * kcanvas/KCanvasPath.h:
              * kcanvas/KCanvasResources.h:
              * kcanvas/KCanvasTreeDebug.cpp:
              * kcanvas/RenderPath.cpp:
              * kcanvas/RenderPath.h:
              * kcanvas/device/KRenderingDevice.h:
              * kcanvas/device/KRenderingPaintServerGradient.h:
              * kcanvas/device/KRenderingPaintServerPattern.h:
              * kcanvas/device/KRenderingPaintServerSolid.h:
              * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
              * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
              * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
              * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
              * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
              * khtml/misc/decoder.cpp:
              * khtml/misc/decoder.h:
              * khtml/xsl/XSLStyleSheet.cpp:
              * khtml/xsl/XSLTProcessor.cpp:
              * khtml/xsl/XSLTProcessor.h:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/ecma/GlobalObject.cpp:
              * ksvg2/misc/KCanvasRenderingStyle.h:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/svg/SVGAngle.h:
              * ksvg2/svg/SVGAnimateColorElement.h:
              * ksvg2/svg/SVGAnimatedColor.h:
              * ksvg2/svg/SVGAnimatedLengthList.h:
              * ksvg2/svg/SVGAnimatedNumberList.h:
              * ksvg2/svg/SVGAnimatedString.h:
              * ksvg2/svg/SVGAnimatedTransformList.h:
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGColor.h:
              * ksvg2/svg/SVGCursorElement.h:
              * ksvg2/svg/SVGHelper.h:
              * ksvg2/svg/SVGLength.h:
              * ksvg2/svg/SVGList.h:
              * ksvg2/svg/SVGPaint.h:
              * ksvg2/svg/SVGPathSeg.h:
              * ksvg2/svg/SVGPatternElement.h:
              * ksvg2/svg/SVGSVGElement.cpp:
              * ksvg2/svg/SVGSVGElement.h:
              * ksvg2/svg/SVGStringList.h:
              * ksvg2/svg/SVGTransform.h:
              * kwq/AccessibilityObjectCache.mm:
              * kwq/ClipboardMac.mm:
              * kwq/JavaAppletWidget.mm:
              * kwq/KWQComboBox.mm:
              * kwq/KWQEditCommand.mm:
              * kwq/KWQFileButton.mm:
              * kwq/KWQKHTMLSettings.h:
              * kwq/KWQKSSLKeyGen.mm:
              * kwq/KWQLoader.mm:
              * kwq/KWQPageState.mm:
              * kwq/KWQTextEdit.mm:
              * kwq/RegularExpression.h:
              * kwq/RenderTreeAsText.cpp:
              * kwq/RenderTreeAsText.h:
              * kwq/WebCoreAXObject.mm:
              * loader/Cache.cpp:
              * loader/Cache.h:
              * loader/CachedCSSStyleSheet.cpp:
              * loader/CachedObject.h:
              * loader/CachedScript.cpp:
              * loader/CachedXBLDocument.cpp:
              * loader/CachedXBLDocument.h:
              * loader/CachedXSLStyleSheet.cpp:
              * loader/CachedXSLStyleSheet.h:
              * loader/DocLoader.cpp:
              * page/Frame.cpp:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameTree.cpp:
              * page/FrameTree.h:
              * page/FrameView.cpp:
              * page/FrameView.h:
              * page/Page.cpp:
              * page/Page.h:
              * page/Plugin.h:
              (WebCore::Plugin::Plugin):
              (WebCore::Plugin::view):
              * platform/Color.cpp:
              * platform/FloatRect.h:
              * platform/Font.cpp:
              * platform/Font.h:
              * platform/FontFamily.cpp:
              * platform/GraphicsContext.cpp:
              * platform/Image.cpp:
              * platform/Image.h:
              * platform/IntRect.h:
              * platform/KURL.cpp:
              * platform/KURL.h:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/StreamingTextDecoder.cpp:
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/TextEncoding.h:
              * platform/Timer.cpp:
              * platform/Timer.h:
              * platform/TransferJob.cpp:
              * platform/TransferJob.h:
              * platform/TransferJobInternal.h:
              * platform/cairo/GraphicsContextCairo.cpp:
              * platform/cairo/ImageCairo.cpp:
              * platform/cairo/ImageSourceCairo.cpp:
              * platform/image-decoders/gif/GIFImageReader.cpp:
              * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
              * platform/mac/FontFamilyMac.mm:
              * platform/mac/FontMac.mm:
              * platform/mac/ImageMac.mm:
              * platform/mac/TextEncodingMac.cpp:
              * platform/mac/TransferJobMac.mm:
              * platform/win/FontPlatformDataWin.cpp:
              * platform/win/TransferJobWin.cpp:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBlock.h:
              * rendering/RenderBox.cpp:
              * rendering/RenderBox.h:
              * rendering/RenderCanvas.cpp:
              * rendering/RenderCanvas.h:
              * rendering/RenderContainer.cpp:
              * rendering/RenderFlexibleBox.h:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFlow.h:
              * rendering/RenderImage.cpp:
              * rendering/RenderImage.h:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayer.h:
              * rendering/RenderObject.cpp:
              (showTree):
              * rendering/RenderObject.h:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextField.cpp:
              * rendering/RenderTextFragment.h:
              * rendering/RenderTheme.h:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderThemeWin.cpp:
              * rendering/bidi.cpp:
              * rendering/render_form.h:
              * rendering/render_line.cpp:
              (showTree):
              * rendering/render_line.h:
              * rendering/render_list.cpp:
              * rendering/render_replaced.cpp:
              * rendering/render_replaced.h:
              * rendering/render_style.cpp:
              * rendering/render_style.h:
              * xml/xmlhttprequest.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36d1136a
  28. 19 Mar, 2006 1 commit
  29. 27 Feb, 2006 5 commits
    • eseidel's avatar
      2006-02-27 Eric Seidel <eseidel@apple.com> · 070491d1
      eseidel authored
              Reviewed by darin.
      
              Build fix: cast to unsigned from size_t.
      
              * platform/StreamingTextDecoder.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13013 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      070491d1
    • mjs's avatar
      - use proper header for std::min. · 0266ac14
      mjs authored
              * platform/StreamingTextDecoder.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13011 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0266ac14
    • mjs's avatar
      Reviewed by Darin. · 0908026c
      mjs authored
              - add new TextEncoding stuff to win32 build
              http://bugzilla.opendarwin.org/show_bug.cgi?id=7491
      
              * WebCore.vcproj/WebCore/WebCore.vcproj:
              * WebCore.vcproj/WebCore/build-generated-files.sh:
              * platform/StreamingTextDecoder.cpp:
              (WebCore::StreamingTextDecoder::convertUTF16):
              * platform/TextEncoding.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0908026c
    • mjs's avatar
      - fix debug build (broken by my last commit) · 50f32109
      mjs authored
              * platform/StreamingTextDecoder.cpp:
              (WebCore::StreamingTextDecoder::createICUConverter):
              (WebCore::StreamingTextDecoder::convertUsingICU):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13003 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      50f32109
    • mjs's avatar
      Reviewed by Darin. · 4235891a
      mjs authored
              - platformize KWQTextCodec
              http://bugzilla.opendarwin.org/show_bug.cgi?id=7487
              
              I renamed QTextCodec to TextEncoding and QTextDecoder to
              StreamingTextDecoder. I also made a bunch of other changes to make
              the API more sensible.
              
              * ForwardingHeaders/qtextcodec.h: Removed.
              * WebCore.xcodeproj/project.pbxproj:
              * bridge/mac/MacFrame.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge URLWithAttributeString:]):
              (-[WebCoreFrameBridge textEncoding]):
              (+[WebCoreFrameBridge stringWithData:textEncoding:]):
              (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
              * dom/DocumentImpl.cpp:
              (WebCore::DocumentImpl::completeURL):
              * khtml/ecma/kjs_dom.cpp:
              (KJS::DOMDocument::getValueProperty):
              (KJS::DOMDocument::putValueProperty):
              * khtml/html/FormDataList.cpp:
              (DOM::FormDataList::FormDataList):
              (DOM::FormDataList::appendString):
              * khtml/html/FormDataList.h:
              * khtml/html/HTMLFormElementImpl.cpp:
              (WebCore::HTMLFormElementImpl::HTMLFormElementImpl):
              (WebCore::HTMLFormElementImpl::formData):
              * khtml/html/htmltokenizer.cpp:
              * khtml/misc/decoder.cpp:
              (Decoder::Decoder):
              (Decoder::setEncodingName):
              (Decoder::encodingName):
              (Decoder::decode):
              * khtml/misc/decoder.h:
              (khtml::Decoder::):
              (khtml::Decoder::visuallyOrdered):
              (khtml::Decoder::encoding):
              * khtml/xsl/xslt_processorimpl.cpp:
              (DOM::XSLTProcessorImpl::createDocumentFromSource):
              * kwq/KWQCharsets.cpp: Removed.
              * kwq/KWQCharsets.h: Removed.
              * kwq/KWQTextCodec.cpp: Removed.
              * kwq/KWQTextCodec.h: Removed.
              * kwq/WebCoreTextDecoder.h:
              * kwq/WebCoreTextDecoder.mm:
              * kwq/can-convert.mm: Removed.
              * kwq/character-sets.txt: Removed.
              * kwq/mac-encodings.txt: Removed.
              * kwq/make-charset-table.pl: Removed.
              * loader/CachedCSSStyleSheet.cpp:
              (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
              (WebCore::CachedCSSStyleSheet::setCharset):
              (WebCore::CachedCSSStyleSheet::data):
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedScript.cpp:
              (WebCore::CachedScript::CachedScript):
              (WebCore::CachedScript::setCharset):
              (WebCore::CachedScript::data):
              * loader/CachedScript.h:
              * loader/CachedXSLStyleSheet.cpp:
              (WebCore::CachedXSLStyleSheet::setCharset):
              * page/Frame.cpp:
              (WebCore::Frame::write):
              (WebCore::Frame::gotoAnchor):
              (WebCore::Frame::encoding):
              (WebCore::Frame::backslashAsCurrencySymbol):
              * platform/CharsetNames.cpp: Added.
              (KXMLCore::):
              (WebCore::EncodingHash::equal):
              (WebCore::EncodingHash::hash):
              (WebCore::buildDictionaries):
              (WebCore::textEncodingIDFromCharsetName):
              (WebCore::charsetNameFromTextEncodingID):
              * platform/CharsetNames.h: Added.
              * platform/KURL.cpp:
              (KURL::KURL):
              (KURL::decode_string):
              (encodeRelativeString):
              * platform/KURL.h:
              * platform/QString.cpp:
              (QString::fromUtf8):
              * platform/StreamingTextDecoder.cpp: Added.
              (WebCore::StreamingTextDecoder::StreamingTextDecoder):
              (WebCore::StreamingTextDecoder::convertLatin1):
              (WebCore::StreamingTextDecoder::~StreamingTextDecoder):
              (WebCore::StreamingTextDecoder::convertUTF16):
              (WebCore::effectiveEncoding):
              (WebCore::StreamingTextDecoder::createICUConverter):
              (WebCore::unwanted):
              (WebCore::StreamingTextDecoder::appendOmittingUnwanted):
              (WebCore::StreamingTextDecoder::convertUsingICU):
              (WebCore::StreamingTextDecoder::convert):
              (WebCore::StreamingTextDecoder::toUnicode):
              * platform/StreamingTextDecoder.h: Added.
              (WebCore::StreamingTextDecoder::convert):
              * platform/TextEncoding.cpp: Added.
              (WebCore::TextEncoding::TextEncoding):
              (WebCore::TextEncoding::name):
              (WebCore::effectiveEncoding):
              (WebCore::TextEncoding::backslashAsCurrencySymbol):
              (WebCore::TextEncoding::toUnicode):
              * platform/TextEncoding.h: Added.
              (WebCore::):
              (WebCore::TextEncoding::):
              (WebCore::TextEncoding::TextEncoding):
              (WebCore::TextEncoding::isValid):
              (WebCore::TextEncoding::usesVisualOrdering):
              (WebCore::TextEncoding::isJapanese):
              (WebCore::TextEncoding::encodingID):
              (WebCore::TextEncoding::flags):
              (WebCore::operator==):
              (WebCore::operator!=):
              * platform/character-sets.txt: Added.
              * platform/mac/ExtraCFEncodings.h: Added.
              * platform/mac/QStringMac.mm:
              * platform/mac/TextEncodingMac.cpp: Added.
              (WebCore::effectiveEncoding):
              (WebCore::TextEncoding::fromUnicode):
              * platform/mac/can-convert.mm: Added.
              * platform/mac/mac-encodings.txt: Added.
              * platform/make-charset-table.pl: Added.
              * platform/win/win-encodings.txt: Added.
              * rendering/render_object.cpp:
              (WebCore::RenderObject::backslashAsCurrencySymbol):
              * xml/xmlhttprequest.cpp:
              (WebCore::XMLHttpRequest::send):
              (WebCore::XMLHttpRequest::slotData):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13002 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4235891a