⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Oct 14, 2017:

6:45 PM Changeset in webkit [223328] by commit-queue@webkit.org
  • 10 edits
    3 deletes in trunk

Remove all Web Animations code
https://bugs.webkit.org/show_bug.cgi?id=178273

Patch by Antoine Quint <Antoine Quint> on 2017-10-14
Reviewed by Sam Weinig.

Source/WebCore:

We remove all existing code related to Web Animations which does not include any functionality,
only stubs. This leaves the build and runtime flags, we'll start a complete implementation from
scratch.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • animation/Animatable.idl: Removed.
  • animation/AnimationEffect.cpp: Removed.
  • animation/AnimationEffect.h: Removed.
  • animation/AnimationEffect.idl: Removed.
  • animation/AnimationTimeline.cpp: Removed.
  • animation/AnimationTimeline.h: Removed.
  • animation/AnimationTimeline.idl: Removed.
  • animation/DocumentAnimation.cpp: Removed.
  • animation/DocumentAnimation.h: Removed.
  • animation/DocumentAnimation.idl: Removed.
  • animation/DocumentTimeline.cpp: Removed.
  • animation/DocumentTimeline.h: Removed.
  • animation/DocumentTimeline.idl: Removed.
  • animation/KeyframeEffect.cpp: Removed.
  • animation/KeyframeEffect.h: Removed.
  • animation/KeyframeEffect.idl: Removed.
  • animation/WebAnimation.cpp: Removed.
  • animation/WebAnimation.h: Removed.
  • animation/WebAnimation.idl: Removed.
  • bindings/js/JSAnimationTimelineCustom.cpp: Removed.
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/WebCoreBuiltinNames.h:
  • dom/Element.cpp:

(WebCore::Element::getAnimations): Deleted.

  • dom/Element.h:
  • dom/Element.idl:

LayoutTests:

Remove the only existing Web Animations test.

  • webanimations/Document-expected.txt: Removed.
  • webanimations/Document.html: Removed.
6:28 PM Changeset in webkit [223327] by commit-queue@webkit.org
  • 246 edits
    2 copies
    8 moves
    10 adds
    4 deletes in trunk/LayoutTests

Resync tests up to c1716b039411090428e7073158b1aea081dafe71
https://bugs.webkit.org/show_bug.cgi?id=178241

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14
Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

  • resources/TestRepositories:
  • resources/resource-files.json:
  • web-platform-tests/IndexedDB/idb-binary-key-detached.htm:
  • web-platform-tests/IndexedDB/keypath-exceptions.htm:
  • web-platform-tests/WebCryptoAPI/digest/digest.js:

(run_test.):

  • web-platform-tests/XMLHttpRequest/abort-after-stop-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/abort-after-stop.htm: Removed.
  • web-platform-tests/XMLHttpRequest/event-error-order.sub-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/event-error-order.sub.html: Removed.
  • web-platform-tests/XMLHttpRequest/event-timeout-order-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/event-timeout-order.htm: Removed.
  • web-platform-tests/XMLHttpRequest/open-url-worker-origin-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm: Removed.
  • web-platform-tests/XMLHttpRequest/responsetype-expected.txt:
  • web-platform-tests/XMLHttpRequest/send-after-setting-document-domain-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-after-setting-document-domain.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-cors.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-basic.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-entity-body-basic-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-entity-body-basic.htm: Removed.
  • web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub-expected.txt: Removed.
  • web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub.htm: Removed.
  • web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt:
  • web-platform-tests/XMLHttpRequest/w3c-import.log:
  • web-platform-tests/background-fetch/interfaces-expected.txt:
  • web-platform-tests/background-fetch/interfaces.idl:
  • web-platform-tests/background-fetch/interfaces.worker-expected.txt:
  • web-platform-tests/background-fetch/interfaces.worker.js:
  • web-platform-tests/beacon/headers/header-content-type-expected.txt:
  • web-platform-tests/common/vendor-prefix.js: Removed.
  • web-platform-tests/common/w3c-import.log:
  • web-platform-tests/css/css-grid-1/abspos/w3c-import.log:
  • web-platform-tests/css/css-grid-1/support/w3c-import.log:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-004.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-005.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-box-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-004.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-005.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-006.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-007.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-008.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-009.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-010.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-011.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-004.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-005.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-006.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-007.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-008.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-009.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-010.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-011.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-004.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-005.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-006.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-007.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-008.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-009.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-002.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-003.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-004.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-005.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-006.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-001.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-box-pair-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-inherit-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-initial-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-none-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-notation-000.html:
  • web-platform-tests/css/css-shapes-1/shape-outside/values/support/parsing-utils.js:

(convertToPx):
(each):
(setupFonts):

  • web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html:
  • web-platform-tests/css/css-shapes-1/w3c-import.log:
  • web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html:
  • web-platform-tests/css/selectors4/w3c-import.log:
  • web-platform-tests/cssom/OWNERS:
  • web-platform-tests/cssom/getComputedStyle-pseudo-expected.txt:
  • web-platform-tests/cssom/getComputedStyle-pseudo.html:
  • web-platform-tests/cssom/style-sheet-interfaces-001-expected.txt:
  • web-platform-tests/cssom/style-sheet-interfaces-001.html:
  • web-platform-tests/cssom/w3c-import.log:
  • web-platform-tests/custom-elements/Document-createElement-expected.txt:
  • web-platform-tests/custom-elements/Document-createElement.html:
  • web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt:
  • web-platform-tests/custom-elements/w3c-import.log:
  • web-platform-tests/dom/events/Event-timestamp-safe-resolution.html:
  • web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
  • web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
  • web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
  • web-platform-tests/dom/nodes/Document-constructor.html:
  • web-platform-tests/dom/nodes/Element-matches-expected.txt:
  • web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt:
  • web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt:
  • web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt:
  • web-platform-tests/dom/nodes/selectors.js:
  • web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm:
  • web-platform-tests/eventsource/eventsource-constructor-non-same-origin-expected.txt:
  • web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm:
  • web-platform-tests/eventsource/resources/last-event-id.py:

(main):

  • web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin-expected.txt:
  • web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm:
  • web-platform-tests/fetch/api/basic/integrity-expected.txt:
  • web-platform-tests/fetch/api/basic/integrity-worker-expected.txt:
  • web-platform-tests/fetch/api/basic/integrity.js:

(integrity):

  • web-platform-tests/fetch/api/headers/headers-combine-expected.txt:
  • web-platform-tests/fetch/api/headers/headers-combine.html:
  • web-platform-tests/fetch/api/request/request-error-expected.txt:
  • web-platform-tests/fetch/api/request/request-error.js:
  • web-platform-tests/fetch/api/request/request-headers-expected.txt:
  • web-platform-tests/fetch/api/request/request-headers.html:
  • web-platform-tests/fetch/api/request/request-idl-expected.txt:
  • web-platform-tests/fetch/api/request/request-idl.html:
  • web-platform-tests/fetch/api/request/request-structure-expected.txt:
  • web-platform-tests/fetch/api/request/request-structure.html:
  • web-platform-tests/fetch/api/request/w3c-import.log:
  • web-platform-tests/fetch/api/response/response-clone-expected.txt:
  • web-platform-tests/fetch/api/response/response-init-001-expected.txt:
  • web-platform-tests/fetch/api/response/response-init-001.html:
  • web-platform-tests/fetch/api/response/w3c-import.log:
  • web-platform-tests/fonts/Ahem.ttf:
  • web-platform-tests/hr-time/idlharness-expected.txt:
  • web-platform-tests/hr-time/idlharness.html:
  • web-platform-tests/html/README.md:
  • web-platform-tests/html/browsers/browsing-the-web/history-traversal/w3c-import.log:
  • web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/w3c-import.log:
  • web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt:
  • web-platform-tests/html/dom/interfaces.html:
  • web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/media-elements/historical.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html:
  • web-platform-tests/html/semantics/embedded-content/media-elements/video_008.htm:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-progress-element/progress-expected.txt:
  • web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
  • web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt:
  • web-platform-tests/html/syntax/serializing-html-fragments/serializing.html:
  • web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt:
  • web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt:
  • web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt:
  • web-platform-tests/lint.whitelist:
  • web-platform-tests/mediacapture-fromelement/capture.html:
  • web-platform-tests/mediacapture-fromelement/creation.html:
  • web-platform-tests/mediacapture-fromelement/ended.html:
  • web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub.html:
  • web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html:
  • web-platform-tests/resource-timing/idlharness-expected.txt:
  • web-platform-tests/resource-timing/idlharness.html:
  • web-platform-tests/resources/idlharness.js:

(IdlInterface.prototype.test_to_json_operation):

  • web-platform-tests/resources/test/tests/api-tests-1.html:
  • web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html:
  • web-platform-tests/resources/testharness.js:
  • web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
  • web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html:
  • web-platform-tests/service-workers/service-worker/fetch-request-xhr.https.html:
  • web-platform-tests/service-workers/service-worker/navigation-preload/resources/redirect-scope.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/bytecheck-worker-imported-script.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/bytecheck-worker.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/fetch-event-redirect-iframe.html: Removed.
  • web-platform-tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html:
  • web-platform-tests/service-workers/service-worker/resources/navigation-redirect-out-scope.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope1.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope2.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker-imported-script.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker.py:

(main):

  • web-platform-tests/service-workers/service-worker/resources/w3c-import.log:
  • web-platform-tests/service-workers/service-worker/w3c-import.log:
  • web-platform-tests/shadow-dom/Extensions-to-Event-Interface-expected.txt:
  • web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html:
  • web-platform-tests/shadow-dom/event-inside-shadow-tree-expected.txt:
  • web-platform-tests/shadow-dom/event-with-related-target.html:
  • web-platform-tests/shadow-dom/leaktests/get-elements-expected.txt:
  • web-platform-tests/shadow-dom/resources/event-path-test-helpers.js:

(dispatchEventWithEventLog):

  • web-platform-tests/shadow-dom/slotchange-event-expected.txt:
  • web-platform-tests/shadow-dom/w3c-import.log:
  • web-platform-tests/streams/piping/general-expected.txt:
  • web-platform-tests/streams/readable-byte-streams/general.js:

(promise_test):

  • web-platform-tests/streams/readable-byte-streams/w3c-import.log:
  • web-platform-tests/streams/readable-streams/pipe-through-expected.txt: Removed.
  • web-platform-tests/tools/manifest/catalog/xhtml.dtd:
  • web-platform-tests/tools/manifest/sourcefile.py:

(SourceFile.references):
(SourceFile.spec_links):

  • web-platform-tests/tools/manifest/tests/test_sourcefile.py:

(test_relpath_normalized):
(test_reftest_url_whitespace):
(test_spec_links_whitespace):

  • web-platform-tests/tools/wptserve/tests/functional/test_handlers.py:

(TestDirectoryHandler.test_subdirectory_no_trailing_slash):

  • web-platform-tests/tools/wptserve/wptserve/handlers.py:

(DirectoryHandler.call):

  • web-platform-tests/update-built-tests.sh:
  • web-platform-tests/url/a-element-expected.txt:
  • web-platform-tests/url/a-element-xhtml-expected.txt:
  • web-platform-tests/url/url-constructor-expected.txt:
  • web-platform-tests/url/urltestdata.json:
  • web-platform-tests/webrtc/RTCCertificate.html:
  • web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
  • web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.html: Removed.
  • web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.html: Removed.
  • web-platform-tests/webrtc/RTCDTMFSender-ontonechange.html: Removed.
  • web-platform-tests/webrtc/RTCPeerConnection-addTrack.html: Removed.
  • web-platform-tests/webrtc/RTCPeerConnection-getStats.html: Removed.
  • web-platform-tests/webrtc/RTCPeerConnection-ontrack.html: Removed.
  • web-platform-tests/webrtc/RTCPeerConnection-removeTrack.html: Removed.
  • web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.html: Removed.
  • web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.html: Removed.
  • web-platform-tests/webrtc/historical-expected.txt:
  • web-platform-tests/webrtc/historical.html:
  • web-platform-tests/webrtc/simplecall-expected.txt:
  • web-platform-tests/webrtc/simplecall.html:
  • web-platform-tests/webrtc/w3c-import.log:

LayoutTests:

Rebasing expectations.

  • TestExpectations: Skipping unsupported tests.
  • http/wpt/fetch/request-clone-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
  • platform/mac-wk1/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt:
  • tests-options.json:
5:24 PM Changeset in webkit [223326] by Adrian Perez de Castro
  • 2 edits in trunk/Tools

[WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
https://bugs.webkit.org/show_bug.cgi?id=178212

Reviewed by Michael Catanzaro.

  • Scripts/update-webkit-libs-jhbuild:

(cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
cleaning it when "--wpe" is passed to the script.

4:57 PM Changeset in webkit [223325] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Implement Cache API support for WPE/GTK
https://bugs.webkit.org/show_bug.cgi?id=178316

Unreviewed.

Skip tests until feature is implemented.

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14

  • platform/gtk/TestExpectations:
  • platform/wpe/TestExpectations:
4:55 PM Changeset in webkit [223324] by commit-queue@webkit.org
  • 7 edits in trunk/LayoutTests

WebRTC test gardening
https://bugs.webkit.org/show_bug.cgi?id=178317

Unreviewed.

Updating expectations according dashboard.
Skipping tests for platforms that do not support WebRTC.

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14

  • TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/win/TestExpectations:
12:18 PM Changeset in webkit [223323] by Nikita Vasilyev
  • 2 edits in trunk/Source/WebInspectorUI

REGRESSION (r223310): Web Inspector: Class list container is transparent and unreadable
https://bugs.webkit.org/show_bug.cgi?id=178311

Reviewed by Devin Rousso.

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:

(.sidebar > .panel.details.css-style > .content ~ .class-list-container):
Fix 1px hole below the class container.

12:05 PM Changeset in webkit [223322] by Matt Baker
  • 8 edits in trunk/Source/WebInspectorUI

Web Inspector: Canvas tab: recordings should have a unique name
https://bugs.webkit.org/show_bug.cgi?id=178188
<rdar://problem/34943364>

Reviewed by Devin Rousso.

  • Localizations/en.lproj/localizedStrings.js:

New format string "Recording %d".

  • UserInterface/Base/FileUtilities.js:

(WI.loadDataFromFile):
Pass chosen filename to callback.

  • UserInterface/Controllers/CanvasManager.js:

(WI.CanvasManager.prototype.recordingFinished):
Create a unique name for the recording.

  • UserInterface/Models/Recording.js:

(WI.Recording):
(WI.Recording.fromPayload):
(WI.Recording.prototype.get displayName):
(WI.Recording.prototype.createDisplayName):

  • UserInterface/Views/RecordingContentView.js:

(WI.RecordingContentView.prototype.get saveData):
Use encodeURI so that special characters can be used in filenames, and
to be consistent with other saveData implementations.

  • UserInterface/Views/RecordingNavigationSidebarPanel.js:

(WI.RecordingNavigationSidebarPanel.prototype.set recording):
(WI.RecordingNavigationSidebarPanel.prototype._importNavigationItemClicked):
Drive-by fix: wait until actions are resolved before updating UI.

  • UserInterface/Views/RecordingTabContentView.js:

(WI.RecordingTabContentView.prototype._navigationSidebarImport):
Try to use the imported filename as the recording name. If the name
collides with that of another imported recording, append a unique suffix.

11:56 AM Changeset in webkit [223321] by webkit@devinrousso.com
  • 16 edits
    2 adds in trunk

Web Inspector: provide a way to enable/disable event listeners
https://bugs.webkit.org/show_bug.cgi?id=177451

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

  • inspector/protocol/DOM.json:

Add setEventListenerDisabled command that enables/disables a specific event listener
during event dispatch. When a disabled event listener is fired, the listener's callback will
not be called.

Source/WebCore:

Test: inspector/dom/setEventListenerDisabled.html

  • dom/EventTarget.cpp:

(WebCore::EventTarget::fireEventListeners):
Add InspectorInstrumentation call to isEventListenerDisabled. If true, the event listener's
callback will not be called.

  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::discardBindings):
(WebCore::InspectorDOMAgent::getEventListenersForNode):
(WebCore::InspectorDOMAgent::setEventListenerDisabled):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::willRemoveEventListener):
(WebCore::InspectorDOMAgent::isEventListenerDisabled):
Introduce a mapping of EventListener* to InspectorEventListener, a struct for uniquely
identifying event listeners so they can be referenced from the frontend. We only add items
to this mapping when getEventListenersForNode is called, as that is when EventListener
data is sent to the frontend. This allows us to defer creating an Inspector "mirror" object
for each EventListener until it is needed. Items are removed whenever an event listener is
removed or when the document changes.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::isEventListenerDisabled):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willRemoveEventListenerImpl):
(WebCore::InspectorInstrumentation::isEventListenerDisabledImpl):
Pass additional parameters to InspectorDOMAgent so it can determine if the event listener
actually exists. If not, don't dispatch an event to the frontend as nothing will change.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Controllers/DOMTreeManager.js:

(WI.DOMTreeManager.prototype.setEventListenerDisabled):

  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js:

(WI.DOMNodeDetailsSidebarPanel.prototype.attached):
(WI.DOMNodeDetailsSidebarPanel.prototype.detached):
(WI.DOMNodeDetailsSidebarPanel.prototype._eventListenersChanged):
(WI.DOMNodeDetailsSidebarPanel.prototype.addEventListeners): Deleted.
(WI.DOMNodeDetailsSidebarPanel.prototype.removeEventListeners): Deleted.
Listen for WI.DOMNode.Event.EventListenersChanged on all instances of WI.DOMNode, since we
will still want to refresh the event listeners section in the event that an event listener
is removed from a parent node.

  • UserInterface/Views/EventListenerSectionGroup.js:

(WI.EventListenerSectionGroup):
(WI.EventListenerSectionGroup.prototype._eventText):
(WI.EventListenerSectionGroup.prototype._nodeTextOrLink):
(WI.EventListenerSectionGroup.prototype._createDisabledToggleElement):
(WI.EventListenerSectionGroup.prototype._createDisabledToggleElement.updateTitle):

  • UserInterface/Views/EventListenerSectionGroup.css:

(.event-listener-section > .content input[type="checkbox"]):

  • UserInterface/Views/DetailsSectionSimpleRow.js:

(WI.DetailsSectionSimpleRow.prototype.get label):
(WI.DetailsSectionSimpleRow.prototype.set label):

LayoutTests:

  • inspector/dom/setEventListenerDisabled-expected.txt: Added.
  • inspector/dom/setEventListenerDisabled.html: Added.
9:56 AM Changeset in webkit [223320] by pvollan@apple.com
  • 2 edits in trunk/LayoutTests

Mark fast/frames/frame-unload-navigate-and-setTimeout-assert-fail.html as a flaky crash on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178309

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:14 AM Changeset in webkit [223319] by pvollan@apple.com
  • 2 edits in trunk/LayoutTests

Mark fast/images/animated-gif-scrolling-crash.html as flaky on Windows.
https://bugs.webkit.org/show_bug.cgi?id=178307

Unreviewed test gardening.

  • platform/win/TestExpectations:
8:35 AM Changeset in webkit [223318] by Yusuke Suzuki
  • 35 edits
    2 adds in trunk

Reland "Add Above/Below comparisons for UInt32 patterns"
https://bugs.webkit.org/show_bug.cgi?id=177281

Reviewed by Saam Barati.

JSTests:

  • stress/uint32-comparison-jump.js: Added.

(shouldBe):
(above):
(aboveOrEqual):
(below):
(belowOrEqual):
(notAbove):
(notAboveOrEqual):
(notBelow):
(notBelowOrEqual):

  • stress/uint32-comparison.js: Added.

(shouldBe):
(above):
(aboveOrEqual):
(below):
(belowOrEqual):
(aboveTest):
(aboveOrEqualTest):
(belowTest):
(belowOrEqualTest):

Source/JavaScriptCore:

We reland this patch without DFGStrengthReduction change to see what causes
regression in the iOS bot.

Sometimes, we would like to have UInt32 operations in JS. While VM does
not support UInt32 nicely, VM supports efficient Int32 operations. As long
as signedness does not matter, we can just perform Int32 operations instead
and recognize its bit pattern as UInt32.

But of course, some operations respect signedness. The most frequently
used one is comparison. Octane/zlib performs UInt32 comparison by performing
val >>> 0. It emits op_urshift and op_unsigned. op_urshift produces
UInt32 in Int32 form. And op_unsigned will generate Double value if
the generated Int32 is < 0 (which should be UInt32).

There is a chance for optimization. The given code pattern is the following.

op_unsigned(op_urshift(@1)) lessThan:< op_unsigned(op_urshift(@2))

This can be converted to the following.

op_urshift(@1) below:< op_urshift(@2)

The above conversion is nice since

  1. We can avoid op_unsigned. This could be unsignedness check in DFG. Since

this check depends on the value of Int32, dropping this check is not as easy as
removing Int32 edge filters.

  1. We can perform unsigned comparison in Int32 form. We do not need to convert

them to DoubleRep.

Since the above comparison exists in Octane/zlib's *super* hot path, dropping
op_unsigned offers huge win.

At first, my patch attempts to convert the above thing in DFG pipeline.
However it poses several problems.

  1. MovHint is not well removed. It makes UInt32ToNumber (which is for op_unsigned) live.
  2. UInt32ToNumber could cause an OSR exit. So if we have the following nodes,

2: UInt32ToNumber(@0)
3: MovHint(@2, xxx)
4: UInt32ToNumber(@1)
5: MovHint(@1, xxx)

we could drop @5's MovHint. But @3 is difficult since @4 can exit.

So, instead, we start introducing a simple optimization in the bytecode compiler.
It performs pattern matching for op_urshift and comparison to drop op_unsigned.
We adds op_below and op_above families to bytecodes. They only accept Int32 and
perform unsigned comparison.

This offers 4% performance improvement in Octane/zlib.

baseline patched

zlib x2 431.07483+-16.28434 414.33407+-9.38375 might be 1.0404x faster

  • bytecode/BytecodeDumper.cpp:

(JSC::BytecodeDumper<Block>::printCompareJump):
(JSC::BytecodeDumper<Block>::dumpBytecode):

  • bytecode/BytecodeDumper.h:
  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/Opcode.h:

(JSC::isBranch):

  • bytecode/PreciseJumpTargetsInlines.h:

(JSC::extractStoredJumpTargetsForBytecodeOffset):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitJumpIfTrue):
(JSC::BytecodeGenerator::emitJumpIfFalse):

  • bytecompiler/NodesCodegen.cpp:

(JSC::BinaryOpNode::emitBytecode):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGIntegerRangeOptimizationPhase.cpp:
  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCompareUnsigned):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGValidate.cpp:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareBelow):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareBelowEq):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:
  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_below):
(JSC::JIT::emit_op_beloweq):
(JSC::JIT::emit_op_jbelow):
(JSC::JIT::emit_op_jbeloweq):
(JSC::JIT::emit_compareUnsignedAndJump):
(JSC::JIT::emit_compareUnsigned):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_compareUnsignedAndJump):
(JSC::JIT::emit_compareUnsigned):

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • parser/Nodes.h:

(JSC::ExpressionNode::isBinaryOpNode const):

8:07 AM Changeset in webkit [223317] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Remove HashCountedSet's copyToVector functions
https://bugs.webkit.org/show_bug.cgi?id=178215

Patch by Sam Weinig <sam@webkit.org> on 2017-10-14
Reviewed by Daniel Bates.

Source/WebCore:

  • page/DeviceController.cpp:

(WebCore::DeviceController::dispatchDeviceEvent):
(WebCore::DeviceController::fireDeviceEvent):

Replace use of HashCountedSet's copyToVector functions with copyToVector(hashCountedSet.values()).

Source/WTF:

  • wtf/HashCountedSet.h:

(WTF::copyToVector): Deleted.

They are replaced by either copyToVector(hashCountedSet) or copyToVector(hashCountedSet.values())

Oct 13, 2017:

9:45 PM Changeset in webkit [223316] by commit-queue@webkit.org
  • 28 edits in trunk/Source/WTF

Adopt type trait template aliases everywhere in WTF
https://bugs.webkit.org/show_bug.cgi?id=178299

Patch by Sam Weinig <sam@webkit.org> on 2017-10-13
Reviewed by Yusuke Suzuki.

Adopt type trait template aliases (e.g. replace 'typename std::make_unsigned<Source>::type'
with 'std::make_unsigned_t<Source>'). Also adopt using over typedef consistently.

  • wtf/Atomics.h:
  • wtf/CagedUniquePtr.h:
  • wtf/CheckedArithmetic.h:
  • wtf/CompletionHandler.h:
  • wtf/Function.h:
  • wtf/HashCountedSet.h:
  • wtf/HashFunctions.h:
  • wtf/HashMap.h:
  • wtf/HashSet.h:
  • wtf/HashTable.h:
  • wtf/HashTraits.h:
  • wtf/IndexedContainerIterator.h:
  • wtf/IteratorAdaptors.h:
  • wtf/KeyValuePair.h:
  • wtf/LEBDecoder.h:
  • wtf/ListHashSet.h:
  • wtf/MathExtras.h:
  • wtf/NeverDestroyed.h:
  • wtf/OptionSet.h:
  • wtf/RetainPtr.h:
  • wtf/SizeLimits.cpp:
  • wtf/StdLibExtras.h:
  • wtf/SystemFree.h:
  • wtf/ThreadSpecific.h:
  • wtf/TypeCasts.h:
  • wtf/Vector.h:
  • wtf/text/IntegerToStringConversion.h:
7:38 PM Changeset in webkit [223315] by jer.noble@apple.com
  • 7 edits
    1 add in trunk/Source

Performance: Skip texture upload if source image and destination texture haven't changed
https://bugs.webkit.org/show_bug.cgi?id=178254
<rdar://problem/34968181>

Reviewed by Dean Jackson.

Source/WebCore:

Update GraphicsContext3D to track which texture is bound to which texture unit, and also to
track when those bound textures have their backing stores modified. This new "seed" value
will be used to determine whether a given texture which has previously had image data
uploaded to it needs to be re-updated.

In VideoTextureCopierCV, track whether the texture's seed changed, whether the IOSurface is
the same, whether the IOSurface's seed has changed, and whether the "flipY" parameter
changed since the last time the copier was asked to upload to the texture.

  • platform/graphics/GraphicsContext3D.h:

(WebCore::GraphicsContext3D::textureSeed):
(WebCore::GraphicsContext3D::GraphicsContext3DState::currentBoundTexture):
(WebCore::GraphicsContext3D::GraphicsContext3DState::boundTexture):
(WebCore::GraphicsContext3D::GraphicsContext3DState::setBoundTexture):

  • platform/graphics/cv/VideoTextureCopierCV.cpp:

(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):

  • platform/graphics/cv/VideoTextureCopierCV.h:

(WebCore::VideoTextureCopierCV::lastTextureSeed):

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::prepareTexture):
(WebCore::GraphicsContext3D::bindTexture):
(WebCore::GraphicsContext3D::texStorage2D):
(WebCore::GraphicsContext3D::texStorage3D):
(WebCore::GraphicsContext3D::framebufferTexture2D):
(WebCore::GraphicsContext3D::texSubImage2D):
(WebCore::GraphicsContext3D::compressedTexImage2D):
(WebCore::GraphicsContext3D::compressedTexSubImage2D):
(WebCore::GraphicsContext3D::createTexture):
(WebCore::GraphicsContext3D::deleteTexture):
(WebCore::GraphicsContext3D::texImage2DDirect):

Source/WTF:

Add a new class, UnsafePointer, for safely holding pointers to objects with uncontrolled lifetimes.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/UnsafePointer.h: Added.

(WTF::UnsafePointer::UnsafePointer):
(WTF::UnsafePointer::operator== const):
(WTF::UnsafePointer::operator!= const):
(WTF::UnsafePointer::operator bool const):
(WTF::operator==):
(WTF::operator!=):

5:50 PM Changeset in webkit [223314] by pvollan@apple.com
  • 10 edits in trunk/Source

[Win] When built with VS2017, MiniBrowser crashes on startup.
https://bugs.webkit.org/show_bug.cgi?id=175209

Reviewed by Daniel Bates.

Source/WebCore:

Generated StaticStringImpl objects are not initialized compile-time with VS2017.
When compiling with VS2017, the global, static, StaticStringImpl objects needs to
be defined with the constexpr specifier, in order for the objects to be initialized
at compile time. Since the StaticStringImpl objects will be const then, we need to
be able to create an AtomicString object from a const StaticStringImpl object.
This constructor has been added to the AtomicString class.

No new tests, covered by existing tests.

  • bindings/scripts/StaticString.pm:

(GenerateStrings):
(GenerateStringAsserts):

  • dom/QualifiedName.cpp:

(WebCore::createQualifiedName):

  • dom/QualifiedName.h:
  • dom/make_names.pl:

(printDefinitions):

Source/WTF:

Add AtomicString(const StaticStringImpl*) constructor. This is needed since
this patch adds constexpr to the static, global StaticStringImpl objects
generated in WebCore/bindings/scripts/StaticString.pm.

  • wtf/text/AtomicString.h:

(WTF::AtomicString::AtomicString):

  • wtf/text/AtomicStringImpl.cpp:

(WTF::addStatic):
(WTF::AtomicStringImpl::add):

  • wtf/text/AtomicStringImpl.h:
  • wtf/text/StringImpl.h:

(WTF::StringImpl::assertHashIsCorrect const):
(WTF::StringImpl::assertHashIsCorrect): Deleted.

5:44 PM Changeset in webkit [223313] by Brent Fulgham
  • 3 edits
    2 adds in trunk

Protect FrameView during style calculations
https://bugs.webkit.org/show_bug.cgi?id=178300
<rdar://problem/34869329>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Protect the FrameView during layout and style updates in case arbitrary script
is run that might clear it.

Test: fast/html/marquee-reparent-check.html

  • page/FrameView.cpp:

(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):

LayoutTests:

  • fast/html/marquee-reparent-check-expected.txt: Added.
  • fast/html/marquee-reparent-check.html: Added.
5:42 PM Changeset in webkit [223312] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Mark http/tests/cache-storage/cache-clearing-origin.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=178305

Unreviewed test gardening.

  • platform/mac/TestExpectations:
5:25 PM Changeset in webkit [223311] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

http/tests/cache-storage/cache-clearing-origin.https.html is flaky on Sierra
https://bugs.webkit.org/show_bug.cgi?id=178303

Unreviewed.

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13

5:05 PM Changeset in webkit [223310] by webkit@devinrousso.com
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: make split console full width of view
https://bugs.webkit.org/show_bug.cgi?id=176635

Reviewed by Timothy Hatcher.

  • UserInterface/Main.html:
  • UserInterface/Views/Main.css:

(#main):
(#content):

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:

(.sidebar > .panel.details.css-style > .content ~ :matches(.options-container, .class-list-container)):
(.sidebar > .panel.details.css-style > .content ~ .options-container):

5:02 PM Changeset in webkit [223309] by pvollan@apple.com
  • 2 edits in trunk/Source/WebCore

Crash under ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData
https://bugs.webkit.org/show_bug.cgi?id=178279

Reviewed by Alex Christensen.

Check if the connection is valid before calling ResourceHandleClient::didSendData.

No new tests, covered by existing tests.

  • platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):

4:52 PM Changeset in webkit [223308] by webkit@devinrousso.com
  • 64 edits in trunk/Source/WebInspectorUI

Web Inspector: fix ESLint errors
https://bugs.webkit.org/show_bug.cgi?id=175065

Reviewed by Joseph Pecoraro.

Removed trailing whitespace, extra parenthesis, and some unnecessary escape characters.
Added missing semicolons, spacing around default values for parameters, and changed == to
=== where applicable.

Specific changes to each file were removed for brevity.

  • .eslintrc:

Alphabetize each list of global variables and add some missing utility functions.

  • UserInterface/Base/EventListener.js:
  • UserInterface/Base/EventListenerSet.js:
  • UserInterface/Base/Main.js:
  • UserInterface/Base/Setting.js:
  • UserInterface/Base/TextUtilities.js:
  • UserInterface/Base/URLUtilities.js:
  • UserInterface/Base/Utilities.js:
  • UserInterface/Base/YieldableTask.js:
  • UserInterface/Controllers/AppControllerBase.js:
  • UserInterface/Controllers/CanvasManager.js:
  • UserInterface/Controllers/CodeMirrorCompletionController.js:
  • UserInterface/Controllers/DOMDebuggerManager.js:
  • UserInterface/Controllers/JavaScriptRuntimeCompletionProvider.js:
  • UserInterface/Controllers/RuntimeManager.js:
  • UserInterface/Controllers/SourceMapManager.js:
  • UserInterface/Debug/DebugContentView.js:
  • UserInterface/Debug/UncaughtExceptionReporter.js:
  • UserInterface/Models/CSSKeywordCompletions.js:
  • UserInterface/Models/DOMNode.js:
  • UserInterface/Models/DOMNodeStyles.js:
  • UserInterface/Models/KeyboardShortcut.js:
  • UserInterface/Models/ProfileNode.js:
  • UserInterface/Models/Resource.js:
  • UserInterface/Models/ResourceCollection.js:
  • UserInterface/Models/Script.js:
  • UserInterface/Models/ScriptSyntaxTree.js:
  • UserInterface/Models/ScriptTimelineRecord.js:
  • UserInterface/Protocol/Connection.js:
  • UserInterface/Test/FrontendTestHarness.js:
  • UserInterface/Test/TestHarness.js:
  • UserInterface/Views/CSSStyleDeclarationSection.js:
  • UserInterface/Views/ChartDetailsSectionRow.js:
  • UserInterface/Views/CodeMirrorAdditions.js:
  • UserInterface/Views/CodeMirrorFormatters.js:
  • UserInterface/Views/CodeMirrorRegexMode.js:
  • UserInterface/Views/ContentBrowserTabContentView.js:
  • UserInterface/Views/DataGrid.js:
  • UserInterface/Views/DataGridNode.js:
  • UserInterface/Views/FindBanner.js:
  • UserInterface/Views/GroupNavigationItem.js:
  • UserInterface/Views/HierarchicalPathNavigationItem.js:
  • UserInterface/Views/NetworkTableContentView.js:
  • UserInterface/Views/NetworkTimelineView.js:
  • UserInterface/Views/ObjectTreePropertyTreeElement.js:
  • UserInterface/Views/ObjectTreeView.js:
  • UserInterface/Views/RecordingContentView.js:
  • UserInterface/Views/RenderingFrameTimelineOverviewGraph.js:
  • UserInterface/Views/ResourceCookiesContentView.js:
  • UserInterface/Views/ResourceDetailsSection.js:
  • UserInterface/Views/ResourceHeadersContentView.js:
  • UserInterface/Views/ResourceTimelineDataGridNode.js:
  • UserInterface/Views/SettingEditor.js:
  • UserInterface/Views/Sidebar.js:
  • UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
  • UserInterface/Views/Table.js:
  • UserInterface/Views/TextEditor.js:
  • UserInterface/Views/TimelineDataGridNode.js:
  • UserInterface/Views/TreeElement.js:
  • UserInterface/Views/TreeOutline.js:
  • UserInterface/Views/WebSocketDataGridNode.js:
  • UserInterface/Workers/Formatter/EsprimaFormatter.js:
  • UserInterface/Workers/Formatter/FormatterWorker.js:
4:28 PM Changeset in webkit [223307] by Brent Fulgham
  • 6 edits
    5 adds in trunk

CMD+R / CMD+Q keyboard shortcuts are treated as user interaction with page
https://bugs.webkit.org/show_bug.cgi?id=178183
<rdar://problem/33327730>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Key events are granted user interaction credit (in terms of updating the last time of user
interaction), even if the key event was not handled. Instead, we should defer granting
access until the key event has been handled.

Add a new default constructor argument to UserGestureIndicator to be used when handling key
events, so we can delay a decision about whether to grant ResourceLoadStatistics
'hasHadUserInteraction' until we confirm that the event was handled by the page.

This change does not affect other aspects of user interaction.

Tests: fast/events

http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown.html
http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown.html

  • dom/UserGestureIndicator.cpp:

(WebCore::UserGestureIndicator::UserGestureIndicator): Add check based on constructor argument.
Also: Drive by fix to avoid calling 'currentToken' when not on the main thread.

  • dom/UserGestureIndicator.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::keyEvent): If the key event was handled, grant user interaction credit
for ResourceLoadStatistics processing.
(WebCore::EventHandler::internalKeyEvent): Use the new UserGestureIndicator constructor argument.

LayoutTests:

  • http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown-expected.txt: Added.
  • http/tests/resourceLoadStatistics/prevalent-resource-handled-keydown.html: Added.
  • http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown-expected.txt: Added.
  • http/tests/resourceLoadStatistics/prevalent-resource-unhandled-keydown.html: Added.
  • http/tests/resourceLoadStatistics/resources: Added.
  • http/tests/resourceLoadStatistics/resources/onclick.html: Added.
  • platform/ios/TestExpectations: Skip tests that require 'keyDown' support, since this is not available on iOS.
4:05 PM DOM Security Mitigation.key attached to October 2017 Meeting by rniwa@webkit.org
DOM Security Mitigation Slides
4:04 PM clipboard-talk.key attached to October 2017 Meeting by rniwa@webkit.org
Clipboard Talk Slides
3:36 PM Changeset in webkit [223306] by Chris Dumez
  • 4 edits in trunk

DOMTokenList shouldn't add empty attributes
https://bugs.webkit.org/show_bug.cgi?id=178280

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline web-platform-test now that all checks are passing.

  • web-platform-tests/dom/nodes/Element-classlist-expected.txt:

Source/WebCore:

DOMTokenList shouldn't add empty attributes after:

Firefox and Chrome follow the latest spec.

No new tests, updating existing test.

  • html/DOMTokenList.cpp:

(WebCore::DOMTokenList::updateAssociatedAttributeFromTokens):
Implement the first step of https://dom.spec.whatwg.org/#concept-dtl-update

3:33 PM October 2017 Meeting edited by Jon Davis
(diff)
3:26 PM Changeset in webkit [223305] by jmarcell@apple.com
  • 5 edits in branches/safari-604-branch/Source/WebCore

Apply patch. rdar://problem/34891297

Cherry-pick of r222803 <rdar://problem/34745579>

2017-10-03 Jer Noble <jer.noble@apple.com>

Implement quality-of-service tiers in WebCoreDecompressionSession
https://bugs.webkit.org/show_bug.cgi?id=177769

Reviewed by Dean Jackson.

VTDecompressionSession will suggest quality-of-service tiers to be used when decompression
can't keep up with playback speed. Use a simple exponential-moving-average heuristic to
determine when to move up and down the tiers.

Drive-by fix: When frames are so late that they miss the display deadline, mark them as
dropped rather than just delayed.

  • platform/graphics/cocoa/WebCoreDecompressionSession.h:
  • platform/graphics/cocoa/WebCoreDecompressionSession.mm: (WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample): (WebCore::WebCoreDecompressionSession::decodeSample): (WebCore::WebCoreDecompressionSession::handleDecompressionOutput): (WebCore::WebCoreDecompressionSession::automaticDequeue): (WebCore::WebCoreDecompressionSession::enqueueDecodedSample): (WebCore::WebCoreDecompressionSession::resetQosTier): (WebCore::WebCoreDecompressionSession::increaseQosTier): (WebCore::WebCoreDecompressionSession::decreaseQosTier): (WebCore::WebCoreDecompressionSession::updateQosWithDecodeTimeStatistics):
  • platform/cocoa/VideoToolboxSoftLink.cpp:
  • platform/cocoa/VideoToolboxSoftLink.h:
3:26 PM Changeset in webkit [223304] by jmarcell@apple.com
  • 6 edits in branches/safari-604-branch/Source/WebCore

Apply patch. rdar://problem/34891297

Partial cherry-pick of r222225 <rdar://problem/34745579>, only the changes to WebCoreDecompressionSession.

2017-09-19 Jer Noble <jer.noble@apple.com>

[Cocoa] Add an ImageDecoder subclass backed by AVFoundation
https://bugs.webkit.org/show_bug.cgi?id=176825

Reviewed by Eric Carlson.

Modify WebCoreDecompressionSession so that it can emit frames which have been converted from
YUV -> RGB as part of the decode operation. Also, add a synchronous decoding operation
method, for use in ImageDecoderAVFObjC.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureDecompressionSession):
  • platform/graphics/cocoa/WebCoreDecompressionSession.h: (WebCore::WebCoreDecompressionSession::createOpenGL): (WebCore::WebCoreDecompressionSession::createRGB):
  • platform/graphics/cocoa/WebCoreDecompressionSession.mm: (WebCore::WebCoreDecompressionSession::WebCoreDecompressionSession): (WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample): (WebCore::WebCoreDecompressionSession::decodeSample): (WebCore::WebCoreDecompressionSession::decodeSampleSync):
3:07 PM Changeset in webkit [223303] by jmarcell@apple.com
  • 7 edits in branches/safari-604-branch/Source

Versioning.

3:06 PM Changeset in webkit [223302] by jmarcell@apple.com
  • 1 copy in tags/Safari-604.4.3

Tag Safari-604.4.3.

3:03 PM Changeset in webkit [223301] by Adrian Perez de Castro
  • 2 edits in trunk/Tools

[WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
https://bugs.webkit.org/show_bug.cgi?id=178283

Reviewed by Žan Doberšek.

  • wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise

compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.

2:58 PM Changeset in webkit [223300] by Matt Lewis
  • 2 edits in trunk/LayoutTests

Marked http/tests/inspector/network/resource-sizes-memory-cache.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177687

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
2:04 PM October 2017 Meeting edited by Jon Davis
(diff)
2:04 PM NextGenerationLayoutAndRendering created by Jon Davis
1:45 PM October 2017 Meeting edited by Jon Davis
(diff)
1:31 PM Changeset in webkit [223299] by commit-queue@webkit.org
  • 16 edits in trunk

Implement listing origins for which CacheStorage is storing data
https://bugs.webkit.org/show_bug.cgi?id=178236

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
Reviewed by Chris Dumez.

Source/WebKit:

Cache storage is split on per-origin folders which name is obfuscated through salting.
To retrieve the origin for each folder, an origin file is now stored within each folder.
This file contains the actual origin.

Adding support to get the list of origin by iterating through each folder and
getting the actual origin by reading the content of the 'origin' file.

Adding C API for WebKitTestRunner.

  • NetworkProcess/cache/CacheStorageEngine.cpp:

(WebKit::CacheStorage::Engine::fetchEntries):
(WebKit::CacheStorage::ReadOriginsTaskCounter::create):
(WebKit::CacheStorage::ReadOriginsTaskCounter::~ReadOriginsTaskCounter):
(WebKit::CacheStorage::ReadOriginsTaskCounter::addOrigin):
(WebKit::CacheStorage::ReadOriginsTaskCounter::ReadOriginsTaskCounter):

  • NetworkProcess/cache/CacheStorageEngine.h:
  • NetworkProcess/cache/CacheStorageEngineCaches.cpp:

(WebKit::CacheStorage::cachesOriginFilename):
(WebKit::CacheStorage::Caches::retrieveOriginFromDirectory):
(WebKit::CacheStorage::Caches::Caches):
(WebKit::CacheStorage::Caches::storeOrigin):
(WebKit::CacheStorage::Caches::readOrigin):
(WebKit::CacheStorage::Caches::initialize):

  • NetworkProcess/cache/CacheStorageEngineCaches.h:

(WebKit::CacheStorage::Caches::origin const):

  • UIProcess/API/C/WKWebsiteDataStoreRef.cpp:

(WKWebsiteDataStoreGetFetchCacheOrigins):

  • UIProcess/API/C/WKWebsiteDataStoreRef.h:

Tools:

Adding hasDOMCache API for checking whether origin is storing data through Cache API.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::hasDOMCache):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
(WTR::fetchCacheOriginsCallback):
(WTR::TestController::hasDOMCache):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

LayoutTests:

  • http/tests/cache-storage/cache-clearing-origin.https.html:
1:24 PM Changeset in webkit [223298] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix; wrap more functions in USE(IOSURFACE) so that
they do not generate "unused function" errors.

  • platform/graphics/cv/VideoTextureCopierCV.cpp:
1:14 PM October 2017 Meeting edited by Jon Davis
(diff)
1:13 PM WebKitGoalsFor2018 created by Jon Davis
1:12 PM October 2017 Meeting edited by Jon Davis
(diff)
1:08 PM October 2017 Meeting edited by Jon Davis
(diff)
1:06 PM OptimizingzlibforARM created by Jon Davis
12:55 PM Changeset in webkit [223297] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

One last unreviewed build fix; since the IOSurface APIs don't exist at
all on the simulator, just wrap the entirety of the implementation of
copyImageToPlatformTexture() in a #if USE(IOSURFACE) check.

  • platform/graphics/cv/VideoTextureCopierCV.cpp:

(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):

12:08 PM WebKitGTK/2.18.x edited by Adrian Perez de Castro
(diff)
12:04 PM Changeset in webkit [223296] by Adrian Perez de Castro
  • 3 edits
    2 adds in trunk/Source/WebCore/PAL

[WPE][GTK] Provide an implementation of PAL::logLevelString()
https://bugs.webkit.org/show_bug.cgi?id=178263

Reviewed by Carlos Alberto Lopez Perez.

Provide an implementation of PAL::logLevelString() which picks the value from the
WEBCORE_DEBUG environment variable. Logging of notImplemented() calls is always enabled,
which is the same behavior as in WebCore::logLevelString().

  • pal/PlatformGTK.cmake: Add LoggingUnix.cpp to the list of sources.
  • pal/PlatformWPE.cmake: Add LoggingUnix.cpp to the list of sources.
  • pal/unix/LoggingUnix.cpp: Added.

(PAL::logLevelString):

11:55 AM Changeset in webkit [223295] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for the previous build fix; use the right PAL path for IOSurfaceSPI.h.

  • platform/graphics/cv/VideoTextureCopierCV.cpp:
11:48 AM Changeset in webkit [223294] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebCore

Unreviewed build fix; add definitions for IOSurface methods missing on some platforms.

Source/WebCore:

  • platform/graphics/cv/VideoTextureCopierCV.cpp:

Source/WebCore/PAL:

  • pal/spi/cocoa/IOSurfaceSPI.h:
11:47 AM October 2017 Meeting edited by Simon Fraser
(diff)
11:45 AM October 2017 Meeting edited by Simon Fraser
(diff)
11:45 AM October 2017 Meeting edited by Simon Fraser
(diff)
11:43 AM Changeset in webkit [223293] by jmarcell@apple.com
  • 2 edits
    2 adds in tags/Safari-605.1.10.1/Source/WebCore/PAL

Cherry-pick r223241. rdar://problem/34974253

11:42 AM Changeset in webkit [223292] by jmarcell@apple.com
  • 7 edits in tags/Safari-605.1.10.1/Source

Versioning.

11:23 AM Changeset in webkit [223291] by achristensen@apple.com
  • 7 edits
    1 delete in trunk

Remove Editor::simplifyMarkup
https://bugs.webkit.org/show_bug.cgi?id=178271

Reviewed by Wenson Hsieh.

Source/WebCore:

An API test became flaky, and it turns out this isn't used anywhere, so let's remove it!
It was used in Mountain Lion, Mavericks, and Yosemite, but not since then.
See <rdar://problem/10726177>

  • editing/Editor.cpp:

(WebCore::Editor::simplifyMarkup): Deleted.

  • editing/Editor.h:

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:

(-[WebView _simplifyMarkup:endNode:]):

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
11:17 AM Changeset in webkit [223290] by jmarcell@apple.com
  • 1 copy in tags/Safari-605.1.10.1

New tag.

11:16 AM Changeset in webkit [223289] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix; forward declare the type of IOSurfaceRef.

  • platform/cocoa/CoreVideoSoftLink.cpp:
  • platform/cocoa/CoreVideoSoftLink.h:
11:03 AM Changeset in webkit [223288] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

http/tests/cache-storage/cache-origins.https.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=178266

Unreviewed.

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13

  • http/tests/cache-storage/cache-clearing-origin.https.html:
10:41 AM Changeset in webkit [223287] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix; add soft link macros for newly called CoreVideo methods.

  • platform/cocoa/CoreVideoSoftLink.cpp:
  • platform/cocoa/CoreVideoSoftLink.h:
10:30 AM Changeset in webkit [223286] by achristensen@apple.com
  • 3 edits in trunk/Source/WebKit

Fix API tests after r223269.
https://bugs.webkit.org/show_bug.cgi?id=178246

  • UIProcess/API/APIContentRuleListStore.cpp:

(API::ContentRuleListStore::getContentRuleListSource):
Version 10 also has the ability to recover content rule list source.

10:30 AM Changeset in webkit [223285] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix; add UNUSED_PARAM macros.

  • platform/graphics/cocoa/GraphicsContext3DCocoa.mm:

(WebCore::GraphicsContext3D::texImageIOSurface2D):

10:19 AM Changeset in webkit [223284] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Modernize LayoutTests/http/tests/cache-storage/cache-clearing-*.https.html
https://bugs.webkit.org/show_bug.cgi?id=178245

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-13
Reviewed by Chris Dumez.

Using await/async to improve the testing.
Taking benefit of clearDOMCache to wait for completion to simplify both tests as well.

  • http/tests/cache-storage/cache-clearing-all.https.html:
  • http/tests/cache-storage/cache-clearing-origin.https.html:
10:14 AM Changeset in webkit [223283] by Nikita Vasilyev
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Styles Redesign: hook up autocompletion to property names and values
https://bugs.webkit.org/show_bug.cgi?id=177313
<rdar://problem/34577057>

Reviewed by Joseph Pecoraro.

  • Arrow Right accept the current completion item and places the text caret after it.
  • Arrow Left hides the completion popover.
  • Arrow Up selects the previous completion item.
  • Arrow Down selects the next completion item.
  • Enter and Tab accept the current completion item and navigate to the next focusable item.
  • Escape hides the completion popover, if there is one.
  • UserInterface/Views/CompletionSuggestionsView.js:

(WI.CompletionSuggestionsView):
(WI.CompletionSuggestionsView.prototype._mouseDown):
Add a preventBlur option so clicking on an completion item doesn't change the focus and
doesn't cause "blur" event on the target text field.

  • UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:

(.spreadsheet-style-declaration-editor .completion-hint):

  • UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:

(WI.SpreadsheetCSSStyleDeclarationEditor):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.layout):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.detached):
Call detached on every SpreadsheetTextField to hide CompletionSuggestionsView once
SpreadsheetCSSStyleDeclarationEditor is removed from the DOM.

(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._addBlankProperty):
Remove index argument since it is no longer used.

  • UserInterface/Views/SpreadsheetStyleProperty.js:

(WI.SpreadsheetStyleProperty):
(WI.SpreadsheetStyleProperty.prototype.detached):
(WI.SpreadsheetStyleProperty.prototype._remove):
(WI.SpreadsheetStyleProperty.prototype._update):
(WI.SpreadsheetStyleProperty.prototype._nameCompletionDataProvider):
(WI.SpreadsheetStyleProperty.prototype._valueCompletionDataProvider):
Add an extra parameter to SpreadsheetTextField to pass a completion data provider.

  • UserInterface/Views/SpreadsheetTextField.js:

(WI.SpreadsheetTextField):
(WI.SpreadsheetTextField.prototype.get suggestionHint):
(WI.SpreadsheetTextField.prototype.set suggestionHint):
(WI.SpreadsheetTextField.prototype.startEditing):
(WI.SpreadsheetTextField.prototype.stopEditing):
(WI.SpreadsheetTextField.prototype.detached):
(WI.SpreadsheetTextField.prototype.completionSuggestionsSelectedCompletion):
(WI.SpreadsheetTextField.prototype.completionSuggestionsClickedCompletion):
(WI.SpreadsheetTextField.prototype._getPrefix):
(WI.SpreadsheetTextField.prototype._handleBlur):
(WI.SpreadsheetTextField.prototype._handleKeyDown):
(WI.SpreadsheetTextField.prototype._handleKeyDownForSuggestionView):
(WI.SpreadsheetTextField.prototype._handleInput):
(WI.SpreadsheetTextField.prototype._updateCompletions):
(WI.SpreadsheetTextField.prototype._getCaretRect):
(WI.SpreadsheetTextField.prototype._getCompletionPrefix):
(WI.SpreadsheetTextField.prototype._applyCompletionHint):
(WI.SpreadsheetTextField.prototype._hideCompletions):
Provide text completion based on the existing CompletionSuggestionsView when completionProvider is passed to SpreadsheetTextField.

10:07 AM Changeset in webkit [223282] by Gustavo Noronha Silva
  • 8 edits in trunk

[GLib] WebKitNavigationAction should tell whether it is a redirect
https://bugs.webkit.org/show_bug.cgi?id=178178

Source/WebKit:

There is no good way to know whether a given navigation action has been caused
by a redirect through the glib API. This is necessary to implement some app mode
heuristics for Epiphany.

Reviewed by Carlos Garcia Campos.

  • UIProcess/API/glib/WebKitNavigationAction.cpp:

