From 0fe1998c72d57d77551abc472ab7ece3d1a98c90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Greffier?= Date: Tue, 25 Oct 2022 21:56:11 +0200 Subject: [PATCH] feat(api): add clear() (#18296) Add `clear()` method as a convenience shortcut for `fill('')`. Implemented for AndroidDevice, ElementHandle, Frame, Locator and Page. Fixes https://github.com/microsoft/playwright/issues/14041 --- docs/src/api/class-androiddevice.md | 14 ++ docs/src/api/class-elementhandle.md | 14 ++ docs/src/api/class-frame.md | 19 +++ docs/src/api/class-locator.md | 14 ++ docs/src/api/class-page.md | 19 +++ .../playwright-core/src/client/android.ts | 4 + .../src/client/elementHandle.ts | 4 + packages/playwright-core/src/client/frame.ts | 4 + .../playwright-core/src/client/locator.ts | 4 + packages/playwright-core/src/client/page.ts | 4 + packages/playwright-core/types/types.d.ts | 158 ++++++++++++++++++ tests/library/slowmo.spec.ts | 3 + tests/page/elementhandle-misc.spec.ts | 9 + tests/page/locator-misc-1.spec.ts | 9 + tests/page/page-fill.spec.ts | 27 ++- 15 files changed, 305 insertions(+), 1 deletion(-) diff --git a/docs/src/api/class-androiddevice.md b/docs/src/api/class-androiddevice.md index 837e67f8dc..861792243c 100644 --- a/docs/src/api/class-androiddevice.md +++ b/docs/src/api/class-androiddevice.md @@ -10,6 +10,20 @@ Emitted when a new WebView instance is detected. +## async method: AndroidDevice.clear +* since: v1.28 + +Clears the specific [`param: selector`] input box. + +### param: AndroidDevice.clear.selector +* since: v1.28 +- `selector` <[AndroidSelector]> + +Selector to clear. + +### option: AndroidDevice.clear.timeout = %%-android-timeout-%% +* since: v1.28 + ## async method: AndroidDevice.close * since: v1.9 diff --git a/docs/src/api/class-elementhandle.md b/docs/src/api/class-elementhandle.md index 484ea9f4e1..82bcd44f99 100644 --- a/docs/src/api/class-elementhandle.md +++ b/docs/src/api/class-elementhandle.md @@ -184,6 +184,20 @@ When all steps combined have not finished during the specified [`option: timeout ### option: ElementHandle.check.trial = %%-input-trial-%% * since: v1.11 +## async method: ElementHandle.clear +* since: v1.28 + +This method waits for [actionability](../actionability.md) checks, focuses the element, clears it and triggers an `input` event after clearing. + +If the target element is not an ``, `