https://bugs.documentfoundation.org/show_bug.cgi?id=166128

            Bug ID: 166128
           Summary: Recreate splash screen with VCL weld
           Product: LibreOffice
           Version: Inherited From OOo
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: LibreOffice
          Assignee: [email protected]
          Reporter: [email protected]

Description:
LibreOffice splash screen uses a custom widget for creating splash screen. It
is good to implement something better using VCL weld mechanism and a UI file
designed in Glade.

Why:
The current implementation has various drawbacks:

1. It does not always scale to the same size as the main LibreOffice Window.
2. The style of the progress bar is a bit different from other UI elements,
looks mostly like Gen interface.
3. It needs custom paint code.
4. It does not conform to the dark/light theme.
5. It is not easily localize-able.
6. It is a separate binary (oosplash)

Code pointers:
Most of the code for the current implementation resides in:
desktop/source/splash/splash.cxx

The SplashScreenWindow class has an custom paint method,
SplashScreenWindow::Paint(), which draws the bitmap, and also the progress. A
new UI file is needed for this purpose. You may look into some dialogs like tip
of the day to get some insight:

Easyhacking: How to create a new “Tip-Of-The-Day” dialog
https://design.blog.documentfoundation.org/2019/06/26/how-to-create-a-new-dialog/

It would be interesting to avoid a separate binary, but it is fine to keep
things as is, and just change to use .ui file.

You may also use ideas from a minimal weld application here:

VCL weld: create LibreOffice GUI from design files
https://dev.blog.documentfoundation.org/2024/11/22/vcl-weld-create-libreoffice-gui-from-design-files/

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to