Skip to content

fix(picker-column): fallback to elementFromPoint for iOS 16 Shadow DOM bug #16449

fix(picker-column): fallback to elementFromPoint for iOS 16 Shadow DOM bug

fix(picker-column): fallback to elementFromPoint for iOS 16 Shadow DOM bug #16449

Triggered via pull request June 12, 2025 20:36
@thetaPCthetaPC
synchronize #30479
FW-6592
Status Success
Total duration 10m 23s
Artifacts 27

build.yml

on: pull_request
build-vue
42s
build-vue
Matrix: test-core-screenshot
build-angular
53s
build-angular
build-angular-server
36s
build-angular-server
test-core-clean-build
13s
test-core-clean-build
test-core-lint
46s
test-core-lint
test-core-spec
41s
test-core-spec
build-react-router
29s
build-react-router
build-vue-router
37s
build-vue-router
verify-screenshots
2s
verify-screenshots
Matrix: test-angular-e2e
Matrix: test-react-e2e
Matrix: test-react-router-e2e
Matrix: test-vue-e2e
verify-test-angular-e2e
2s
verify-test-angular-e2e
verify-test-react-e2e
3s
verify-test-react-e2e
verify-test-react-router-e2e
2s
verify-test-react-router-e2e
verify-test-vue-e2e
2s
verify-test-vue-e2e
Fit to window
Zoom out
Zoom in

Annotations

