From bccc4e1702e7903fb4028ca7719b474640ab4379 Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Mon, 11 Nov 2024 16:25:42 -0500 Subject: [PATCH 01/10] Chromium supports webkitdirectory on mobile --- api/HTMLInputElement.json | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index 52bf31748bbd19..e026363e978345 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3011,11 +3011,17 @@ "chrome": { "version_added": "7" }, - "chrome_android": { - "version_added": false, - "impl_url": "https://crbug.com/40248532", - "notes": "The property can be set, but has no effect." - }, + "chrome_android": [ + { + "version_added": "132" + }, + { + "version_added": false, + "version_removed": "132", + "impl_url": "https://crbug.com/40248532", + "notes": "Before Chrome 131, the property could be set, but had no effect. In Chrome 131, the property could be set, but choosing a directory crashed the browser." + } + ], "edge": { "version_added": "13" }, From 0992f11d77f911037d9053d3e30a4a66680d524d Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Wed, 13 Nov 2024 18:53:37 -0500 Subject: [PATCH 02/10] Fix webkitdirectory support data issues --- api/HTMLInputElement.json | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index e026363e978345..e3fc440be563ce 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3011,17 +3011,13 @@ "chrome": { "version_added": "7" }, - "chrome_android": [ - { - "version_added": "132" - }, - { - "version_added": false, - "version_removed": "132", - "impl_url": "https://crbug.com/40248532", - "notes": "Before Chrome 131, the property could be set, but had no effect. In Chrome 131, the property could be set, but choosing a directory crashed the browser." - } - ], + "chrome_android": { + "version_added": "132" + "notes": [ + "In Chrome 131, the property could be set, but choosing a directory crashed the browser.", + "Before Chrome 131, the property could be set, but had no effect." + ] + }, "edge": { "version_added": "13" }, From 7212e2df65d920892c8b423d664a208b8183dd5a Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Wed, 13 Nov 2024 18:58:08 -0500 Subject: [PATCH 03/10] chore: Fix JSON --- api/HTMLInputElement.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index e3fc440be563ce..90efcf25a9a56b 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3012,7 +3012,7 @@ "version_added": "7" }, "chrome_android": { - "version_added": "132" + "version_added": "132", "notes": [ "In Chrome 131, the property could be set, but choosing a directory crashed the browser.", "Before Chrome 131, the property could be set, but had no effect." From de11b3e4a18898a75492de3da7dae857e31f58e7 Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Wed, 20 Nov 2024 11:18:45 -0500 Subject: [PATCH 04/10] Add notes about webkitdirectory properly --- api/HTMLInputElement.json | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index 90efcf25a9a56b..88227afe466937 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3011,13 +3011,18 @@ "chrome": { "version_added": "7" }, - "chrome_android": { - "version_added": "132", - "notes": [ - "In Chrome 131, the property could be set, but choosing a directory crashed the browser.", - "Before Chrome 131, the property could be set, but had no effect." - ] - }, + "chrome_android": [ + { + "version_added": "131", + "notes": "In Chrome for Android 131, choosing a directory crashes the browser." + }, + { + "version_added": "18", + "partial_implementation": true, + "impl_url": "https://crbug.com/40248532", + "notes": "The property can be set, but has no behavior." + } + ], "edge": { "version_added": "13" }, From fff0ace3bb344d1486f600eb4cf2026c00c56b0b Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Wed, 20 Nov 2024 11:23:55 -0500 Subject: [PATCH 05/10] chore: Fix formatting --- api/HTMLInputElement.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index 88227afe466937..2746435392bc86 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3018,8 +3018,8 @@ }, { "version_added": "18", - "partial_implementation": true, "impl_url": "https://crbug.com/40248532", + "partial_implementation": true, "notes": "The property can be set, but has no behavior." } ], From dc9ebf790f42a55f1480672a0e20535fb29bab86 Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Thu, 21 Nov 2024 14:02:00 -0500 Subject: [PATCH 06/10] Add html.elements.input.webkitdirectory --- html/elements/input.json | 58 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/html/elements/input.json b/html/elements/input.json index a0d7ee3c8656e4..bb54807d64b88f 100644 --- a/html/elements/input.json +++ b/html/elements/input.json @@ -1380,6 +1380,64 @@ "deprecated": true } } + }, + "webkitdirectory": { + "__compat": { + "support": { + "chrome": { + "version_added": "7" + }, + "chrome_android": [ + { + "version_added": "132" + }, + { + "version_added": "131", + "impl_url": "https://crbug.com/376834374", + "partial_implementation": true, + "notes": "In Chrome for Android 131, choosing a directory crashes the browser." + }, + { + "version_added": "18", + "impl_url": "https://crbug.com/40248532", + "partial_implementation": true, + "notes": "The property can be set, but has no behavior." + } + ], + "edge": { + "version_added": "13" + }, + "firefox": { + "version_added": "50" + }, + "firefox_android": { + "version_added": false + }, + "ie": { + "version_added": false + }, + "oculus": "mirror", + "opera": "mirror", + "opera_android": "mirror", + "safari": { + "version_added": "11.1" + }, + "safari_ios": { + "version_added": "11.3", + "impl_url": "https://webkit.org/b/271705", + "partial_implementation": true, + "notes": "The property can be set, but has no behavior." + }, + "samsunginternet_android": "mirror", + "webview_android": "mirror", + "webview_ios": "mirror" + }, + "status": { + "experimental": false, + "standard_track": false, + "deprecated": false + } + } } } } From ad9bdd003a316faab7d48ccf7ea35fbf5f125a32 Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Thu, 21 Nov 2024 16:51:14 -0500 Subject: [PATCH 07/10] web: Apply review suggestion Co-authored-by: Claas Augner <495429+caugner@users.noreply.github.com> --- html/elements/input.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/html/elements/input.json b/html/elements/input.json index bb54807d64b88f..6cfcb6fc33b6ae 100644 --- a/html/elements/input.json +++ b/html/elements/input.json @@ -1393,9 +1393,8 @@ }, { "version_added": "131", - "impl_url": "https://crbug.com/376834374", "partial_implementation": true, - "notes": "In Chrome for Android 131, choosing a directory crashes the browser." + "notes": "In Chrome for Android 131, choosing a directory crashes the browser (see [bug 376834374](https://crbug.com/376834374))." }, { "version_added": "18", From b95e6c4608b2e526d689469f97a6ae5434420eec Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Sat, 23 Nov 2024 16:22:13 -0500 Subject: [PATCH 08/10] Apply suggestions from code review Co-authored-by: Daniel D. Beck --- api/HTMLInputElement.json | 6 +++--- html/elements/input.json | 17 ++++++----------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index 2746435392bc86..1d57f9185785ac 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3014,13 +3014,13 @@ "chrome_android": [ { "version_added": "131", - "notes": "In Chrome for Android 131, choosing a directory crashes the browser." + "partial_implementation": true, + "notes": "In Chrome for Android 131, if a user chooses a directory then the browser crashes (see [bug](https://crbug.com/376834374))." }, { "version_added": "18", - "impl_url": "https://crbug.com/40248532", "partial_implementation": true, - "notes": "The property can be set, but has no behavior." + "notes": "The property reflects the attribute but users cannot choose a directory, only individual files (see [bug 40248532](https://crbug.com/40248532)." } ], "edge": { diff --git a/html/elements/input.json b/html/elements/input.json index 6cfcb6fc33b6ae..2e7a1182b2db49 100644 --- a/html/elements/input.json +++ b/html/elements/input.json @@ -1394,13 +1394,10 @@ { "version_added": "131", "partial_implementation": true, - "notes": "In Chrome for Android 131, choosing a directory crashes the browser (see [bug 376834374](https://crbug.com/376834374))." - }, - { - "version_added": "18", - "impl_url": "https://crbug.com/40248532", - "partial_implementation": true, - "notes": "The property can be set, but has no behavior." + "notes": [ + "In Chrome for Android 131, choosing a directory crashes the browser (see [bug 376834374](https://crbug.com/376834374)).", + "Before version 131, users cannot choose a directory, only individual files (see [bug 40248532](https://crbug.com/40248532)." + ] } ], "edge": { @@ -1422,10 +1419,8 @@ "version_added": "11.1" }, "safari_ios": { - "version_added": "11.3", - "impl_url": "https://webkit.org/b/271705", - "partial_implementation": true, - "notes": "The property can be set, but has no behavior." + "version_added": false + "notes": "The attribute can be set but users cannot choose a directory, only individual files (see [bug 271705](https://webkit.org/b/271705))." }, "samsunginternet_android": "mirror", "webview_android": "mirror", From 9ab5002ba0cf048fa499070d8c7b1570700609ae Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Sat, 23 Nov 2024 16:29:36 -0500 Subject: [PATCH 09/10] chore: Fix formatting --- html/elements/input.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/html/elements/input.json b/html/elements/input.json index 2e7a1182b2db49..1d465002febfca 100644 --- a/html/elements/input.json +++ b/html/elements/input.json @@ -1419,7 +1419,7 @@ "version_added": "11.1" }, "safari_ios": { - "version_added": false + "version_added": false, "notes": "The attribute can be set but users cannot choose a directory, only individual files (see [bug 271705](https://webkit.org/b/271705))." }, "samsunginternet_android": "mirror", From dbf3dbffde72df7b9d9281b7da337a8af07285f0 Mon Sep 17 00:00:00 2001 From: Daniel Jacobs Date: Sat, 23 Nov 2024 16:34:01 -0500 Subject: [PATCH 10/10] chore: Properly reference bug number --- api/HTMLInputElement.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/HTMLInputElement.json b/api/HTMLInputElement.json index 1d57f9185785ac..1ff986ad16a19c 100644 --- a/api/HTMLInputElement.json +++ b/api/HTMLInputElement.json @@ -3015,7 +3015,7 @@ { "version_added": "131", "partial_implementation": true, - "notes": "In Chrome for Android 131, if a user chooses a directory then the browser crashes (see [bug](https://crbug.com/376834374))." + "notes": "In Chrome for Android 131, if a user chooses a directory then the browser crashes (see [bug 376834374](https://crbug.com/376834374))." }, { "version_added": "18",