From ce932fce2f4e588e625d5840a170e327c6616631 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20L=C3=BCtker?= Date: Sun, 12 Jul 2026 22:56:08 +0200 Subject: [PATCH] fix: show Bambu splash screen on Linux instead of black window The 2.8.0 merge dropped the wxYield/Raise/Update change from #162 because upstream modified the adjacent BBLSplashScreen constructor call. Re-apply it on top of the new constructor arguments. Closes #606 --- src/slic3r/GUI/GUI_App.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index e8f007a3d9..7ea524d151 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -3180,10 +3180,18 @@ bool GUI_App::on_init_inner() BOOST_LOG_TRIVIAL(info) << "begin to show the splash screen..."; //BBS use BBL splashScreen scrn = new BBLSplashScreen(bmp, wxSPLASH_CENTRE_ON_SCREEN, 0, splashscreen_pos); -#ifndef __linux__ + // Process pending paint events so the splash is drawn immediately on all + // platforms. Without this, GTK never paints the window before the heavy + // loading work begins, leaving a black window until the app is ready. wxYield(); -#endif + scrn->Raise(); + scrn->Update(); scrn->SetText(_L("Loading configuration")+ dots); + // BBLSplashScreen::SetText() does not force a repaint on non-macOS. + // Refresh() + Update() ensure the first status line is visible before + // the heavy startup work begins. + scrn->Refresh(); + scrn->Update(); } BOOST_LOG_TRIVIAL(info) << "loading systen presets...";