(webkit_navigation_action_is_redirect): returns whether the navigation action is a redirect.

  • UIProcess/API/glib/WebKitNavigationActionPrivate.h: add isRedirect to the wrapper object.

(_WebKitNavigationAction::_WebKitNavigationAction):

  • UIProcess/API/gtk/WebKitNavigationAction.h: add the new API.
  • UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: ditto.
  • UIProcess/API/wpe/WebKitNavigationAction.h: ditto.

Tools:

Test that WebKitNavigationAction properly reports being a redirect.

Reviewed by Carlos Garcia Campos.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:

(testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
(serverCallback): add a /redirect path to the server, which causes a redirect.

10:05 AM Changeset in webkit [223281] by Chris Dumez
  • 2 edits in trunk/Tools

Unreviewed, fix webkitpy failure after r223273

  • Scripts/webkitpy/w3c/test_importer_unittest.py:

(TestImporterTest.test_harnesslinks_conversion):

9:32 AM Changeset in webkit [223280] by jer.noble@apple.com
  • 11 edits in trunk/Source/WebCore

Performance: do pixel conformance and texturing in a single step.
https://bugs.webkit.org/show_bug.cgi?id=178219
<rdar://problem/34937237>

Reviewed by Dean Jackson.

No new tests; performance improvements should have no behavior change.

Rather than asking the VTDecompressionSession to conform the output CVPixelBuffer into a
pixel format compatible with OpenGL (& ES), don't constrain the output at all, and only do a
conformance step if the output is not already compatible with OpenGL. This eliminates one
copy (in hardware) operation.

Move the TextureCacheCV object into VideoTextureCopierCV; it will be conditionally used to
create the texture if the pixel buffer is compatible.

Refactor copyVideoTextureToPlatformTexture(CVOpenGLTextureRef) in VideoTextureCopierCV. The
new entry point, copyImageToPlatformTexture(), will attempt to use the texture cache first,
and call a new common copyVideoTextureToPlatformTexture(Platform3DObject) with the result.

The new copyImageToPlatformTexture() will pull planar YUV frames into two textures, and combine
the two with a color transfer function when drawing to the output texture.

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::copyVideoTextureToPlatformTexture):

  • platform/graphics/cocoa/GraphicsContext3DCocoa.mm:

(WebCore::GraphicsContext3D::texImageIOSurface2D):

  • platform/graphics/cocoa/WebCoreDecompressionSession.mm:

(WebCore::WebCoreDecompressionSession::ensureDecompressionSessionForSample):

  • platform/graphics/cv/TextureCacheCV.h:
  • platform/graphics/cv/TextureCacheCV.mm:

(WebCore::TextureCacheCV::textureFromImage):

  • platform/graphics/cv/VideoTextureCopierCV.cpp:

(WebCore::pixelRangeFromPixelFormat):
(WebCore::transferFunctionFromString):
(WebCore::YCbCrToRGBMatrixForRangeAndTransferFunction):
(WebCore::VideoTextureCopierCV::~VideoTextureCopierCV):
(WebCore::VideoTextureCopierCV::initializeUVContextObjects):
(WebCore::VideoTextureCopierCV::copyImageToPlatformTexture):
(WebCore::VideoTextureCopierCV::copyVideoTextureToPlatformTexture):

  • platform/graphics/cv/VideoTextureCopierCV.h:
9:03 AM October 2017 Meeting edited by yoav@yoav.ws
(diff)
9:02 AM October 2017 Meeting edited by yoav@yoav.ws
(diff)
9:02 AM October 2017 Meeting edited by yoav@yoav.ws
(diff)
8:32 AM October 2017 Meeting edited by Jon Davis
(diff)
8:20 AM October 2017 Meeting edited by Jon Davis
(diff)
7:46 AM October 2017 Meeting edited by Jon Davis
(diff)
7:45 AM October 2017 Meeting edited by Jon Davis
(diff)
7:36 AM October 2017 Meeting edited by Jon Davis
(diff)
7:35 AM October 2017 Meeting edited by Jon Davis
(diff)
6:38 AM October 2017 Meeting edited by cavalcantii@gmail.com
(diff)
2:22 AM Changeset in webkit [223279] by romain.bellessort@crf.canon.fr
  • 7 edits in trunk

[Readable Streams API] Align queue with spec for ReadableStreamDefaultController
https://bugs.webkit.org/show_bug.cgi?id=178082

Reviewed by Xabier Rodriguez-Calvar.

LayoutTests/imported/w3c:

Updated test expectations for tests that were previously failing but now pass.

  • web-platform-tests/streams/readable-streams/floating-point-total-queue-size-expected.txt:
  • web-platform-tests/streams/readable-streams/floating-point-total-queue-size.dedicatedworker-expected.txt:

Source/WebCore:

Implemented new queue behavior for dequeueValue (used by ReadableStreamDefaultController),
which fixes rounding errors (as described in https://github.com/whatwg/streams/pull/661).
Also aligned ReadableByteStreamController queue so that both queues are implemented in
the same way.

No new tests (covered by existing tests, especially WPT tests that now pass).

  • Modules/streams/ReadableByteStreamInternals.js:

(privateInitializeReadableByteStreamController): Aligned queue with RSDC.
(readableByteStreamControllerCancel): Aligned queue with RSDC.
(readableByteStreamControllerError): Aligned queue with RSDC.
(readableByteStreamControllerClose): Aligned queue with RSDC.
(readableByteStreamControllerHandleQueueDrain): Aligned queue with RSDC.
(readableByteStreamControllerPull): Aligned queue with RSDC.
(readableByteStreamControllerEnqueue): Aligned queue with RSDC.
(readableByteStreamControllerEnqueueChunk): Aligned queue with RSDC.
(readableByteStreamControllerProcessPullDescriptors): Aligned queue with RSDC.
(readableByteStreamControllerFillDescriptorFromQueue): Aligned queue with RSDC.
(readableByteStreamControllerPullInto): Aligned queue with RSDC.

  • Modules/streams/StreamInternals.js:

(dequeueValue): Updated to match spec.

  • bindings/js/WebCoreBuiltinNames.h: Removed now useless "totalQueuedBytes".
12:14 AM Changeset in webkit [223278] by Wenson Hsieh
  • 5 edits
    7 moves in trunk

"text/html" data is not exposed when dragging and dropping across origins
https://bugs.webkit.org/show_bug.cgi?id=178253
<rdar://problem/34971203>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Minor tweak to DataTransfer::setDataFromItemList to allow "text/html" written from bindings to transfer across
origins without requiring a sanitized representation. Currently, sanitizedData is null, which limits "text/html"
to being treated as custom data, inaccessible across origins. We should instead treat markup supplied via
bindings the same way as we do "text/plain" supplied via bindings.

Modified Tests: editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin.html

editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html

  • dom/DataTransfer.cpp:

(WebCore::DataTransfer::setDataFromItemList):

LayoutTests:

Renames some existing layout tests, and also augments two tests to verify that "text/html" is preserved when
copying and dragging across origins that don't match.

  • TestExpectations:
  • editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-expected.txt.
  • editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin-expected.txt.
  • editing/pasteboard/data-transfer-set-data-ignore-copied-malformed-url-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-ignore-copied-walformed-url-in-null-origin.html.
  • editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin-expected.txt.
  • editing/pasteboard/data-transfer-set-data-sanitize-url-when-copying-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-copying-in-null-origin.html.
  • editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin-expected.txt: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin-expected.txt.
  • editing/pasteboard/data-transfer-set-data-sanitize-url-when-dragging-in-null-origin.html: Renamed from LayoutTests/editing/pasteboard/data-transfer-set-data-sanitlize-url-when-dragging-in-null-origin.html.
  • platform/mac-wk1/TestExpectations:
Note: See TracTimeline for information about the timeline view.