1. 14 May, 2008 14 commits
    • slewis@apple.com's avatar
      2008-05-14 Stephanie Lewis <slewis@apple.com> · 092d8730
      slewis@apple.com authored
         
              Fix 64bit build
      
              * plugins/PluginView.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33452 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      092d8730
    • ddkilzer@apple.com's avatar
      WebCore: · 8fb21a17
      ddkilzer@apple.com authored
              REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)
      
              <https://bugs.webkit.org/show_bug.cgi?id=18976>
              <rdar://problem/5924793>
      
              Reviewed by Darin.
      
              Tests: fast/dom/dom-parse-serialize-expected.txt:
                     fast/xsl/xslt-processor-expected.txt:
                     fast/xsl/xslt-text-expected.txt:
      
              Commit r26474 removed escaping of '>' characters to '&gt;' in serialized
              HTML content, which broke one jQuery test.  This change restores that
              serialization behavior to both attributes and content for consistency.
      
              * editing/markup.cpp:
              (WebCore::appendAttributeValue): Escape '>' as '&gt;'.
              (WebCore::escapeContentText): Ditto.
              (WebCore::appendEscapedContent): Ditto.  This is the bug fix for the jQuery test.
      
      LayoutTests:
      
              REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)
      
              <https://bugs.webkit.org/show_bug.cgi?id=18976>
              <rdar://problem/5924793>
      
              Reviewed by Darin.
      
              Updated test results now that '>' is escaped to '&gt;' in both
              attributes and content.
      
              * fast/xsl/xslt-processor-expected.txt:
              * fast/xsl/xslt-text-expected.txt:
              * platform/mac/fast/dom/dom-parse-serialize-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33451 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8fb21a17
    • aroben@apple.com's avatar
      Fix Bug 19051: REGRESSION (r33447): Assertion in... · 0aff12c2
      aroben@apple.com authored
              Fix Bug 19051: REGRESSION (r33447): Assertion in JSDebugServer::removeListener closing tab with Inspector open
      
              m_inspectedPage is now cleared when the Page is destroyed, which never
              used to happen. Some of InspectorController's code was not prepared
              for this.
      
              Reviewed by Dave Hyatt.
      
              * page/InspectorController.cpp:
              (WebCore::InspectorController::~InspectorController): Removed a call
              to stopDebugging and added an assertion. Debugging should have already
              been stopped by this point.
              (WebCore::InspectorController::inspectedPageDestroyed): Moved here
              from the header file. Added a call to stopDebugging.
              (WebCore::InspectorController::enabled): Return false if our inspected
              Page has already been destroyed, since we can't really do much at this
              point anyway.
              (WebCore::InspectorController::didCommitLoad):
              (WebCore::InspectorController::didLoadResourceFromMemoryCache):
              (WebCore::InspectorController::identifierForInitialRequest):
              (WebCore::InspectorController::startDebuggingAndReloadInspectedPage):
              (WebCore::InspectorController::stopDebugging):
              (WebCore::InspectorController::drawNodeHighlight):
              Assert that m_inspectedPage hasn't been cleared.
              * page/InspectorController.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33450 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0aff12c2
    • justin.garcia@apple.com's avatar
      WebCore: · 3571e8f6
      justin.garcia@apple.com authored
      2008-05-14  Justin Garcia  <justin.garcia@apple.com>
      
              Reviewed by Darin.
      
              <rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition
      
              * editing/Editor.cpp:
              (WebCore::Editor::confirmComposition): Remove the previous composition
              when we insert the new one, not with a separate, slower, delete operation.
              (WebCore::Editor::setComposition): Ditto.
              * editing/InsertTextCommand.cpp:
              (WebCore::InsertTextCommand::performTrivialReplace): Remove the selected
              text with a low level operation that doesn't perform a layout and insert
              the new text in a way that won't trigger a layout from the removal.
              (WebCore::InsertTextCommand::input): Call the optimized replace.
              * editing/InsertTextCommand.h:
              * editing/htmlediting.cpp:
              (WebCore::isTabSpanNode): Check to see if the node is a span, to avoid 
              the expense of getAttribute in the common case.
              * page/Frame.cpp:
              (WebCore::Frame::selectionLayoutChanged): Selection::start() and end()
              will already be at VisiblePosition deepEquivalents. Selection::validate()
              ensures this.
      
      LayoutTests:
      
      2008-05-14  Justin Garcia  <justin.garcia@apple.com>
      
              Reviewed by Darin.
      
              <rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition
              
              Replacing all the text in a node is now much less likely to remove it
              and cause selection changes.
      
              * platform/mac/editing/input/text-input-controller-expected.txt:
              * platform/mac/editing/inserting/4959067-expected.txt:
              * platform/mac/editing/style/style-3681552-fix-001-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33449 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3571e8f6
    • ap@webkit.org's avatar
      Reviewed by Dan Bernstein. · 66c8f1c3
      ap@webkit.org authored
              NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.
      
              * Plugins/nptextinput.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33448 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      66c8f1c3
    • aroben@apple.com's avatar
      Make the Inspector able to handle being reloaded · 5a0317c2
      aroben@apple.com authored
              When Reload was selected from the context menu in the Inspector, the
              Inspector window would close and never be openable again. Now it
              closes, then reopens when the page finishes loading.
      
              Reviewed by Tim Hatcher.
      
              * page/InspectorController.cpp:
              (WebCore::InspectorController::close): Removed code that cleared out
              m_page. This is now handled by pageDestroyed.
              * page/InspectorController.h:
              (WebCore::InspectorController::inspectedPageDestroyed): Added.
              * page/Page.cpp:
              (WebCore::Page::~Page): Fixed a bug and added a call to the new
              inspectedPageDestroyed. If we have a parent InspectorController, that
              means that we are the Page in the Inspector's window (i.e., we are the
              Inspector's UI), so when we are destroyed we should call
              InspectorController::pageDestroyed. We also need to call
              inspectedPageDestroyed on our own InspectorController so that it won't
              try to call into us.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33447 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a0317c2
    • jchaffraix@webkit.org's avatar
      2008-05-14 Julien Chaffraix <jchaffraix@webkit.org> · 47633d0b
      jchaffraix@webkit.org authored
             
              Reviewed by Eric.
             
              - isDarwin() and isCygwin() returned an empty string if the platform equality check fails.
                We now force the return value to be numeric.
      
              - Removed platform checks as it was a work around the previous issue.
      
              - Replaced isDarwin() by isOSX() as they have now the same behaviour.
      
              * Scripts/build-webkit:
              * Scripts/webkitdirs.pm:
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      47633d0b
    • timothy@apple.com's avatar
      Add pause on exception support to the Inspector debugger · 57442fcd
      timothy@apple.com authored
      with a toggle buttons to enable or disable it.
      
      Reviewed by Adam Roben.
      
      * page/InspectorController.cpp:
      (WebCore::pauseOnExceptions): Call the InspectorController.
      (WebCore::setPauseOnExceptions): Ditto.
      (WebCore::InspectorController::windowScriptObjectAvailable): Add the new
      setPauseOnExceptions and pauseOnExceptions functions to the JS class.
      (WebCore::InspectorController::pauseOnExceptions): Call JavaScriptDebugServer.
      (WebCore::InspectorController::setPauseOnExceptions): Ditto.
      * page/InspectorController.h:
      * page/JavaScriptDebugServer.cpp:
      (WebCore::JavaScriptDebugServer::setPauseOnExceptions): Set m_pauseOnExceptions.
      (WebCore::JavaScriptDebugServer::exception): Check m_pauseOnExceptions
      and set m_pauseOnNextStatement to true before calling pauseIfNeeded.
      * page/JavaScriptDebugServer.h:
      * page/inspector/Images/pauseOnExceptionButtons.png: Added.
      * page/inspector/ScriptsPanel.js: Adds a status bar button that calls
      the new InspectorController functions.
      * page/inspector/inspector.css: New styles.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57442fcd
    • timothy@apple.com's avatar
      Rename the Scope Chain pane to Scope Variables. Name the global · 977d4c95
      timothy@apple.com authored
      object Global. Name objects before the locals "With Block".
      Name colsure scopes "Closure". Name any element or document
      after Local, "Event Target" and "Event Document", respectfully.
      
      Reviewed by Adam Roben.
      
      * English.lproj/localizedStrings.js: Add new strings.
      * page/inspector/ObjectPropertiesSection.js:
      (WebInspector.ObjectPropertiesSection): Add a new argument that is used
      for the empty placeholder text.
      (WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use the
      empty placeholder text.
      * page/inspector/ScopeChainSidebarPane.js:
      (WebInspector.ScopeChainSidebarPane): Rename Scope Chain to Scope Variables.
      (WebInspector.ScopeChainSidebarPane.prototype.update): Use the object name as
      the subtitle. Use "Global" for the global object title. Use "With Block" for
      the title of objects before the locals. Use "No Variables" for the empty
      placeholder text for locals.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33444 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      977d4c95
    • ap@webkit.org's avatar
      Reviewed by Darin. · 53901ad3
      ap@webkit.org authored
              <rdar://problem/5934376> REGRESSION: A script fails because of a straw BOM character in it.
      
              <https://bugs.webkit.org/show_bug.cgi?id=4931>
              Unicode format characters (Cf) should be removed from JavaScript source
      
              Of all Cf characters, we are only removing BOM, because this is what Firefox trunk has
              settled upon, after extensive discussion and investigation.
      
              Based on Darin's work on this bug.
      
              Test: fast/js/removing-Cf-characters.html
      
              * kjs/lexer.cpp:
              (KJS::Lexer::setCode): Tweak formatting. Use a call to shift(4) to read in the
              first characters, instead of having special case code here.
              (KJS::Lexer::shift): Add a loop when reading a character to skip BOM characters.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33443 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      53901ad3
    • ap@webkit.org's avatar
      2008-05-14 Michael A. Puls II <shadow2531@gmail.com> · 248f5a13
      ap@webkit.org authored
              Reviewed by Alexey.
      
              Fix for https://bugs.webkit.org/show_bug.cgi?id=16923 
              Attr nodes with a value of "" should not have any childNodes
              
              In Opera, Firefox and IE, when an attribute node has a value
              of "", the attribute node doesn't have any childNodes. This
              is true in WebKit also, but not when you assign "" to the
              Attr's value when the existing value is non-empty.
              
              Test: fast/dom/attribute-empty-value-no-children.html
      
              * dom/Attr.cpp: (WebCore::Attr::setValue): Use createTextChild(), which only appends
              a child text node if the value being assigned is not empty.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      248f5a13
    • jchaffraix@webkit.org's avatar
      2008-05-14 Julien Chaffraix <jchaffraix@webkit.org> · 660eccc3
      jchaffraix@webkit.org authored
              Reviewed by Eric.
      
              GCC 4.3 build fix.
              Removes some compiler warnings.
      
              * dom/Document.h:
              (WebCore::FormElementKey::hashTableDeletedValue): GCC complained about the const keyword
              so remove it as it is only used inside FormElementKey.
      
              * html/HTMLSelectElement.cpp:
              (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Correct coding style (removes
              a warning too).
      
              * loader/appcache/ApplicationCacheResource.cpp: Include stdio.h for gcc4.3 build.
      
              * plugins/PluginPackage.cpp:
              (WebCore::PluginPackage::PluginPackage): Changed initialization order in the constructor.
              * plugins/PluginView.cpp:
              (WebCore::PluginView::PluginView): Ditto.
              * plugins/PluginView.h:
              * xml/AccessControlList.cpp: Include stdio.h
              * xml/AccessItem.cpp: Ditto.
              * xml/AccessItemRule.cpp: Ditto.
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      660eccc3
    • hausmann@webkit.org's avatar
      2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com> · 0ae5ba8a
      hausmann@webkit.org authored
      Reviewed by Simon.
      
      Qt build fix. Add JSJavaScriptCallFrameCustom.cpp to the build
      and implemented EventLoopQt.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33440 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0ae5ba8a
    • hausmann@webkit.org's avatar
      2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com> · f4a318cb
      hausmann@webkit.org authored
              Reviewed by Simon.
      
              Qt build fix. Add JavaScriptCallFrame.{idl,cpp} to the build.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33439 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4a318cb
  2. 13 May, 2008 26 commits
    • mitz@apple.com's avatar
      WebCore: · 995fa748
      mitz@apple.com authored
              Reviewed by John Sullivan.
      
              - Windows part of <rdar://problem/5725912> improve render quality of transformed text
      
              * platform/graphics/win/FontCGWin.cpp:
              (WebCore::Font::drawGlyphs): Added call to
              wkSetCGContextFontRenderingStyle().
      
      WebKitLibraries:
      
              Reviewed by John Sullivan.
      
              - WebKitSystemInterface support for <rdar://problem/5725912> improve render quality of transformed text
      
              * libWebKitSystemInterfaceLeopard.a: Improved glyph positioning in
              transformed graphics contexts.
              * win/include/WebKitSystemInterface/WebKitSystemInterface.h: Added
              wkSetCGContextFontRenderingStyle().
              * win/lib/WebKitSystemInterface.lib: Updated.
              * win/lib/WebKitSystemInterface_debug.lib: Updated.
      
      LayoutTests:
      
              Reviewed by John Sullivan.
      
              - updated pixel results for <rdar://problem/5725912> improve render quality of transformed text
      
              * platform/mac-leopard/fast/backgrounds: Added.
              * platform/mac-leopard/fast/backgrounds/repeat: Added.
              * platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Added.
              * platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
              * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
              * platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.checksum:
              * platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
              * platform/mac-leopard/svg/batik/text/textAnchor-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textAnchor-expected.png:
              * platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textEffect3-expected.png:
              * platform/mac-leopard/svg/batik/text/textFeatures-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textFeatures-expected.png:
              * platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
              * platform/mac-leopard/svg/batik/text/textLayout-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textLayout-expected.png:
              * platform/mac-leopard/svg/batik/text/textLength-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textLength-expected.png:
              * platform/mac-leopard/svg/batik/text/textOnPath-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textOnPath-expected.png:
              * platform/mac-leopard/svg/batik/text/textOnPath2-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textOnPath2-expected.png:
              * platform/mac-leopard/svg/batik/text/textOnPath3-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textOnPath3-expected.png:
              * platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.png:
              * platform/mac-leopard/svg/batik/text/textProperties2-expected.checksum:
              * platform/mac-leopard/svg/batik/text/textProperties2-expected.png:
              * platform/mac-leopard/svg/batik/text/verticalText-expected.checksum:
              * platform/mac-leopard/svg/batik/text/verticalText-expected.png:
              * platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.checksum:
              * platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.png:
              * platform/mac-leopard/svg/carto.net/button-expected.checksum:
              * platform/mac-leopard/svg/carto.net/button-expected.png:
              * platform/mac-leopard/svg/carto.net/colourpicker-expected.checksum:
              * platform/mac-leopard/svg/carto.net/colourpicker-expected.png:
              * platform/mac-leopard/svg/carto.net/combobox-expected.checksum:
              * platform/mac-leopard/svg/carto.net/combobox-expected.png:
              * platform/mac-leopard/svg/carto.net/scrollbar-expected.checksum:
              * platform/mac-leopard/svg/carto.net/scrollbar-expected.png:
              * platform/mac-leopard/svg/carto.net/selectionlist-expected.checksum:
              * platform/mac-leopard/svg/carto.net/selectionlist-expected.png:
              * platform/mac-leopard/svg/carto.net/slider-expected.checksum:
              * platform/mac-leopard/svg/carto.net/slider-expected.png:
              * platform/mac-leopard/svg/carto.net/textbox-expected.checksum:
              * platform/mac-leopard/svg/carto.net/textbox-expected.png:
              * platform/mac-leopard/svg/carto.net/window-expected.checksum:
              * platform/mac-leopard/svg/carto.net/window-expected.png:
              * platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.checksum:
              * platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.png:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.checksum:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.checksum:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.checksum:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.checksum:
              * platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.png:
              * platform/mac-leopard/svg/custom/focus-ring-expected.checksum:
              * platform/mac-leopard/svg/custom/focus-ring-expected.png:
              * platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.checksum:
              * platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.png:
              * platform/mac-leopard/svg/custom/foreign-object-skew-expected.checksum:
              * platform/mac-leopard/svg/custom/foreign-object-skew-expected.png:
              * platform/mac-leopard/svg/custom/getTransformToElement-expected.checksum:
              * platform/mac-leopard/svg/custom/getTransformToElement-expected.png:
              * platform/mac-leopard/svg/custom/invalid-css-expected.checksum:
              * platform/mac-leopard/svg/custom/invalid-css-expected.png:
              * platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.png:
              * platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.png:
              * platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.png:
              * platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.png:
              * platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.png:
              * platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.checksum:
              * platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.png:
              * platform/mac-leopard/svg/custom/marker-default-width-height-expected.checksum:
              * platform/mac-leopard/svg/custom/marker-default-width-height-expected.png:
              * platform/mac-leopard/svg/custom/multiple-title-elements-expected.checksum:
              * platform/mac-leopard/svg/custom/multiple-title-elements-expected.png:
              * platform/mac-leopard/svg/custom/path-textPath-simulation-expected.checksum:
              * platform/mac-leopard/svg/custom/path-textPath-simulation-expected.png:
              * platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum:
              * platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.png:
              * platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.checksum:
              * platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.png:
              * platform/mac-leopard/svg/custom/stroked-pattern-expected.checksum:
              * platform/mac-leopard/svg/custom/stroked-pattern-expected.png:
              * platform/mac-leopard/svg/custom/struct-use-09-b-expected.checksum:
              * platform/mac-leopard/svg/custom/struct-use-09-b-expected.png:
              * platform/mac-leopard/svg/custom/tref-update-expected.checksum:
              * platform/mac-leopard/svg/custom/tref-update-expected.png:
              * platform/mac-leopard/svg/custom/use-detach-expected.checksum:
              * platform/mac-leopard/svg/custom/use-detach-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.png:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.png:
              * platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.checksum:
              * platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.png:
              * platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.checksum:
              * platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.png:
              * platform/mac-leopard/svg/custom/viewbox-syntax-expected.checksum:
              * platform/mac-leopard/svg/custom/viewbox-syntax-expected.png:
              * platform/mac-leopard/svg/hixie/text/003-expected.checksum:
              * platform/mac-leopard/svg/hixie/text/003-expected.png:
              * platform/mac-leopard/svg/hixie/text/003b-expected.checksum:
              * platform/mac-leopard/svg/hixie/text/003b-expected.png:
              * platform/mac-leopard/svg/text/text-align-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-align-02-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-02-b-expected.png:
              * platform/mac-leopard/svg/text/text-align-03-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-03-b-expected.png:
              * platform/mac-leopard/svg/text/text-align-04-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-04-b-expected.png:
              * platform/mac-leopard/svg/text/text-align-05-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-05-b-expected.png:
              * platform/mac-leopard/svg/text/text-align-06-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-align-06-b-expected.png:
              * platform/mac-leopard/svg/text/text-altglyph-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-altglyph-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-deco-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-deco-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-fonts-01-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-fonts-01-t-expected.png:
              * platform/mac-leopard/svg/text/text-fonts-02-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-fonts-02-t-expected.png:
              * platform/mac-leopard/svg/text/text-intro-05-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-intro-05-t-expected.png:
              * platform/mac-leopard/svg/text/text-path-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-path-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-text-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-text-03-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-03-b-expected.png:
              * platform/mac-leopard/svg/text/text-text-04-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-04-t-expected.png:
              * platform/mac-leopard/svg/text/text-text-05-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-05-t-expected.png:
              * platform/mac-leopard/svg/text/text-text-06-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-06-t-expected.png:
              * platform/mac-leopard/svg/text/text-text-07-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-07-t-expected.png:
              * platform/mac-leopard/svg/text/text-text-08-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-text-08-b-expected.png:
              * platform/mac-leopard/svg/text/text-tref-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-tref-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-tselect-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-tselect-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-tselect-02-f-expected.checksum:
              * platform/mac-leopard/svg/text/text-tselect-02-f-expected.png:
              * platform/mac-leopard/svg/text/text-tspan-01-b-expected.checksum:
              * platform/mac-leopard/svg/text/text-tspan-01-b-expected.png:
              * platform/mac-leopard/svg/text/text-ws-01-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-ws-01-t-expected.png:
              * platform/mac-leopard/svg/text/text-ws-02-t-expected.checksum:
              * platform/mac-leopard/svg/text/text-ws-02-t-expected.png:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      995fa748
    • alp@webkit.org's avatar
      2008-05-13 Alp Toker <alp@nuanti.com> · 2263bbb0
      alp@webkit.org authored
              GTK+ build fix. Implement EventLoopGtk.cpp.
      
              * GNUmakefile.am:
              * platform/gtk/EventLoopGtk.cpp: Added.
              (WebCore::EventLoop::cycle):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2263bbb0
    • alp@webkit.org's avatar
      2008-05-13 Alp Toker <alp@nuanti.com> · 5e4fed73
      alp@webkit.org authored
              GTK+ build fix. Fix IDL filename typo and add JavaScriptCallFrame.cpp
              to the build.
      
              * GNUmakefile.am:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33428 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5e4fed73
    • pewtermoose@webkit.org's avatar
      2008-05-13 Matt Lilek <webkit@mattlilek.com> · 999a45c7
      pewtermoose@webkit.org authored
              Not reviewed, partial Gtk build fix.
      
              * GNUmakefile.am:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33427 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      999a45c7
    • timothy@apple.com's avatar
      Fixes a crash when stepping out in the Inspector's debugger. · 3d16060a
      timothy@apple.com authored
      http://bugs.webkit.org/show_bug.cgi?id=19037
      
      Reviewed by Dan Bernstein.
      
      * page/InspectorController.cpp:
      (WebCore::currentCallFrame): Adds a null check of currentCallFrame,
      since it can be null. Also returns JSNull to better signify this.
      * page/inspector/ScriptsPanel.js: Updates the debugger interface
      when stepping so the currentCallFrame isn't accessed when not paused.
      Adds a _clearInterface function to remove duplicate code.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d16060a
    • pewtermoose@webkit.org's avatar
      2008-05-13 Matt Lilek <webkit@mattlilek.com> · 1d49bcc3
      pewtermoose@webkit.org authored
              Not reviewed, build fix.
      
              * kjs/date_object.cpp:
              (KJS::DateObjectFuncImp::callAsFunction):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1d49bcc3
    • andersca@apple.com's avatar
      2008-05-13 Anders Carlsson <andersca@apple.com> · 88f0e02f
      andersca@apple.com authored
              Reviewed by Sam.
      
              Don't empty the application cache in _setCacheModel, since it will be called during initialization.
              Instead, do it in [WebCache empty].
              
              * Misc/WebCache.mm:
              (+[WebCache empty]):
              * WebView/WebView.mm:
              (+[WebView _setCacheModel:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      88f0e02f
    • andersca@apple.com's avatar
      2008-05-13 Anders Carlsson <andersca@apple.com> · 6bdff067
      andersca@apple.com authored
              Reviewed by Sam.
      
              <rdar://problem/5933644> Implement Date.now
              
              Implement Date.now which returns the number of milliseconds since the epoch.
              
              * kjs/CommonIdentifiers.h:
              * kjs/date_object.cpp:
              (KJS::DateObjectFuncImp::):
              (KJS::DateObjectImp::DateObjectImp):
              (KJS::DateObjectFuncImp::callAsFunction):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33422 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6bdff067
    • cfleizach@apple.com's avatar
      8a814004
    • cfleizach@apple.com's avatar
    • aroben@apple.com's avatar
      Restore some ChangeLog entries that were deleted in r33395 · 8ba4087d
      aroben@apple.com authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8ba4087d
    • timothy@apple.com's avatar
      Adds an overlay window that covers the scripts panel and · 1c01b264
      timothy@apple.com authored
      informs the user that they need to attach the debugger.
      Provides an "Attach Debugger" button below the info text.
      
      Reviewed by Dan Bernstein.
      
      * English.lproj/localizedStrings.js: New strings.
      * page/inspector/ScriptsPanel.js:
      (WebInspector.ScriptsPanel): Create the overlay elements and
      append to the main panel element.
      * page/inspector/inspector.css: New styles for the over lay elements.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33416 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c01b264
    • timothy@apple.com's avatar
      Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean · b706da23
      timothy@apple.com authored
      was referencing a nil WebView under validateUserInterfaceItem.
      The validateUserInterfaceItem methods was being called at a time
      when the WebHTMLView is being torndown.
      
      <rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
      while mousing down on menu bar after Xcode News window is opened
      
      Reviewed by Ada Chan.
      
      * WebView/WebHTMLView.mm:
      (-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
      return NO when it is nil. Adds a comment.
      * WebView/WebPDFView.mm:
      (-[WebPDFView validateUserInterfaceItem:]): Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33415 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b706da23
    • timothy@apple.com's avatar
      Fixes the assertion and crash that would happen when inspecting a element from a frame. · a5d0af3b
      timothy@apple.com authored
      This change makes JSInspectedObjectWrapper pass unwrapped objects around for global objects
      that share the same page group identifier. Also returns jsUndefined() instead of 0 to prevent
      crashing in release builds if the page groups don't match.
      
      Passes all the tests in: manual-tests/inspector-wrappers
      
      Reviewed by Adam Roben.
      
      * bindings/js/JSInspectedObjectWrapper.cpp:
      (WebCore::JSInspectedObjectWrapper::prepareIncomingValue): Return jsUndefined() instead of 0.
      Call allowsUnwrappedAccessFrom instead of unwrappedExecStateMatches.
      * bindings/js/JSQuarantinedObjectWrapper.cpp:
      (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Renamed from unwrappedExecStateMatches.
      Return true if the pageGroupIdentifier of both wrappers match.
      (WebCore::JSQuarantinedObjectWrapper::callAsFunction): Return jsUndefined() instead of 0.
      * bindings/js/JSQuarantinedObjectWrapper.h: Renamed unwrappedExecStateMatches to allowsUnwrappedAccessFrom.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33414 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a5d0af3b
    • timothy@apple.com's avatar
      Fixes the hang that could happen when option-clicking to expand · f1d15fc9
      timothy@apple.com authored
      a disclosure triangle in the Properties pane. This change limits
      the recursion depth when expanding the tree elements.
      
      <rdar://problem/5847681> Safari hangs when option-clicking a
      disclosure triangle in the Inspector's Properties pane
      
      Reviewed by John Sullivan.
      
      * page/inspector/treeoutline.js:
      (TreeElement.prototype.expandRecursively): Pass an empty info object to
      traverseNextTreeElement to get the depthChange value. This is used to
      compute a current depth. If the depth exceeds the maxDepth argument, the
      item isn't expanded and children wont be populated when traverseNextTreeElement
      is called until the depth goes below the maxDepth.
      (TreeElement.prototype.traverseNextTreeElement): Added a new info
      argument that can be optionally used to return extra info like depth change.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33413 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1d15fc9
    • timothy@apple.com's avatar
      Adds info text to panes and sections in the Inspector's sidebars · 5c7a4b23
      timothy@apple.com authored
      that would normally be empty. These help the user know why there
      is nothing in these sections.
      
      Reviewed by John Sullivan.
      
      * English.lproj/localizedStrings.js: Add strings.
      * page/inspector/BreakpointsSidebarPane.js: Adds "No Breakpoints".
      * page/inspector/CallStackSidebarPane.js: Adds "Not Paused".
      * page/inspector/ObjectPropertiesSection.js: Adds "No Properties".
      * page/inspector/ScopeChainSidebarPane.js: Adds "Not Paused".
      * page/inspector/inspector.css: Adds style rules for the info elements.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33412 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c7a4b23
    • timothy@apple.com's avatar
      Implements the rest of the Scripts panel to get the debugger · 55a36e48
      timothy@apple.com authored
      mostly working. "Basic debugging seems to work."
      
      Reviewed by Geoff Garen.
      
      * English.lproj/localizedStrings.js: Adds new strings.
      * page/inspector/Resource.js:
      (WebInspector.Resource.prototype.get scripts): Returns _scripts and
      creates it lazily.
      (WebInspector.Resource.prototype.addScript): Add the script object to the
      front of the _scripts array.
      (WebInspector.Resource.prototype.removeAllScripts): Removed all the scripts
      and removes the resource back-reference.
      (WebInspector.Resource.prototype.removeScript): Removes the script and
      breaks the resource back-reference.
      * page/inspector/ResourceView.js:
      (WebInspector.ResourceView): Adds a reminder comment.
      (WebInspector.ResourceView.prototype.get headersVisible): Returns _headersVisible.
      (WebInspector.ResourceView.prototype.set headersVisible): Stubs out
      a setter that currently just sets _headersVisible. Has a comment that
      points out this needs implemented when network headers are added.
      * page/inspector/ResourcesPanel.js:
      (WebInspector.ResourcesPanel.prototype.show): Sets the headersVisible property of
      the visible view to true and shows it again, in case it was being shown in Scripts.
      (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
      Copies the headersVisible property from the old view to the new view.
      (WebInspector.ResourcesPanel.prototype.showResource): Sets the headersVisible
      property to true before showing.
      * page/inspector/ScriptView.js:
      (WebInspector.ScriptView): Passes in _addBreakpoint for the add breakpoint delegate.
      (WebInspector.ScriptView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
      for the current Script.sourceID and line.
      * page/inspector/ScriptsPanel.js:
      (WebInspector.ScriptsPanel):
      (WebInspector.ScriptsPanel.prototype.show): Sets the headersVisible property of
      the visible view to false and shows it again, in case it was being shown in Resources.
      (WebInspector.ScriptsPanel.prototype.addScript): Makes a new Script object and
      adds it to a Resource if one is found. Registers any breakpoint that match
      the new Script's source URL, and sets the sourceID of the breakpoints.
      (WebInspector.ScriptsPanel.prototype.addBreakpoint): Adds the breakpoint to the
      BreakpointsSidebarPane. Also adds it to _breakpointsURLMap so it can be found
      later in addScript by URL. Finally adds the breakpoint to the SourceFrame that
      represents the resources or script.
      (WebInspector.ScriptsPanel.prototype.removeBreakpoint): Removes the breakpoint from
      the BreakpointsSidebarPane, _breakpointsURLMap and SourceFrame.
      (WebInspector.ScriptsPanel.prototype.debuggerPaused): Update the debugger
      state variables, the buttons and the CallStackSidebarPane.
      (WebInspector.ScriptsPanel.prototype.reset): Clears and resets debugger
      and interface state.
      (WebInspector.ScriptsPanel.prototype.get visibleView): Returns _visibleView.
      (WebInspector.ScriptsPanel.prototype.set visibleView): Sets _visibleView and
      calls hide on the old view and show on the new view.
      (WebInspector.ScriptsPanel.prototype.showScript): Calls _showScriptOrResource.
      (WebInspector.ScriptsPanel.prototype.showResource): Ditto.
      (WebInspector.ScriptsPanel.prototype.scriptViewForScript): Lazily creates a
      ScriptView for the Script and returns it.
      (WebInspector.ScriptsPanel.prototype.sourceFrameForScript): Returns the SourceFrame
      for the Script.
      (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): Returns the
      SourceFrame based on the type of object passed in.
      (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Shows the view based on
      the type of object passed in. If the object is a resource and there are breakpoints
      defined for that Resource URL, then populate the SourceFrame with the breakpoints.
      (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Adds a script to the
      files menu. If the Script is part of a resource, that resource is added.
      (WebInspector.ScriptsPanel.prototype._removeScriptFromFilesMenu): Remove a script from
      the files menu. If that script is part of a resource and it is the last script of that
      resource, then remove the whole resource.
      (WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine): Clears the execution
      line from the SourceFrame that is showing it.
      (WebInspector.ScriptsPanel.prototype._callFrameSelected): Event listener for when the
      call frame changes in the CallStackSidebarPane. Triggers updates to the ScopeChainSidebarPane
      and the visible view.
      (WebInspector.ScriptsPanel.prototype._changeVisibleFile): Event listener for the change state
      of the files select element.
      (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Update more of the
      buttons to reflect the current debugger state. Updates the status text too.
      (WebInspector.ScriptsPanel.prototype._toggleDebugging): Reset the UI and state when
      the debugger is attached/detached.
      (WebInspector.ScriptsPanel.prototype._togglePause): Call InspectorController.resumeDebugger or
      InspectorController.pauseInDebugger depending on the paused state.
      (WebInspector.ScriptsPanel.prototype._stepOverClicked): Call InspectorController.stepOverStatementInDebugger.
      (WebInspector.ScriptsPanel.prototype._stepIntoClicked): Call InspectorController.stepIntoStatementInDebugger.
      (WebInspector.ScriptsPanel.prototype._stepOutClicked): InspectorController.stepOutOfFunctionInDebugger.
      * page/inspector/SourceView.js:
      (WebInspector.SourceView): Passes in _addBreakpoint for the add breakpoint delegate.
      (WebInspector.SourceView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
      for the nearest Script's sourceID and passed in line.
      * page/inspector/inspector.css: New style rules for the UI changes.
      * page/inspector/inspector.js:
      (WebInspector.loaded): Add the ScriptsPanel to the panels list.
      (WebInspector.parsedScriptSource): Call ScriptsPanel.addScript.
      (WebInspector.failedToParseScriptSource): Ditto.
      (WebInspector.pausedScript): Call ScriptsPanel.debuggerPaused.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33411 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55a36e48
    • timothy@apple.com's avatar
      Adds implementations of the Scope Chain and Call Stack sidebar panes. · 46aa3b72
      timothy@apple.com authored
      These panes use the JSJavaScriptCallFrame object that will be passed
      to the update functions.
      
      Reviewed by Kevin McCullough.
      
      * English.lproj/localizedStrings.js: Adds new strings.
      * WebCore.vcproj/WebCore.vcproj: Adds new files.
      * page/inspector/CallStackSidebarPane.js:
      (WebInspector.CallStackSidebarPane.prototype.update): Walk the
      caller chain of the call frame and make placards for each.
      (WebInspector.CallStackSidebarPane.prototype.get selectedCallFrame):
      Return _selectedCallFrame.
      (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
      Set _selectedCallFrame and dispatch the "call frame selected" event.
      (WebInspector.CallStackSidebarPane.prototype._placardSelected):
      Set the selectedCallFrame based on the clicked placard.
      * page/inspector/Placard.js: Added. A user interface object that can
      be used to show a title and a subtitle block with a selected state.
      * page/inspector/ScopeChainSidebarPane.js: Added.
      (WebInspector.ScopeChainSidebarPane): Call the base object and set the title.
      (WebInspector.ScopeChainSidebarPane.prototype.update): Iterate over the
      call frame's scope chain and make ObjectPropertiesSections for each.
      * page/inspector/SidebarPane.js:
      (WebInspector.SidebarPane.prototype): Inherit from WebInspector.Object.
      * page/inspector/WebKit.qrc: Add new files.
      * page/inspector/inspector.css: Add placard styles.
      * page/inspector/inspector.html: Add new files.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33410 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      46aa3b72
    • timothy@apple.com's avatar
      Fixes the bug where SourceViews would be blank if shown before · 018e37e6
      timothy@apple.com authored
      the Resource finished loading.
      
      <rdar://problem/5807420> Safari's Web Inspector won't display the
      contents of some CSS and JS files
      
      Reviewed by Kevin McCullough.
      
      * page/inspector/Resource.js:
      (WebInspector.Resource.prototype.set finished): Dispatch the finished event
      (WebInspector.Resource.prototype): Inherit from WebInspector.Object.prototype.
      * page/inspector/SourceView.js:
      (WebInspector.SourceView): Register for the finished event on the resource.
      When the event fires, setup the source frame and deregister the event.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33409 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      018e37e6
    • timothy@apple.com's avatar
      Factored most of SourceView out into SourceFrame so it can be shared · 187b6eaa
      timothy@apple.com authored
      by the new ScriptView. Added the ScriptView class to be used for
      scripts that arn't Resources (like eval code.) Added a simple Script
      object that hold the data from the debugger parsedSource hooks. A
      ScriptView holds a Script object, and uses it for source data.
      
      Added breakpoint and execution line support to the SourceFrame
      where they are visually represented in the source.
      
      Reviewed by Kevin McCullough.
      
      * page/inspector/inspector.js:
      (WebInspector.performSearch): Change the caller of sourceFrameForResource
      to use the SourceFrame result's element property.
      * page/inspector/ResourcesPanel.js: Use the new SourceFrame.
      * page/inspector/Script.js: Added.
      * page/inspector/ScriptView.js: Added.
      * page/inspector/SourceFrame.js: Added.
      * page/inspector/SourceView.js: Use the new SourceFrame.
      * WebCore.vcproj/WebCore.vcproj: Add new files.
      * page/inspector/WebKit.qrc: Ditto.
      * page/inspector/inspector.html: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33408 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      187b6eaa
    • timothy@apple.com's avatar
      Adds a Breakpoint object and basic add/remove functions on · 7f231c95
      timothy@apple.com authored
      BreakpointsSidebarPane that call the InspectorController to
      add/remove the breakpoint.
      
      Reviewed by Kevin McCullough.
      
      * page/inspector/Breakpoint.js:
      (WebInspector.Breakpoint):
      (WebInspector.Breakpoint.prototype.get enabled): Return _enabled.
      (WebInspector.Breakpoint.prototype.set enabled): Set _enabled and
      dispatch the enabled/disabled event to listeners.
      * page/inspector/BreakpointsSidebarPane.js:
      (WebInspector.BreakpointsSidebarPane): Add a breakpoints array.
      (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
      Adds the breakpoint to the breakpoints array. Registers for the disabled
      and enabled event types. Call InspectorController.addBreakpoint if attached.
      (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
      Removes the breakpoint from the breakpoints array. Deregisters for the disabled
      and enabled event types. Call InspectorController.removeBreakpoint if attached.
      (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
      Call InspectorController.addBreakpoint or InspectorController.removeBreakpoint
      depending on the enabled state of the breakpoint.
      * WebCore.vcproj/WebCore.vcproj: Add new files.
      * page/inspector/WebKit.qrc: Ditto.
      * page/inspector/inspector.html: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33407 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f231c95
    • timothy@apple.com's avatar
      Make addSourceToFrame not dependent on InspectorResource so it · 70545d68
      timothy@apple.com authored
      can be used to add source of a passed in string and mime-type to
      a frame. Added addResourceSourceToFrame for use by SourceView.
      
      Also fixes an assertion because of an incorrect static_cast of identifiers
      to unsigned long long, when they can be unsigned.
      
      Reviewed by Geoff Garen.
      
      * page/InspectorController.cpp:
      (WebCore::addSourceToFrame): Helper function used by addSourceToFrame
      and addResourceSourceToFrame.
      (WebCore::addSourceToFrame): Generalized to take a source and mime-type string.
      (WebCore::addResourceSourceToFrame): Renamed from addSourceToFrame.
      (WebCore::getResourceDocumentNode): Fixes the static_cast to be long long.
      (WebCore::InspectorController::windowScriptObjectAvailable): Adds
      addResourceSourceToFrame to the JavaScript class.
      * page/inspector/SourceView.js: Use the new addResourceSourceToFrame.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33406 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      70545d68
    • timothy@apple.com's avatar
      Add debugger related functions to the InspectorController and · c8a33e45
      timothy@apple.com authored
      expose them to the JavaScript side of InspectorController.
      
      Reviewed by Geoff Garen.
      
      * page/InspectorController.cpp:
      (WebCore::jsStringRef): Added helper to convert a UString to a JSStringRef.
      (WebCore::currentCallFrame): Call InspectorController::currentCallFrame.
      (WebCore::pauseInDebugger): Call InspectorController::pauseInDebugger.
      (WebCore::resumeDebugger): Call InspectorController::resumeDebugger.
      (WebCore::stepOverStatementInDebugger): Call InspectorController::stepOverStatementInDebugger.
      (WebCore::stepIntoStatementInDebugger): Call InspectorController::stepIntoStatementInDebugger.
      (WebCore::stepOutOfFunctionInDebugger): Call InspectorController::stepOutOfFunctionInDebugger.
      (WebCore::addBreakpoint): Call InspectorController::addBreakpoint.
      (WebCore::removeBreakpoint): Call InspectorController::removeBreakpoint.
      (WebCore::InspectorController::windowScriptObjectAvailable): Add the new functions to the
      InspectorController JavaScript class.
      (WebCore::InspectorController::startDebuggingAndReloadInspectedPage): Clear breakpoints.
      (WebCore::InspectorController::currentCallFrame): Return the currentCallFrame from the
      JavaScriptDebugServer.
      (WebCore::InspectorController::pauseInDebugger): Call JavaScriptDebugServer's pauseOnNextStatement.
      (WebCore::InspectorController::resumeDebugger): Call JavaScriptDebugServer's resume.
      (WebCore::InspectorController::stepOverStatementInDebugger):  Call JavaScriptDebugServer's stepOverStatement.
      (WebCore::InspectorController::stepIntoStatementInDebugger): Call JavaScriptDebugServer's stepIntoStatement.
      (WebCore::InspectorController::stepOutOfFunctionInDebugger): Call JavaScriptDebugServer's stepOutOfFunction.
      (WebCore::InspectorController::addBreakpoint): Call JavaScriptDebugServer's addBreakpoint.
      (WebCore::InspectorController::removeBreakpoint): Call JavaScriptDebugServer's removeBreakpoint.
      (WebCore::InspectorController::didParseSource): Call into the Inspector's JavaScript.
      (WebCore::InspectorController::failedToParseSource): Ditto.
      (WebCore::InspectorController::didPause): Ditto.
      * page/InspectorController.h: Add new functions.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33405 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c8a33e45
    • timothy@apple.com's avatar
      Implements more debugger APIs on JavaScriptDebugServer and reduces · 12d60aab
      timothy@apple.com authored
      the number of callbacks to JavaScriptDebugListeners. These changes
      will better facilitate debugger optimizations when SquirrelFish merges.
      
      Reviewed by Kevin McCullough.
      
      * page/InspectorController.cpp:
      (WebCore::InspectorController::didParseSource): Removed the ExecState.
      (WebCore::InspectorController::failedToParseSource): Ditto.
      (WebCore::InspectorController::didPause): Added.
      * page/InspectorController.h: Changed the JavaScriptDebugListener functions.
      * page/JavaScriptDebugListener.h: Removed some callbacks and added didPause.
      * page/JavaScriptDebugServer.cpp:
      (WebCore::JavaScriptDebugServer::JavaScriptDebugServer): Initialize new data members.
      (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all values of m_breakpoints.
      (WebCore::JavaScriptDebugServer::removeListener): Call resume if the last listener was removed.
      (WebCore::JavaScriptDebugServer::hasListenersInterestedInPage): Returns true if there are any
      global listeners or a listener for the page.
      (WebCore::JavaScriptDebugServer::addBreakpoint): Adds and entry to m_breakpoints.
      (WebCore::JavaScriptDebugServer::removeBreakpoint): Removes a entry in m_breakpoints.
      (WebCore::JavaScriptDebugServer::hasBreakpoint):  Checks if there is a breakpoint for the
      sourceID and line.
      (WebCore::JavaScriptDebugServer::clearBreakpoints): Removed all breakpoints.
      (WebCore::JavaScriptDebugServer::pauseOnNextStatement): Sets m_pauseOnNextStatement to true.
      (WebCore::JavaScriptDebugServer::resume): Sets m_paused to false.
      (WebCore::JavaScriptDebugServer::stepIntoStatement): Calls resume and sets
      m_pauseOnNextStatement to true.
      (WebCore::JavaScriptDebugServer::stepOverStatement): Calls resume and sets m_pauseOnExecState to
      the current call frame's ExecState.
      (WebCore::JavaScriptDebugServer::stepOutOfFunction): Calls resume and sets m_pauseOnExecState to
      the current call frame's caller ExecState.
      (WebCore::JavaScriptDebugServer::currentCallFrame): Returns m_currentCallFrame if paused.
      (WebCore::dispatchDidParseSource): Removed the ExecState argument.
      (WebCore::dispatchFailedToParseSource): Ditto.
      (WebCore::JavaScriptDebugServer::sourceParsed): Doesn't pass the ExecState to dispatchDidParseSource
      or dispatchFailedToParseSource.
      (WebCore::dispatchFunctionToListeners):
      (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Removes all the arguments passed
      to the callback.
      (WebCore::JavaScriptDebugServer::setJavaScriptPaused): Various overloaded functions
      to pause parts of WebCore to prevent JavaScript execution while paused.
      (WebCore::JavaScriptDebugServer::pauseIfNeeded): Decides if the debugger should pause based
      on the passed in ExecState, source ID and line number. This checks for breakpoints, stepping, etc.
      Calls didPause on all the listeners and spins a EventLoop until resume is called.
      (WebCore::JavaScriptDebugServer::callEvent): Call pauseIfNeeded.
      (WebCore::JavaScriptDebugServer::atStatement): Ditto.
      (WebCore::JavaScriptDebugServer::returnEvent): Ditto.
      (WebCore::JavaScriptDebugServer::exception): Ditto.
      * page/JavaScriptDebugServer.h: Added new functions.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33404 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      12d60aab
    • timothy@apple.com's avatar
      Change View.show to call detach if the parentNode dosen't · 8906ca0d
      timothy@apple.com authored
      match before appending to the passed in parent element.
      This also prevents appending to the same parent element
      multiple times.
      
      Reviewed by John Sullivan.
      
      * page/inspector/FontView.js:
      (WebInspector.FontView.prototype.show): Pass the parent element to View.show.
      * page/inspector/ResourceView.js: Optimize the attach method to no append if
      there is a parentNode already.
      * page/inspector/SourceView.js: Ditto.
      * page/inspector/View.js: Call detach before appending if the parentNode
      doesn't match the passed in element.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33403 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8906ca0d
    • timothy@apple.com's avatar
      Optimize the panel attach method to no append if there is a · 1a750fe2
      timothy@apple.com authored
      parentNode already.
      
      Reviewed by Adam Roben.
      
      * page/inspector/Panel.js:
      (WebInspector.Panel.prototype.attach): Don't append to main-panels
      if the panel element already has a parentNode.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@33402 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a750fe2