Closed Bug 1855025 Opened 2 years ago Closed 9 months ago

Implement "browser.getClientWindows" command

Categories

(Remote Protocol :: WebDriver BiDi, task, P2)

task

Tracking

(firefox134 fixed)

RESOLVED FIXED
134 Branch
Tracking Status
firefox134 --- fixed

People

(Reporter: whimboo, Assigned: temidayoazeez032)

References

(Blocks 1 open bug, )

Details

(Whiteboard: [webdriver:m13][webdriver:external][wptsync upstream][webdriver:relnote])

Attachments

(2 files)

No description provided.

The WebDriver BiDi spec is not done yet. As such we cannot implement it for M9. Lets push onto the backlog for now.

Whiteboard: [webdriver:m9] → [webdriver:backlog]
Summary: Implement "browser.getWindows" command → Implement "browser.getClientWindows" command
Whiteboard: [webdriver:backlog] → [webdriver:m13]

@whimboo following the link you provided. It appears this issue is now completed, and the specification for browser.ClientWindows is ready. I will take a stab at it.

Whiteboard: [webdriver:m13] → [webdriver:m14]

Okay, I am looking to work on this issue of implementing browser.getClientWindows for Webdriver Bidi (https://bugzilla.mozilla.org/show_bug.cgi?id=1855025).

From the W3C specification, implementing this command requires access to window state. Now, from checking the code base, I discovered that while WindowState is available under Marionette, it is not available in the remote/shared. The WindowState implementation is contained in the browser module (https://searchfox.org/mozilla-central/source/remote/marionette/browser.sys.mjs) under Marionette.

I would think implementing this command would require moving the browser module in Marionette to the shared directory. Is that right?

Flags: needinfo?(jdescottes)

As mentioned on Matrix, the WindowState object is a very simple helper to translate from https://searchfox.org/mozilla-central/rev/b784b4ed27d0fc41a9bbce7d666e1cfcac4778be/dom/webidl/Window.webidl#592

readonly attribute unsigned short windowState;

to a string.

WebDriver and WebDriver BiDi happen to use the same strings for the window state, so I think it's fine to move just this helper to remote/shared and then use it from both Marionette and BiDi?

Flags: needinfo?(jdescottes)

(In reply to Julian Descottes [:jdescottes] from comment #4)

As mentioned on Matrix, the WindowState object is a very simple helper to translate from https://searchfox.org/mozilla-central/rev/b784b4ed27d0fc41a9bbce7d666e1cfcac4778be/dom/webidl/Window.webidl#592

readonly attribute unsigned short windowState;

to a string.

WebDriver and WebDriver BiDi happen to use the same strings for the window state, so I think it's fine to move just this helper to remote/shared and then use it from both Marionette and BiDi?

Yes, absolutely. I will move it.

Assignee: nobody → temidayoazeez032
Status: NEW → ASSIGNED
Attachment #9431080 - Attachment description: Bug 1855025 - (Tests) Implement "browser.getClientWindows" command tests. r=whimboo,jdescottes,Sasha,jgraham → Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests.
Attachment #9431080 - Attachment description: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests. → Bug 1855025 - (Tests) Implement "browser.getClientWindows" command tests. r=whimboo,jdescottes,Sasha,jgraham
Attachment #9431080 - Attachment description: Bug 1855025 - (Tests) Implement "browser.getClientWindows" command tests. r=whimboo,jdescottes,Sasha,jgraham → WIP: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests.
Attachment #9431080 - Attachment description: WIP: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests. → Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests.
Attachment #9431080 - Attachment description: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests. → WIP: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests.
Attachment #9431080 - Attachment description: WIP: Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests. → Bug 1855025 - [wdspec] Implement "browser.getClientWindows" command tests.
Attachment #9429894 - Attachment description: Bug 1855025 - Implement "browser.getClientWindows" command. r=whimboo,jdescottes → Bug 1855025 - [webdriver-bidi] Implement "browser.getClientWindows" command.

Hello Dan. I wanted to check back with you if you may have the time to apply the remaining review comments to the patch? It would be great to get this new feature landed. Thanks a lot.

Flags: needinfo?(temidayoazeez032)

(In reply to Henrik Skupin [:whimboo][⌚️UTC+2] from comment #8)

Hello Dan. I wanted to check back with you if you may have the time to apply the remaining review comments to the patch? It would be great to get this new feature landed. Thanks a lot.

I just did. I didn't mark the comments as done.

Flags: needinfo?(temidayoazeez032)
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/abb59e0c8fc9 [webdriver-bidi] Implement "browser.getClientWindows" command. r=whimboo,webdriver-reviewers https://hg.mozilla.org/integration/autoland/rev/346312f12562 [wdspec] Implement "browser.getClientWindows" command tests. r=whimboo,webdriver-reviewers
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/48980 for changes under testing/web-platform/tests
Whiteboard: [webdriver:m14] → [webdriver:m14], [wptsync upstream]
Status: ASSIGNED → RESOLVED
Closed: 9 months ago
Resolution: --- → FIXED
Target Milestone: --- → 134 Branch
Upstream PR merged by moz-wptsync-bot
Upstream PR merged by moz-wptsync-bot
Points: 3 → ---
Whiteboard: [webdriver:m14], [wptsync upstream] → [webdriver:m14][webdriver:external][wptsync upstream]
Whiteboard: [webdriver:m14][webdriver:external][wptsync upstream] → [webdriver:m13][webdriver:external][wptsync upstream]
Whiteboard: [webdriver:m13][webdriver:external][wptsync upstream] → [webdriver:m13][webdriver:external][wptsync upstream][webdriver:relnote]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: