Quoting from the QApplication ctor doc [1]:
> All Qt programs automatically support the following command line options:
>
> * -style= style, sets the application GUI style. Possible values depend on
your system configuration. If you compiled Qt with additional styles or
have additional styles as plugins these will be available to the
-style command line option. You can also set the style for all Qt
applications by setting the QT_STYLE_OVERRIDE environment variable.
> * -style style, is the same as listed above.
> * -stylesheet= stylesheet, sets the application styleSheet. The value must
be a path to a file that contains the Style Sheet.
Note: Relative URLs in the Style Sheet file are relative to the
Style Sheet file's path.
> * -stylesheet stylesheet, is the same as listed above.
So far, LibreOffice's command line argument
processing/evaluation would prevent passing these
options as they were considered invalid arguments
for LibreOffice.
Adjust this to simply ignore the "-stylesheet=..."
and "-style=..." variants when validating command
line arguments, and pass these on to the QApplication
in QtInstance::CreateQApplication.
Notes:
* For now, only the single-arg variants using "=" are supported,
i.e. "-style=<somestyle" and "-stylesheet=<somestylesheet>", but
not "-style <somestyle>" or "-stylesheet <mystylesheet>".
The logic could be extended as needed in the future.
* At the point in time that the command line argument processing
happens in LO, the vcl plugin hasn't been created yet, so there
is no good way to tell whether one of the Qt-based vcl plugins
is actually going to be used. Just allow the arguments if one
of them was enabled at build time. If another vcl plugin (e.g. gtk3)
is used, those arguments are simply ignored.
[1] https://doc.qt.io/qt-6/qapplication.html#QApplication
Change-Id: I3a4bf2071eaf875e45bdd9cd5b5f928118412cb2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208833
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins