1. 30 Apr, 2009 29 commits
    • ariya@webkit.org's avatar
      2009-04-30 Ariya Hidayat <ariya.hidayat@nokia.com> · 5098e301
      ariya@webkit.org authored
              Unreviewed build fix after r43072.
      
              * Api/qwebframe.cpp:
              (qt_drt_setJavaScriptProfilingEnabled): Enclose with JAVASCRIPT_DEBUGGER.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5098e301
    • ariya@webkit.org's avatar
      2009-04-30 Ariya Hidayat <ariya.hidayat@nokia.com> · 6cda6ac0
      ariya@webkit.org authored
              Unreviewed build fix after r43063.
      
              * WebCoreSupport/ChromeClientQt.cpp:
              (WebCore::ChromeClientQt::addMessageToConsole):
              * WebCoreSupport/ChromeClientQt.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43077 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6cda6ac0
    • darin@apple.com's avatar
      2009-04-30 Darin Adler <darin@apple.com> · cbb45ab5
      darin@apple.com authored
              Reviewed by Sam Weinig.
      
              Add a first text iterator test. We'll add more later.
              This test includes some known expected failures. At some point we'll fix those.
      
              * editing/text-iterator: Added.
              * editing/text-iterator/basic-iteration-expected.txt: Added.
              * editing/text-iterator/basic-iteration.html: Added.
              * editing/text-iterator/resources: Added.
              * editing/text-iterator/resources/TEMPLATE.html: Copied from editing/selection/resources/TEMPLATE.html.
              * editing/text-iterator/resources/basic-iteration.js: Added.
      
              * platform/gtk/Skipped: Skip editing/text-iterator since only Mac DumpRenderTree has this at the moment.
              * platform/qt/Skipped: Ditto.
              * platform/win/Skipped: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cbb45ab5
    • eric@webkit.org's avatar
      Reviewed by Darin Adler. · ec7202e8
      eric@webkit.org authored
              Change Position to pre-compute the AnchorType and store it.
              Also store a "legacy editing mode" bit on the Position.
              https://bugs.webkit.org/show_bug.cgi?id=24763
      
              The old Postion(node, offset) constructor creates legacy positions
              but there are new constructors to create explicitly anchored positions
              which the next patch will use.
      
              Once we fix all the "position-fixup" functions (like rangeCompliantEquivalent) to
              only affect legacy positions, we will be able to distinguish
              between [table, 1] and [table, after] in the code correctly!
      
              * WebCore.base.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * dom/Position.cpp:
              (WebCore::Position::Position):
              (WebCore::Position::moveToPosition):
              (WebCore::Position::moveToOffset):
              (WebCore::Position::anchorTypeForLegacyEditingPosition):
              (WebCore::Position::element):
              * dom/Position.h:
              (WebCore::Position::):
              (WebCore::Position::Position):
              (WebCore::Position::anchorType):
              (WebCore::Position::deprecatedEditingOffset):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43075 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec7202e8
    • dglazkov@chromium.org's avatar
      2009-04-30 Dimitri Glazkov <dglazkov@chromium.org> · 9b13658b
      dglazkov@chromium.org authored
              Unreviewed, build fix.
      
              https://bugs.webkit.org/show_bug.cgi?id=25470
              Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
      
              * configure.ac: Add autoconfig options, missed in the first commit.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9b13658b
    • weinig@apple.com's avatar
      WebCore: · 8e9ecad1
      weinig@apple.com authored
      2009-04-30  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Alexey Proskuryakov.
      
              Fix bug where the WorkerLocation and WorkerNavigator wrappers would be
              collected even if the WorkerContext is still alive.
      
              Test: fast/workers/worker-context-gc.html
      
              * bindings/js/JSWorkerContextCustom.cpp:
              (WebCore::JSWorkerContext::mark):
              * workers/WorkerContext.cpp:
              (WebCore::WorkerContext::WorkerContext):
              (WebCore::WorkerContext::completeURL):
              (WebCore::WorkerContext::location):
              * workers/WorkerContext.h:
              (WebCore::WorkerContext::optionalNavigator):
              (WebCore::WorkerContext::optionalLocation):
      
      LayoutTests:
      
      2009-04-30  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Alexey Proskuryakov.
      
              Test for bug where the WorkerLocation and WorkerNavigator wrappers would be
              collected even if the WorkerContext is still alive.
      
              * fast/workers/worker-context-gc-expected.txt: Added.
              * fast/workers/worker-context-gc.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e9ecad1
    • dglazkov@chromium.org's avatar
      JavaScriptCore: · 18a33936
      dglazkov@chromium.org authored
      2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Timothy Hatcher.
      
              https://bugs.webkit.org/show_bug.cgi?id=25470
              Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
      
              * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER define.
      
      WebCore:
      
      2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Timothy Hatcher.
      
              https://bugs.webkit.org/show_bug.cgi?id=25470
              Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
      
              * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER.
              * WebCore.vcproj/build-generated-files.sh: Ditto.
              * bindings/js/JSConsoleCustom.cpp: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
              * bindings/js/JSDOMWindowBase.cpp: Ditto.
              * bindings/js/JSInspectorControllerCustom.cpp: Ditto.
              * inspector/InspectorController.cpp: Moved profiler/debugger methods under
                  ENABLE(JAVASCRIPT_DEBUGGER) flag.
              * inspector/InspectorController.h: Ditto.
              * inspector/InspectorController.idl: Added ENABLE(JAVASCRIPT_DEBUGGER) guard.
              * page/Console.cpp: Replaced USE(JSC) with ENABLE(JAVASCRIPT_DEBUGGER) guard.
      
      WebKit/mac:
      
      2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Timothy Hatcher.
      
              https://bugs.webkit.org/show_bug.cgi?id=25470
              Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
      
              * Configurations/FeatureDefines.xcconfig: Added ENABLE_JAVASCRIPT_DEBUGGER define.
      
      WebKitTools:
      
      2009-04-30  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Timothy Hatcher.
      
              https://bugs.webkit.org/show_bug.cgi?id=25470
              Extend the cover of ENABLE_JAVASCRIPT_DEBUGGER to profiler.
      
              * Scripts/build-webkit: Added ENABLE_JAVASCRIPT_DEBUGGER define.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      18a33936
    • kdecker@apple.com's avatar
      Reviewed by Anders Carlson. · 97f7e444
      kdecker@apple.com authored
              <rdar://problem/6823049>
              
              Fix an issue where some plug-ins would cause the application icon to constantly bounce
              up and down in the Dock.
              
              * Plugins/Hosted/NetscapePluginHostProxy.h: Change m_placeholderWindow ivar to be
              a subclass of NSWindow, WebPlaceholderModalWindow.
              * Plugins/Hosted/NetscapePluginHostProxy.mm:  Added WebPlaceholderModalWindow NSWindow subclass.
              (-[WebPlaceholderModalWindow _wantsUserAttention]): Prevent NSApp from calling requestUserAttention:
               when the window is shown modally, even if the app is inactive.
              (WebKit::NetscapePluginHostProxy::beginModal): NSWindow -> WebPlaceholderModalWindow.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97f7e444
    • dglazkov@chromium.org's avatar
      2009-04-30 Dimitri Glazkov <dglazkov@chromium.org> · 6cc34fd0
      dglazkov@chromium.org authored
              Unreviewed, build fix.
      
              https://bugs.webkit.org/show_bug.cgi?id=25275
              This patch snuck in a re-definition of a local.
      
              * bindings/v8/custom/V8DOMWindowCustom.cpp:
              (WebCore::NAMED_PROPERTY_GETTER): Removed re-definition.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6cc34fd0
    • weinig@apple.com's avatar
      2009-04-30 Sam Weinig <sam@webkit.org> · bcd18838
      weinig@apple.com authored
              Reviewed by Mark Rowe.
      
              Fix a leak introduced yesterday.  Don't allocate a ScheduledAction
              if the toString()ing throws an exception.
      
              * bindings/js/ScheduledAction.cpp:
              (WebCore::ScheduledAction::create):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43065 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bcd18838
    • ap@webkit.org's avatar
      Reviewed by Darin Adler. · 2827d623
      ap@webkit.org authored
              https://bugs.webkit.org/show_bug.cgi?id=25379
              <rdar://problem/6809460> REGRESSION (r41772): Selecting a bank in American Express Pay Bill fails
      
              Test: fast/forms/multiple-selected-options-innerHTML.html
      
              This problem was caused by an inconsistency at when Node::instertedIntoTree() is called.
              For normal HTML parsing, it is called immediately after an element is inserted, but for
              innerHTML, it is only called after the whole subtree is inserted into a document.
      
              It may make sense to harmonize these cases one day, but for now, I only made the minimal
              changes necessary to fix the bug.
      
              * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::insertedIntoTree):
              * html/HTMLSelectElement.h:
              Recalculate list items when a SELECT element is inserted. OPTION elements cannot decide
              which one to keep selected themselves, because their logic assumes normal parsing, with
              insertedIntoTree() called after each element is inserted.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2827d623
    • dglazkov@chromium.org's avatar
      WebCore: · 2ea1395d
      dglazkov@chromium.org authored
      2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25342
              Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
      
              Chromium async/out-of-process version of WebInspector is currently not based on
              InspectorController. The reason was that we did not want to interfere with
              the unforking effort, yet wanted to experiment. So we came up with these
              agents concept that basically mimic InspectorController, but separating 'agent'
              nature from the 'transport'. Now that InspectorController is unforked, I am
              planning to bring these concepts into the WebKit land and use what we have in
              Chromium as a proof of concept / experimental playground.
      
              * loader/EmptyClients.h: added MessageSource and MessageLevel parameters.
              (WebCore::EmptyChromeClient::addMessageToConsole): ditto
              * page/ChromeClient.h: ditto
              * page/Console.cpp: Used new method signature.
              (WebCore::Console::addMessage): ditto
      
      WebKit/gtk:
      
      2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25342
              Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
      
              * WebCoreSupport/ChromeClientGtk.cpp:
              (WebKit::ChromeClient::addMessageToConsole):
              * WebCoreSupport/ChromeClientGtk.h:
      
      WebKit/mac:
      
      2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25342
              Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
      
              * WebCoreSupport/WebChromeClient.h:
              * WebCoreSupport/WebChromeClient.mm:
              (WebChromeClient::addMessageToConsole):
      
      WebKit/win:
      
      2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25342
              Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
      
              * WebCoreSupport/WebChromeClient.cpp:
              (WebChromeClient::addMessageToConsole):
              * WebCoreSupport/WebChromeClient.h:
      
      WebKit/wx:
      
      2009-04-30  Pavel Feldman  <pfeldman@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25342
              Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
      
              * WebKitSupport/ChromeClientWx.cpp:
              (WebCore::ChromeClientWx::addMessageToConsole):
              * WebKitSupport/ChromeClientWx.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43063 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2ea1395d
    • mitz@apple.com's avatar
      WebCore: · b30433ef
      mitz@apple.com authored
              Reviewed by Simon Fraser.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=25476
                <rdar://problem/6841919> REGRESSION (r42987): Welcome to Safari 4
                animation is jittery
      
              Reverted r42987.
      
              * platform/graphics/cg/ImageCG.cpp:
              (WebCore::BitmapImage::draw):
      
      LayoutTests:
      
              Reviewed by Simon Fraser.
      
              - updated results for https://bugs.webkit.org/show_bug.cgi?id=25476
                <rdar://problem/6841919> REGRESSION (r42987): Welcome to Safari 4
                animation is jittery
      
              * platform/mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.checksum:
              * platform/mac/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
              * platform/mac/svg/custom/focus-ring-expected.checksum:
              * platform/mac/svg/custom/focus-ring-expected.png:
              * platform/mac/svg/custom/image-small-width-height-expected.checksum:
              * platform/mac/svg/custom/image-small-width-height-expected.png:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43062 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b30433ef
    • beidson@apple.com's avatar
      WebCore: · dc156cdc
      beidson@apple.com authored
      2009-04-30  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Maciej Stachowiak
      
              <rdar://problem/3785248> http://www.greekembassy.org/ gets in an infinite reload loop
              https://bugs.webkit.org/show_bug.cgi?id=21193
      
              Some websites use for attributes in script elements to specify events that the script 
              should be run for.  One example is greekembassy.org which has the following in their <head>:
      
              <script for=window event=onresize>
                  location.reload(false);
              </script>
      
              Since we don't support the full for attribute syntax, we would just blissfully ignore the
              condition and execute the code unconditionally.  This caused breakage on multiple real-world 
              sites besides greekembassy.org.
      
              https://bugs.webkit.org/show_bug.cgi?id=16915 and <rdar://problem/4471751> track adding full 
              support for the for attribute in scripts.  In the meantime it's best to not execute them
              unconditionally.
      
              Test: fast/dom/HTMLScriptElement/script-for-attribute-unexpected-execution.html
      
              * dom/ScriptElement.cpp:
              (WebCore::ScriptElementData::shouldExecuteAsJavaScript): After all other checks have
                passed, only return true if there is no for attribute in the script element.
              * dom/ScriptElement.h:
      
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::forAttributeValue): Return the attribute value, if any.
              * html/HTMLScriptElement.h:
      
              * svg/SVGScriptElement.cpp:
              (WebCore::SVGScriptElement::forAttributeValue): Return an empty string (like the other
                attribute getters do for SVGScriptElement)
              * svg/SVGScriptElement.h:
      
      LayoutTests:
      
      2009-04-30  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Maciej Stachowiak
      
              Test for <rdar://problem/3785248> http://www.greekembassy.org/ gets in an infinite reload loop
              https://bugs.webkit.org/show_bug.cgi?id=21193
      
              * fast/dom/HTMLScriptElement/script-for-attribute-unexpected-execution-expected.txt: Added.
              * fast/dom/HTMLScriptElement/script-for-attribute-unexpected-execution.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dc156cdc
    • kov@webkit.org's avatar
      2009-04-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 89a19ef9
      kov@webkit.org authored
              Skip one more video test that sometimes fails.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43060 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      89a19ef9
    • aroben@apple.com's avatar
      Add a sometimes-timing-out test to the Windows skipped file · 64116f96
      aroben@apple.com authored
              See Bug 25483: http/tests/navigation/redirect-cycle.html sometimes
              times out on Windows
              <https://bugs.webkit.org/show_bug.cgi?id=25483>
      
              * platform/win/Skipped: Added
              http/tests/navigation/redirect-cycle.html.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43059 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      64116f96
    • hausmann@webkit.org's avatar
      2009-04-30 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> · 1c669a59
      hausmann@webkit.org authored
      Reviewed by Simon Hausmann.
      
      Implement encloseContentsWith and rename wrap to encloseWith.
      
      Also in encloseWith, make sure that you cannot enclose with
      non-enclosable elements.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43058 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c669a59
    • kov@webkit.org's avatar
      2009-04-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · f7a77e71
      kov@webkit.org authored
              Skip two more tests that I had accidentaly generated results for,
              locally.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43057 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f7a77e71
    • kov@webkit.org's avatar
      2009-04-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 75dac864
      kov@webkit.org authored
              Also disable new tests, and tests that are using stderr.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43056 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      75dac864
    • kov@webkit.org's avatar
      2009-04-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 54a21a52
      kov@webkit.org authored
              Disabling more video tests that seem to come and go.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43055 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      54a21a52
    • kov@webkit.org's avatar
      2009-04-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · a9ea8dab
      kov@webkit.org authored
              Hopefully last try making the bot green.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43054 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a9ea8dab
    • ariya@webkit.org's avatar
      2009-04-30 Ariya Hidayat <ariya.hidayat@nokia.com> · 56cc9bb1
      ariya@webkit.org authored
              Rubber-stamped by Simon Hausmann.
      
              [Qt] Exclude canvas-putImageData.html from the skipped list since
              Canvas's putImageData is implemented in r41355 already.
      
              * platform/qt/Skipped: Removed canvas-putImageData.html.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43053 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56cc9bb1
    • hausmann@webkit.org's avatar
      2009-04-30 Holger Hans Peter Freyther <zecke@selfish.org> · 3f0979d1
      hausmann@webkit.org authored
              Reviewed by Darin Adler.
      
              The Qt API exposes a global history patch CSSStyleSelector to make API consumers work again
      
              https://bugs.webkit.org/show_bug.cgi?id=20952
      
              The QtWebKit port made the mistake of exposing a global history. This broke
              with the addition of PageGroup and LinkHash. This needs to be repaired
              for Qt4.5.
      
              Add a function to LinkHash.cpp that is resolving a URL. Use this
              function from within CSSStyleSelector to forward the url to the
              QWebHistoryInterface API.
      
              It is sad that there is a path within visitedLinkHash which is now
              doing a memcpy, it is sad to add a PLATFORM(QT) define to CSSStyleSelector
              and using QtWebKit types within WebCore is a layering violation as well.
      
              PageGroup::setShouldTrackVisitedLinks is currently not enabled. For
              Qt4.6 a second version of the QWebHistoryInterface is going to be
              added which will fix things up.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43052 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3f0979d1
    • hausmann@webkit.org's avatar
      Fix the Qt build. · 7378c857
      hausmann@webkit.org authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43051 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7378c857
    • ariya@webkit.org's avatar
      2009-04-30 Ariya Hidayat <ariya.hidayat@nokia.com> · d3de6e2d
      ariya@webkit.org authored
              Unreviewed build fix, after r43035.
      
              Temporarily use Position::deprecatedEditingOffset().
      
              * Api/qwebpage.cpp:
              (QWebPage::inputMethodQuery):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43050 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d3de6e2d
    • ariya@webkit.org's avatar
      2009-04-30 Ariya Hidayat <ariya.hidayat@nokia.com> · c5e4fccc
      ariya@webkit.org authored
              Unreview build fix after r43037.
      
              Use MarkedArgumentBuffer instead of ArgList.
      
              * bridge/qt/qt_runtime.cpp:
              (JSC::Bindings::QtConnectionObject::execute):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5e4fccc
    • mjs@apple.com's avatar
      2009-04-30 Maciej Stachowiak <mjs@apple.com> · 832014b1
      mjs@apple.com authored
              Reviewed by Alexey Proskuryakov.
      
              - speed up string concatenation by reorganizing some simple cases
      
              0.7% SunSpider speedup
      
              * runtime/UString.cpp:
              (JSC::concatenate): Put fast case for appending a single character
              before the empty string special cases; streamline code a bit to
              delay computing values that are not needed in the fast path.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43048 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      832014b1
    • barraclough@apple.com's avatar
      2009-04-30 Gavin Barraclough <barraclough@apple.com> · f91cd6b5
      barraclough@apple.com authored
              Reviewed by Maciej Stachowiak.
      
              Add SamplingFlags mechanism.
      
              This mechanism allows fine-grained JSC and JavaScript program aware
              performance measurement.  The mechanism provides a set of 32 flags,
              numbered #1..#32.  Flag #16 is initially set, and all other flags
              are cleared.  Flags may be set and cleared from within
      
              Enable by setting ENABLE_SAMPLING_FLAGS to 1 in wtf/Platform.h.
              Disabled by default, no performance impact.  Flags may be modified
              by calling SamplingFlags::setFlag() and SamplingFlags::clearFlag()
              from within JSC implementation, or by calling setSamplingFlag() and
              clearSamplingFlag() from JavaScript.
      
              The flags are sampled with a frequency of 10000Hz, and the highest
              set flag in recorded, allowing multiple events to be measured (with
              the highest flag number representing the highest priority).
      
              Disabled by default; no performance impact.
      
              * JavaScriptCore.exp:
              * bytecode/SamplingTool.cpp:
              (JSC::SamplingFlags::sample):
              (JSC::SamplingFlags::start):
              (JSC::SamplingFlags::stop):
              (JSC::SamplingThread::threadStartFunc):
              (JSC::SamplingThread::start):
              (JSC::SamplingThread::stop):
              (JSC::ScopeSampleRecord::sample):
              (JSC::SamplingTool::doRun):
              (JSC::SamplingTool::sample):
              (JSC::SamplingTool::start):
              (JSC::SamplingTool::stop):
              * bytecode/SamplingTool.h:
              (JSC::SamplingFlags::setFlag):
              (JSC::SamplingFlags::clearFlag):
              (JSC::SamplingTool::SamplingTool):
              * jsc.cpp:
              (GlobalObject::GlobalObject):
              (functionSetSamplingFlag):
              (functionClearSamplingFlag):
              (runWithScripts):
              * wtf/Platform.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43047 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f91cd6b5
    • weinig@apple.com's avatar
      WebCore: · c13a4e4b
      weinig@apple.com authored
      2009-04-29  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Oliver Hunt.
      
              Fix for https://bugs.webkit.org/show_bug.cgi?id=25440
              setTimeout should stringify non-string/non-function first arguments
      
              Test: fast/dom/Window/setTimeout-string-argument.html
      
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::setTimeout):
              (WebCore::JSDOMWindow::setInterval):
              * bindings/js/JSWorkerContextCustom.cpp:
              (WebCore::JSWorkerContext::setTimeout):
              (WebCore::JSWorkerContext::setInterval):
              * bindings/js/ScheduledAction.cpp:
              (WebCore::ScheduledAction::create):
              * bindings/js/ScheduledAction.h:
      
      LayoutTests:
      
      2009-04-29  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Oliver Hunt.
      
              Test for https://bugs.webkit.org/show_bug.cgi?id=25440
              setTimeout should stringify non-string/non-function first arguments
      
              * fast/dom/Window/setTimeout-string-argument-expected.txt: Added.
              * fast/dom/Window/setTimeout-string-argument.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43046 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c13a4e4b
  2. 29 Apr, 2009 11 commits
    • mrowe@apple.com's avatar
      More build fixing after r43037. · f247361a
      mrowe@apple.com authored
      * Plugins/Hosted/NetscapePluginInstanceProxy.h:
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::invoke):
      (WebKit::NetscapePluginInstanceProxy::invokeDefault):
      (WebKit::NetscapePluginInstanceProxy::construct):
      (WebKit::NetscapePluginInstanceProxy::demarshalValues):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43045 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f247361a
    • mitz@apple.com's avatar
      WebCore: · 3d9a5082
      mitz@apple.com authored
              Reviewed by Simon Fraser.
      
              - WebCore part of <rdar://problem/6609509> Select All and then Delete
                should put Mail editing back into the same state as a new message
      
              Test: editing/deleting/in-visibly-empty-root.html
      
              * WebCore.base.exp: Exported VisibleSelection::isAll(bool).
              * editing/SelectionController.h:
              (WebCore::SelectionController::isAll): Added. Calls through to
              VisibleSelection.
              * editing/TypingCommand.cpp:
              (WebCore::TypingCommand::makeEditableRootEmpty): Added. Removes all children
              of the root editable element the selection is in, other than a
              placeholder. Returns true iff it did anything.
              (WebCore::TypingCommand::deleteKeyPressed): When there is only a single
              visible position in the root editable element, but it has children other
              than a placeholder, remove those children.
              * editing/TypingCommand.h:
              * editing/VisiblePosition.h:
              Added a StayInEditableContent enum and a FIXME.
              * editing/VisibleSelection.cpp:
              (WebCore::VisibleSelection::isAll): Added. Returns whether the
              selection encompasses all visible positions, either in the document or
              in the editable root.
              * editing/VisibleSelection.h:
      
      WebKit/mac:
      
              Reviewed by Simon Fraser.
      
              - WebKit part of <rdar://problem/6609509> Select All and then Delete
                should put Mail editing back into the same state as a new message
      
              * WebView/WebView.mm:
              (-[WebView _selectionIsCaret]): Added.
              (-[WebView _selectionIsAll]): Added. Returns whether the selection
              encompasses the entire document.
              * WebView/WebViewPrivate.h:
      
      LayoutTests:
      
              Reviewed by Simon Fraser.
      
              - test and updated results for <rdar://problem/6609509> Select All and
                then Delete should put Mail editing back into the same state as a new
                message
      
              * editing/deleting/in-visibly-empty-root-expected.txt: Added.
              * editing/deleting/in-visibly-empty-root.html: Added.
              * platform/mac/editing/deleting/delete-at-start-or-end-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43044 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d9a5082
    • weinig@apple.com's avatar
      2009-04-29 Sam Weinig <sam@webkit.org> · 8b951c5d
      weinig@apple.com authored
              Another attempt to fix the windows build.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43043 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b951c5d
    • weinig@apple.com's avatar
      2009-04-29 Sam Weinig <sam@webkit.org> · e8326652
      weinig@apple.com authored
              Fix style nit.
      
              * editing/visible_units.cpp:
              (WebCore::getLeafBoxesInLogicalOrder):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43042 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e8326652
    • weinig@apple.com's avatar
      2009-04-29 Sam Weinig <sam@webkit.org> · fabba890
      weinig@apple.com authored
              Try and fix the windows build.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore_debug.def:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43041 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fabba890
    • hyatt@apple.com's avatar
      2009-04-29 David Hyatt <hyatt@apple.com> · c0f8885b
      hyatt@apple.com authored
              Reviewed by Dan Bernstein.
      
              For now just drop the deferred layout on the floor, since it causes an infinite hang in mail.  Even
              trying to schedule a relayout for later leaves you in a state where you hit the needsLayout painting
              assertions.
      
              Basically what Mail is doing is crazy, and we can't support it other than to just drop the last layout
              and not do it (which is basically what was happening before).
      
              * page/FrameView.cpp:
              (WebCore::FrameView::setContentsSize):
              (WebCore::FrameView::needsLayout):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43040 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0f8885b
    • justin.garcia@apple.com's avatar
      WebCore: · 2ac9a817
      justin.garcia@apple.com authored
      2009-04-29  Douglas Davidson  <ddavidso@apple.com>
      
              Reviewed by Justin Garcia.
      
              <rdar://problem/6836921> Mail exhibits issues with text checking, e.g. menu items not always validated correctly
              
              Updates to the text checking code to enable text checking even if spellchecking is turned off 
              and fix an off-by-one error in selection handling.
      
              * editing/Editor.cpp:
              (WebCore::Editor::markMisspellingsAfterTypingToPosition):
              (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
              (WebCore::Editor::markMisspellingsAndBadGrammar):
              * editing/Editor.h:
              * editing/TypingCommand.cpp:
              (WebCore::TypingCommand::markMisspellingsAfterTyping):
      
      WebKit/mac:
      
      2009-04-29  Douglas Davidson  <ddavidso@apple.com>
      
              Reviewed by Justin Garcia.
              
              <rdar://problem/6836921> Mail exhibits issues with text checking, e.g. menu items not always validated correctly
      
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
              (-[WebHTMLView orderFrontSubstitutionsPanel:]):
              * WebView/WebView.mm:
              (-[WebView validateUserInterfaceItemWithoutDelegate:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43039 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2ac9a817
    • barraclough@apple.com's avatar
      2009-04-29 Gavin Barraclough <barraclough@apple.com> · 91943497
      barraclough@apple.com authored
              Reviewed by Oliver "Peg-Leg" Hunt.
      
              Coallesce input checking and reduce futzing with the index position
              between alternatives and iterations of the main loop of a regex,
              when run in YARR.
      
              Consider the following regex:  /foo|bar/
              
              Prior to this patch, this will be implemented something like this pseudo-code description:
              
              loop:
                  check_for_available_input(3) // this increments the index by 3, for the first alterantive.
                      if (available) { test "foo" }
                  decrement_index(3)
                  check_for_available_input(3) // this increments the index by 3, for the second alterantive.
                      if (available) { test "bar" }
                  decrement_index(3)
                  check_for_available_input(1) // can we loop again?
                      if (available) { goto loop }
      
              With these changes it will look more like this:
      
                  check_for_available_input(3) // this increments the index by 3, for the first alterantive.
                  if (!available) { goto fail }
              loop:
                  test "foo"
                  test "bar"
                  check_for_available_input(1) // can we loop again?
                      if (available) { goto loop }
              fail:
      
      
              This gives about a 5% gain on v8-regex, no change on Sunspider.
      
              * yarr/RegexJIT.cpp:
              (JSC::Yarr::RegexGenerator::TermGenerationState::linkAlternativeBacktracksTo):
              (JSC::Yarr::RegexGenerator::generateDisjunction):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43038 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      91943497
    • oliver@apple.com's avatar
      Clean up ArgList to be a trivial type · f32186ef
      oliver@apple.com authored
      Reviewed by Gavin Barraclough
      
      Separate out old ArgList logic to handle buffering and marking arguments
      into a distinct MarkedArgumentBuffer type.  ArgList becomes a trivial
      struct of a pointer and length.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43037 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f32186ef
    • eric@webkit.org's avatar
      No review, build fix only. · eb7f9305
      eric@webkit.org authored
              Fix m_offset uses added while I wasn't looking.
      
              * editing/visible_units.cpp:
              (WebCore::logicalStartPositionForLine):
              (WebCore::logicalEndPositionForLine):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43036 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eb7f9305
    • eric@webkit.org's avatar
      Reviewed by Darin Adler. · 4e32ebc3
      eric@webkit.org authored
              Make m_offset private and change all callers to use deprecatedEditingOffset().
              https://bugs.webkit.org/show_bug.cgi?id=25472
      
              Per Darin's suggestion, this was just a simple search replace
              of .m_offset with .deprecatedEditingOffset().
      
              There was one change in InsertParagraphSeparatorCommand::doApply to use
              Position::moveToOffset(0) instead of .m_offset = 0;
      
              * dom/Position.cpp:
              (WebCore::Position::rendersInDifferentPosition):
              (WebCore::Position::leadingWhitespacePosition):
              * dom/Position.h:
              (WebCore::Position::deprecatedEditingOffset):
              (WebCore::Position::moveToOffset):
              (WebCore::operator==):
              * dom/PositionIterator.h:
              (WebCore::PositionIterator::PositionIterator):
              * dom/Range.cpp:
              (WebCore::Range::create):
              (WebCore::Range::compareBoundaryPoints):
              * editing/ApplyStyleCommand.cpp:
              (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
              (WebCore::ApplyStyleCommand::applyInlineStyleToRange):
              (WebCore::ApplyStyleCommand::removeInlineStyle):
              (WebCore::ApplyStyleCommand::nodeFullySelected):
              (WebCore::ApplyStyleCommand::nodeFullyUnselected):
              (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
              (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
              (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
              (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
              (WebCore::ApplyStyleCommand::joinChildTextNodes):
              * editing/BreakBlockquoteCommand.cpp:
              (WebCore::BreakBlockquoteCommand::doApply):
              * editing/CompositeEditCommand.cpp:
              (WebCore::CompositeEditCommand::insertNodeAt):
              (WebCore::CompositeEditCommand::positionOutsideTabSpan):
              (WebCore::CompositeEditCommand::rebalanceWhitespaceAt):
              (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
              (WebCore::CompositeEditCommand::deleteInsignificantText):
              (WebCore::CompositeEditCommand::moveParagraphs):
              (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
              * editing/DeleteSelectionCommand.cpp:
              (WebCore::updatePositionForNodeRemoval):
              (WebCore::updatePositionForTextRemoval):
              (WebCore::DeleteSelectionCommand::handleGeneralDelete):
              (WebCore::DeleteSelectionCommand::fixupWhitespace):
              * editing/Editor.cpp:
              (WebCore::Editor::setComposition):
              (WebCore::Editor::advanceToNextMisspelling):
              (WebCore::Editor::getCompositionSelection):
              * editing/InsertLineBreakCommand.cpp:
              (WebCore::InsertLineBreakCommand::doApply):
              * editing/InsertParagraphSeparatorCommand.cpp:
              (WebCore::InsertParagraphSeparatorCommand::doApply):
              * editing/InsertTextCommand.cpp:
              (WebCore::InsertTextCommand::performTrivialReplace):
              (WebCore::InsertTextCommand::input):
              (WebCore::InsertTextCommand::insertTab):
              * editing/MoveSelectionCommand.cpp:
              (WebCore::MoveSelectionCommand::doApply):
              * editing/ReplaceSelectionCommand.cpp:
              (WebCore::ReplaceSelectionCommand::doApply):
              * editing/SelectionController.cpp:
              (WebCore::SelectionController::debugRenderer):
              * editing/TextIterator.cpp:
              (WebCore::TextIterator::rangeFromLocationAndLength):
              * editing/TypingCommand.cpp:
              (WebCore::TypingCommand::deleteKeyPressed):
              (WebCore::TypingCommand::forwardDeleteKeyPressed):
              * editing/VisiblePosition.cpp:
              (WebCore::VisiblePosition::characterAfter):
              (WebCore::VisiblePosition::debugPosition):
              (WebCore::makeRange):
              (WebCore::setStart):
              (WebCore::setEnd):
              * editing/VisibleSelection.cpp:
              (WebCore::VisibleSelection::toNormalizedRange):
              (WebCore::makeSearchRange):
              (WebCore::VisibleSelection::debugPosition):
              (WebCore::VisibleSelection::showTreeForThis):
              * editing/htmlediting.cpp:
              (WebCore::comparePositions):
              (WebCore::rangeCompliantEquivalent):
              * editing/visible_units.cpp:
              (WebCore::previousBoundary):
              (WebCore::nextBoundary):
              (WebCore::startPositionForLine):
              (WebCore::startOfLine):
              (WebCore::endPositionForLine):
              (WebCore::nextLinePosition):
              (WebCore::startOfParagraph):
              (WebCore::endOfParagraph):
              (WebCore::logicalStartPositionForLine):
              (WebCore::logicalEndPositionForLine):
              * page/AccessibilityObject.cpp:
              (WebCore::updateAXLineStartForVisiblePosition):
              * page/AccessibilityRenderObject.cpp:
              (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
              * page/DOMSelection.cpp:
              (WebCore::DOMSelection::anchorOffset):
              (WebCore::DOMSelection::focusOffset):
              (WebCore::DOMSelection::baseOffset):
              (WebCore::DOMSelection::extentOffset):
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleMousePressEventSingleClick):
              * page/Frame.cpp:
              (WebCore::Frame::selectionLayoutChanged):
              * page/mac/AccessibilityObjectWrapper.mm:
              (textMarkerForVisiblePosition):
              (visiblePositionForTextMarker):
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::indexForVisiblePosition):
              * rendering/RenderTreeAsText.cpp:
              (WebCore::writeSelection):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@43035 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e32ebc3