4 errors and 20 notices
[Mobile Chrome] › src/components/datetime/test/locale/datetime.e2e.ts:25:11 › datetime: locale - md/ltr › en-US › month/year picker should not have visual regressions: src/components/datetime/test/locale/datetime.e2e.ts#L166
1) [Mobile Chrome] › src/components/datetime/test/locale/datetime.e2e.ts:25:11 › datetime: locale - md/ltr › en-US › month/year picker should not have visual regressions Error: expect(locator).toHaveScreenshot(expected) 241 pixels (ratio 0.01 of all image pixels) are different. Expected: /ionic/src/components/datetime/test/locale/datetime.e2e.ts-snapshots/datetime-locale-en-US-month-year-diff-md-ltr-Mobile-Chrome-linux.png Received: /ionic/test-results/src-components-datetime-te-7ccc1-not-have-visual-regressions-Mobile-Chrome/datetime-locale-en-US-month-year-diff-md-ltr-actual.png Diff: /ionic/test-results/src-components-datetime-te-7ccc1-not-have-visual-regressions-Mobile-Chrome/datetime-locale-en-US-month-year-diff-md-ltr-diff.png Call log: - expect.toHaveScreenshot(datetime-locale-en-US-month-year-diff-md-ltr.png) with timeout 5000ms - verifying given screenshot expectation - waiting for locator('ion-datetime') - locator resolved to <ion-datetime max="2022" locale="en-US" show-default-title="true" presentation="month-year" show-default-buttons="true" value="2022-04-19T04:20:00" class="ion-color ion-color-primary md show-month-and-year datetime-presentation-month-year datetime-size-fixed hydrated datetime-ready">…</ion-datetime> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - 241 pixels (ratio 0.01 of all image pixels) are different. - waiting 100ms before taking screenshot - waiting for locator('ion-datetime') - locator resolved to <ion-datetime max="2022" locale="en-US" show-default-title="true" presentation="month-year" show-default-buttons="true" value="2022-04-19T04:20:00" class="ion-color ion-color-primary md show-month-and-year datetime-presentation-month-year datetime-size-fixed hydrated datetime-ready">…</ion-datetime> - taking element screenshot - disabled all CSS animations - waiting for fonts to load... - fonts loaded - attempting scroll into view action - waiting for element to be stable - captured a stable screenshot - 241 pixels (ratio 0.01 of all image pixels) are different. 164 | async expectLocalizedPicker(screenshot: ScreenshotFn, modifier?: string) { 165 | const modifierString = modifier === undefined ? '' : `-${modifier}`; > 166 | await expect(this.datetime).toHaveScreenshot(screenshot(`datetime-locale-${this.locale}${modifierString}-diff`)); | ^ 167 | } 168 | } 169 | at DatetimeLocaleFixture.expectLocalizedPicker (/ionic/src/components/datetime/test/locale/datetime.e2e.ts:166:33) at DatetimeLocaleFixture.expectLocalizedMonthYearPicker (/ionic/src/components/datetime/test/locale/datetime.e2e.ts:157:16) at /ionic/src/components/datetime/test/locale/datetime.e2e.ts:27:31
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups: src/components/radio/test/a11y/radio.e2e.ts#L122
2) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups Error: Timed out 5000ms waiting for expect(locator).toBeFocused() Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Call log: - expect.toBeFocused with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 120 | 121 | await pageUtils.pressKeys('Tab'); > 122 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 123 | 124 | await pageUtils.pressKeys('Tab'); 125 | await expect(secondGroupRadios.nth(0)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:122:47
[Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group: src/components/radio/test/a11y/radio.e2e.ts#L134
1) [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group Error: Timed out 5000ms waiting for expect(locator).toBeFocused() Locator: locator('#first-group ion-radio').first() Expected: focused Received: inactive Call log: - expect.toBeFocused with timeout 5000ms - waiting for locator('#first-group ion-radio').first() 9 × locator resolved to <ion-radio value="huey" role="radio" tabindex="0" aria-checked="true" class="md in-item radio-checked radio-label-placement-start hydrated">Huey</ion-radio> - unexpected value "inactive" 132 | 133 | await pageUtils.pressKeys('Tab'); > 134 | await expect(firstGroupRadios.nth(0)).toBeFocused(); | ^ 135 | 136 | await page.keyboard.press('ArrowDown'); 137 | await expect(firstGroupRadios.nth(1)).toBeFocused(); at /ionic/src/components/radio/test/a11y/radio.e2e.ts:134:47
[Mobile Safari] › src/components/datetime/test/datetime.e2e.ts:17:9 › datetime: switching months with different number of days - md/ltr › should switch the calendar header when moving to a month with a different number of days: src/components/datetime/test/datetime.e2e.ts#L32
1) [Mobile Safari] › src/components/datetime/test/datetime.e2e.ts:17:9 › datetime: switching months with different number of days - md/ltr › should switch the calendar header when moving to a month with a different number of days Error: Timed out 5000ms waiting for expect(locator).toContainText(expected) Locator: locator('ion-datetime .calendar-month-year') Expected string: "February 2022" Received string: "February 2021" Call log: - expect.toContainText with timeout 5000ms - waiting for locator('ion-datetime .calendar-month-year') 9 × locator resolved to <div class="calendar-month-year">…</div> - unexpected value "February 2021" 30 | await page.waitForChanges(); 31 | > 32 | await expect(monthYearToggle).toContainText('February 2022'); | ^ 33 | }); 34 | 35 | test('should adjust the selected day when moving to a month with a different number of days', async ({ page }) => { at /ionic/src/components/datetime/test/datetime.e2e.ts:32:37
🎭 Playwright Run Summary
216 skipped 238 passed (2.3m)
🎭 Playwright Run Summary
414 passed (2.8m)
🎭 Playwright Run Summary
508 passed (2.9m)
🎭 Playwright Run Summary
1 flaky [Mobile Chrome] › src/components/datetime/test/locale/datetime.e2e.ts:25:11 › datetime: locale - md/ltr › en-US › month/year picker should not have visual regressions 1 skipped 513 passed (3.3m)
🎭 Playwright Run Summary
4 skipped 590 passed (3.5m)
🎭 Playwright Run Summary
212 skipped 292 passed (3.4m)
🎭 Playwright Run Summary
2 flaky [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:130:11 › radio: a11y - md/ltr › radio: keyboard navigation - md/ltr › using arrow keys should move between enabled radios within group [Mobile Chrome] › src/components/radio/test/a11y/radio.e2e.ts:117:11 › radio: a11y - md/ltr/dark › radio: keyboard navigation - md/ltr/dark › tabbing should switch between radio groups 4 skipped 497 passed (3.7m)
🎭 Playwright Run Summary
627 passed (4.2m)
🎭 Playwright Run Summary
10 skipped 482 passed (4.6m)
🎭 Playwright Run Summary
5 skipped 502 passed (4.7m)
🎭 Playwright Run Summary
14 skipped 374 passed (5.0m)
🎭 Playwright Run Summary
4 skipped 501 passed (5.9m)
🎭 Playwright Run Summary
498 passed (5.8m)
🎭 Playwright Run Summary
506 passed (6.3m)
🎭 Playwright Run Summary
5 skipped 551 passed (6.6m)
🎭 Playwright Run Summary
4 skipped 502 passed (6.7m)
🎭 Playwright Run Summary
14 skipped 494 passed (6.9m)
🎭 Playwright Run Summary
1 flaky [Mobile Safari] › src/components/datetime/test/datetime.e2e.ts:17:9 › datetime: switching months with different number of days - md/ltr › should switch the calendar header when moving to a month with a different number of days 2 skipped 503 passed (7.4m)
🎭 Playwright Run Summary
9 skipped 502 passed (7.3m)
🎭 Playwright Run Summary
8 skipped 506 passed (8.1m)

Artifacts

Produced during runtime
Name Size Digest
ionic-angular Expired
652 KB
sha256:4d51eee5780ec88ec55e107e98138caafae1aea712c990b02b35a40993d903df
ionic-angular-server Expired
8.54 KB
sha256:e530b79f439169cdc3b551d7adba3e091cc7d99d2c41d0b1461a6828f87f7107
ionic-core Expired
4.44 MB
sha256:fc6abd41bdec58156b7629fc2184984c7dc4d2db34ac95dc98f324c9657ae011
ionic-react Expired
199 KB
sha256:690805c18ee84866ce205de9d6477a50bd076c04343b3b4b02adb34299bcc3f3
ionic-react-router Expired
27.9 KB
sha256:d1219fc8f510686980de0c7f64793a655766c30d1502e1fca20a3bce27105f09
ionic-vue Expired
221 KB
sha256:d6407cc63461dbb1022c63a9293fa639bc729e61adb62397eb7e73639b70bc16
ionic-vue-router Expired
17.1 KB
sha256:3f63a6764ba2d682c96a845fe3970c2b8be8f6ca768944b947eed919f4aafcb7
test-results-1-20 Expired
444 KB
sha256:1a9886360bbc05f74f02d53863a30d22d8b83f5a0ee0c2d75e1de48d015a7e60
test-results-10-20 Expired
419 KB
sha256:39add935c1e0b36b0bb8c9e4fe04859b4a321e350088a46c70a5d5b73af8101c
test-results-11-20 Expired
1.61 MB
sha256:4d62811bd4638c794bfe8b60397d5433186a91a14c81614a5d0753cf6ae187f2
test-results-12-20 Expired
436 KB
sha256:9467793c2abe061db831b26d09f11b2551b3c37ce34252eb0daf60bc03d0e435
test-results-13-20 Expired
448 KB
sha256:68c83182de125c173f14dc67c38b62b3d4f91240f523f0eba9440d61ba537989
test-results-14-20 Expired
401 KB
sha256:bbe5cb6112a1253406aa4e7ebb72b1a81a95b06ff6afaf747b43ca6270a94f83
test-results-15-20 Expired
1.31 MB
sha256:8c337ba36e73f22c422ce9277434b5e02f327b95d21fb6fce22842ee82168030
test-results-16-20 Expired
421 KB
sha256:2d75b1ad19d617c870504f91224a7177f3c21945eaa1683e4b88f116a8d2d22d
test-results-17-20 Expired
542 KB
sha256:9f031a681ce9ece1b6a897923e10d604a7917334ff2c1f621a07e87fbead3e23
test-results-18-20 Expired
488 KB
sha256:1646171ff0b67af27e4af05fb63964a7a56ef7cacb4770dc710911b9f5531bfe
test-results-19-20 Expired
397 KB
sha256:0d1e582184de85483c47d3f842fe57f09e8a251a0c7ecbd8844f32a1375f2913
test-results-2-20 Expired
477 KB
sha256:1be59d4505977a503c30092587ae95edd3e62482b0c18bb6dcf2f901d5366bad
test-results-20-20 Expired
347 KB
sha256:4aa082bfc7581f346d48320acc2c9d4bc9beea4c931eadf484d789e8c06c67e3
test-results-3-20 Expired
422 KB
sha256:6954eac6ef029702f11a1b0dae775fc95d2a8c0adf5af60629009707735c7cfa
test-results-4-20 Expired
527 KB
sha256:446a9f7c1e4816b166ac43a94e1586830d951d98af50e652fbadc21194bf3024
test-results-5-20 Expired
448 KB
sha256:057756558a72550291d22ebbf8e463242b23107f80b942a495d06eb5d3a696bd
test-results-6-20 Expired
447 KB
sha256:fd30c10f41436bd3c8f87ffd05748b396760f995c23d38a7b7189f151f6cf43b
test-results-7-20 Expired
336 KB
sha256:603d2b9d8d64b17ba0fa191d19fdf4a6d4da467022c1f8542d80023504a46e43
test-results-8-20 Expired
1.24 MB
sha256:7a22242feb187ce5a3a53bff36f8539139686af2a5aef47c509c1ef619fe124b
test-results-9-20 Expired
470 KB
sha256:8b5da04df9301cbca38269c7b7d88f0364edb6115777c0d4276de91e98da1783