[{"branch":"main","hash":"f0d05e44667136673e7aa4fecf644348230841bc","identifier":"326019@main","order":0,"repository_id":"webkit","timestamp":1794028986},{"branch":"main","hash":"ce4df78bd3b06d1cd763458253db65655617731f","identifier":"326020@main","order":0,"repository_id":"webkit","timestamp":1794029647},{"branch":"main","hash":"c0fb89fb3a01ade5e2a667a4206074640f045da2","identifier":"326021@main","order":0,"repository_id":"webkit","timestamp":1794033335},{"author":{"emails":["amartinez55@apple.com","amart89531@gmail.com","AndrJMart@gmail.com"],"name":"Andrew Martinez"},"branch":"main","hash":"f878eb445537d4780c8c16e6a37b8ee667ac917f","identifier":"326022@main","message":"[WPT] Import css/css-page tests\nrdar://190974553\nhttps://bugs.webkit.org/show_bug.cgi?id=328881\n\nReviewed by Tim Nguyen.\n\nImport css/css-page, including its print reftests, and mark the failing tests as expected\nto fail.\n\nPage-margin box failures are under webkit.org/b/85062.\n\nUpstream commit: https://github.com/web-platform-tests/wpt/commit/711c4c6a69eff1e5c0e6b534f2776cafb7796338\n\n* LayoutTests/TestExpectations:\n* LayoutTests/imported/w3c/resources/resource-files.json:\n* LayoutTests/tests-options.json:\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/WEB_FEATURES.yml:\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/background-image-only-for-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/background-image-only-for-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/background-image-only-for-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-004-print-expected-mismatch.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-005-print-expected-mismatch.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/basic-pagination-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-slr-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-slr-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-slr-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-srl-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-srl-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-srl-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vlr-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vlr-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vlr-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vrl-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vrl-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/body-background-vrl-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/counter-containment-001.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/counter-containment-002.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/match-media-listener-relayout-contained-inline-subtree-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/match-media-listener-relayout-contained-subtree-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/match-media-listener-relayout-inside-fixed-size-overflow-hidden-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/match-media-listener-shrink-content-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/negative-margin-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/percentage-padding-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/root-element-remove-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/tall-inline-block-in-float-in-table-cell-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/crashtests/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/cssom/WEB_FEATURES.yml: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/cssom/dynamic-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/cssom/dynamic-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/cssom/dynamic-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/cssom/w3c-import.log:\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-010-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-011-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-abspos-with-link-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-abspos-with-link-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-abspos-with-link-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-iframe-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-iframe-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-iframe-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-link-with-inline-child-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-link-with-inline-child-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/fixedpos-with-link-with-inline-child-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/layers-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/WEB_FEATURES.yml: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/alignment-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/alignment-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/alignment-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/auto-margins-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/background-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/background-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/background-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-010-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-011-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-012-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-012-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-012-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-013-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-013-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/content-013-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-010-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-011-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-012-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-012-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-012-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-013-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-013-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-013-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-014-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-014-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-015-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-015-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/dimensions-015-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/inapplicable-properties-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/inapplicable-properties-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/inapplicable-properties-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/overconstrained-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/overconstrained-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/overconstrained-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/paint-order-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/margin-boxes/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/media-queries-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-012-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-012-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-012-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-013-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-013-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-013-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-014-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-014-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-014-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-015-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-015-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-015-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-016-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-016-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-016-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-017-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-017-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-017-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-018-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-018-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-018-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-019-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-019-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-019-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-020-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-020-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-020-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-021-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-021-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-021-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-022-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-022-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-022-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-023-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-023-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-023-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-024-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-024-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-024-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-025-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-025-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-025-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-026-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-026-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-026-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-027-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-027-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-027-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-028-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-028-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-028-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-029-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-029-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-029-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-030-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-030-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-030-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-031-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-031-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-031-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-032-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-032-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/monolithic-overflow-032-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-image-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-image-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-background-image-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-000-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-000-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-000-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-010-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-011-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-box-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-custom-property-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-custom-property-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-em-rem-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-em-rem-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-font-size-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-font-size-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-font-size-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-font-size-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-rem-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-context-inherits-from-root-rem-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-left-right-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-and-non-zero-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-and-non-zero-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-and-non-zero-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-negative-print-ref.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-negative-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-negative-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-auto-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-negative-print-ref.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-negative-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-margin-negative-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-000-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-000-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-000-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-001-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-abspos-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-and-break-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-canvas-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-display-none-child-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-display-none-child-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-display-none-child-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-fixed-pos-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-fixed-pos-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-fixed-pos-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-flex-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-float-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-img-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-inline-block-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-margin-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-orthogonal-writing-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-propagated-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-siblings-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-table-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-table-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-table-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-unnamed-trailing-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-unnamed-trailing-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-unnamed-trailing-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-zero-height-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-zero-height-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-name-zero-height-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-landscape-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-landscape-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-landscape-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-002-notref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-002-print-expected-mismatch.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-003-notref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-003-print-expected-mismatch.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-portrait-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-square-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-on-square-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-portrait-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-orientation-square-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-print-landscape-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-rule-specificity-print-portrait-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-004-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-005-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-005-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-005-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-006-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-006-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-006-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-007-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-007-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-007-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-008-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-008-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-008-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-009-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-009-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-009-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-010-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-010-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-010-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-011-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-011-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-011-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-012-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-012-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-012-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-013-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-013-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-013-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-014-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-014-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-014-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-015-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-015-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-015-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-016-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-016-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-016-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-017-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-017-print.tentative-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-size-017-print.tentative.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-visibility-hidden-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-visibility-hidden-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/page-visibility-hidden-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/parsing/WEB_FEATURES.yml:\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/parsing/w3c-import.log:\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-004-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-004-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/pseudo-first-margin-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/reference/blank-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/reference/filled-green-100px-square-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/reference/monolithic-overflow-4-pages-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/reference/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/remote-origin-iframe-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/remote-origin-iframe-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/remote-origin-iframe-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/resources/iframe-with-abspos.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/resources/mq-frame-100px.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/resources/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/root-element-display-none-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/root-element-display-none-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/subpixel-page-size-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-green.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-lime.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-maroon.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-navy.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-red.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/1x1-white.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/60x60-gg-rr.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/60x60-green.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/a-green.css: Added.\n(.a):\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/b-green.css: Added.\n(.b):\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/c-red.css: Added.\n(.c):\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/cat.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/import-green.css: Added.\n(.import):\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/import-red.css: Added.\n(.import):\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/intrinsic-size.jpg: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/intrinsic-size.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/pattern-grg-rgr-grg.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/pattern-grg-rrg-rgg.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/pattern-rgr-grg-rgr.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/pattern-tr.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/square-purple.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/square-teal.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/square-white.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-blue.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-green.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-lime.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-orange.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-red.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-white.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/swatch-yellow.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/test-bl.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/test-br.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/test-outer.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/test-tl.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/test-tr.png: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/support/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-001-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-001-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-001-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-002-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-002-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-002-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-003-print-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-003-print-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-003-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-large-crash-print-expected-mismatch.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/safe-printable-inset-large-crash-print.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/tentative/w3c-import.log: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-page/w3c-import.log:\n* LayoutTests/platform/glib/TestExpectations:\n* LayoutTests/platform/ios/TestExpectations:\n\nCanonical link: https://commits.webkit.org/326022@main","order":0,"repository_id":"webkit","timestamp":1794033589},{"branch":"main","hash":"8033e9e6dba234d71a3ba62d8ee76cce9d001c8c","identifier":"326023@main","order":0,"repository_id":"webkit","timestamp":1794034449},{"branch":"main","hash":"48409e262493d8981b2e8ca2fe939da2e7444a51","identifier":"326024@main","order":0,"repository_id":"webkit","timestamp":1794034500},{"branch":"main","hash":"8f9da36d8f2701cec898916fa2d52104cf7e87e4","identifier":"326025@main","order":0,"repository_id":"webkit","timestamp":1794034724},{"author":{"emails":["rniwa@webkit.org","rniwa@apple.com"],"name":"Ryosuke Niwa"},"branch":"main","hash":"50738f45d183be3cb8b8aba64f51d8f6f50b7496","identifier":"326026@main","message":"[Site Isolation] http/tests/site-isolation/mouse-events/scrolled-mainframe.html fails\nhttps://bugs.webkit.org/show_bug.cgi?id=330436\n\nReviewed by Tim Nguyen.\n\nThe test waited for window.scrollY to become 95 after scrolling the main frame to (50, 50).\nThat only happened because js-test.js used to finish the test on load, inserting the\n\"TEST COMPLETE\" output above the iframe and pushing it down by 45px, which scroll anchoring\nthen compensated for. Since 314731@main the test sets jsTestIsAsync, so no output is inserted\nbefore the click (and scroll anchoring is currently disabled), scrollY stays at 50, and the\ntest times out waiting for a scroll position it never reaches.\n\nWait for scrollY to be 50 instead. The iframe now stays at (10, 10), so a click at (100, 100)\nin the scrolled main frame still lands at (140, 140) in the iframe.\n\n* LayoutTests/TestExpectations: Unskip the test since it no longer depends on scroll anchoring.\n* LayoutTests/http/tests/site-isolation/mouse-events/scrolled-mainframe-expected.txt:\n* LayoutTests/http/tests/site-isolation/mouse-events/scrolled-mainframe.html:\n\nCanonical link: https://commits.webkit.org/326026@main","order":0,"repository_id":"webkit","timestamp":1794036599},{"branch":"main","hash":"d7b569a0c205c0b0346ce3c268cec676b712f466","identifier":"326027@main","order":0,"repository_id":"webkit","timestamp":1794037347},{"branch":"main","hash":"3b5d1d228cb63cb8f4361b10dfa5801805ac079c","identifier":"326028@main","order":0,"repository_id":"webkit","timestamp":1794037636},{"author":{"emails":["kkinnunen@apple.com"],"name":"Kimmo Kinnunen"},"branch":"main","hash":"44cf227af2bbbc4aeb3faedcb23c409a18a5b945","identifier":"326029@main","message":"CG: Setting a drop shadow overrides the context alpha\nhttps://bugs.webkit.org/show_bug.cgi?id=330429\nrdar://192039068\n\nReviewed by Mike Wyrzykowski.\n\nGraphicsContextCG::setCGDropShadow() set the CG context alpha to the\ndrop shadow opacity. The GraphicsContextState alpha was not changed, so\nthe CG alpha went out of sync with it. For example a canvas with\nglobalAlpha 0.5 drew fully opaque content after changing only the shadow\noffset. When the alpha and the shadow changed at the same time, the\nalpha was applied after the shadow and the bug was hidden.\n\nApply the drop shadow opacity to the shadow color instead. The opacity\nis not 1 only for the drop shadow filter styles, where the context alpha\nwas overridden by the following beginTransparencyLayer(1) anyway.\n\nTest: fast/canvas/fillRect-global-alpha-shadow-change.html\n\n* LayoutTests/fast/canvas/fillRect-global-alpha-shadow-change-expected.html: Added.\n* LayoutTests/fast/canvas/fillRect-global-alpha-shadow-change.html: Added.\n* Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp:\n(WebCore::GraphicsContextCG::setCGDropShadow):\n\nCanonical link: https://commits.webkit.org/326029@main","order":0,"repository_id":"webkit","timestamp":1794038117},{"branch":"main","hash":"ff77ff95a2e470c383e2b87fb1c78ee6a8c97caf","identifier":"326030@main","order":0,"repository_id":"webkit","timestamp":1794038377},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"523451da2f8057fdc1e48d3a3b40721b79369709","identifier":"326031@main","message":"Incorrect + offset popup size/positioning with scrollbar-gutter: stable both\nhttps://bugs.webkit.org/show_bug.cgi?id=328204\nrdar://190521334\n\nReviewed by Timothy Hatcher.\n\nLocalFrameView::performSizeToContentAutoSize() resized the view to the content's min-content width\nplus, when the content was taller than the limit, one scrollbar. Space reserved by scrollbar-gutter\nwas never included. With scrollbar-gutter: stable both-edges a gutter is also reserved on the\nleading edge, so the auto-sized view was too narrow, the layout viewport shrank below the content\nwidth, and the reported intrinsic content size was too small. This shows up, for example, as an\nincorrectly sized web extension popup.\n\nAccount for the reserved space when computing the view size and the reported content size:\n- When a scrollbar is needed, add a second scrollbar-width for the leading-edge gutter if\n  scrollbar-gutter is stable both-edges.\n- When no scrollbar is needed, add totalScrollbarSpace(), which is the gutter space reserved by\n  scrollbar-gutter. It is 0 for scrollbar-gutter: auto, so other content is unaffected.\n\nTests: fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges-no-scrollbar.html\n       fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges.html\n\n* LayoutTests/fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges-expected.txt: Added.\n* LayoutTests/fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges-no-scrollbar-expected.txt: Added.\n* LayoutTests/fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges-no-scrollbar.html: Added.\n* LayoutTests/fast/dynamic/size-to-content-autosize-with-scrollbar-gutter-stable-both-edges.html: Added.\n* Source/WebCore/page/LocalFrameView.cpp:\n(WebCore::LocalFrameView::performSizeToContentAutoSize):\n\nCanonical link: https://commits.webkit.org/326031@main","order":0,"repository_id":"webkit","timestamp":1794040552},{"author":{"emails":["ntim@apple.com","ntim.bugs@gmail.com"],"name":"Tim Nguyen"},"branch":"main","hash":"4b8c56bc2959434dca37da320e480eb82da609bc","identifier":"326032@main","message":"[CMake] Build MobileMiniBrowser on iOS\nhttps://bugs.webkit.org/show_bug.cgi?id=330481\nrdar://192086874\n\nReviewed by Elliott Williams.\n\n* Source/cmake/OptionsCocoa.cmake:\n* Tools/PlatformCocoa.cmake:\n* Tools/MobileMiniBrowser/CMakeLists.txt:\n* Source/WebKit/PlatformCocoa.cmake:\n* Source/cmake/WebKitInfoPlist.cmake:\n* Source/cmake/WebKitMacros.cmake:\n* Source/cmake/process-info-plist:\n(main):\n* Tools/Scripts/webkitdirs.pm:\n(runMiniBrowser):\n(debugMiniBrowser):\n\nCanonical link: https://commits.webkit.org/326032@main","order":0,"repository_id":"webkit","timestamp":1794042303},{"branch":"main","hash":"1f8a20089b20661175e4263ca2e0c1d35a7128d9","identifier":"326033@main","order":0,"repository_id":"webkit","timestamp":1794042972},{"branch":"main","hash":"a96dd54db6d0439c1756ebe4374115f867c72ab1","identifier":"326034@main","order":0,"repository_id":"webkit","timestamp":1794044683},{"branch":"main","hash":"14cd9c647301744c2dd926c8d04703c6247f3c33","identifier":"326035@main","order":0,"repository_id":"webkit","timestamp":1794044729},{"branch":"main","hash":"05eaf50e5961d2418309707d952908afc2d00583","identifier":"326036@main","order":0,"repository_id":"webkit","timestamp":1794045033},{"author":{"emails":["com.webkit.iidmsa@gmail.com","com.idmsa@gmail.com"],"name":"Fady Farag"},"branch":"main","hash":"13ce5bd25e1a1737234397be62f67d1307e1233e","identifier":"326037@main","message":"Adopt more C++17 nested namespaces in WTF\nhttps://bugs.webkit.org/show_bug.cgi?id=330399\nrdar://192003995\n\nReviewed by Zak Ridouh.\n\nThis mainly improves readability by using more concise and modern syntax.\n\n* Source/WTF/wtf/FileHandle.h:\n* Source/WTF/wtf/FileLockMode.h:\n* Source/WTF/wtf/FileSystem.h:\n* Source/WTF/wtf/JSONValues.cpp:\n* Source/WTF/wtf/MappedFileData.h:\n* Source/WTF/wtf/URLHelpers.cpp:\n* Source/WTF/wtf/URLHelpers.h:\n* Source/WTF/wtf/cocoa/FileSystemCocoa.mm:\n* Source/WTF/wtf/glib/FileSystemGlib.cpp:\n* Source/WTF/wtf/haiku/FileSystemHaiku.cpp:\n* Source/WTF/wtf/playstation/FileSystemPlayStation.cpp:\n* Source/WTF/wtf/posix/FileSystemPOSIX.cpp:\n* Source/WTF/wtf/unicode/UTF8Conversion.h:\n* Source/WTF/wtf/unicode/icu/ICUHelpers.cpp:\n* Source/WTF/wtf/win/DbgHelperWin.cpp:\n* Source/WTF/wtf/win/DbgHelperWin.h:\n* Source/WTF/wtf/win/FileSystemWin.cpp:\n\nCanonical link: https://commits.webkit.org/326037@main","order":0,"repository_id":"webkit","timestamp":1794050826},{"branch":"main","hash":"1487a1b71cead4fcd8d5d11e7eb1d09fef13b54c","identifier":"326038@main","order":0,"repository_id":"webkit","timestamp":1794050995},{"branch":"main","hash":"48f39971088e801220a4023ed3ddf0504ad600bf","identifier":"326039@main","order":0,"repository_id":"webkit","timestamp":1794059490},{"branch":"main","hash":"12458c95cf5b21a18a70a2c41bf604f5212ec166","identifier":"326040@main","order":0,"repository_id":"webkit","timestamp":1794061988},{"branch":"main","hash":"db2d79f4413193cbfa65b50ebddcec39eaba5809","identifier":"326041@main","order":0,"repository_id":"webkit","timestamp":1794067038},{"branch":"main","hash":"561aa7408385d87cc4b59ea8874783d1964f8118","identifier":"326042@main","order":0,"repository_id":"webkit","timestamp":1794068556},{"branch":"main","hash":"ebd4c5dee7220e8bc9c62595513ba98529c43428","identifier":"326043@main","order":0,"repository_id":"webkit","timestamp":1794072577},{"author":{"emails":["achristensen@apple.com","achristensen@webkit.org","alex.christensen@flexsim.com"],"name":"Alex Christensen"},"branch":"main","hash":"c6b34ddf86f5dddd632290ab2de6fcb4f9922e4f","identifier":"326044@main","message":"Deprecate glib injected bundle messaging APIs\nhttps://bugs.webkit.org/show_bug.cgi?id=330533\nrdar://192114540\n\nReviewed by Carlos Garcia Campos.\n\nLike webkit_web_page_get_main_frame in 281688@main, these APIs no longer make sense in\na world with site isolation.  They are built on the assumption that there is only one\nweb content process with one WebPage in it, but that is not true with site isolation.\nOne of two directions can be taken:\n1. Retrofit more APIs that have the ability to specify which process to send to, and\nwhich process we are receiving from.  This makes applications more complex and difficult.\n2. Make UI process API replacements to meet the needs of the current users.\nCocoa platforms are already well down the path of option 2, and it's been done in a\nway that can be added to other platforms.  Coordination will be needed, but this\ndeprecation starts the conversation of exactly what is needed.\n\nTests: Tools/TestWebKitAPI/Tests/WebKit/WKPage/glib/TestWebProcessExtensions.cpp\n       Tools/TestWebKitAPI/Tests/WebKit/WKPage/glib/WebProcessExtensionTest.cpp\n\n* Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp:\n* Source/WebKit/UIProcess/API/glib/WebKitWebView.h.in:\n* Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp:\n* Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.h.in:\n* Tools/TestWebKitAPI/Tests/WebKit/WKPage/glib/TestWebProcessExtensions.cpp:\n(UserMessageTest::sendMessage):\n(testWebProcessExtensionUserMessages):\n* Tools/TestWebKitAPI/Tests/WebKit/WKPage/glib/WebProcessExtensionTest.cpp:\n(documentLoadedCallback):\n(pageMessageReceivedCallback):\n\nCanonical link: https://commits.webkit.org/326044@main","order":0,"repository_id":"webkit","timestamp":1794075960},{"author":{"emails":["achristensen@apple.com","achristensen@webkit.org","alex.christensen@flexsim.com"],"name":"Alex Christensen"},"branch":"main","hash":"c363ec49af2a51515d2ee1d578e2d0e222faa817","identifier":"326045@main","message":"Fix TestWebKitAPI.WKWebView.LoadAlternateHTMLStringFromProvisionalLoadError with site isolation enabled\nhttps://bugs.webkit.org/show_bug.cgi?id=330476\nrdar://192007665\n\nReviewed by Zak Ridouh.\n\nDefer the restore until after the client callbacks, and skip it if the client started an\nalternate HTML load for the failing load.\n\n* Source/WebKit/UIProcess/WebPageProxy.cpp:\n(WebKit::WebPageProxy::didFailProvisionalLoadForFrameShared):\n\nCanonical link: https://commits.webkit.org/326045@main","order":0,"repository_id":"webkit","timestamp":1794076013},{"branch":"main","hash":"597e544acfe77145f50ada861f0b2721ecdf8f38","identifier":"326046@main","order":0,"repository_id":"webkit","timestamp":1794076057},{"branch":"main","hash":"3de4f6a130776a1ea433a95f4fa0adb6aa3e088c","identifier":"326047@main","order":0,"repository_id":"webkit","timestamp":1794082910},{"branch":"main","hash":"dab1a6d759d2fceef0c7da3fa4e30989813b6aae","identifier":"326048@main","order":0,"repository_id":"webkit","timestamp":1794085260},{"branch":"main","hash":"7a39e9d375704a12dde5e1a6326dd805543a79e5","identifier":"326049@main","order":0,"repository_id":"webkit","timestamp":1794089888},{"branch":"main","hash":"c09d0e32e2e9d4cad505bd3dd068273d0b9c8bc1","identifier":"326050@main","order":0,"repository_id":"webkit","timestamp":1794091225},{"branch":"main","hash":"f327592b69d36d1e60ea38aae6f39052bdeeb682","identifier":"326051@main","order":0,"repository_id":"webkit","timestamp":1794096630},{"branch":"main","hash":"d1c08ca438e4b5473d9c654145eb5f411190aabd","identifier":"326052@main","order":0,"repository_id":"webkit","timestamp":1794097371},{"branch":"main","hash":"ab6a979134f538bf1808161c317f684c354097d3","identifier":"326053@main","order":0,"repository_id":"webkit","timestamp":1794098828},{"branch":"main","hash":"36c0d0e80a2c6492970ab706f5e8867f7b614b8e","identifier":"326054@main","order":0,"repository_id":"webkit","timestamp":1794099305},{"branch":"main","hash":"01e972896a4d668c0834abbf7c69a63024df2b25","identifier":"326055@main","order":0,"repository_id":"webkit","timestamp":1794100855},{"branch":"main","hash":"bed4d34f23e87def3e9e3bc4ebe734f9eeea0326","identifier":"326056@main","order":0,"repository_id":"webkit","timestamp":1794102329},{"author":{"emails":["dm_mazzoni@apple.com","dmazzoni@google.com","dmazzoni@chromium.org"],"name":"Dominic Mazzoni"},"branch":"main","hash":"dc55ff487d215ec78d267d020ed2d247786b1743","identifier":"326057@main","message":"AX: Replacing text in a password field fails unless the range starts at 0\nhttps://bugs.webkit.org/show_bug.cgi?id=330494\nrdar://191019529\n\nReviewed by Chris Fleizach.\n\nOn Cocoa, password fields don't use input methods, so AccessibilityObject::replaceTextInRange()\nreplaces text in them using setRangeText(). It passed the range's length where setRangeText() expects\nits end, so a range starting past its own length made setRangeText() throw, and nothing changed.\nreplaceTextInRange() still returned true.\n\nThe fix is to pass the end of the range, and return false if setRangeText() fails.\n\nTests: accessibility/isolated-tree/replace-text-in-password-field.html\n       accessibility/replace-text-in-password-field.html\n\n* LayoutTests/accessibility/isolated-tree/replace-text-in-password-field-expected.txt: Added.\n* LayoutTests/accessibility/isolated-tree/replace-text-in-password-field.html: Added.\n* LayoutTests/accessibility/replace-text-in-password-field-expected.txt: Added.\n* LayoutTests/accessibility/replace-text-in-password-field.html: Added.\n* LayoutTests/accessibility/resources/replace-text-in-password-field.js: Added.\n(axValueLength):\n(async waitForAXValueUpdate):\n(setValue):\n(window.accessibilityController.setTimeout.async for):\n(window.accessibilityController.setTimeout):\n* LayoutTests/platform/glib/TestExpectations:\n* Source/WebCore/accessibility/AccessibilityObject.cpp:\n(WebCore::AccessibilityObject::replaceTextInRange):\n\nCanonical link: https://commits.webkit.org/326057@main","order":0,"repository_id":"webkit","timestamp":1794103881},{"branch":"main","hash":"c1a6da4366883bb3ce73478ea080f6f00fd6c9ca","identifier":"326058@main","order":0,"repository_id":"webkit","timestamp":1794103943},{"author":{"emails":["aestes@apple.com"],"name":"Andy Estes"},"branch":"main","hash":"dd12e6ae7cc656d1cd5bb18757464373a3a9490c","identifier":"326059@main","message":"[iOS] Video fails to play locally after deactivating a MediaDeviceRoute\nhttps://bugs.webkit.org/show_bug.cgi?id=330553\nrdar://192132116\n\nReviewed by Eric Carlson.\n\nWhen the active MediaDeviceRoute deactivated (for instance after switching back to the local\nroute in Control Center), MediaPlayerPrivateWirelessPlayback::setShouldPlayToPlaybackTarget(false)\nset the network state to FormatError. Because the player already had metadata, MediaPlayer didn't\nfall back to another engine, and HTMLMediaElement::mediaLoadingFailed() cancelled the timer that\nwould have rebuilt the player with a new media engine.\n\nFixed this by reporting currentPlaybackTargetIsWirelessChanged(false) instead once the player has\nmetadata. HTMLMediaElement then clears the wireless target and rebuilds the player with the\nappropriate engine for local playback. FormatError is still reported before metadata, so engine\nfallback still works.\n\nTest: media/wireless-playback-media-player/route-deactivate-returns-to-local-playback.html\n\n* LayoutTests/media/wireless-playback-media-player/route-deactivate-returns-to-local-playback-expected.txt: Added.\n* LayoutTests/media/wireless-playback-media-player/route-deactivate-returns-to-local-playback.html: Added.\n* Source/WebCore/platform/graphics/MediaPlayerPrivateWirelessPlayback.cpp:\n(WebCore::MediaPlayerPrivateWirelessPlayback::setShouldPlayToPlaybackTarget):\n\nCanonical link: https://commits.webkit.org/326059@main","order":0,"repository_id":"webkit","timestamp":1794107918},{"author":{"emails":["aestes@apple.com"],"name":"Andy Estes"},"branch":"main","hash":"e99aaad31f1844be53f9113d4cd4c0c7075e600d","identifier":"326061@main","message":"[iOS] Silent autoplaying video plays over a MediaDeviceRoute\nhttps://bugs.webkit.org/show_bug.cgi?id=330556\nrdar://182209780\n\nReviewed by Eric Carlson.\n\nWhen a MediaDeviceRoute was active, MediaSessionManageriOS::sessionDidCompleteAdmission() gave the\nroute to every session that started playing, so a muted, looping decorative video was moved onto\nthe route and interrupted the main content. Pages could not prevent this: disableRemotePlayback,\nx-webkit-airplay=\"deny\" and x-webkit-wirelessvideoplaybackdisabled were ignored for MediaDeviceRoute\ntargets.\n\nFixed this by only routing the Now Playing session when playback starts. A session that becomes the\nNow Playing session later is still routed by activeNowPlayingSessionChanged(). Also make\nMediaElementSession::setShouldPlayToPlaybackTarget() refuse WirelessPlayback targets for elements\nthat have opted out of remote playback.\n\nTests: media/wireless-playback-media-player/disableremoteplayback-video-not-routed.html\n       media/wireless-playback-media-player/muted-looping-video-not-routed.html\n       media/wireless-playback-media-player/x-webkit-airplay-deny-video-not-routed.html\n       media/wireless-playback-media-player/x-webkit-wirelessvideoplaybackdisabled-video-not-routed.html\n\n* LayoutTests/media/wireless-playback-media-player/disableremoteplayback-video-not-routed-expected.txt: Added.\n* LayoutTests/media/wireless-playback-media-player/disableremoteplayback-video-not-routed.html: Added.\n* LayoutTests/media/wireless-playback-media-player/muted-looping-video-not-routed-expected.txt: Added.\n* LayoutTests/media/wireless-playback-media-player/muted-looping-video-not-routed.html: Added.\n* LayoutTests/media/wireless-playback-media-player/x-webkit-airplay-deny-video-not-routed-expected.txt: Added.\n* LayoutTests/media/wireless-playback-media-player/x-webkit-airplay-deny-video-not-routed.html: Added.\n* LayoutTests/media/wireless-playback-media-player/x-webkit-wirelessvideoplaybackdisabled-video-not-routed-expected.txt: Added.\n* LayoutTests/media/wireless-playback-media-player/x-webkit-wirelessvideoplaybackdisabled-video-not-routed.html: Added.\n* ManualTests/media/remote-playback-routing.html: Added.\n* Source/WebCore/html/MediaElementSession.cpp:\n(WebCore::MediaElementSession::setShouldPlayToPlaybackTarget):\n* Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm:\n(WebCore::MediaSessionManageriOS::sessionDidCompleteAdmission):\n\nCanonical link: https://commits.webkit.org/326061@main","order":0,"repository_id":"webkit","timestamp":1794108150},{"author":{"emails":["charliew@apple.com"],"name":"Charlie Wolfe"},"branch":"main","hash":"dff73de63124a0eff7761b550c9a1f016b1e5194","identifier":"326062@main","message":"Web process ignores invalid IPC messages even when the IPC testing API is disabled\nhttps://bugs.webkit.org/show_bug.cgi?id=329828\nrdar://191600321\n\nReviewed by Alex Christensen.\n\nWebPage::updatePreferences() set ignoreInvalidMessageForTesting on the web process's UI, GPU and\nmodel process connections whether or not the IPC testing API pref was on. As a result, every debug\nand ASAN build hid invalid incoming messages in the web process, which skipped the decoder validity\nassertion and the normal invalid-message handling.\n\nOnly set the flag when the IPC testing API is enabled.\n\n* Source/WebKit/WebProcess/WebPage/WebPage.cpp:\n(WebKit::WebPage::updatePreferences):\n\nCanonical link: https://commits.webkit.org/326062@main","order":0,"repository_id":"webkit","timestamp":1794108261},{"branch":"main","hash":"f9fa17f9eed1be86cb1a0435f30fefcedbe9b168","identifier":"326063@main","order":0,"repository_id":"webkit","timestamp":1794108350},{"branch":"main","hash":"933b5a28b2d43f89a23e12b4ca9a2444b9b3e1ea","identifier":"326064@main","order":0,"repository_id":"webkit","timestamp":1794112372},{"branch":"main","hash":"43ca1b8133a4f4fc4b8c45b8c401bc96ccc72911","identifier":"326065@main","order":0,"repository_id":"webkit","timestamp":1794113653},{"branch":"main","hash":"fd38c36eecffb766babde2bdd9725222871e2cd8","identifier":"326066@main","order":0,"repository_id":"webkit","timestamp":1794115213},{"author":{"emails":["annevk@annevk.nl","annevk@apple.com"],"name":"Anne van Kesteren"},"branch":"main","hash":"972191f983480e18da902bcd215e3df25bc802e0","identifier":"326067@main","message":"Synchronize WPT density-size-correction, mediacapture-record, and webcodecs\nhttps://bugs.webkit.org/show_bug.cgi?id=330289\nrdar://191899817\n\nReviewed by Youenn Fablet.\n\nUpstream commit: https://github.com/web-platform-tests/wpt/commit/095dcead130cf3e37eec684e2a8a95ad7c05ce74\n\nUpstream now has WebKit's edits to these tests, except for the\nimage-decoder-utils.js change from 319527@main. Upstream reverted that in\nhttps://github.com/web-platform-tests/wpt/pull/62410 as ImageDecoder has to\nhonor image-orientation: none, so the EXIF-orientation subtests now fail.\nThis also synchronizes lint.ignore, keeping the entries for WebKit-only\nfiles.\n\nMany mediacapture-record tests now have variants. An expectation for a test\nfile doesn't apply to its variants, so those lines now list every variant.\n\nCanonical link: https://commits.webkit.org/326067@main","order":0,"repository_id":"webkit","timestamp":1794115400},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"05fbeeaa85b05475855d697da983d2a817cced36","identifier":"326068@main","message":"border-image with a fractional image-set() resolution truncates the scale factor and computes wrong slices\nhttps://bugs.webkit.org/show_bug.cgi?id=330554\nrdar://192132215\n\nReviewed by Sam Weinig.\n\nThis patch aligns WebKit with Gecko / Firefox and Blink / Chromium.\n\ncomputeSlices() took the image scale factor as an int, but\nStyleImage::imageScaleFactor() returns a float. As a result, an image-set()\nresolution of 1.5x was truncated to 1, which made the source slices too small,\nand 0.5x was truncated to 0, which zeroed every slice so nothing was painted.\n\nTake the scale factor as a float so the slices are scaled by the exact\nresolution.\n\nTest: fast/borders/border-image-image-set-fractional-scale.html\n\n* LayoutTests/fast/borders/border-image-image-set-fractional-scale-expected.html: Added.\n* LayoutTests/fast/borders/border-image-image-set-fractional-scale.html: Added.\n* Source/WebCore/rendering/NinePieceImagePainter.cpp:\n(WebCore::computeSlices):\n\nCanonical link: https://commits.webkit.org/326068@main","order":0,"repository_id":"webkit","timestamp":1794116077},{"author":{"emails":["annevk@annevk.nl","annevk@apple.com"],"name":"Anne van Kesteren"},"branch":"main","hash":"bb5d5745a0d04a24adca2abce5cb84855533c50a","identifier":"326069@main","message":"A disabled base appearance <select multiple size=1> doesn't look disabled\nhttps://bugs.webkit.org/show_bug.cgi?id=330569\nrdar://192149867\n\nReviewed by Tim Nguyen.\n\nGive it a :disabled rule in selectMultipleAndListBox.css. html.css's dropdown\nbox rules only match it where it could be a native dropdown box, as on macOS\nand iOS, and even there that file's base rule overrides their :disabled rule.\n\nhtml.css's dropdown box rules also match base list boxes on iOS, where every\nselect could be a native dropdown box. selectMultipleAndListBox.css overrode\nmost of them, but not the focus border, white-space, or the separator above an\noption that follows an optgroup. That separator also reached multiple dropdown\nboxes on macOS. Override those too.\n\nTest: fast/forms/select/base/select-base-appearance-box-type-styles.html\nCanonical link: https://commits.webkit.org/326069@main","order":0,"repository_id":"webkit","timestamp":1794116183},{"branch":"main","hash":"fe98e375c3264e30cb7d821d8e567fecd5a4dd0a","identifier":"326070@main","order":0,"repository_id":"webkit","timestamp":1794116259},{"author":{"emails":["zakr@apple.com"],"name":"Zak Ridouh"},"branch":"main","hash":"edcd0bfdba1170daab52efba692be85e202078d9","identifier":"326071@main","message":"Fix redundant #require and @preconcurrency warnings in TestWebKitAPI Swift tests\nhttps://bugs.webkit.org/show_bug.cgi?id=330613\nrdar://192176136\n\nReviewed by Richard Robinson.\n\nWhen the result of `try #require(x)` is assigned to an Optional, Swift wraps x in a second\nOptional, so the requirement can never fail. Bind the required value to a local first, so that a\nmissing node identifier in TextExtractionTests fails the test instead of passing nil along.\n\nWKUIDelegatePrivate inherits main actor isolation from WKUIDelegate, so @preconcurrency on its\nconformance has no effect. Remove it.\n\nCanonical link: https://commits.webkit.org/326071@main","order":0,"repository_id":"webkit","timestamp":1794117349},{"branch":"main","hash":"49157fdeec92fb92e0cf3e69d9f891375605b982","identifier":"326072@main","order":0,"repository_id":"webkit","timestamp":1794119302},{"branch":"main","hash":"5ba3ccb870432a2dd63b1fc531a8a7183bb3adca","identifier":"326073@main","order":0,"repository_id":"webkit","timestamp":1794120483},{"author":{"emails":["csaavedra@igalia.com"],"name":"Claudio Saavedra"},"branch":"main","hash":"be0e7f5609ece3c4ba39247f469a4ece203a49cd","identifier":"326074@main","message":"[GLib] NetworkCache::IOChannel::read() can unlock a destroyed channel\nhttps://bugs.webkit.org/show_bug.cgi?id=330573\n\nReviewed by Carlos Garcia Campos.\n\nThe read thread holds m_lock for the whole lambda but moves its\nprotectedThis into the completion dispatched to the caller's queue. If\nthat completion runs and drops the last reference before the read thread\nreturns, the Locker unlocks freed memory. Give the completion its own\nreference, as write() already does.\n\n* Source/WebKit/NetworkProcess/cache/NetworkCacheIOChannelGLib.cpp:\n(WebKit::NetworkCache::IOChannel::read):\n\nCanonical link: https://commits.webkit.org/326074@main","order":0,"repository_id":"webkit","timestamp":1794121318},{"author":{"emails":["zakr@apple.com"],"name":"Zak Ridouh"},"branch":"main","hash":"efc37c2c6ac59bbd5fdc122cf58aff3926166736","identifier":"326076@main","message":"Silence SecIdentityCreate deprecation warning in TestWebKitAPI\nhttps://bugs.webkit.org/show_bug.cgi?id=330617\nrdar://192178566\n\nReviewed by Richard Robinson.\n\nWith the internal SDK, TestCertificates.swift intentionally calls the internal SDK's declaration of\nSecIdentityCreate, which is deprecated for Swift. Ignore DeprecatedDeclaration warnings in\nmakeIdentity(privateKey:certificate:) with @diagnose.\n\nCanonical link: https://commits.webkit.org/326076@main","order":0,"repository_id":"webkit","timestamp":1794121604},{"branch":"main","hash":"ec27c970e5413d2c1e4ad8b1b0f7b3320caa1d97","identifier":"326077@main","order":0,"repository_id":"webkit","timestamp":1794121750},{"author":{"emails":["timothy@apple.com","timothy@hatcher.name"],"name":"Timothy Hatcher"},"branch":"main","hash":"0d97a6e655d0b7cdf74b66cf607a5fee75a621cd","identifier":"326078@main","message":"Use `any` only when no icon size is large enough in icon_variants.\nhttps://webkit.org/b/330501\nrdar://problem/192098547\n\nReviewed by Kiara Rose.\n\nWebExtension::bestIconSize returned `any` before looking at the explicit sizes, so an icon group\nwith both `any` and a large enough size always used `any`. Pick an exact size first, then the\nsmallest larger size, then `any`, then the largest smaller size, as proposed in\nhttps://github.com/w3c/webextensions/issues/949. Chromium uses `any` only when no size matches, and\nthis makes Safari do the same.\n\n* Source/WebKit/UIProcess/Extensions/WebExtension.cpp:\n(WebKit::WebExtension::bestIconSize): Consider `any` only after the explicit sizes fail to cover the\nideal size.\n* Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebExtension.mm:\n(TestWebKitAPI::TEST(WKWebExtension, IconVariantPrefersLargeEnoughSizeOverAny)): Added.\n(TestWebKitAPI::TEST(WKWebExtension, IconVariantUsesAnyWhenNoSizeIsLargeEnough)): Added.\n\nCanonical link: https://commits.webkit.org/326078@main","order":0,"repository_id":"webkit","timestamp":1794128160},{"branch":"main","hash":"f4a8de9b3b3994f0a0d3d602ae510a8646249a7e","identifier":"326079@main","order":0,"repository_id":"webkit","timestamp":1794129536},{"author":{"emails":["csaavedra@igalia.com"],"name":"Claudio Saavedra"},"branch":"main","hash":"8c07f21e435d0b9b0969768d6a31c415a8ea066b","identifier":"326080@main","message":"[GLib] JSCException must keep its virtual machine alive\nhttps://bugs.webkit.org/show_bug.cgi?id=330582\n\nReviewed by Carlos Garcia Campos.\n\nJSCException holds a JSC::Strong into the VM of the context it was\nraised in, but only a weak pointer to that context. The context drops\nits JSGlobalContext and JSCVirtualMachine in dispose, which can destroy\nthe VM, and only then destroys its pending exception in finalize, so\nthe Strong handle is released against a freed StrongSet. The same\nhappens for any exception the API user keeps past the context.\n\nHold a reference to the JSCVirtualMachine, which does not reference the\nexception back.\n\n* Source/JavaScriptCore/API/glib/JSCException.cpp:\n(jscExceptionCreate):\n\nCanonical link: https://commits.webkit.org/326080@main","order":0,"repository_id":"webkit","timestamp":1794130815},{"branch":"main","hash":"e37d2093994357fe2a3ea5ebe7cea3eb68c1abab","identifier":"326081@main","order":0,"repository_id":"webkit","timestamp":1794131273},{"branch":"main","hash":"7a51be98171b0ffcc04b3f54f3b901de5ff305b5","identifier":"326082@main","order":0,"repository_id":"webkit","timestamp":1794134090},{"branch":"main","hash":"974011404e16882815418fb6231b420734d8335b","identifier":"326083@main","order":0,"repository_id":"webkit","timestamp":1794134827},{"branch":"main","hash":"b2d2c2de1c74e095233e4ed243272fa7f0f89698","identifier":"326084@main","order":0,"repository_id":"webkit","timestamp":1794135641},{"branch":"main","hash":"eeb5ad7ee1d7a6f0430b515a0bdd3e6f68f59feb","identifier":"326085@main","order":0,"repository_id":"webkit","timestamp":1794146387},{"author":{"emails":["mark@mtechnic.me"],"name":"Mark Beznos"},"branch":"main","hash":"35ed3da21d9b2e0412eeac12208b15fc2d6e42e8","identifier":"326086@main","message":"[Win] Build WebCore as an OBJECT library\nhttps://bugs.webkit.org/show_bug.cgi?id=330565\n\nReviewed by Ian Grunert.\n\nThis is the requested split-off of a required build-only fix for #79486.\nOn Windows, WebCore is a DLL and Skia is a static library, so WebCore.dll\nand WebKit2.dll each get their own copy of Skia and its globals. Calling\nSkGraphics::SetOpenTypeSVGDecoderFactory() from WebKit2.dll does nothing\nfor the copy in WebCore.dll that rasterizes glyphs, and\nSkGraphics::PurgeAllCaches() in WebCore only purges its own copy.\n\nWebCore became a shared library back when WebKitLegacy also\nlinked it. WebKitLegacy is gone from the Windows port, so build WebCore\nas an OBJECT library and link it into `WebKit2.dll`, just like\nGTK/WPE/PlayStation do.\n\nFixes are:\n - Get rid of the `DllMain` that caused a collision, and replace it with\n   a linker-provided handle to WebCore.\n - De-dupe the RenderingMode IDL enum\n - Add `ole32` to PlatformWin.cmake. Swift doesn't have it in its\n   defaults so it needed to be added. When built without Swift it's fine,\n   as it's in CMake's default list.\n\n* Source/WebCore/PlatformWin.cmake:\n* Source/WebCore/html/canvas/RenderingMode.idl:\n* Source/WebCore/platform/win/WebCoreInstanceHandle.cpp:\n(WebCore::instanceHandle):\n(DllMain): Deleted.\n* Source/WebCore/testing/Internals.idl:\n* Source/cmake/OptionsWin.cmake:\n\nCanonical link: https://commits.webkit.org/326086@main","order":0,"repository_id":"webkit","timestamp":1794152190},{"author":{"emails":["keith_miller@apple.com"],"name":"Keith Miller"},"branch":"main","hash":"dfc5269dca267cb9068db63dbdf8439f83f360f8","identifier":"326087@main","message":"Add inline capacity sanity check when copying a Vector\nhttps://bugs.webkit.org/show_bug.cgi?id=330455\nrdar://192066146\n\nReviewed by Anne van Kesteren.\n\nIf we got this wrong sadness would ensue, particularly for Vectors on\nthe stack.\n\nCanonical link: https://commits.webkit.org/326087@main","order":0,"repository_id":"webkit","timestamp":1794152312},{"branch":"main","hash":"3f5092b0be9fd3979d30b71358d0c6712cd9ca58","identifier":"326088@main","order":0,"repository_id":"webkit","timestamp":1794154728},{"author":{"emails":["rniwa@webkit.org","rniwa@apple.com"],"name":"Ryosuke Niwa"},"branch":"main","hash":"6ec624e39f423614b907166b7be7b2441e1f4953","identifier":"326089@main","message":"Re-enable all the tests in http/tests/site-isolation/ios\nhttps://bugs.webkit.org/show_bug.cgi?id=330437\n\nReviewed by Wenson Hsieh.\n\nEnable all the tests under http/tests/site-isolation/ios on iOS.\n\n* LayoutTests/platform/ios/TestExpectations:\n\nCanonical link: https://commits.webkit.org/326089@main","order":0,"repository_id":"webkit","timestamp":1794157679},{"branch":"main","hash":"6f51024c8d6808030b0bdc2a690f57bc330dd460","identifier":"326090@main","order":0,"repository_id":"webkit","timestamp":1794157940},{"branch":"main","hash":"a278105a350447bea3f013b7c9c1b99b1f9b2e38","identifier":"326091@main","order":0,"repository_id":"webkit","timestamp":1794158651},{"branch":"main","hash":"5494cb4d4c0418a823554a36e7766038e9a90083","identifier":"326092@main","order":0,"repository_id":"webkit","timestamp":1794162967},{"author":{"emails":["mwyrzykowski@apple.com"],"name":"Mike Wyrzykowski"},"branch":"main","hash":"293474aeaf9fc39627d6fdda46b19d16845ace82","identifier":"326093@main","message":"[MacOS Debug]http/tests/webgpu/webgpu/api/validation/render_pipeline/resource_compatibility.html times out due to combinatorial complexity\nhttps://bugs.webkit.org/show_bug.cgi?id=306670\nrdar://169316951\n\nReviewed by Gerald Squelart.\n\nBuild each WGSL builtin's overload candidates lazily, on the first type-checker lookup, instead\nof building all of them for every parsed shader, and remove the Debug Timeout expectation that\nwas overriding this test's Slow timeout.\n\nThis reduces the time roughly by half.\n\n* LayoutTests/platform/mac-wk2/TestExpectations:\n* Source/WebGPU/WGSL/Overload.h:\n* Source/WebGPU/WGSL/TypeCheck.cpp:\n(WGSL::TypeChecker::declareBuiltins):\n(WGSL::typeCheck):\n* Source/WebGPU/WGSL/WGSLShaderModule.cpp:\n(WGSL::ShaderModule::overloadCandidates):\n* Source/WebGPU/WGSL/WGSLShaderModule.h:\n* Source/WebGPU/WGSL/generator/main.rb:\n\nCanonical link: https://commits.webkit.org/326093@main","order":0,"repository_id":"webkit","timestamp":1794164048},{"branch":"main","hash":"5ff6af3c5c47aa63d8a548f38e26aed0bd1ead23","identifier":"326094@main","order":0,"repository_id":"webkit","timestamp":1794164341},{"branch":"main","hash":"75dff6dba87fafb94367ddb5bb155a110963ba80","identifier":"326095@main","order":0,"repository_id":"webkit","timestamp":1794165497},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"b7e4f1ae76f66dd30c14c27d46770d7e3f2795f5","identifier":"326096@main","message":"Replace MouseButton sentinel values with std::expected<MouseButton, MouseButtonState>\nhttps://bugs.webkit.org/show_bug.cgi?id=329651\nrdar://191457726\n\nReviewed by Ryosuke Niwa.\n\nMouseButton held two internal sentinels alongside the values the DOM can expose: None (-2) for \"no button\"\nand PointerHasNotChanged (-1) for pointer events whose pressed button hasn't changed since the last event.\nStoring None in the same enum is what let MouseEvent's constructors confuse a script-provided button of -2\nwith \"no button\" (325341@main).\n\nMove both sentinels out of MouseButton into a new MouseButtonState enum, and represent a button that may be\nabsent as std::expected<MouseButton, MouseButtonState>. MouseButton now only holds real buttons, Left through\nOther. MouseButtonState keeps the old -2 and -1 values so that code which needs the raw number, like\nWebKitLegacy's WebActionButtonKey and the -1 the DOM exposes for PointerHasNotChanged, still gets it.\n\nPlatformMouseEvent::button(), MouseEvent::button(), the MouseEvent and PointerEvent constructors and create()\nfunctions, PointerCaptureController and NavigationAction::MouseEventData now use the std::expected.\nMouseEvent::button() maps a stored -1 to PointerHasNotChanged; buttonFromShort() only deals with real buttons.\nThe MouseEvent constructors keep their behavior of reporting button 0, a non-pressed buttonDown and\nSyntheticClickType::NoTap for MouseButtonState::None, and storing -1 for PointerHasNotChanged.\n\nFake and synthetic mouse events in EventHandler, Element, TextExtraction and WebPage now pass\nstd::unexpected { MouseButtonState::None }. WebEventConversion and WKSharedAPICast map\nWebMouseEventButton::None and kWKEventMouseButtonNoButton to and from MouseButtonState::None.\nUnifiedPDFPlugin tracks the hover state with !button.\n\nNo behavior change.\n\n* Source/WebCore/dom/Element.cpp:\n(WebCore::Element::dispatchMouseForceWillBegin):\n* Source/WebCore/dom/MouseEvent.cpp:\n(WebCore::hasNoButton):\n(WebCore::buttonValue):\n(WebCore::MouseEvent::create):\n(WebCore::MouseEvent::MouseEvent):\n(WebCore::MouseEvent::button const):\n* Source/WebCore/dom/MouseEvent.h:\n* Source/WebCore/dom/MouseEventTypes.h:\n(WebCore::buttonFromShort):\n* Source/WebCore/dom/PointerEvent.cpp:\n(WebCore::PointerEvent::create):\n(WebCore::createCoalescedPointerEvents):\n(WebCore::createPredictedPointerEvents):\n(WebCore::PointerEvent::PointerEvent):\n* Source/WebCore/dom/PointerEvent.h:\n(WebCore::PointerEvent::buttonForType):\n* Source/WebCore/loader/NavigationAction.h:\n* Source/WebCore/page/EventHandler.cpp:\n(WebCore::EventHandler::updateMouseEventTargetAfterLayoutIfNeeded):\n(WebCore::EventHandler::fakeMouseMoveEventTimerFired):\n(WebCore::EventHandler::mousePointerDidDisappear):\n* Source/WebCore/page/PointerCaptureController.cpp:\n(WebCore::PointerCaptureController::dispatchEventForTrackedPointer):\n(WebCore::PointerCaptureController::pointerEventForMouseEvent):\n* Source/WebCore/page/PointerCaptureController.h:\n* Source/WebCore/page/text-extraction/TextExtraction.cpp:\n(WebCore::TextExtraction::dispatchSimulatedHover):\n* Source/WebCore/platform/PlatformMouseEvent.h:\n(WebCore::PlatformMouseEvent::PlatformMouseEvent):\n(WebCore::PlatformMouseEvent::button const):\n* Source/WebCore/platform/mac/PlatformEventFactoryMac.h:\n* Source/WebCore/platform/mac/PlatformEventFactoryMac.mm:\n(WebCore::currentMouseButton):\n(WebCore::buttonFromButtonNumber):\n(WebCore::mouseButtonForEvent):\n* Source/WebCore/platform/win/PlatformMouseEventWin.cpp:\n(WebCore::PlatformMouseEvent::PlatformMouseEvent):\n* Source/WebKit/Shared/API/c/WKSharedAPICast.h:\n(WebKit::toAPI):\n* Source/WebKit/Shared/WebEventConversion.cpp:\n(WebKit::platform):\n(WebKit::kit):\n* Source/WebKit/Shared/WebEventConversion.h:\n* Source/WebKit/Shared/mac/WebEventFactory.mm:\n(WebKit::buttonsMaskForMouseButton):\n* Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:\n* Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.cpp:\n(webkit_dom_mouse_event_get_button):\n* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.h:\n* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm:\n(WebKit::UnifiedPDFPlugin::handleMouseEvent):\n(WebKit::UnifiedPDFPlugin::startTrackingAnnotation):\n(WebKit::UnifiedPDFPlugin::finishTrackingAnnotation):\n(WebKit::AnnotationTrackingState::startAnnotationTracking):\n(WebKit::AnnotationTrackingState::finishAnnotationTracking):\n* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:\n(WebKit::dispatchSyntheticMouseMove):\n* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:\n(WebKit::WebPage::inspectorNodeSearchMovedToPosition):\n* Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm:\n(WebFrameLoaderClient::actionDictionary const):\n* Source/WebKitLegacy/mac/WebView/WebPDFView.mm:\n(-[WebPDFView PDFViewWillClickOnLink:withURL:]):\n* Tools/DumpRenderTree/mac/EventSendingController.mm:\n\nCanonical link: https://commits.webkit.org/326096@main","order":0,"repository_id":"webkit","timestamp":1794170653},{"author":{"emails":["david.burns@theautomatedtester.co.uk"],"name":"David Burns"},"branch":"main","hash":"8156ba68efabb4974a94857b1e72e056a51a02bc","identifier":"326097@main","message":"[WebDriver] Support the map form of the unhandledPromptBehavior capability\nhttps://bugs.webkit.org/show_bug.cgi?id=289307\n\nReviewed by Alexey Proskuryakov.\n\nWebDriver only accepted unhandledPromptBehavior as a string, so a session\nrequesting a per-prompt-type map such as {\"default\": \"ignore\"} failed to\nstart. Most WebDriver BiDi user prompt tests use the map form.\n\nParse the capability as a string or a map of prompt types (alert,\nbeforeUnload, confirm, default, file, prompt) to handlers, store it as a\nuser prompt handler, and serialize it back in the new session response as\nthe spec describes. When handling a user prompt in a classic command, ask\nthe browser for the dialog type through a new Automation command,\ntypeOfCurrentJavaScriptDialog, and pick the handler with the spec's\n\"get the prompt handler\" steps. If typeOfCurrentJavaScriptDialog reports\nthat no dialog is showing, the dialog closed after isShowingJavaScriptDialog\nreturned true, so there is nothing to handle.\n\nThe beforeUnload entry is parsed, validated and returned, but changes no\nbehavior yet: under automation, WebPageProxy::runBeforeUnloadConfirmPanel()\nalways lets the unload proceed, so no beforeunload prompt reaches the\nclassic prompt handling, before or after this change. It will matter once\nWebDriver BiDi sessions get beforeunload prompts.\n\nTest expectations, from a GTK Release build with asserts:\n\n- classic/new_session/unhandled_prompt_behavior.py passes on GTK. On Mac,\n  the five test_beforeunload_prompts_always_automatically_accepted subtests\n  still fail, because the test's own session lacks acceptInsecureCerts and\n  can't load its https:// page, so they are kept as failing there.\n- bidi file/ignore.py now passes fully, so drop its entry.\n- bidi file/accept.py and file/dismiss.py map-form subtests now get past\n  session creation and wait for a file picker WebKit never opens, the same\n  as the string form. Expect TIMEOUT under bug 291665 (file handler).\n- handle_user_prompt.py test_two_top_level_contexts and\n  user_prompt_closed.py test_unsubscribe now pass.\n- user_prompt_closed.py test_subscribe_to_one_context times out, matching\n  the same subtests in user_prompt_opened.py (bug 282981).\n\n* Source/WebDriver/Capabilities.h:\n* Source/WebDriver/Session.cpp:\n(WebDriver::promptHandlerForType):\n(WebDriver::userPromptTypeFromDialogType):\n(WebDriver::Session::handleUnexpectedAlertOpen):\n* Source/WebDriver/WebDriverService.cpp:\n(WebDriver::deserializePromptHandlerConfiguration):\n(WebDriver::deserializeUnhandledPromptBehavior):\n(WebDriver::serializePromptHandlerConfiguration):\n(WebDriver::serializeUserPromptHandler):\n(WebDriver::WebDriverService::parseCapabilities const):\n(WebDriver::WebDriverService::validatedCapabilities const):\n(WebDriver::WebDriverService::createSession):\n* Source/WebKit/UIProcess/Automation/Automation.json:\n* Source/WebKit/UIProcess/Automation/WebAutomationSession.cpp:\n(WebKit::WebAutomationSession::typeOfCurrentJavaScriptDialog):\n* Source/WebKit/UIProcess/Automation/WebAutomationSession.h:\n* WebDriverTests/TestExpectations.json:\n\nCanonical link: https://commits.webkit.org/326097@main","order":0,"repository_id":"webkit","timestamp":1794172039},{"branch":"main","hash":"b9ab19d3f352cfff50bbdfc6ce11a78c023d1809","identifier":"326098@main","order":0,"repository_id":"webkit","timestamp":1794172229},{"branch":"main","hash":"b2409dc0bcd663302d17bb22385f0b7033959706","identifier":"326099@main","order":0,"repository_id":"webkit","timestamp":1794174017},{"branch":"main","hash":"0c5429f25ad6cba44c1fb397c78144f8b6017a77","identifier":"326100@main","order":0,"repository_id":"webkit","timestamp":1794175106},{"branch":"main","hash":"169fb07e6a72c3ba289b3d4601dd2e0c59b87934","identifier":"326101@main","order":0,"repository_id":"webkit","timestamp":1794178220},{"author":{"emails":["csaavedra@igalia.com"],"name":"Claudio Saavedra"},"branch":"main","hash":"dad355f82ca22cc3b6fc2f77700bc2e1d239486c","identifier":"326102@main","message":"[WPE] Copied markup from file: documents resolves relative URLs to absolute paths\nhttps://bugs.webkit.org/show_bug.cgi?id=330659\n\nReviewed by Ryosuke Niwa.\n\nWhen serializing markup with ResolveURLs::YesExcludingURLsForPrivacy, GTK\nkeeps relative URLs as they are in documents loaded from file: URLs, so\nthe copied markup does not carry local file paths. WPE resolved them to\nabsolute file: URLs. Apply the same rule to WPE.\n\n* LayoutTests/platform/wpe/TestExpectations:\n* Source/WebCore/dom/Element.cpp:\n(WebCore::Element::resolveURLStringIfNeeded const):\n\nCanonical link: https://commits.webkit.org/326102@main","order":0,"repository_id":"webkit","timestamp":1794179539},{"branch":"main","hash":"0405d02cae069eb553906a55b8638e0ce5d840be","identifier":"326103@main","order":0,"repository_id":"webkit","timestamp":1794179672},{"branch":"main","hash":"96b48ec0782257e7fc3373527ec1ce2a1e4d8ab1","identifier":"326104@main","order":0,"repository_id":"webkit","timestamp":1794181475},{"branch":"main","hash":"8b9217228b38a1fdff2feb442c3be513b66167ec","identifier":"326105@main","order":0,"repository_id":"webkit","timestamp":1794185094},{"author":{"emails":["nathan_solomon@apple.com"],"name":"Nathan Solomon"},"branch":"main","hash":"f310728c7012151f30108f04e7d56101bf0ac05d","identifier":"326106@main","message":"Attach the parsed tree to the document after fast path parsing instead of before fast path parsing\nhttps://bugs.webkit.org/show_bug.cgi?id=330199\nrdar://191828455\n\nReviewed by Ryosuke Niwa.\n\nDocument::setMarkupUnsafe inserts the html and body elements into the new document before\nrunning HTMLFastPathParser into the body. Since the body is already connected, the parser\nappends every node with ContainerNode::parserAppendChild(), which calls childrenChanged()\non the parent each time a node is added.\n\nWe started connecting the body first in 274429@main, to avoid a second traversal of the\nparsed subtree. Before that commit's optimization, the parsed body was added to a disconnected\nhtml element after parsing, so the parsed nodes were walked once when body was added to\nhtml and again when html was inserted into the document.\n\nThis patch avoids that traversal in a different way. It parses into a disconnected body again,\nbut puts the empty body inside html before parsing starts, so adding body to html only\nvisits body. Once parsing is done, we insert html into the document, which runs the\ninsertion steps for every parsed node in a single pass. This is only cheaper because of 291710@main,\nwhich made parserAppendChildIntoIsolatedTree() only link the node into the tree without\nrunning its insertion steps. So each parsed node still runs its insertion steps exactly once,\nas with 274429@main, but they now run when the html element is inserted into the document instead of in\nparserAppendChild(). What we no longer pay is the rest of the per-node cost of connected\nappends from using parserAppendChild(). Each parent gets one childrenChanged() call when its\nparsing finishes, as with innerHTML. If the fast path parser gives up, the partial tree was\nnever inserted, so nothing has to be removed before falling back to the full parser.\n\nsetMarkupUnsafe was the only caller that ran the fast path parser into a connected parent, so\nalso remove the parserAppendChild() branches 274429@main added to HTMLFastPathParser. It now\nalways appends with parserAppendChildIntoIsolatedTree(), as it did before 274429@main.\n\nTest: fast/dom/domparser-fast-path-connected-tree.html\n\n* LayoutTests/fast/dom/domparser-fast-path-connected-tree-expected.txt: Added.\n* LayoutTests/fast/dom/domparser-fast-path-connected-tree.html: Added.\n* Source/WebCore/dom/Document.cpp:\n(WebCore::Document::setMarkupUnsafe):\n* Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp:\n(WebCore::HTMLFastPathParser::parseChildren):\n(WebCore::HTMLFastPathParser::parseContainerElement):\n(WebCore::HTMLFastPathParser::parseVoidElement):\n(WebCore::tryFastParsingHTMLFragment):\n\nCanonical link: https://commits.webkit.org/326106@main","order":0,"repository_id":"webkit","timestamp":1794186284},{"author":{"emails":["ap@webkit.org","ap@apple.com"],"name":"Alexey Proskuryakov"},"branch":"main","hash":"5a733f5cd352894b9efe9661f26f49b8786628cf","identifier":"326107@main","message":"[WebDriver] Move the minidriver Xcode project to Tools\nhttps://bugs.webkit.org/show_bug.cgi?id=330653\n\nReviewed by Zak Ridouh.\n\nminidriver is a test tool that doesn't ship, but 324928@main put its Xcode project in Source/WebDriver. Move the\nproject, its configurations and its Makefile to Tools/minidriver, next to the other test tools.\n\nThe sources stay in Source/WebDriver. minidriver is the shared WebDriver program built for Mac, and the Cocoa files\nimplement its shared classes, as the soup and socket files do for the other ports. The only code that's specific to\ntesting launches MiniBrowser. It can move to Tools/minidriver once SessionHost has an abstract transport that each\ndriver provides.\n\n* Source/WebDriver/Makefile: Removed.\n* Tools/CISupport/ews-build/steps.py:\n(CheckChangeRelevance):\n* Tools/CISupport/ews-build/steps_unittest.py:\n(TestCheckChangeRelevanceForWebDriver.test_relevant_files):\n* Tools/Makefile:\n* Tools/minidriver/Configurations/Base.xcconfig: Renamed from Source/WebDriver/Configurations/Base.xcconfig.\n* Tools/minidriver/Configurations/DebugRelease.xcconfig: Renamed from Source/WebDriver/Configurations/DebugRelease.xcconfig.\n* Tools/minidriver/Configurations/minidriver.xcconfig: Renamed from Source/WebDriver/Configurations/minidriver.xcconfig.\n* Tools/minidriver/Makefile: Added.\n* Tools/minidriver/minidriver.xcodeproj/project.pbxproj: Renamed from Source/WebDriver/minidriver.xcodeproj/project.pbxproj.\n* Tools/minidriver/minidriver.xcodeproj/xcshareddata/xcschemes/minidriver.xcscheme: Renamed from Source/WebDriver/minidriver.xcodeproj/xcshareddata/xcschemes/minidriver.xcscheme.\n* WebKit.xcworkspace/contents.xcworkspacedata:\n* WebKit.xcworkspace/xcshareddata/xcschemes/All WebKit Tools.xcscheme:\n* WebKit.xcworkspace/xcshareddata/xcschemes/Everything up to WebKit + Tools.xcscheme:\n\nCanonical link: https://commits.webkit.org/326107@main","order":0,"repository_id":"webkit","timestamp":1794192278},{"author":{"emails":["akeerthi@apple.com","pxlcoder@gmail.com"],"name":"Aditya Keerthi"},"branch":"main","hash":"c7a66b6fee36ef6209360a9cc4e9d9d195b0c7f0","identifier":"326108@main","message":"[iOS] Add a GraphicsLayer property to hide layer contents from screen capture\nhttps://bugs.webkit.org/show_bug.cgi?id=330386\nrdar://191995843\n\nReviewed by Abrar Rahman Protyasha.\n\nAdd a `hidesFromScreenCapture` property to GraphicsLayer, in preparation for\nhiding password fields from screenshots, screen sharing and screen recording.\n\nOn Cocoa platforms, the property sets `kCALayerDisableUpdateSnapshot` and\n`kCALayerDisableUpdateCloned` in the CALayer's `disableUpdateMask`, which hides\nthe layer's contents from screen capture. With UI-side compositing, the property\nis sent to the UI process in the remote layer tree transaction, and applied to\nthe corresponding CALayer there.\n\nNo change in behavior, since nothing sets the property yet.\n\n* Source/WebCore/Configurations/AllowedSPI.toml:\n* Source/WebCore/PAL/pal/spi/cocoa/QuartzCoreSPI.h:\n\nDeclare and allow the `disableUpdateMask` SPI.\n\n* Source/WebCore/platform/graphics/GraphicsLayer.cpp:\n(WebCore::GraphicsLayer::GraphicsLayer):\n(WebCore::GraphicsLayer::dumpProperties const):\n* Source/WebCore/platform/graphics/GraphicsLayer.h:\n(WebCore::GraphicsLayer::setHidesFromScreenCapture):\n(WebCore::GraphicsLayer::hidesFromScreenCapture const):\n* Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:\n(WebCore::GraphicsLayerCA::setHidesFromScreenCapture):\n(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):\n(WebCore::GraphicsLayerCA::updateHidesFromScreenCapture):\n(WebCore::GraphicsLayerCA::layerChangeAsString):\n(WebCore::GraphicsLayerCA::changeLayerTypeTo):\n\nReapply the property to the new platform layer when the layer type changes.\n\n* Source/WebCore/platform/graphics/ca/GraphicsLayerCA.h:\n* Source/WebCore/platform/graphics/ca/PlatformCALayer.h:\n* Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.h:\n* Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:\n(WebCore::PlatformCALayerCocoa::setHidesFromScreenCapture):\n* Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.h:\n* Source/WebCore/platform/graphics/cocoa/WebCoreCALayerExtras.mm:\n(-[CALayer _web_setHidesFromScreenCapture:]):\n\nShared by PlatformCALayerCocoa and RemoteLayerTreePropertyApplier. Only the\nscreen capture bits are updated, so any other bits in the mask are preserved.\n\n* Source/WebKit/Shared/RemoteLayerTree/LayerProperties.h:\n* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTree.serialization.in:\n* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:\n(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):\n* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm:\n(WebKit::dumpChangedLayers):\n* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.h:\n* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.mm:\n(WebKit::PlatformCALayerRemote::setHidesFromScreenCapture):\n\nCanonical link: https://commits.webkit.org/326108@main","order":0,"repository_id":"webkit","timestamp":1794194965},{"author":{"emails":["thorton@apple.com","timothy_horton@apple.com"],"name":"Tim Horton"},"branch":"main","hash":"6ee52ff1669711163e3f0b24499edbef50766b19","identifier":"326109@main","message":"bsky.app: Full Screen button does not lose focus state after clicking\nhttps://bugs.webkit.org/show_bug.cgi?id=330405\nrdar://179407237\n\nReviewed by Abrar Rahman Protyasha and Lily Spiniolas.\n\nIt is specified that pointerleave events are still supposed to be dispatched to the ancestors\nof an element that is detached during event processing, but we do not do so!\n\nTo fix, as the spec says, keep track of the nearest connected ancestor in order to dispatch the relevant events.\nAlso, make sure not to break dispatch to the original element if it is reinserted in time.\n\nThis repairs some WPTs, and gets others closer to a passing state, while also fixing the aforementioned\nBluesky video player bug.\n\n* LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_after_target_removed_from_slot_mouse-expected.txt:\nNow passing!\n\n* LayoutTests/imported/w3c/web-platform-tests/pointerevents/pointerevent_pointer_boundary_events_after_removing_last_over_element-expected.txt:\nCloser to passing!\n\n* LayoutTests/imported/w3c/web-platform-tests/uievents/mouse/mouse_boundary_events_after_removing_last_over_element-expected.txt:\nCloser to passing!\n\n* Source/WebCore/page/EventHandler.cpp:\n(WebCore::EventHandler::clear): Reset the new member.\n\n(WebCore::EventHandler::nodeWillBeRemoved):\nIf the lastElementUnderMouse is disconnected, keep track of its nearest connected ancestor.\nIf the nearest connected ancestor is removed, keep climbing up the tree.\n\n(WebCore::EventHandler::updateMouseEventTargetNode):\nChoose the correct element to dispatch mouseleave events to.\n\n* Source/WebCore/page/EventHandler.h:\n\nCanonical link: https://commits.webkit.org/326109@main","order":0,"repository_id":"webkit","timestamp":1794195443},{"author":{"emails":["ddkilzer@webkit.org","ddkilzer@apple.com"],"name":"David Kilzer"},"branch":"main","hash":"686b332795d51fe6a920ee1f71e08b82730fd6b2","identifier":"326110@main","message":"run-webkit-tests --leaks reports most WebKit leaks without allocation stacks\n<https://bugs.webkit.org/show_bug.cgi?id=330654>\n<rdar://192206922>\n\nReviewed by Zak Ridouh.\n\nSet `SYSTEM_HEAP_USE_DEFAULT_ZONE=1` for `--leaks` runs so bmalloc's\nsystem heap allocates from the default malloc zone.  `--leaks` sets\n`MallocScribble`, which makes bmalloc use system malloc in its own\n\"WebKit Using System Malloc\" zone.  Starting with macOS 26, malloc\nstack logging treats `MallocStackLogging=1` as lite mode, which records\nstacks only for the default zone, so almost every WebKit leak in the\n`.memgraph` files was listed under `NO STACK`.  bmalloc switches to the\ndefault zone on its own only when the value is exactly `lite`.\n\nAlso set the `__XPC_`-prefixed copy, since the WebContent, Networking,\nand GPU processes are XPC services that inherit only `__XPC_` variables\n(with the prefix removed) from the launching process.\n\nAlso cite rdar://192206298 for the `NSSpellChecker init` leak exclusion,\nthe radar that tracks that leak today.\n\nTests: Tools/Scripts/webkitpy/port/ios_simulator_unittest.py\n       Tools/Scripts/webkitpy/port/mac_unittest.py\n       Tools/Scripts/webkitpy/port/visionos_simulator_unittest.py\n       Tools/Scripts/webkitpy/port/watch_simulator_unittest.py\n\n* Tools/Scripts/webkitpy/port/darwin_testcase.py:\n(DarwinTest.assert_leaks_and_guard_malloc_environment): Add.\n- Check that each `--leaks` and `--guard-malloc` variable and its\n  `__XPC_` copy is set only when its option is on.  The Mac and\n  simulator port tests run it for every combination of both options.\n\nCanonical link: https://commits.webkit.org/326110@main","order":0,"repository_id":"webkit","timestamp":1794196280},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"d7f80f1876f14d7fa7f3c81b8fb41b10d7a66c56","identifier":"326111@main","message":"[CSS Values] A lone negative calc() as a ratio makes (aspect-ratio > calc(-1)) unknown\nhttps://bugs.webkit.org/show_bug.cgi?id=329410\nrdar://191932768\n\nReviewed by Sam Weinig.\n\nA <ratio> written as one number is that number over 1 [1], and each number\nof a <ratio> is a <number [0,\u221e]> [1]. A calculation below 0 where such a\nnumber is taken is valid and clamps to 0: \"the value resulting from a\ntop-level calculation must be clamped to the range allowed in the target\ncontext\" [2]. So (aspect-ratio > calc(-1)) is (aspect-ratio > 0), and\ncalc(-1)/2 is 0/2.\n\nGenericMediaQueryParser consumes a ratio feature's value as two numbers\nfirst, which already clamps a calc() in either position. A lone number\ninstead falls through to an unbounded <integer> or <number>, and the Ratio\ncase of validateFeatureAgainstSchema() returned false whenever it resolved\nbelow 0. That is right for a literal such as -1, which is out of range and\ninvalid [2], but not for a calc(). (aspect-ratio > calc(-1)) and\nnot (aspect-ratio < calc(-1)) were therefore both unknown, in @media and in\n@container, while (min-aspect-ratio: calc(-1)/2) matched.\n\nClamp a calc() result to 0 for the lone integer and number cases, and keep\nrejecting negative literals.\n\n[1] https://www.w3.org/TR/css-values-4/#ratios\n[2] https://www.w3.org/TR/css-values-4/#calc-range\n\nTest: imported/w3c/web-platform-tests/css/mediaqueries/aspect-ratio-calc-negative.html\n\n* Source/WebCore/css/query/GenericMediaQueryParser.cpp:\n(WebCore::MQ::FeatureParser::validateFeatureAgainstSchema):\n* LayoutTests/imported/w3c/web-platform-tests/css/mediaqueries/aspect-ratio-calc-negative-expected.txt: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/mediaqueries/aspect-ratio-calc-negative.html: Added.\n\nCanonical link: https://commits.webkit.org/326111@main","order":0,"repository_id":"webkit","timestamp":1794197119},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"18c3ccb57ac3f9b8866ea42aadd95c87359256cd","identifier":"326112@main","message":"Flex item containing a percentage-sized <svg> in an aspect-ratio box is sized larger than its content\nhttps://bugs.webkit.org/show_bug.cgi?id=328991\nrdar://problem/191625502\n\nReviewed by Alan Baradlay.\n\nA box with `aspect-ratio`, a definite height and `width: auto` contributes\nits ratio-derived width to its parent's intrinsic sizes. However,\napplyAutomaticContentBasedMinimumSize() raised both the min-content and the\nmax-content contributions to the content's own sizes. A percentage-sized\nreplaced child such as an <svg> without a viewBox has a zero min-content\ncontribution but a max-content contribution of its 300px default width, so the\nbox's max-content contribution became 300px even though the box itself laid\nout at the correct size. A shrink-to-fit parent, such as a flex item or an\n`auto` grid track, was then sized from that inflated value.\n\nCSS Box Sizing Level 4, section 4.3 \"Automatic Content-based Minimum Sizes\",\nhttps://www.w3.org/TR/css-sizing-4/#aspect-ratio-minimum, says:\n\n    \"In order to avoid unintentional overflow, the automatic minimum size in\n    the ratio-dependent axis of a box with a preferred aspect ratio that is\n    neither a replaced element, nor a scroll container in that axis, is its\n    min-content size capped by its maximum size.\"\n\nThe automatic minimum is the min-content size, so it only raises the minimum\nsize; the max-content size is not involved. Floor the max-content contribution\nby the raised minimum instead of by the content's max-content size.\n\nThe same helper is reached through computeIntrinsicKeywordLogicalWidths(), so\n`width: max-content` and `width: fit-content` on the aspect-ratio box itself\nare fixed as well. The now-unused max-content value is no longer computed.\nThe test also covers a min-content wider than the ratio width, where the floor\nmust still raise the contribution.\n\nTests: imported/w3c/web-platform-tests/css/css-flexbox/aspect-ratio-nonreplaced-max-content-contribution-001-ref.html\n       imported/w3c/web-platform-tests/css/css-flexbox/aspect-ratio-nonreplaced-max-content-contribution-001.html\n       imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-001-ref.html\n       imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-001.html\n       imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-002-ref.html\n       imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-002.html\n       imported/w3c/web-platform-tests/css/css-grid/grid-items/aspect-ratio-nonreplaced-max-content-contribution-002-ref.html\n       imported/w3c/web-platform-tests/css/css-grid/grid-items/aspect-ratio-nonreplaced-max-content-contribution-002.html\n\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/aspect-ratio-nonreplaced-max-content-contribution-001-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/aspect-ratio-nonreplaced-max-content-contribution-001-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/aspect-ratio-nonreplaced-max-content-contribution-001.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-001-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-001-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-001.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-002-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-002-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flex-item-aspect-ratio-svg-use-symbol-002.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/aspect-ratio-nonreplaced-max-content-contribution-002-expected.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/aspect-ratio-nonreplaced-max-content-contribution-002-ref.html: Added.\n* LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/aspect-ratio-nonreplaced-max-content-contribution-002.html: Added.\n* Source/WebCore/rendering/RenderBox.cpp:\n(WebCore::RenderBox::applyAutomaticContentBasedMinimumSize const):\n\nCanonical link: https://commits.webkit.org/326112@main","order":0,"repository_id":"webkit","timestamp":1794197244},{"author":{"emails":["ahmad.saleem792@gmail.com","ahmad.saleem792+github@gmail.com","ahmad_saleem@apple.com"],"name":"Ahmad Saleem"},"branch":"main","hash":"3a2cd4ea9ef8700615250a918d28e5166a707876","identifier":"326113@main","message":"RenderFrameSet::edgeInfo() crashes when rows/cols attributes grow before relayout\nhttps://bugs.webkit.org/show_bug.cgi?id=326156\nrdar://189047595\n\nReviewed by Alan Baradlay.\n\nedgeInfo() indexed m_preventResize and m_allowBorder using the element's\ncurrent row/column counts, but those arrays are only resized during\nlayout. If script adds rows or columns and edge info is queried before\nthe next layout, the index is out of range and Vector's bounds check\ncrashes. Setting noresize on a sibling frame queries it this way.\n\nUse the laid-out grid size (m_rows/m_cols.m_sizes) instead, so the size\nalways matches the arrays. The pending layout updates the edge info.\n\nTest: fast/frames/frameset-edge-info-stale-grid-crash.html\n\n* LayoutTests/fast/frames/frameset-edge-info-stale-grid-crash-expected.txt: Added.\n* LayoutTests/fast/frames/frameset-edge-info-stale-grid-crash.html: Added.\n* Source/WebCore/rendering/RenderFrameSet.cpp:\n(WebCore::RenderFrameSet::edgeInfo const):\n\nCanonical link: https://commits.webkit.org/326113@main","order":0,"repository_id":"webkit","timestamp":1794197391},{"author":{"emails":["ap@webkit.org","ap@apple.com"],"name":"Alexey Proskuryakov"},"branch":"main","hash":"709eb2578552f9e604c77d5be969c6ee13525bcc","identifier":"326114@main","message":"[resultsdbpy] Log when `UploadContext` discards a queued upload\nhttps://bugs.webkit.org/show_bug.cgi?id=322523\nrdar://185825119\n\nReviewed by Jonathan Bedard.\n\nWhen results go missing, nothing in the logs shows whether the upload queue dropped them. Write to\nsys.stderr in both places where _do_job_for_key discards a job: when a queued job has no payload, and\nwhen a job is dropped after MAX_ATTEMPTS. sys.stderr matches what model.py and ci_context.py already\ndo here.\n\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/upload_context.py:\n(UploadContext._do_job_for_key):\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/upload_context_unittest.py:\n(UploadContextTest._queue_one_upload):\n(UploadContextTest.test_async_upload_without_data_is_reported):\n(UploadContextTest.test_async_upload_dropped_after_max_attempts):\n(UploadContextTest.test_async_upload_dropped_after_max_attempts.failing_callback):\n\nCanonical link: https://commits.webkit.org/326114@main","order":0,"repository_id":"webkit","timestamp":1794201428},{"branch":"main","hash":"11511881e697c4dc2a68f51e97596d4a51648d96","identifier":"326115@main","order":0,"repository_id":"webkit","timestamp":1794201932},{"author":{"emails":["annevk@annevk.nl","annevk@apple.com"],"name":"Anne van Kesteren"},"branch":"main","hash":"91b0497ddfdba8c3ba2a28abf9a97bd37d04fab3","identifier":"326116@main","message":"Going back can fail to restore a child frame that loads in another process\nhttps://bugs.webkit.org/show_bug.cgi?id=330469\nrdar://192079240\n\nReviewed by Sihui Liu.\n\nhistory-traversal-frames.tentative.https.html, added in 325854@main, timed\nout with site isolation after 325869@main, and 326010@main added a second\ncause.\n\nWhen a child frame's provisional load failed, checkLoadCompleteForThisFrame()\nended the frame's wait for a delegated back/forward load before it reported\nthe failure. That checks the parent, which checked the child again and\nreported the failure a second time, without the\nLoadWillContinueInAnotherProcess::Yes of the first check, so the UI process\ntook away the provisional frame of a load that a Document-Isolation-Policy\nresponse had moved to another process. Until 325869@main, a failed history\nload always reported that loading would continue, which hid this. The wait\nnow ends after the failure is reported, and not at all when the load\ncontinues in another process: the wait is then all that keeps the parent\nfrom finishing first, and provisionalLoadFailedInAnotherProcess() ends it if\nthe load fails there.\n\nA navigation that moves the page to another process without a user gesture,\nor that replaces the entry, sends the new process the current history item.\nBuilding a HistoryItem from it sent each change back to the UI process. Since\n326010@main, that state only has identifiers for frames the process doesn't\nhost, so this erased the UI process's state for such a child frame, which\nthen had no URL to load when going back. toHistoryItem() now ignores those\nchanges itself, instead of leaving that to its callers, two of which didn't.\nignoreChangesForScope() now restores the previous state, so that the wider\nscope in WebFrame::setHistoryItemForBackForwardNavigation() still holds.\n\nhistory-traversal-frames.tentative.https.html now also checks that the\ndocument's load event waits for its child frame.\n\nTests: http/tests/site-isolation/history/go-back-after-scripted-navigation-restores-cross-site-child-frame.html\n       imported/w3c/web-platform-tests/html/document-isolation-policy/history-traversal-frames.tentative.https.html\n\nCanonical link: https://commits.webkit.org/326116@main","order":0,"repository_id":"webkit","timestamp":1794204427},{"author":{"emails":["jespinal23@apple.com"],"name":"Jetzel Espinal"},"branch":"main","hash":"3181f65550aaa7b34b75f5104fd6ba18f6f16cab","identifier":"326117@main","message":"[resultsdbpy] A failing test's output should be stored for retrieval\nhttps://bugs.webkit.org/show_bug.cgi?id=330035\nrdar://191732627\n\nReviewed by Jonathan Bedard.\n\nA test's 'log' from an upload goes into its result row's details, which\nevery timeline returns for as long as results are kept. TestContext now\nwrites it to its own table and marks the result as having a log. A log\nover 8,192 bytes has its widest lines cut to fit. A log longer than its\nhash is stored once, in test_logs_by_hash, and each run's row keeps the\nhash. /api/logs/<suite>/<test> reads it. Rows already stored don't change.\n\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/api_routes.py:\n(APIRoutes.__init__): Add /api/logs/<suite>/<test>.\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/test_controller.py:\n(TestController.find_test_logs): Added.\n(TestController):\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/controller/test_controller_unittest.py:\n(TestControllerTest):\n(TestControllerTest.setup_webserver):\n(TestControllerTest.test_logs):\n(TestControllerTest.test_logs_for_one_commit):\n(TestControllerTest.test_no_logs):\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/mock_model_factory.py:\n(MockModelFactory.add_mock_results): Take the upload's timestamp.\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/test_context.py:\n(TestContext.TestLogsByCommit.unpack): Added.\n(TestContext.__init__):\n(TestContext.truncate_log): Added. Keep a log of 8,192 bytes or less whole.\n(TestContext.truncate_log_lines): Added. Cut each line over its share of the\nroom to the widest width that fits, never under 200 bytes.\n(TestContext.truncate_log_line): Added. Never split a character, and end the\nline with the bytes it lost.\n(TestContext.keep_log_ends): Added. When lines cut at 200 bytes still don't\nfit, keep whole lines from the top and the bottom, and count the bytes left\nout between them.\n(TestContext.register): Keep a test's log out of details, mark its result\nhas_log, and write the log to test_logs_by_commit after the results' batch,\nor its hash when the log is longer than a hash. Write each such log once to\ntest_logs_by_hash.\n(TestContext.find_logs_by_commit): Added.\n(TestContext):\n(TestContext.TestLogsByCommit):\n(TestContext.TestLogsByHash):\n(TestContext.hash_log):\n(TestContext.is_log_hash):\n(TestContext.register.callback):\n(TestContext.find_by_start_time):\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/model/test_context_unittest.py:\n(TestContextTest.test_find_by_time):\n(TestContextLogsTest):\n(TestContextLogsTest.init_database):\n(TestContextLogsTest.test_log_kept_apart):\n(TestContextLogsTest.test_no_log):\n(TestContextLogsTest.test_logs_written_after_the_results_batch):\n(TestContextLogsTest.test_logs_written_after_the_results_batch.insert_row_recording_open_batches):\n(TestContextLogsTest.test_log_kept_apart_in_other_suites):\n(TestContextLogsTest.test_result_marked_when_its_log_is_kept):\n(TestContextLogsTest.test_result_not_marked_without_a_log):\n(TestContextLogsTest.test_long_log_stored_truncated):\n(TestContextLogsTest.test_log_stored_once_by_hash):\n(TestContextLogsTest.test_short_log_stored_as_is):\n(TestContextLogsTest.test_log_that_looks_like_a_hash_kept):\n(TestContextLogsTest.test_runs_with_different_logs):\n(TestContextLogsTest.test_hashed_log_outlives_its_rows):\n(TestContextLogsTest.test_hashed_log_outlives_its_rows.insert_row_recording_ttl):\n(TestContextLogsTest.test_is_log_hash):\n(TestContextLogsTest.test_truncate_log_within_limit):\n(TestContextLogsTest.test_truncate_log_wide_lines):\n(TestContextLogsTest.test_truncate_log_keeps_line_within_its_share):\n(TestContextLogsTest.test_truncate_log_without_line_breaks):\n(TestContextLogsTest.test_truncate_log_inside_character):\n(TestContextLogsTest.test_truncate_log_many_lines):\n(TestContextLogsTest.test_truncate_log_replaces_text_that_is_not_utf8):\n* Tools/Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/documentation.html:\n\nCanonical link: https://commits.webkit.org/326117@main","order":0,"repository_id":"webkit","timestamp":1794204532},{"branch":"main","hash":"8e16cbe44f3a7e6aec2a641d612cba2b641cbf87","identifier":"326118@main","order":0,"repository_id":"webkit","timestamp":1794211132},{"author":{"emails":["philn@igalia.com","pnormand@igalia.com","philn@webkit.org"],"name":"Philippe Normand"},"branch":"main","hash":"3e013ba050a2a2e0ff24ddebb27df2a4939f9168","identifier":"326119@main","message":"[GStreamer][MediaStream] Make MediaStreamTrackPrivate usage safer in webkitmediastreamsrc\nhttps://bugs.webkit.org/show_bug.cgi?id=330627\n\nReviewed by Xabier Rodriguez-Calvar.\n\nThe InternalSource::m_track is now a const RefPtr. The \"replaceTrack\" code was a remmnant of the\nGstWebRTC backend, now unused, so removed.\n\nThanks to Youngjin Ju <jyj9327kr@naver.com> for reporting one of the issues where access to the\ntrack settings was unsafe under some circumstances.\n\nCanonical link: https://commits.webkit.org/326119@main","order":0,"repository_id":"webkit","timestamp":1794214009},{"author":{"emails":["kkinnunen@apple.com"],"name":"Kimmo Kinnunen"},"branch":"main","hash":"ca199150c06ce427254841318afbef61427834dc","identifier":"326120@main","message":"Replace the display list ClipToImageBuffer item with ClipToNativeImage\nhttps://bugs.webkit.org/show_bug.cgi?id=329804\nrdar://191583997\n\nReviewed by Mike Wyrzykowski.\n\nThe DisplayList::ClipToImageBuffer item held a live reference to the\nmask ImageBuffer and read it when the display list was replayed. The\nclip therefore used the buffer contents at replay time instead of at\nrecord time, and the recording kept the buffer alive.\n\nThe item also broke clips in display lists that are replayed into a GPU\nprocess context. When an in-process recorder, such as the HTML-in-canvas\ndrawable recorder, paints an SVG mask, a non-path SVG clip-path or SVG\ngradient text, the mask is an in-process ImageBuffer. When the display\nlist is drawn into a canvas in the GPU process, it is cached through\nRemoteDisplayListRecorderProxy, and\nRemoteGraphicsContextProxy::clipToImageBuffer() dropped the clip because\nthe GPU process does not know the buffer. The masked content was drawn\nunclipped.\n\nAdd GraphicsContext::clipToNativeImage(). The platform contexts keep\nacquiring the NativeImage in clipToImageBuffer() as before and then\nshare the clipping code in clipToNativeImage(), so immediate-mode\nrendering is unchanged. RecorderImpl::clipToImageBuffer() now records a\nClipToNativeImage item with a copy of the buffer contents. If the copy\nfails, nothing is recorded, like GraphicsContextCG does.\nRemoteGraphicsContextProxy sends a new ClipToNativeImage stream message,\nwhich uses the NativeImage resource cache like DrawNativeImage. The\nexisting ClipToImageBuffer message is kept for clips to buffers that\nlive in the GPU process.\nBoth clips update the web process clip state only after the resource is\nrecorded, so a failed upload leaves both processes unclipped.\n\nTests: fast/canvas/draw-element-image/2d-drawElementImage-svg-mask-and-clip.html\n       Tools/TestWebKitAPI/Tests/WebCore/DisplayListRecorderTests.cpp\n       Tools/TestWebKitAPI/Tests/WebCore/cocoa/BifurcatedGraphicsContextTestsCG.cpp\n\n* LayoutTests/fast/canvas/draw-element-image/2d-drawElementImage-svg-mask-and-clip-expected.html: Added.\n* LayoutTests/fast/canvas/draw-element-image/2d-drawElementImage-svg-mask-and-clip.html: Added.\n* Source/WebCore/inspector/InspectorFontData.cpp:\n* Source/WebCore/platform/graphics/BifurcatedGraphicsContext.cpp:\n(WebCore::BifurcatedGraphicsContext::clipToNativeImage):\n* Source/WebCore/platform/graphics/BifurcatedGraphicsContext.h:\n* Source/WebCore/platform/graphics/GraphicsContext.h:\n* Source/WebCore/platform/graphics/NullGraphicsContext.h:\n* Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp:\n(WebCore::GraphicsContextCairo::clipToImageBuffer):\n(WebCore::GraphicsContextCairo::clipToNativeImage):\n* Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.h:\n* Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp:\n(WebCore::GraphicsContextCG::clipToImageBuffer):\n(WebCore::GraphicsContextCG::clipToNativeImage):\n* Source/WebCore/platform/graphics/cg/GraphicsContextCG.h:\n* Source/WebCore/platform/graphics/displaylists/DisplayListItem.h:\n* Source/WebCore/platform/graphics/displaylists/DisplayListItems.cpp:\n(WebCore::DisplayList::ClipToNativeImage::apply const):\n(WebCore::DisplayList::ClipToNativeImage::dump const):\n(WebCore::DisplayList::ClipToImageBuffer::apply const): Deleted.\n(WebCore::DisplayList::ClipToImageBuffer::dump const): Deleted.\n* Source/WebCore/platform/graphics/displaylists/DisplayListItems.h:\n(WebCore::DisplayList::ClipToNativeImage::ClipToNativeImage):\n(WebCore::DisplayList::ClipToNativeImage::nativeImage const):\n(WebCore::DisplayList::ClipToNativeImage::destinationRect const):\n(WebCore::DisplayList::ClipToImageBuffer::ClipToImageBuffer): Deleted.\n(WebCore::DisplayList::ClipToImageBuffer::imageBuffer const): Deleted.\n(WebCore::DisplayList::ClipToImageBuffer::destinationRect const): Deleted.\n* Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp:\n(WebCore::DisplayList::Recorder::updateStateForClipToImage):\n(WebCore::DisplayList::Recorder::updateStateForClipToImageBuffer): Deleted.\n* Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.h:\n* Source/WebCore/platform/graphics/displaylists/DisplayListRecorderImpl.cpp:\n(WebCore::DisplayList::RecorderImpl::clipToImageBuffer):\n(WebCore::DisplayList::RecorderImpl::clipToNativeImage):\n* Source/WebCore/platform/graphics/displaylists/DisplayListRecorderImpl.h:\n* Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:\n(WebCore::GraphicsContextSkia::clipToImageBuffer):\n(WebCore::GraphicsContextSkia::clipToNativeImage):\n* Source/WebCore/platform/graphics/skia/GraphicsContextSkia.h:\n* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.cpp:\n(WebKit::RemoteGraphicsContext::clipToNativeImage):\n* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.h:\n* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.messages.in:\n* Source/WebKit/Shared/graphics/DisplayListData.cpp:\n* Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextProxy.cpp:\n(WebKit::RemoteGraphicsContextProxy::clipToImageBuffer):\n(WebKit::RemoteGraphicsContextProxy::clipToNativeImage):\n* Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextProxy.h:\n* Tools/TestWebKitAPI/Tests/WebCore/DisplayListRecorderTests.cpp:\n(TestWebKitAPI::ChangeAntialiasBeforeClipToImageBuffer::description):\n(TestWebKitAPI::ChangeAntialiasBeforeClipToNativeImage::operator()):\n(TestWebKitAPI::ChangeAntialiasBeforeClipToNativeImage::description):\n(TestWebKitAPI::TEST(DisplayListRecorderTest, ClipToImageBufferUsesContentsAtRecordTime)):\n* Tools/TestWebKitAPI/Tests/WebCore/cocoa/BifurcatedGraphicsContextTestsCG.cpp:\n(TestWebKitAPI::TEST(BifurcatedGraphicsContextTests, ClipToImageBuffer)):\n(TestWebKitAPI::TEST(BifurcatedGraphicsContextTests, ClipToNativeImage)):\n\nCanonical link: https://commits.webkit.org/326120@main","order":0,"repository_id":"webkit","timestamp":1794214146}]
