1. 04 Dec, 2007 1 commit
    • aroben@apple.com's avatar
      Make the implementation of Frame::setNeedsReapplyStyles cross-platform · 4cfcb8ae
      aroben@apple.com authored
       WebCore:
      
               Make the implementation of Frame::setNeedsReapplyStyles cross-platform
      
               Reviewed by Hyatt.
      
               No change in functionality.
      
               * page/Frame.cpp:
               (WebCore::Frame::setNeedsReapplyStyles): Added. Invalidates the
               FrameView so that FrameView::layout will be called, which ends up
               calling reapplyStyles.
               (WebCore::Frame::needsReapplyStyles): Added.
               (WebCore::Frame::reapplyStyles): Renamed from reparseConfiguration.
               (WebCore::FramePrivate::FramePrivate):
               * page/Frame.h:
               * page/FramePrivate.h: Added new boolean member.
               * page/FrameView.cpp:
               (WebCore::FrameView::layout): Call Frame::reapplyStyles if needed.
               (WebCore::FrameView::needsLayout): Say that we need layout if the
               Frame needs styles reapplied.
               * page/mac/WebCoreFrameBridge.h: Removed setNeedsReapplyStyles.
               * page/mac/WebCoreFrameBridge.mm:
               (-[WebCoreFrameBridge reapplyStylesForDeviceType:]): Updated for
               rename.
      
               * bridge/win/FrameWin.cpp: Removed Frame::setNeedsReapplyStyles.
               * page/gtk/FrameGtk.cpp: Ditto.
               * page/mac/FrameMac.mm: Ditto.
               * page/qt/FrameQt.cpp: Ditto.
               * platform/wx/TemporaryLinkStubs.cpp: Ditto.
      
       WebKit/mac:
      
               Remove -[WebFrameBridge setNeedsReapplyStyles]
      
               This functionality is now WebCore's responsibility.
      
               Reviewed by Hyatt.
      
               * WebCoreSupport/WebFrameBridge.mm:
               * WebKit.order:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28411 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4cfcb8ae
  2. 03 Dec, 2007 1 commit
    • ggaren@apple.com's avatar
      JavaScriptCore: · 66bf8cbb
      ggaren@apple.com authored
              Reviewed by Eric Seidel.
      
              Second step in refactoring JSGlobalObject: moved virtual functions from
              Interpreter to JSGlobalObject.
              
              Layout and JS tests pass. SunSpider reports a .7% speedup -- don't 
              believe his lies.
      
      JavaScriptGlue:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
              
              * JSRun.cpp:
              * JSRun.h:
              * JSValueWrapper.cpp:
              (getThreadGlobalExecState):
              * JavaScriptGlue.cpp:
              (JSRunCopyGlobalObject):
              (JSRunEvaluate):
      
      WebCore:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
              
              Moved virtual ScriptInterpreter functions to Window.
      
      WebKit/mac:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
      
              * WebView/WebFrame.mm:
              (-[WebFrame globalContext]): Use the toRef function instead of manually
              casting.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      66bf8cbb
  3. 01 Dec, 2007 1 commit
    • ggaren@apple.com's avatar
      JavaScriptCore: · 41893215
      ggaren@apple.com authored
              Reviewed by Beth Dakin.
              
              Reversed the ownership relationship between Interpreter and JSGlobalObject.
              Now, the JSGlobalObject owns the Interpreter, and top-level objects
              that need the two to persist just protect the JSGlobalObject from GC.
              
              Global object bootstrapping looks a little odd right now, but it will
              make much more sense soon, after further rounds of refactoring.
      
              * bindings/runtime_root.h: Made this class inherit from RefCounted,
              to avoid code duplication.
      
              * kjs/collector.cpp:
              (KJS::Collector::collect): No need to give special GC treatment to 
              Interpreters, since we mark their global objects, which mark them.
      
              * kjs/interpreter.cpp:
              (KJS::Interpreter::mark): No need to mark our global object, since it
              marks us.
              * kjs/interpreter.h: Don't inherit from RefCounted -- JSGlobalObject 
              owns us directly.
      
              * kjs/testkjs.cpp: Modified to follow the new rules.
              (createGlobalObject):
              (runWithScripts):
      
      JavaScriptGlue:
      
              Reviewed by Beth Dakin.
              
              Modified to follow new JSGlobalObject/Interpreter ownership rules 
              in JavaScriptCore.
      
              * JSRun.cpp:
              (JSRun::JSRun):
              (JSRun::GetInterpreter):
              (JSRun::Evaluate):
              (JSRun::CheckSyntax):
              * JSRun.h:
              * JSValueWrapper.cpp:
              (unprotectGlobalObject):
              (initializeGlobalObjectKey):
              (getThreadGlobalExecState):
      
      WebCore:
      
              Reviewed by Beth Dakin.
              
              Modified WebCore to follow the new JSGlobalObject/Interpreter ownership
              rules in JavaScriptCore.
      
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_binding.h: Removed stale, unused 
              interpreterForGlobalObject().
      
              * bindings/js/kjs_proxy.cpp: Changed to store a global object, rather
              than an interpreter.
              (WebCore::KJSProxy::finishedWithEvent): Need to NULL check 
              m_globalObject here because we no longer unnecessarily instantiate it.
      
              * bindings/js/kjs_window.cpp:
              (KJS::ScheduledAction::execute):
              * bindings/js/kjs_window.h: Removed redundant and less efficient 
              interpreter() function -- global objects have direct access to their
              interpreters now.
      
              Changed these functions to pass around JSGlobalObjects instead of 
              Interpreters:
      
              * page/Frame.cpp:
              (WebCore::Frame::bindingRootObject):
              (WebCore::Frame::createRootObject):
              * page/Frame.h:
              * page/mac/WebCoreFrameBridge.mm:
              (createRootObject):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      41893215
  4. 26 Nov, 2007 2 commits
  5. 11 Nov, 2007 1 commit
    • ap@webkit.org's avatar
      Reviewed by Darin. · ff51b523
      ap@webkit.org authored
              http://bugs.webkit.org/show_bug.cgi?id=15896
              More editing cleanup
      
              No functionality changes.
      
              * dom/Node.h: Moved several editing-related methods elsewhere.
              * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
              to highlight that it is a match to offsetInCharacters(), and much different from other
              offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
              offsetInCharacters() before calling this.
      
              * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
              * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
              Updated for above renamings.
      
              * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
      
              * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
      
              * dom/Position.h:
              * dom/Position.cpp:
              (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
              (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
              (WebCore::Position::previous): Adapted to the above move.
              (WebCore::Position::next): Ditto.
              (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
              and BR elements are covered by editingIgnoresContent().
              (WebCore::Position::downstream): Ditto.
              (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
              (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
      
              * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
              * dom/PositionIterator.cpp:
              (WebCore::PositionIterator::increment): Updated for the above moves.
              (WebCore::PositionIterator::decrement): Ditto.
      
              * dom/ProcessingInstruction.h:
              * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
              ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
              I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
      
              * dom/Range.cpp:
              (WebCore::Range::selectNodeContents):
              * editing/ApplyStyleCommand.cpp:
              (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
              (WebCore::ApplyStyleCommand::applyInlineStyle):
              (WebCore::maxRangeOffset):
              (WebCore::ApplyStyleCommand::removeInlineStyle):
              (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
              (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
              * editing/CompositeEditCommand.cpp:
              (WebCore::CompositeEditCommand::insertNodeAt):
              (WebCore::CompositeEditCommand::positionOutsideTabSpan):
              * editing/DeleteSelectionCommand.cpp:
              (WebCore::DeleteSelectionCommand::handleGeneralDelete):
              * editing/InsertLineBreakCommand.cpp:
              (WebCore::InsertLineBreakCommand::doApply):
              * editing/InsertParagraphSeparatorCommand.cpp:
              (WebCore::InsertParagraphSeparatorCommand::doApply):
              * editing/InsertTextCommand.cpp:
              (WebCore::InsertTextCommand::insertTab):
              * editing/visible_units.cpp:
              (WebCore::previousLinePosition):
              (WebCore::nextLinePosition):
              Updated for the above moves.
      
              * editing/Editor.cpp:
              (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
      
              * editing/TextIterator.cpp:
              (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
              match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
              (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
      
              * editing/htmlediting.h:
              * editing/htmlediting.cpp:
              (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
              child nodes, other than via DOM manipulation, which is not specific to BRs.
              (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
              (WebCore::maxDeepOffset): Ditto.
              (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
              (WebCore::caretMaxOffset): Ditto.
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
              caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
              will take care of adjusting the offset.
      
              * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
              * page/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
              * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
              Changed some runtime checks that seemingly cannot fail into assertions.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff51b523
  6. 08 Nov, 2007 1 commit
    • darin@apple.com's avatar
      WebCore: · 02405e32
      darin@apple.com authored
              Reviewed by Steve.
      
              - cut down on notImplemented() functions on Windows
      
              * bridge/AXObjectCache.h: Put #if around the accessibility
              global.
      
              * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
              Moved here from TemporaryLinkStubs.
      
              * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
              using the ResourceResponse that's now available from the DocumentLoader.
      
              * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
              the Editor instead of the obsolete one on the Frame.
      
              * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
              * loader/FrameLoader.h: Removed overrideMediaType.
      
              * loader/gtk/DocumentLoaderGtk.cpp: Removed.
              * loader/mac/DocumentLoaderMac.mm: Removed.
              * loader/qt/DocumentLoaderQt.cpp: Removed.
      
              * page/Frame.cpp: Removed transpose.
              * page/Frame.h: Ditto.
              * page/FrameView.h: Removed updateBorder.
              * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
              * page/mac/FrameMac.mm: Ditto.
              * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
              overrideMediaType.
              * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
      
              * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
              * platform/qt/TemporaryLinkStubs.cpp: Ditto.
              * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
              * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
              issueTransposeCommand, and overrideMediaType.
      
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
              (WebCore::ResourceHandle::willLoadFromCache): Ditto.
              * platform/win/GraphicsContextWin.cpp:
              (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
              * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
              * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
              * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
      
              * WebCore.pro: Updated for removed files.
              * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
      
      WebKit/mac:
      
              Reviewed by Steve.
      
              - removed some unused WebCore bridge methods
      
              * WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType.
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of
              using the bridge object.
      
      WebKit/win:
      
              Reviewed by Steve.
      
              * Interfaces/IWebUIDelegate.idl: Added the functions needed below.
              * WebChromeClient.cpp:
              (WebChromeClient::setMenubarVisible): Eliminated the notImplemented()
              here by calling through the UI delegate.
              (WebChromeClient::menubarVisible): Ditto.
              (WebChromeClient::runDatabaseSizeLimitPrompt): Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27598 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02405e32
  7. 03 Nov, 2007 1 commit
    • darin@apple.com's avatar
      JavaScriptCore: · a7c3b87f
      darin@apple.com authored
              Reviewed by Maciej.
      
              - http://bugs.webkit.org/show_bug.cgi?id=15821
                remove unused PCRE features for speed
      
              A first step toward removing the PCRE features we don't use.
              This gives a 0.8% speedup on SunSpider, and a 6.5% speedup on
              the SunSpider regular expression test.
      
              Replaced the public interface with one that doesn't use the
              name PCRE. Removed code we don't need for JavaScript and various
              configurations we don't use. This is in preparation for still
              more changes in the future. We'll probably switch to C++ and
              make some even more significant changes to the regexp engine
              to get some additional speed.
      
              There's probably additional unused stuff that I haven't
              deleted yet.
      
              This does mean that our PCRE is now a fork, but I think that's
              not really a big deal.
      
              * JavaScriptCore.exp: Remove the 5 old entry points and add
              the 3 new entry points for WebCore's direct use of the regular
              expression engine.
      
              * kjs/config.h: Remove the USE(PCRE16) define. I decided to flip
              its sense and now there's a USE(POSIX_REGEX) instead, which should
              probably not be set by anyone. Maybe later we'll just get rid of it
              altogether.
      
              * kjs/regexp.h:
              * kjs/regexp.cpp:
              (KJS::RegExp::RegExp): Switch to new jsRegExp function names and
              defines. Cut down on the number of functions used.
              (KJS::RegExp::~RegExp): Ditto.
              (KJS::RegExp::match): Ditto.
      
              * pcre/dftables.c: (main): Get rid of ctype_letter and ctype_meta,
              which are unused.
      
              * pcre/pcre-config.h: Get rid of EBCIDIC, PCRE_DATA_SCOPE, const,
              size_t, HAVE_STRERROR, HAVE_MEMMOVE, HAVE_BCOPY, NEWLINE,
              POSIX_MALLOC_THRESHOLD, NO_RECURSE, SUPPORT_UCP, SUPPORT_UTF8,
              and JAVASCRIPT. These are all no longer configurable in our copy
              of the library.
      
              * pcre/pcre.h: Remove the macro-based kjs prefix hack, the PCRE
              version macros, PCRE_UTF16, the code to set up PCRE_DATA_SCOPE,
              the include of <stdlib.h>, and most of the constants and
              functions defined in this header. Changed the naming scheme to
              use a JSRegExp prefix rather than a pcre prefix. In the future,
              we'll probably change this to be a C++ header.
      
              * pcre/pcre_compile.c: Removed all unused code branches,
              including many whole functions and various byte codes.
              Kept changes outside of removal to a minimum.
              (check_escape):
              (first_significant_code):
              (find_fixedlength):
              (find_recurse):
              (could_be_empty_branch):
              (compile_branch):
              (compile_regex):
              (is_anchored):
              (is_startline):
              (find_firstassertedchar):
              (jsRegExpCompile): Renamed from pcre_compile2 and changed the
              parameters around a bit.
              (jsRegExpFree): Added.
      
              * pcre/pcre_exec.c: Removed many unused opcodes and variables.
              Also started tearing down the NO_RECURSE mechanism since it's
              now the default. In some cases there were things in the explicit
              frame that could be turned into plain old local variables and
              other small like optimizations.
              (pchars):
              (match_ref):
              (match): Changed parameters quite a bit since it's now not used
              recursively.
              (jsRegExpExecute): Renamed from pcre_exec.
      
              * pcre/pcre_internal.h: Get rid of PCRE_DEFINITION, PCRE_SPTR,
              PCRE_IMS, PCRE_ICHANGED, PCRE_NOPARTIAL, PCRE_STUDY_MAPPED,
              PUBLIC_OPTIONS, PUBLIC_EXEC_OPTIONS, PUBLIC_DFA_EXEC_OPTIONS,
              PUBLIC_STUDY_OPTIONS, MAGIC_NUMBER, 16 of the opcodes,
              _pcre_utt, _pcre_utt_size, _pcre_try_flipped, _pcre_ucp_findprop,
              and _pcre_valid_utf8. Also moved pcre_malloc and pcre_free here.
      
              * pcre/pcre_maketables.c: Changed to only compile in dftables.
              Also got rid of many of the tables that we don't use.
      
              * pcre/pcre_tables.c: Removed the unused Unicode property tables.
      
              * pcre/pcre_ucp_searchfuncs.c: Removed everything except for
              _pcre_ucp_othercase.
      
              * pcre/pcre_xclass.c: (_pcre_xclass): Removed uneeded support
              for classes based on Unicode properties.
      
              * wtf/FastMallocPCRE.cpp: Removed unused bits. It would be good
              to eliminate this completely, but we need the regular expression
              code to be C++ first.
      
              * pcre/pcre_fullinfo.c:
              * pcre/pcre_get.c:
              * pcre/ucp.h:
              Files that are no longer needed. I didn't remove them with this
              check-in, because I didn't want to modify all the project files.
      
      WebCore:
      
              Reviewed by Maciej.
      
              - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
                remove unused PCRE features for speed
      
              * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
              * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
              Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
              Use "\d" instead.
      
              * platform/RegularExpression.h: Remove the unused cap function. We can
              add it back later if we find we need it.
              * platform/RegularExpression.cpp:
              (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
              regular expression entry point changes.
              (WebCore::RegularExpression::Private::~Private): Ditto.
              (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
              This means that regular expressions with metacharactesr like ^ in them
              won't work any more with non-whole-string searches, but we don't use
              any regular expressions like that.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27419 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a7c3b87f
  8. 30 Oct, 2007 2 commits
    • adele's avatar
      WebCore: · e902c4c2
      adele authored
              Reviewed by Darin.
      
              WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
              <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
      
              Test: manual-tests/password-caps-lock.html
      
              * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
      
              * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
              * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
              * page/EventHandler.h:
      
              * platform/PlatformKeyboardEvent.h:
              * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
              * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
      
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::RenderTextControl):
              (WebCore::RenderTextControl::paint): Added.  If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
              (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
              (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field, 
               and the frame is active, and the element is focused, and the caps lock is on.  Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
              * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
              * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
      
              * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
              * rendering/RenderThemeMac.h:
              * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added.  Calls wkDrawCapsLockIndicator.
              * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added.  Calls paintThemePart for the CapsLockPart.
              * rendering/RenderThemeSafari.h:
      
      WebKit:
      
              Reviewed by Darin.
      
              WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
              <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
      
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
              (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged.
              (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this.
      
      win:
      
              Reviewed by Darin.
      
              WebKitWin part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
              <rdar://problem/5110427> REGRESSION: Caps lock icon should show in password fields
      
              * WebView.cpp: (WebView::keyDown): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27264 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e902c4c2
    • hyatt's avatar
      Land support for implicit animation in CSS. · d97bd61c
      hyatt authored
      	
              Reviewed by mitz, darin
      
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseTimingFunctionValue):
              (WebCore::CSSParser::parseTransitionTimingFunction):
              (WebCore::CSSParser::parseTransitionProperty):
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::mapTransitionDuration):
              (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
              (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
              (WebCore::CSSStyleSelector::mapTransitionProperty):
              * css/CSSTimingFunctionValue.h:
              (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
              (WebCore::CSSTimingFunctionValue::x1):
              (WebCore::CSSTimingFunctionValue::y1):
              (WebCore::CSSTimingFunctionValue::x2):
              (WebCore::CSSTimingFunctionValue::y2):
              * dom/Element.cpp:
              (WebCore::Element::styleForRenderer):
              (WebCore::Element::createRenderer):
              * dom/Node.cpp:
              (WebCore::Node::createRendererIfNeeded):
              (WebCore::Node::setRenderStyle):
              * page/AnimationController.cpp:
              (WebCore::CurveData::CurveData):
              (WebCore::CurveData::sampleCurveX):
              (WebCore::CurveData::sampleCurveY):
              (WebCore::CurveData::sampleCurveDerivativeX):
              (WebCore::CurveData::solveCurveX):
              (WebCore::solveEpsilon):
              (WebCore::solveCubicBezierFunction):
              (WebCore::ImplicitAnimation::finished):
              (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
              (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
              (WebCore::ImplicitAnimation::ImplicitAnimation):
              (WebCore::ImplicitAnimation::~ImplicitAnimation):
              (WebCore::ImplicitAnimation::reset):
              (WebCore::ImplicitAnimation::progress):
              (WebCore::blendFunc):
              (WebCore::ImplicitAnimation::animate):
              (WebCore::CompositeImplicitAnimation::animate):
              (WebCore::CompositeImplicitAnimation::animating):
              (WebCore::CompositeImplicitAnimation::reset):
              (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
              (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
              (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
              (WebCore::AnimationControllerPrivate::get):
              (WebCore::AnimationControllerPrivate::clear):
              (WebCore::AnimationControllerPrivate::updateTimer):
              (WebCore::AnimationControllerPrivate::timerFired):
              (WebCore:::m_data):
              (WebCore::AnimationController::~AnimationController):
              (WebCore::AnimationController::cancelImplicitAnimations):
              (WebCore::AnimationController::updateImplicitAnimations):
              (WebCore::AnimationController::suspendAnimations):
              (WebCore::AnimationController::resumeAnimations):
              * page/AnimationController.h:
              * page/Frame.cpp:
              (WebCore::FramePrivate::FramePrivate):
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::setStyle):
              (WebCore::RenderBox::destroy):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::setAnimatableStyle):
              (WebCore::RenderObject::destroy):
              * rendering/RenderObject.h:
              * rendering/RenderStyle.h:
              (WebCore::TimingFunction::TimingFunction):
              (WebCore::TimingFunction::operator==):
              (WebCore::TimingFunction::x1):
              (WebCore::TimingFunction::y1):
              (WebCore::TimingFunction::x2):
              (WebCore::TimingFunction::y2):
              (WebCore::TimingFunction::type):
              (WebCore::Transition::transitionProperty):
              (WebCore::Transition::setTransitionProperty):
              (WebCore::RenderStyle::initialTransitionProperty):
              * rendering/RenderWidget.cpp:
              (WebCore::RenderWidget::destroy):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27263 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d97bd61c
  9. 29 Oct, 2007 1 commit
    • hyatt's avatar
      Land the back end for CSS animated property transitions. I am landing... · 02b766f2
      hyatt authored
              Land the back end for CSS animated property transitions.  I am landing this in stages, so the AnimationController
              class is deliberately left empty.
      
              Reviewed by darin/aroben
      
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * css/CSSComputedStyleDeclaration.cpp:
              (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
              * css/CSSPropertyNames.in:
              * css/CSSTimingFunctionValue.cpp: Added.
              (WebCore::CSSTimingFunctionValue::cssText):
              * css/CSSTimingFunctionValue.h: Added.
              (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
              (WebCore::CSSTimingFunctionValue::firstPoint):
              (WebCore::CSSTimingFunctionValue::secondPoint):
              * css/CSSValueKeywords.in:
              * history/CachedPage.cpp:
              (WebCore::CachedPage::restore):
              * page/AnimationController.cpp: Added.
              (WebCore::AnimationController::AnimationController):
              (WebCore::AnimationController::~AnimationController):
              (WebCore::AnimationController::cancelTransitions):
              (WebCore::AnimationController::updateTransitions):
              (WebCore::AnimationController::suspendAnimations):
              (WebCore::AnimationController::resumeAnimations):
              * page/AnimationController.h: Added.
              * page/Frame.cpp:
              (WebCore::Frame::animationController):
              (WebCore::Frame::clearTimers):
              * page/Frame.h:
              * page/FramePrivate.h:
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::setStyle):
              (WebCore::RenderBox::destroy):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::animationController):
              * rendering/RenderObject.h:
              * rendering/RenderStyle.cpp:
              (WebCore::Transition::Transition):
              (WebCore::Transition::~Transition):
              (WebCore::Transition::operator=):
              (WebCore::Transition::operator==):
              (WebCore::Transition::fillUnsetProperties):
              (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
              (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
              (WebCore::StyleRareNonInheritedData::operator==):
              (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
              (WebCore::RenderStyle::diff):
              (WebCore::RenderStyle::adjustTransitions):
              (WebCore::RenderStyle::accessTransitions):
              * rendering/RenderStyle.h:
              (WebCore::BackgroundLayer::next):
              (WebCore::):
              (WebCore::TimingFunction::TimingFunction):
              (WebCore::TimingFunction::operator==):
              (WebCore::Transition::next):
              (WebCore::Transition::isTransitionDurationSet):
              (WebCore::Transition::isTransitionRepeatCountSet):
              (WebCore::Transition::isTransitionTimingFunctionSet):
              (WebCore::Transition::isTransitionPropertySet):
              (WebCore::Transition::isEmpty):
              (WebCore::Transition::clearTransitionDuration):
              (WebCore::Transition::clearTransitionRepeatCount):
              (WebCore::Transition::clearTransitionTimingFunction):
              (WebCore::Transition::clearTransitionProperty):
              (WebCore::Transition::transitionDuration):
              (WebCore::Transition::transitionRepeatCount):
              (WebCore::Transition::transitionTimingFunction):
              (WebCore::Transition::transitionProperty):
              (WebCore::Transition::setTransitionDuration):
              (WebCore::Transition::setTransitionRepeatCount):
              (WebCore::Transition::setTransitionTimingFunction):
              (WebCore::Transition::setTransitionProperty):
              (WebCore::Transition::setNext):
              (WebCore::Transition::operator!=):
              (WebCore::RenderStyle::transitions):
              (WebCore::RenderStyle::clearTransitions):
              (WebCore::RenderStyle::inheritTransitions):
              (WebCore::RenderStyle::initialTransitionDuration):
              (WebCore::RenderStyle::initialTransitionRepeatCount):
              (WebCore::RenderStyle::initialTransitionTimingFunction):
              (WebCore::RenderStyle::initialTransitionProperty):
              * rendering/RenderWidget.cpp:
              (WebCore::RenderWidget::destroy):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      02b766f2
  10. 27 Oct, 2007 1 commit
  11. 20 Oct, 2007 1 commit
  12. 17 Oct, 2007 1 commit
    • aroben's avatar
      Windows build fix part 2. · 072b3919
      aroben authored
      JavaScriptCore:
      
              Windows build fix part 2.
      
              Fix was by Darin, reviewed by Anders and Adam.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Add
              FastMallocPCRE.cpp to the project, and let Visual Studio have its way
              with the post-build step.
              * pcre/pcre.h: Don't DLL export the entry points just because this
              is Win32 -- this is an internal copy of PCRE and should be private.
              * pcre/pcre_compile.c: Fix an uninitialized variable warning --
              there's no real problem but it's better to quiet the compiler by
              tweaking the code slightly than turn off the warning entirely.
      
      WebCore:
      
              * page/Frame.cpp: I had to touch this file when fixing the Windows
              build. Checking it in in case it helps others, too.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26704 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      072b3919
  13. 16 Oct, 2007 1 commit
    • darin's avatar
      WebCore: · d4efa444
      darin authored
              Reviewed by Adele.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=15525
                transpose (control-T) should do the last two characters on a line if at end of line
              - remove unused CommandByName class
              - move transpose command implementation here from Mac OS X WebKit
      
              * editing/Editor.h:
              * editing/Editor.cpp:
              (WebCore::execTranspose): Added.
              (WebCore::Editor::transpose): Added. This has the transpose implementation from
              WebCoreFrameBridge and WebHTMLView, translated into WebCore-style C++ and with
              a special case for the end of a paragraph.
      
              * page/Frame.h: Removed unused command() function member.
              * page/FramePrivate.h: Removed unused m_command data member.
              * page/Frame.cpp: Ditto.
      
              * page/mac/WebCoreFrameBridge.h: Removed rangeOfCharactersAroundCaret method.
              * page/mac/WebCoreFrameBridge.mm: Ditto.
      
              * WebCore.pro: Removed CommandByName.h/cpp.
              * WebCore.vcproj/WebCore.vcproj: Ditto.
              * WebCore.xcodeproj/project.pbxproj: Ditto.
      
              * editing/CommandByName.cpp: Removed.
              * editing/CommandByName.h: Removed.
      
      WebKit:
      
              Reviewed by Adele.
      
              - moved transpose command implementation into WebCore
      
              * WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26683 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4efa444
  14. 12 Oct, 2007 1 commit
  15. 05 Oct, 2007 1 commit
    • ggaren's avatar
      JavaScriptCore: · 3917acb0
      ggaren authored
              Reviewed by Sam Weinig.
              
              Added JSObject::removeDirect, to support the fix for 
              <rdar://problem/5522487> REGRESSION: With JavaScript disabled, any 
              page load causes a crash in PropertyMap::put
      
              * kjs/object.cpp:
              (KJS::JSObject::removeDirect):
              * kjs/object.h:
      
      WebCore:
      
              Reviewed by Sam Weinig.
              
              New fix for <rdar://problem/5522487> REGRESSION: With JavaScript 
              disabled, any page load causes a crash in PropertyMap::put
              
              Explicitly remove the "document" property from the window. The old 
              solution would leave a stale "document" property around after JavaScript
              was re-enabled.
      
              The architecture for disabling JavaScript could use some consolidation. 
              It seems wrong that a script proxy even exists when JavaScript is 
              disabled. It also seems wrong that so many individual call sites are 
              responsible for checking whether JavaScript is enabled. I've filed a 
              bug about this: http://bugs.webkit.org/show_bug.cgi?id=15385.
      
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::clearDocumentWrapper):
              * bindings/js/kjs_proxy.h:
              * page/Frame.cpp:
              (WebCore::Frame::setDocument):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3917acb0
  16. 27 Sep, 2007 1 commit
    • antti's avatar
      WebCore: · 90500a31
      antti authored
              Reviewed by Geoff.
              
              Fix for <rdar://problem/5499125>
              REGRESSION (r21367): After launching Kidzui beta, a webview frame fails to appear in its main window
              
              If window object properties were modified when it had initial empty document (synchronously after 
              window.open() for example) those modifications were lost when the real document was switched in.
              
              Match Firefox behavior where window properties are not cleared if the inital document and the loaded one
              have matching security domains.
      
              Tests: fast/dom/Window/window-early-properties.html
                     http/tests/security/window-properties-clear-domain.html
                     http/tests/security/window-properties-clear-port.html
                     http/tests/security/window-properties-pass.html
      
              * WebCore.exp:
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::FrameLoader):
              (WebCore::FrameLoader::init):
              (WebCore::FrameLoader::clear):
              (WebCore::FrameLoader::isSecureTransition):
              (WebCore::FrameLoader::begin):
              * loader/FrameLoader.h:
              If we are transitioning from initial empty document to the final one, do a domain security check
              between old security policy URL and new URL. If that passes don't clear script proxy and script objects.
              
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::updateDocumentWrapper):
              * bindings/js/kjs_proxy.h:
              * page/Frame.cpp:
              (WebCore::Frame::setDocument):
              Since we don't always clear window properties anymore, we need to update the document property to point to
              the newly created one. 
      
      LayoutTests:
      
              Reviewed by Geoff.
              
              Tests for <rdar://problem/5499125>
              REGRESSION (r21359-21368): After launching Kidzui beta, a webview frame fails to appear in its main window
      
              * fast/dom/Window/window-early-properties-expected.txt: Added.
              * fast/dom/Window/window-early-properties.html: Added.
              * http/tests/security/resources/has-custom-property.html: Added.
              * http/tests/security/resources/no-custom-property.html: Added.
              * http/tests/security/window-properties-clear-domain-expected.txt: Added.
              * http/tests/security/window-properties-clear-domain.html: Added.
              * http/tests/security/window-properties-clear-port-expected.txt: Added.
              * http/tests/security/window-properties-clear-port.html: Added.
              * http/tests/security/window-properties-pass-expected.txt: Added.
              * http/tests/security/window-properties-pass.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25783 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90500a31
  17. 25 Sep, 2007 1 commit
    • ddkilzer's avatar
      JavaScriptCore: · c8eccecd
      ddkilzer authored
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * COPYING.LIB:
              * bindings/testbindings.cpp:
              * kjs/AllInOneFile.cpp:
              * kjs/DateMath.cpp:
              * kjs/PropertyNameArray.cpp:
              * kjs/PropertyNameArray.h:
              * kjs/config.h:
      
      WebCore:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * LICENSE-LGPL-2:
              * LICENSE-LGPL-2.1:
              * WebCorePrefix.h:
              * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
              * bindings/js/JSDOMWindowCustom.cpp:
              * bindings/js/JSDocumentCustom.cpp:
              * bindings/js/JSHTMLCollectionCustom.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              * bindings/js/JSHTMLOptionElementConstructor.h:
              * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
              * bindings/js/JSHTMLSelectElementCustom.cpp:
              * bindings/js/JSNodeFilterCondition.cpp:
              * bindings/js/JSNodeFilterCondition.h:
              * bindings/js/JSNodeIteratorCustom.cpp:
              * bindings/js/JSSVGElementWrapperFactory.cpp:
              * bindings/js/JSSVGElementWrapperFactory.h:
              * bindings/js/JSSVGMatrixCustom.cpp:
              * bindings/js/JSSVGPathSegCustom.cpp:
              * bindings/js/JSSVGPathSegListCustom.cpp:
              * bindings/js/JSSVGPointListCustom.cpp:
              * bindings/js/JSTreeWalkerCustom.cpp:
              * bindings/js/JSXMLHttpRequest.cpp:
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_css.cpp:
              * bindings/js/kjs_css.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_html.h:
              * bindings/js/kjs_navigator.cpp:
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_proxy.cpp:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_window.cpp:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOMImplementationFront.cpp:
              * bindings/objc/DOMImplementationFront.h:
              * bindings/scripts/CodeGenerator.pm:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bindings/scripts/CodeGeneratorObjC.pm:
              * bindings/scripts/IDLParser.pm:
              * bindings/scripts/IDLStructure.pm:
              * bindings/scripts/generate-bindings.pl:
              * config.h:
              * css/CSSBorderImageValue.cpp:
              * css/CSSBorderImageValue.h:
              * css/CSSCharsetRule.cpp:
              * css/CSSCharsetRule.h:
              * css/CSSCharsetRule.idl:
              * css/CSSComputedStyleDeclaration.cpp:
              * css/CSSComputedStyleDeclaration.h:
              * css/CSSCursorImageValue.cpp:
              * css/CSSCursorImageValue.h:
              * css/CSSFontFaceRule.cpp:
              * css/CSSFontFaceRule.h:
              * css/CSSFontFaceRule.idl:
              * css/CSSGrammar.y:
              * css/CSSHelper.cpp:
              * css/CSSHelper.h:
              * css/CSSImageValue.cpp:
              * css/CSSImageValue.h:
              * css/CSSImportRule.cpp:
              * css/CSSImportRule.h:
              * css/CSSImportRule.idl:
              * css/CSSInheritedValue.cpp:
              * css/CSSInheritedValue.h:
              * css/CSSInitialValue.cpp:
              * css/CSSInitialValue.h:
              * css/CSSMediaRule.cpp:
              * css/CSSMediaRule.h:
              * css/CSSMediaRule.idl:
              * css/CSSMutableStyleDeclaration.cpp:
              * css/CSSMutableStyleDeclaration.h:
              * css/CSSNamespace.h:
              * css/CSSPageRule.cpp:
              * css/CSSPageRule.h:
              * css/CSSPageRule.idl:
              * css/CSSParser.cpp:
              * css/CSSParser.h:
              * css/CSSPrimitiveValue.cpp:
              * css/CSSPrimitiveValue.h:
              * css/CSSPrimitiveValue.idl:
              * css/CSSProperty.cpp:
              * css/CSSProperty.h:
              * css/CSSQuirkPrimitiveValue.h:
              * css/CSSRule.cpp:
              * css/CSSRule.h:
              * css/CSSRule.idl:
              * css/CSSRuleList.cpp:
              * css/CSSRuleList.h:
              * css/CSSSelector.cpp:
              * css/CSSSelector.h:
              * css/CSSStyleDeclaration.cpp:
              * css/CSSStyleDeclaration.h:
              * css/CSSStyleDeclaration.idl:
              * css/CSSStyleRule.cpp:
              * css/CSSStyleRule.h:
              * css/CSSStyleRule.idl:
              * css/CSSStyleSelector.cpp:
              * css/CSSStyleSelector.h:
              * css/CSSStyleSheet.cpp:
              * css/CSSStyleSheet.h:
              * css/CSSStyleSheet.idl:
              * css/CSSUnknownRule.h:
              * css/CSSUnknownRule.idl:
              * css/CSSValue.h:
              * css/CSSValue.idl:
              * css/CSSValueList.cpp:
              * css/CSSValueList.h:
              * css/Counter.h:
              * css/Counter.idl:
              * css/DashboardRegion.h:
              * css/FontFamilyValue.cpp:
              * css/FontFamilyValue.h:
              * css/FontValue.cpp:
              * css/FontValue.h:
              * css/MediaFeatureNames.cpp:
              * css/MediaFeatureNames.h:
              * css/MediaList.cpp:
              * css/MediaList.h:
              * css/Pair.h:
              * css/RGBColor.idl:
              * css/Rect.h:
              * css/Rect.idl:
              * css/ShadowValue.cpp:
              * css/ShadowValue.h:
              * css/StyleBase.cpp:
              * css/StyleBase.h:
              * css/StyleList.cpp:
              * css/StyleList.h:
              * css/StyleSheet.cpp:
              * css/StyleSheet.h:
              * css/StyleSheet.idl:
              * css/StyleSheetList.cpp:
              * css/StyleSheetList.h:
              * css/StyleSheetList.idl:
              * css/html4.css:
              * css/make-css-file-arrays.pl:
              * css/makegrammar.pl:
              * css/makeprop.pl:
              * css/maketokenizer:
              * css/makevalues.pl:
              * css/quirks.css:
              * dom/AtomicStringList.h:
              * dom/Attr.cpp:
              * dom/Attr.h:
              * dom/Attr.idl:
              * dom/Attribute.cpp:
              * dom/Attribute.h:
              * dom/BeforeUnloadEvent.cpp:
              * dom/BeforeUnloadEvent.h:
              * dom/CDATASection.cpp:
              * dom/CDATASection.h:
              * dom/CDATASection.idl:
              * dom/CSSMappedAttributeDeclaration.cpp:
              * dom/CSSMappedAttributeDeclaration.h:
              * dom/CharacterData.cpp:
              * dom/CharacterData.h:
              * dom/CharacterData.idl:
              * dom/ChildNodeList.cpp:
              * dom/ChildNodeList.h:
              * dom/Clipboard.h:
              * dom/ClipboardEvent.cpp:
              * dom/ClipboardEvent.h:
              * dom/Comment.cpp:
              * dom/Comment.h:
              * dom/Comment.idl:
              * dom/ContainerNode.cpp:
              * dom/ContainerNode.h:
              * dom/DOMImplementation.cpp:
              * dom/DOMImplementation.h:
              * dom/DOMImplementation.idl:
              * dom/DocPtr.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/Document.idl:
              * dom/DocumentFragment.cpp:
              * dom/DocumentFragment.h:
              * dom/DocumentFragment.idl:
              * dom/DocumentMarker.h:
              * dom/DocumentType.cpp:
              * dom/DocumentType.h:
              * dom/DocumentType.idl:
              * dom/EditingText.cpp:
              * dom/EditingText.h:
              * dom/Element.cpp:
              * dom/Element.h:
              * dom/Element.idl:
              * dom/Entity.cpp:
              * dom/Entity.h:
              * dom/Entity.idl:
              * dom/EntityReference.cpp:
              * dom/EntityReference.h:
              * dom/EntityReference.idl:
              * dom/Event.cpp:
              * dom/Event.h:
              * dom/Event.idl:
              * dom/EventListener.h:
              * dom/EventListener.idl:
              * dom/EventNames.cpp:
              * dom/EventNames.h:
              * dom/EventTarget.idl:
              * dom/EventTargetNode.cpp:
              * dom/EventTargetNode.h:
              * dom/ExceptionCode.h:
              * dom/KeyboardEvent.cpp:
              * dom/KeyboardEvent.h:
              * dom/KeyboardEvent.idl:
              * dom/MappedAttribute.cpp:
              * dom/MappedAttribute.h:
              * dom/MappedAttributeEntry.h:
              * dom/MouseEvent.cpp:
              * dom/MouseEvent.h:
              * dom/MouseEvent.idl:
              * dom/MouseRelatedEvent.cpp:
              * dom/MouseRelatedEvent.h:
              * dom/MutationEvent.cpp:
              * dom/MutationEvent.h:
              * dom/MutationEvent.idl:
              * dom/NameNodeList.cpp:
              * dom/NameNodeList.h:
              * dom/NamedAttrMap.cpp:
              * dom/NamedAttrMap.h:
              * dom/NamedMappedAttrMap.cpp:
              * dom/NamedMappedAttrMap.h:
              * dom/NamedNodeMap.h:
              * dom/NamedNodeMap.idl:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Node.idl:
              * dom/NodeFilter.cpp:
              * dom/NodeFilter.h:
              * dom/NodeFilter.idl:
              * dom/NodeFilterCondition.cpp:
              * dom/NodeFilterCondition.h:
              * dom/NodeIterator.cpp:
              * dom/NodeIterator.h:
              * dom/NodeIterator.idl:
              * dom/NodeList.cpp:
              * dom/NodeList.h:
              * dom/NodeList.idl:
              * dom/Notation.cpp:
              * dom/Notation.h:
              * dom/Notation.idl:
              * dom/ProcessingInstruction.cpp:
              * dom/ProcessingInstruction.h:
              * dom/ProcessingInstruction.idl:
              * dom/QualifiedName.cpp:
              * dom/QualifiedName.h:
              * dom/Range.cpp:
              * dom/Range.h:
              * dom/Range.idl:
              * dom/RangeException.h:
              * dom/RangeException.idl:
              * dom/RegisteredEventListener.cpp:
              * dom/RegisteredEventListener.h:
              * dom/StyleElement.cpp:
              * dom/StyleElement.h:
              * dom/StyledElement.cpp:
              * dom/StyledElement.h:
              * dom/Text.cpp:
              * dom/Text.h:
              * dom/Text.idl:
              * dom/Tokenizer.h:
              * dom/Traversal.cpp:
              * dom/Traversal.h:
              * dom/TreeWalker.cpp:
              * dom/TreeWalker.h:
              * dom/TreeWalker.idl:
              * dom/UIEvent.cpp:
              * dom/UIEvent.h:
              * dom/UIEvent.idl:
              * dom/UIEventWithKeyState.cpp:
              * dom/UIEventWithKeyState.h:
              * dom/WheelEvent.cpp:
              * dom/WheelEvent.h:
              * dom/WheelEvent.idl:
              * dom/XMLTokenizer.cpp:
              * dom/XMLTokenizer.h:
              * html/FormDataList.cpp:
              * html/FormDataList.h:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLAnchorElement.h:
              * html/HTMLAnchorElement.idl:
              * html/HTMLAppletElement.cpp:
              * html/HTMLAppletElement.h:
              * html/HTMLAppletElement.idl:
              * html/HTMLAreaElement.cpp:
              * html/HTMLAreaElement.h:
              * html/HTMLAreaElement.idl:
              * html/HTMLBRElement.cpp:
              * html/HTMLBRElement.h:
              * html/HTMLBRElement.idl:
              * html/HTMLBaseElement.cpp:
              * html/HTMLBaseElement.h:
              * html/HTMLBaseElement.idl:
              * html/HTMLBaseFontElement.cpp:
              * html/HTMLBaseFontElement.h:
              * html/HTMLBaseFontElement.idl:
              * html/HTMLBlockquoteElement.cpp:
              * html/HTMLBlockquoteElement.h:
              * html/HTMLBlockquoteElement.idl:
              * html/HTMLBodyElement.cpp:
              * html/HTMLBodyElement.h:
              * html/HTMLBodyElement.idl:
              * html/HTMLButtonElement.cpp:
              * html/HTMLButtonElement.h:
              * html/HTMLButtonElement.idl:
              * html/HTMLCollection.cpp:
              * html/HTMLCollection.h:
              * html/HTMLCollection.idl:
              * html/HTMLDListElement.cpp:
              * html/HTMLDListElement.h:
              * html/HTMLDListElement.idl:
              * html/HTMLDirectoryElement.cpp:
              * html/HTMLDirectoryElement.h:
              * html/HTMLDirectoryElement.idl:
              * html/HTMLDivElement.cpp:
              * html/HTMLDivElement.h:
              * html/HTMLDivElement.idl:
              * html/HTMLDocument.cpp:
              * html/HTMLDocument.h:
              * html/HTMLDocument.idl:
              * html/HTMLElement.cpp:
              * html/HTMLElement.h:
              * html/HTMLElement.idl:
              * html/HTMLElementFactory.cpp:
              * html/HTMLElementFactory.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLEmbedElement.h:
              * html/HTMLEmbedElement.idl:
              * html/HTMLEntityNames.gperf:
              * html/HTMLFieldSetElement.cpp:
              * html/HTMLFieldSetElement.h:
              * html/HTMLFieldSetElement.idl:
              * html/HTMLFontElement.cpp:
              * html/HTMLFontElement.h:
              * html/HTMLFontElement.idl:
              * html/HTMLFormCollection.cpp:
              * html/HTMLFormCollection.h:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLFormElement.idl:
              * html/HTMLFrameElement.cpp:
              * html/HTMLFrameElement.h:
              * html/HTMLFrameElement.idl:
              * html/HTMLFrameElementBase.cpp:
              * html/HTMLFrameElementBase.h:
              * html/HTMLFrameOwnerElement.cpp:
              * html/HTMLFrameOwnerElement.h:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLFrameSetElement.h:
              * html/HTMLFrameSetElement.idl:
              * html/HTMLGenericFormElement.cpp:
              * html/HTMLGenericFormElement.h:
              * html/HTMLHRElement.cpp:
              * html/HTMLHRElement.h:
              * html/HTMLHRElement.idl:
              * html/HTMLHeadElement.cpp:
              * html/HTMLHeadElement.h:
              * html/HTMLHeadElement.idl:
              * html/HTMLHeadingElement.cpp:
              * html/HTMLHeadingElement.h:
              * html/HTMLHeadingElement.idl:
              * html/HTMLHtmlElement.cpp:
              * html/HTMLHtmlElement.h:
              * html/HTMLHtmlElement.idl:
              * html/HTMLIFrameElement.cpp:
              * html/HTMLIFrameElement.h:
              * html/HTMLIFrameElement.idl:
              * html/HTMLImageElement.cpp:
              * html/HTMLImageElement.h:
              * html/HTMLImageElement.idl:
              * html/HTMLImageLoader.cpp:
              * html/HTMLImageLoader.h:
              * html/HTMLInputElement.cpp:
              * html/HTMLInputElement.h:
              * html/HTMLInputElement.idl:
              * html/HTMLIsIndexElement.cpp:
              * html/HTMLIsIndexElement.h:
              * html/HTMLIsIndexElement.idl:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLKeygenElement.h:
              * html/HTMLLIElement.cpp:
              * html/HTMLLIElement.h:
              * html/HTMLLIElement.idl:
              * html/HTMLLabelElement.cpp:
              * html/HTMLLabelElement.h:
              * html/HTMLLabelElement.idl:
              * html/HTMLLegendElement.cpp:
              * html/HTMLLegendElement.h:
              * html/HTMLLegendElement.idl:
              * html/HTMLLinkElement.cpp:
              * html/HTMLLinkElement.h:
              * html/HTMLLinkElement.idl:
              * html/HTMLMapElement.cpp:
              * html/HTMLMapElement.h:
              * html/HTMLMapElement.idl:
              * html/HTMLMarqueeElement.cpp:
              * html/HTMLMarqueeElement.h:
              * html/HTMLMarqueeElement.idl:
              * html/HTMLMenuElement.cpp:
              * html/HTMLMenuElement.h:
              * html/HTMLMenuElement.idl:
              * html/HTMLMetaElement.cpp:
              * html/HTMLMetaElement.h:
              * html/HTMLMetaElement.idl:
              * html/HTMLModElement.cpp:
              * html/HTMLModElement.h:
              * html/HTMLModElement.idl:
              * html/HTMLNameCollection.cpp:
              * html/HTMLNameCollection.h:
              * html/HTMLOListElement.cpp:
              * html/HTMLOListElement.h:
              * html/HTMLOListElement.idl:
              * html/HTMLObjectElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLObjectElement.idl:
              * html/HTMLOptGroupElement.cpp:
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptGroupElement.idl:
              * html/HTMLOptionElement.cpp:
              * html/HTMLOptionElement.h:
              * html/HTMLOptionElement.idl:
              * html/HTMLOptionsCollection.cpp:
              * html/HTMLOptionsCollection.h:
              * html/HTMLOptionsCollection.idl:
              * html/HTMLParagraphElement.cpp:
              * html/HTMLParagraphElement.h:
              * html/HTMLParagraphElement.idl:
              * html/HTMLParamElement.cpp:
              * html/HTMLParamElement.h:
              * html/HTMLParamElement.idl:
              * html/HTMLParser.cpp:
              * html/HTMLParser.h:
              * html/HTMLPlugInElement.cpp:
              * html/HTMLPlugInElement.h:
              * html/HTMLPreElement.cpp:
              * html/HTMLPreElement.h:
              * html/HTMLPreElement.idl:
              * html/HTMLQuoteElement.cpp:
              * html/HTMLQuoteElement.h:
              * html/HTMLQuoteElement.idl:
              * html/HTMLScriptElement.cpp:
              * html/HTMLScriptElement.h:
              * html/HTMLScriptElement.idl:
              * html/HTMLSelectElement.cpp:
              * html/HTMLSelectElement.h:
              * html/HTMLSelectElement.idl:
              * html/HTMLStyleElement.cpp:
              * html/HTMLStyleElement.h:
              * html/HTMLStyleElement.idl:
              * html/HTMLTableCaptionElement.cpp:
              * html/HTMLTableCaptionElement.h:
              * html/HTMLTableCaptionElement.idl:
              * html/HTMLTableCellElement.cpp:
              * html/HTMLTableCellElement.h:
              * html/HTMLTableCellElement.idl:
              * html/HTMLTableColElement.cpp:
              * html/HTMLTableColElement.h:
              * html/HTMLTableColElement.idl:
              * html/HTMLTableElement.cpp:
              * html/HTMLTableElement.h:
              * html/HTMLTableElement.idl:
              * html/HTMLTablePartElement.cpp:
              * html/HTMLTablePartElement.h:
              * html/HTMLTableRowElement.cpp:
              * html/HTMLTableRowElement.h:
              * html/HTMLTableRowElement.idl:
              * html/HTMLTableSectionElement.cpp:
              * html/HTMLTableSectionElement.h:
              * html/HTMLTableSectionElement.idl:
              * html/HTMLTextAreaElement.cpp:
              * html/HTMLTextAreaElement.h:
              * html/HTMLTextAreaElement.idl:
              * html/HTMLTitleElement.cpp:
              * html/HTMLTitleElement.h:
              * html/HTMLTitleElement.idl:
              * html/HTMLTokenizer.cpp:
              * html/HTMLTokenizer.h:
              * html/HTMLUListElement.cpp:
              * html/HTMLUListElement.h:
              * html/HTMLUListElement.idl:
              * ksvg2/css/SVGCSSParser.cpp:
              * ksvg2/css/SVGCSSStyleSelector.cpp:
              * ksvg2/css/SVGRenderStyle.cpp:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/css/SVGRenderStyleDefs.cpp:
              * ksvg2/css/SVGRenderStyleDefs.h:
              * ksvg2/events/JSSVGLazyEventListener.cpp:
              * ksvg2/events/JSSVGLazyEventListener.h:
              * ksvg2/events/SVGZoomEvent.cpp:
              * ksvg2/events/SVGZoomEvent.h:
              * ksvg2/misc/KCanvasRenderingStyle.cpp:
              * ksvg2/misc/KCanvasRenderingStyle.h:
              * ksvg2/misc/PointerEventsHitRules.cpp:
              * ksvg2/misc/PointerEventsHitRules.h:
              * ksvg2/misc/SVGDocumentExtensions.cpp:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/misc/SVGImageLoader.cpp:
              * ksvg2/misc/SVGImageLoader.h:
              * ksvg2/misc/SVGTimer.cpp:
              * ksvg2/misc/SVGTimer.h:
              * ksvg2/misc/TimeScheduler.cpp:
              * ksvg2/misc/TimeScheduler.h:
              * ksvg2/scripts/cssmakeprops:
              * ksvg2/scripts/cssmakevalues:
              * ksvg2/svg/ColorDistance.cpp:
              * ksvg2/svg/ColorDistance.h:
              * ksvg2/svg/GradientAttributes.h:
              * ksvg2/svg/LinearGradientAttributes.h:
              * ksvg2/svg/PatternAttributes.h:
              * ksvg2/svg/RadialGradientAttributes.h:
              * ksvg2/svg/SVGAElement.cpp:
              * ksvg2/svg/SVGAElement.h:
              * ksvg2/svg/SVGAngle.cpp:
              * ksvg2/svg/SVGAngle.h:
              * ksvg2/svg/SVGAngle.idl:
              * ksvg2/svg/SVGAnimateColorElement.cpp:
              * ksvg2/svg/SVGAnimateColorElement.h:
              * ksvg2/svg/SVGAnimateElement.cpp:
              * ksvg2/svg/SVGAnimateElement.h:
              * ksvg2/svg/SVGAnimateMotionElement.cpp:
              * ksvg2/svg/SVGAnimateMotionElement.h:
              * ksvg2/svg/SVGAnimateTransformElement.cpp:
              * ksvg2/svg/SVGAnimateTransformElement.h:
              * ksvg2/svg/SVGAnimatedPathData.cpp:
              * ksvg2/svg/SVGAnimatedPathData.h:
              * ksvg2/svg/SVGAnimatedPoints.cpp:
              * ksvg2/svg/SVGAnimatedPoints.h:
              * ksvg2/svg/SVGAnimatedTemplate.h:
              * ksvg2/svg/SVGAnimationElement.cpp:
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGCircleElement.cpp:
              * ksvg2/svg/SVGCircleElement.h:
              * ksvg2/svg/SVGClipPathElement.cpp:
              * ksvg2/svg/SVGClipPathElement.h:
              * ksvg2/svg/SVGColor.cpp:
              * ksvg2/svg/SVGColor.h:
              * ksvg2/svg/SVGColor.idl:
              * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
              * ksvg2/svg/SVGComponentTransferFunctionElement.h:
              * ksvg2/svg/SVGCursorElement.cpp:
              * ksvg2/svg/SVGCursorElement.h:
              * ksvg2/svg/SVGDefsElement.cpp:
              * ksvg2/svg/SVGDefsElement.h:
              * ksvg2/svg/SVGDescElement.cpp:
              * ksvg2/svg/SVGDescElement.h:
              * ksvg2/svg/SVGDocument.cpp:
              * ksvg2/svg/SVGDocument.h:
              * ksvg2/svg/SVGDocument.idl:
              * ksvg2/svg/SVGElement.cpp:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGElement.idl:
              * ksvg2/svg/SVGElementInstance.cpp:
              * ksvg2/svg/SVGElementInstance.h:
              * ksvg2/svg/SVGElementInstanceList.cpp:
              * ksvg2/svg/SVGElementInstanceList.h:
              * ksvg2/svg/SVGEllipseElement.cpp:
              * ksvg2/svg/SVGEllipseElement.h:
              * ksvg2/svg/SVGException.h:
              * ksvg2/svg/SVGExternalResourcesRequired.cpp:
              * ksvg2/svg/SVGExternalResourcesRequired.h:
              * ksvg2/svg/SVGFEBlendElement.cpp:
              * ksvg2/svg/SVGFEBlendElement.h:
              * ksvg2/svg/SVGFEColorMatrixElement.cpp:
              * ksvg2/svg/SVGFEColorMatrixElement.h:
              * ksvg2/svg/SVGFEComponentTransferElement.cpp:
              * ksvg2/svg/SVGFEComponentTransferElement.h:
              * ksvg2/svg/SVGFECompositeElement.cpp:
              * ksvg2/svg/SVGFECompositeElement.h:
              * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
              * ksvg2/svg/SVGFEDiffuseLightingElement.h:
              * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
              * ksvg2/svg/SVGFEDisplacementMapElement.h:
              * ksvg2/svg/SVGFEDistantLightElement.cpp:
              * ksvg2/svg/SVGFEDistantLightElement.h:
              * ksvg2/svg/SVGFEFloodElement.cpp:
              * ksvg2/svg/SVGFEFloodElement.h:
              * ksvg2/svg/SVGFEFuncAElement.cpp:
              * ksvg2/svg/SVGFEFuncAElement.h:
              * ksvg2/svg/SVGFEFuncBElement.cpp:
              * ksvg2/svg/SVGFEFuncBElement.h:
              * ksvg2/svg/SVGFEFuncGElement.cpp:
              * ksvg2/svg/SVGFEFuncGElement.h:
              * ksvg2/svg/SVGFEFuncRElement.cpp:
              * ksvg2/svg/SVGFEFuncRElement.h:
              * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
              * ksvg2/svg/SVGFEGaussianBlurElement.h:
              * ksvg2/svg/SVGFEImageElement.cpp:
              * ksvg2/svg/SVGFEImageElement.h:
              * ksvg2/svg/SVGFELightElement.cpp:
              * ksvg2/svg/SVGFELightElement.h:
              * ksvg2/svg/SVGFEMergeElement.cpp:
              * ksvg2/svg/SVGFEMergeElement.h:
              * ksvg2/svg/SVGFEMergeNodeElement.cpp:
              * ksvg2/svg/SVGFEMergeNodeElement.h:
              * ksvg2/svg/SVGFEOffsetElement.cpp:
              * ksvg2/svg/SVGFEOffsetElement.h:
              * ksvg2/svg/SVGFEPointLightElement.cpp:
              * ksvg2/svg/SVGFEPointLightElement.h:
              * ksvg2/svg/SVGFESpecularLightingElement.cpp:
              * ksvg2/svg/SVGFESpecularLightingElement.h:
              * ksvg2/svg/SVGFESpotLightElement.cpp:
              * ksvg2/svg/SVGFESpotLightElement.h:
              * ksvg2/svg/SVGFETileElement.cpp:
              * ksvg2/svg/SVGFETileElement.h:
              * ksvg2/svg/SVGFETurbulenceElement.cpp:
              * ksvg2/svg/SVGFETurbulenceElement.h:
              * ksvg2/svg/SVGFilterElement.cpp:
              * ksvg2/svg/SVGFilterElement.h:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
              * ksvg2/svg/SVGFitToViewBox.cpp:
              * ksvg2/svg/SVGFitToViewBox.h:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGGElement.cpp:
              * ksvg2/svg/SVGGElement.h:
              * ksvg2/svg/SVGGradientElement.cpp:
              * ksvg2/svg/SVGGradientElement.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGImageElement.h:
              * ksvg2/svg/SVGLangSpace.cpp:
              * ksvg2/svg/SVGLangSpace.h:
              * ksvg2/svg/SVGLength.cpp:
              * ksvg2/svg/SVGLength.h:
              * ksvg2/svg/SVGLength.idl:
              * ksvg2/svg/SVGLengthList.cpp:
              * ksvg2/svg/SVGLengthList.h:
              * ksvg2/svg/SVGLineElement.cpp:
              * ksvg2/svg/SVGLineElement.h:
              * ksvg2/svg/SVGLinearGradientElement.cpp:
              * ksvg2/svg/SVGLinearGradientElement.h:
              * ksvg2/svg/SVGList.h:
              * ksvg2/svg/SVGListTraits.h:
              * ksvg2/svg/SVGLocatable.cpp:
              * ksvg2/svg/SVGLocatable.h:
              * ksvg2/svg/SVGMPathElement.cpp:
              * ksvg2/svg/SVGMPathElement.h:
              * ksvg2/svg/SVGMarkerElement.cpp:
              * ksvg2/svg/SVGMarkerElement.h:
              * ksvg2/svg/SVGMaskElement.cpp:
              * ksvg2/svg/SVGMaskElement.h:
              * ksvg2/svg/SVGMatrix.idl:
              * ksvg2/svg/SVGMetadataElement.cpp:
              * ksvg2/svg/SVGMetadataElement.h:
              * ksvg2/svg/SVGMetadataElement.idl:
              * ksvg2/svg/SVGNumber.idl:
              * ksvg2/svg/SVGNumberList.cpp:
              * ksvg2/svg/SVGNumberList.h:
              * ksvg2/svg/SVGPaint.cpp:
              * ksvg2/svg/SVGPaint.h:
              * ksvg2/svg/SVGParserUtilities.cpp:
              * ksvg2/svg/SVGParserUtilities.h:
              * ksvg2/svg/SVGPathElement.cpp:
              * ksvg2/svg/SVGPathElement.h:
              * ksvg2/svg/SVGPathSeg.h:
              * ksvg2/svg/SVGPathSegArc.cpp:
              * ksvg2/svg/SVGPathSegArc.h:
              * ksvg2/svg/SVGPathSegClosePath.cpp:
              * ksvg2/svg/SVGPathSegClosePath.h:
              * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubic.h:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
              * ksvg2/svg/SVGPathSegLineto.cpp:
              * ksvg2/svg/SVGPathSegLineto.h:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
              * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
              * ksvg2/svg/SVGPathSegLinetoVertical.h:
              * ksvg2/svg/SVGPathSegList.cpp:
              * ksvg2/svg/SVGPathSegList.h:
              * ksvg2/svg/SVGPathSegMoveto.cpp:
              * ksvg2/svg/SVGPathSegMoveto.h:
              * ksvg2/svg/SVGPatternElement.cpp:
              * ksvg2/svg/SVGPatternElement.h:
              * ksvg2/svg/SVGPoint.idl:
              * ksvg2/svg/SVGPointList.cpp:
              * ksvg2/svg/SVGPointList.h:
              * ksvg2/svg/SVGPolyElement.cpp:
              * ksvg2/svg/SVGPolyElement.h:
              * ksvg2/svg/SVGPolygonElement.cpp:
              * ksvg2/svg/SVGPolygonElement.h:
              * ksvg2/svg/SVGPolylineElement.cpp:
              * ksvg2/svg/SVGPolylineElement.h:
              * ksvg2/svg/SVGPreserveAspectRatio.cpp:
              * ksvg2/svg/SVGPreserveAspectRatio.h:
              * ksvg2/svg/SVGRadialGradientElement.cpp:
              * ksvg2/svg/SVGRadialGradientElement.h:
              * ksvg2/svg/SVGRect.idl:
              * ksvg2/svg/SVGRectElement.cpp:
              * ksvg2/svg/SVGRectElement.h:
              * ksvg2/svg/SVGRenderingIntent.h:
              * ksvg2/svg/SVGSVGElement.cpp:
              * ksvg2/svg/SVGSVGElement.h:
              * ksvg2/svg/SVGSVGElement.idl:
              * ksvg2/svg/SVGScriptElement.cpp:
              * ksvg2/svg/SVGScriptElement.h:
              * ksvg2/svg/SVGSetElement.cpp:
              * ksvg2/svg/SVGSetElement.h:
              * ksvg2/svg/SVGStopElement.cpp:
              * ksvg2/svg/SVGStopElement.h:
              * ksvg2/svg/SVGStringList.cpp:
              * ksvg2/svg/SVGStringList.h:
              * ksvg2/svg/SVGStylable.cpp:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGStyleElement.cpp:
              * ksvg2/svg/SVGStyleElement.h:
              * ksvg2/svg/SVGStyledElement.cpp:
              * ksvg2/svg/SVGStyledElement.h:
              * ksvg2/svg/SVGStyledLocatableElement.cpp:
              * ksvg2/svg/SVGStyledLocatableElement.h:
              * ksvg2/svg/SVGStyledTransformableElement.cpp:
              * ksvg2/svg/SVGStyledTransformableElement.h:
              * ksvg2/svg/SVGSwitchElement.cpp:
              * ksvg2/svg/SVGSwitchElement.h:
              * ksvg2/svg/SVGSymbolElement.cpp:
              * ksvg2/svg/SVGSymbolElement.h:
              * ksvg2/svg/SVGTRefElement.cpp:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.cpp:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTests.cpp:
              * ksvg2/svg/SVGTests.h:
              * ksvg2/svg/SVGTextContentElement.cpp:
              * ksvg2/svg/SVGTextContentElement.h:
              * ksvg2/svg/SVGTextElement.cpp:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/SVGTextPositioningElement.cpp:
              * ksvg2/svg/SVGTextPositioningElement.h:
              * ksvg2/svg/SVGTitleElement.cpp:
              * ksvg2/svg/SVGTitleElement.h:
              * ksvg2/svg/SVGTransform.cpp:
              * ksvg2/svg/SVGTransform.h:
              * ksvg2/svg/SVGTransform.idl:
              * ksvg2/svg/SVGTransformDistance.cpp:
              * ksvg2/svg/SVGTransformDistance.h:
              * ksvg2/svg/SVGTransformList.cpp:
              * ksvg2/svg/SVGTransformList.h:
              * ksvg2/svg/SVGTransformable.cpp:
              * ksvg2/svg/SVGTransformable.h:
              * ksvg2/svg/SVGURIReference.cpp:
              * ksvg2/svg/SVGURIReference.h:
              * ksvg2/svg/SVGUnitTypes.h:
              * ksvg2/svg/SVGUseElement.cpp:
              * ksvg2/svg/SVGUseElement.h:
              * ksvg2/svg/SVGViewElement.cpp:
              * ksvg2/svg/SVGViewElement.h:
              * ksvg2/svg/SVGZoomAndPan.cpp:
              * ksvg2/svg/SVGZoomAndPan.h:
              * loader/Cache.cpp:
              * loader/Cache.h:
              * loader/CachedCSSStyleSheet.cpp:
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedImage.cpp:
              * loader/CachedImage.h:
              * loader/CachedResource.cpp:
              * loader/CachedResource.h:
              * loader/CachedResourceClient.h:
              * loader/CachedResourceClientWalker.cpp:
              * loader/CachedResourceClientWalker.h:
              * loader/CachedScript.cpp:
              * loader/CachedScript.h:
              * loader/CachedXBLDocument.cpp:
              * loader/CachedXBLDocument.h:
              * loader/CachedXSLStyleSheet.cpp:
              * loader/CachedXSLStyleSheet.h:
              * loader/DocLoader.cpp:
              * loader/DocLoader.h:
              * loader/FTPDirectoryParser.cpp:
              * loader/FTPDirectoryParser.h:
              * loader/Request.cpp:
              * loader/Request.h:
              * loader/TextResourceDecoder.cpp:
              * loader/TextResourceDecoder.h:
              * loader/loader.cpp:
              * loader/loader.h:
              * page/Chrome.cpp:
              * page/Chrome.h:
              * page/ChromeClient.h:
              * page/Frame.cpp:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameTree.cpp:
              * page/FrameTree.h:
              * page/FrameView.cpp:
              * page/FrameView.h:
              * page/MouseEventWithHitTestResults.cpp:
              * page/MouseEventWithHitTestResults.h:
              * page/Page.cpp:
              * page/Page.h:
              * page/Plugin.h:
              * page/mac/ChromeMac.mm:
              * platform/Arena.cpp:
              * platform/Arena.h:
              * platform/AtomicString.cpp:
              * platform/AtomicString.h:
              * platform/AtomicStringImpl.h:
              * platform/BidiContext.cpp:
              * platform/BidiContext.h:
              * platform/BidiResolver.h:
              * platform/Font.cpp:
              * platform/Font.h:
              * platform/FontData.h:
              * platform/FontDescription.h:
              * platform/FontFallbackList.h:
              * platform/PlatformString.h:
              * platform/PopupMenu.h:
              * platform/PopupMenuClient.h:
              * platform/SearchPopupMenu.h:
              * platform/SegmentedString.cpp:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/StaticConstructors.h:
              * platform/String.cpp:
              * platform/StringHash.h:
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/TextBreakIterator.h:
              * platform/TextBreakIteratorICU.cpp:
              * platform/TextBreakIteratorInternalICU.h:
              * platform/TextStyle.h:
              * platform/UnicodeRange.cpp:
              * platform/UnicodeRange.h:
              * platform/cf/StringCF.cpp:
              * platform/cf/StringImplCF.cpp:
              * platform/graphics/FloatPoint3D.cpp:
              * platform/graphics/FloatPoint3D.h:
              * platform/graphics/Icon.h:
              * platform/graphics/IntSizeHash.h:
              * platform/graphics/PathTraversalState.cpp:
              * platform/graphics/cairo/CairoPath.h:
              * platform/graphics/cairo/PathCairo.cpp:
              * platform/graphics/mac/IconMac.mm:
              * platform/graphics/qt/IconQt.cpp:
              * platform/graphics/svg/SVGResourceFilter.cpp:
              * platform/graphics/svg/SVGResourceFilter.h:
              * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
              * platform/graphics/svg/filters/SVGDistantLightSource.h:
              * platform/graphics/svg/filters/SVGFEBlend.cpp:
              * platform/graphics/svg/filters/SVGFEBlend.h:
              * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEColorMatrix.h:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
              * platform/graphics/svg/filters/SVGFEComposite.cpp:
              * platform/graphics/svg/filters/SVGFEComposite.h:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
              * platform/graphics/svg/filters/SVGFEFlood.cpp:
              * platform/graphics/svg/filters/SVGFEFlood.h:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
              * platform/graphics/svg/filters/SVGFEImage.cpp:
              * platform/graphics/svg/filters/SVGFEImage.h:
              * platform/graphics/svg/filters/SVGFEMerge.cpp:
              * platform/graphics/svg/filters/SVGFEMerge.h:
              * platform/graphics/svg/filters/SVGFEMorphology.cpp:
              * platform/graphics/svg/filters/SVGFEMorphology.h:
              * platform/graphics/svg/filters/SVGFEOffset.cpp:
              * platform/graphics/svg/filters/SVGFEOffset.h:
              * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
              * platform/graphics/svg/filters/SVGFESpecularLighting.h:
              * platform/graphics/svg/filters/SVGFETile.h:
              * platform/graphics/svg/filters/SVGFETurbulence.cpp:
              * platform/graphics/svg/filters/SVGFETurbulence.h:
              * platform/graphics/svg/filters/SVGFilterEffect.cpp:
              * platform/graphics/svg/filters/SVGFilterEffect.h:
              * platform/graphics/svg/filters/SVGLightSource.cpp:
              * platform/graphics/svg/filters/SVGLightSource.h:
              * platform/graphics/svg/filters/SVGPointLightSource.h:
              * platform/graphics/svg/filters/SVGSpotLightSource.h:
              * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
              * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
              * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
              * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
              * platform/graphics/svg/qt/RenderPathQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
              * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
              * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
              * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
              * platform/graphics/win/IconWin.cpp:
              * platform/gtk/FontPlatformData.h:
              * platform/gtk/FontPlatformDataGtk.cpp:
              * platform/gtk/PopupMenuGtk.cpp:
              * platform/gtk/RenderThemeGtk.cpp:
              * platform/gtk/RenderThemeGtk.h:
              * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
              * platform/image-decoders/png/PNGImageDecoder.cpp:
              * platform/mac/FontMac.mm:
              * platform/mac/FontPlatformData.h:
              * platform/mac/LocalCurrentGraphicsContext.h:
              * platform/mac/LocalCurrentGraphicsContext.mm:
              * platform/mac/PopupMenuMac.mm:
              * platform/mac/SearchPopupMenuMac.mm:
              * platform/mac/StringImplMac.mm:
              * platform/mac/StringMac.mm:
              * platform/mac/TextBreakIteratorInternalICUMac.mm:
              * platform/network/FormData.cpp:
              * platform/network/FormData.h:
              * platform/qt/FileChooserQt.cpp:
              * platform/qt/FontQt.cpp:
              * platform/qt/MenuEventProxy.h:
              * platform/qt/PlugInInfoStoreQt.cpp:
              * platform/qt/PopupMenuQt.cpp:
              * platform/qt/QWebPopup.cpp:
              * platform/qt/QWebPopup.h:
              * platform/qt/RenderThemeQt.cpp:
              * platform/qt/RenderThemeQt.h:
              * platform/qt/SearchPopupMenuQt.cpp:
              * platform/qt/TextBreakIteratorQt.cpp:
              * platform/qt/WheelEventQt.cpp:
              * platform/win/FontPlatformData.h:
              * platform/win/FontPlatformDataWin.cpp:
              * platform/win/PopupMenuWin.cpp:
              * platform/win/SearchPopupMenuWin.cpp:
              * platform/win/TextBreakIteratorInternalICUWin.cpp:
              * rendering/AutoTableLayout.cpp:
              * rendering/AutoTableLayout.h:
              * rendering/CounterNode.cpp:
              * rendering/CounterNode.h:
              * rendering/DataRef.h:
              * rendering/EllipsisBox.cpp:
              * rendering/EllipsisBox.h:
              * rendering/FixedTableLayout.cpp:
              * rendering/FixedTableLayout.h:
              * rendering/GapRects.h:
              * rendering/HitTestRequest.h:
              * rendering/HitTestResult.cpp:
              * rendering/HitTestResult.h:
              * rendering/InlineBox.cpp:
              * rendering/InlineBox.h:
              * rendering/InlineFlowBox.cpp:
              * rendering/InlineFlowBox.h:
              * rendering/InlineRunBox.h:
              * rendering/InlineTextBox.cpp:
              * rendering/InlineTextBox.h:
              * rendering/Length.h:
              * rendering/ListMarkerBox.cpp:
              * rendering/ListMarkerBox.h:
              * rendering/RenderApplet.cpp:
              * rendering/RenderApplet.h:
              * rendering/RenderArena.cpp:
              * rendering/RenderArena.h:
              * rendering/RenderBR.cpp:
              * rendering/RenderBR.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBlock.h:
              * rendering/RenderBox.cpp:
              * rendering/RenderBox.h:
              * rendering/RenderButton.cpp:
              * rendering/RenderButton.h:
              * rendering/RenderContainer.cpp:
              * rendering/RenderContainer.h:
              * rendering/RenderCounter.cpp:
              * rendering/RenderCounter.h:
              * rendering/RenderFieldset.cpp:
              * rendering/RenderFieldset.h:
              * rendering/RenderFileUploadControl.cpp:
              * rendering/RenderFileUploadControl.h:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlexibleBox.h:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFlow.h:
              * rendering/RenderForeignObject.cpp:
              * rendering/RenderForeignObject.h:
              * rendering/RenderFrame.cpp:
              * rendering/RenderFrame.h:
              * rendering/RenderFrameSet.cpp:
              * rendering/RenderFrameSet.h:
              * rendering/RenderImage.cpp:
              * rendering/RenderImage.h:
              * rendering/RenderInline.cpp:
              * rendering/RenderInline.h:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayer.h:
              * rendering/RenderLegend.cpp:
              * rendering/RenderLegend.h:
              * rendering/RenderListItem.cpp:
              * rendering/RenderListItem.h:
              * rendering/RenderListMarker.cpp:
              * rendering/RenderListMarker.h:
              * rendering/RenderMenuList.cpp:
              * rendering/RenderMenuList.h:
              * rendering/RenderObject.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderPart.cpp:
              * rendering/RenderPart.h:
              * rendering/RenderPartObject.cpp:
              * rendering/RenderPartObject.h:
              * rendering/RenderPath.cpp:
              * rendering/RenderPath.h:
              * rendering/RenderReplaced.cpp:
              * rendering/RenderReplaced.h:
              * rendering/RenderSVGBlock.cpp:
              * rendering/RenderSVGBlock.h:
              * rendering/RenderSVGContainer.cpp:
              * rendering/RenderSVGContainer.h:
              * rendering/RenderSVGGradientStop.cpp:
              * rendering/RenderSVGGradientStop.h:
              * rendering/RenderSVGHiddenContainer.cpp:
              * rendering/RenderSVGHiddenContainer.h:
              * rendering/RenderSVGImage.cpp:
              * rendering/RenderSVGImage.h:
              * rendering/RenderSVGInline.cpp:
              * rendering/RenderSVGInline.h:
              * rendering/RenderSVGInlineText.cpp:
              * rendering/RenderSVGInlineText.h:
              * rendering/RenderSVGTSpan.cpp:
              * rendering/RenderSVGTSpan.h:
              * rendering/RenderSVGText.cpp:
              * rendering/RenderSVGText.h:
              * rendering/RenderSlider.cpp:
              * rendering/RenderSlider.h:
              * rendering/RenderStyle.cpp:
              * rendering/RenderStyle.h:
              * rendering/RenderTable.cpp:
              * rendering/RenderTable.h:
              * rendering/RenderTableCell.cpp:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableCol.cpp:
              * rendering/RenderTableCol.h:
              * rendering/RenderTableRow.cpp:
              * rendering/RenderTableRow.h:
              * rendering/RenderTableSection.cpp:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextControl.cpp:
              * rendering/RenderTextControl.h:
              * rendering/RenderTextFragment.cpp:
              * rendering/RenderTextFragment.h:
              * rendering/RenderTheme.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderThemeMac.h:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderThemeSafari.cpp:
              * rendering/RenderThemeSafari.h:
              * rendering/RenderThemeWin.cpp:
              * rendering/RenderThemeWin.h:
              * rendering/RenderView.cpp:
              * rendering/RenderView.h:
              * rendering/RenderWidget.cpp:
              * rendering/RenderWidget.h:
              * rendering/RootInlineBox.cpp:
              * rendering/RootInlineBox.h:
              * rendering/SVGInlineFlowBox.cpp:
              * rendering/SVGInlineFlowBox.h:
              * rendering/SVGInlineTextBox.cpp:
              * rendering/SVGInlineTextBox.h:
              * rendering/SVGRootInlineBox.cpp:
              * rendering/SVGRootInlineBox.h:
              * rendering/TableLayout.h:
              * rendering/bidi.cpp:
              * rendering/bidi.h:
              * rendering/break_lines.cpp:
              * rendering/break_lines.h:
              * xml/DOMParser.cpp:
              * xml/DOMParser.h:
              * xml/DOMParser.idl:
              * xml/XMLHttpRequest.cpp:
              * xml/XMLHttpRequest.h:
              * xml/XMLSerializer.cpp:
              * xml/XMLSerializer.h:
              * xml/XMLSerializer.idl:
              * xml/XPathEvaluator.idl:
              * xml/XPathExpression.idl:
              * xml/XPathNSResolver.idl:
              * xml/XPathResult.idl:
              * xml/XSLImportRule.cpp:
              * xml/XSLImportRule.h:
              * xml/XSLStyleSheet.cpp:
              * xml/XSLStyleSheet.h:
              * xml/XSLTProcessor.cpp:
              * xml/XSLTProcessor.h:
      
      WebKitQt:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Api/qcookiejar.cpp:
              * Api/qcookiejar.h:
              * Api/qwebframe.cpp:
              * Api/qwebframe.h:
              * Api/qwebframe_p.h:
              * Api/qwebhistoryinterface.cpp:
              * Api/qwebhistoryinterface.h:
              * Api/qwebkitglobal.h:
              * Api/qwebnetworkinterface.cpp:
              * Api/qwebnetworkinterface.h:
              * Api/qwebnetworkinterface_p.h:
              * Api/qwebobjectplugin.cpp:
              * Api/qwebobjectplugin.h:
              * Api/qwebobjectpluginconnector.cpp:
              * Api/qwebobjectpluginconnector.h:
              * Api/qwebpage.cpp:
              * Api/qwebpage.h:
              * Api/qwebpage_p.h:
              * Api/qwebpagehistory.cpp:
              * Api/qwebpagehistory.h:
              * Api/qwebsettings.cpp:
              * Api/qwebsettings.h:
              * WebCoreSupport/EditCommandQt.cpp:
              * WebCoreSupport/EditCommandQt.h:
      
      WebKitSite:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * blog/wp-content/plugins/wp-cache/wp-cache.php:
              * blog/wp-includes/class-snoopy.php:
              * blog/wp-includes/gettext.php:
              * blog/wp-includes/js/tinymce/license.html:
              * blog/wp-includes/streams.php:
      
      WebKitTools:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Drosera/config.h:
      
      LayoutTests:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * svg/carto.net/resources/button.js:
              * svg/carto.net/resources/colourPicker.js:
              * svg/carto.net/resources/comboBox.js:
              * svg/carto.net/resources/helper_functions.js:
              * svg/carto.net/resources/mapApp.js:
              * svg/carto.net/resources/scrollbar.js:
              * svg/carto.net/resources/selectionList.js:
              * svg/carto.net/resources/slider.js:
              * svg/carto.net/resources/tabgroup.js:
              * svg/carto.net/resources/textbox.js:
              * svg/carto.net/resources/window.js:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c8eccecd
  18. 21 Sep, 2007 1 commit
    • thatcher's avatar
      WebCore: · 10840e54
      thatcher authored
              Reviewed by Darin.
      
              <rdar://problem/5491013> REGRESSION: -[WebView windowScriptObject] returns a dummy object or nil if a page hasn't loaded
      
              Calling -[WebView windowScriptObject] before the page loads would give you nil. This behavior didn't match Tiger.
              The API behavior in Tiger let you get the window script object once and keep ahold of it as long as you needed it.
              The window object would remain valid even after page loads. This change restores the Tiger behavior.
      
              <rdar://problem/5495790> NULL dereference crash beneath Bindings::RootObject::interpreter when saving Dashcode document
      
              The changes to WebScriptObject's _isSafeScript call also fixed the crash in Dashcode.
      
              * bindings/objc/WebScriptObject.mm:
              (-[WebScriptObject _setOriginRootObject:andRootObject:]): New method used to update the the root objects,
              so the WebScriptObject can still be used after a page load.
              (-[WebScriptObject _isSafeScript]): Call [self _rootObject] instead of accessing the data member directly.
              DOMNode has an override for the _rootObject method, and it can return 0 when _private->_rootObject
              is non-zero. We would return YES here when it wasn't safe and later crash with my modified layout tests.
              Checking _rootObject first prevents other calls sites from needing to check for a valid root object,
              this fixed the Dashcode crash.
              (-[WebScriptObject _imp]): Ditto.
      
              * bindings/objc/WebScriptObjectPrivate.h: Add _setOriginRootObject:andRootObject:.
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::clear): Call the renamed clearScriptObjects function.
              (WebCore::FrameLoader::dispatchWindowObjectAvailable): Some gratuitous code cleanup.
      
              * page/Frame.cpp:
              (WebCore::Frame::clearScriptObjects): Renamed cleanupScriptObject to clearScriptObjects.
              Call clearPlatformScriptObjects last so m_bindingRootObject is already NULL.
              (WebCore::Frame::windowScriptNPObject): Hold a JSLock before accessing the window. This
              change is unrelated to the bug, but should be fixed.
      
              * page/mac/FrameMac.mm:
              (WebCore::Frame::windowScriptObject): Return a script object even if the interpreter is NULL.
              This resotres the Tiger behavior of always being able to access the window object.
              (WebCore::Frame::clearPlatformScriptObjects): Keep the window script object around, and update
              the root objects for the window script object.
      
              * page/Frame.h: Rename cleanupScriptObject to clearScriptObjects.
              * page/FramePrivate.h: Use a RetainPtr for m_windowScriptObject.
      
      WebKitTools:
      
              Reviewed by Darin.
      
              <rdar://problem/5491013> REGRESSION: -[WebView windowScriptObject] returns a dummy object or nil if a page hasn't loaded (breaks EA Sports Online)
      
              Assert that the -[WebScriptObject JSObject] return value is only NULL for non-window objects.
              This is tested by plugins/root-object-premature-delete-crash.html.
      
              * DumpRenderTree/mac/ObjCController.m:
              (-[ObjCController accessStoredWebScriptObject]):
      
      LayoutTests:
      
              Reviewed by Darin.
      
              <rdar://problem/5491013> REGRESSION: -[WebView windowScriptObject] returns a dummy object or nil if a page hasn't loaded (breaks EA Sports Online)
      
              Updated results to show the didClearWindowScriptObject delegate call. Tweaked plugins/root-object-premature-delete-crash.html
              to test a non-window script object half the time. This change works with a change to DumpRenderTree.
      
              * http/tests/loading/empty-subframe-expected.txt:
              * http/tests/loading/simple-subframe-expected.txt:
              * plugins/root-object-premature-delete-crash.html:
              * webarchive/loading/test-loading-archive-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      10840e54
  19. 13 Sep, 2007 1 commit
    • darin's avatar
      WebCore: · ead9a459
      darin authored
              Reviewed by Oliver.
      
              - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
                <input> elements with maxlength limit
      
              * editing/Editor.h: Moved MarkedTextUnderline here and renamed it CompositionUnderline.
              Moved the rest of the marked text API here and used the term that will be more familiar
              to those on platforms other than Macintosh, "composition". This helps prevent confusion
              with the other kinds of mark -- the emacs "mark" and spelling/grammar marks. Also
              cleaned up the conditionals a bit for the Macintosh-specific parts of this header.
      
              * editing/Editor.cpp:
              (WebCore::Editor::Editor): Updated for name change.
              (WebCore::Editor::clear): Added. To be called by FrameLoader::clear().
              (WebCore::Editor::insertTextWithoutSendingTextEvent): Removed code to make inserted
              text replace the marked text range -- we now deal with this explicitly by not
              calling this function to replace marked text. Also removed unneeded code that was
              specific to the use of this to replace the marked text.
              (WebCore::Editor::selectComposition): Renamed from selectMarkedText. Updated since
              the composition range is not stored as a Range.
              (WebCore::Editor::confirmComposition): Added. To be called when changing a composition
              into actual text. Unlike the old code path, deletes the composition first, then inserts
              the text, triggering the normal insertion code path and events. This is helpful because
              it means the inserted text will be truncated by the <input> element, for example.
              (WebCore::Editor::confirmCompositionWithoutDisturbingSelection): Added.
              (WebCore::Editor::setComposition): Added. To be called when changing the composition.
              Takes parameters for the underlines and selection. Unlike the old code path, this passes
              a flag down that indicates the inserted text is part of a composition. This is helpful
              because we don't send the event that will cause the <input> element to do truncation.
              It's also a better API for future improvements to our input method handling.
              (WebCore::Editor::revealSelectionAfterEditingOperation): Updated for name change.
              (WebCore::Editor::setIgnoreCompositionSelectionChange): Ditto.
              (WebCore::Editor::compositionRange): Added. Needed now that the composition is not
              stored as a Range.
              (WebCore::Editor::getCompositionSelection): Added.
      
              * editing/TypingCommand.h:
              * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText):
              Added an insertedTextIsComposition parameter, and don't send the BeforeTextInsertedEvent
              if it's true.
      
              * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Replaced the Macintosh-specific
              call to setMarkedTextRange with a call to the new Editor::clear().
      
              * page/Frame.h:
              * page/Frame.cpp:
              * page/FramePrivate.h:
              * page/mac/FrameMac.mm:
              Removed the marked text code. It was streamlined and moved to Editor, except for the
              Mac-specific code, which was moved into WebKit.
      
              * page/mac/WebCoreFrameBridge.h:
              * page/mac/WebCoreFrameBridge.mm: Removed some now-unneeded marked text code.
              (-[WebCoreFrameBridge markedTextNSRange]): Updated for name/API change.
      
              * rendering/InlineTextBox.h:
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::paint): Updated marked text code for name changes, and also
              streamlined the code a bit for the case where there is no composition.
              (WebCore::InlineTextBox::paintCompositionBackground): Name change.
              (WebCore::InlineTextBox::paintCompositionUnderline): Ditto.
      
              * rendering/RenderTextControl.h:
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::finishText): Added. Helper function shared by the
              (WebCore::RenderTextControl::text):
              (WebCore::getNextSoftBreak):
              (WebCore::RenderTextControl::textWithHardLineBreaks):
      
              * platform/CharacterNames.h: Added newlineCharacter.
      
              * dom/Range.h: Remove the now-unneeded version of toString that converts <br>
              elements into newlines.
              * dom/Range.cpp:
              (WebCore::Range::toString): Changed this to use a Vector<UChar> instead of
              a String so it will not have pathological reallocation performance, and removed
              the <br> feature.
              (WebCore::Range::pastEndNode): Made this return 0 when there is no start node.
              This bit of extra robustness guarantees you can't do a null dereference if the
              start node is 0 and the end node is not. Not sure this case really exists.
      
              * page/ContextMenuController.cpp: (ContextMenuController::contextMenuItemSelected):
              Removed a semi-bogus use of Range::toString(true). The right function to use here
              is plainText().
      
              * bridge/EditorClient.h: Removed obsolete markedTextAbandoned function.
      
              * WebCore.exp: Updated for above changes. 
      
      WebKit:
      
              Reviewed by Oliver.
      
              - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
                <input> elements with maxlength limit
      
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView _selectionChanged]): Tweaked code a bit.
              (-[WebHTMLView markedRange]): Simplified logic, since markedTextNSRange works when there's
              no composition range.
              (-[WebHTMLView hasMarkedText]): Call directly to Editor instead of bridge.
              (-[WebHTMLView unmarkText]): Call new confirmComposition to make it clear that this is
              confirming text, not just unmarking it to discard it.
              (extractUnderlines): Added. Converts directly from an NSAttributedString to the
              CompositionUnderline vector that's used by WebCore.
              (-[WebHTMLView setMarkedText:selectedRange:]): Changed to use the new setComposition.
              (-[WebHTMLView insertText:]): Changed to use confirmComposition when appropriate, instead
              of relying on special behavior of Editor::insertText.
              (-[WebHTMLView _updateSelectionForInputManager]): Rewrote to use getCompositionSelection
              and confirmCompositionWithoutDisturbingSelection.
      
              * WebCoreSupport/WebEditorClient.h:
              * WebCoreSupport/WebEditorClient.mm:
              Removed obsolete markedTextAbandoned function.
      
      win:
      
              Reviewed by Oliver.
      
              - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
                <input> elements with maxlength limit
      
              * WebView.cpp:
              (WebView::resetIME): Change to use confirmCompositionWithoutDisturbingSelection.
              (WebView::updateSelectionForIME): Update for name changes, and to use new functions
              in Editor.
              (WebView::onIMEStartComposition): Removed unneeded call to unmarkText.
              (compositionToUnderlines): Removed startOffset parameter, since setComposition now
              handles this.
              (WebView::onIMEComposition): Changed to use confirmComposition and setComposition.
              Logic gets a lot cleaner.
              (WebView::onIMEEndComposition): Removed unneeded calls to Editor.
              (WebView::onIMERequestCharPosition): Updated for name changes.
      
      LayoutTests:
      
              Reviewed by Oliver.
      
              - updated test results changed by change in input manager logic
      
              * platform/mac/editing/input/firstrectforcharacterrange-styled-expected.txt:
              * platform/mac/editing/input/text-input-controller-expected.txt:
              * platform/mac/editing/input/wrapped-line-char-rect-expected.txt:
              Updated. Small changes in which delegate methods are called.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25547 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ead9a459
  20. 06 Sep, 2007 2 commits
    • darin's avatar
      Reviewed by Hyatt. · f81e8b3c
      darin authored
              - fix http://bugs.webkit.org/show_bug.cgi?id=15153
                REGRESSION: Assertion failure in FrameView::scheduleRelayout() (m_frame->view() == this)
      
              Back out the willRemove() part of the previous patch.
              It was incorrect and not needed to fix the bug anyway.
      
              * dom/Document.cpp: (WebCore::Document::detach): Remove willRemove().
      
              * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Put the willRemove() call
              back here where it was originally before the previous fix.
      
              * history/CachedPage.cpp: (WebCore::CachedPage::clear):
              * page/Frame.cpp:
              (WebCore::Frame::setView):
              (WebCore::Frame::setDocument):
              Added FIXMEs about the fact that we call detach() on the document but not willRemove().
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25397 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f81e8b3c
    • darin's avatar
      Reviewed by Hyatt. · 47829106
      darin authored
              - <rdar://problem/5457865> REGRESSION (9A527): Safari crashes when opening a page
                that immediately redirects to a PDF
      
              I don't know how to make an automated test that trips over this.
      
              The immediate cause of this regression was making a back/forward list entry in
              this case. Earlier, the quick redirect would not results in a separate entry.
              That's possibly a bug too, but it's better to fix the crash first.
      
              The page cache was putting the document into a strange state: Still attached but
              with the renderer set to 0. There was no good reason to do this, so got rid of it.
              Moved the responsibility to the caller of not calling detach() when moving into
              the page cache. This is more of a frame loader thing than a document thing.
      
              * dom/Document.cpp: (WebCore::Document::detach): Added assertions that this is
              only called on a document that's attached and not in the page cache. Also moved
              the call to willRemove in here, so that callers can't make the mistake of not
              calling that function. Removed the incorrectly-positioned code that made this
              function do less if it was called on a document in the page cache.
      
              * history/CachedPage.cpp: (WebCore::CachedPage::clear): Removed the code to handle
              a document with a renderer of 0. There was no need to put the document into this
              state. Any document in the page cache will always be "attached".
      
              * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Added a check to prevent
              from calling an unnecessary cancelParsing() on a document that's in the page cache
              and guard the call to detach() with a check of attached(), like all other calls to
              detach() on DOM objects.
      
              * page/Frame.cpp:
              (WebCore::Frame::setView): Added a missing check of attached(), like all other
              calls to detach() on DOM objects. Also added code to not call detach() on the
              document when it's in the page cache.
              (WebCore::Frame::setDocument): This call site already had the attached() check,
              but was missing the page cache check.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25395 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      47829106
  21. 04 Sep, 2007 2 commits
    • hyatt's avatar
      Fix build bustage. · 2e40056a
      hyatt authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25361 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e40056a
    • hyatt's avatar
      WebCore: · b21f837d
      hyatt authored
              Fix for <rdar://problem/5271213>, resizing iChat window is slower than in
              Tiger. This patch implements a fast scaling mode that can be used by
              WebViews, e.g., during window resizing.
      
              Reviewed by John Sullivan
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * page/Frame.cpp:
              (WebCore::FramePrivate::FramePrivate):
              * page/Page.cpp:
              (WebCore::Page::Page):
              (WebCore::Page::inLowQualityImageInterpolationMode):
              (WebCore::Page::setInLowQualityImageInterpolationMode):
              * page/Page.h:
              * platform/graphics/GraphicsContext.cpp:
              (WebCore::GraphicsContext::drawImage):
              * platform/graphics/GraphicsContext.h:
              (WebCore::GraphicsContext::setUseLowQualityImageInterpolation):
              (WebCore::GraphicsContext::useLowQualityImageInterpolation):
              * platform/graphics/cg/GraphicsContextCG.cpp:
              (WebCore::GraphicsContext::setUseLowQualityImageInterpolation):
              (WebCore::GraphicsContext::useLowQualityImageInterpolation):
              * rendering/RenderImage.cpp:
              (WebCore::RenderImage::paint):
      
      WebKit:
      
              Fix for <rdar://problem/5271213>, resizing iChat window is slower than in
              Tiger.  This patch implements a fast scaling mode that can be used by
              WebViews, e.g., during window resizing.
      
              Reviewed by John Sullivan
      
              * WebView/WebView.mm:
              (-[WebView _setUseFastImageScalingMode:]):
              (-[WebView _inFastImageScalingMode]):
              * WebView/WebViewPrivate.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25360 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b21f837d
  22. 26 Aug, 2007 1 commit
    • antti's avatar
      WebCore: · 4c8472f6
      antti authored
              Reviewed by Darin.
              
              Fix for <rdar://problem/5433726>
              Mail crash at WebCore::Frame::styleForSelectionStart() when deleting a selection in a HTML message (http://www.yahoo.com/)
      
              Test: editing/style/temporary-span-crash.html
      
              * page/Frame.cpp:
              (WebCore::Frame::styleForSelectionStart):
              Temporary span created here might not have renderer if document has style sheet that makes it display:none.
              Set display:inline explicitly in spans style attribute. This temporary span does not need to get its display 
              value from actual document style sheets. Null check the renderer too to be sure.
      
      LayoutTests:
      
              Reviewed by Darin.
              
              Test for <rdar://problem/5433726>
              Mail crash at WebCore::Frame::styleForSelectionStart() when deleting a selection in a HTML message (http://www.yahoo.com/)
      
              * editing/style/temporary-span-crash-expected.txt: Added.
              * editing/style/temporary-span-crash.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4c8472f6
  23. 15 Aug, 2007 2 commits
    • bdakin's avatar
      Reviewed by Hyatt. · 5422d6d5
      bdakin authored
              Rolling back in. I made a silly mistake in XMLTokenizer that caused 
              this patch to crash SVG tests. It's fixed now!
      
              Refactor of change for <rdar://problem/5404899> REGRESSION: Mail 
              crash in WebCore::FontFallbackList::fontDataAt() after dragging 
              image into text multiple times
      
              The original fix that I made last night prevents the pending style 
              sheet count from being incremented until the element is in the 
              document. This fix prevents the style sheet from loading at all 
              until it is in the document.
      
              Here is the fix.
              * dom/StyleElement.cpp:
              (WebCore::StyleElement::insertedIntoDocument): Call process.
              (WebCore::StyleElement::removedFromDocument): This can be reverted 
              to its original state before my patch last night.
              (WebCore::StyleElement::process): childrenChanged is now called 
              process. Return early if your not in the document.
              (WebCore::StyleElement::createSheet): Revert change from last 
              night. The inDocument check is now in caller childrenChanged.
              * dom/StyleElement.h: insertedIntoDocument() must now accept an 
              element in addition to a document.
      
              This is an optimization to prevent calling updateStyleSelector() 
              too frequently.
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::startElementNs):
              * html/HTMLStyleElement.cpp:
              (WebCore::HTMLStyleElement::HTMLStyleElement):
              (WebCore::HTMLStyleElement::finishedParsing):
              (WebCore::HTMLStyleElement::insertedIntoDocument):
              (WebCore::HTMLStyleElement::childrenChanged):
              (WebCore::HTMLStyleElement::sheetLoaded):
              * html/HTMLStyleElement.h:
              * ksvg2/svg/SVGStyleElement.cpp:
              (WebCore::SVGStyleElement::SVGStyleElement):
              (WebCore::SVGStyleElement::finishedParsing):
              (WebCore::SVGStyleElement::insertedIntoDocument):
              (WebCore::SVGStyleElement::childrenChanged):
              (WebCore::SVGStyleElement::sheetLoaded):
              * ksvg2/svg/SVGStyleElement.h:
              (WebCore::SVGStyleElement::setCreatedByParser):
      
              This is a name change. Document::stylesheetLoaded() 
              is now Document::removePendingSheet()
              * dom/Document.cpp:
              (WebCore::Document::removePendingSheet):
              * dom/Document.h:
              * dom/ProcessingInstruction.cpp:
              (WebCore::ProcessingInstruction::sheetLoaded):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::~HTMLLinkElement):
              (WebCore::HTMLLinkElement::setDisabledState):
              (WebCore::HTMLLinkElement::process):
              (WebCore::HTMLLinkElement::sheetLoaded):
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
              (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
      
              This is another name change. closeRenderer() is now 
              finishedParsing()
              * dom/Node.h:
              (WebCore::Node::finishedParsing):
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::endElementNs):
              (WebCore::):
              * html/HTMLAppletElement.cpp:
              (WebCore::HTMLAppletElement::finishedParsing):
              * html/HTMLAppletElement.h:
              * html/HTMLGenericFormElement.cpp:
              (WebCore::HTMLFormControlElementWithState::finishedParsing):
              * html/HTMLGenericFormElement.h:
              * html/HTMLObjectElement.cpp:
              (WebCore::HTMLObjectElement::finishedParsing):
              * html/HTMLObjectElement.h:
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::insertNode):
              (WebCore::HTMLParser::popOneBlockCommon):
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::finishedParsing):
              * html/HTMLScriptElement.h:
              (WebCore::HTMLStyleElement::setCreatedByParser):
              * ksvg2/svg/SVGAnimationElement.cpp:
              (WebCore::SVGAnimationElement::finishedParsing):
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGElement.cpp:
              (WebCore::SVGElement::finishedParsing):
              * ksvg2/svg/SVGElement.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25098 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5422d6d5
    • bdash's avatar
      Roll out r25082 and the associated tests in r25083 as it introduced crashes in... · 4bf857af
      bdash authored
      Roll out r25082 and the associated tests in r25083 as it introduced crashes in the SVG layout tests.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25090 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4bf857af
  24. 14 Aug, 2007 1 commit
    • bdakin's avatar
      Reviewed by Hyatt. · 23902137
      bdakin authored
              Refactor of change for <rdar://problem/5404899> REGRESSION: Mail 
              crash in WebCore::FontFallbackList::fontDataAt() after dragging 
              image into text multiple times
      
              The original fix that I made last night prevents the pending style 
              sheet count from being incremented until the element is in the 
              document. This fix prevents the style sheet from loading at all 
              until it is in the document.
      
              Here is the fix.
              * dom/StyleElement.cpp:
              (WebCore::StyleElement::insertedIntoDocument): Call process.
              (WebCore::StyleElement::removedFromDocument): This can be reverted 
              to its original state before my patch last night.
              (WebCore::StyleElement::process): childrenChanged is now called 
              process. Return early if your not in the document.
              (WebCore::StyleElement::createSheet): Revert change from last 
              night. The inDocument check is now in caller childrenChanged.
              * dom/StyleElement.h: insertedIntoDocument() must now accept an 
              element in addition to a document.
      
              This is an optimization to prevent calling updateStyleSelector() 
              too frequently.
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::startElementNs):
              * html/HTMLStyleElement.cpp:
              (WebCore::HTMLStyleElement::HTMLStyleElement):
              (WebCore::HTMLStyleElement::finishedParsing):
              (WebCore::HTMLStyleElement::insertedIntoDocument):
              (WebCore::HTMLStyleElement::childrenChanged):
              (WebCore::HTMLStyleElement::sheetLoaded):
              * html/HTMLStyleElement.h:
              * ksvg2/svg/SVGStyleElement.cpp:
              (WebCore::SVGStyleElement::SVGStyleElement):
              (WebCore::SVGStyleElement::finishedParsing):
              (WebCore::SVGStyleElement::insertedIntoDocument):
              (WebCore::SVGStyleElement::childrenChanged):
              (WebCore::SVGStyleElement::sheetLoaded):
              * ksvg2/svg/SVGStyleElement.h:
              (WebCore::SVGStyleElement::setCreatedByParser):
      
              This is a name change. Document::stylesheetLoaded() 
              is now Document::removePendingSheet()
              * dom/Document.cpp:
              (WebCore::Document::removePendingSheet):
              * dom/Document.h:
              * dom/ProcessingInstruction.cpp:
              (WebCore::ProcessingInstruction::sheetLoaded):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::~HTMLLinkElement):
              (WebCore::HTMLLinkElement::setDisabledState):
              (WebCore::HTMLLinkElement::process):
              (WebCore::HTMLLinkElement::sheetLoaded):
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
              (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
      
              This is another name change. closeRenderer() is now 
              finishedParsing()
              * dom/Node.h:
              (WebCore::Node::finishedParsing):
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::endElementNs):
              (WebCore::):
              * html/HTMLAppletElement.cpp:
              (WebCore::HTMLAppletElement::finishedParsing):
              * html/HTMLAppletElement.h:
              * html/HTMLGenericFormElement.cpp:
              (WebCore::HTMLFormControlElementWithState::finishedParsing):
              * html/HTMLGenericFormElement.h:
              * html/HTMLObjectElement.cpp:
              (WebCore::HTMLObjectElement::finishedParsing):
              * html/HTMLObjectElement.h:
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::insertNode):
              (WebCore::HTMLParser::popOneBlockCommon):
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::finishedParsing):
              * html/HTMLScriptElement.h:
              (WebCore::HTMLStyleElement::setCreatedByParser):
              * ksvg2/svg/SVGAnimationElement.cpp:
              (WebCore::SVGAnimationElement::finishedParsing):
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGElement.cpp:
              (WebCore::SVGElement::finishedParsing):
              * ksvg2/svg/SVGElement.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      23902137
  25. 10 Aug, 2007 1 commit
    • thatcher's avatar
      JavaScriptCore: · 43a079ef
      thatcher authored
              Reviewed by Adam.
      
              <rdar://problem/5394449> Stop using some Carbon UI APIs for 64 bit
      
              Disable the NPAPI for 64-bit on Mac OS X.
      
              * Configurations/JavaScriptCore.xcconfig: Use the 64-bit export file.
              * JavaScriptCore.xcodeproj/project.pbxproj: Create a 64-bit export file
              that filters out the NPN fnctions.
              * bindings/NP_jsobject.cpp: #ifdef out this for 64-bit on Mac OS X
              * bindings/NP_jsobject.h: Ditto.
              * bindings/c/c_class.cpp: Ditto.
              * bindings/c/c_class.h: Ditto.
              * bindings/c/c_instance.cpp: Ditto.
              * bindings/c/c_instance.h: Ditto.
              * bindings/c/c_runtime.cpp: Ditto.
              * bindings/c/c_runtime.h: Ditto.
              * bindings/c/c_utility.cpp: Ditto.
              * bindings/c/c_utility.h: Ditto.
              * bindings/npapi.h: Ditto.
              * bindings/npruntime.cpp: Ditto.
              * bindings/npruntime.h: Ditto.
              * bindings/npruntime_impl.h: Ditto.
              * bindings/npruntime_priv.h: Ditto.
              * bindings/runtime.cpp:
              (KJS::Bindings::Instance::createBindingForLanguageInstance):
               don't creat an NPObject on Mac OS X in 64-bit.
      
      WebCore:
      
              Reviewed by Adam.
      
              <rdar://problem/5394449> Stop using some Carbon UI APIs for 64 bit
      
              Disable NPObject use in 64-bit on Mac OS X.
      
              * Configurations/WebCore.xcconfig: Add a framework search path to the sub-framworks of Carbon.
              * WebCore.xcodeproj/project.pbxproj: Filter out the Frame::windowScriptNPObject() symbol in 64-bit.
              * bindings/objc/DOM.mm:
              (-[DOMElement _NPObject]): Return null in 64-bit.
              * config.h: Set WTF_USE_NPOBJECT to 0 in 64-bit Mac OS X.
              * page/Frame.cpp:
              (WebCore::Frame::cleanupScriptObjects): Add more #if USE(NPOBJECT) blocks where needed.
              * page/Frame.h: Ditto.
              * page/mac/FrameMac.mm:
              (WebCore::Frame::createScriptInstanceForWidget): Ditto.
              * page/mac/WebCoreFrameBridge.h: Ditto.
              * page/mac/WebCoreFrameBridge.mm: Ditto.
      
      WebKit:
      
              Reviewed by Adam.
      
              <rdar://problem/5394449> Stop using some Carbon UI APIs for 64 bit
      
              Disable NPObject use in 64-bit on Mac OS X. Also generate the 64-bit export file.
      
              * Configurations/WebKit.xcconfig: Point to the generated 64-bit export file.
              * Plugins/WebBasePluginPackage.h:
              * Plugins/npfunctions.h: #ifdef out this header in 64-bit on Mac OS X.
              * WebKit.LP64.exp: Removed.
              * WebKit.xcodeproj/project.pbxproj: Generate the the 64-bit export file.
              * WebKitPrefix.h: Define WTF_USE_NPOBJECT.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25000 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      43a079ef
  26. 08 Aug, 2007 1 commit
    • ggaren's avatar
      Reviewed by Maciej Stachowiak. · 1f92a1ab
      ggaren authored
              Added a thrash check to live decoded resource eviction.
              
              Here's the strategy: Stamp every image with its paint time. Don't evict 
              a live decoded resource until another resource paints with a reasonably
              (1 second) larger time stamp. 
              
              If no other resource paints, or another resource paints, but very soon 
              after the resource in question, the resource in question is very likely 
              to paint again soon. In fact, it's probably still on screen. So we 
              leave it alone. (Previously, we evicted it on a timer, but that would 
              evict a resource that was still on screen, hurting speed without 
              helping memory use.)
      
              In theory, this algorithm allows a single large resource or closely 
              related set of resources to linger in the live decoded cache even 
              though the cache is over its limit. However, that can only happen as 
              long as no other resource ever paints again, which guarantees an 
              absolute cap on cache memory usage from then on. Also, the resources 
              will only linger as long as they remain live. Upon going dead, they 
              will flush. Also, these circumstances are so rare that they are almost 
              impossible to encounter in the wild. So don't sweat it.
              
              Stop evicting if the next resource painted too recently:
              
              * loader/Cache.cpp:
              (WebCore::Cache::pruneLiveResources):
              * loader/CachedResource.cpp:
              (WebCore::CachedResource::CachedResource):
              (WebCore::CachedResource::liveResourceAccessed):
              * loader/CachedResource.h:
      
              Track the paint time stamp in Frame. We do this to give a consistent
              stamp to all resources painted in a single paint operation (in case the
              operation takes a significant amount of time), and to avoid excessive 
              calls to system time functions, which hurt the PLT:
      
              * page/Frame.cpp:
              (WebCore::Frame::paint):
              * page/Frame.h:
              (WebCore::Frame::currentPaintTimeStamp):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f92a1ab
  27. 05 Aug, 2007 1 commit
    • antti's avatar
      Reviewed by Darin. · 6e917c3a
      antti authored
              Fix <rdar://problem/5378214>
              Mail crashes at RenderLayer::paintLayer() when dragging a selection over To Do text
              
              ObjC interface does not guarantee that Document::updateRendering() gets called after
              modification are made to document. This can lead to situation where paint()
              is invoked with document still dirty which can then crash in number of interesting ways.
              
              - add hasChangedChild() as needsLayout() condition. layout() will then call recalcStyle() 
                catching most cases and making sure document is not dirty when entering painting.
              - protect recalcStyle() and layout() from being executed during painting. There are some
                cases needsLayout() protection does not cover.
              
              No layout test, these states are very hard or impossible to reach using Javascript interface
              (which generally guarantees that updateRendering() is done right after execution).
      
              * dom/Document.cpp:
              (WebCore::Document::recalcStyle):
              * page/Frame.cpp:
              (WebCore::Frame::paint):
              (WebCore::Frame::setPaintRestriction):
              (WebCore::Frame::isPainting):
              (WebCore::FramePrivate::FramePrivate):
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameView.cpp:
              (WebCore::FrameView::layout):
              (WebCore::FrameView::needsLayout):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24878 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e917c3a
  28. 24 Jul, 2007 1 commit
    • oliver's avatar
      WebCore: · 55cc92b5
      oliver authored
              Reviewed by Adam and Justin.
      
              <rdar://problem/5141779> WebView editableDOMRangeForPoint: & moveDragCaretToPoint: returns last position in DOMText range
      
              Remove bridge implementation for editableDOMRangeForPoint: and moveDragCaretToPoint:. 
              Now use cross-platform code Editor::rangeForPoint and DragController::placeDragCaret instead.
              This required lifting local code from DragController.cpp into the shared methods
              Frame::visiblePositionForPoint and Frame::documentAtPoint.
      
              * WebCore.exp:
              * editing/Editor.cpp:
              (WebCore::Editor::rangeForPoint):
              * editing/Editor.h:
              * page/DragController.cpp:
              (WebCore::DragController::dragEnded):
              (WebCore::DragController::performDrag):
              (WebCore::DragController::dragEnteredOrUpdated):
              (WebCore::DragController::tryDocumentDrag):
              (WebCore::DragController::operationForLoad):
              (WebCore::setSelectionToDragCaret):
              (WebCore::DragController::concludeDrag):
              (WebCore::DragController::placeDragCaret):
              * page/DragController.h:
              * page/Frame.cpp:
              (WebCore::Frame::visiblePositionForPoint):
              (WebCore::Frame::documentAtPoint):
              * page/Frame.h:
              * page/mac/WebCoreFrameBridge.h:
              * page/mac/WebCoreFrameBridge.mm:
      
      WebKit:
      
              Reviewed by Adam and Justin.
      
              <rdar://problem/5141779> WebView editableDOMRangeForPoint: & moveDragCaretToPoint: returns last position in DOMText range
      
              editableDOMRangeForPoint:, moveDragCaretToPoint:, and removeDragCaret now call directly into
              WebCore without relying on bridge look up through the now removed _bridgeAtPoint:.
      
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebView.mm:
              (-[WebView moveDragCaretToPoint:]):
              (-[WebView removeDragCaret]):
              (-[WebView editableDOMRangeForPoint:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55cc92b5
  29. 20 Jul, 2007 1 commit
    • ggaren's avatar
      Reviewed by Darin Adler. · 4434b147
      ggaren authored
              
              Fixed http://bugs.webkit.org/show_bug.cgi?id=12900 Page tear-down 
              forces garbage collection once per frame
      
              Also fixed <rdar://problem/5286989> GC on window close does not always 
              bring the JS object count down to 0
              
              Implemented a 0-delay GC timer in WebCore. Instead of forcing GC
              immediately, code that thinks it has created a lot of garbage starts
              the timer. This has two advantages: 
      
              1) Multiple GCs can coalesce. In my pathological test case, this 
              improves performance by an order of magnitude. 
              
              2) Conservative marking is less likely to keep alive important dead
              objects, like the window object, because the stack is small and free of
              JS processing when the timer fires.
      
              Added GCController.h/.cpp, sometimes blindly:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
      
              Added singleton that implements GC on a 0-delay timer:
              * bindings/js/GCController.h: Added.
              * bindings/js/GCController.cpp: Added.
              
              Changed Collector::collect() calls below to call to the singleton:
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::~KJSProxy):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::clear):
              * history/CachedPage.cpp:
              (WebCore::CachedPage::clear):
              
              * page/Frame.cpp:
              (WebCore::Frame::~Frame): Removed previous slightly hackish attempt to
              avoid conservative marking of the window object.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24493 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4434b147
  30. 17 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · f9307634
      weinig authored
              Reviewed by Geoff Garen.
      
              Test for <rdar://problem/5333957>
      
              * http/tests/security/cross-frame-access-protocol.html: Fix a few typos.
              * http/tests/security/cross-frame-access-selection-expected.txt: Added.
              * http/tests/security/cross-frame-access-selection.html: Added.
              * http/tests/security/resources/foreign-domain-iframe-for-selection-test.html: Added.
      
      WebCore:
      
              Reviewed by Geoff Garen.
      
              Fix for <rdar://problem/5333957>
                      http://bugs.webkit.org/show_bug.cgi?id=14610
      
              Original patch by Feng Qian.
      
              - Clear the selection object when disconnecting a frame.
      
              Test: http/tests/security/cross-frame-access-selection.html
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::clear):
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::disconnectFrame):
              (WebCore::DOMWindow::clear):
              * page/DOMWindow.h:
              * page/Frame.cpp:
              (WebCore::Frame::clearScriptProxy):
              (WebCore::Frame::clearDOMWindow):
              * page/Frame.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f9307634
  31. 11 Jul, 2007 2 commits
  32. 06 Jul, 2007 1 commit
    • oliver's avatar
      WebCore: · 4c510c0f
      oliver authored
              Reviewed by Maciej.
      
              Pulled a number of methods from WebKit and WebCoreFrameBridge into 
              C++ objects.
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * editing/Editor.cpp:
              (WebCore::Editor::replaceMarkedText):
                  From -[WebCoreFrameBridge replaceMarkedTextWithText:]
              * editing/Editor.h:
              * page/Frame.cpp:
              (WebCore::Frame::setMarkedTextRange):
                  Pulled platform independent logic from Mac specific implementation
              (WebCore::Frame::selectRangeInMarkedText):
                  Converted from -[WebHTMLView _selectRangeInMarkedText:]
              * page/Frame.h:
              * page/mac/FrameMac.mm:
              (WebCore::Frame::setMarkedTextRange):
                  Now only does Mac specific logic when manipulating initial
                  NSAttributedString
              * page/mac/WebCoreFrameBridge.h:
              * page/mac/WebCoreFrameBridge.mm:
                  Removed -[WebCoreFrameBridge replaceMarkedTextWithText:]
      
      WebKit:
      
              Reviewed by Maciej.
      
              <rdar://problem/5318756> Need to refactor IM/Marked text code to share logic with windows.
      
              Moved a number of methods from WebHTMLView into WebCore.
              Replaced bridge methods with calls directly into WebCore objects.
      
              * WebKit.xcodeproj/project.pbxproj:
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView setMarkedText:selectedRange:]):
                Now calls WebCore object methods directly, rather than calling 
                via the bridge.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24085 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4c510c0f
  33. 05 Jul, 2007 2 commits
    • sullivan's avatar
      WebCore: · 4ea5e41a
      sullivan authored
              Reviewed by Adam
      
              - WebCore part of fix for <rdar://problem/5315033>
      
              * rendering/RenderObject.h:
              replaced PaintRestrictionSelectionOnlyWhiteText with PaintRestrictionSelectionOnlyBlackText
              (WebCore::RenderObject::PaintInfo::PaintInfo):
              replaced forceWhiteText with forceBlackText
      
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::addLineBoxRects):
              added a useSelectionHeight parameter, which defaults to false; this method is unimplemented
              at this level so this has no effect.
      
              * rendering/RenderText.h:
              * rendering/RenderText.cpp:
              (WebCore::RenderText::addLineBoxRects):
              added a useSelectionHeight parameter, which defaults to false. If true, use the vertical position
              and height returned by selectionRect rather than replacing it with the more tight-fitting position
              and height of the line box.
      
              * dom/Range.h:
              * dom/Range.cpp:
              (WebCore::Range::addLineBoxRects):
              added a useSelectionHeight parameter, which defaults to false. Passes this along to RenderObject.        
      
              * page/Frame.h:
              renamed parameter to selectionImage
              * page/Frame.cpp:
              (WebCore::Frame::selectionTextRects):
              pass true for addLineBoxRects new useSelectionHeight parameter, so the rects returned by this new
              method will match the height that the selection would be painted here
              (WebCore::Frame::paint):
              updated for white->black name changes
              
              * page/mac/FrameMac.mm:
              (WebCore::Frame::selectionImage):
              updated for white->black name changes
              
              * rendering/InlineFlowBox.cpp:
              (WebCore::InlineFlowBox::paintTextDecorations):
              updated for white->black name changes
      
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::paintLayer):
              updated for white->black name changes
      
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::paint):
              updated for white->black name changes, and actually use black instead of white. This was the goal
              of all the name changes.
      
      WebKit:
      
              Reviewed by Adam
              
              - WebKit part of fix for <rdar://problem/5315033>
      
              * WebView/WebDocumentPrivate.h:
              new selectionImageForcingBlackText: method. selectionImageForcingWhiteText: is no longer used and was never
              in an official release of WebKit, so it could be removed, except that doing so would cause trouble for people
              using nightly WebKit with Safari 3.0 beta. So I left it in, but made it just force black text instead of
              white text, which will look different for those nightly WebKit/Safari 3.0 beta people but not break anything.
              
              * Misc/WebSearchableTextView.m:
              (-[WebSearchableTextView selectionImageForcingBlackText:]):
              new unimplemented protocol method for this obsolete class
              
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView selectionImageForcingBlackText:]):
              calls through to WebCore the way selectionImageForcingWhiteText: used to
              (-[WebHTMLView selectionImageForcingWhiteText:]):
              now just calls selectionImageForcingBlackText:, thus not working as you would expect from the name
              
              * WebView/WebPDFView.mm:
              (-[WebPDFView selectionImageForcingBlackText:]):
              guts of old selectionImageForcingWhiteText:, but with black substituted for white
              (-[WebPDFView selectionImageForcingWhiteText:]):
              now just calls selectionImageForcingBlackText:, thus not working as you would expect from the name
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24041 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ea5e41a
    • andersca's avatar
      Reviewed by Oliver. · 4e01b3cd
      andersca authored
              <rdar://problem/5106788>
              WebKit loads user style sheets too late as seen in Mail (breaks DataDetectors; Mail flashes wrong font)
      
              Let the document know when the user style sheet is loading so that it try not to display anything
              until the user style sheet has finished loading.
              
              * page/Frame.cpp:
              (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
              (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
              (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
              (WebCore::Frame::setUserStyleSheetLocation):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e01b3cd