1. 27 Mar, 2013 31 commits
    • commit-queue@webkit.org's avatar
      Web Inspector: [CodeMirror] fix webinspector-css theme for CodeMirror · 2d127e99
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113399
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-27
      Reviewed by Alexander Pavlov.
      
      Add style rule to highlight css properties for CodeMirror
      webinspector-css theme.
      
      No new tests: no change in behaviour.
      
      * inspector/front-end/cm/cmdevtools.css:
      (.cm-s-web-inspector-css span.cm-property):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147026 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2d127e99
    • commit-queue@webkit.org's avatar
      Web Inspector: [DTE] paint overlay highlight for unhighlighted lines · 5b35d487
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113344
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-27
      Reviewed by Pavel Feldman.
      
      No new tests.
      
      Remove fast-return condition from paintLine method that checked for
      highlight existence.
      
      * inspector/front-end/DefaultTextEditor.js:
      (WebInspector.TextEditorMainPanel.prototype._paintLine):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b35d487
    • rniwa@webkit.org's avatar
      Shift clicking on an element with -webkit-user-select: all doesn't extend selection · 9e76e369
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113270
      
      Reviewed by Enrica Casucci.
      
      Source/WebCore:
      
      The bug was caused by updateSelectionForMouseDownDispatchingSelectStart always replacing selection whenever
      the target node was inside an element with -webkit-suer-select even when we were attemping to extend selection
      in handleMousePressEventSingleClick.
      
      Fixed the bug by extracting this logic as a separate function (expandSelectionToRespectUserSelectAll) and deploying
      it in handleMousePressEventSingleClick to extend selection as needed.
      
      Test: editing/selection/user-select-all-with-shift.html
      
      * page/EventHandler.cpp:
      (WebCore::expandSelectionToRespectUserSelectAll): Extracted from updateSelectionForMouseDownDispatchingSelectStart.
      (WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
      (WebCore::EventHandler::selectClosestWordFromHitTestResult):
      (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
      (WebCore::EventHandler::handleMousePressEventTripleClick):
      (WebCore::EventHandler::handleMousePressEventSingleClick): Adjust "pos" as needed when extending selection.
      Also use shouldConsiderSelectionAsDirectional() instead of manually peeking editingBehaviorType while we're at it.
      
      LayoutTests:
      
      Added a regression test for shift clicking on an element with -webkit-user-select: all.
      Skip it on non-Mac platforms as -webkit-user-select: all hasn't been enabled on them.
      
      * editing/selection/user-select-all-with-shift-expected.txt: Added.
      * editing/selection/user-select-all-with-shift.html: Added.
      * platform/chromium/TestExpectations:
      * platform/efl/TestExpectations:
      * platform/gtk/TestExpectations:
      * platform/qt/TestExpectations:
      * platform/win/TestExpectations:
      * platform/wincairo/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9e76e369
    • commit-queue@webkit.org's avatar
      REGRESSION(r143102): iframe with percentage height within table with anonymous cell fails. · 6ead1357
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113077
      
      Source/WebCore:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-03-27
      Reviewed by Antti Koivisto.
      
      http://www.w3.org/TR/CSS21/visuren.html#anonymous-block-level
      "Anonymous block boxes are ignored when resolving percentage values that would refer to it:
      the closest non-anonymous ancestor box is used instead."
      When figuring out whether auto height needs to be applied on the current box, ignore anonymous
      ancestors until the first non-anonymous containing block is found. This matches both
      Firefox and Opera behaviour.
      
      Test: fast/replaced/iframe-with-percentage-height-within-table-with-anonymous-table-cell.html
      
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight): Switch from
      isAnonymousBlock() to isAnonymous() to make sure all anonymous boxes are ignored.
      Remove isTableCell() check which is a noop as table cell isn't an anonymous block.
      
      LayoutTests:
      
      Patch by Zalan Bujtas <zalan@apple.com> on 2013-03-27
      Reviewed by Antti Koivisto.
      
      * fast/replaced/iframe-with-percentage-height-within-table-with-anonymous-table-cell-expected.txt: Added.
      * fast/replaced/iframe-with-percentage-height-within-table-with-anonymous-table-cell.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147021 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6ead1357
    • pierre.rossi@gmail.com's avatar
      [Qt] Add WOFF support when using zlib · 796b9ac7
      pierre.rossi@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=112805
      
      Reviewed by Allan Sandfeld Jensen.
      
      Source/WebCore:
      
      Covered by existing test:
      fast/css/font-face-woff.html
      
      * Target.pri: Conditional inclusion of WOFFFileFormat
      * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
      (WebCore::createFontCustomPlatformData): Try to unpack WOFF data, otherwise spit out a warning and bail.
      (WebCore::FontCustomPlatformData::supportsFormat): accept WOFF webfonts if USE(ZLIB).
      
      LayoutTests:
      
      * platform/qt-5.0-wk2/TestExpectations: keep skipped for WK2 due to a WTR bug.
      * platform/qt/TestExpectations: unskip font-face-woff.html
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147020 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      796b9ac7
    • robert@webkit.org's avatar
      Growing a position:absolute element in a position:relative one in a table does... · 4c91cc94
      robert@webkit.org authored
      Growing a position:absolute element in a position:relative one in a table does not update scrollHeight
      https://bugs.webkit.org/show_bug.cgi?id=111977
      
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
      During simplified layout tables still need to know about overflow from positioned objects in any of
      their cells.
      
      Test: fast/table/cell-overflow-simplified-layout.html
      
      * rendering/RenderBlock.h:
      (RenderBlock):
      * rendering/RenderTable.cpp:
      (WebCore::RenderTable::simplifiedNormalFlowLayout):
      (WebCore):
      * rendering/RenderTable.h:
      * rendering/RenderTableSection.cpp:
      (WebCore::RenderTableSection::layoutRows):
      (WebCore):
      (WebCore::RenderTableSection::computeOverflowFromCells):
      * rendering/RenderTableSection.h:
      (RenderTableSection):
      
      LayoutTests:
      
      * fast/table/cell-overflow-simplified-layout-expected.html: Added.
      * fast/table/cell-overflow-simplified-layout.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4c91cc94
    • ggaren@apple.com's avatar
      Honor the setting for whether JavaScript markup is enabled · 20c53674
      ggaren@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113122
      
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore: 
      
      * dom/ScriptableDocumentParser.cpp:
      (WebCore::ScriptableDocumentParser::ScriptableDocumentParser): Applied the
      setting here, so all document parsing would be covered. This is similar
      to what we do for plug-in stripping.
      
      * html/parser/HTMLConstructionSite.cpp:
      (WebCore::HTMLConstructionSite::insertForeignElement): Fixed a bug where
      we would insert an SVG script element into the document even in script
      markup disabled mode.
      
      (This bug has existed for copy/paste for a long time, but other bugs and
      quirks in SVG copy/paste papered over it. It's a serious issue now
      that non-paste clients will rely on this mode.)
      
      * html/parser/HTMLTreeBuilder.cpp:
      (WebCore::HTMLTreeBuilder::processTokenInForeignContent): Fixed the same
      bug -- this time in the part of the parser that executes scripts as they
      parse.
      
      I adopted the toScriptElement() convention for testing for a script
      element to match the XML parser.
      
      LayoutTests: 
      
      * editing/unsupported-content/script-markup-enabled-setting-expected.txt: Added.
      * editing/unsupported-content/script-markup-enabled-setting.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20c53674
    • kov@webkit.org's avatar
      Tamil translation for Gnome 3.6 · ecf4b6fa
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96995
      
      Patch by Shantha kumar <shkumar@redhat.com> on 2013-03-27
      Reviewed by Gustavo Noronha Silva (kov).
      
      * ta.po: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147015 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ecf4b6fa
    • dino@apple.com's avatar
      Chromium Mac fails to build after r146995 because the new NSFont category · 6dcaced0
      dino@apple.com authored
      may conflict with the system. Add the WebCoreTheme category to the whitelist.
      
      Unreviewed.
      
      * WebCore.gyp/WebCore.gyp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147012 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6dcaced0
    • rniwa@webkit.org's avatar
      Selection code spends a lot of time in InlineTextBox::localSelectionRect · fe851a45
      rniwa@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113364
      
      Reviewed by Enrica Casucci.
      
      Avoid computing the font width when we're selecting the entire line box.
      
      This appears to be 25-26% improvement on Interactive/SelectAll:Time.
      
      * rendering/InlineTextBox.cpp:
      (WebCore::InlineTextBox::localSelectionRect):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe851a45
    • timothy@apple.com's avatar
      Add support for dock-to-right of the Web Inspector in the Mac port. · 3e6451ee
      timothy@apple.com authored
      Unfortunately this requires Safari changes, so it is disabled in the nightly builds.
      
      https://webkit.org/b/113341
      rdar://problem/10368152
      
      Reviewed by Joseph Pecoraro.
      
      .:
      
      * Source/autotools/symbols.filter:
      
      Source/WebCore:
      
      * WebCore.exp.in:
      * inspector/InspectorFrontendClient.h:
      (InspectorFrontendClient):
      * inspector/InspectorFrontendClientLocal.cpp:
      (WebCore):
      (WebCore::InspectorFrontendClientLocal::frontendLoaded):
      (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
      (WebCore::InspectorFrontendClientLocal::canAttachWindow):
      (WebCore::InspectorFrontendClientLocal::changeAttachedWindowWidth):
      (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
      (WebCore::InspectorFrontendClientLocal::constrainedAttachedWindowWidth):
      * inspector/InspectorFrontendClientLocal.h:
      (InspectorFrontendClientLocal):
      * inspector/InspectorFrontendHost.cpp:
      (WebCore::InspectorFrontendHost::setAttachedWindowWidth):
      (WebCore):
      * inspector/InspectorFrontendHost.h:
      (InspectorFrontendHost):
      * inspector/InspectorFrontendHost.idl:
      * inspector/front-end/InspectorFrontendHostStub.js:
      (.WebInspector.InspectorFrontendHostStub.prototype.setAttachedWindowWidth):
      * inspector/front-end/externs.js:
      (InspectorFrontendHostAPI.prototype.setAttachedWindowWidth):
      * testing/Internals.cpp:
      
      Source/WebKit/chromium:
      
      * src/InspectorFrontendClientImpl.cpp:
      (WebKit::InspectorFrontendClientImpl::changeAttachedWindowWidth):
      * src/InspectorFrontendClientImpl.h:
      (InspectorFrontendClientImpl):
      
      Source/WebKit/efl:
      
      * WebCoreSupport/InspectorClientEfl.cpp:
      (WebCore::InspectorFrontendClientEfl::attachWindow):
      (WebCore::InspectorFrontendClientEfl::setAttachedWindowWidth):
      * WebCoreSupport/InspectorClientEfl.h:
      (InspectorFrontendClientEfl):
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/InspectorClientGtk.cpp:
      (WebKit::InspectorFrontendClient::attachWindow):
      (WebKit::InspectorFrontendClient::setAttachedWindowWidth):
      * WebCoreSupport/InspectorClientGtk.h:
      (InspectorFrontendClient):
      
      Source/WebKit/mac:
      
      * Resources/Dock.pdf: Updated.
      * WebCoreSupport/WebInspectorClient.h:
      (WebInspectorFrontendClient):
      * WebCoreSupport/WebInspectorClient.mm:
      (WebInspectorFrontendClient::frontendLoaded):
      (WebInspectorFrontendClient::attachWindow):
      (WebInspectorFrontendClient::setAttachedWindowWidth):
      (-[WebInspectorWindowController attachWindow:]):
      (-[WebInspectorWindowController attach]):
      (-[WebInspectorWindowController detach]):
      * WebInspector/WebInspectorFrontend.mm:
      (-[WebInspectorFrontend attach]):
      
      Source/WebKit/qt:
      
      * WebCoreSupport/InspectorClientQt.cpp:
      (WebCore::InspectorFrontendClientQt::frontendLoaded):
      (WebCore::InspectorFrontendClientQt::attachWindow):
      (WebCore::InspectorFrontendClientQt::setAttachedWindowWidth):
      * WebCoreSupport/InspectorClientQt.h:
      (InspectorFrontendClientQt):
      
      Source/WebKit/win:
      
      * WebCoreSupport/WebInspectorClient.cpp:
      (WebInspectorFrontendClient::frontendLoaded):
      (WebInspectorFrontendClient::attachWindow):
      (WebInspectorFrontendClient::setAttachedWindowWidth):
      * WebCoreSupport/WebInspectorClient.h:
      (WebInspectorFrontendClient):
      
      Source/WebKit2:
      
      * Resources/Dock.pdf: Removed.
      * Resources/DockBottom.pdf: Added.
      * Resources/DockRight.pdf: Added.
      * Shared/WebPreferencesStore.h:
      * UIProcess/WebInspectorProxy.cpp:
      (WebKit::WebInspectorProxy::WebInspectorProxy):
      (WebKit::WebInspectorProxy::attachBottom):
      (WebKit::WebInspectorProxy::attachRight):
      (WebKit::WebInspectorProxy::attach):
      (WebKit::WebInspectorProxy::detach):
      (WebKit::WebInspectorProxy::setAttachedWindowWidth):
      (WebKit::WebInspectorProxy::createInspectorPage):
      (WebKit::WebInspectorProxy::canAttach):
      * UIProcess/WebInspectorProxy.h:
      (WebInspectorProxy):
      * UIProcess/WebInspectorProxy.messages.in:
      * UIProcess/mac/WebInspectorProxyMac.mm:
      (-[WKWebInspectorProxyObjCAdapter attachRight:]):
      (-[WKWebInspectorProxyObjCAdapter attachBottom:]):
      (-[WKWebInspectorWindow _cursorForResizeDirection:]):
      (-[WKWebInspectorWindow _customTitleFrame]):
      (WebKit::createDockButton):
      (WebKit::WebInspectorProxy::createInspectorWindow):
      (WebKit::WebInspectorProxy::platformCreateInspectorPage):
      (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged):
      (WebKit::WebInspectorProxy::inspectedViewFrameDidChange):
      (WebKit::WebInspectorProxy::platformInspectedWindowWidth):
      (WebKit::WebInspectorProxy::platformAttach):
      (WebKit::WebInspectorProxy::platformDetach):
      (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight):
      (WebKit::WebInspectorProxy::platformSetAttachedWindowWidth):
      * WebKit2.xcodeproj/project.pbxproj:
      * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
      (WebKit::WebInspectorFrontendClient::attachWindow):
      (WebKit::WebInspectorFrontendClient::setAttachedWindowWidth):
      * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
      (WebInspectorFrontendClient):
      * WebProcess/WebPage/WebInspector.cpp:
      (WebKit::WebInspector::attachBottom):
      (WebKit::WebInspector::attachRight):
      (WebKit::WebInspector::setAttachedWindowWidth):
      (WebKit::WebInspector::attachedBottom):
      (WebKit::WebInspector::attachedRight):
      (WebKit::WebInspector::detached):
      * WebProcess/WebPage/WebInspector.h:
      (WebInspector):
      * WebProcess/WebPage/WebInspector.messages.in:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147004 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3e6451ee
    • kov@webkit.org's avatar
      Updated Slovenian translation · e7a292b3
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113151
      
      Patch by Matej Urbančič <mateju@svn.gnome.org> on 2013-03-27
      Reviewed by Gustavo Noronha Silva (kov).
      
      * sl.po: translation update.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147003 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e7a292b3
    • eric.carlson@apple.com's avatar
      [Mac] webkitClosedCaptionsVisible doesn't work · 92907e15
      eric.carlson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113417
      
      Reviewed by Jer Noble.
      
      Source/WebCore: 
      
      Test: media/track/track-in-band-legacy-api.html
      
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::HTMLMediaElement): Delete m_disableCaptions, it is no longer used.
      (WebCore::HTMLMediaElement::configureTextTrackGroup): Pass this to textTrackSelectionScore.
      (WebCore::HTMLMediaElement::setClosedCaptionsVisible):  Delete m_disableCaptions, it is no longer used.
      * html/HTMLMediaElement.h: Ditto.
      
      * page/CaptionUserPreferences.cpp:
      (WebCore::CaptionUserPreferences::textTrackSelectionScore): Add an HTMLMediaElement parameter.
      * page/CaptionUserPreferences.h:
      
      * page/CaptionUserPreferencesMac.h:
      * page/CaptionUserPreferencesMac.mm:
      (WebCore::CaptionUserPreferencesMac::textTrackSelectionScore): Return a score if the media element
          is showing captions, even if the preference says captions are disabled.
      
      LayoutTests: 
      
      * media/track/track-in-band-legacy-api-expected.txt: Added.
      * media/track/track-in-band-legacy-api.html: Added.
      
      * platform/chromium/TestExpectations: Skip new test.
      * platform/efl/TestExpectations: Ditto.
      * platform/gtk/TestExpectations: Ditto.
      * platform/mac/TestExpectations: Ditto.
      * platform/qt/TestExpectations: Ditto.
      * platform/win/TestExpectations: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147001 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      92907e15
    • eric.carlson@apple.com's avatar
      [Mac] Text track menu items sometimes labeled incorrectly · d0daea36
      eric.carlson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113406
      
      Reviewed by Jer Noble.
      
      Source/WebCore: 
      
      media/video-controls-captions-trackmenu-localized.html was updated to test this.
      
      * page/CaptionUserPreferencesMac.mm:
      (WebCore::trackDisplayName): Use the 'label' attribute for the menu text when necessary.
      
      LayoutTests: 
      
      * media/video-controls-captions-trackmenu-localized.html:
      * platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147000 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d0daea36
    • sergio@webkit.org's avatar
      Inserting a blank (" ") at the end of a line does not insert anything in Overtype mode · 147de161
      sergio@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113413
      
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore:
      
      Perform a "normal" insert instead of a replace when there is
      nothing to replace (like at the end of a line) as this case is not
      supported by the replacing code path. This will allow us to
      properly rebalance whitespaces in those cases.
      
      Updated the editing/execCommand/overtype.html test to check also
      this use case.
      
      * editing/InsertTextCommand.cpp:
      (WebCore::InsertTextCommand::setEndingSelectionWithoutValidation):
      (WebCore::InsertTextCommand::performTrivialReplace):
      (WebCore::InsertTextCommand::performOverwrite):
      (WebCore::InsertTextCommand::doApply): use the recently added
      setEndingSelectionWithoutValidation() to avoid code duplication.
      * editing/InsertTextCommand.h:
      (InsertTextCommand):
      
      LayoutTests:
      
      Updated the test to include the case of inserting a whitespace
      both in the middle or at the end of a line.
      
      * editing/execCommand/overtype-expected.txt:
      * editing/execCommand/overtype.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146999 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      147de161
    • dino@apple.com's avatar
      [Mac] Use fontName rather than familyName for internal fonts · eaaeb59a
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113392
      <rdar://problem/13474743>
      
      Reviewed by Enrica Casucci.
      
      Some internal fonts on OS X have a family name that
      isn't listed in availableFontFamilies. In this case
      we should use the font name rather than the family
      name when looking for a match.
      
      * platform/mac/ThemeMac.h: NSFont category to provide a web-friendly family name.
      * platform/mac/ThemeMac.mm:
      (-[NSFont webCoreFamilyName]): Returns the font name for internal fonts, otherwise the family name.
      (WebCore::ThemeMac::controlFont):
      * rendering/RenderThemeMacShared.mm: Use the webCoreFamilyName.
      (WebCore::RenderThemeMacShared::systemFont): Ditto.
      (WebCore::RenderThemeMacShared::setFontFromControlSize): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146995 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eaaeb59a
    • jer.noble@apple.com's avatar
      Source/WebCore: Source/WebCore: Mac: Media Controls always hide time display elements · 9501cbc6
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113355
      
      Reviewed by Eric Carlson.
      
      No new tests; rebaselined existing tests against correct behavior.
      
      A prior commit set the "min-width:0" property on the time display elements, which, combined
      with the "-webkit-flex-box:0 0" setting, caused the flex-box container to collapse the width
      of the elements to zero. To achieve the desired effect of hiding the time display elements,
      first set the elements' min-width to the desired width, as the new flex-box spec treats the
      default value of "min-width:auto" as the intrinsic width, and will collapse the text display
      elements to the intrinsic width of its contained text node.
      
      The above allows the timeline container to collapse beyond the sum of its childrens'
      intrinsic width. Create a custom renderer that detects when this happens, and hide the time
      display controls.
      
      * css/mediaControls.css:
      * css/mediaControlsQuickTime.css:
      (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
          Set the "min-width:" property to equal the "width:" property.
      (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
          Ditto.
      * css/mediaControlsChromium.css:
      (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
          Chromium assumes the time display controls are flex-boxes, so make that explicit.
      * html/shadow/MediaControlElementTypes.cpp: Removed MediaControlTimeDisplayElement::createRenderer().
      * html/shadow/MediaControlElementTypes.h:
      (MediaControlTimeDisplayElement): Ditto.
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlTimelineContainerElement::setTimeDisplaysHidden): Added, walks through the
          container's children and shows or hides time display elements.
      (WebCore::MediaControlTimelineContainerElement::createRenderer): Added, creates a RenderMediaControlTimelineContainer.
      (WebCore::getMediaControlTimeRemainingDisplayElementShadowPseudoId): Added, allow setTimeDisplaysHidden to
          query against children's shadowPseudoId().
      (WebCore::MediaControlTimeRemainingDisplayElement::shadowPseudoId): Moved contents to getMediaControlTimeRemainingDisplayElementShadowPseudoId.
      (WebCore::getMediaControlCurrentTimeDisplayElementShadowPseudoId): Added, allow setTimeDisplaysHidden to
          query against children's shadowPseudoId().
      (WebCore::MediaControlCurrentTimeDisplayElement::shadowPseudoId): Moved contents to getMediaControlCurrentTimeDisplayElementShadowPseudoId.
      * html/shadow/MediaControlElements.h:
      (MediaControlTimelineContainerElement):
      * rendering/RenderMediaControlElements.cpp:
      (WebCore::RenderMediaControlTimelineContainer::RenderMediaControlTimelineContainer): Added, simple constructor.
      (WebCore::RenderMediaControlTimelineContainer::layout): Detect when the controller's width is greater than
          a certain value, and show or hide the time display elements in response.
      * rendering/RenderMediaControlElements.h:
      (RenderMediaControlTimelineContainer):
      
      LayoutTests: Mac: Media Controls always hide time display elements
      https://bugs.webkit.org/show_bug.cgi?id=113355
      
      Reviewed by Eric Carlson.
      
      Rebaseline mac results.
      
      * platform/mac/media/audio-controls-rendering-expected.png:
      * platform/mac/media/audio-controls-rendering-expected.txt:
      * platform/mac/media/controls-after-reload-expected.png:
      * platform/mac/media/controls-after-reload-expected.txt:
      * platform/mac/media/controls-strict-expected.png:
      * platform/mac/media/controls-strict-expected.txt:
      * platform/mac/media/controls-styling-strict-expected.png: Added.
      * platform/mac/media/controls-styling-strict-expected.txt:
      * platform/mac/media/controls-without-preload-expected.png:
      * platform/mac/media/controls-without-preload-expected.txt:
      * platform/mac/media/video-controls-rendering-expected.png:
      * platform/mac/media/video-controls-rendering-expected.txt:
      * platform/mac/media/video-display-toggle-expected.png:
      * platform/mac/media/video-display-toggle-expected.txt:
      * platform/mac/media/video-no-audio-expected.png:
      * platform/mac/media/video-no-audio-expected.txt:
      * platform/mac/media/video-playing-and-pause-expected.png:
      * platform/mac/media/video-playing-and-pause-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146992 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9501cbc6
    • loislo@chromium.org's avatar
      Web Inspector: CPU profiler. Swap FlameChart with Data Grid. · e2183928
      loislo@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113395
      
      Reviewed by Pavel Feldman.
      
      Looks like FlameChart is more powerful and flexible instrument
      than plain old ProfileTree in DataGrid. The same action like
      'look for the most expensive function in a frame' could be easily
      done with FlameChart and need number of clicks in DataGrid.
      So in an offline discussion we decided to place FlameChart on top of DataGrid.
      
      * inspector/front-end/CPUProfileView.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e2183928
    • cfleizach@apple.com's avatar
      Regression in tests due to https://bugs.webkit.org/show_bug.cgi?id=113339 · ae539ad0
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113361
      
      Source/WebCore: 
      
      Fix the red bots. No review.
      
      Ensure only pop-up buttons get the AXRequired attribute instead of all buttons.        
      
      * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
      (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
      (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
      
      LayoutTests: 
      
      Remove skipped tests.
      
      * platform/mac/TestExpectations:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae539ad0
    • vsevik@chromium.org's avatar
      Web Inspector: Breakpoint manager should restore breakpoints when uiSourceCode is added. · 580ec8f1
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113381
      
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      Breakpoint manager now restores breakpoints on UISourceCodeAdded event.
      Breakpoint manager now only resets breakpoints in debugger when source mapping is changed to/from non identity one.
      
      * inspector/front-end/BreakpointManager.js:
      (WebInspector.BreakpointManager.prototype._uiSourceCodeAdded):
      (WebInspector.BreakpointManager.prototype._resetBreakpoints):
      (WebInspector.BreakpointManager.prototype._uiSourceCodeMappingChanged):
      * inspector/front-end/CompilerScriptMapping.js:
      (WebInspector.CompilerScriptMapping.prototype.get isIdentity):
      * inspector/front-end/DefaultScriptMapping.js:
      (WebInspector.DefaultScriptMapping.prototype.isIdentity):
      * inspector/front-end/ResourceScriptMapping.js:
      (WebInspector.ResourceScriptMapping.prototype.isIdentity):
      * inspector/front-end/SASSSourceMapping.js:
      (WebInspector.SASSSourceMapping.prototype.isIdentity):
      * inspector/front-end/ScriptSnippetModel.js:
      (WebInspector.SnippetScriptMapping.prototype.isIdentity):
      * inspector/front-end/SourceMapping.js:
      (WebInspector.SourceMapping.prototype.isIdentity):
      * inspector/front-end/StylesSourceMapping.js:
      (WebInspector.StylesSourceMapping.prototype.isIdentity):
      * inspector/front-end/UISourceCode.js:
      (WebInspector.UISourceCode.prototype.setSourceMapping):
      
      LayoutTests:
      
      * inspector/debugger/breakpoint-manager-expected.txt:
      * inspector/debugger/breakpoint-manager.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      580ec8f1
    • yurys@chromium.org's avatar
      Web Inspector: update Timeline.TimelineEvent definition to include DOM... · 33bad56c
      yurys@chromium.org authored
      Web Inspector: update Timeline.TimelineEvent definition to include DOM counters and native memory stats
      https://bugs.webkit.org/show_bug.cgi?id=113376
      
      Reviewed by Vsevolod Vlasov.
      
      Fixed assertion failure in debug mode after r146975.
      
      * inspector/InspectorTimelineAgent.cpp:
      (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      33bad56c
    • loislo@chromium.org's avatar
      Web Inspector: FlameChart. Provide 15px padding left for the chart so... · 4095127f
      loislo@chromium.org authored
      Web Inspector: FlameChart. Provide 15px padding left for the chart so developers will see the first divider with '0' title.
      https://bugs.webkit.org/show_bug.cgi?id=113404
      
      Reviewed by Pavel Feldman.
      
      15px paddingLeft was added to the code for the chart.
      
      * inspector/front-end/FlameChart.js:
      (WebInspector.FlameChart):
      (WebInspector.FlameChart.Calculator.prototype._updateBoundaries):
      (WebInspector.FlameChart.Calculator.prototype.computePosition):
      (WebInspector.FlameChart.prototype.draw):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4095127f
    • tkent@chromium.org's avatar
      Rename HTMLFormControlElement::readOnly to isReadOnly · 96922921
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113297
      
      Reviewed by Alexey Proskuryakov.
      
      Source/WebCore:
      
      HTMLFormControlElement::readOnly is not an implementation of
      'readOnly' IDL attribute. It's confusing and we don't need to
      violate our naming convention.
      
      No new tests. Just a refactoring.
      
      * accessibility/AccessibilityNodeObject.cpp:
      (WebCore::AccessibilityNodeObject::isReadOnly):
      * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
      (WebCore::BaseMultipleFieldsDateAndTimeInputType::isEditControlOwnerReadOnly):
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLFormControlElement::HTMLFormControlElement):
      (WebCore::HTMLFormControlElement::parseAttribute):
      * html/HTMLFormControlElement.h:
      (WebCore::HTMLFormControlElement::isReadOnly):
      (WebCore::HTMLFormControlElement::isDisabledOrReadOnly):
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
      (WebCore::HTMLInputElement::matchesReadWritePseudoClass):
      * html/HTMLTextAreaElement.cpp:
      (WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
      (WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
      * html/shadow/SliderThumbElement.cpp:
      (WebCore::SliderThumbElement::defaultEventHandler):
      (WebCore::SliderThumbElement::willRespondToMouseMoveEvents):
      (WebCore::SliderThumbElement::willRespondToMouseClickEvents):
      * html/shadow/TextControlInnerElements.cpp:
      (WebCore::InputFieldSpeechButtonElement::willRespondToMouseClickEvents):
      (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
      * html/shadow/TextFieldDecorationElement.cpp:
      (WebCore::TextFieldDecorationElement::updateImage):
      * rendering/RenderTextControl.cpp:
      (WebCore::updateUserModifyProperty):
      * rendering/RenderThemeMacShared.mm:
      (WebCore::RenderThemeMacShared::paintSearchFieldCancelButton):
      
      Source/WebKit/chromium:
      
      * src/WebFormControlElement.cpp:
      (WebKit::WebFormControlElement::isReadOnly):
      
      Source/WebKit/win:
      
      * DOMHTMLClasses.cpp:
      (DOMHTMLInputElement::readOnly):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      96922921
    • yurys@chromium.org's avatar
      Web Inspector: update Timeline.TimelineEvent definition to include DOM... · 7f65ba38
      yurys@chromium.org authored
      Web Inspector: update Timeline.TimelineEvent definition to include DOM counters and native memory stats
      https://bugs.webkit.org/show_bug.cgi?id=113376
      
      Reviewed by Vsevolod Vlasov.
      
      Added missing fields to Timeline.TimelineEvent type definition in Inspector.json
      
      * inspector/Inspector.json:
      * inspector/InspectorTimelineAgent.cpp:
      (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
      (WebCore::InspectorTimelineAgent::setDOMCounters):
      Switched InspectorTimelineAgent to the new typed event builders.
      (WebCore::InspectorTimelineAgent::setNativeHeapStatistics):
      * inspector/InspectorTimelineAgent.h:
      (InspectorTimelineAgent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f65ba38
    • vsevik@chromium.org's avatar
      Web Inspector: Follow-up to r146898: test that uiSourceCodes are not leaking in breakpoint manager. · 3d818cc7
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113368
      
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      Added a missed line and a test.
      
      * inspector/front-end/BreakpointManager.js:
      (WebInspector.BreakpointManager.prototype._projectWillReset):
      
      LayoutTests:
      
      * inspector/debugger/breakpoint-manager.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d818cc7
    • commit-queue@webkit.org's avatar
      Web Inspector: [CodeMirror] CodeMirrorTextEditor.highlightRange has bugs · af160b53
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113348
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-27
      Reviewed by Vsevolod Vlasov.
      
      No new tests.
      
      - Append additional "<class>-start" class to the first highlighted span
      and "<class>-end" class to the last highlighted span to provide a way
      to set up a css classes with borders.
      - Increment end column of the markup range to simulate inclusive range.
      
      * inspector/front-end/CodeMirrorTextEditor.js:
      (WebInspector.CodeMirrorTextEditor.prototype.highlightRange):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af160b53
    • commit-queue@webkit.org's avatar
      Web Inspector: Add isClean/markClean method pair to textEditor.js · 0dcf07b4
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=112815
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-27
      Reviewed by Vsevolod Vlasov.
      
      No new tests: no change in behaviour.
      
      - Add TextEditor.isClean and TextEditor.markClean methods
      - Implement these methods in DefaultTextEditor
      - Implement these methods in CodeMirrorTextEditor
      
      * inspector/front-end/CodeMirrorTextEditor.js:
      (WebInspector.CodeMirrorTextEditor.prototype.isClean):
      (WebInspector.CodeMirrorTextEditor.prototype.markClean):
      * inspector/front-end/DefaultTextEditor.js:
      (WebInspector.DefaultTextEditor.prototype.isClean):
      (WebInspector.DefaultTextEditor.prototype.markClean):
      * inspector/front-end/TextEditor.js:
      (WebInspector.TextEditor.prototype.isClean):
      (WebInspector.TextEditor.prototype.markClean):
      * inspector/front-end/TextEditorModel.js:
      (WebInspector.TextEditorModel.endsWithBracketRegex.):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0dcf07b4
    • loislo@chromium.org's avatar
      Unreviewed. Web Inspector. rename method... · 7dcd981c
      loislo@chromium.org authored
      Unreviewed. Web Inspector. rename method Timeline.Calculator.grandMinimumBoundary to Timeline.Calculator.zeroTime
      
      No changes in behaviour.
      
      * inspector/front-end/FlameChart.js:
      (WebInspector.FlameChart.Calculator.prototype.zeroTime):
      (WebInspector.FlameChart.OverviewCalculator.prototype.zeroTime):
      * inspector/front-end/NetworkPanel.js:
      (WebInspector.NetworkBaseCalculator.prototype.zeroTime):
      * inspector/front-end/TimelineGrid.js:
      (WebInspector.TimelineGrid.prototype.updateDividers):
      (WebInspector.TimelineGrid.Calculator.prototype.zeroTime):
      * inspector/front-end/TimelineOverviewPane.js:
      (WebInspector.TimelineOverviewCalculator.prototype.zeroTime):
      * inspector/front-end/TimelinePanel.js:
      (WebInspector.TimelineCalculator.prototype.zeroTime):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7dcd981c
    • loislo@chromium.org's avatar
      Web Inspector: Timeline. Scroll dividers with the underlying events. · 54329e89
      loislo@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113315
      
      Reviewed by Pavel Feldman.
      
      Now when TimelineGrid is able to draw dividers with any offset
      we could cut away paddingLeft member of Timeline.Calculator
      and clear the code of TimelineGrid.
      
      * inspector/front-end/TimelineGrid.js:
      (WebInspector.TimelineGrid.prototype.updateDividers):
      * inspector/front-end/TimelinePanel.js:
      (WebInspector.TimelinePanel.prototype._refresh):
      (WebInspector.TimelineCalculator.prototype.computePosition):
      (WebInspector.TimelineCalculator.prototype.setDisplayWindow):
      (WebInspector.TimelineCalculator.prototype.grandMinimumBoundary):
      * inspector/front-end/inspectorCommon.css:
      (.resources-dividers-label-bar):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      54329e89
    • commit-queue@webkit.org's avatar
      [CoordGfx] Support to share GraphicsSurface flags with client. · fb89741f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=112982
      
      Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-03-27
      Reviewed by Noam Rosenthal.
      
      Covered by existing WebGL tests.
      
      Source/WebCore:
      
      This patch adds support to pass GraphicsSurface flags during it's client creation.
      This would be helpful to determine cases when blending can be disabled on client
      side i.e When AlphaSupport is disabled during Graphics Surface creation.
      With GLX, we rely on Window to provide us with necessary information on client side.
      This might not be the case on other platforms or when not using Window on X.
      This patch doesn't change original behaviour of creating GraphicsSurface client
      with default flags GraphicsSurface::SupportsTextureTarget and GraphicsSurface::SupportsSharing.
      
      * platform/graphics/texmap/TextureMapperPlatformLayer.h:
      (WebCore::TextureMapperPlatformLayer::graphicsSurfaceFlags):
      * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
      (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
      * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
      (WebCore::CoordinatedGraphicsScene::createCanvasIfNeeded):
      * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
      (CoordinatedGraphicsLayerState):
      * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
      (WebCore):
      (WebCore::GraphicsContext3DPrivate::graphicsSurfaceFlags):
      * platform/graphics/efl/GraphicsContext3DPrivate.h:
      (GraphicsContext3DPrivate):
      * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
      (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
      (WebCore::GraphicsSurfacePrivate::initializeClient):
      
      Source/WebKit2:
      
      This patch adds support to pass GraphicsSurface flags
      during it's client creation.
      
      * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
      (CoreIPC::::encode):
      (CoreIPC::::decode):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb89741f
    • tasak@google.com's avatar
      [shadow] styleForText should consider the case where parent node has no style · 20d93810
      tasak@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113275
      
      Source/WebCore:
      
      If a text node is distributed, its parent node for rendering and
      styling might have no style. In the case, styleForText should return
      default style.
      
      Reviewed by Hajime Morrita.
      
      Test: fast/dom/shadow/text-node-distributed-crash.html
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::styleForText):
      Check whether a parent node has any style or not. If not, return
      default style. This is the same behavior as styleForElement.
      
      LayoutTests:
      
      Reviewed by Hajime Morrita.
      
      * fast/dom/shadow/text-node-distributed-crash-expected.txt: Added.
      * fast/dom/shadow/text-node-distributed-crash.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20d93810
  2. 26 Mar, 2013 9 commits
    • commit-queue@webkit.org's avatar
      Make SocketStreamHandle (Chromium port) fully use IPC window in send() · bfc97c9f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113304
      
      Patch by Takeshi Yoshino <tyoshino@chromium.org> on 2013-03-26
      Reviewed by Kent Tamura.
      
      socket_stream of Chromium buffers send data up to 32KiB (exact) bytes.
      
      However, SocketStreamHandleInternal::send() method now keeps in-flight
      send data not greater than m_maxPendingSendAllowed - 1 that is
      32KiB - 1. This means that SocketStreamHandleInternal consumes the
      buffered data in SocketStreamHandleBase by 32KiB - 1. It makes memory
      copy operations unaligned unnecessarily. It should just use the
      allowed size fully.
      
      * platform/network/chromium/SocketStreamHandle.cpp:
      (WebCore::SocketStreamHandleInternal::send):
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bfc97c9f
    • hayato@chromium.org's avatar
      Allow ShadowContents in HitTests by default. · af1544e8
      hayato@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113171
      
      Reviewed by Dimitri Glazkov.
      
      Source/WebCore:
      
      HitTestRequest is widely used in WebCore, but AllowShadowContents
      flag is not turned on by default.  In most places, we can set the
      flag on.
      
      This change makes HitTests allow shadow contents by default.
      
      To track all existing HitTests which do not allow shadow contents,
      and discourage such a HitTest in the future, I've introduced
      disallowShadowContenet flag so that callers must turn on this flag
      explicitly if they want to disallow shadow contents in their HitTests.
      
      This change should be refactoring and should not include any
      behavior changes.  After this change, we'll investigate each place
      where disallowShadowContents is used step by step and get rid of
      the flag if it is okay to remove.
      
      No new tests, no behavior change.
      
      * dom/Document.h:
      (Document):
      * dom/TreeScope.cpp:
      (WebCore::nodeFromPoint):
      * editing/FrameSelection.cpp:
      (WebCore::FrameSelection::contains):
      * page/DragController.cpp:
      (WebCore::elementUnderMouse):
      (WebCore::DragController::canProcessDrag):
      (WebCore::DragController::startDrag):
      * page/EventHandler.cpp:
      (WebCore::EventHandler::handleMouseDraggedEvent):
      (WebCore::EventHandler::eventMayStartDrag):
      (WebCore::EventHandler::updateSelectionForMouseDrag):
      (WebCore::EventHandler::hitTestResultAtPoint):
      (WebCore::EventHandler::handleMousePressEvent):
      (WebCore::EventHandler::handleMouseDoubleClickEvent):
      (WebCore::EventHandler::handleMouseMoveEvent):
      (WebCore::EventHandler::handleMouseReleaseEvent):
      (WebCore::EventHandler::updateDragAndDrop):
      (WebCore::EventHandler::isInsideScrollbar):
      (WebCore::EventHandler::handleWheelEvent):
      (WebCore::EventHandler::handleGestureEvent):
      (WebCore::EventHandler::handleGestureLongPress):
      (WebCore::EventHandler::handleGestureScrollBegin):
      (WebCore::EventHandler::bestClickableNodeForTouchPoint):
      (WebCore::EventHandler::bestContextMenuNodeForTouchPoint):
      (WebCore::EventHandler::bestZoomableAreaForTouchPoint):
      (WebCore::EventHandler::sendContextMenuEvent):
      (WebCore::EventHandler::sendContextMenuEventForKey):
      (WebCore::EventHandler::hoverTimerFired):
      (WebCore::EventHandler::dragSourceEndedAt):
      (WebCore::EventHandler::handleDrag):
      (WebCore::EventHandler::handleTouchEvent):
      (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
      * page/EventHandler.h:
      (EventHandler):
      * page/FocusController.cpp:
      (WebCore::updateFocusCandidateIfNeeded):
      * page/Frame.cpp:
      (WebCore::Frame::visiblePositionForPoint):
      * page/TouchDisambiguation.cpp:
      (WebCore::findGoodTouchTargets):
      * rendering/HitTestRequest.h:
      (WebCore::HitTestRequest::disallowsShadowContent):
      * rendering/HitTestResult.cpp:
      (WebCore::HitTestResult::addNodeToRectBasedTestResult):
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::hitTestFlowThreadPortionInRegion):
      * rendering/svg/RenderSVGResourceClipper.cpp:
      (WebCore::RenderSVGResourceClipper::hitTestClipContent):
      * testing/Internals.cpp:
      (WebCore::Internals::nodesFromRect):
      
      Source/WebKit/blackberry:
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::hitTestResult):
      * WebKitSupport/FatFingers.cpp:
      (BlackBerry::WebKit::FatFingers::getNodesFromRect):
      * WebKitSupport/ProximityDetector.cpp:
      (BlackBerry::WebKit::ProximityDetector::findBestPoint):
      * WebKitSupport/SelectionHandler.cpp:
      (BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):
      
      Source/WebKit/chromium:
      
      * src/ContextMenuClientImpl.cpp:
      (WebKit::selectMisspelledWord):
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::visiblePositionForWindowPoint):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::isRectTopmost):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::computeBlockBounds):
      (WebKit::WebViewImpl::bestTapNode):
      
      Source/WebKit/efl:
      
      * ewk/ewk_frame.cpp:
      (ewk_frame_hit_test_new):
      
      Source/WebKit/gtk:
      
      * webkit/webkitwebinspector.cpp:
      (webkit_web_inspector_inspect_coordinates):
      * webkit/webkitwebview.cpp:
      (prepareMouseEventForFrame):
      (webkit_web_view_get_hit_test_result):
      
      Source/WebKit/mac:
      
      * WebView/WebFrame.mm:
      (-[WebFrame elementAtPoint:]):
      * WebView/WebHTMLView.mm:
      (-[WebHTMLView elementAtPoint:allowShadowContent:]):
      
      Source/WebKit/qt:
      
      * WebCoreSupport/QWebFrameAdapter.cpp:
      (QWebFrameAdapter::hitTestContent):
      
      Source/WebKit/win:
      
      * WebView.cpp:
      (WebView::gestureNotify):
      
      Source/WebKit2:
      
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::hitTest):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::highlightPotentialActivation):
      (WebKit::WebPage::findZoomableAreaForPoint):
      (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
      * WebProcess/WebPage/mac/WebPageMac.mm:
      (WebKit::WebPage::shouldDelayWindowOrderingEvent):
      (WebKit::WebPage::acceptsFirstMouse):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af1544e8
    • timothy_horton@apple.com's avatar
      [ca] Tell CA to clean up unused resources if a given WebProcess won't be drawing · 15745130
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107539
      <rdar://problem/13032692>
      
      Reviewed by Simon Fraser.
      
      * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
      (InitWebCoreSystemInterface): Update WebCoreSystemInterface.
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage): Initially move the Page out of the window if necessary;
      Page defaults to in-window, which is wrong in many cases - we depend on
      Page::isInWindow being accurate to decide whether WebPage::setIsInWindow is actually
      a state change or not.
      (WebKit::WebPage::setIsInWindow):
      * WebProcess/WebProcess.cpp: Inform WebProcess when we go on/off screen.
      (WebKit::WebProcess::WebProcess):
      (WebKit::WebProcess::pageDidMoveOnscreen): Keep track of the number of on-screen pages in this process.
      (WebKit::WebProcess::pageWillMoveOffscreen): If the number of on-screen pages drops to zero,  clean up unused rendering resources.
      * WebProcess/WebProcess.h:
      
      Update WebSystemInterface.
      
      * WebCoreSupport/WebSystemInterface.mm:
      (InitWebCoreSystemInterface):
      
      * platform/mac/WebCoreSystemInterface.h:
      * platform/mac/WebCoreSystemInterface.mm:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15745130
    • antti@apple.com's avatar
      Test if non-immediate descendants obscure background · 4f141bf6
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113137
      
      Reviewed by Simon Fraser.
      
      Source/WebCore: 
      
      The current obscuration test only covers immediate children. We can find more cases by looking deeper into descendants.
              
      The patch makes the test sufficiently smart to stop a heavy fully obscured gif animation on micrsoft.com.
      
      * loader/cache/CachedImage.cpp:
      (WebCore::CachedImage::animationAdvanced):
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::styleDidChange):
              
          Invalidate parents to max test depth.
      
      (WebCore::RenderBox::backgroundPaintedExtent):
              
          Background painting is pixel snapped.
      
      (WebCore::isCandidateForOpaquenessTest):
      (WebCore::RenderBox::foregroundIsKnownToBeOpaqueInRect):
              
          Separate foreground testing and make it recursive.
          Add fast bailout for common static positioned case.
          Remove maximum child count, the fast bailouts should prevent long tests.
          Add maximum depth so we know how deep we need to invalidate in styleDidChange.
      
      (WebCore::RenderBox::computeBackgroundIsKnownToBeObscured):
      (WebCore):
      * rendering/RenderBox.h:
      (RenderBox):
      * rendering/RenderImage.cpp:
      (WebCore::RenderImage::foregroundIsKnownToBeOpaqueInRect):
      (WebCore):
      (WebCore::RenderImage::computeBackgroundIsKnownToBeObscured):
              
      * rendering/RenderImage.h:
      (RenderImage):
      
      LayoutTests: 
      
      * fast/backgrounds/obscured-background-child-style-change-expected.html:
      * fast/backgrounds/obscured-background-child-style-change.html:
      * fast/repaint/obscured-background-no-repaint-expected.txt:
      * fast/repaint/obscured-background-no-repaint.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4f141bf6
    • benjamin@webkit.org's avatar
      Regression (r145601): out-of-bounds read in line breaking / new width cache · be03d6d0
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113347
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-26
      Reviewed by Geoffrey Garen.
      
      The values zero and 0xffff have special values with the default HashTraits. Those values
      are also valid values for UChar.
      
      To avoid any table inconsitency, switch from UChar to uint32_t as the key type for
      the WidthCache's single char map. The traits is also changed to allow zero as a normal
      value.
      
      This makes no space or time change over the previous code because:
      -The struct KeyValuePair was already 64bits due to the ABI alignment restrictions on floats.
      -The two hashes take the same number of instructions.
      
      * platform/graphics/WidthCache.h:
      (WidthCache):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be03d6d0
    • tkent@chromium.org's avatar
      Make HTMLProgressElement::isDeterminate private · 64d0d183
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113299
      
      Reviewed by Kentaro Hara.
      
      The only callsite of isDeterminate outside of HTMLProgressElement
      is in StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes,
      and we can replace it with Element::shouldAppearIndeterminate.
      
      No new tests. Just a refactoring.
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
      Use Element::shouldAppearIndeterminate.
      * html/HTMLProgressElement.h:
      (HTMLProgressElement): Make isDeterminate private.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      64d0d183
    • dgrogan@chromium.org's avatar
      IndexedDB: Histogram cause of LevelDB write errors · 309eb62d
      dgrogan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=113350
      
      Reviewed by Tony Chang.
      
      Add histogram for source of LevelDB errors on Write in addition to
      Open.
      
      No new tests - no good way to test histogram code.
      
      * platform/leveldb/LevelDBDatabase.cpp:
      (WebCore::histogramLevelDBError):
      (WebCore):
      (WebCore::LevelDBDatabase::open):
      (WebCore::LevelDBDatabase::write):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146950 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      309eb62d
    • cfleizach@apple.com's avatar
      WebKit does not expose @required or @aria-required as AXRequired on select elements · 1f897272
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113339
      
      Reviewed by Tim Horton.
      
      Source/WebCore: 
      
      Make sure button types can return the AXRequired attribute.
      
      Tests: platform/mac/accessibility/aria-required-popup-button.html
      
      * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
      (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
      
      LayoutTests: 
      
      * platform/mac/accessibility/aria-required-popup-button-expected.txt: Added.
      * platform/mac/accessibility/aria-required-popup-button.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146949 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f897272
    • dino@apple.com's avatar
      When a primary plugin is restarted, also start similar plugins · cf69686e
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=113265
      
      Reviewed by Tim Horton.
      
      Source/WebCore:
      
      If we detect a primary plugin that is snapshotted, we immediately restart it.
      When this happens, we should also restart any other plugins that
      match the same origin and type. This allows sites with a lot of
      (geometrically) nearby plugins to behave as if they are a single big plugin.
      
      Tests: plugins/snapshotting/autoplay-similar-to-dominant-after-delay.html
             plugins/snapshotting/autoplay-similar-to-dominant.html
      
      * WebCore.exp.in: Export mimeTypeFromURL.
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::addPlugInsFromNodeListMatchingPlugInOrigin): Use loadedMimeType helper.
      (WebCore::HTMLPlugInImageElement::restartSimilarPlugIns): New method, which copied the
          existing code from userDidClickSnapshot.
      (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Move the similar plugin detection
          out into another function and call it.
      (WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn): Call restartSimilarPlugIns.
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Use loadedMimeType helper.
      * html/HTMLPlugInImageElement.h: Declaration of restartSimilarPlugIns.
      (WebCore::HTMLPlugInImageElement::loadedMimeType): New helper method since this
          code was being often duplicated.
      
      Source/WebKit2:
      
      Remember the origin of the primary plugin, so that we can
      autostart anything that is similar.
      
      * WebProcess/WebCoreSupport/WebPlugInClient.cpp:
      (WebKit::WebPlugInClient::WebPlugInClient): Keep a pointer to the WebPage.
      (WebKit::WebPlugInClient::shouldAutoStartFromOrigin): Pass the page onto the process.
      * WebProcess/WebCoreSupport/WebPlugInClient.h:
      (WebPlugInClient): New member variable for the WebPage we were created with.
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::determinePrimarySnapshottedPlugIn): Remember the origin information
          for the primary plugin.
      (WebKit::WebPage::matchesPrimaryPlugIn): Returns true if we're seeing something that
          looks like the primary plugin.
      * WebProcess/WebPage/WebPage.h: New method matchesPrimaryPlugIn.
      * WebProcess/WebProcess.cpp:
      (WebKit::WebProcess::shouldPlugInAutoStartFromOrigin): Check if the page thinks this is
          the primary plugin.
      * WebProcess/WebProcess.h: Accept a reference to the page in shouldPlugInAutoStartFromOrigin.
      
      LayoutTests:
      
      Two new tests. The first has one big plugin (that should be detected as the primary)
      and then a few smaller versions (which should autostart along with the primary).
      The second has one big plugin, and then adds a similar one after a short delay.
      
      * platform/mac-wk2/plugins/snapshotting/autoplay-similar-to-dominant-after-delay-expected.txt: Added.
      * platform/mac-wk2/plugins/snapshotting/autoplay-similar-to-dominant-expected.txt: Added.
      * plugins/snapshotting/autoplay-similar-to-dominant-after-delay.html: Added.
      * plugins/snapshotting/autoplay-similar-to-dominant.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf69686e