1. 01 Sep, 2008 6 commits
    • weinig@apple.com's avatar
      2008-09-01 Geoffrey Garen <ggaren@apple.com> · 6976c61b
      weinig@apple.com authored
              Reviewed by Sam Weinig.
      
              Eagerly allocate the Math object's numeric constants. This avoids
              constantly reallocating them in loops, and also ensures that the Math
              object will not use the single property optimization, which makes
              properties ineligible for caching.
      
              SunSpider reports a small speedup, in combination with inline caching.
      
              * kjs/MathObject.cpp:
              (KJS::MathObject::MathObject):
              (KJS::MathObject::getOwnPropertySlot):
              * kjs/MathObject.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36015 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6976c61b
    • jmalonzo@webkit.org's avatar
      2008-09-01 Jan Michael Alonzo <jmalonzo@webkit.org> · f91a46b0
      jmalonzo@webkit.org authored
              Gtk build fix, not reviewed.
      
              * GNUmakefile.am: Add SmallStrings.cpp in both release and debug builds
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f91a46b0
    • cwzwarich@webkit.org's avatar
      2008-09-01 Cameron Zwarich <cwzwarich@uwaterloo.ca> · f676a7ee
      cwzwarich@webkit.org authored
              Not reviewed.
      
              Fix a typo in the ChangeLog for r36009.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36013 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f676a7ee
    • jmalonzo@webkit.org's avatar
      2008-09-01 Alp Toker <alp@nuanti.com> · 93f5bf2f
      jmalonzo@webkit.org authored
              Reviewed by Eric Seidel.
      
              https://bugs.webkit.org/show_bug.cgi?id=19939
              [GTK] webkit_web_history_item_get_title() fails with assertion
      
              Make sure newly constructed WebHistoryItem objects wrap a WebCore
              history item when necessary. Avoid G_PARAM_CONSTRUCT since it destroys
              history data -- use WEBKIT_PARAM flags instead as they do the right
              thing. This restores history functionality.
      
              Also use CString to simplify UTF-8 string management.
      
              * webkit/webkitwebbackforwardlist.cpp:
              (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
              (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
              No need to initialize the vector with a size since it's cleared by the
              callee.
              * webkit/webkitwebhistoryitem.cpp:
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_finalize):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_uri):
              (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36012 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      93f5bf2f
    • jmalonzo@webkit.org's avatar
      2008-09-01 Dirk Schulze <vbs85@gmx.de> · 37f07881
      jmalonzo@webkit.org authored
              Reviewed by Eric Seidel.
      
              Fixed border-radius for Cairo.
      
              * platform/graphics/cairo/GraphicsContextCairo.cpp:
              (WebCore::GraphicsContext::strokeArc):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36011 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37f07881
    • jmalonzo@webkit.org's avatar
      2008-09-01 Dirk Schulze <vbs85@gmx.de> · 1f770ba7
      jmalonzo@webkit.org authored
              Reviewed by Eric Seidel.
      
              Added canvas's globalAlpha to cairo.
      
              * platform/graphics/GraphicsContext.h:
              * platform/graphics/cairo/GraphicsContextCairo.cpp:
              (WebCore::GraphicsContext::fillPath):
              (WebCore::GraphicsContext::strokePath):
              (WebCore::GraphicsContext::setAlpha):
              (WebCore::GraphicsContext::getAlpha):
              * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
              (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
              * platform/graphics/cairo/ImageCairo.cpp:
              (WebCore::BitmapImage::draw):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f770ba7
  2. 31 Aug, 2008 4 commits
    • cwzwarich@webkit.org's avatar
      2008-08-31 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 5b758c45
      cwzwarich@webkit.org authored
              Reviewed by Maciej Stachowiak.
      
              Bug 20577: REGRESSION (r35006): Gmail is broken
              <https://bugs.webkit.org/show_bug.cgi?id=20577>
      
              r35006 changed stringProtoFuncSubstr() so that it is uses the more
              efficient jsSubstring(), rather than using UString::substr() and then
              calling jsString(). However, the change did not account for the case
              where the start and the length of the substring extend beyond the length
              of the original string. This patch corrects that.
      
              JavaScriptCore:
      
              * kjs/StringPrototype.cpp:
              (KJS::stringProtoFuncSubstr):
      
              LayoutTests:
      
              * fast/js/resources/string-substr.js: Added.
              * fast/js/string-substr-expected.txt: Added.
              * fast/js/string-substr.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36009 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b758c45
    • hausmann@webkit.org's avatar
      2008-08-31 Simon Hausmann <hausmann@webkit.org> · ecd099d4
      hausmann@webkit.org authored
              Unreviewed Qt build fix.
      
              * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
              the .h file
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ecd099d4
    • hausmann@webkit.org's avatar
      2008-08-31 Simon Hausmann <hausmann@wekit.org> · 88aa78ad
      hausmann@webkit.org authored
              Unreviewed build fix (with gcc 4.3)
      
              * kjs/ustring.h: Properly forward declare operator== for UString and
              the the concatenate functions inside the KJS namespace.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      88aa78ad
    • darin@apple.com's avatar
      JavaScriptCore: · e794585e
      darin@apple.com authored
      2008-08-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - https://bugs.webkit.org/show_bug.cgi?id=20333
                improve JavaScript speed when handling single-character strings
      
              1.035x as fast on SunSpider overall.
              1.127x as fast on SunSpider string tests.
              1.910x as fast on SunSpider string-base64 test.
      
              * API/JSObjectRef.cpp:
              (JSObjectMakeFunction): Removed unneeded explicit construction of UString.
      
              * GNUmakefile.am: Added SmallStrings.h and SmallStrings.cpp.
              * JavaScriptCore.pri: Ditto.
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              Ditto.
              * JavaScriptCore.xcodeproj/project.pbxproj: Ditto.
              * JavaScriptCoreSources.bkl: Ditto.
      
              * JavaScriptCore.exp: Updated.
      
              * VM/Machine.cpp:
              (KJS::jsAddSlowCase): Changed to use a code path that doesn't involve
              a UString constructor. This avoids an extra jump caused by the "in charge"
              vs. "not in charge" constructors.
              (KJS::jsAdd): Ditto.
              (KJS::jsTypeStringForValue): Adopted jsNontrivialString.
      
              * kjs/ArrayPrototype.cpp:
              (KJS::arrayProtoFuncToString): Adopted jsEmptyString.
              (KJS::arrayProtoFuncToLocaleString): Ditto.
              (KJS::arrayProtoFuncJoin): Ditto.
              * kjs/BooleanPrototype.cpp:
              (KJS::booleanProtoFuncToString): Adopted jsNontrivialString.
              * kjs/DateConstructor.cpp:
              (KJS::callDate): Ditto.
              * kjs/DatePrototype.cpp:
              (KJS::formatLocaleDate): Adopted jsEmptyString and jsNontrivialString.
              (KJS::dateProtoFuncToString): Ditto.
              (KJS::dateProtoFuncToUTCString): Ditto.
              (KJS::dateProtoFuncToDateString): Ditto.
              (KJS::dateProtoFuncToTimeString): Ditto.
              (KJS::dateProtoFuncToLocaleString): Ditto.
              (KJS::dateProtoFuncToLocaleDateString): Ditto.
              (KJS::dateProtoFuncToLocaleTimeString): Ditto.
              (KJS::dateProtoFuncToGMTString): Ditto.
      
              * kjs/ErrorPrototype.cpp:
              (KJS::ErrorPrototype::ErrorPrototype): Ditto.
              (KJS::errorProtoFuncToString): Ditto.
      
              * kjs/JSGlobalData.h: Added SmallStrings.
      
              * kjs/JSString.cpp:
              (KJS::jsString): Eliminated the overload that takes a const char*.
              Added code to use SmallStrings to get strings of small sizes rather
              than creating a new JSString every time.
              (KJS::jsSubstring): Added. Used when creating a string from a substring
              to avoid creating a JSString in cases where the substring will end up
              empty or as one character.
              (KJS::jsOwnedString): Added the same code as in jsString.
      
              * kjs/JSString.h: Added new functions jsEmptyString, jsSingleCharacterString,
              jsSingleCharacterSubstring, jsSubstring, and jsNontrivialString for various
              cases where we want to create JSString, and want special handling for small
              strings.
              (KJS::JSString::JSString): Added an overload that takes a PassRefPtr of
              a UString::Rep so you don't have to construct a UString; PassRefPtr can be
              more efficient.
              (KJS::jsEmptyString): Added.
              (KJS::jsSingleCharacterString): Added.
              (KJS::jsSingleCharacterSubstring): Added.
              (KJS::jsNontrivialString): Added.
              (KJS::JSString::getIndex): Adopted jsSingleCharacterSubstring.
              (KJS::JSString::getStringPropertySlot): Ditto.
      
              * kjs/NumberPrototype.cpp:
              (KJS::numberProtoFuncToFixed): Adopted jsNontrivialString.
              (KJS::numberProtoFuncToExponential): Ditto.
              (KJS::numberProtoFuncToPrecision): Ditto.
      
              * kjs/ObjectPrototype.cpp:
              (KJS::objectProtoFuncToLocaleString): Adopted toThisJSString.
              (KJS::objectProtoFuncToString): Adopted jsNontrivialString.
      
              * kjs/RegExpConstructor.cpp: Separated the lastInput value that's used
              with the lastOvector to return matches from the input value that can be
              changed via JavaScript. They will be equal in many cases, but not all.
              (KJS::RegExpConstructor::performMatch): Set input.
              (KJS::RegExpMatchesArray::RegExpMatchesArray): Ditto.
              (KJS::RegExpMatchesArray::fillArrayInstance): Adopted jsSubstring. Also,
              use input rather than lastInput in the appropriate place.
              (KJS::RegExpConstructor::getBackref): Adopted jsSubstring and jsEmptyString.
              Added code to handle the case where there is no backref -- before this
              depended on range checking in UString::substr which is not present in
              jsSubstring.
              (KJS::RegExpConstructor::getLastParen): Ditto.
              (KJS::RegExpConstructor::getLeftContext): Ditto.
              (KJS::RegExpConstructor::getRightContext): Ditto.
              (KJS::RegExpConstructor::getValueProperty): Use input rather than lastInput.
              Also adopt jsEmptyString.
              (KJS::RegExpConstructor::putValueProperty): Ditto.
              (KJS::RegExpConstructor::input): Ditto.
      
              * kjs/RegExpPrototype.cpp:
              (KJS::regExpProtoFuncToString): Adopt jsNonTrivialString. Also changed to
              use UString::append to append single characters rather than using += and
              a C-style string.
      
              * kjs/SmallStrings.cpp: Added.
              (KJS::SmallStringsStorage::SmallStringsStorage): Construct the
              buffer and UString::Rep for all 256 single-character strings for
              the U+0000 through U+00FF. This covers all the values used in
              the base64 test as well as most values seen elsewhere on the web
              as well. It's possible that later we might fix this to only work
              for U+0000 through U+007F but the others are used quite a bit in
              the current version of the base64 test.
              (KJS::SmallStringsStorage::~SmallStringsStorage): Free memory.
              (KJS::SmallStrings::SmallStrings): Create a set of small strings,
              initially not created; created later when they are used.
              (KJS::SmallStrings::~SmallStrings): Deallocate. Not left compiler
              generated because the SmallStringsStorage class's destructor needs
              to be visible.
              (KJS::SmallStrings::mark): Mark all the strings.
              (KJS::SmallStrings::createEmptyString): Create a cell for the
              empty string. Called only the first time.
              (KJS::SmallStrings::createSingleCharacterString): Create a cell
              for one of the single-character strings. Called only the first time.
              * kjs/SmallStrings.h: Added.
      
              * kjs/StringConstructor.cpp:
              (KJS::stringFromCharCodeSlowCase): Factored out of strinFromCharCode.
              Only used for cases where the caller does not pass exactly one argument.
              (KJS::stringFromCharCode): Adopted jsSingleCharacterString.
              (KJS::callStringConstructor): Adopted jsEmptyString.
      
              * kjs/StringObject.cpp:
              (KJS::StringObject::StringObject): Adopted jsEmptyString.
      
              * kjs/StringPrototype.cpp:
              (KJS::stringProtoFuncReplace): Adopted jsSubstring.
              (KJS::stringProtoFuncCharAt): Adopted jsEmptyString and
              jsSingleCharacterSubstring and also added a special case when the
              index is an immediate number to avoid conversion to and from floating
              point, since that's the common case.
              (KJS::stringProtoFuncCharCodeAt): Ditto.
              (KJS::stringProtoFuncMatch): Adopted jsSubstring and jsEmptyString.
              (KJS::stringProtoFuncSlice): Adopted jsSubstring and
              jsSingleCharacterSubstring. Also got rid of some unneeded locals and
              removed unneeded code to set the length property of the array, since it
              is automatically updated as values are added to the array.
              (KJS::stringProtoFuncSplit): Adopted jsEmptyString.
              (KJS::stringProtoFuncSubstr): Adopted jsSubstring.
              (KJS::stringProtoFuncSubstring): Ditto.
      
              * kjs/collector.cpp:
              (KJS::Heap::collect): Added a call to mark SmallStrings.
      
              * kjs/ustring.cpp:
              (KJS::UString::expandedSize): Made this a static member function since
              it doesn't need to look at any data members.
              (KJS::UString::expandCapacity): Use a non-inline function, makeNull, to
              set the rep to null in failure cases. This avoids adding a PIC branch for
              the normal case when there is no failure.
              (KJS::UString::expandPreCapacity): Ditto.
              (KJS::UString::UString): Ditto.
              (KJS::concatenate): Refactored the concatenation constructor into this
              separate function. Calling the concatenation constructor was leading to
              an extra branch because of the in-charge vs. not-in-charge versions not
              both being inlined, and this was showing up as nearly 1% on Shark. Also
              added a special case for when the second string is a single character,
              since it's a common idiom to build up a string that way and we can do
              things much more quickly, without involving memcpy for example. Also
              adopted the non-inline function, nullRep, for the same reason given for
              makeNull above.
              (KJS::UString::append): Adopted makeNull for failure cases.
              (KJS::UString::operator=): Ditto.
              (KJS::UString::toDouble): Added a special case for converting single
              character strings to numbers. We're doing this a ton of times while
              running the base64 test.
              (KJS::operator==): Added special cases so we can compare single-character
              strings without calling memcmp. Later we might want to special case other
              short lengths similarly.
              (KJS::UString::makeNull): Added.
              (KJS::UString::nullRep): Added.
              * kjs/ustring.h: Added declarations for the nullRep and makeNull. Changed
              expandedSize to be a static member function. Added a declaration of the
              concatenate function. Removed the concatenation constructor. Rewrote
              operator+ to use the concatenate function.
      
      WebCore:
      
      2008-08-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - adopt some new JavaScriptCore functions where appropriate
      
              * bindings/js/JSDOMWindowBase.cpp:
              (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
              (WebCore::windowProtoFuncBToA): Ditto.
              * bindings/js/JSEventListener.cpp:
              (WebCore::JSLazyEventListener::eventParameterName): Adopted
              jsNontrivialString.
              * bindings/js/JSSVGLazyEventListener.cpp:
              (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
      
      LayoutTests:
      
      2008-08-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - updated incorrect results that reflected a bug in the RegExp object
      
              * fast/js/regexp-caching-expected.txt: Updated results to
              correctly show that $1 through $9, lastMatch, lastParen,
              leftContext, and rightContext are left alone both when
              a program changes the value of RegExp.input and when it
              performs an unsuccessful match. The new results match
              Gecko behavior (I tested both Firefox 2 and 3).
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36006 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e794585e
  3. 30 Aug, 2008 1 commit
  4. 29 Aug, 2008 18 commits
  5. 28 Aug, 2008 11 commits
    • cwzwarich@webkit.org's avatar
      2008-08-28 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 6cba92d7
      cwzwarich@webkit.org authored
              Rubber-stamped by Sam Weinig.
      
              Change 'term' to 'expr' in variable names to standardize terminology.
      
              * kjs/nodes.cpp:
              (KJS::BinaryOpNode::emitCode):
              (KJS::ReverseBinaryOpNode::emitCode):
              (KJS::ThrowableBinaryOpNode::emitCode):
              * kjs/nodes.h:
              (KJS::BinaryOpNode::BinaryOpNode):
              (KJS::ReverseBinaryOpNode::ReverseBinaryOpNode):
              (KJS::MultNode::):
              (KJS::DivNode::):
              (KJS::ModNode::):
              (KJS::AddNode::):
              (KJS::SubNode::):
              (KJS::LeftShiftNode::):
              (KJS::RightShiftNode::):
              (KJS::UnsignedRightShiftNode::):
              (KJS::LessNode::):
              (KJS::GreaterNode::):
              (KJS::LessEqNode::):
              (KJS::GreaterEqNode::):
              (KJS::ThrowableBinaryOpNode::):
              (KJS::InstanceOfNode::):
              (KJS::InNode::):
              (KJS::EqualNode::):
              (KJS::NotEqualNode::):
              (KJS::StrictEqualNode::):
              (KJS::NotStrictEqualNode::):
              (KJS::BitAndNode::):
              (KJS::BitOrNode::):
              (KJS::BitXOrNode::):
              * kjs/nodes2string.cpp:
              (KJS::MultNode::streamTo):
              (KJS::DivNode::streamTo):
              (KJS::ModNode::streamTo):
              (KJS::AddNode::streamTo):
              (KJS::SubNode::streamTo):
              (KJS::LeftShiftNode::streamTo):
              (KJS::RightShiftNode::streamTo):
              (KJS::UnsignedRightShiftNode::streamTo):
              (KJS::LessNode::streamTo):
              (KJS::GreaterNode::streamTo):
              (KJS::LessEqNode::streamTo):
              (KJS::GreaterEqNode::streamTo):
              (KJS::InstanceOfNode::streamTo):
              (KJS::InNode::streamTo):
              (KJS::EqualNode::streamTo):
              (KJS::NotEqualNode::streamTo):
              (KJS::StrictEqualNode::streamTo):
              (KJS::NotStrictEqualNode::streamTo):
              (KJS::BitAndNode::streamTo):
              (KJS::BitXOrNode::streamTo):
              (KJS::BitOrNode::streamTo):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6cba92d7
    • alp@webkit.org's avatar
      2008-08-28 Alp Toker <alp@nuanti.com> · 97d8c10b
      alp@webkit.org authored
              GTK+ dist/build fix. List newly added header files.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97d8c10b
    • weinig@apple.com's avatar
      JavaScriptCore: · 56b8d169
      weinig@apple.com authored
      2008-08-28  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Oliver Hunt.
      
              Change to throw a ReferenceError at runtime instead of a ParseError
              at parse time, when the left hand side expression of a for-in statement
              is not an lvalue.
      
              * kjs/grammar.y:
              * kjs/nodes.cpp:
              (KJS::ForInNode::emitCode):
      
      LayoutTests:
      
      2008-08-28  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Oliver Hunt.
      
              Update test results now that test actually works.
      
              * fast/js/kde/exception_propagation-expected.txt:
              * fast/js/kde/resources/exception_propagation.js:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56b8d169
    • simon.fraser@apple.com's avatar
      2008-08-28 Simon Fraser <simon.fraser@apple.com> · 8f30d020
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              Various WebKitCSSTransformValue-related fixes
              https://bugs.webkit.org/show_bug.cgi?id=20562
      
              Test: css3/transform-value-types.html
      
              * bindings/js/JSCSSValueCustom.cpp:
              (WebCore::toJS):
              * css/CSSValue.h:
              * css/WebKitCSSTransformValue.cpp:
              (WebCore::WebKitCSSTransformValue::cssText):
              * css/WebKitCSSTransformValue.h:
              (WebCore::WebKitCSSTransformValue::):
              * css/WebKitCSSTransformValue.idl:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f30d020
    • mitz@apple.com's avatar
      Reviewed by Steve Falkenburg. · d722235a
      mitz@apple.com authored
              - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
      
              * platform/win/SharedTimerWin.cpp:
              (WebCore::TimerWindowWndProc):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d722235a
    • hyatt@apple.com's avatar
      Make sure new header files are put in private headers. · 8f9876f5
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f9876f5
    • simon.fraser@apple.com's avatar
      2008-08-28 Simon Fraser <simon.fraser@apple.com> · 9064bf92
      simon.fraser@apple.com authored
              Fix window properties now that CSSRule includes
              keyframe-related constants.
              Also add window.console.count [function]
              https://bugs.webkit.org/show_bug.cgi?id=20552
      
              * fast/dom/Window/window-properties-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9064bf92
    • hyatt@apple.com's avatar
      2008-08-28 David Hyatt <hyatt@apple.com> · 7d335231
      hyatt@apple.com authored
              RenderStyle cleanup.
      
              Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
      
              Reviewed by Adam
      
              * css/CSSImageGeneratorValue.cpp:
              * css/CSSImageValue.cpp:
              * css/CSSStyleSelector.cpp:
              * rendering/RenderImageGeneratedContent.cpp:
              * rendering/style/NinePieceImage.cpp: Added.
              * rendering/style/NinePieceImage.h: Added.
              * rendering/style/RenderStyle.cpp:
              (WebCore::FillLayer::operator==):
              (WebCore::FillLayer::containsImage):
              (WebCore::StyleInheritedData::operator==):
              (WebCore::RenderStyle::contentDataEquivalent):
              * rendering/style/RenderStyle.h:
              * rendering/style/StyleCachedImage.cpp: Added.
              * rendering/style/StyleCachedImage.h: Added.
              * rendering/style/StyleGeneratedImage.cpp: Added.
              * rendering/style/StyleGeneratedImage.h: Added.
              * rendering/style/StyleImage.h: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35979 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7d335231
    • simon.fraser@apple.com's avatar
      2008-08-28 Simon Fraser <simon.fraser@apple.com> · 28bad1a2
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              Make all the 'isFoo()' methods on CSSValue const,
              and fix the subclasses.
      
              https://bugs.webkit.org/show_bug.cgi?id=20561
      
              * css/CSSTimingFunctionValue.h:
              * css/CSSValue.h:
              (WebCore::CSSValue::isFontValue):
              (WebCore::CSSValue::isImageGeneratorValue):
              (WebCore::CSSValue::isImageValue):
              (WebCore::CSSValue::isImplicitInitialValue):
              * css/CSSValueList.h:
              * css/FontValue.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35978 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      28bad1a2
    • kmccullough@apple.com's avatar
      2008-08-28 Kevin McCullough <kmccullough@apple.com> · 6841f413
      kmccullough@apple.com authored
              Reviewed by Geoff.
      
              <rdar://problem/6095949> REGRESSION (5525.8-6527.1?): "this" is null
              when you first hit a breakpoint in Dashcode
              - We wanted to reset the callframe whenever eval() was called but
              dashcode uses eval() when broken to evaluate the state of the current
              call frame.
      
              * WebView/WebScriptDebugger.mm:
              (WebScriptDebugger::willExecuteProgram):
              (WebScriptDebugger::didExecuteProgram):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6841f413
    • hyatt@apple.com's avatar
      2008-08-28 David Hyatt <hyatt@apple.com> · cb3eb814
      hyatt@apple.com authored
              The great RenderStyle cleanup begins!
      
              Move LengthBox and LengthSize out of RenderStyle and into Length.
      
              Reviewed by Adam
      
              * rendering/Length.h:
              (WebCore::):
              (WebCore::Length::Length):
              (WebCore::Length::operator==):
              (WebCore::Length::operator!=):
              (WebCore::Length::value):
              (WebCore::Length::rawValue):
              (WebCore::Length::percent):
              (WebCore::Length::type):
              (WebCore::Length::quirk):
              (WebCore::Length::setValue):
              (WebCore::Length::setRawValue):
              (WebCore::Length::calcValue):
              (WebCore::Length::calcMinValue):
              (WebCore::Length::calcFloatValue):
              (WebCore::Length::isUndefined):
              (WebCore::Length::isZero):
              (WebCore::Length::isPositive):
              (WebCore::Length::isNegative):
              (WebCore::Length::isAuto):
              (WebCore::Length::isRelative):
              (WebCore::Length::isPercent):
              (WebCore::Length::isFixed):
              (WebCore::Length::isStatic):
              (WebCore::Length::isIntrinsicOrAuto):
              (WebCore::Length::blend):
              (WebCore::LengthBox::LengthBox):
              (WebCore::LengthBox::operator=):
              (WebCore::LengthBox::operator==):
              (WebCore::LengthBox::operator!=):
              (WebCore::LengthBox::nonZero):
              (WebCore::LengthSize::LengthSize):
              * rendering/style/RenderStyle.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb3eb814