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

[rbrowser] share single connection between all widgets #17450

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

linev
Copy link
Member

@linev linev commented Jan 17, 2025

Up to now each widget as TWebCanvas or RGeomViewer was establishing separate websocket connection with the server. This consumes extra resources and takes long time to reload such widget.

Now RWebWindow embedding will be used. For that one need to provide access to RWebWindow for each of concerned widgets.

Update JSROOT which also has to support such new feature

linev added 9 commits January 17, 2025 16:10
Like TWebCanvas can be embed into RBrowser,
but at the same time RFitPanel can be embed into TWebCanvas

Correctly master handle connection close - one need
to inform all embed widgets that connection is closing
Use special call to reuse existing browser connection
for the canvas. Improves startup time, also let reuse same websocket for many canvases
Allows to embed RCanvas into RBrowser
Instead direct connection to web window just
create channel and provide id to the server
Support proper embeding of canvas and geometry widgets into RBrowser
Serveral other fixes
Copy link

Test Results

    18 files      18 suites   4d 5h 3m 10s ⏱️
 2 695 tests  2 693 ✅ 0 💤 2 ❌
46 780 runs  46 778 ✅ 0 💤 2 ❌

For more details on these failures, see this check.

Results for commit b9a0769.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant