1. 24 Apr, 2009 10 commits
    • timothy@apple.com's avatar
      BUG 24604: WebKit profiler reports incorrect total times · c91c0b1d
      timothy@apple.com authored
      JavaScriptCore:
      
      2009-04-23  Francisco Tolmasky  <francisco@280north.com>
      
              BUG 24604: WebKit profiler reports incorrect total times
              <https://bugs.webkit.org/show_bug.cgi?id=24604>
      
              Reviewed by Timothy Hatcher and Kevin McCullough.
      
              * JavaScriptCore.exp:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * profiler/CallIdentifier.h:
              (JSC::CallIdentifier::Hash::hash):
              (JSC::CallIdentifier::Hash::equal):
              (JSC::CallIdentifier::hash):
              (WTF::):
              * profiler/HeavyProfile.cpp: Removed.
              * profiler/HeavyProfile.h: Removed.
              * profiler/Profile.cpp: No more need for TreeProfile/HeavyProfile
              (JSC::Profile::create):
              * profiler/Profile.h:
              * profiler/ProfileNode.cpp:
              * profiler/ProfileNode.h:
              * profiler/TreeProfile.cpp: Removed.
              * profiler/TreeProfile.h: Removed.
      
      WebCore:
      
      2009-04-23  Francisco Tolmasky  <francisco@280north.com>
      
              BUG 24604: WebKit profiler reports incorrect total times
              <https://bugs.webkit.org/show_bug.cgi?id=24604>
      
              Reviewed by Timothy Hatcher and Kevin McCullough.
      
              Made it so that most of the profiler functions now match the behavior of Shark. Most notably, in the
              heavy view, child nodes now represent the statistics of the root node. Each root node of heavy view
              displays flattened statistics for a particular function that ran during the profile, and each child
              of these root nodes represents a callpath that lead to it. Thus, the statistics for each of these child
              nodes should show how much of the root nodes values came from it. For example, if you had the following to
              stacks take place during the profile:
      
              A ->calls 1 times-> B ->calls 2 times-> C
              D ->calls 4 times-> C
      
              The tree for the C root node would look like this:
      
              C -> B -> A
                -> D
      
              The number of calls values would look like this:
      
              C (6) -> B (2) -> A(2)
                    -> D (4)
      
              What this means is that "2 of the total 6 C calls came from B", "2 of the total C calls came from A", and
              "4 of the total C calls came from D".  Notice that the "A ->calls 2 time->" is completely ignored. This becomes
              particularly tricky during recursive calls, because each child note can represent multiple possible paths. This
              is the reason that we would get things like 40000% previously with recursion.
      
              This is also the way gprof works, and as close as we can get to Shark's behavior (Shark is not instrumented so it
              can't know exactly how many calls came from where, etc).
      
              * English.lproj/localizedStrings.js: Added "Average" for average times in the profile.
              * inspector/JavaScriptProfile.cpp:
              (WebCore::ProfileClass):
              * inspector/JavaScriptProfileNode.cpp:
              (WebCore::getParent):
              (WebCore::getHead):
              (WebCore::getCallUID):
              (WebCore::ProfileNodeClass):
              * inspector/front-end/BottomUpProfileDataGridTree.js: Added.
              (WebInspector.BottomUpProfileDataGridTree):
              (WebInspector.BottomUpProfileDataGridTree.prototype.focus):
              (WebInspector.BottomUpProfileDataGridNode):
              (WebInspector.BottomUpProfileDataGridNode.prototype._takePropertiesFromProfileDataGridNode):
              (WebInspector.BottomUpProfileDataGridNode.prototype._keepOnlyChild):
              (WebInspector.BottomUpProfileDataGridNode.prototype._exclude):
              (WebInspector.BottomUpProfileDataGridNode.prototype._merge):
              (WebInspector.BottomUpProfileDataGridNode.prototype._populate):
              * inspector/front-end/DataGrid.js:
              (WebInspector.DataGrid.prototype.insertChild):
              (WebInspector.DataGrid.prototype.removeChild):
              (WebInspector.DataGrid.prototype.removeChildren):
              (WebInspector.DataGridNode.prototype.set hasChildren):
              (WebInspector.DataGridNode.prototype.get hasChildren):
              * inspector/front-end/ProfileDataGridTree.js: Added.
              (WebInspector.ProfileDataGridNode):
              (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
              (WebInspector.ProfileDataGridNode.prototype.get data):
              (WebInspector.ProfileDataGridNode.prototype.createCell):
              (WebInspector.ProfileDataGridNode.prototype.select):
              (WebInspector.ProfileDataGridNode.prototype.deselect):
              (WebInspector.ProfileDataGridNode.prototype.expand):
              (WebInspector.ProfileDataGridNode.prototype.insertChild):
              (WebInspector.ProfileDataGridNode.prototype.removeChild):
              (WebInspector.ProfileDataGridNode.prototype.removeChildren):
              (WebInspector.ProfileDataGridNode.prototype.findChild):
              (WebInspector.ProfileDataGridNode.prototype.get averageTime):
              (WebInspector.ProfileDataGridNode.prototype.get averagePercent):
              (WebInspector.ProfileDataGridNode.prototype.get selfPercent):
              (WebInspector.ProfileDataGridNode.prototype.get totalPercent):
              (WebInspector.ProfileDataGridNode.prototype._save):
              (WebInspector.ProfileDataGridNode.prototype._restore):
              (WebInspector.ProfileDataGridNode.prototype._merge):
              (WebInspector.ProfileDataGridTree):
              (WebInspector.ProfileDataGridTree.prototype.get expanded):
              (WebInspector.ProfileDataGridTree.prototype.appendChild):
              (WebInspector.ProfileDataGridTree.prototype.insertChild):
              (WebInspector.ProfileDataGridTree.prototype.removeChildren):
              (WebInspector.ProfileDataGridTree.prototype.findChild.WebInspector.ProfileDataGridNode.prototype.findChild.sort.WebInspector.ProfileDataGridNode.prototype.sort._save):
              (WebInspector.ProfileDataGridTree.propertyComparator.comparator):
              (WebInspector.ProfileDataGridTree.propertyComparator.else.comparator):
              (WebInspector.ProfileDataGridTree.propertyComparator):
              * inspector/front-end/ProfileView.js:
              (WebInspector.ProfileView):
              (WebInspector.ProfileView.prototype.set profile):
              (WebInspector.ProfileView.prototype.get bottomUpProfileDataGridTree):
              (WebInspector.ProfileView.prototype.get topDownProfileDataGridTree):
              (WebInspector.ProfileView.prototype.get currentTree):
              (WebInspector.ProfileView.prototype.set currentTree):
              (WebInspector.ProfileView.prototype.get topDownTree):
              (WebInspector.ProfileView.prototype.get bottomUpTree):
              (WebInspector.ProfileView.prototype.refresh):
              (WebInspector.ProfileView.prototype.refreshVisibleData):
              (WebInspector.ProfileView.prototype.refreshShowAsPercents):
              (WebInspector.ProfileView.prototype.performSearch.matchesQuery):
              (WebInspector.ProfileView.prototype.performSearch):
              (WebInspector.ProfileView.prototype._changeView):
              (WebInspector.ProfileView.prototype._focusClicked):
              (WebInspector.ProfileView.prototype._excludeClicked):
              (WebInspector.ProfileView.prototype._resetClicked):
              (WebInspector.ProfileView.prototype._sortProfile):
              * inspector/front-end/ProfilesPanel.js:
              (WebInspector.ProfilesPanel.prototype.showProfile):
              (WebInspector.ProfilesPanel.prototype.showView):
              (WebInspector.ProfilesPanel.prototype.searchMatchFound):
              * inspector/front-end/TopDownProfileDataGridTree.js: Added.
              (WebInspector.TopDownProfileDataGridNode):
              (WebInspector.TopDownProfileDataGridNode.prototype._populate):
              (WebInspector.TopDownProfileDataGridNode.prototype._exclude):
              (WebInspector.TopDownProfileDataGridTree):
              (WebInspector.TopDownProfileDataGridTree.prototype.focus):
              (WebInspector.TopDownProfileDataGridTree.prototype.exclude):
              * inspector/front-end/WebKit.qrc:
              * inspector/front-end/inspector.css:
              * inspector/front-end/inspector.html:
      
      LayoutTests:
      
      2009-04-23  Francisco Tolmasky  <francisco@280north.com>
      
              BUG 24604: WebKit profiler reports incorrect total times
              <https://bugs.webkit.org/show_bug.cgi?id=24604>
      
              Reviewed by Timothy Hatcher and Kevin McCullough.
      
              Changed profile.treeProfile to just profile, since these aren't generated in C++ anymore.
              Removed heavy-view test since heavy-view isn't an actual tree that is generated in C++ land anymore,
              but rather just a different display of the normal treeProfile in the JS data grid.
      
              * fast/profiler/heavy-view-expected.txt: Removed.
              * fast/profiler/heavy-view.html: Removed.
              * fast/profiler/resources/profiler-test-JS-resources.js: profiles[i].treeProfile -> profiles[i].treeProfile
              (printProfilesDataWithoutTime):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42808 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c91c0b1d
    • eric@webkit.org's avatar
      Reviewed by Sam Weinig. · 1a66e77b
      eric@webkit.org authored
              Use static functions (and a couple templates)
              to further reduce the amount of copy/paste code in SVGRenderTreeAsText
      
              No test changes, only code cleanup.
      
              * rendering/SVGRenderTreeAsText.cpp:
              (WebCore::writeNameValuePair):
              (WebCore::writeNameAndQuotedValue):
              (WebCore::writeIfNotEmpty):
              (WebCore::writeIfNotDefault):
              (WebCore::writeStyle):
              (WebCore::writePositionAndStyle):
              (WebCore::operator<<):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42807 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      1a66e77b
    • kmccullough@apple.com's avatar
      2009-04-23 Kevin McCullough <kmccullough@apple.com> · 8b23243f
      kmccullough@apple.com authored
              - Windows build fix.  Mac only tests go in platform/mac
      
              * editing/deleting/deletionUI-borders.html: Removed.
              * editing/deleting/deletionUI-differing-background.html: Removed.
              * editing/deleting/deletionUI-minimum-size.html: Removed.
              * platform/mac/editing/deleting/deletionUI-borders.html: Copied from editing/deleting/deletionUI-borders.html.
              * platform/mac/editing/deleting/deletionUI-differing-background.html: Copied from editing/deleting/deletionUI-differing-background.html.
              * platform/mac/editing/deleting/deletionUI-minimum-size.html: Copied from editing/deleting/deletionUI-minimum-size.html.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42806 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      8b23243f
    • barraclough@apple.com's avatar
      2009-04-23 Gavin Barraclough <barraclough@apple.com> · 91654c29
      barraclough@apple.com authored
              Not Reviewed.
      
              Speculative Windows build fix II.
      
              * yarr/RegexInterpreter.cpp:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42805 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      91654c29
    • barraclough@apple.com's avatar
      2009-04-23 Gavin Barraclough <barraclough@apple.com> · 7ec3e5af
      barraclough@apple.com authored
              Not Reviewed.
      
              Speculative Windows build fix.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              * runtime/RegExp.cpp:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42804 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7ec3e5af
    • eric@webkit.org's avatar
      Reviewed by Simon Fraser. · 4d79549e
      eric@webkit.org authored
              SVGRenderTreeAsText cleanup/code sharing.
      
              No test changes, only code cleanup.
      
              * rendering/RenderText.cpp:
              (WebCore::RenderText::firstRunOrigin):
              * rendering/RenderText.h:
              * rendering/SVGRenderTreeAsText.cpp:
              (WebCore::writeStandardPrefix):
              (WebCore::writeChildren):
              (WebCore::write):
              (WebCore::writeRenderResources):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42803 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      4d79549e
    • barraclough@apple.com's avatar
      2009-04-23 Gavin Barraclough <barraclough@apple.com> · 3b64f2a3
      barraclough@apple.com authored
              Rubber stamped by salty sea dogs Sam & Geoff.
      
              Enable YARR_JIT by default (where supported), replacing WREC.
      
              * wtf/Platform.h:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42802 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      3b64f2a3
    • darin@apple.com's avatar
      2009-04-23 Darin Adler <darin@apple.com> · 53704792
      darin@apple.com authored
              Removed some stray files that Geoff missed when rolling out changes.
      
              * svg/custom/resources/svg-fonts-in-text-controls.js: Removed.
              * svg/custom/svg-fonts-in-text-controls-expected.txt: Removed.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42801 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      53704792
    • barraclough@apple.com's avatar
      JavaScriptCore: · 200b0299
      barraclough@apple.com authored
      2009-04-23  Gavin Barraclough  <barraclough@apple.com>
      
              Reviewed by Geoff "Dread Pirate Roberts" Garen.
      
              Various small fixes to YARR JIT, in preparation for enabling it by default.
      
              * Correctly index into the callframe when storing restart addresses for
                nested alternatives.
              * Allow backtracking back into matched alternatives of parentheses.
              * Fix callframe offset calculation for parenthetical assertions.
              * When a set of parenthese are quantified with a fixed and variable portion,
                and the variable portion is quantified once, this should not reset the
                pattern match on failure to match (the last match from the firxed portion
                should be preserved).
              * Up the pattern size limit to match PCRE's new limit.
              * Unlclosed parentheses should be reported with the message "missing )".
      
              * wtf/Platform.h:
              * yarr/RegexCompiler.cpp:
              (JSC::Yarr::RegexPatternConstructor::quantifyAtom):
              (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
              * yarr/RegexInterpreter.cpp:
              (JSC::Yarr::Interpreter::matchParentheses):
              (JSC::Yarr::Interpreter::backtrackParentheses):
              (JSC::Yarr::ByteCompiler::emitDisjunction):
              * yarr/RegexJIT.cpp:
              (JSC::Yarr::RegexGenerator::loadFromFrameAndJump):
              (JSC::Yarr::RegexGenerator::generateParenthesesDisjunction):
              (JSC::Yarr::RegexGenerator::generateParentheticalAssertion):
              (JSC::Yarr::RegexGenerator::generateTerm):
              (JSC::Yarr::executeRegex):
              * yarr/RegexParser.h:
              (JSC::Yarr::Parser::):
              (JSC::Yarr::Parser::parseTokens):
              (JSC::Yarr::Parser::parse):
              * yarr/RegexPattern.h:
              (JSC::Yarr::PatternTerm::):
              (JSC::Yarr::PatternTerm::PatternTerm):
      
      LayoutTests:
      
      2009-04-23  Gavin Barraclough  <barraclough@apple.com>
      
              Reviewed by Geoff "Dread Pirate Roberts" Garen.
      
              This test tries to force itself into PCRE; modify the
              test so that as well as dodging WREC it can also avoid
              YARR!
      
              * fast/js/resources/regexp-overflow-too-big.js:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42800 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      200b0299
    • bdakin@apple.com's avatar
      WebCore: · e8fd345b
      bdakin@apple.com authored
      2009-04-23  Beth Dakin  <bdakin@apple.com>
      
              Reviewed by Darin Adler.
      
              WebCore part of fix for <rdar://problem/6333461> REGRESSION 
              (r36864-r36869): Dragging stocks widget scrollbar drags the whole 
              widget
      
              * platform/Scrollbar.h:
              (WebCore::Scrollbar::isScrollbar):
              * platform/Widget.h:
              (WebCore::Widget::isScrollbar):
      
      WebKit/mac:
      
      2009-04-23  Beth Dakin  <bdakin@apple.com>
      
              Reviewed by Darin Adler.
      
              Fix for <rdar://problem/6333461> REGRESSION (r36864-r36869): 
              Dragging stocks widget scrollbar drags the whole widget
      
              Look for our new WebCore scrollbars in the WebHTMLView and add 
              proper Dashboard regions for them.
      
              * WebView/WebView.mm:
              (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):
              (-[WebView _addScrollerDashboardRegions:from:]):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42799 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e8fd345b
  2. 23 Apr, 2009 30 commits
    • kmccullough@apple.com's avatar
      WebCore: · a2df6ed5
      kmccullough@apple.com authored
      2009-04-23  Kevin McCullough  <kmccullough@apple.com>
      
              Reviewed by Adam Roben.
      
              <rdar://problem/6808109> "Deletion UI" is not available for many
              portions of HTML content
      
              This patch makes the deletion UI show up in some new situations:
              1) If a block's background color is different from its parent's
              2) If a block has a background image.
              3) If a block has a single visible border.
              However the block must now not only be at least a minimum width and
              height, but also exceed a minimum area.  In practice this has led to
              much better element selection. 
      
              * editing/DeleteButtonController.cpp:
              (WebCore::isDeletableElement):
      
      LayoutTests:
      
      2009-04-23  Kevin McCullough  <kmccullough@apple.com>
      
              Reviewed by Adam Roben.
      
              <rdar://problem/6808109> "Deletion UI" is not available for many
              portions of HTML content
      
              This patch makes the deletion UI show up in some new situations:
              1) If a block's background color is different from its parent's
              2) If a block has a background image.
              3) If a block has a single visible border.
              However the block must now not only be at least a minimum width and
              height, but also exceed a minimum area.  In practice this has led to
              much better element selection.
      
              * editing/deleting/deletionUI-borders.html: Added.
              * editing/deleting/deletionUI-differing-background.html: Added.
              * editing/deleting/deletionUI-minimum-size.html: Added.
              * editing/deleting/resources: Added.
              * editing/deleting/resources/deletionUI-helpers.js: Added.
              (debug):
              (determineDeletionUIExistence):
              * platform/mac/editing/deleting/deletionUI-borders-expected.txt: Added.
              * platform/mac/editing/deleting/deletionUI-differing-background-expected.txt: Added.
              * platform/mac/editing/deleting/deletionUI-minimum-size-expected.txt: Added.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42798 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a2df6ed5
    • kevino@webkit.org's avatar
      wx build fix. Adding XMLTokenizer.cpp to the build. · b912cd3f
      kevino@webkit.org authored
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42797 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      b912cd3f
    • sullivan@apple.com's avatar
      2009-04-23 John Sullivan <sullivan@apple.com> · f8d718bd
      sullivan@apple.com authored
              fixed <rdar://problem/6822479> Assertion failure after Reset Safari in new history-writing code
      
              Reviewed by Oliver Hunt
      
              * History/WebHistory.mm:
              (-[WebHistoryPrivate data]):
              Return nil immediately if there are no entries; this matches a recent Windows-platform fix.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42796 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f8d718bd
    • adele@apple.com's avatar
      2009-04-23 Adele Peterson <adele@apple.com> · 0092c503
      adele@apple.com authored
              Reviewed by Darin Adler.
      
              Fix for <rdar://problem/6788905> REGRESSION (41928?): hang in Position::upstream
              https://bugs.webkit.org/show_bug.cgi?id=25312
      
              I was unable to reproduce the problem, but I'm pretty sure this will fix it.
      
              * rendering/RenderObject.cpp: (WebCore::RenderObject::createVisiblePosition):
              Since VisiblePosition doesn't ensure the offset is good, we shouldn't pass max int as an offset.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42794 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      0092c503
    • mrowe@apple.com's avatar
      Versioning. · 4837f57c
      mrowe@apple.com authored
      git-svn-id: svn://svn.chromium.org/blink/trunk@42793 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      4837f57c
    • dglazkov@chromium.org's avatar
      WebCore: · bb67166c
      dglazkov@chromium.org authored
      2009-04-23  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Darin Adler.
      
              https://bugs.webkit.org/show_bug.cgi?id=25313
              Missing scroll bars in GMail.
      
              Test: fast/overflow/overflow-y-scroll.html
      
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::updateScrollbars): Added check for the ScrollbarAlwaysOn
              scroll mode.
      
      LayoutTests:
      
      2009-04-23  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Darin Adler.
              https://bugs.webkit.org/show_bug.cgi?id=25313
              Missing scroll bars in GMail.
      
              * fast/overflow/overflow-y-scroll-expected.txt: Added.
              * fast/overflow/overflow-y-scroll.html: Added.
      
      WebKit/mac:
      
      2009-04-23  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Darin Adler.
      
              https://bugs.webkit.org/show_bug.cgi?id=25313
              Missing scroll bars in GMail.
      
              * WebView/WebDynamicScrollBarsView.m:
              (-[WebDynamicScrollBarsView updateScrollers]): Added check for the ScrollbarAlwaysOn
                  scroll mode.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42791 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      bb67166c
    • kdecker@apple.com's avatar
      Fix the Tiger build · c13c2c79
      kdecker@apple.com authored
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42790 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c13c2c79
    • andersca@apple.com's avatar
      2009-04-23 Anders Carlsson <andersca@apple.com> · cf30df75
      andersca@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Fix <rdar://problem/6821992>
      
              Add a new m_inDestroy member variable. Set it to true when in destroy, and have all NPRuntime functions return false
              when m_inDestroy is true.
              
              * Plugins/Hosted/NetscapePluginInstanceProxy.h:
              * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
              (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
              (WebKit::NetscapePluginInstanceProxy::destroy):
              (WebKit::NetscapePluginInstanceProxy::invoke):
              (WebKit::NetscapePluginInstanceProxy::invokeDefault):
              (WebKit::NetscapePluginInstanceProxy::construct):
              (WebKit::NetscapePluginInstanceProxy::getProperty):
              (WebKit::NetscapePluginInstanceProxy::setProperty):
              (WebKit::NetscapePluginInstanceProxy::removeProperty):
              (WebKit::NetscapePluginInstanceProxy::hasProperty):
              (WebKit::NetscapePluginInstanceProxy::hasMethod):
              (WebKit::NetscapePluginInstanceProxy::enumerate):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42789 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      cf30df75
    • mitz@apple.com's avatar
      WebCore: · bc883879
      mitz@apple.com authored
              Reviewed by Justin Garcia.
      
              - fix <rdar://problem/6081309> Mail crash when pressing down arrow in
                some messages in WebCore::canHaveChildrenForEditing
      
              Test: editing/selection/extend-by-line-anonymous-content-crash.html
      
              * editing/visible_units.cpp:
              (WebCore::previousLinePosition): Null-check node. If p is not an
              editable position, then closestLeafChildForXPos() may have returned a
              non-editable box, and in particular one belonging to anonymous content.
              If node is 0, fall back on RenderObject::positionForPoint, which
              finds the closest position in non-anonymous content.
              (WebCore::nextLinePosition): Ditto.
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::createVisiblePosition): Fixed a typo.
      
      LayoutTests:
      
              Reviewed by Justin Garcia.
      
              - test for <rdar://problem/6081309> Mail crash when pressing down arrow
                in some messages in WebCore::canHaveChildrenForEditing
      
              * editing/selection/extend-by-line-anonymous-content-crash-expected.txt: Added.
              * editing/selection/extend-by-line-anonymous-content-crash.html: Added.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42788 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      bc883879
    • hyatt@apple.com's avatar
      2009-04-23 David Hyatt <hyatt@apple.com> · 384959c7
      hyatt@apple.com authored
              Reviewed by Maciej.
      
              Fix for <rdar://problem/6789879> REGRESSION (42464): Hitting assertion when loading message in Mail + TOT WebKit
              
              Make the Mac platform the same as all the other platforms.  Instead of (incorrectly) marking a FrameView for layout
              when its underlying document view changes, just mark the outermost frame view for layout when the WebView's size changes.
      
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView _frameOrBoundsChanged]):
              (-[WebHTMLView addSuperviewObservers]):
              * WebView/WebView.mm:
              (-[WebView _boundsChanged]):
              (-[WebView removeSizeObservers]):
              (-[WebView addSizeObservers]):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42787 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      384959c7
    • kdecker@apple.com's avatar
      Reviewed by Tim Hatcher. · d2ec9e6c
      kdecker@apple.com authored
              Second part of the fix for <rdar://problem/6352982>
      
              * Plugins/WebBaseNetscapePluginView.h: Make this class conform to WebPluginContainerCheckController
              * Plugins/WebBaseNetscapePluginView.mm: Likewise.
              (-[WebBaseNetscapePluginView _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Added skeleton method.
              * Plugins/WebPluginContainerCheck.h: Added protocol for <WebPluginContainerCheckController>
              * Plugins/WebPluginContainerCheck.mm:
              (-[WebPluginContainerCheck initWithRequest:target:resultObject:selector:controller:]):
              * Plugins/WebPluginController.h: Make this class conform to WebPluginContainerCheckController
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42786 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      d2ec9e6c
    • ap@webkit.org's avatar
      Reviewed by Adele Peterson. · 9fb1c9df
      ap@webkit.org authored
              <rdar://problem/6791439> REGRESSION: Get an error page instead of login page navigating back in gmail
      
              Test: http/tests/history/back-to-post.php
      
              * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
              Apply a new cache policy if it changed after the platform request was first created.
              While at it, also made sure to update timeout.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42785 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      9fb1c9df
    • kov@webkit.org's avatar
      2009-04-23 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 5ecf0bfd
      kov@webkit.org authored
              Rubber-stamped by Xan Lopez.
      
              * pt_BR.po: translation update.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42784 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5ecf0bfd
    • kov@webkit.org's avatar
      2009-04-23 Zan Dobersek <zandobersek@gmail.com> · e2a38480
      kov@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              When creating a new drawable object, collect system's
              information about the best depth it can provide and use it
              in a new colormap that the new drawable requires.
      
              * platform/graphics/gtk/ImageGtk.cpp:
              (WebCore::BitmapImage::getGdkPixbuf):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42783 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e2a38480
    • kdecker@apple.com's avatar
      Reviewed by Anders Carlsson. · a0b89361
      kdecker@apple.com authored
              
              First part of <rdar://problem/6352982>
      
              * Plugins/WebBaseNetscapePluginView.h: Imported #WebNetscapeContainerCheckPrivate.h; Added two new method:
              checkIfAllowedToLoadURL:url:frame:callbackFunc: and cancelCheckIfAllowedToLoadURL:
              * Plugins/WebBaseNetscapePluginView.mm:
              (-[WebBaseNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:]): Added skeleton method, does nothing interesting
              yet.
              (-[WebBaseNetscapePluginView cancelCheckIfAllowedToLoadURL:]): Likewise.
              * Plugins/WebNetscapeContainerCheckPrivate.h: Added.
              * Plugins/WebNetscapeContainerCheckPrivate.mm: Added.
              (browserContainerCheckFuncs): Added. 
              * Plugins/WebNetscapePluginView.h: Imported #WebNetscapeContainerCheckPrivate.h;
              * Plugins/WebNetscapePluginView.mm: Imported #WebNetscapeContainerCheckPrivate.h; added WKN_CheckIfAllowedToLoadURL
              and WKN_CancelCheckIfAllowedToLoadURL functions.
              (-[WebNetscapePluginView getVariable:value:]): Return vtable for container check functions.
              * Plugins/npapi.mm:
              (WKN_CheckIfAllowedToLoadURL): Added new private function.
              (WKN_CancelCheckIfAllowedToLoadURL): Ditto.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42782 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a0b89361
    • aroben@apple.com's avatar
      Skip a newly-added test that fails on Windows · 26739144
      aroben@apple.com authored
              See Bug 25344: http/tests/misc/redirect-to-external-url.html fails on
              Windows
              <https://bugs.webkit.org/show_bug.cgi?id=25344>
      
              Reviewed by Brady Eidson.
      
              * platform/win/Skipped: Added
              http/tests/misc/redirect-to-external-url.html.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42781 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      26739144
    • kov@webkit.org's avatar
      2009-04-23 Zan Dobersek <zandobersek@gmail.com> · 8a7d9756
      kov@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              https://bugs.webkit.org/show_bug.cgi?id=15654
              GdkPixbuf support for ImageCairo
      
              Add support for converting a Cairo surface to a GdkPixbuf.
      
              * platform/graphics/BitmapImage.h:
              * platform/graphics/Image.h:
              (WebCore::Image::getGdkPixbuf):
              * platform/graphics/gtk/ImageGtk.cpp:
              (WebCore::BitmapImage::getGdkPixbuf):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42780 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      8a7d9756
    • vestbo@webkit.org's avatar
      Fix Qt build warning · ac916426
      vestbo@webkit.org authored
      git-svn-id: svn://svn.chromium.org/blink/trunk@42779 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ac916426
    • ariya@webkit.org's avatar
      2009-04-23 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> · ed2651d2
      ariya@webkit.org authored
              Reviewed by Simon Hausmann.
      
              Make windowed plugins (on X11, Qt) behave nicer with wheel scrolling.
      
              Basically, what we want is to send wheel events to the plugin *only*
              when it has focus, or else send it to the parent frame.
      
              This is a work around, and basically what we do, is to steal the
              wheel events from the plugin, modify the window ID, and put the
              event back into the Qt event loop.
      
              * plugins/qt/PluginContainerQt.cpp:
              (PluginClientWrapper::PluginClientWrapper):
              (PluginClientWrapper::~PluginClientWrapper):
              (PluginClientWrapper::x11Event):
              (PluginContainerQt::PluginContainerQt):
              (PluginContainerQt::~PluginContainerQt):
              (PluginContainerQt::on_clientClosed):
              (PluginContainerQt::on_clientIsEmbedded):
              (PluginContainerQt::redirectWheelEventsToParent):
              (PluginContainerQt::x11Event):
              (PluginContainerQt::focusInEvent):
              * plugins/qt/PluginContainerQt.h:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42778 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ed2651d2
    • ariya@webkit.org's avatar
      2009-04-23 Antonio Gomes <antonio.gomes@openbossa.org> · 3ccb9561
      ariya@webkit.org authored
              Reviewed by Ariya Hidayat.
      
              [Qt] Added QWebElement::computedStyleProperty method.
      
              * Api/qwebelement.cpp:
              (QWebElement::computedStyleProperty):
              * Api/qwebelement.h:
              * tests/qwebelement/tst_qwebelement.cpp:
              (tst_QWebElement::computedStyle):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42777 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      3ccb9561
    • vestbo@webkit.org's avatar
      2009-04-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> · dcad4f60
      vestbo@webkit.org authored
              Rubber-stamped by Ariya Hidayat.
      
              [Qt] Rename QWebElement arguments from html to markup
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42776 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      dcad4f60
    • mrowe@apple.com's avatar
      Fix the Windows DRT build. · 5a5544ba
      mrowe@apple.com authored
      * DumpRenderTree/win/PolicyDelegate.h:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42775 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5a5544ba
    • beidson@apple.com's avatar
      2009-04-23 Brady Eidson <beidson@apple.com> · 77e2f8c7
      beidson@apple.com authored
              Fix Windows DRT build.
      
              * DumpRenderTree/win/PolicyDelegate.cpp:
              (PolicyDelegate::unableToImplementPolicyWithError):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42774 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      77e2f8c7
    • beidson@apple.com's avatar
      2009-04-23 Brady Eidson <beidson@apple.com> · 5a12b98c
      beidson@apple.com authored
              Update my just-landed layout test to agree with Tiger's CFNetwork
      
              * http/tests/misc/resources/redirect-to-external-url.php:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42773 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5a12b98c
    • beidson@apple.com's avatar
      WebCore: · f979796a
      beidson@apple.com authored
      2009-04-22  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Maciej Stachowiak
      
              <rdar://problem/6786961> - "Are you sure you want to resubmit this form?" nag displays twice.
      
              For most loads, we were consulting the navigation policy delegate twice.  Once from FrameLoader before
              the load started and once from MainResourceLoader in its willSendRequest callback.
      
              In the past we tried removing MainResourceLoader's call altogether.  This caused a regression where urls 
              that redirect to a url handled by an external application would no longer work in Safari.  It probably 
              also broke other WebKit apps in subtle ways.
      
              Changing MainResourceLoader to make the check only on redirects fixes both bugs.  We now only call the 
              policy delegate once for most standard loads, but we do correctly call it a second time for redirects.
      
              Tests: http/tests/misc/policy-delegate-called-twice.html
                     http/tests/misc/redirect-to-external-url.html
      
              * loader/MainResourceLoader.cpp:
              (WebCore::MainResourceLoader::willSendRequest): Call the navigation policy delegate only for redirects.
      
      WebKitTools:
      
      2009-04-22  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Maciej Stachowiak
      
              Add additional support for test:
              <rdar://problem/5689748> - Cannot redirect to protocols handled by external applications.
      
              * DumpRenderTree/mac/PolicyDelegate.mm:
              (-[PolicyDelegate webView:unableToImplementPolicyWithError:frame:]): Dump formatted information when
                a policy cannot be implemented.
      
              * DumpRenderTree/win/PolicyDelegate.cpp:
              (PolicyDelegate::unableToImplementPolicyWithError): Ditto.
              * DumpRenderTree/win/PolicyDelegate.h:
      
      LayoutTests:
      
      2009-04-22  Brady Eidson  <beidson@apple.com>
      
              Reviewed by Maciej Stachowiak
      
              With the fix for:
              <rdar://problem/6786961> - "Are you sure you want to resubmit this form?" nag displays twice.
              And also to make sure we never rebreak:
              <rdar://problem/5689748> - Cannot redirect to protocols handled by external applications.
      
              * http/tests/misc/redirect-to-external-url-expected.txt: Added.
              * http/tests/misc/redirect-to-external-url.html: Added.
              * http/tests/misc/resources/redirect-to-external-url-iframe.html: Added.
              * http/tests/misc/resources/redirect-to-external-url.php: Added.
      
              * http/tests/misc/policy-delegate-called-twice-expected.txt: Added.
              * http/tests/misc/policy-delegate-called-twice.html: Added.
              * http/tests/misc/resources/iframe-policy-1.html: Added.
              * http/tests/misc/resources/iframe-policy-2.html: Added.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42772 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f979796a
    • mrowe@apple.com's avatar
      Add the m_ prefix on FixedVMPoolAllocator's member variables, and fix typos in a few comments. · 7ae5ec8f
      mrowe@apple.com authored
      Rubber-stamped by Gavin Barraclough.
      
      * jit/ExecutableAllocatorFixedVMPool.cpp:
      (JSC::FixedVMPoolAllocator::addToFreeList):
      (JSC::FixedVMPoolAllocator::coalesceFreeSpace):
      (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
      (JSC::FixedVMPoolAllocator::alloc):
      (JSC::FixedVMPoolAllocator::free):
      (JSC::FixedVMPoolAllocator::isWithinVMPool):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42771 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7ae5ec8f
    • mrowe@apple.com's avatar
      Add some assertions to FixedVMPoolAllocator to guard against cases where we · 70d44aa1
      mrowe@apple.com authored
      attempt to free memory that didn't originate from the pool, or we attempt to
      hand out a bogus address from alloc.
      
      Rubber-stamped by Gavin Barraclough.
      
      * jit/ExecutableAllocatorFixedVMPool.cpp:
      (JSC::FixedVMPoolAllocator::release):
      (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
      (JSC::FixedVMPoolAllocator::alloc):
      (JSC::FixedVMPoolAllocator::free):
      (JSC::FixedVMPoolAllocator::isWithinVMPool):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42770 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      70d44aa1
    • weinig@apple.com's avatar
      2009-04-22 Sam Weinig <sam@webkit.org> · e2f1ba73
      weinig@apple.com authored
              Reviewed by Mark Rowe.
      
              Fix for <rdar://problem/6800695>
      
              Add a hack to only allow navigating (via a link from a http page)
              to feed: urls (same for feeds: and feedsearch:) that map to http:
              or https: via their nested protocol. This includes both feed://example.com
              and feed:http://example.com.
      
              * loader/FrameLoader.cpp:
              (WebCore::isFeedWithNestedProtocolInHTTPFamily):
              (WebCore::FrameLoader::loadFrameRequest):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42769 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e2f1ba73
    • weinig@apple.com's avatar
      2009-04-22 Sam Weinig <sam@webkit.org> · a0c6d6e9
      weinig@apple.com authored
              Reviewed by Anders Carlsson.
      
              Autogenerate the XMLHttpRequest constructor getter/setter for the
              WorkerContext and remove the now no longer needed JSWorkerContextBase.lut.h
              file.
      
              * DerivedSources.make: Remove JSWorkerContextBase.lut.h
              * WebCore.xcodeproj/project.pbxproj: Ditto.
      
              * bindings/js/JSWorkerContextBase.cpp:
              * bindings/js/JSWorkerContextBase.h: Remove code to support hand written
              code for XMLHttpRequest constructor lookup and shadowing.
      
              * bindings/js/JSWorkerContextCustom.cpp:
              (WebCore::JSWorkerContext::customGetOwnPropertySlot): Remove JSC prefixes.
              (WebCore::JSWorkerContext::xmlHttpRequest): Added. Custom implementation of
              cached constructor lookup.
              * workers/WorkerContext.idl: Make the XMLHttpRequestConstructor accessor not
              V8 specific.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42768 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a0c6d6e9
    • adachan@apple.com's avatar
      WebKitLibraries: · 71dee2bd
      adachan@apple.com authored
              Update WebKitSystemInterface with new method that maps CFNetwork error code to localized description.
              
              Reviewed by Darin Adler.
      
              * win/include/WebKitSystemInterface/WebKitSystemInterface.h:
              * win/lib/WebKitSystemInterface.lib:
              * win/lib/WebKitSystemInterface_debug.lib:
      
      WebKit/win:
              <rdar://problem/5115298> Don't get error msg when download is interrupted and cannot resume due to server unavailability
              If we fail to get an error description back from CFNetwork, try to get the localized description
              based on the error code.
      
              Reviewed by Darin Adler.
      
              * WebError.cpp:
              (WebError::localizedDescription):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42767 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      71dee2bd