1. 11 May, 2012 23 commits
    • yurys@chromium.org's avatar
      Web Inspector: add Profiler.getHeapObjectId command · 503c0f87
      yurys@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86211
      
      Reviewed by Pavel Feldman.
      
      Added Profiler.getHeapObjectId command to the protocol which allows to convert remote
      object id to heap snapshot object id.
      
      * bindings/js/ScriptProfiler.cpp:
      (WebCore::ScriptProfiler::getHeapObjectId):
      (WebCore):
      * bindings/js/ScriptProfiler.h:
      (WebCore):
      (ScriptProfiler):
      * bindings/v8/ScriptProfiler.cpp:
      (WebCore::ScriptProfiler::getHeapObjectId):
      (WebCore):
      * bindings/v8/ScriptProfiler.h:
      (WebCore):
      (ScriptProfiler):
      * inspector/InjectedScript.cpp:
      (WebCore::InjectedScript::findObjectById):
      (WebCore):
      * inspector/InjectedScript.h:
      (InjectedScript):
      * inspector/InjectedScriptSource.js:
      (.):
      * inspector/Inspector.json:
      * inspector/InspectorProfilerAgent.cpp:
      (WebCore::InspectorProfilerAgent::getHeapObjectId):
      (WebCore):
      * inspector/InspectorProfilerAgent.h:
      (InspectorProfilerAgent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116768 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      503c0f87
    • commit-queue@webkit.org's avatar
      Qt support for new layout types. · 4767431b
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85607
      
      Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-05-11
      Reviewed by Simon Hausmann.
      
      Adds similar Qt support to FractionalLayout classes as Qt has for
      FloatSomething and IntSomething classes. This means Qt code can stay
      unchanged from after the redefinition of Layout classes.
      
      No new functionality. No new tests.
      
      * Target.pri:
      * platform/FractionalLayoutUnit.h:
      (WebCore::operator<<):
      (WebCore::operator>>):
      * platform/graphics/FractionalLayoutPoint.h:
      (FractionalLayoutPoint):
      * platform/graphics/FractionalLayoutRect.h:
      (FractionalLayoutRect):
      * platform/graphics/FractionalLayoutSize.h:
      (FractionalLayoutSize):
      * platform/graphics/qt/FractionalLayoutPointQt.cpp: Added.
      (WebCore::FractionalLayoutPoint::FractionalLayoutPoint):
      (WebCore::FractionalLayoutPoint::operator QPointF):
      * platform/graphics/qt/FractionalLayoutRectQt.cpp: Added.
      (WebCore::FractionalLayoutRect::FractionalLayoutRect):
      (WebCore::FractionalLayoutRect::operator QRectF):
      * platform/graphics/qt/FractionalLayoutSizeQt.cpp: Added.
      (WebCore::FractionalLayoutSize::FractionalLayoutSize):
      (WebCore::FractionalLayoutSize::operator QSizeF):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116767 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4767431b
    • commit-queue@webkit.org's avatar
      Internals::touchPositionAdjustedToBestClickableNode adjust twice for scroll-offset · 0d424961
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86205
      
      Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-05-11
      Reviewed by Simon Hausmann.
      
      Source/WebCore:
      
      Remove the redundant conversion from document to window coords.
      
      Test: touchadjustment/scroll-offset.html
      
      * testing/Internals.cpp:
      (WebCore::Internals::touchPositionAdjustedToBestClickableNode):
      (WebCore::Internals::bestZoomableAreaForTouchPoint):
      
      LayoutTests:
      
      Add test of touchPositionAdjustedToBestClickableNode with scroll-offset.
      
      * touchadjustment/scroll-offset-expected.txt: Added.
      * touchadjustment/scroll-offset.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116766 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d424961
    • loislo@chromium.org's avatar
      Web Inspector: load heap snapshot implementation. · 8315ace4
      loislo@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86097
      
      The idea is to have a hidden file selector control.
      When the user select a context menu item or click a button
      we redirect this user-action to file selector.
      As result we see the standard file selector dialog.
      When the user selects a file we load it's chunks and push the chunks to the worker.
      The loaded snapshot can be completely unrelated to the current page.
      Thats why we have to skip range selection options in Summary tab.
      
      Reviewed by Yury Semikhatsky.
      
      * English.lproj/localizedStrings.js:
      * inspector/front-end/CSSSelectorProfileView.js:
      (WebInspector.CSSSelectorProfileType.prototype.createTemporaryProfile): now it accepts a custom title.
      * inspector/front-end/HeapSnapshotView.js:
      (WebInspector.HeapSnapshotView.prototype._updateFilterOptions): we have to skip the profiles loaded from file because there is no guaranty t
      (WebInspector.HeapSnapshotProfileType.prototype.createTemporaryProfile): now it accepts a custom title.
      (WebInspector.HeapSnapshotProfileType.prototype.createProfile): cosmetic changes.
      (WebInspector.HeapProfileHeader):
      (WebInspector.HeapProfileHeader.prototype._setupWorker): a common part was extracted from load method and reused in loadFromFile.
      (WebInspector.HeapProfileHeader.prototype._saveStatusUpdate): cosmetic changes.
      (WebInspector.HeapProfileHeader.prototype.finishHeapSnapshot):
      (WebInspector.HeapProfileHeader.prototype.canSaveToFile): cosmetic rename for better consistency with 'load' part.
      (WebInspector.HeapProfileHeader.prototype.saveToFile): cosmetic rename for better consistency with 'load' part.
      (WebInspector.HeapProfileHeader.prototype.canLoadFromFile): cosmetic rename for better consistency with 'load' part.
      (WebInspector.HeapProfileHeader.prototype.loadFromFile): chunk based file loader.
      (WebInspector.HeapProfileHeader.prototype.loadFromFile.loadNextChunk):
      (WebInspector.HeapProfileHeader.prototype.loadFromFile.onLoad):
      * inspector/front-end/ProfileView.js:
      (WebInspector.CPUProfileType.prototype.createTemporaryProfile): now it accepts a custom title.
      * inspector/front-end/ProfilesPanel.js:
      (WebInspector.ProfileType.prototype.createTemporaryProfile): now it accepts a custom title.
      (WebInspector.ProfileHeader.prototype.canSaveToFile): cosmetic rename for better consistency with 'load' part.
      (WebInspector.ProfileHeader.prototype.saveToFile): cosmetic rename for better consistency with 'load' part.
      (WebInspector.ProfileHeader.prototype.canLoadFromFile): default implementation for 'load' part.
      (WebInspector.ProfileHeader.prototype.loadFromFile): default implementation for 'load' part.
      (WebInspector.ProfilesPanel.prototype._createFileSelectorElement):
      (WebInspector.ProfilesPanel.prototype._loadFromFile):
      (WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8315ace4
    • commit-queue@webkit.org's avatar
      Web Intents code only supports V8 · 73aff5d6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85954
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-11
      Reviewed by Adam Barth.
      
      .:
      
      Add ENABLE_WEB_INTENTS flag to CMake.
      
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/WebCore:
      
      Add necessary abstraction for js Dictionary and ScriptValue so that
      the Web Intents code in WebCore compiles with JSC, not just V8.
      
      This required changes in the JSC bindings generator to pass
      callback arguments of type SerializedScriptValue as raw pointers
      instead of RefPtr. This matches the change made to the V8 bindings
      generator in r104531.
      
      * CMakeLists.txt:
      * Modules/intents/Intent.cpp:
      * Modules/intents/Intent.h:
      * bindings/js/Dictionary.cpp:
      (WebCore::Dictionary::Dictionary):
      (WebCore):
      (WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
      * bindings/js/Dictionary.h:
      (Dictionary):
      * bindings/js/JSBindingsAllInOne.cpp:
      * bindings/js/JSDictionary.cpp:
      (WebCore::JSDictionary::convertValue):
      (WebCore):
      * bindings/js/JSDictionary.h:
      (WebCore):
      (WebCore::JSDictionary::initializerObject):
      * bindings/js/ScriptValue.cpp:
      (WebCore::ScriptValue::serialize):
      (WebCore):
      * bindings/js/ScriptValue.h:
      (ScriptValue):
      * bindings/scripts/CodeGeneratorJS.pm:
      (AddIncludesForType):
      (GenerateCallbackHeader):
      (GenerateCallbackImplementation):
      (GetNativeTypeForCallbacks):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116763 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      73aff5d6
    • apavlov@chromium.org's avatar
      Web Inspector: Can't type spaces in "Override User Agent" field · ee1dcda8
      apavlov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86202
      
      Reviewed by Yury Semikhatsky.
      
      * inspector/front-end/HelpScreen.js:
      (WebInspector.HelpScreen.prototype.isClosingKey):
      (WebInspector.HelpScreen.prototype._onKeyDown):
      * inspector/front-end/SettingsScreen.js:
      (WebInspector.SettingsScreen.prototype.isClosingKey):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116762 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee1dcda8
    • commit-queue@webkit.org's avatar
      [EFL][DRT] Input Attribute Placeholder RefTests failing · 10d1cdb2
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85603
      
      Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-05-11
      Reviewed by Hajime Morita.
      
      Source/WebCore:
      
      Refrain from overriding style coloring by theme coloring.
      RenderThemeEfl was always overriding colors and whitespace
      handling leading to failures in reftests that verify placeholder styling
      which expect the user agent stylesheet to be applied correctly
      without any color overrides. Also, leave whitespace handling untouched.
      
      No new tests, covered by existing tests. See also
      the LayoutTests/ChangeLog in this commit for the required
      rebaselining.
      
      * platform/efl/RenderThemeEfl.cpp:
      (WebCore::RenderThemeEfl::createEdje):
      (WebCore::RenderThemeEfl::applyEdjeColors):
      (WebCore::RenderThemeEfl::RenderThemeEfl):
      (WebCore::RenderThemeEfl::adjustButtonStyle):
      (WebCore::RenderThemeEfl::adjustMenuListStyle):
      (WebCore::RenderThemeEfl::adjustTextFieldStyle):
      (WebCore::RenderThemeEfl::adjustSearchFieldStyle):
      * platform/efl/RenderThemeEfl.h:
      (RenderThemeEfl):
      
      Source/WebKit/efl:
      
      Removing color classes which we don't need anymore after
      RenderThemeEfl.cpp is less aggressively overriding styling.
      
      * DefaultTheme/default.edc:
      
      LayoutTests:
      
      Rebaselining after we're allowing color styling of menulists,
      search and text fields and textareas and after removing
      whitespace handling override.
      
      * platform/efl/Skipped:
      * platform/efl/css3/selectors3/html/css3-modsel-161-expected.txt:
      * platform/efl/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
      * platform/efl/css3/selectors3/xml/css3-modsel-161-expected.txt:
      * platform/efl/editing/input/reveal-caret-of-multiline-input-expected.txt:
      * platform/efl/fast/block/float/float-avoidance-expected.txt:
      * platform/efl/fast/block/margin-collapse/103-expected.txt:
      * platform/efl/fast/css/continuationCrash-expected.txt:
      * platform/efl/fast/css/input-search-padding-expected.txt:
      * platform/efl/fast/css/line-height-expected.txt:
      * platform/efl/fast/css/margin-top-bottom-dynamic-expected.txt:
      * platform/efl/fast/css/rtl-ordering-expected.txt:
      * platform/efl/fast/css/text-input-with-webkit-border-radius-expected.txt:
      * platform/efl/fast/css/text-overflow-input-expected.txt:
      * platform/efl/fast/css/text-transform-select-expected.txt:
      * platform/efl/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
      * platform/efl/fast/dom/isindex-001-expected.txt:
      * platform/efl/fast/dom/isindex-002-expected.txt:
      * platform/efl/fast/dynamic/008-expected.txt:
      * platform/efl/fast/events/autoscroll-expected.txt:
      * platform/efl/fast/forms/003-expected.txt:
      * platform/efl/fast/forms/004-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label01-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label02-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label03-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label04-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label06-expected.txt:
      * platform/efl/fast/forms/HTMLOptionElement_label07-expected.txt:
      * platform/efl/fast/forms/basic-buttons-expected.txt:
      * platform/efl/fast/forms/basic-inputs-expected.txt:
      * platform/efl/fast/forms/blankbuttons-expected.txt:
      * platform/efl/fast/forms/box-shadow-override-expected.txt:
      * platform/efl/fast/forms/button-positioned-expected.txt:
      * platform/efl/fast/forms/button-sizes-expected.txt:
      * platform/efl/fast/forms/button-style-color-expected.txt:
      * platform/efl/fast/forms/button-table-styles-expected.txt:
      * platform/efl/fast/forms/button-text-transform-expected.txt:
      * platform/efl/fast/forms/control-clip-overflow-expected.txt:
      * platform/efl/fast/forms/control-restrict-line-height-expected.txt:
      * platform/efl/fast/forms/disabled-select-change-index-expected.txt:
      * platform/efl/fast/forms/encoding-test-expected.txt:
      * platform/efl/fast/forms/fieldset-align-expected.txt:
      * platform/efl/fast/forms/file/file-input-direction-expected.txt:
      * platform/efl/fast/forms/file/file-input-disabled-expected.txt:
      * platform/efl/fast/forms/floating-textfield-relayout-expected.txt:
      * platform/efl/fast/forms/formmove3-expected.txt:
      * platform/efl/fast/forms/input-align-expected.txt:
      * platform/efl/fast/forms/input-appearance-default-bkcolor-expected.txt:
      * platform/efl/fast/forms/input-appearance-focus-expected.txt:
      * platform/efl/fast/forms/input-appearance-height-expected.txt:
      * platform/efl/fast/forms/input-appearance-preventDefault-expected.txt:
      * platform/efl/fast/forms/input-appearance-selection-expected.txt:
      * platform/efl/fast/forms/input-appearance-visibility-expected.txt:
      * platform/efl/fast/forms/input-appearance-width-expected.txt:
      * platform/efl/fast/forms/input-button-sizes-expected.txt:
      * platform/efl/fast/forms/input-disabled-color-expected.txt:
      * platform/efl/fast/forms/input-double-click-selection-gap-bug-expected.txt:
      * platform/efl/fast/forms/input-field-text-truncated-expected.txt:
      * platform/efl/fast/forms/input-readonly-dimmed-expected.txt:
      * platform/efl/fast/forms/input-readonly-empty-expected.txt:
      * platform/efl/fast/forms/input-spaces-expected.txt:
      * platform/efl/fast/forms/input-table-expected.txt:
      * platform/efl/fast/forms/input-text-click-inside-expected.txt:
      * platform/efl/fast/forms/input-text-option-delete-expected.txt:
      * platform/efl/fast/forms/input-text-self-emptying-click-expected.txt:
      * platform/efl/fast/forms/input-text-word-wrap-expected.txt:
      * platform/efl/fast/forms/input-type-text-min-width-expected.txt:
      * platform/efl/fast/forms/input-value-expected.txt:
      * platform/efl/fast/forms/input-width-expected.txt:
      * platform/efl/fast/forms/menulist-deselect-update-expected.txt:
      * platform/efl/fast/forms/menulist-narrow-width-expected.txt:
      * platform/efl/fast/forms/menulist-no-overflow-expected.txt:
      * platform/efl/fast/forms/menulist-restrict-line-height-expected.txt:
      * platform/efl/fast/forms/menulist-separator-painting-expected.txt:
      * platform/efl/fast/forms/menulist-style-color-expected.txt:
      * platform/efl/fast/forms/menulist-width-change-expected.txt:
      * platform/efl/fast/forms/minWidthPercent-expected.txt:
      * platform/efl/fast/forms/number/input-appearance-number-rtl-expected.txt:
      * platform/efl/fast/forms/number/input-appearance-spinbutton-disabled-readonly-expected.txt:
      * platform/efl/fast/forms/number/input-appearance-spinbutton-layer-expected.txt:
      * platform/efl/fast/forms/option-script-expected.txt:
      * platform/efl/fast/forms/option-strip-whitespace-expected.txt:
      * platform/efl/fast/forms/option-text-clip-expected.txt:
      * platform/efl/fast/forms/search-cancel-button-style-sharing-expected.txt:
      * platform/efl/fast/forms/search-display-none-cancel-button-expected.txt:
      * platform/efl/fast/forms/search-rtl-expected.txt:
      * platform/efl/fast/forms/searchfield-heights-expected.txt:
      * platform/efl/fast/forms/select-align-expected.txt:
      * platform/efl/fast/forms/select-background-none-expected.txt:
      * platform/efl/fast/forms/select-baseline-expected.txt:
      * platform/efl/fast/forms/select-change-listbox-to-popup-expected.txt:
      * platform/efl/fast/forms/select-dirty-parent-pref-widths-expected.txt:
      * platform/efl/fast/forms/select-initial-position-expected.txt:
      * platform/efl/fast/forms/select-selected-expected.txt:
      * platform/efl/fast/forms/select-size-expected.txt:
      * platform/efl/fast/forms/select-style-expected.txt:
      * platform/efl/fast/forms/select-visual-hebrew-expected.txt:
      * platform/efl/fast/forms/select-writing-direction-natural-expected.txt:
      * platform/efl/fast/forms/selectlist-minsize-expected.txt:
      * platform/efl/fast/forms/stuff-on-my-optgroup-expected.txt:
      * platform/efl/fast/forms/tabbing-input-iframe-expected.txt:
      * platform/efl/fast/forms/targeted-frame-submission-expected.txt:
      * platform/efl/fast/forms/text-style-color-expected.txt:
      * platform/efl/fast/forms/textAreaLineHeight-expected.txt:
      * platform/efl/fast/forms/textarea-align-expected.txt:
      * platform/efl/fast/forms/textarea-scroll-height-expected.txt:
      * platform/efl/fast/forms/textarea-scrolled-type-expected.txt:
      * platform/efl/fast/forms/textarea-setinnerhtml-expected.txt:
      * platform/efl/fast/forms/textarea-width-expected.txt:
      * platform/efl/fast/forms/textfield-focus-ring-expected.txt:
      * platform/efl/fast/forms/visual-hebrew-text-field-expected.txt:
      * platform/efl/fast/frames/take-focus-from-iframe-expected.txt:
      * platform/efl/fast/html/details-no-summary4-expected.txt:
      * platform/efl/fast/html/details-open-javascript-expected.txt:
      * platform/efl/fast/html/details-open2-expected.txt:
      * platform/efl/fast/html/details-open4-expected.txt:
      * platform/efl/fast/html/details-replace-summary-child-expected.txt:
      * platform/efl/fast/html/details-replace-text-expected.txt:
      * platform/efl/fast/html/keygen-expected.txt:
      * platform/efl/fast/invalid/014-expected.txt:
      * platform/efl/fast/lists/dynamic-marker-crash-expected.txt:
      * platform/efl/fast/overflow/overflow-x-y-expected.txt:
      * platform/efl/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
      * platform/efl/fast/overflow/scrollRevealButton-expected.txt:
      * platform/efl/fast/parser/document-write-option-expected.txt:
      * platform/efl/fast/parser/entity-comment-in-textarea-expected.txt:
      * platform/efl/fast/parser/open-comment-in-textarea-expected.txt:
      * platform/efl/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
      * platform/efl/fast/repaint/search-field-cancel-expected.txt:
      * platform/efl/fast/repaint/subtree-root-skipped-expected.txt:
      * platform/efl/fast/replaced/replaced-breaking-expected.txt:
      * platform/efl/fast/replaced/replaced-breaking-mixture-expected.txt:
      * platform/efl/fast/replaced/three-selects-break-expected.txt:
      * platform/efl/fast/replaced/width100percent-button-expected.txt:
      * platform/efl/fast/replaced/width100percent-menulist-expected.txt:
      * platform/efl/fast/replaced/width100percent-textarea-expected.txt:
      * platform/efl/fast/replaced/width100percent-textfield-expected.txt:
      * platform/efl/fast/table/003-expected.txt:
      * platform/efl/fast/table/colspanMinWidth-expected.txt:
      * platform/efl/fast/table/spanOverlapRepaint-expected.txt:
      * platform/efl/fast/table/text-field-baseline-expected.txt:
      * platform/efl/fast/text/textIteratorNilRenderer-expected.txt:
      * platform/efl/http/tests/navigation/javascriptlink-frames-expected.txt:
      * platform/efl/test_expectations.txt:
      * platform/efl/transforms/2d/zoom-menulist-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116761 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      10d1cdb2
    • kov@webkit.org's avatar
      REGRESSION(r116205): [GTK]: build no longer supports thin archives · bf1e63f4
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86207
      
      Source/WebCore:
      
      * GNUmakefile.am: go back to not linking libWebCoreModules into
      libWebCore; when linking 2 convenience libraries libtools tries to
      extract the object files from one of them to add to the other, breaking
      thin archive builds
      
      Source/WebKit/gtk:
      
      * GNUmakefile.am: link libWebCoreModules into the webkitgtk shared
      library.
      
      Source/WebKit2:
      
      * GNUmakefile.am: link libWebCoreModules to the webkit2gtk shared
      library; tell the linker to ignore internal unresolved symbols for
      PluginProcess and avoid linking libWebCoreModules.
      
      Tools:
      
      * GNUmakefile.am: link libWebCoreModules to DRT.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116760 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bf1e63f4
    • keishi@webkit.org's avatar
      Sanitization algorithm for input type=email should strip whitespaces · eeafb112
      keishi@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86177
      
      Reviewed by Kent Tamura.
      
      Source/WebCore:
      
      No new tests. Covered by: fast/forms/ValidityState-typeMismatch-email.html
      
      The spec says that the value sanitization algorithm should
      > Strip line breaks from the value, then strip leading and trailing whitespace from the value.
      
      * html/EmailInputType.cpp:
      (WebCore::EmailInputType::sanitizeValue):
      
      LayoutTests:
      
      * fast/forms/ValidityState-typeMismatch-email-expected.txt:
      * fast/forms/input-value-sanitization-expected.txt:
      * fast/forms/input-value-sanitization.html:
      * fast/forms/resources/ValidityState-typeMismatch-email.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116757 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eeafb112
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r116752. · 515f3771
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/116752
      https://bugs.webkit.org/show_bug.cgi?id=86201
      
      Build failure on Chromium-mac (Requested by tkent on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-11
      
      * html/FormAssociatedElement.cpp:
      * html/FormAssociatedElement.h:
      (FormAssociatedElement):
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLFormControlElement::setCustomValidity):
      * html/HTMLFormControlElement.h:
      (HTMLFormControlElement):
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::isValidValue):
      (WebCore::HTMLInputElement::typeMismatch):
      (WebCore::HTMLInputElement::valueMissing):
      (WebCore::HTMLInputElement::patternMismatch):
      (WebCore::HTMLInputElement::rangeUnderflow):
      (WebCore::HTMLInputElement::rangeOverflow):
      (WebCore::HTMLInputElement::minimum):
      (WebCore::HTMLInputElement::maximum):
      (WebCore::HTMLInputElement::stepMismatch):
      (WebCore::HTMLInputElement::minimumString):
      (WebCore::HTMLInputElement::maximumString):
      (WebCore):
      (WebCore::HTMLInputElement::stepBaseString):
      (WebCore::HTMLInputElement::stepString):
      (WebCore::HTMLInputElement::typeMismatchText):
      (WebCore::HTMLInputElement::valueMissingText):
      (WebCore::HTMLInputElement::isInRange):
      (WebCore::HTMLInputElement::isOutOfRange):
      * html/HTMLInputElement.h:
      (HTMLInputElement):
      * html/HTMLObjectElement.h:
      (WebCore::HTMLObjectElement::setCustomValidity):
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::valueMissing):
      * html/HTMLSelectElement.h:
      (HTMLSelectElement):
      * html/HTMLTextAreaElement.cpp:
      * html/HTMLTextAreaElement.h:
      (WebCore::HTMLTextAreaElement::valueMissing):
      (HTMLTextAreaElement):
      * html/InputType.cpp:
      (WebCore::InputType::alignValueForStep):
      (WebCore::InputType::stepUpFromRenderer):
      * html/InputType.h:
      (InputType):
      * html/ValidityState.cpp:
      (WebCore::ValidityState::validationMessage):
      (WebCore):
      (WebCore::ValidityState::setCustomErrorMessage):
      (WebCore::ValidityState::valueMissing):
      (WebCore::ValidityState::typeMismatch):
      (WebCore::ValidityState::patternMismatch):
      (WebCore::ValidityState::tooLong):
      (WebCore::ValidityState::rangeUnderflow):
      (WebCore::ValidityState::rangeOverflow):
      (WebCore::ValidityState::stepMismatch):
      (WebCore::ValidityState::customError):
      (WebCore::ValidityState::valid):
      * html/ValidityState.h:
      (ValidityState):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116756 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      515f3771
    • apavlov@chromium.org's avatar
      Web Inspector: Search box doesn't allow CSS selectors anymore · 9c92a8ef
      apavlov@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86196
      
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      Refactoring in http://trac.webkit.org/changeset/99983 inadvertently removed the selector matching during
      node search in the InspectorDOMAgent. This change re-introduces the Document::querySelectorAll() evaluation
      for the user query.
      
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::performSearch):
      
      LayoutTests:
      
      * inspector/elements/elements-panel-search-expected.txt:
      * inspector/elements/elements-panel-search.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116755 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9c92a8ef
    • inferno@chromium.org's avatar
      Unreviewed, rolling out r116527. · 6adf2ae7
      inferno@chromium.org authored
      http://trac.webkit.org/changeset/116527
      https://bugs.webkit.org/show_bug.cgi?id=86199
      
      Causing crashes on ClusterFuzz (Requested by inferno-sec on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-11
      
      Source/WebCore:
      
      * rendering/RenderScrollbar.cpp:
      (WebCore::RenderScrollbar::updateScrollbarPart):
      * rendering/RenderScrollbarPart.h:
      
      LayoutTests:
      
      * scrollbars/scrollbar-percent-padding-crash-expected.txt: Removed.
      * scrollbars/scrollbar-percent-padding-crash.html: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6adf2ae7
    • commit-queue@webkit.org's avatar
      [Forms] Move ValidityState methods implementation to another place · 44a685b0
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86058
      
      Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-05-11
      Reviewed by Kent Tamura.
      
      This patch changes ValidityState class for limiting scope of
      number/range input type related methods for introducing decimal
      arithmetic.
      
      Methods related to validation are moved from ValidateState to
      input, select and textarea elements with virtual method based
      dispatching via FormAssociateElement instead of tag name
      dispatching so far for code simplification.
      
      No new tests. This patch doesn't change behavior.
      
      * html/FormAssociatedElement.cpp:
      (WebCore::FormAssociatedElement::customError): Added. Called from ValidateState. Returns custom error mssage in member variable.
      (WebCore::FormAssociatedElement::patternMismatch): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::rangeOverflow): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::rangeUnderflow): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::stepMismatch): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::tooLong): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::typeMismatch): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::valid): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::valueMissing): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::customValidationMessage): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::validationMessage): Added.  Called from ValidateState. This is default implementation.
      (WebCore::FormAssociatedElement::setCustomValidity): Added.  set custom error message.
      * html/FormAssociatedElement.h:
      (FormAssociatedElement): Added new instance value m_customValidationMessage.
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLFormControlElement::setCustomValidity): Changed. Calls base class setCustomValidity.
      * html/HTMLFormControlElement.h:
      (HTMLFormControlElement):
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::isValidValue): Call m_inputType methods instead of HTMLInputElement's.
      (WebCore::HTMLInputElement::tooLong): Call m_inputType methods instead of HTMLInputElement's.
      (WebCore):
      (WebCore::HTMLInputElement::typeMismatch): Move implementation to InputType.
      (WebCore::HTMLInputElement::valueMissing):  Move implementation to InputType.
      (WebCore::HTMLInputElement::patternMismatch): Move implementation to InputType.
      (WebCore::HTMLInputElement::rangeUnderflow): Move implementation to InputType.
      (WebCore::HTMLInputElement::rangeOverflow): Move implementation to InputType.
      (WebCore::HTMLInputElement::validationMessage): Move implementation to InputType.
      (WebCore::HTMLInputElement::stepMismatch): Move implementation to InputType.
      (WebCore::HTMLInputElement::isInRange): Call m_inputType methods instead of HTMLInputElement's.
      (WebCore::HTMLInputElement::isOutOfRange): Call m_inputType methods instead of HTMLInputElement's.
      * html/HTMLInputElement.h:
      (HTMLInputElement): Make tooLong method private.
      * html/HTMLObjectElement.h: Add "virtual" and "OVERRIDE".
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::validationMessage): Added. Implementation for HTMLSelectElement.
      (WebCore::HTMLSelectElement::valueMissing): Added. Implementation for HTMLSelectElement.
      * html/HTMLSelectElement.h:
      (HTMLSelectElement):  Added entries for newly added methods.
      * html/HTMLTextAreaElement.cpp:
      (WebCore::HTMLTextAreaElement::validationMessage): Added. Implementation for HTMLTextAreaElement.
      (WebCore::HTMLTextAreaElement::valueMissing): Added. Implementation for HTMLTextAreaElement.
      (WebCore::HTMLTextAreaElement::tooLong): Added. Implementation for HTMLTextAreaElement.
      * html/HTMLTextAreaElement.h:
      (HTMLTextAreaElement): Added entries for newly added methods. Change tooLong and valueMissing private.
      * html/InputType.cpp:
      (WebCore::InputType::stepMismatch): Change method signature.
      (WebCore::InputType::alignValueForStep):  Changed for calling InputClass instead of HTMLINputElement.
      (WebCore::InputType::stepUpFromRenderer):  Added. Moved from HTMLInputElement.
      (WebCore::InputType::validationMessage): Added.  Moved from HTMLInputElement.
      * html/InputType.h:
      (InputType): Added entries for newly added methods and update methods signature.
      * html/ValidityState.cpp: Move actual implementation to FormAssociatedElement and derived classes for localizing implementation change of elements and input types.
      (WebCore::ValidityState::validationMessage): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::valueMissing): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::typeMismatch): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::patternMismatch): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::tooLong): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::rangeUnderflow): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::rangeOverflow): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::stepMismatch): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::customError): Changed to call FormAssociatedElement's method.
      (WebCore::ValidityState::valid):
      * html/ValidityState.h:
      (ValidityState): Remove custom validation message related things.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116752 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      44a685b0
    • tkent@chromium.org's avatar
      Fix a build error without SVG, introduced by tab-size support. · a9aad507
      tkent@chromium.org authored
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::collectMatchingRulesForList):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116751 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a9aad507
    • shinyak@chromium.org's avatar
      [Refactoring] Move Selection from DOMWindow to TreeScope. · 4fd60ed7
      shinyak@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=82699
      
      Reviewed by Ryosuke Niwa.
      
      Since ShadowRoot will also manage its own version of DOMSelection, we would like to
      share the code among Document and DOMSelection. This patch moves DOMSelection from DOMWindow to TreeScope
      so that ShadowRoot can also use it.
      
      No new tests, should covered by existing tests.
      
      * dom/Document.cpp:
      (WebCore::Document::updateFocusAppearanceTimerFired):
      * dom/Document.h:
      (Document):
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::selection):
      * dom/TreeScope.cpp:
      (WebCore::TreeScope::~TreeScope):
      (WebCore::TreeScope::getSelection):
      (WebCore):
      * dom/TreeScope.h:
      (WebCore):
      (TreeScope):
      * page/DOMSelection.cpp:
      (WebCore::DOMSelection::DOMSelection):
      (WebCore::DOMSelection::clearTreeScope):
      (WebCore):
      * page/DOMSelection.h:
      (WebCore):
      (WebCore::DOMSelection::create):
      (DOMSelection):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::~DOMWindow):
      (WebCore::DOMWindow::clearDOMWindowProperties):
      (WebCore::DOMWindow::getSelection):
      * page/DOMWindow.h:
      (DOMWindow):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116746 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4fd60ed7
    • yurys@chromium.org's avatar
      Web Inspector: console should allow JS execution in the context of an isolated world · 157d0106
      yurys@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85612
      
      Reviewed by Pavel Feldman.
      
      Added an option to select not only a frame but also isolated world in which
      to perform evaluation of the code typed into the console.
      
      Each execution context can be identified using it injected script id. We call it
      execution context id in the protocol. Runtime agent is extended with an event that
      is sent when new ExecutionContext is created. The event tracking can be enabled/disabled
      using setReportExecutionContextCreation command.
      
      * bindings/js/ScriptController.cpp:
      (WebCore):
      (WebCore::isolatedWorldToSecurityOriginMap):
      * bindings/js/ScriptController.h:
      (ScriptController):
      * bindings/js/ScriptState.cpp:
      (WebCore::isolatedWorldScriptState):
      (WebCore):
      * bindings/js/ScriptState.h:
      (WebCore):
      * bindings/v8/ScriptController.cpp:
      (WebCore):
      (WebCore::ScriptController::isolatedWorldToSecurityOriginMap):
      * bindings/v8/ScriptController.h:
      (ScriptController):
      * bindings/v8/ScriptState.cpp:
      (WebCore::isolatedWorldScriptState):
      (WebCore):
      * bindings/v8/ScriptState.h:
      (WebCore):
      * bindings/v8/V8IsolatedContext.cpp:
      (WebCore::V8IsolatedContext::setSecurityOrigin):
      * bindings/v8/V8Proxy.cpp:
      (WebCore::V8Proxy::setIsolatedWorldSecurityOrigin):
      (WebCore::V8Proxy::isolatedWorldContext):
      (WebCore):
      (WebCore::V8Proxy::isolatedWorldToSecurityOriginMap):
      * bindings/v8/V8Proxy.h:
      (V8Proxy):
      * inspector/CodeGeneratorInspector.py:
      (DomainNameFixes):
      * inspector/Inspector.json:
      * inspector/InspectorInstrumentation.cpp:
      (WebCore::InspectorInstrumentation::didCreateIsolatedContextImpl):
      (WebCore):
      * inspector/InspectorInstrumentation.h:
      (WebCore):
      (InspectorInstrumentation):
      (WebCore::InspectorInstrumentation::didCreateIsolatedContext):
      * inspector/InspectorRuntimeAgent.cpp:
      (WebCore::InspectorRuntimeAgent::evaluate):
      * inspector/InspectorRuntimeAgent.h:
      (InspectorRuntimeAgent):
      * inspector/InstrumentingAgents.h:
      (WebCore):
      (WebCore::InstrumentingAgents::InstrumentingAgents):
      (WebCore::InstrumentingAgents::pageRuntimeAgent):
      (WebCore::InstrumentingAgents::setPageRuntimeAgent):
      (InstrumentingAgents):
      * inspector/PageRuntimeAgent.cpp:
      (PageRuntimeAgentState):
      (WebCore):
      (WebCore::PageRuntimeAgent::PageRuntimeAgent):
      (WebCore::PageRuntimeAgent::setFrontend):
      (WebCore::PageRuntimeAgent::clearFrontend):
      (WebCore::PageRuntimeAgent::restore):
      (WebCore::PageRuntimeAgent::setReportExecutionContextCreation):
      (WebCore::PageRuntimeAgent::didCreateExecutionContext):
      (WebCore::PageRuntimeAgent::getScriptStateForEval):
      * inspector/PageRuntimeAgent.h:
      (WebCore):
      (PageRuntimeAgent):
      * inspector/WorkerRuntimeAgent.cpp:
      (WebCore::WorkerRuntimeAgent::setReportExecutionContextCreation):
      (WebCore::WorkerRuntimeAgent::getScriptStateForEval):
      * inspector/WorkerRuntimeAgent.h:
      (WorkerRuntimeAgent):
      * inspector/front-end/ConsoleView.js:
      (WebInspector.ConsoleView.prototype.get statusBarItems):
      (WebInspector.ConsoleView.prototype.addContext):
      (WebInspector.ConsoleView.prototype.removeContext):
      (WebInspector.ConsoleView.prototype._updateIsolatedWorldSelector):
      (WebInspector.ConsoleView.prototype._contextUpdated):
      (WebInspector.ConsoleView.prototype._addedExecutionContext):
      (WebInspector.ConsoleView.prototype._currentEvaluationContextId):
      (WebInspector.ConsoleView.prototype._currentEvaluationContext):
      (WebInspector.ConsoleView.prototype._currentIsolatedWorldId):
      (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
      * inspector/front-end/ExtensionPanel.js:
      (WebInspector.ExtensionSidebarPane.prototype.setExpression):
      * inspector/front-end/ExtensionServer.js:
      (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
      * inspector/front-end/JavaScriptContextManager.js:
      (WebInspector.JavaScriptContextManager):
      (WebInspector.JavaScriptContextManager.prototype._didLoadCachedResources):
      (WebInspector.JavaScriptContextManager.prototype.isolatedContextCreated):
      (WebInspector.RuntimeDispatcher):
      (WebInspector.RuntimeDispatcher.prototype.isolatedContextCreated):
      (WebInspector.ExecutionContext):
      (WebInspector.ExecutionContext.comparator):
      (WebInspector.FrameEvaluationContext):
      (WebInspector.FrameEvaluationContext.prototype._frameNavigated):
      (WebInspector.FrameEvaluationContext.prototype._addExecutionContext):
      (WebInspector.FrameEvaluationContext.prototype._ensureMainWorldContextAdded):
      (WebInspector.FrameEvaluationContext.prototype.isolatedContexts):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116744 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      157d0106
    • caseq@chromium.org's avatar
      Web Inspector: use div, not span as a parent element for ElementsTreeOutline in Audits panel · 41604e84
      caseq@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86188
      
      Reviewed by Yury Semikhatsky.
      
      Source/WebCore:
      
      We need to use <div>, not <span> as a container for ElementsTreeOutline, as latter accesses its parent offsetWidth
      within _treeElementFromEvent(), which returns 0 for inline elements.
      
      * inspector/front-end/AuditFormatters.js:
      (WebInspector.AuditFormatters.node.onNodeAvailable):
      (WebInspector.AuditFormatters.node):
      
      LayoutTests:
      
      * inspector/extensions/extensions-audits-expected.txt: rebaseline to account for extra <div>.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116743 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      41604e84
    • antti@apple.com's avatar
      Inline Node::traverseNextNode · ca02d001
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=85844
      
      Reviewed by Ryosuke Niwa.
              
      Inline traverseNextNode and traverseNextSibling to reduce entry/exit overhead and allow better code generation
      for many hot loops.
      
      In this version only the firstChild()/nextSibling() tests are inlined and the ancestor traversal is not.
              
      Performance bots will tell if this was worthwhile.
      
      * dom/ContainerNode.h:
      (WebCore::Node::traverseNextNode):
      (WebCore):
      (WebCore::Node::traverseNextSibling):
      * dom/Node.cpp:
      (WebCore::Node::traverseNextAncestorSibling):
      * dom/Node.h:
      (Node):
      * bindings/v8/RetainedDOMInfo.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116742 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca02d001
    • yurys@chromium.org's avatar
      Web Inspector: get rid of InspectorAgent::emitCommitLoadIfNeeded method · 7711b50b
      yurys@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85708
      
      Reviewed by Pavel Feldman.
      
      Instead of calling emitCommitLoadIfNeeded after all agents are restored
      required actions are performed directly in the restore() methods.
      
      * inspector/InspectorAgent.cpp:
      * inspector/InspectorAgent.h:
      (WebCore::InspectorAgent::didCommitLoadFired):
      * inspector/InspectorController.cpp:
      (WebCore::InspectorController::InspectorController):
      (WebCore::InspectorController::restoreInspectorStateFromCookie):
      * inspector/InspectorDatabaseAgent.cpp:
      (WebCore::InspectorDatabaseAgent::restore):
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::create):
      (WebCore::InspectorPageAgent::InspectorPageAgent):
      (WebCore::InspectorPageAgent::restore):
      * inspector/InspectorPageAgent.h:
      (WebCore):
      * inspector/InspectorResourceAgent.cpp:
      (WebCore::InspectorResourceAgent::restore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116740 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7711b50b
    • caseq@chromium.org's avatar
      Web Inspector: [Extensions API] add audit formatters for remote objects and DOM elements · d5d93839
      caseq@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86108
      
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
             - added two new formatters to AuditResults object of webInspector.audits API;
      
      * inspector/front-end/AuditFormatters.js:
      (WebInspector.AuditFormatters.resourceLink):
      (WebInspector.AuditFormatters.object.onEvaluate):
      (WebInspector.AuditFormatters.object): format as a remote object property list;
      (WebInspector.AuditFormatters.node.onNodeAvailable):
      (WebInspector.AuditFormatters.node.onEvaluate):
      (WebInspector.AuditFormatters.node): format as a DOM elements sub-tree;
      (WebInspector.AuditFormatters.Utilities.evaluate): common expression evaluation logic for both new formatters;
      * inspector/front-end/ExtensionAPI.js:
      (injectedExtensionAPI.AuditResultImpl):
      * inspector/front-end/auditsPanel.css:
      (.audit-result-tree ol.outline-disclosure):
      (.audit-result-tree .section .header):
      (.audit-result-tree .section .header::before):
      
      LayoutTests:
      
      - rebaselined tests to account for two new AuditResults method and their results;
      
      * inspector/extensions/extensions-audits-api-expected.txt:
      * inspector/extensions/extensions-audits-expected.txt:
      * inspector/extensions/extensions-audits-tests.js:
      (initialize_ExtensionsAuditsTest.InspectorTest.startExtensionAudits.onAuditsDone):
      * inspector/extensions/extensions-audits.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116739 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5d93839
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r116727. · b3e4bd44
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/116727
      https://bugs.webkit.org/show_bug.cgi?id=86181
      
      Build error on Chromium-Android (Requested by tkent on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-11
      
      Source/WebCore:
      
      * platform/graphics/MediaPlayer.cpp:
      (WebCore::MediaPlayer::enterFullscreen):
      (WebCore):
      * platform/graphics/MediaPlayer.h:
      (MediaPlayer):
      * platform/graphics/MediaPlayerPrivate.h:
      (WebCore::MediaPlayerPrivateInterface::enterFullscreen):
      (MediaPlayerPrivateInterface):
      
      Source/WebKit/chromium:
      
      * public/WebMediaPlayer.h:
      (WebMediaPlayer):
      (WebKit::WebMediaPlayer::enterFullscreen):
      (WebKit::WebMediaPlayer::exitFullscreen):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::enterFullscreen):
      (WebKit::WebMediaPlayerClientImpl::exitFullscreen):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::enterFullScreenForElement):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116736 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b3e4bd44
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r116731. · 40d99822
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/116731
      https://bugs.webkit.org/show_bug.cgi?id=86178
      
      Build failure on Chromium-mac (Requested by tkent on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-11
      
      Source/WebCore:
      
      * platform/graphics/chromium/LayerRendererChromium.cpp:
      (WebCore::LayerRendererChromium::create):
      (WebCore::LayerRendererChromium::LayerRendererChromium):
      (WebCore::LayerRendererChromium::initializeSharedObjects):
      * platform/graphics/chromium/LayerRendererChromium.h:
      (LayerRendererChromium):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImpl):
      * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
      (UnthrottledTextureUploader):
      (WebCore::UnthrottledTextureUploader::create):
      (WebCore::UnthrottledTextureUploader::~UnthrottledTextureUploader):
      (WebCore::UnthrottledTextureUploader::isBusy):
      (WebCore::UnthrottledTextureUploader::beginUploads):
      (WebCore::UnthrottledTextureUploader::endUploads):
      (WebCore::UnthrottledTextureUploader::uploadTexture):
      (WebCore::UnthrottledTextureUploader::UnthrottledTextureUploader):
      (WebCore):
      (WebCore::CCSingleThreadProxy::initializeLayerRenderer):
      (WebCore::CCSingleThreadProxy::recreateContext):
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore):
      (UnthrottledTextureUploader):
      (WebCore::UnthrottledTextureUploader::create):
      (WebCore::UnthrottledTextureUploader::~UnthrottledTextureUploader):
      (WebCore::UnthrottledTextureUploader::isBusy):
      (WebCore::UnthrottledTextureUploader::beginUploads):
      (WebCore::UnthrottledTextureUploader::endUploads):
      (WebCore::UnthrottledTextureUploader::uploadTexture):
      (WebCore::UnthrottledTextureUploader::UnthrottledTextureUploader):
      (WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
      (WebCore::CCThreadProxy::recreateContextOnImplThread):
      
      Source/WebKit/chromium:
      
      * tests/CCLayerTreeHostImplTest.cpp:
      (WebKitTests::CCLayerTreeHostImplTest::CCLayerTreeHostImplTest):
      (WebKitTests::TEST_F):
      * tests/LayerRendererChromiumTest.cpp:
      (FakeLayerRendererChromium::FakeLayerRendererChromium):
      (LayerRendererChromiumTest::LayerRendererChromiumTest):
      (TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116733 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40d99822
    • commit-queue@webkit.org's avatar
      [Chromium] Move instantiation of texture uploader to LayerRendererChromium. · 17d0afa0
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85893
      
      Patch by David Reveman <reveman@chromium.org> on 2012-05-10
      Reviewed by Adrienne Walker.
      
      Source/WebCore:
      
      Move instantiation of texture uploader to LayerRendererChromium and
      allow CCProxy to decide between a throttled or unthrottled uploader
      using a flag passed to the LayerRendererChromium constructor.
      
      * platform/graphics/chromium/LayerRendererChromium.cpp:
      (WebCore::LayerRendererChromium::create):
      (WebCore::LayerRendererChromium::LayerRendererChromium):
      (WebCore::LayerRendererChromium::initializeSharedObjects):
      * platform/graphics/chromium/LayerRendererChromium.h:
      (LayerRendererChromium):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImpl):
      * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
      (WebCore::CCSingleThreadProxy::initializeLayerRenderer):
      (WebCore::CCSingleThreadProxy::recreateContext):
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
      (WebCore::CCThreadProxy::recreateContextOnImplThread):
      
      Source/WebKit/chromium:
      
      * tests/CCLayerTreeHostImplTest.cpp:
      (WebKitTests::CCLayerTreeHostImplTest::CCLayerTreeHostImplTest):
      (WebKitTests::TEST_F):
      * tests/LayerRendererChromiumTest.cpp:
      (FakeLayerRendererChromium::FakeLayerRendererChromium):
      (LayerRendererChromiumTest::LayerRendererChromiumTest):
      (TEST):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      17d0afa0
  2. 10 May, 2012 17 commits
    • morrita@google.com's avatar
      ElementShadow should minimize the usage of "ShadowRoot" name · 49d99d93
      morrita@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=85970
      
      Reviewed by Dimitri Glazkov.
      
      .:
      
      Removed symbols which no longer exists
      
      * Source/autotools/symbols.filter:
      
      Source/WebCore:
      
      This change cleans two out dated assumptions which brought in at
      early stage of Shadow DOM implementation.
      
      - Removed Element::hasShadowRoot(): shadow existence can be checked by Element::shadow().
      - Made ElementShadow::removeAllShadowRoots() private: we no longer allow ShadowRoot removal.
        It can only happens at the ElementShadow destruction.
      
      Most of changes in element implementations are basically simple
      replacement from hasShadowRoot() to shadow().
      
      No new tests. Covered by existing tests.
      
      * WebCore.exp.in:
      * dom/ContainerNodeAlgorithms.h:
      (WebCore::ChildFrameDisconnector::collectDescendant):
      * dom/ComposedShadowTreeWalker.cpp:
      (WebCore::ComposedShadowTreeWalker::traverseChild):
      * dom/Document.cpp:
      (WebCore::Document::buildAccessKeyMap):
      * dom/Element.cpp:
      (WebCore::Element::recalcStyle):
      (WebCore::Element::ensureShadowRoot):
      (WebCore::Element::childrenChanged):
      * dom/Element.h:
      (Element):
      (WebCore::isShadowHost):
      (WebCore):
      * dom/ElementShadow.cpp:
      (WebCore::ElementShadow::~ElementShadow):
      (WebCore::ElementShadow::removeAllShadowRoots):
      * dom/ElementShadow.h:
      (ElementShadow):
      (WebCore::ElementShadow::host):
      * dom/EventDispatcher.cpp:
      * dom/Node.cpp:
      (WebCore::oldestShadowRootFor):
      * dom/NodeRenderingContext.cpp:
      (WebCore::NodeRenderingContext::NodeRenderingContext):
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::create):
      * html/ColorInputType.cpp:
      (WebCore::ColorInputType::createShadowSubtree):
      * html/FileInputType.cpp:
      (WebCore::FileInputType::createShadowSubtree):
      (WebCore::FileInputType::multipleAttributeChanged):
      * html/HTMLDetailsElement.cpp:
      (WebCore::HTMLDetailsElement::createShadowSubtree):
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::createShadowSubtree):
      * html/HTMLKeygenElement.cpp:
      (WebCore::HTMLKeygenElement::HTMLKeygenElement):
      (WebCore::HTMLKeygenElement::shadowSelect):
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::hasMediaControls):
      * html/HTMLMeterElement.cpp:
      (WebCore::HTMLMeterElement::createShadowSubtree):
      * html/HTMLProgressElement.cpp:
      (WebCore::HTMLProgressElement::createShadowSubtree):
      * html/HTMLSummaryElement.cpp:
      (WebCore::HTMLSummaryElement::createShadowSubtree):
      * html/HTMLTextAreaElement.cpp:
      (WebCore::HTMLTextAreaElement::createShadowSubtree):
      * html/InputType.cpp:
      (WebCore::InputType::destroyShadowSubtree):
      * html/RangeInputType.cpp:
      (WebCore::RangeInputType::handleMouseDownEvent):
      (WebCore::RangeInputType::createShadowSubtree):
      * html/TextFieldInputType.cpp:
      (WebCore::TextFieldInputType::createShadowSubtree):
      * html/shadow/SliderThumbElement.cpp:
      (WebCore::trackLimiterElementOf):
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::unbind):
      (WebCore::InspectorDOMAgent::buildObjectForNode):
      * page/FocusController.cpp:
      (WebCore):
      * rendering/RenderFileUploadControl.cpp:
      (WebCore::RenderFileUploadControl::uploadButton):
      * svg/SVGTRefElement.cpp:
      (WebCore::SVGTRefElement::updateReferencedText):
      (WebCore::SVGTRefElement::detachTarget):
      * testing/Internals.cpp:
      (WebCore::Internals::ensureShadowRoot):
      (WebCore::Internals::youngestShadowRoot):
      (WebCore::Internals::oldestShadowRoot):
      * testing/Internals.h:
      (Internals):
      * testing/Internals.idl:
      
      Source/WebKit2:
      
      Removed symbols which no longer exists
      
      * win/WebKit2.def:
      * win/WebKit2CFLite.def:
      
      LayoutTests:
      
      Removed tests cases which exercise shadow root removals.
      Such functionality was only available from Internals object
      and it made little sense to test it.
      
      * fast/dom/shadow/content-element-move-expected.txt:
      * fast/dom/shadow/content-element-move.html:
      * fast/dom/shadow/dynamically-created-shadow-root-expected.html:
      * fast/dom/shadow/dynamically-created-shadow-root.html:
      * fast/dom/shadow/layout-tests-can-access-shadow-expected.txt:
      * fast/dom/shadow/layout-tests-can-access-shadow.html:
      * fast/dom/shadow/multiple-shadowroot-expected.txt:
      * fast/dom/shadow/multiple-shadowroot.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116730 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      49d99d93
    • gyuyoung.kim@samsung.com's avatar
      Move resumeAnimations to use Internals interface · 05ecb887
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=86063
      
      Reviewed by Alexey Proskuryakov.
      
      .:
      
      * Source/autotools/symbols.filter: Add a symbol filter for resumeAnimations.
      
      Source/WebCore:
      
      Add resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      No new tests, since we are improving here the infra-structure for testing
      a specific method.
      
      * testing/Internals.cpp:
      (WebCore::Internals::resumeAnimations):
      (WebCore):
      * testing/Internals.h:
      (Internals):
      * testing/Internals.idl:
      
      Source/WebKit/efl:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * WebCoreSupport/DumpRenderTreeSupportEfl.h:
      
      Source/WebKit/gtk:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
      * WebCoreSupport/DumpRenderTreeSupportGtk.h:
      (DumpRenderTreeSupportGtk):
      
      Source/WebKit/mac:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * WebKit.order:
      * WebView/WebFrame.mm:
      * WebView/WebFramePrivate.h:
      
      Source/WebKit/qt:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
      * WebCoreSupport/DumpRenderTreeSupportQt.h:
      
      Source/WebKit/win:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * Interfaces/IWebFramePrivate.idl:
      * WebFrame.cpp:
      * WebFrame.h:
      
      Source/WebKit2:
      
      * win/WebKit2.def: Add a symbol filter for resumeAnimations.
      
      Tools:
      
      Remove resumeAnimations functions, because it is able to work in the
      cross-port way through the Internals interface.
      
      * DumpRenderTree/LayoutTestController.cpp:
      (LayoutTestController::staticFunctions):
      * DumpRenderTree/LayoutTestController.h:
      (LayoutTestController):
      * DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
      * DumpRenderTree/chromium/LayoutTestController.cpp:
      (LayoutTestController::LayoutTestController):
      * DumpRenderTree/chromium/LayoutTestController.h:
      (LayoutTestController):
      * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
      * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
      * DumpRenderTree/mac/LayoutTestControllerMac.mm:
      * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
      * DumpRenderTree/qt/LayoutTestControllerQt.h:
      (LayoutTestController):
      * DumpRenderTree/win/LayoutTestControllerWin.cpp:
      * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
      * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
      * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
      * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
      (LayoutTestController):
      
      LayoutTests:
      
      Call resumeAnimations functions from internals, because it is able to work in the
      cross-port way through the Internals interface.
      
      * animations/play-state-suspend.html:
      * animations/stop-animation-on-suspend.html:
      * animations/suspend-resume-animation-events.html:
      * animations/suspend-resume-animation.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116729 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      05ecb887
    • commit-queue@webkit.org's avatar
      split MediaPlayer::enterFullscreen into 2 seperate functions · bb996762
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86052
      
      Patch by Min Qin <qinmin@google.com> on 2012-05-10
      Reviewed by Benjamin Poulain.
      
      Source/WebCore:
      
      It is confusing that enterFullscreen returns a boolean while exitFullscreen does
      not do the same. And ios does not need the return value.
      So remove the return value on enterFullscreen and make a seperate canEnterFullscreen()
      function for android.
      No tests as there are no behavior change, just refactoring.
      
      * platform/graphics/MediaPlayer.cpp:
      (WebCore::MediaPlayer::enterFullscreen):
      (WebCore):
      (WebCore::MediaPlayer::canEnterFullscreen):
      * platform/graphics/MediaPlayer.h:
      (MediaPlayer):
      * platform/graphics/MediaPlayerPrivate.h:
      (WebCore::MediaPlayerPrivateInterface::enterFullscreen):
      (MediaPlayerPrivateInterface):
      (WebCore::MediaPlayerPrivateInterface::canEnterFullscreen):
      
      Source/WebKit/chromium:
      
      It is confusing that enterFullscreen returns a boolean while exitFullscreen does
      not do the same. And ios does not need the return value.
      So remove the return value on enterFullscreen and make a seperate canEnterFullscreen()
      function for android.
      No behavior change, just refactoring.
      
      * public/WebMediaPlayer.h:
      (WebMediaPlayer):
      (WebKit::WebMediaPlayer::enterFullscreen):
      (WebKit::WebMediaPlayer::canEnterFullscreen):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::enterFullscreen):
      (WebKit):
      (WebKit::WebMediaPlayerClientImpl::exitFullscreen):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::enterFullScreenForElement):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116727 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb996762
    • tkent@chromium.org's avatar
      Unreviewed, rolling out r116715. · a0917c6c
      tkent@chromium.org authored
      http://trac.webkit.org/changeset/116715
      https://bugs.webkit.org/show_bug.cgi?id=86172
      
      Broke http/tests/security/cross-frame-access-selection.html
      (Requested by tkent on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-10
      
      * dom/Document.cpp:
      (WebCore):
      (WebCore::Document::getSelection):
      * dom/Document.h:
      (Document):
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::selection):
      * dom/TreeScope.cpp:
      (WebCore::TreeScope::~TreeScope):
      * dom/TreeScope.h:
      (WebCore):
      (TreeScope):
      * page/DOMSelection.cpp:
      (WebCore::DOMSelection::DOMSelection):
      * page/DOMSelection.h:
      (WebCore):
      (WebCore::DOMSelection::create):
      (DOMSelection):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::~DOMWindow):
      (WebCore::DOMWindow::clearDOMWindowProperties):
      (WebCore::DOMWindow::getSelection):
      * page/DOMWindow.h:
      (DOMWindow):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116724 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a0917c6c
    • morrita@google.com's avatar
      WebKit should support tab-size. · 6e818ec7
      morrita@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52994
      
      Source/WebCore:
      
      - Added boilerplate for "tab-size" CSS property.
      - Added RenderStye::tabSize() as a RareInheritedData.
      - Replaced TextRun::m_allowTabs into TextRun::m_tabSize.
      
      Reviewed by Simon Fraser.
      
      Tests: fast/css/tab-size-expected.html
             fast/css/tab-size.html
      
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseValue):
      * css/CSSProperty.cpp:
      (WebCore::CSSProperty::isInheritedProperty):
      * css/CSSPropertyNames.in:
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::applyProperty):
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore::CanvasRenderingContext2D::drawTextInternal):
      * platform/chromium/PopupListBox.cpp:
      (WebCore::PopupListBox::paintRow):
      * platform/graphics/Font.h:
      (WebCore::Font::tabWidth):
      * platform/graphics/TextRun.h:
      (WebCore::TextRun::TextRun):
      (WebCore::TextRun::allowTabs):
      (WebCore::TextRun::tabSize):
      (WebCore::TextRun::setTabSize):
      * platform/graphics/WidthIterator.cpp:
      (WebCore::WidthIterator::advance):
      * platform/graphics/mac/ComplexTextController.cpp:
      (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
      * platform/win/PopupMenuWin.cpp:
      (WebCore::PopupMenuWin::paint):
      * rendering/InlineTextBox.cpp:
      (WebCore::InlineTextBox::constructTextRun):
      * rendering/RenderBlock.cpp:
      (WebCore::RenderBlock::constructTextRun):
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::textWidth):
      (WebCore::tryHyphenating):
      * rendering/RenderText.cpp:
      (WebCore::RenderText::widthFromCache):
      (WebCore::RenderText::computePreferredLogicalWidths):
      (WebCore::RenderText::width):
      * rendering/RenderText.h:
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::diff):
      * rendering/style/RenderStyle.h:
      (WebCore::RenderStyleBitfields::tabSize):
      (WebCore::RenderStyleBitfields::collapsedTabSize):
      (WebCore::RenderStyleBitfields::setTabSize):
      (WebCore::RenderStyleBitfields::initialTabSize):
      * rendering/style/StyleRareInheritedData.cpp:
      (WebCore::StyleRareInheritedData::StyleRareInheritedData):
      (WebCore::StyleRareInheritedData::operator==):
      * rendering/style/StyleRareInheritedData.h:
      * rendering/svg/SVGInlineTextBox.cpp:
      (WebCore::SVGInlineTextBox::constructTextRun):
      * rendering/svg/SVGTextMetrics.cpp:
      (WebCore::constructTextRun):
      
      Source/WebKit/chromium:
      
      Reviewed by Simon Fraser.
      
      * src/WebTextRun.cpp:
      (WebKit::WebTextRun::operator WebCore::TextRun):
      
      LayoutTests:
      
      Reviewed by Simon Fraser.
      
      * fast/css/tab-size-expected.html: Added.
      * fast/css/tab-size.html: Added.
      * platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
      * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
      * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116723 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e818ec7
    • piman@chromium.org's avatar
      Sync with impl thread when removing references to external textures · 8231facf
      piman@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=86054
      
      We want to ensure the client side is safe to release textures, so we
      sync with the impl thread when:
      - we change the texture (and we had one)
      - the layer is removed from the tree (and we had a texture)
      - the layer is destroyed (and we had a texture)
      
      Reviewed by James Robinson.
      
      Test: TextureLayerChromiumTest.
      
      * platform/graphics/chromium/TextureLayerChromium.cpp:
      (WebCore::TextureLayerChromium::~TextureLayerChromium):
      (WebCore::TextureLayerChromium::setTextureId):
      (WebCore::TextureLayerChromium::setLayerTreeHost):
      (WebCore):
      * platform/graphics/chromium/TextureLayerChromium.h:
      (TextureLayerChromium):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116722 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8231facf
    • tkent@chromium.org's avatar
      [Chromium] attempt to build fix for Chromium-mac. · 24cc809e
      tkent@chromium.org authored
      r116697 introduced an override of a system function. It's intentional
      and WebCoreTextFieldCell should be in the whitelist.
      
      * WebCore.gyp/WebCore.gyp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116721 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24cc809e
    • andersca@apple.com's avatar
      PDF files won't scroll in Safari when using Adobe plug-in · ce48400c
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=86167
      <rdar://problem/11389719>
      
      Reviewed by Sam Weinig.
      
      Source/WebCore:
      
      * page/scrolling/ScrollingCoordinator.cpp:
      (WebCore::computeNonFastScrollableRegion):
      Loop over the frame view children looking for plug-in views that want wheel events
      and add them to the non-fast scrollable region. Ideally, the plug-ins should be added
      to the set of scrollable areas, but PluginView in WebKit2 is not a ScrollableArea yet.
      
      * plugins/PluginViewBase.h:
      (PluginViewBase):
      (WebCore::PluginViewBase::wantsWheelEvents):
      
      Source/WebKit2:
      
      Add a way to whitelist plug-ins that we know will process wheel events correctly. Add the new
      Adobe Reader plug-in to this whitelist. Only send wheel events to plug-ins that are in the whitelist.
      
      * PluginProcess/PluginControllerProxy.cpp:
      (WebKit::PluginControllerProxy::wantsWheelEvents):
      (WebKit):
      * PluginProcess/PluginControllerProxy.h:
      (PluginControllerProxy):
      * PluginProcess/WebProcessConnection.cpp:
      (WebKit::WebProcessConnection::createPlugin):
      * PluginProcess/WebProcessConnection.h:
      (WebProcessConnection):
      * PluginProcess/WebProcessConnection.messages.in:
      * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
      (WebKit::NetscapePluginModule::determineQuirks):
      * Shared/Plugins/PluginQuirks.h:
      * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
      (WebKit::NetscapePlugin::wantsWheelEvents):
      (WebKit):
      * WebProcess/Plugins/Netscape/NetscapePlugin.h:
      (NetscapePlugin):
      * WebProcess/Plugins/PDF/BuiltInPDFView.h:
      (BuiltInPDFView):
      * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
      (WebKit::BuiltInPDFView::wantsWheelEvents):
      (WebKit):
      * WebProcess/Plugins/Plugin.h:
      (Plugin):
      * WebProcess/Plugins/PluginProxy.cpp:
      (WebKit::PluginProxy::PluginProxy):
      (WebKit::PluginProxy::initialize):
      (WebKit::PluginProxy::wantsWheelEvents):
      (WebKit):
      * WebProcess/Plugins/PluginProxy.h:
      (PluginProxy):
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::initializePlugin):
      (WebKit::PluginView::wantsWheelEvents):
      (WebKit):
      (WebKit::PluginView::handleEvent):
      * WebProcess/Plugins/PluginView.h:
      (PluginView):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116720 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce48400c
    • ap@apple.com's avatar
      Crash in 3rd party WebKit apps that disable cache at a wrong time · 6edc42b4
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=86027
      <rdar://problem/10615880>
      
      Reviewed by Antti Koivisto.
      
      Source/WebCore:
      
      Added an API test.
      
      The fix is to use CachedResourceHandle throughout MemoryCache, which will certainly
      keep the resource alive. Also removed earlier fixes.
      
      * css/CSSImageSetValue.cpp: (WebCore::CSSImageSetValue::cachedImageSet):
      * css/CSSImageValue.cpp: (WebCore::CSSImageValue::cachedImage):
      * css/WebKitCSSShaderValue.cpp: (WebCore::WebKitCSSShaderValue::cachedShader):
      * history/PageCache.cpp: (WebCore::PageCache::releaseAutoreleasedPagesNow):
      * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement):
      * loader/TextTrackLoader.cpp: (WebCore::TextTrackLoader::load):
      * loader/cache/CachedResourceLoader.cpp:
      (WebCore::CachedResourceLoader::requestImage):
      (WebCore::CachedResourceLoader::requestFont):
      (WebCore::CachedResourceLoader::requestTextTrack):
      (WebCore::CachedResourceLoader::requestShader):
      (WebCore::CachedResourceLoader::requestCSSStyleSheet):
      (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
      (WebCore::CachedResourceLoader::requestScript):
      (WebCore::CachedResourceLoader::requestXSLStyleSheet):
      (WebCore::CachedResourceLoader::requestSVGDocument):
      (WebCore::CachedResourceLoader::requestLinkResource):
      (WebCore::CachedResourceLoader::requestRawResource):
      (WebCore::CachedResourceLoader::requestResource):
      (WebCore::CachedResourceLoader::revalidateResource):
      (WebCore::CachedResourceLoader::loadResource):
      (WebCore::CachedResourceLoader::requestPreload):
      * loader/cache/CachedResourceLoader.h: (CachedResourceLoader):
      * loader/cache/MemoryCache.h: (WebCore::MemoryCache::setPruneEnabled):
      
      * loader/cache/CachedResourceHandle.h:
      (WebCore::CachedResourceHandle::CachedResourceHandle):
      (WebCore::CachedResourceHandle::operator=):
      Teach CachedResourceHandle how to make CachedResourceHandle<CachedResource> from
      a handle to subclass.
      
      Tools:
      
      Added a test that's very similar to MemoryCachePruneWithinResourceLoadDelegate,
      but for disabling the cache instead of triggering a prune.
      
      * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
      * TestWebKitAPI/Tests/mac/MemoryCacheDisableWithinResourceLoadDelegate.html: Added.
      * TestWebKitAPI/Tests/mac/MemoryCacheDisableWithinResourceLoadDelegate.mm: Added.
      (-[MemoryCacheDisableTestResourceLoadDelegate webView:identifierForInitialRequest:fromDataSource:]):
      (-[MemoryCacheDisableTestResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
      (-[MemoryCacheDisableTestResourceLoadDelegate webView:resource:didFinishLoadingFromDataSource:]):
      (-[MemoryCacheDisableTestResourceLoadDelegate webView:resource:didFailLoadingWithError:fromDataSource:]):
      (TestWebKitAPI::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116719 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6edc42b4
    • commit-queue@webkit.org's avatar
      Eliminate duplicated code for culled line box in RenderInline · 6f2377df
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85725
      
      This patch extracts the common part of culledInlineBoundingBox() /
      culledInlineAbsoluteRects() / culledInlineAbsoluteQuads() to become a
      template function generateCulledLineBoxRects(). The template function
      accepts a new parameter, GeneratorContext functor, which will be
      invoked everytime a new line box rect has been generated. The generated
      rect will be in local coordinate. The functor will be responsible for
      appropriate transformation, then appending to vector or union with
      existing bounding box.
      
      Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-05-10
      Reviewed by Eric Seidel.
      
      No new tests. No change in behavior.
      
      * rendering/RenderInline.cpp:
      (WebCore):
      (WebCore::RenderInline::generateLineBoxRects):
      (WebCore::RenderInline::generateCulledLineBoxRects):
      (WebCore::RenderInline::absoluteRects):
      (WebCore::RenderInline::absoluteQuads):
      (WebCore::RenderInline::linesBoundingBox):
      (WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
      (WebCore::RenderInline::addFocusRingRects):
      * rendering/RenderInline.h:
      (RenderInline):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116718 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6f2377df
    • inferno@chromium.org's avatar
      Crash in swapInNodePreservingAttributesAndChildren. · d8578d68
      inferno@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=85197
      
      Reviewed by Ryosuke Niwa.
      
      Keep the children in a ref vector before adding them to newNode.
      They can get destroyed due to mutation events.
      
      No new tests because we don't have a reduction.
      
      * editing/ReplaceNodeWithSpanCommand.cpp:
      (WebCore::swapInNodePreservingAttributesAndChildren):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116717 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d8578d68
    • shinyak@chromium.org's avatar
      [Refactoring] Move Selection from DOMWindow to TreeScope. · b6563baf
      shinyak@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=82699
      
      Reviewed by Ryosuke Niwa.
      
      Since ShadowRoot will also manage its own version of DOMSelection, we would like to
      share the code among Document and DOMSelection. This patch moves DOMSelection from DOMWindow to TreeScope
      so that ShadowRoot can also use it.
      
      No new tests, should covered by existing tests.
      
      * dom/Document.cpp:
      (WebCore::Document::updateFocusAppearanceTimerFired):
      * dom/Document.h:
      (Document):
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::selection):
      * do/mTreeScope.cpp:
      (WebCore::TreeScope::~TreeScope):
      (WebCore::TreeScope::getSelection):
      (WebCore):
      * dom/TreeScope.h:
      (WebCore):
      (TreeScope):
      * page/DOMSelection.cpp:
      (WebCore::DOMSelection::DOMSelection):
      (WebCore::DOMSelection::clearTreeScope):
      (WebCore):
      * page/DOMSelection.h:
      (WebCore):
      (WebCore::DOMSelection::create):
      (DOMSelection):
      (WebCore::DOMSelection::frame):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::~DOMWindow):
      (WebCore::DOMWindow::clearDOMWindowProperties):
      (WebCore::DOMWindow::getSelection):
      * page/DOMWindow.h:
      (DOMWindow):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116715 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6563baf
    • tkent@chromium.org's avatar
      Unreviewed, rolling out r116594. · 5a3c0f4d
      tkent@chromium.org authored
      http://trac.webkit.org/changeset/116594
      https://bugs.webkit.org/show_bug.cgi?id=86013
      
      r116594 might have made some composition tests flaky.
      
      Source/WebCore:
      
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::addAnimation):
      * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
      (WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
      (WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (CCLayerTreeHost):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
      * platform/graphics/chromium/cc/CCProxy.h:
      (CCProxy):
      * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
      (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
      (WebCore::CCSingleThreadProxy::doComposite):
      * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
      (WebCore):
      * platform/graphics/chromium/cc/CCThreadProxy.h:
      (CCThreadProxy):
      
      Source/WebKit/chromium:
      
      * tests/CCLayerTreeHostTest.cpp:
      (WTF::CCLayerTreeHostTestTickAnimationWhileBackgrounded::animateLayers):
      (WTF):
      (WTF::TEST_F):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116714 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a3c0f4d
    • michaeln@google.com's avatar
      Source/WebCore: [chromium] DomStorage events handling needs TLC (2) · db0afe97
      michaeln@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=85221
      Alter the StorageArea virtual interface such that the mutators no longer
      return old values. This is to allow implementations of the interface to operate
      more asynchronously.
      
      Reviewed by Adam Barth.
      
      No new tests. Existing tests cover this.
      
      * storage/StorageArea.h: Alter the interface so the mutators no longer return previous values
      * storage/StorageAreaImpl.cpp:
      (WebCore::StorageAreaImpl::disabledByPrivateBrowsingInFrame):  removed an unneeded PLATFORM(CHROMIUM) guard
      (WebCore::StorageAreaImpl::setItem): no longer return the old value
      (WebCore::StorageAreaImpl::removeItem): no longer return the old value
      (WebCore::StorageAreaImpl::clear): no longer return whether something was cleared
      * storage/StorageAreaImpl.h: match StorageArea's virtual interface
      
      Source/WebKit/chromium: [chromium] DomStorage events handling needs TLC (2)
      https://bugs.webkit.org/show_bug.cgi?id=85221
      Alter the WebStorageArea virtual interface such that the mutators no longer
      return old values. This is to allow implementations of the interface to operate
      more asynchronously.
      
      Also clean up from the last patch, remove support for the DEPRECATED event
      dispatching API.
      
      Reviewed by Adam Barth.
      
      * WebKit.gyp: delete three files indicated below
      * public/WebStorageArea.h:
      (WebKit::WebStorageArea::setItem): no longer returns the old value
      (WebKit::WebStorageArea::removeItem): no longer returns the old value
      (WebKit::WebStorageArea::clear): no longer returns a bool indicated if something was cleared
      * public/WebStorageEventDispatcher.h: removed the DEPRECATED instance methods
      * public/WebStorageNamespace.h: removed the DEPRECATED close() method
      * public/platform/WebKitPlatformSupport.h: removed the DEPRECATED dispatchStorageEvent() method
      * src/StorageAreaProxy.cpp: removed the DEPREACTED storageEvent() method
      (WebCore::StorageAreaProxy::setItem): no return value
      (WebCore::StorageAreaProxy::removeItem): no return value
      (WebCore::StorageAreaProxy::clear): no return value
      (WebCore::StorageAreaProxy::dispatchLocalStorageEvent): remove an early return thats no longer needed
      (WebCore::findPageWithSessionStorageNamespace): switched to passing pageGroup by ptr value instead of by name
      (WebCore::StorageAreaProxy::dispatchSessionStorageEvent): remove an early return thats no longer needed
      * src/StorageAreaProxy.h:
      (WebCore):
      (StorageAreaProxy):
      * src/StorageEventDispatcherImpl.cpp: Deleted the file.
      * src/StorageEventDispatcherImpl.h: Deleted the file.
      * src/WebStorageEventDispatcherImpl.cpp: Deleted the DEPRECATED instance methods.
      (WebKit::WebStorageEventDispatcher::dispatchLocalStorageEvent): use WebViewImpl::defaultPageGroup
      (WebKit::WebStorageEventDispatcher::dispatchSessionStorageEvent): use WebViewImpl::defaultPageGroup
      * src/WebStorageEventDispatcherImpl.h: Deleted the file.
      * src/WebViewImpl.cpp: added a static method to retrieve a ptr to the default page group,
      (WebKit::WebViewImpl::defaultPageGroup):
      * src/WebViewImpl.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116712 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db0afe97
    • bdakin@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=86158 · b7b5484d
      bdakin@apple.com authored
      Overlay scrollbars without layers never paint in overflow regions in 
      tiled drawing mode
      -and corresponding-
      <rdar://problem/11289546>
      
      Reviewed by Darin Adler.
      
      RenderLayers paint scrollbars that do not have their own layers by 
      running a second pass through the layer tree after the layer tree has 
      painted. This ensures that the scrollbars always paint on top of 
      content. However, this mechanism was relying on 
      FrameView::paintContents() as a choke-point for all painting to 
      trigger the second painting pass. That is not a reasonable choke-point 
      in tiled drawing, so this patch adds similar code to 
      RenderLayerBacking.
      
      Only opt into the second painting pass for scrollbars that do not have 
      their own layers.
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::paintOverflowControls):
              
      A layer that paints into its backing cannot return early here if it 
      has overlay scrollbars to paint.
      (WebCore::RenderLayer::paintLayer):
              
      This replicates code in FrameView::paintContents(). After painting the 
      owning layer, do a second pass if there are overlay scrollbars to 
      paint.
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::paintIntoLayer):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116711 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b7b5484d
    • andersca@apple.com's avatar
      Well, at least fixing the GTK+ build is something! · 29334a5d
      andersca@apple.com authored
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::insecurePluginVersionText):
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116710 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      29334a5d
    • andersca@apple.com's avatar
      Add insecurePluginVersionText stubs. · 1aff7be9
      andersca@apple.com authored
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::insecurePluginVersionText):
      (WebCore):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::insecurePluginVersionText):
      (WebCore):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::insecurePluginVersionText):
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116708 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1aff7be9