-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[draft] detecting close of RBrowser #19982
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
base: master
Are you sure you want to change the base?
Conversation
While pending connection can be removed after timeout, invoke clear on close at that moment
Use shorter timeout to restart some specific widget after pressing Ctrl-R. For that specially mark such connection with the falg. Default reconnect timeout will be 15 s
When reconnect timeout is negative, closed connection will be immediately destoryed So no new connection will be possible. In that case cleanup handle will be invoked immediately
It directly calls fWebWinow->Sync() where pending actions can be performed. Can be used to run some async actions from outside
I'm not sure how to translate this for my use case: in rootbrowse.cxx I have this code: int main() {
// ...
auto browser = std::make_unique<TBrowser>();
// For classic graphics: ensure rootbrowse quits when the window is closed
if (auto imp = browser->GetBrowserImp()) {
if (auto mainframe = imp->GetMainFrame()) {
mainframe->Connect("CloseWindow()", "TApplication", &app, "Terminate()");
}
}
// TODO: do the same as the paragraph above but for the web graphics
std::cout << "Press ctrl+c to exit.\n";
while (!gROOT->IsInterrupted() && !gSystem->ProcessEvents()) {
std::this_thread::sleep_for(std::chrono::milliseconds(10));
}
return 0;
} Ideally I don't want to "know" about the internal |
Test Results 21 files 21 suites 3d 15h 41m 53s ⏱️ For more details on these failures, see this check. Results for commit 1327f51. |
That's why I add last commit with changes of So PR is incomplete and just shows the direction. Also one should be careful - |
Can't we add a |
Follow up for #19978
Show how
ClearOnClose
can be used for RBrowser.To get signal immediately with browser close,
one should change
gEnv->SetValue("WebGui.ReconnectTmout", -1);