Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: multi-window support #109

Merged
merged 24 commits into from
Aug 9, 2024
Merged

feat: multi-window support #109

merged 24 commits into from
Aug 9, 2024

Conversation

wusyong
Copy link
Member

@wusyong wusyong commented Aug 8, 2024

This PRs adds initial multi-window support.

There are some known issues we might open in follow up issues:

@wusyong wusyong changed the title Multi feat: multi-window support Aug 8, 2024
@wusyong wusyong marked this pull request as ready for review August 8, 2024 09:12
src/verso.rs Show resolved Hide resolved
src/verso.rs Show resolved Hide resolved
src/verso.rs Show resolved Hide resolved
src/webview.rs Show resolved Hide resolved
@@ -78,20 +92,67 @@ impl Window {
)
}

/// Handle Winit window event.
/// Create a Verso window with the rendering context.
pub fn new_with_compositor(
Copy link
Contributor

Choose a reason for hiding this comment

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

this code looks duplicated with pub fn new(evl: &EventLoopWindowTarget<()>) -> (Self, RenderingContext)

Copy link
Member Author

Choose a reason for hiding this comment

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

The current limitation is that RenderingContext still needs a surface which means it needs an existing window to create. Do you have any suggestions for the abstract?

src/window.rs Outdated Show resolved Hide resolved
src/window.rs Outdated Show resolved Hide resolved
@wusyong wusyong requested a review from Taym95 August 8, 2024 11:44
@tensor-programming
Copy link
Member

tensor-programming commented Aug 8, 2024

Seems to work on windows though even with a basic page like google.com, it hits dom binding errors which cause it to crash. Otherwise, you can spawn as many windows as you want (I ended up spawning about 100 of them though without any web content loaded; took about 6 gigs of memory though).

@wusyong wusyong requested review from pewsheen, dklassic and Taym95 and removed request for Taym95 August 9, 2024 01:21
src/compositor.rs Outdated Show resolved Hide resolved
src/compositor.rs Show resolved Hide resolved
src/compositor.rs Show resolved Hide resolved
@wusyong wusyong added this pull request to the merge queue Aug 9, 2024
@wusyong
Copy link
Member Author

wusyong commented Aug 9, 2024

We opened #112 #113 #114 #115 for follow-up issue tracking.

Merged via the queue into main with commit 07a88a8 Aug 9, 2024
6 checks passed
@wusyong wusyong deleted the multi branch August 9, 2024 10:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants