| 1765 | } |
| 1766 | |
| 1767 | async def hover( |
| 1768 | self, |
| 1769 | browser_id: int | str | None, |
| 1770 | ref: int | str | None = None, |
| 1771 | x: float = 0, |
| 1772 | y: float = 0, |
| 1773 | offset_x: float = 0, |
| 1774 | offset_y: float = 0, |
| 1775 | ) -> dict[str, Any]: |
| 1776 | await self.ensure_started() |
| 1777 | resolved_id = self._resolve_browser_id(browser_id) |
| 1778 | page = self._page(resolved_id) |
| 1779 | point = await self._input_point( |
| 1780 | page, |
| 1781 | ref, |
| 1782 | x=x, |
| 1783 | y=y, |
| 1784 | offset_x=offset_x, |
| 1785 | offset_y=offset_y, |
| 1786 | ) |
| 1787 | await page.mouse.move(float(point["x"]), float(point["y"])) |
| 1788 | self._maybe_promote(resolved_id) |
| 1789 | return { |
| 1790 | "action": { |
| 1791 | "point": point, |
| 1792 | "ref": ref if self._has_reference(ref) else None, |
| 1793 | }, |
| 1794 | "state": await self._state(resolved_id), |
| 1795 | } |
| 1796 | |
| 1797 | async def double_click( |
| 1798 | self, |