Skip to content

servoshell: Add support for opening new windows on desktop#40927

Merged
mrobinson merged 1 commit intoservo:mainfrom
mrobinson:servoshell-add-multi-window
Dec 2, 2025
Merged

servoshell: Add support for opening new windows on desktop#40927
mrobinson merged 1 commit intoservo:mainfrom
mrobinson:servoshell-add-multi-window

Conversation

@mrobinson
Copy link
Copy Markdown
Member

This change finishes adding support for opening new windows in the
desktop version of servoshell. A new button is added to the tab bar
which opens a new window (this can be adjusted later, if necessary).
User interface commands now need to be processed in the context of the
App as we need access to a reference to the ActiveEventLoop to
create a new window.

Testing: servoshell is mainly untested, though a future change will add new
unit tests for multi-window functionality.
Fixes: #13997.

@mrobinson mrobinson force-pushed the servoshell-add-multi-window branch from ee6cc41 to a4bd3e3 Compare November 27, 2025 18:47
@mrobinson mrobinson force-pushed the servoshell-add-multi-window branch from a4bd3e3 to a296bf8 Compare November 28, 2025 16:56
@mrobinson mrobinson marked this pull request as ready for review November 28, 2025 16:56
@mrobinson mrobinson requested a review from atbrakhi as a code owner November 28, 2025 16:56
@servo-highfive servo-highfive added the S-awaiting-review There is new code that needs to be reviewed. label Nov 28, 2025
@mrobinson
Copy link
Copy Markdown
Member Author

This one is now ready for review.

@mrobinson mrobinson changed the title servoshell: Add support for opening new windows in desktop servoshell: Add support for opening new windows on desktop Nov 28, 2025
@mrobinson mrobinson force-pushed the servoshell-add-multi-window branch from a296bf8 to 3c6d83b Compare November 29, 2025 23:13
@mrobinson mrobinson requested a review from mukilan December 2, 2025 08:21
Copy link
Copy Markdown
Member

@mukilan mukilan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I found an issue during testing - the 'experminental features' button only gets activated in the window where it is clicked. I guess this is because each Gui has its own state but the preferences are set globally.

@servo-highfive servo-highfive removed the S-awaiting-review There is new code that needs to be reviewed. label Dec 2, 2025
@mrobinson mrobinson force-pushed the servoshell-add-multi-window branch from 3c6d83b to 927875a Compare December 2, 2025 11:02
@servo-highfive servo-highfive added the S-awaiting-review There is new code that needs to be reviewed. label Dec 2, 2025
@mrobinson
Copy link
Copy Markdown
Member Author

I found an issue during testing - the 'experminental features' button only gets activated in the window where it is clicked. I guess this is because each Gui has its own state but the preferences are set globally.

Thanks for pointing this out. I've addressed it.

@mrobinson mrobinson enabled auto-merge December 2, 2025 11:03
@mrobinson mrobinson added this pull request to the merge queue Dec 2, 2025
@servo-highfive servo-highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Dec 2, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Dec 2, 2025
@servo-highfive servo-highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Dec 2, 2025
This change finishes adding support for opening new windows in the
desktop version of servoshell. A new button is added to the tab bar
which opens a new window (this can be adjusted later, if necessary).
User interface commands now need to be processed in the context of the
`App` as we need access to a reference to the `ActiveEventLoop` to
create a new window.

Fixes servo#13997.

Signed-off-by: Martin Robinson <[email protected]>
@mrobinson mrobinson force-pushed the servoshell-add-multi-window branch from 927875a to f78a91a Compare December 2, 2025 12:58
@mrobinson mrobinson requested a review from jschwe as a code owner December 2, 2025 12:58
@servo-highfive servo-highfive removed the S-tests-failed The changes caused existing tests to fail. label Dec 2, 2025
@mrobinson mrobinson enabled auto-merge December 2, 2025 12:58
@mrobinson mrobinson added this pull request to the merge queue Dec 2, 2025
@servo-highfive servo-highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Dec 2, 2025
Merged via the queue into servo:main with commit 105eb42 Dec 2, 2025
29 checks passed
@mrobinson mrobinson deleted the servoshell-add-multi-window branch December 2, 2025 13:59
@servo-highfive servo-highfive removed the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Dec 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-awaiting-review There is new code that needs to be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support running Servo across mulitiple top-level Windows

3 participants