appium-uiautomator2-driver 8.5.2 → 8.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [8.6.0](https://github.com/appium/appium-uiautomator2-driver/compare/v8.5.2...v8.6.0) (2026-09-04)
2
+
3
+ ### Features
4
+
5
+ * add mobile: viewportElementRect to translate web element rects to native coordinates ([#1044](https://github.com/appium/appium-uiautomator2-driver/issues/1044)) ([0469f41](https://github.com/appium/appium-uiautomator2-driver/commit/0469f41ba37fd9dbc0a96bdeb80ec557cf5ffaa0))
6
+
1
7
  ## [8.5.2](https://github.com/appium/appium-uiautomator2-driver/compare/v8.5.1...v8.5.2) (2026-09-01)
2
8
 
3
9
  ### Bug Fixes
package/README.md CHANGED
@@ -460,6 +460,20 @@ strategy | string | yes | The following strategies are supported: `accessibility
460
460
  selector | string | yes | The corresponding lookup value for the selected strategy. | 'com.mycompany:id/table'
461
461
  maxSwipes | number | no | The maximum number of swipes to perform on the target scrollable view in order to reach the destination element. In case this value is unset then it would be retrieved from the scrollable element itself (vua `getMaxSearchSwipes()` property). | 10
462
462
 
463
+ ### mobile: viewportElementRect
464
+
465
+ Gets the rectangle of an element located in the current web view context, translated into native device screen coordinates. `getElementRect` reports element geometry relative to the top-left corner of its own document, not relative to what's currently visible in the viewport, and relative to the innermost frame's own document if the element is inside an iframe; this accounts for the current scroll offset, accumulates ancestor frame offsets, and applies the page's visual viewport scale/offset (which diverge from the layout viewport under pinch zoom or an automatic input zoom) together with the device pixel ratio and the on-screen bounding rectangle of the WebView that hosts the element (which may itself be offset by e.g. a toolbar or action bar) to compute where the element actually is on the device screen, for example in order to interact with it via native gestures or to compare it against a device screenshot. The returned rectangle is clamped to the WebView's own on-screen bounds, so it never reports coordinates outside of the screen (e.g. for an element that's scrolled out of view or that overflows the viewport). The current context must be a web view, and the element must be visible on screen once clamped, or else this throws an `element not interactable` error.
466
+
467
+ #### Arguments
468
+
469
+ Name | Type | Required | Description | Example
470
+ --- | --- | --- | --- | ---
471
+ elementId | string | yes | The identifier of an element found in the current web view context. | 123456-3456-3435-3453453
472
+
473
+ #### Returned Result
474
+
475
+ A dictionary with `x`, `y`, `width` and `height` entries, in native device screen coordinates, for example `{x: 20, y: 140, width: 60, height: 80}`.
476
+
463
477
  ### mobile: deepLink
464
478
 
465
479
  Start URI that may take users directly to the specific content in the app. Read [Reliably Opening Deep Links Across Platforms and Devices](https://appiumpro.com/editions/84-reliably-opening-deep-links-across-platforms-and-devices) for more details.
@@ -21,6 +21,32 @@ export declare function getViewPortRect(this: AndroidUiautomator2Driver): Promis
21
21
  * @returns The viewport rectangle (left, top, width, height).
22
22
  */
23
23
  export declare function mobileViewPortRect(this: AndroidUiautomator2Driver): Promise<RelativeRect>;
24
+ /**
25
+ * Clips `rect` to the area covered by `bounds`, so that it never extends
26
+ * outside it. An element that is partially (or entirely) scrolled out of its
27
+ * container, or that otherwise overflows it, would otherwise translate to
28
+ * coordinates outside of what's actually on screen at that container.
29
+ *
30
+ * @returns The clipped rectangle. Its width/height are 0 if `rect` doesn't
31
+ * overlap `bounds` at all.
32
+ */
33
+ export declare function clampRectToBounds(rect: Rect, bounds: Rect): Rect;
34
+ /**
35
+ * Gets the rectangle of an element located in the current web view context,
36
+ * translated into native device screen coordinates. `getElementRect` is
37
+ * relative to the element's own (possibly nested-frame) document and ignores
38
+ * scroll/zoom, so this corrects for scroll offset, ancestor frame offsets,
39
+ * and the visual viewport (pinch/input zoom) before applying the device
40
+ * pixel ratio and the hosting WebView's on-screen bounds (see
41
+ * `getWebviewGeometryContext`). The result is clamped to those bounds.
42
+ *
43
+ * @param elementId - ID of an element found in the current web view context.
44
+ * @returns The element rectangle (x, y, width, height) in native screen coordinates.
45
+ * @throws {errors.InvalidContextError} If the current context is not a web view.
46
+ * @throws {errors.ElementNotInteractableError} If the element is not visible/is entirely
47
+ * offscreen, i.e. outside the WebView's own on-screen bounds, once clamped.
48
+ */
49
+ export declare function mobileViewportElementRect(this: AndroidUiautomator2Driver, elementId: string): Promise<Rect>;
24
50
  /**
25
51
  * Gets the window rectangle (W3C endpoint).
26
52
  * @returns The window rectangle (x, y, width, height).
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAC;AAE9C,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAE7C;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAKzF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE1F;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAW5F;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAE/F;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAExF;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF"}
1
+ {"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAE,IAAI,EAAe,MAAM,eAAe,CAAC;AAM5D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,cAAc,CAAC;AAC5D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAE7C;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAKzF;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAE1F;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAW5F;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CAE/F;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,CAWhE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCjH;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAExF;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF"}
@@ -1,3 +1,5 @@
1
+ import { errors, PROTOCOLS } from 'appium/driver.js';
2
+ import { util } from 'appium/support.js';
1
3
  /**
2
4
  * Gets the status bar height in pixels.
3
5
  * @returns The status bar height in pixels.
@@ -36,6 +38,72 @@ export async function getViewPortRect() {
36
38
  export async function mobileViewPortRect() {
37
39
  return await this.getViewPortRect();
38
40
  }
41
+ /**
42
+ * Clips `rect` to the area covered by `bounds`, so that it never extends
43
+ * outside it. An element that is partially (or entirely) scrolled out of its
44
+ * container, or that otherwise overflows it, would otherwise translate to
45
+ * coordinates outside of what's actually on screen at that container.
46
+ *
47
+ * @returns The clipped rectangle. Its width/height are 0 if `rect` doesn't
48
+ * overlap `bounds` at all.
49
+ */
50
+ export function clampRectToBounds(rect, bounds) {
51
+ const left = Math.min(Math.max(rect.x, bounds.x), bounds.x + bounds.width);
52
+ const top = Math.min(Math.max(rect.y, bounds.y), bounds.y + bounds.height);
53
+ const right = Math.min(Math.max(rect.x + rect.width, bounds.x), bounds.x + bounds.width);
54
+ const bottom = Math.min(Math.max(rect.y + rect.height, bounds.y), bounds.y + bounds.height);
55
+ return {
56
+ x: left,
57
+ y: top,
58
+ width: Math.max(0, right - left),
59
+ height: Math.max(0, bottom - top),
60
+ };
61
+ }
62
+ /**
63
+ * Gets the rectangle of an element located in the current web view context,
64
+ * translated into native device screen coordinates. `getElementRect` is
65
+ * relative to the element's own (possibly nested-frame) document and ignores
66
+ * scroll/zoom, so this corrects for scroll offset, ancestor frame offsets,
67
+ * and the visual viewport (pinch/input zoom) before applying the device
68
+ * pixel ratio and the hosting WebView's on-screen bounds (see
69
+ * `getWebviewGeometryContext`). The result is clamped to those bounds.
70
+ *
71
+ * @param elementId - ID of an element found in the current web view context.
72
+ * @returns The element rectangle (x, y, width, height) in native screen coordinates.
73
+ * @throws {errors.InvalidContextError} If the current context is not a web view.
74
+ * @throws {errors.ElementNotInteractableError} If the element is not visible/is entirely
75
+ * offscreen, i.e. outside the WebView's own on-screen bounds, once clamped.
76
+ */
77
+ export async function mobileViewportElementRect(elementId) {
78
+ if (!this.isWebContext()) {
79
+ throw new errors.InvalidContextError('The current context must be a web view in order to translate an element rect into native screen coordinates');
80
+ }
81
+ const [webRect, geometry, webViewRect] = await Promise.all([
82
+ this.getElementRect(elementId),
83
+ getWebviewGeometryContext(this),
84
+ getNativeWebViewRect(this),
85
+ ]);
86
+ // getElementRect's x/y are relative to the current frame's own document; convert
87
+ // to layout-viewport-relative coordinates of the top-level page
88
+ const layoutX = webRect.x - geometry.scrollX + geometry.frameOffsetX;
89
+ const layoutY = webRect.y - geometry.scrollY + geometry.frameOffsetY;
90
+ // then account for the page's visual viewport (pinch zoom / auto input zoom),
91
+ // which the layout viewport and devicePixelRatio alone don't reflect
92
+ const visualX = (layoutX - geometry.visualOffsetLeft) * geometry.visualScale;
93
+ const visualY = (layoutY - geometry.visualOffsetTop) * geometry.visualScale;
94
+ const scale = geometry.visualScale * geometry.pixelRatio;
95
+ const translated = {
96
+ x: Math.round(webViewRect.x + visualX * geometry.pixelRatio),
97
+ y: Math.round(webViewRect.y + visualY * geometry.pixelRatio),
98
+ width: Math.round(webRect.width * scale),
99
+ height: Math.round(webRect.height * scale),
100
+ };
101
+ const clamped = clampRectToBounds(translated, webViewRect);
102
+ if (clamped.width === 0 || clamped.height === 0) {
103
+ throw new errors.ElementNotInteractableError(`The element is not visible: its translated rectangle does not overlap the WebView's on-screen bounds`);
104
+ }
105
+ return clamped;
106
+ }
39
107
  /**
40
108
  * Gets the window rectangle (W3C endpoint).
41
109
  * @returns The window rectangle (x, y, width, height).
@@ -63,4 +131,148 @@ export async function getDisplayDensity() {
63
131
  export async function getWindowSize() {
64
132
  return (await this.uiautomator2.jwproxy.command('/window/current/size', 'GET', {}));
65
133
  }
134
+ // broad match so custom/vendor WebView subclasses (hybrid frameworks, etc.) are still found
135
+ const NATIVE_WEBVIEW_CLASS_SELECTOR = "//*[contains(@class,'WebView')]";
136
+ /**
137
+ * Finds the on-screen bounding rectangle of the currently active web view,
138
+ * as self-reported by Chromium's own WebView embedding layer: each page
139
+ * listed by the CDP `/json/list` endpoint carries a `description` field with
140
+ * its `screenX`/`screenY`/`width`/`height` in native device screen
141
+ * coordinates. This is authoritative and independent of whatever native
142
+ * Android view class actually hosts the WebView, unlike scanning the view
143
+ * hierarchy for a specific class name.
144
+ *
145
+ * @returns The rectangle, or `null` if this data isn't available (e.g. the
146
+ * page didn't report a `description`, or the CDP lookup failed).
147
+ */
148
+ async function getWebviewRectFromCdp(driver) {
149
+ let mapping;
150
+ try {
151
+ mapping = await driver.mobileGetContexts();
152
+ }
153
+ catch {
154
+ return null;
155
+ }
156
+ const pages = mapping.find((m) => m.webviewName === driver.curContext)?.pages;
157
+ for (const page of pages ?? []) {
158
+ const raw = page.description;
159
+ if (typeof raw !== 'string' || !raw) {
160
+ continue;
161
+ }
162
+ let parsed;
163
+ try {
164
+ parsed = JSON.parse(raw);
165
+ }
166
+ catch {
167
+ continue;
168
+ }
169
+ const { screenX: x, screenY: y, width, height, visible, empty } = parsed;
170
+ if (visible === false || empty === true) {
171
+ continue;
172
+ }
173
+ if (typeof x === 'number' &&
174
+ typeof y === 'number' &&
175
+ typeof width === 'number' &&
176
+ typeof height === 'number' &&
177
+ width > 0 &&
178
+ height > 0) {
179
+ return { x, y, width, height };
180
+ }
181
+ }
182
+ return null;
183
+ }
184
+ /**
185
+ * Finds the on-screen bounding rectangle of the native Android WebView that
186
+ * hosts web content, in native device screen coordinates, via an XPath scan
187
+ * of the native view hierarchy for a class name containing "WebView".
188
+ *
189
+ * There is no reliable way to correlate a native view-hierarchy node with the
190
+ * specific Chromium instance backing the currently active CDP target, so this
191
+ * only succeeds when exactly one non-degenerate (visible, non-zero-area)
192
+ * WebView node is found; it throws rather than guessing if more than one
193
+ * candidate remains, since silently picking the wrong one (e.g. the largest)
194
+ * would translate coordinates using an unrelated WebView's origin and bounds.
195
+ * This call bypasses the active web view context, since it must query the
196
+ * native view hierarchy rather than the DOM. Used only as a fallback when the
197
+ * CDP-reported bounds (see `getWebviewRectFromCdp`) aren't available.
198
+ */
199
+ async function getNativeWebViewRectFromViewHierarchy(driver) {
200
+ const webViewElements = await driver.findElOrEls('xpath', NATIVE_WEBVIEW_CLASS_SELECTOR, true);
201
+ if (!webViewElements.length) {
202
+ throw new errors.NoSuchElementError('Could not find a native WebView element on screen');
203
+ }
204
+ // fetched independently per element: one going stale (e.g. the view hierarchy
205
+ // changed between the find and this lookup) must not fail the others
206
+ const settled = await Promise.allSettled(webViewElements.map((el) => {
207
+ const elementId = util.unwrapElement(el);
208
+ return driver.uiautomator2.jwproxy.command(`/element/${elementId}/rect`, 'GET');
209
+ }));
210
+ const rects = settled
211
+ .filter((result) => result.status === 'fulfilled')
212
+ .map((result) => result.value)
213
+ .filter((rect) => rect.width > 0 && rect.height > 0);
214
+ if (!rects.length) {
215
+ throw new errors.NoSuchElementError('Could not determine the bounds of any visible native WebView element on screen');
216
+ }
217
+ if (rects.length > 1) {
218
+ throw new errors.UnknownError('Found multiple visible native WebView elements on screen and could not determine which one hosts the ' +
219
+ 'current web view context, since its on-screen bounds were not available via CDP. Ensure only one ' +
220
+ 'WebView is visible on screen at a time, or check that the CDP devtools socket for this web view is reachable.');
221
+ }
222
+ return rects[0];
223
+ }
224
+ /**
225
+ * Finds the on-screen bounding rectangle of the currently active web view, in
226
+ * native device screen coordinates. Prefers the bounds Chromium itself
227
+ * reports over CDP; falls back to scanning the native view hierarchy only if
228
+ * that data isn't available.
229
+ */
230
+ async function getNativeWebViewRect(driver) {
231
+ return (await getWebviewRectFromCdp(driver)) ?? (await getNativeWebViewRectFromViewHierarchy(driver));
232
+ }
233
+ // Walks up window.parent to accumulate same-origin ancestor frame offsets (stopping at the
234
+ // first cross-origin one, which can't be measured from script), then reads devicePixelRatio,
235
+ // the current frame's own scroll, and the outermost reachable window's visual viewport state.
236
+ const GET_WEBVIEW_GEOMETRY_CONTEXT_SCRIPT = `
237
+ var win = window;
238
+ var frameOffsetX = 0;
239
+ var frameOffsetY = 0;
240
+ try {
241
+ while (win !== win.parent) {
242
+ var frameRect = win.frameElement.getBoundingClientRect();
243
+ frameOffsetX += frameRect.left;
244
+ frameOffsetY += frameRect.top;
245
+ win = win.parent;
246
+ }
247
+ } catch (e) {
248
+ // cross-origin ancestor frame; its geometry can't be measured from here
249
+ }
250
+ var visualViewport = win.visualViewport;
251
+ return {
252
+ pixelRatio: window.devicePixelRatio,
253
+ scrollX: window.scrollX,
254
+ scrollY: window.scrollY,
255
+ frameOffsetX: frameOffsetX,
256
+ frameOffsetY: frameOffsetY,
257
+ visualScale: visualViewport ? visualViewport.scale : 1,
258
+ visualOffsetLeft: visualViewport ? visualViewport.offsetLeft : 0,
259
+ visualOffsetTop: visualViewport ? visualViewport.offsetTop : 0,
260
+ };
261
+ `;
262
+ /**
263
+ * Reads the geometry needed to translate an element's `getElementRect` rectangle
264
+ * (which is relative to its own, possibly nested, document, and unaffected by pinch
265
+ * zoom) into a position within the top-level page's currently visible viewport.
266
+ * Read directly from Chromium itself, rather than assumed from the OS-level display
267
+ * density or a generic viewport rectangle, since none of this can be assumed to stay
268
+ * fixed across zoom, scroll, or frame nesting.
269
+ */
270
+ async function getWebviewGeometryContext(driver) {
271
+ const chromedriver = driver.chromedriver;
272
+ const endpoint = chromedriver.jwproxy.downstreamProtocol === PROTOCOLS.MJSONWP ? '/execute' : '/execute/sync';
273
+ return (await chromedriver.jwproxy.command(endpoint, 'POST', {
274
+ script: GET_WEBVIEW_GEOMETRY_CONTEXT_SCRIPT,
275
+ args: [],
276
+ }));
277
+ }
66
278
  //# sourceMappingURL=viewport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,EAAC,SAAS,EAAC,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,KAAK,EAAE,EAAE,CAAC,CAEpG,CAAC;IACF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAClG,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9C,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;IACxD,2EAA2E;IAC3E,4BAA4B;IAC5B,OAAO;QACL,IAAI,EAAE,CAAC;QACP,GAAG,EAAE,eAAe;QACpB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,MAAM,EAAE,UAAU,CAAC,MAAM,GAAG,eAAe;KAC5C,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;IACnD,OAAO;QACL,KAAK;QACL,MAAM;QACN,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;KACL,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,gCAAgC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAW,CAAC;AAC1G,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAS,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"viewport.js","sourceRoot":"","sources":["../../../lib/commands/viewport.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import { mobilePressKey, mobileType, keyevent } from './commands/keyboard.js';
13
13
  import { getPageSource, getOrientation, setOrientation, mobileGetDeviceInfo, mobileGetDeclaredOrientation, mobileResetAccessibilityCache } from './commands/misc.js';
14
14
  import { mobileDeepLink, back } from './commands/navigation.js';
15
15
  import { mobileScreenshots, mobileViewportScreenshot, getScreenshot, getViewportScreenshot } from './commands/screenshot.js';
16
- import { getStatusBarHeight, getDevicePixelRatio, getViewPortRect, mobileViewPortRect } from './commands/viewport.js';
16
+ import { getStatusBarHeight, getDevicePixelRatio, getViewPortRect, mobileViewPortRect, mobileViewportElementRect } from './commands/viewport.js';
17
17
  import { mobileListWindows, mobileListDisplays } from './commands/windows.js';
18
18
  import { type Uiautomator2Constraints } from './constraints.js';
19
19
  import type { Uiautomator2Settings, Uiautomator2DeviceDetails, Uiautomator2DriverCaps, Uiautomator2DriverOpts, W3CUiautomator2DriverCaps } from './types.js';
@@ -485,6 +485,12 @@ declare class AndroidUiautomator2Driver extends AndroidDriver implements Externa
485
485
  readonly 'mobile: viewportRect': {
486
486
  readonly command: "mobileViewPortRect";
487
487
  };
488
+ readonly 'mobile: viewportElementRect': {
489
+ readonly command: "mobileViewportElementRect";
490
+ readonly params: {
491
+ readonly required: readonly ["elementId"];
492
+ };
493
+ };
488
494
  readonly 'mobile: deepLink': {
489
495
  readonly command: "mobileDeepLink";
490
496
  readonly params: {
@@ -1054,6 +1060,7 @@ declare class AndroidUiautomator2Driver extends AndroidDriver implements Externa
1054
1060
  getWindowRect: AndroidDriver["getWindowRect"];
1055
1061
  getWindowSize: AndroidDriver["getWindowSize"];
1056
1062
  mobileViewPortRect: typeof mobileViewPortRect;
1063
+ mobileViewportElementRect: typeof mobileViewportElementRect;
1057
1064
  prepareSessionApp: typeof prepareSessionApp;
1058
1065
  checkAppPresent: typeof checkAppPresent;
1059
1066
  initAUT: typeof initAUT;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ import { pressKeyCode, longPressKeyCode, mobilePressKey, mobileType, doSendKeys,
15
15
  import { getPageSource, getOrientation, setOrientation, openNotifications, suspendChromedriverProxy, mobileGetDeviceInfo, mobileGetDeclaredOrientation, mobileResetAccessibilityCache, } from './commands/misc.js';
16
16
  import { setUrl, mobileDeepLink, back } from './commands/navigation.js';
17
17
  import { mobileScreenshots, mobileViewportScreenshot, getScreenshot, getViewportScreenshot, } from './commands/screenshot.js';
18
- import { getStatusBarHeight, getDevicePixelRatio, getDisplayDensity, getViewPortRect, getWindowRect, getWindowSize, mobileViewPortRect, } from './commands/viewport.js';
18
+ import { getStatusBarHeight, getDevicePixelRatio, getDisplayDensity, getViewPortRect, getWindowRect, getWindowSize, mobileViewPortRect, mobileViewportElementRect, } from './commands/viewport.js';
19
19
  import { mobileListWindows, mobileListDisplays } from './commands/windows.js';
20
20
  import UIAUTOMATOR2_CONSTRAINTS from './constraints.js';
21
21
  import { executeMethodMap } from './execute-method-map.js';
@@ -197,6 +197,7 @@ class AndroidUiautomator2Driver extends AndroidDriver {
197
197
  getWindowRect = getWindowRect;
198
198
  getWindowSize = getWindowSize;
199
199
  mobileViewPortRect = mobileViewPortRect;
200
+ mobileViewportElementRect = mobileViewportElementRect;
200
201
  prepareSessionApp = prepareSessionApp;
201
202
  checkAppPresent = checkAppPresent;
202
203
  initAUT = initAUT;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
@@ -77,6 +77,12 @@ export declare const executeMethodMap: {
77
77
  readonly 'mobile: viewportRect': {
78
78
  readonly command: "mobileViewPortRect";
79
79
  };
80
+ readonly 'mobile: viewportElementRect': {
81
+ readonly command: "mobileViewportElementRect";
82
+ readonly params: {
83
+ readonly required: readonly ["elementId"];
84
+ };
85
+ };
80
86
  readonly 'mobile: deepLink': {
81
87
  readonly command: "mobileDeepLink";
82
88
  readonly params: {
@@ -1 +1 @@
1
- {"version":3,"file":"execute-method-map.d.ts","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyMa,CAAC"}
1
+ {"version":3,"file":"execute-method-map.d.ts","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+Ma,CAAC"}
@@ -79,6 +79,12 @@ export const executeMethodMap = {
79
79
  'mobile: viewportRect': {
80
80
  command: 'mobileViewPortRect',
81
81
  },
82
+ 'mobile: viewportElementRect': {
83
+ command: 'mobileViewportElementRect',
84
+ params: {
85
+ required: ['elementId'],
86
+ },
87
+ },
82
88
  'mobile: deepLink': {
83
89
  command: 'mobileDeepLink',
84
90
  params: {
@@ -1 +1 @@
1
- {"version":3,"file":"execute-method-map.js","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-method-map.js","sourceRoot":"","sources":["../../lib/execute-method-map.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,8 @@
1
- import type {Rect, Size} from '@appium/types';
1
+ import type {Rect, Size, StringRecord} from '@appium/types';
2
+ import type {WebviewsMapping} from 'appium-android-driver';
3
+ import type {Chromedriver} from 'appium-chromedriver';
4
+ import {errors, PROTOCOLS} from 'appium/driver.js';
5
+ import {util} from 'appium/support.js';
2
6
 
3
7
  import type {AndroidUiautomator2Driver} from '../driver.js';
4
8
  import type {RelativeRect} from './types.js';
@@ -47,6 +51,81 @@ export async function mobileViewPortRect(this: AndroidUiautomator2Driver): Promi
47
51
  return await this.getViewPortRect();
48
52
  }
49
53
 
54
+ /**
55
+ * Clips `rect` to the area covered by `bounds`, so that it never extends
56
+ * outside it. An element that is partially (or entirely) scrolled out of its
57
+ * container, or that otherwise overflows it, would otherwise translate to
58
+ * coordinates outside of what's actually on screen at that container.
59
+ *
60
+ * @returns The clipped rectangle. Its width/height are 0 if `rect` doesn't
61
+ * overlap `bounds` at all.
62
+ */
63
+ export function clampRectToBounds(rect: Rect, bounds: Rect): Rect {
64
+ const left = Math.min(Math.max(rect.x, bounds.x), bounds.x + bounds.width);
65
+ const top = Math.min(Math.max(rect.y, bounds.y), bounds.y + bounds.height);
66
+ const right = Math.min(Math.max(rect.x + rect.width, bounds.x), bounds.x + bounds.width);
67
+ const bottom = Math.min(Math.max(rect.y + rect.height, bounds.y), bounds.y + bounds.height);
68
+ return {
69
+ x: left,
70
+ y: top,
71
+ width: Math.max(0, right - left),
72
+ height: Math.max(0, bottom - top),
73
+ };
74
+ }
75
+
76
+ /**
77
+ * Gets the rectangle of an element located in the current web view context,
78
+ * translated into native device screen coordinates. `getElementRect` is
79
+ * relative to the element's own (possibly nested-frame) document and ignores
80
+ * scroll/zoom, so this corrects for scroll offset, ancestor frame offsets,
81
+ * and the visual viewport (pinch/input zoom) before applying the device
82
+ * pixel ratio and the hosting WebView's on-screen bounds (see
83
+ * `getWebviewGeometryContext`). The result is clamped to those bounds.
84
+ *
85
+ * @param elementId - ID of an element found in the current web view context.
86
+ * @returns The element rectangle (x, y, width, height) in native screen coordinates.
87
+ * @throws {errors.InvalidContextError} If the current context is not a web view.
88
+ * @throws {errors.ElementNotInteractableError} If the element is not visible/is entirely
89
+ * offscreen, i.e. outside the WebView's own on-screen bounds, once clamped.
90
+ */
91
+ export async function mobileViewportElementRect(this: AndroidUiautomator2Driver, elementId: string): Promise<Rect> {
92
+ if (!this.isWebContext()) {
93
+ throw new errors.InvalidContextError(
94
+ 'The current context must be a web view in order to translate an element rect into native screen coordinates',
95
+ );
96
+ }
97
+
98
+ const [webRect, geometry, webViewRect] = await Promise.all([
99
+ this.getElementRect(elementId),
100
+ getWebviewGeometryContext(this),
101
+ getNativeWebViewRect(this),
102
+ ]);
103
+
104
+ // getElementRect's x/y are relative to the current frame's own document; convert
105
+ // to layout-viewport-relative coordinates of the top-level page
106
+ const layoutX = webRect.x - geometry.scrollX + geometry.frameOffsetX;
107
+ const layoutY = webRect.y - geometry.scrollY + geometry.frameOffsetY;
108
+ // then account for the page's visual viewport (pinch zoom / auto input zoom),
109
+ // which the layout viewport and devicePixelRatio alone don't reflect
110
+ const visualX = (layoutX - geometry.visualOffsetLeft) * geometry.visualScale;
111
+ const visualY = (layoutY - geometry.visualOffsetTop) * geometry.visualScale;
112
+ const scale = geometry.visualScale * geometry.pixelRatio;
113
+
114
+ const translated = {
115
+ x: Math.round(webViewRect.x + visualX * geometry.pixelRatio),
116
+ y: Math.round(webViewRect.y + visualY * geometry.pixelRatio),
117
+ width: Math.round(webRect.width * scale),
118
+ height: Math.round(webRect.height * scale),
119
+ };
120
+ const clamped = clampRectToBounds(translated, webViewRect);
121
+ if (clamped.width === 0 || clamped.height === 0) {
122
+ throw new errors.ElementNotInteractableError(
123
+ `The element is not visible: its translated rectangle does not overlap the WebView's on-screen bounds`,
124
+ );
125
+ }
126
+ return clamped;
127
+ }
128
+
50
129
  /**
51
130
  * Gets the window rectangle (W3C endpoint).
52
131
  * @returns The window rectangle (x, y, width, height).
@@ -76,3 +155,189 @@ export async function getDisplayDensity(this: AndroidUiautomator2Driver): Promis
76
155
  export async function getWindowSize(this: AndroidUiautomator2Driver): Promise<Size> {
77
156
  return (await this.uiautomator2.jwproxy.command('/window/current/size', 'GET', {})) as Size;
78
157
  }
158
+
159
+ // broad match so custom/vendor WebView subclasses (hybrid frameworks, etc.) are still found
160
+ const NATIVE_WEBVIEW_CLASS_SELECTOR = "//*[contains(@class,'WebView')]";
161
+
162
+ interface CdpPageDescription {
163
+ screenX?: number;
164
+ screenY?: number;
165
+ width?: number;
166
+ height?: number;
167
+ visible?: boolean;
168
+ empty?: boolean;
169
+ }
170
+
171
+ /**
172
+ * Finds the on-screen bounding rectangle of the currently active web view,
173
+ * as self-reported by Chromium's own WebView embedding layer: each page
174
+ * listed by the CDP `/json/list` endpoint carries a `description` field with
175
+ * its `screenX`/`screenY`/`width`/`height` in native device screen
176
+ * coordinates. This is authoritative and independent of whatever native
177
+ * Android view class actually hosts the WebView, unlike scanning the view
178
+ * hierarchy for a specific class name.
179
+ *
180
+ * @returns The rectangle, or `null` if this data isn't available (e.g. the
181
+ * page didn't report a `description`, or the CDP lookup failed).
182
+ */
183
+ async function getWebviewRectFromCdp(driver: AndroidUiautomator2Driver): Promise<Rect | null> {
184
+ let mapping: WebviewsMapping[];
185
+ try {
186
+ mapping = await driver.mobileGetContexts();
187
+ } catch {
188
+ return null;
189
+ }
190
+
191
+ const pages = mapping.find((m) => m.webviewName === driver.curContext)?.pages;
192
+ for (const page of pages ?? []) {
193
+ const raw = (page as StringRecord).description;
194
+ if (typeof raw !== 'string' || !raw) {
195
+ continue;
196
+ }
197
+ let parsed: CdpPageDescription;
198
+ try {
199
+ parsed = JSON.parse(raw);
200
+ } catch {
201
+ continue;
202
+ }
203
+ const {screenX: x, screenY: y, width, height, visible, empty} = parsed;
204
+ if (visible === false || empty === true) {
205
+ continue;
206
+ }
207
+ if (
208
+ typeof x === 'number' &&
209
+ typeof y === 'number' &&
210
+ typeof width === 'number' &&
211
+ typeof height === 'number' &&
212
+ width > 0 &&
213
+ height > 0
214
+ ) {
215
+ return {x, y, width, height};
216
+ }
217
+ }
218
+ return null;
219
+ }
220
+
221
+ /**
222
+ * Finds the on-screen bounding rectangle of the native Android WebView that
223
+ * hosts web content, in native device screen coordinates, via an XPath scan
224
+ * of the native view hierarchy for a class name containing "WebView".
225
+ *
226
+ * There is no reliable way to correlate a native view-hierarchy node with the
227
+ * specific Chromium instance backing the currently active CDP target, so this
228
+ * only succeeds when exactly one non-degenerate (visible, non-zero-area)
229
+ * WebView node is found; it throws rather than guessing if more than one
230
+ * candidate remains, since silently picking the wrong one (e.g. the largest)
231
+ * would translate coordinates using an unrelated WebView's origin and bounds.
232
+ * This call bypasses the active web view context, since it must query the
233
+ * native view hierarchy rather than the DOM. Used only as a fallback when the
234
+ * CDP-reported bounds (see `getWebviewRectFromCdp`) aren't available.
235
+ */
236
+ async function getNativeWebViewRectFromViewHierarchy(driver: AndroidUiautomator2Driver): Promise<Rect> {
237
+ const webViewElements = await driver.findElOrEls('xpath', NATIVE_WEBVIEW_CLASS_SELECTOR, true);
238
+ if (!webViewElements.length) {
239
+ throw new errors.NoSuchElementError('Could not find a native WebView element on screen');
240
+ }
241
+
242
+ // fetched independently per element: one going stale (e.g. the view hierarchy
243
+ // changed between the find and this lookup) must not fail the others
244
+ const settled = await Promise.allSettled(
245
+ webViewElements.map((el) => {
246
+ const elementId = util.unwrapElement(el);
247
+ return driver.uiautomator2.jwproxy.command(`/element/${elementId}/rect`, 'GET') as Promise<Rect>;
248
+ }),
249
+ );
250
+ const rects = settled
251
+ .filter((result): result is PromiseFulfilledResult<Rect> => result.status === 'fulfilled')
252
+ .map((result) => result.value)
253
+ .filter((rect) => rect.width > 0 && rect.height > 0);
254
+ if (!rects.length) {
255
+ throw new errors.NoSuchElementError(
256
+ 'Could not determine the bounds of any visible native WebView element on screen',
257
+ );
258
+ }
259
+ if (rects.length > 1) {
260
+ throw new errors.UnknownError(
261
+ 'Found multiple visible native WebView elements on screen and could not determine which one hosts the ' +
262
+ 'current web view context, since its on-screen bounds were not available via CDP. Ensure only one ' +
263
+ 'WebView is visible on screen at a time, or check that the CDP devtools socket for this web view is reachable.',
264
+ );
265
+ }
266
+ return rects[0];
267
+ }
268
+
269
+ /**
270
+ * Finds the on-screen bounding rectangle of the currently active web view, in
271
+ * native device screen coordinates. Prefers the bounds Chromium itself
272
+ * reports over CDP; falls back to scanning the native view hierarchy only if
273
+ * that data isn't available.
274
+ */
275
+ async function getNativeWebViewRect(driver: AndroidUiautomator2Driver): Promise<Rect> {
276
+ return (await getWebviewRectFromCdp(driver)) ?? (await getNativeWebViewRectFromViewHierarchy(driver));
277
+ }
278
+
279
+ interface WebviewGeometryContext {
280
+ /** Ratio between native device pixels and CSS pixels, per `window.devicePixelRatio`. */
281
+ pixelRatio: number;
282
+ /** The current frame's own horizontal scroll offset, in its own document's CSS pixels. */
283
+ scrollX: number;
284
+ /** The current frame's own vertical scroll offset, in its own document's CSS pixels. */
285
+ scrollY: number;
286
+ /** Sum of each ancestor frame's on-screen horizontal offset within its own parent, up to the first cross-origin ancestor. */
287
+ frameOffsetX: number;
288
+ /** Sum of each ancestor frame's on-screen vertical offset within its own parent, up to the first cross-origin ancestor. */
289
+ frameOffsetY: number;
290
+ /** The page's visual viewport scale, i.e. the current pinch zoom / auto input zoom level. `1` if unzoomed or unsupported. */
291
+ visualScale: number;
292
+ /** The visual viewport's horizontal pan offset from the layout viewport, in CSS pixels. */
293
+ visualOffsetLeft: number;
294
+ /** The visual viewport's vertical pan offset from the layout viewport, in CSS pixels. */
295
+ visualOffsetTop: number;
296
+ }
297
+
298
+ // Walks up window.parent to accumulate same-origin ancestor frame offsets (stopping at the
299
+ // first cross-origin one, which can't be measured from script), then reads devicePixelRatio,
300
+ // the current frame's own scroll, and the outermost reachable window's visual viewport state.
301
+ const GET_WEBVIEW_GEOMETRY_CONTEXT_SCRIPT = `
302
+ var win = window;
303
+ var frameOffsetX = 0;
304
+ var frameOffsetY = 0;
305
+ try {
306
+ while (win !== win.parent) {
307
+ var frameRect = win.frameElement.getBoundingClientRect();
308
+ frameOffsetX += frameRect.left;
309
+ frameOffsetY += frameRect.top;
310
+ win = win.parent;
311
+ }
312
+ } catch (e) {
313
+ // cross-origin ancestor frame; its geometry can't be measured from here
314
+ }
315
+ var visualViewport = win.visualViewport;
316
+ return {
317
+ pixelRatio: window.devicePixelRatio,
318
+ scrollX: window.scrollX,
319
+ scrollY: window.scrollY,
320
+ frameOffsetX: frameOffsetX,
321
+ frameOffsetY: frameOffsetY,
322
+ visualScale: visualViewport ? visualViewport.scale : 1,
323
+ visualOffsetLeft: visualViewport ? visualViewport.offsetLeft : 0,
324
+ visualOffsetTop: visualViewport ? visualViewport.offsetTop : 0,
325
+ };
326
+ `;
327
+
328
+ /**
329
+ * Reads the geometry needed to translate an element's `getElementRect` rectangle
330
+ * (which is relative to its own, possibly nested, document, and unaffected by pinch
331
+ * zoom) into a position within the top-level page's currently visible viewport.
332
+ * Read directly from Chromium itself, rather than assumed from the OS-level display
333
+ * density or a generic viewport rectangle, since none of this can be assumed to stay
334
+ * fixed across zoom, scroll, or frame nesting.
335
+ */
336
+ async function getWebviewGeometryContext(driver: AndroidUiautomator2Driver): Promise<WebviewGeometryContext> {
337
+ const chromedriver = driver.chromedriver as Chromedriver;
338
+ const endpoint = chromedriver.jwproxy.downstreamProtocol === PROTOCOLS.MJSONWP ? '/execute' : '/execute/sync';
339
+ return (await chromedriver.jwproxy.command(endpoint, 'POST', {
340
+ script: GET_WEBVIEW_GEOMETRY_CONTEXT_SCRIPT,
341
+ args: [],
342
+ })) as WebviewGeometryContext;
343
+ }
package/lib/driver.ts CHANGED
@@ -89,6 +89,7 @@ import {
89
89
  getWindowRect,
90
90
  getWindowSize,
91
91
  mobileViewPortRect,
92
+ mobileViewportElementRect,
92
93
  } from './commands/viewport.js';
93
94
  import {mobileListWindows, mobileListDisplays} from './commands/windows.js';
94
95
  import UIAUTOMATOR2_CONSTRAINTS, {type Uiautomator2Constraints} from './constraints.js';
@@ -320,6 +321,7 @@ class AndroidUiautomator2Driver
320
321
  getWindowRect = getWindowRect as AndroidDriver['getWindowRect'];
321
322
  getWindowSize = getWindowSize as AndroidDriver['getWindowSize'];
322
323
  mobileViewPortRect = mobileViewPortRect;
324
+ mobileViewportElementRect = mobileViewportElementRect;
323
325
 
324
326
  prepareSessionApp = prepareSessionApp;
325
327
  checkAppPresent = checkAppPresent;
@@ -83,6 +83,12 @@ export const executeMethodMap = {
83
83
  'mobile: viewportRect': {
84
84
  command: 'mobileViewPortRect',
85
85
  },
86
+ 'mobile: viewportElementRect': {
87
+ command: 'mobileViewportElementRect',
88
+ params: {
89
+ required: ['elementId'],
90
+ },
91
+ },
86
92
 
87
93
  'mobile: deepLink': {
88
94
  command: 'mobileDeepLink',
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "appium-uiautomator2-driver",
3
- "version": "8.5.2",
3
+ "version": "8.6.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "appium-uiautomator2-driver",
9
- "version": "8.5.2",
9
+ "version": "8.6.0",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@appium/css-locator-to-native": "^1.0.1",
@@ -427,9 +427,9 @@
427
427
  }
428
428
  },
429
429
  "node_modules/appium-chromedriver": {
430
- "version": "9.0.15",
431
- "resolved": "https://registry.npmjs.org/appium-chromedriver/-/appium-chromedriver-9.0.15.tgz",
432
- "integrity": "sha512-cgScH4hrHQrc0kjycanfRi1iL3IFpISE7b1Xa8Loxl9sPOexV1aOXr5Mz3N+y9rGjcO/sO+MEnqxbutDM435nA==",
430
+ "version": "9.0.17",
431
+ "resolved": "https://registry.npmjs.org/appium-chromedriver/-/appium-chromedriver-9.0.17.tgz",
432
+ "integrity": "sha512-3Y/SREmM8QW3XRUN9TrHmXtCmG8z48tRkp3UGNvkIUN5Ob8XxMIkNkHzzP/BXV2RGzGv9ErnzZfnikXlONfXow==",
433
433
  "license": "Apache-2.0",
434
434
  "dependencies": {
435
435
  "@appium/base-driver": "^10.8.0",
@@ -616,9 +616,9 @@
616
616
  }
617
617
  },
618
618
  "node_modules/bare-url": {
619
- "version": "2.5.3",
620
- "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.5.3.tgz",
621
- "integrity": "sha512-3absfEzoyFosWT8v83ZcJgbTJxv+S/sI7jBfeCMlUVatSaefRmwweqBhFpMllQv+HTxs/FbbToVOw1c05NORkQ==",
619
+ "version": "2.5.4",
620
+ "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.5.4.tgz",
621
+ "integrity": "sha512-Gxa7UVWBr0/edU1b+TJhn/AZvMQUj9OGspvYsaTYQrAbZA4BOTZGL3LiZxvD+CeMlDH4juwD84+eTAp/bLYW5g==",
622
622
  "license": "Apache-2.0",
623
623
  "dependencies": {
624
624
  "bare-path": "^3.0.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appium-uiautomator2-driver",
3
- "version": "8.5.2",
3
+ "version": "8.6.0",
4
4
  "description": "UiAutomator2 integration for Appium",
5
5
  "keywords": [
6
6
  "android",