summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2022-01-10 15:27:48 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2022-01-15 10:48:53 +0100
commit5cf9509a118e2daf9bf474bee8747d5d217f4f09 (patch)
treee6a914b74a366cc6ff1bf5c6bb2fb79918f9435d
parentlok: remove residue text selection when there's none in the core (diff)
downloadcore-5cf9509a118e2daf9bf474bee8747d5d217f4f09.tar.gz
core-5cf9509a118e2daf9bf474bee8747d5d217f4f09.zip
preload configmgr data for COOL
touch all the config data we need during LOK pre-init. This means that most of the keys we need should become cached by ConfigurationWrapper in comphelper. Which means that the child processes we fork should be able to use the shared pages and not allocate their own. Change-Id: Iea8b1c4beaba67b6310b20cc161061ccf9a0db89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128247 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> (cherry picked from commit 8de8abc5d26bfd0b3d7006d33a2231001ed77161) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128241 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
-rw-r--r--desktop/source/lib/init.cxx47
1 files changed, 47 insertions, 0 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 545e7182068e..dc3ff66ebd5c 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -177,6 +177,23 @@
#include "lokclipboard.hxx"
#include <officecfg/Office/Common.hxx>
#include <officecfg/Office/Impress.hxx>
+#include <unotools/optionsdlg.hxx>
+#include <svl/ctloptions.hxx>
+#include <svtools/accessibilityoptions.hxx>
+#include <svtools/colorcfg.hxx>
+#include <svtools/miscopt.hxx>
+#include <svtools/slidesorterbaropt.hxx>
+#include <unotools/cmdoptions.hxx>
+#include <unotools/compatibility.hxx>
+#include <unotools/fltrcfg.hxx>
+#include <unotools/lingucfg.hxx>
+#include <unotools/moduleoptions.hxx>
+#include <unotools/pathoptions.hxx>
+#include <unotools/searchopt.hxx>
+#include <unotools/syslocaleoptions.hxx>
+#include <unotools/useroptions.hxx>
+#include <unotools/viewoptions.hxx>
+#include <vcl/settings.hxx>
using namespace css;
using namespace vcl;
@@ -6465,6 +6482,36 @@ static void preloadData()
OutputDevice::GetDefaultFont(DefaultFontType::CTL_SPREADSHEET, nLang, GetDefaultFontFlags::OnlyOne);
}
+ std::cerr << "Preload config\n";
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wunused-variable"
+#endif
+ static SvtOptionsDialogOptions aDialogOptions;
+ static SvtCTLOptions aSvtCTLOptions;
+ static SvtAccessibilityOptions aSvtAccessibilityOptions;
+ static svtools::ColorConfig aColorConfig;
+ static SvtMiscOptions aSvtMiscOptions;
+ static SvtSlideSorterBarOptions aSvtSlideSorterBarOptions;
+ static SvtCommandOptions aSvtCommandOptions;
+ static SvtCompatibilityOptions aSvtCompatibilityOptions;
+ static SvtFilterOptions aSvtFilterOptions;
+ static SvtLinguConfig aSvtLinguConfig;
+ static SvtModuleOptions aSvtModuleOptions;
+ static SvtPathOptions aSvtPathOptions;
+ static SvtSearchOptions aSvtSearchOptions;
+ static SvtSysLocaleOptions aSvtSysLocaleOptions;
+ static SvtUserOptions aSvtUserOptions;
+ //static SvtViewOptions aSvtViewOptions;
+ static MouseSettings aMouseSettings;
+ static StyleSettings aStyleSettings;
+ static MiscSettings aMiscSettings;
+ static HelpSettings aHelpSettings;
+ static AllSettings aAllSettings;
+#ifdef __GNUC__
+#pragma GCC diagnostic pop
+#endif
+
// Set user profile's path back to the original one
rtl::Bootstrap::set("UserInstallation", sUserPath);
}