1. 13 May, 2009 40 commits
    • darin@apple.com's avatar
      JavaScriptCore: · d8085775
      darin@apple.com authored
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Revert the parser arena change. It was a slowdown, not a speedup.
              Better luck next time (I'll break it up into pieces).
      
      WebCore:
      
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Revert the parser arena change. It was a slowdown, not a speedup.
              Better luck next time (I'll break it up into pieces).
      
      WebKit/mac:
      
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Revert the parser arena change. It was a slowdown, not a speedup.
              Better luck next time (I'll break it up into pieces).
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d8085775
    • alice.liu@apple.com's avatar
    • hyatt@apple.com's avatar
      WebCore: · 49d70337
      hyatt@apple.com authored
      2009-05-13  David Hyatt  <hyatt@apple.com>
      
              Reviewed by Beth Dakin and Darin Adler.
      
              Fix for <rdar://problem/6869687> REGRESSION (r41203): Facebook friend suggestions disappear on update.
              
              Make sure that renderers are marked for layout if a style change causes them to switch from having a self-painting layer
              to a non-self-painting layer (and vice versa).
              
              Move misplaced layer repainting code that was in RenderBox up into RenderBoxModelObject so that inlines with layers
              repaint properly on opacity changes, etc.
      
              Added fast/repaint/opacity-change-on-overflow-float.html.
      
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::styleWillChange):
              * rendering/RenderBoxModelObject.cpp:
              (WebCore::RenderBoxModelObject::styleWillChange):
              (WebCore::RenderBoxModelObject::styleDidChange):
              * rendering/RenderBoxModelObject.h:
      
      LayoutTests:
      
      2009-05-13  David Hyatt  <hyatt@apple.com>
      
              Reviewed by Beth Dakin and Darin Adler.
      
              Add a repaint test for <rdar://problem/6869687> REGRESSION (r41203): Facebook friend suggestions disappear on update.
      
              * fast/repaint/opacity-change-on-overflow-float.html: Added.
              * platform/mac/fast/repaint/opacity-change-on-overflow-float-expected.checksum: Added.
              * platform/mac/fast/repaint/opacity-change-on-overflow-float-expected.png: Added.
              * platform/mac/fast/repaint/opacity-change-on-overflow-float-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43657 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      49d70337
    • kov@webkit.org's avatar
      2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · c87c90e4
      kov@webkit.org authored
              Disable new tests. We are not going to be adding more new test
              results for now, for we want to better sort out things such as
              fixed DPI, and easily reproducible font configuration.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c87c90e4
    • darin@apple.com's avatar
      2009-05-13 Darin Adler <darin@apple.com> · 240c7ca3
      darin@apple.com authored
              Tiger build fix.
      
              * parser/Grammar.y: Add back empty code blocks, needed by older
              versions of bison on certain rules.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      240c7ca3
    • dglazkov@chromium.org's avatar
      2009-05-13 Dimitri Glazkov <dglazkov@chromium.org> · 84aa52f5
      dglazkov@chromium.org authored
              Not reviewed, build fix.
      
              Move an include, needed by Debugger under the corresponding guard.
      
              * inspector/InspectorController.cpp: Moved parser/SourceCode under JAVASCRIPT_DEBUGGER
                  guard.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      84aa52f5
    • levin@chromium.org's avatar
      WebCore: · 0be72014
      levin@chromium.org authored
      2009-05-13  David Levin  <levin@chromium.org>
      
              Reviewed by Darin Adler.
      
              Bug 25394: REGRESSION: crash in DocumentLoader::addResponse due to bad |this| pointer
              https://bugs.webkit.org/show_bug.cgi?id=25394
      
              Test: http/tests/xmlhttprequest/frame-unload-abort-crash.html
      
              * loader/SubresourceLoader.cpp:
              (WebCore::SubresourceLoader::create):
              Add another check to subresource loader to avoid doing any loads in frames
              when the loaders are being stopped.
      
      LayoutTests:
      
      2009-05-13  David Levin  <levin@chromium.org>
      
              Reviewed by Darin Adler.
      
              Bug 25394: REGRESSION: crash in DocumentLoader::addResponse due to bad |this| pointer
              https://bugs.webkit.org/show_bug.cgi?id=25394
      
              Request a subresource load for an IMG after 'unload' and before the next
              page load completes to expose the crash.
      
              * http/tests/xmlhttprequest/frame-unload-abort-crash-expected.txt: Added.
              * http/tests/xmlhttprequest/frame-unload-abort-crash.html: Added.
              * http/tests/xmlhttprequest/resources/xmlhttprequest-in-unload.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0be72014
    • kov@webkit.org's avatar
      2009-05-13 Stephan Haller <nomad@froevel.de> · 6c7d983a
      kov@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Wrong handling of file upload if no file selected
              https://bugs.webkit.org/show_bug.cgi?id=25649
      
              Fixed returned path if path is empty
      
              * WebCore/platform/gtk/FileSystemGtk.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43649 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6c7d983a
    • sfalken@apple.com's avatar
      Windows build fix. · 406d019d
      sfalken@apple.com authored
              * JavaScriptCore.vcproj/jsc/jsc.vcproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43648 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      406d019d
    • aroben@apple.com's avatar
      Windows build fixes after r43642 · 3adc13c0
      aroben@apple.com authored
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
              Updated.
      
              * debugger/Debugger.cpp:
              * runtime/ArrayConstructor.cpp:
              * runtime/JSArray.cpp:
              * runtime/RegExp.cpp:
              * runtime/RegExpConstructor.cpp:
              * runtime/RegExpPrototype.cpp:
              * runtime/StringPrototype.cpp:
              Added missing #includes.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43647 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3adc13c0
    • mitz@apple.com's avatar
      WebCore: · 9f58d104
      mitz@apple.com authored
              Reviewed by Dave Hyatt.
      
              - fix <rdar://problem/6805567> REGRESSION (r42348): Notes flicker white
                when loading
      
              Tests: fast/frames/content-opacity-1.html
                     fast/frames/content-opacity-2.html
      
              * page/FrameView.cpp:
              (WebCore::FrameView::reset): Reset m_contentIsOpaque to false.
              (WebCore::FrameView::useSlowRepaints): Use slow repaints if the content
              is not known to be opaque.
              (WebCore::FrameView::setContentIsOpaque): Added. Sets m_contentIsOpaque
              and enables or disables fast repaints accordingly.
              * page/FrameView.h:
              * rendering/RenderBoxModelObject.cpp:
              (WebCore::RenderBoxModelObject::paintFillLayerExtended): Removed the
              document()->haveStylesheetsLoaded() condition in determining whether the
              root is opaque. This is what was causing the bug, as iframes were
              considered to be opaque, and thus painted an opaque white background,
              whenever they were pending a style sheet load.
              Changed to call FrameView::setContentIsOpaqe() instead of
              setUseSlowRepaints(), which allows the frame to go back to fast repaints
              if the content becomes opaque.
              Corrected the check for background color opacity: any alpha value other
              than 255--not just zero--is not opaque.
      
      LayoutTests:
      
              Reviewed by Dave Hyatt.
      
              - tests for <rdar://problem/6805567> REGRESSION (r42348): Notes flicker
                white when loading
      
              * fast/frames/content-opacity-1.html: Added.
              * fast/frames/content-opacity-2.html: Added.
              * platform/mac/fast/frames/content-opacity-1-expected.checksum: Added.
              * platform/mac/fast/frames/content-opacity-1-expected.png: Added.
              * platform/mac/fast/frames/content-opacity-1-expected.txt: Added.
              * platform/mac/fast/frames/content-opacity-2-expected.checksum: Added.
              * platform/mac/fast/frames/content-opacity-2-expected.png: Added.
              * platform/mac/fast/frames/content-opacity-2-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43646 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f58d104
    • ariya@webkit.org's avatar
      2009-05-13 Ariya Hidayat <ariya.hidayat@nokia.com> · dc3bb22c
      ariya@webkit.org authored
              Reviewed by Sam Weinig.
      
              [Qt] Fix "lighther" composition mode.
              QPainter::CompositionMode_Plus is the right match.
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
              (WebCore::toQtCompositionMode):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43645 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dc3bb22c
    • xan@webkit.org's avatar
      2009-05-13 Xan Lopez <xlopez@igalia.com> · a26216dd
      xan@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Do not handle KeyEvents with Ctrl or Alt modifiers that we
              otherwise know nothing about. Otherwise shortcuts defined in the
              WebView will never be executed.
      
              * WebCoreSupport/EditorClientGtk.cpp:
              (WebKit::handleEditingKeyboardEvent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43644 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a26216dd
    • darin@apple.com's avatar
      Darn, Cameron caught it but I forgot to fix it. · c4183007
      darin@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43643 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c4183007
    • darin@apple.com's avatar
      JavaScriptCore: · 53ecc4e3
      darin@apple.com authored
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Reviewed by Cameron Zwarich.
      
              Bug 25674: syntax tree nodes should use arena allocation
              https://bugs.webkit.org/show_bug.cgi?id=25674
      
              Step 3: Add some actual arena allocation. About 1% SunSpider speedup.
      
              * JavaScriptCore.exp: Updated.
      
              * bytecompiler/BytecodeGenerator.cpp:
              (JSC::BytecodeGenerator::BytecodeGenerator): Updated since VarStack
              contains const Identifier* now.
              (JSC::BytecodeGenerator::emitPushNewScope): Updated to take a const
              Identifier&.
              * bytecompiler/BytecodeGenerator.h: Ditto
      
              * bytecompiler/SegmentedVector.h: Added isEmpty.
      
              * debugger/Debugger.cpp:
              (JSC::Debugger::recompileAllJSFunctions): Moved this function here from
              WebCore so WebCore doesn't need the details of FunctionBodyNode.
              * debugger/Debugger.h: Ditto.
      
              * interpreter/Interpreter.cpp:
              (JSC::Interpreter::execute): Updated since VarStack contains const
              Identifier* now.
      
              * jit/JITStubs.cpp:
              (JSC::JITStubs::cti_vm_lazyLinkCall): Call isHostFunction on the body
              rather than on the function object, since we can't easily have inlined
              access to the FunctionBodyNode in JSFunction.h since WebCore needs
              access to that header.
              (JSC::JITStubs::cti_op_construct_JSConstruct): Ditto.
              * profiler/Profiler.cpp:
              (JSC::Profiler::createCallIdentifier): Ditto.
      
              * parser/Grammar.y: Use JSGlobalData* to pass the global data pointer
              around whenever possible instead of using void*. Changed
              SET_EXCEPTION_LOCATION from a macro to an inline function. Marked
              the structure-creating functions inline. Changed the VarStack to use
              identifier pointers instead of actual identifiers. This takes
              advantage of the fact that all identifier pointers come from the
              arena and avoids referenc count churn. Changed Identifier* to
              const Identifier* to make sure we don't modify any by accident.
              Used identifiers for regular expression strings too, using the new
              scanRegExp that has out parameters instead of the old one that relied
              on side effects in the Lexer. Move the creation of numeric identifiers
              out of this file and into the PropertyNode constructor.
      
              * parser/Lexer.cpp:
              (JSC::Lexer::setCode): Pass in ParserArena, used for identifiers.
              (JSC::Lexer::makeIdentifier): Changed return type to const Identifier*
              and changed to call ParserArena.
              (JSC::Lexer::scanRegExp): Added out arguments that are const Identifier*
              as well as a prefix character argument so we can handle the /= case
              without a string append.
              (JSC::Lexer::skipRegExp): Added. Skips a regular expression without
              allocating Identifier objects.
              (JSC::Lexer::clear): Removed the code to manage m_identifiers, m_pattern,
              and m_flags, and added code to set m_arena to 0.
              * parser/Lexer.h: Updated for changes above.
      
              * parser/NodeConstructors.h:
              (JSC::ParserArenaFreeable::operator new): Added. Calls allocateFreeable
              on the arena.
              (JSC::ParserArenaDeletable::operator new): Changed to call the
              allocateDeletable function on the arena instead of deleteWithArena.
              (JSC::RegExpNode::RegExpNode): Changed arguments to Identifier instead
              of UString since these come from the parser which makes identifiers.
              (JSC::PropertyNode::PropertyNode): Added new constructor that makes
              numeric identifiers. Some day we might want to optimize this for
              integers so it doesn't create a string for each one.
              (JSC::ContinueNode::ContinueNode): Initialize m_ident to nullIdentifier
              since it's now a const Identifier& so it can't be left uninitialized.
              (JSC::BreakNode::BreakNode): Ditto.
              (JSC::CaseClauseNode::CaseClauseNode): Updated to use SourceElements*
              to keep track of the statements rather than a separate statement vector.
              (JSC::BlockNode::BlockNode): Ditto.
              (JSC::ForInNode::ForInNode): Initialize m_ident to nullIdentifier.
      
              * parser/Nodes.cpp: Moved the comment explaining emitBytecode in here.
              It seemed strangely out of place in the header.
              (JSC::ThrowableExpressionData::emitThrowError): Added an overload for
              UString as well as Identifier.
              (JSC::SourceElements::singleStatement): Added.
              (JSC::SourceElements::lastStatement): Added.
              (JSC::RegExpNode::emitBytecode): Updated since the pattern and flags
              are now Identifier instead of UString. Also changed the throwError code
              to use the substitution mechanism instead of doing a string append.
              (JSC::SourceElements::emitBytecode): Added. Replaces the old
              statementListEmitCode function, since we now keep the SourceElements
              objects around.
              (JSC::BlockNode::lastStatement): Added.
              (JSC::BlockNode::emitBytecode): Changed to use emitBytecode instead of
              statementListEmitCode.
              (JSC::CaseClauseNode::emitBytecode): Added.
              (JSC::CaseBlockNode::emitBytecodeForBlock): Changed to use emitBytecode
              instead of statementListEmitCode.
              (JSC::ScopeNodeData::ScopeNodeData): Changed to store the
              SourceElements* instead of using releaseContentsIntoVector.
              (JSC::ScopeNode::emitStatementsBytecode): Added.
              (JSC::ScopeNode::singleStatement): Added.
              (JSC::ProgramNode::emitBytecode): Call emitStatementsBytecode instead
              of statementListEmitCode.
              (JSC::EvalNode::emitBytecode): Ditto.
              (JSC::EvalNode::generateBytecode): Removed code to clear the children
              vector. This optimization is no longer possible since everything is in
              a single arena.
              (JSC::FunctionBodyNode::emitBytecode): Call emitStatementsBytecode
              insetad of statementListEmitCode and check for the return node using
              the new functions.
      
              * parser/Nodes.h: Changed VarStack to store const Identifier* instead
              of Identifier and rely on the arena to control lifetime. Added a new
              ParserArenaFreeable class. Made ParserArenaDeletable inherit from
              FastAllocBase instead of having its own operator new. Base the Node
              class on ParserArenaFreeable. Changed the various Node classes
              to use const Identifier& instead of Identifier to avoid the need to
              call their destructors and allow them to function as "freeable" in the
              arena. Removed extraneous JSC_FAST_CALL on definitions of inline functions.
              Changed ElementNode, PropertyNode, ArgumentsNode, ParameterNode,
              CaseClauseNode, ClauseListNode, and CaseBlockNode to use ParserArenaFreeable
              as a base class since they do not descend from Node. Eliminated the
              StatementVector type and instead have various classes use SourceElements*
              instead of StatementVector. This prevents those classes from having th
              use ParserArenaDeletable to make sure the vector destructor is called.
      
              * parser/Parser.cpp:
              (JSC::Parser::parse): Pass the arena to the lexer.
      
              * parser/Parser.h: Added an include of ParserArena.h, which is no longer
              included by Nodes.h.
      
              * parser/ParserArena.cpp:
              (JSC::ParserArena::ParserArena): Added. Initializes the new members,
              m_freeableMemory, m_freeablePoolEnd, and m_identifiers.
              (JSC::ParserArena::freeablePool): Added. Computes the pool pointer,
              since we store only the current pointer and the end of pool pointer.
              (JSC::ParserArena::deallocateObjects): Added. Contains the common
              memory-deallocation logic used by both the destructor and the
              reset function.
              (JSC::ParserArena::~ParserArena): Changed to call deallocateObjects.
              (JSC::ParserArena::reset): Ditto. Also added code to zero out the
              new structures, and switched to use clear() instead of shrink(0) since
              we don't really reuse arenas.
              (JSC::ParserArena::makeNumericIdentifier): Added.
              (JSC::ParserArena::allocateFreeablePool): Added. Used when the pool
              is empty.
              (JSC::ParserArena::isEmpty): Added. No longer inline, which is fine
              since this is used only for assertions at the moment.
      
              * parser/ParserArena.h: Added an actual arena of "freeable" objects,
              ones that don't need destructors to be called. Also added the segmented
              vector of identifiers that used to be in the Lexer.
      
              * runtime/FunctionConstructor.cpp:
              (JSC::extractFunctionBody): Use singleStatement function rather than
              getting at a StatementVector.
      
              * runtime/FunctionPrototype.cpp:
              (JSC::functionProtoFuncToString): Call isHostFunction on the body
              rather than the function object.
      
              * runtime/JSFunction.cpp:
              (JSC::JSFunction::JSFunction): Moved the structure version of this in
              here from the header. It's not hot enough that it needs to be inlined.
              (JSC::JSFunction::isHostFunction): Moved this in here from the header.
              It's now a helper to be used only within the class.
              (JSC::JSFunction::setBody): Moved this in here. It's not hot enough that
              it needs to be inlined, and we want to be able to compile the header
              without the definition of FunctionBodyNode.
      
              * runtime/JSFunction.h: Eliminated the include of "Nodes.h". This was
              exposing too much JavaScriptCore dependency to WebCore. Because of this
              change and some changes made to WebCore, we could now export a lot fewer
              headers from JavaScriptCore, but I have not done that yet in this check-in.
              Made a couple functions non-inline. Removes some isHostFunction() assertions.
              
              * wtf/FastAllocBase.h: Added the conventional using statements we use in
              WTF so we can use identifiers from the WTF namespace without explicit
              namespace qualification or namespace directive. This is the usual WTF style,
              although it's unconventional in the C++ world. We use the namespace primarily
              for link-time disambiguation, not compile-time.
      
              * wtf/FastMalloc.cpp: Fixed an incorrect comment.
      
      WebCore:
      
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Reviewed by Cameron Zwarich.
      
              Bug 25674: syntax tree nodes should use arena allocation
              https://bugs.webkit.org/show_bug.cgi?id=25674
      
              * bindings/js/JSDOMBinding.h: Removed include of JSFunction.h.
              We don't want the entire DOM binding to depend on that file.
      
              * bindings/js/JSAudioConstructor.cpp: Added include of Error.h.
              Before we inherited this automatically because JDDOMBinding.h
              included JSFunction.h, but that was excessive.
              * bindings/js/JSDOMWindowCustom.cpp: Ditto.
              * bindings/js/JSHTMLInputElementCustom.cpp: Ditto.
              * bindings/js/JSImageConstructor.cpp: Ditto.
              * bindings/js/JSLazyEventListener.cpp: Ditto, but for JSFunction.h.
              * bindings/js/JSMessageChannelConstructor.cpp: Ditto.
              * bindings/js/JSOptionConstructor.cpp: Ditto.
              * bindings/js/JSWorkerConstructor.cpp: Ditto.
              * bindings/js/JSXMLHttpRequestConstructor.cpp: Ditto.
              * bridge/jni/jni_jsobject.mm: Ditto, but for SourceCode.h.
              * inspector/InspectorController.cpp: Ditto.
      
              * inspector/JavaScriptDebugServer.cpp:
              (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
              Moved mose of this function into the base class in JavaScriptCore,
              so the details of compilation don't have to be exposed.
      
      WebKit/mac:
      
      2009-05-13  Darin Adler  <darin@apple.com>
      
              Reviewed by Cameron Zwarich.
      
              Bug 25674: syntax tree nodes should use arena allocation
              https://bugs.webkit.org/show_bug.cgi?id=25674
      
              * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Updated includes.
              New ones needed due to reducing includes of JSDOMBinding.h.
              * WebView/WebScriptDebugger.mm: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43642 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      53ecc4e3
    • xan@webkit.org's avatar
      Forgot to add ChangeLog. · 7f496054
      xan@webkit.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43641 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f496054
    • xan@webkit.org's avatar
      2009-05-13 Xan Lopez <xlopez@igalia.com> · dcfdee8a
      xan@webkit.org authored
              Unreviewed build fix: add JITStubCall.h to files list.
      
              * GNUmakefile.am:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43640 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dcfdee8a
    • darin@apple.com's avatar
      WebCore: · 6dc0e6d2
      darin@apple.com authored
      2009-05-13  Douglas R. Davidson  <ddavidso@apple.com>
      
              Reviewed by Darin Adler.
      
              <rdar://problem/6879145>
              Generate a contextual menu item allowing autocorrections to
              easily be changed back.  Refrain from re-correcting items
              that have already been autocorrected once.
      
              * dom/DocumentMarker.h:
              * editing/Editor.cpp:
              (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
              (WebCore::Editor::changeBackToReplacedString):
              * editing/Editor.h:
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected):
              * page/mac/WebCoreViewFactory.h:
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::populate):
              (WebCore::ContextMenu::checkOrEnableIfNeeded):
              * platform/ContextMenuItem.h:
              * platform/LocalizedStrings.h:
              * platform/mac/LocalizedStringsMac.mm:
              (WebCore::contextMenuItemTagChangeBack):
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::replacedString):
              * rendering/HitTestResult.h:
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::computeRectForReplacementMarker):
              (WebCore::InlineTextBox::paintDocumentMarkers):
              * rendering/InlineTextBox.h:
      
      WebKit/mac:
      
      2009-05-13  Douglas R. Davidson  <ddavidso@apple.com>
      
              Reviewed by Darin Adler.
      
              <rdar://problem/6879145>
              Generate a contextual menu item allowing autocorrections to
              easily be changed back.  Refrain from re-correcting items
              that have already been autocorrected once.
      
              * WebCoreSupport/WebViewFactory.mm:
              (-[WebViewFactory contextMenuItemTagChangeBack:]):
              * WebView/WebUIDelegatePrivate.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6dc0e6d2
    • ariya@webkit.org's avatar
      2009-05-13 Yael Aharon <yael.aharon@nokia.com> · 36f3fe57
      ariya@webkit.org authored
              Reviewed by Ariya Hidayat.
      
              Move emitting the signal QWebFrame::urlChanged to FrameLoaderClientQt::dispatchDidCommitLoad().
              This is to ensure that urlChanged() is emitted even if the frame has no title.
      
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
              (WebCore::FrameLoaderClientQt::dispatchDidCommitLoad):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36f3fe57
    • ariya@webkit.org's avatar
      2009-05-13 Ariya Hidayat <ariya.hidayat@nokia.com> · 6d518789
      ariya@webkit.org authored
              Unreviewed build fix, as suggested by Yael Aharon <yael.aharon@nokia.com>.
      
              * wtf/qt/ThreadingQt.cpp:
              (WTF::waitForThreadCompletion): renamed IsValid to isValid.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d518789
    • ddkilzer@apple.com's avatar
      Fix resolve-ChangeLogs when used with Subversion · c2a96f41
      ddkilzer@apple.com authored
              Reviewed by Darin Adler.
      
              Fixes the following issue when run on a Subversion repository:
      
                  $ ./WebKitTools/Scripts/resolve-ChangeLogs
                  ERROR: --continue may only be used with a git repository
      
              * Scripts/resolve-ChangeLogs: Check for the boolean value of
              $gitRebaseContinue, not whether it's defined, when validating
              command-line switches.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43636 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2a96f41
    • kov@webkit.org's avatar
      2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · d7b77145
      kov@webkit.org authored
              Add information about the SVG index bounds check committed in
              r43590.
      
              * NEWS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7b77145
    • zecke@webkit.org's avatar
      [GTK] Fix Gtk+/X11 build on OSX · 4d817ffd
      zecke@webkit.org authored
      Including the CoreFoundation header here and X11 headers
      later will result in different definitions for Boolean. The
      CoreFoundation include does not seem to be necessary here
      and my mac build was successfull without it. I will remove
      it for now. If the build bots disagree this will be replaced
      by a #if PLATFORM(CF).
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43634 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d817ffd
    • zecke@webkit.org's avatar
      [GTK] Move the #ifdef around for a buildfix for Gtk+ on OSX · 68129313
      zecke@webkit.org authored
      When building Gtk+ on OSX we ended up declaring
      setNPWindowIfNeeded twice. Fix that by moving
      the #if PLATFORM(GTK) up and using elif instead of
      else.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      68129313
    • kov@webkit.org's avatar
      Small typo fix superseed -> supersede · 571b6b04
      kov@webkit.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      571b6b04
    • ap@webkit.org's avatar
      Reviewed by Darin Adler. · 206d78f2
      ap@webkit.org authored
              https://bugs.webkit.org/show_bug.cgi?id=25749
              Add a test for non-same origin appcache manifest URL
      
              * http/tests/appcache/different-origin-manifest-expected.txt: Added.
              * http/tests/appcache/different-origin-manifest.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      206d78f2
    • kov@webkit.org's avatar
      2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 5fc5183b
      kov@webkit.org authored
              Reviewed by Xan Lopez.
      
              Note changes since 1.1.6.
      
              * NEWS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fc5183b
    • kov@webkit.org's avatar
      2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 5b71701d
      kov@webkit.org authored
              Unreviewed. Updated control file, and main file for the 1.1.7
              release.
      
              * docs/webkitgtk-docs.sgml:
              * docs/webkitgtk-sections.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b71701d
    • xan@webkit.org's avatar
      2009-05-13 Xan Lopez <xlopez@igalia.com> · 67626754
      xan@webkit.org authored
              Unreviewed: bump versions in preparation for 1.1.7 release.
      
              * configure.ac:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      67626754
    • xan@webkit.org's avatar
      2009-05-13 Luca Ferretti <elle.uca@libero.it> · 2e1fade8
      xan@webkit.org authored
              Rubber-stamped by Xan Lopez.
      
              New Italian translation.
      
              * it.po: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e1fade8
    • jmalonzo@webkit.org's avatar
      Revert "2009-05-12 Jan Michael Alonzo <jmalonzo@webkit.org>" · 5663b739
      jmalonzo@webkit.org authored
      This reverts commit Revert r43562 - [Gtk] WTF_USE_JSC is already defined in
      WebCore/config.h.
      
      * wtf/Platform.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5663b739
    • ariya@webkit.org's avatar
      2009-05-13 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> · 7d5f6698
      ariya@webkit.org authored
          Rubberstamped by Ariya Hidayat.
      
          Fix coding style: Add {} to contents of if, containing a for loop.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43625 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7d5f6698
    • xan@webkit.org's avatar
      WebCore: · 0fad170a
      xan@webkit.org authored
      2009-05-13  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Reviewed by Xan Lopez.
      
              https://bugs.webkit.org/show_bug.cgi?id=25685
              [GTK] Middle click paste form the pasteboard
      
              The kit wants to paste from at least two different
              clipboards. By introducing getCurrentTarget to the
              PasteboardHelper interface we can make this decision
              in the kit.
              Use the new method in PasteboardGtk to get the right
              GdkClipboard for the paste operation.
      
              * platform/gtk/PasteboardGtk.cpp:
              (WebCore::Pasteboard::documentFragment):
              (WebCore::Pasteboard::plainText):
              * platform/gtk/PasteboardHelper.h:
      
      WebKit/gtk:
      
      2009-05-11  Holger Hans Peter Freyther  <zecke@selfish.org>
      
              Reviewed by Xan Lopez.
      
              https://bugs.webkit.org/show_bug.cgi?id=25685
              [GTK] Middle click paste form the pasteboard
      
              For paste from middle button (button==2) we want to use
              the GDK_PRIMARY_SELECTION. Implement the new getCurrentTarget
              method in PasteboardHelperGtk by asking the WebView which
              clipboard to use.
      
              * WebCoreSupport/PasteboardHelperGtk.cpp:
              (WebKit::PasteboardHelperGtk::getCurrentTarget):
              * WebCoreSupport/PasteboardHelperGtk.h:
              * webkit/webkitprivate.h:
              * webkit/webkitwebview.cpp:
              (webkit_web_view_button_press_event):
              (webkit_web_view_use_primary_for_paste):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43624 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0fad170a
    • xan@webkit.org's avatar
      2009-05-13 Xan Lopez <xlopez@igalia.com> · 0a818017
      xan@webkit.org authored
              Rubber-stamped by Gustavo Noronha.
      
              Revert commit r43563, since it breaks WebKitGTK+ when compiled
              with gcc 4.4.
      
              * GNUmakefile.am:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43623 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0a818017
    • eric.carlson@apple.com's avatar
      2009-05-13 Eric Carlson <eric.carlson@apple.com> · 3ffa5a75
      eric.carlson@apple.com authored
              Reviewed by Darin Adler.
      
              <rdar://problem/6438177> QTMoviePreferredTransformAttribute only supported on SnowLeopard
              <rdar://problem/6872468> QTMovieOpenForPlaybackAttribute only supported on SnowLeopard
      
              QTMoviePreferredTransformAttribute and QTMovieOpenForPlaybackAttribute are not supported
              on Tiger or Leopard.
      
              * html/HTMLMediaElement.cpp:
              (WebCore::HTMLMediaElement::setNetworkState): Remove invalid ASSERT.
      
              * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
              (WebCore::MediaPlayerPrivate::createQTMovie): Only request QTMoviePreferredTransformAttribute
              when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD.
              (WebCore::MediaPlayerPrivate::cacheMovieScale): Only ask for QTMovieOpenForPlaybackAttribute 
              when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD,
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3ffa5a75
    • ariya@webkit.org's avatar
      2009-05-12 Antonio Gomes <antonio.gomes@openbossa.org> · f1550984
      ariya@webkit.org authored
              Reviewed by Ariya Hidayat.
      
              Fixed a possible crash @styleProperty when there is no embedded/external CSS set.
      
              * Api/qwebelement.cpp:
              (QWebElement::styleProperty):
              * tests/qwebelement/tst_qwebelement.cpp:
              (tst_QWebElement::style):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1550984
    • ariya@webkit.org's avatar
      2009-05-12 Antonio Gomes <antonio.gomes@openbossa.org> · b65d4057
      ariya@webkit.org authored
          Reviewed by Ariya Hidayat.
      
          Added external CSS test cases to QWebElement::styleProperty() method.
      
          Also some ::styleProperty() tests cleanup.
      
          * tests/qwebelement/tst_qwebelement.cpp:
          (tst_QWebElement::style):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43620 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b65d4057
    • barraclough@apple.com's avatar
      2009-05-12 Gavin Barraclough <barraclough@apple.com> · c32f32e2
      barraclough@apple.com authored
              Reviewed by Oliver Hunt.
      
              Add SamplingCounter tool to provide a simple mechanism for counting events in JSC
              (enabled using ENABLE(SAMPLING_COUNTERS)).  To count events within a single function
              use the class 'SamplingCounter', where the counter may be incremented from multiple
              functions 'GlobalSamplingCounter' may be convenient; all other counters (stack or
              heap allocated, rather than statically declared) should use the DeletableSamplingCounter.
              Further description of these classes is provided alongside their definition in 
              SamplingTool.h.
      
              Counters may be incremented from c++ by calling the 'count()' method on the counter,
              or may be incremented by JIT code by using the 'emitCount()' method within the JIT.
      
              This patch also fixes CODEBLOCK_SAMPLING, which was missing a null pointer check.
      
              * JavaScriptCore.exp:
              * assembler/MacroAssemblerX86.h:
              (JSC::MacroAssemblerX86::addWithCarry32):
              (JSC::MacroAssemblerX86::and32):
              (JSC::MacroAssemblerX86::or32):
              * assembler/MacroAssemblerX86Common.h:
              (JSC::MacroAssemblerX86Common::and32):
              (JSC::MacroAssemblerX86Common::or32):
              * assembler/MacroAssemblerX86_64.h:
              (JSC::MacroAssemblerX86_64::and32):
              (JSC::MacroAssemblerX86_64::or32):
              (JSC::MacroAssemblerX86_64::addPtr):
              * assembler/X86Assembler.h:
              (JSC::X86Assembler::):
              (JSC::X86Assembler::adcl_im):
              (JSC::X86Assembler::addq_im):
              (JSC::X86Assembler::andl_im):
              (JSC::X86Assembler::orl_im):
              * bytecode/SamplingTool.cpp:
              (JSC::AbstractSamplingCounter::dump):
              * bytecode/SamplingTool.h:
              (JSC::AbstractSamplingCounter::count):
              (JSC::GlobalSamplingCounter::name):
              (JSC::SamplingCounter::SamplingCounter):
              * jit/JIT.h:
              * jit/JITCall.cpp:
              (JSC::):
              * jit/JITInlineMethods.h:
              (JSC::JIT::setSamplingFlag):
              (JSC::JIT::clearSamplingFlag):
              (JSC::JIT::emitCount):
              * jsc.cpp:
              (runWithScripts):
              * parser/Nodes.cpp:
              (JSC::ScopeNode::ScopeNode):
              * wtf/Platform.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43619 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c32f32e2
    • sfalken@apple.com's avatar
      Windows build fix. · 326c5524
      sfalken@apple.com authored
              * JavaScriptCore.vcproj/JavaScriptCore.make:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      326c5524
    • sfalken@apple.com's avatar
      Windows build fix. · 0b953d36
      sfalken@apple.com authored
              * JavaScriptCore.vcproj/JavaScriptCore.make:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b953d36