diff options
author | Jan-Marek Glogowski <glogow@fbihome.de> | 2016-09-01 14:32:01 +0200 |
---|---|---|
committer | Jan-Marek Glogowski <glogow@fbihome.de> | 2016-09-23 23:25:48 +0200 |
commit | 06283e7b00f9f7b7ad1a3e30d2dcb85c8d550588 (patch) | |
tree | 94a0d9797f1717a5f6ac18e55882d97decedffe8 /vcl/unx/generic/app/salinst.cxx | |
parent | 3bc2b8c5e0c4213b53a974944189bdf7f8155502 (diff) |
tdf#101822 X11 SalDisplay init => AfterAppInit
This fixes all X11 based VCL plugins to move display
initialization into AfterAppInit (gen, TDE, KDE4),
This is done by moving input method and display into
SalXLib, so they are available in AfterAppInit.
Otherwise the configmgr service won't be available in
SalDisplay::BestVisual.
Change-Id: I9380075b9770bceb8f453bbcb7fe31291634ff89
Diffstat (limited to 'vcl/unx/generic/app/salinst.cxx')
-rw-r--r-- | vcl/unx/generic/app/salinst.cxx | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/vcl/unx/generic/app/salinst.cxx b/vcl/unx/generic/app/salinst.cxx index c995a4881601..77941353c3a4 100644 --- a/vcl/unx/generic/app/salinst.cxx +++ b/vcl/unx/generic/app/salinst.cxx @@ -31,6 +31,8 @@ #include <unx/salframe.h> #include <unx/genprn.h> #include <unx/sm.hxx> +#include <unx/i18n_im.hxx> +#include <unx/saldisp.hxx> #include <vcl/inputtypes.hxx> #include <vcl/helper.hxx> @@ -85,6 +87,11 @@ X11SalInstance::~X11SalInstance() GetGenericData()->Dispose(); } +SalX11Display* X11SalInstance::CreateDisplay() const +{ + return new SalX11Display( mpXLib->GetDisplay() ); +} + // AnyInput from sv/mow/source/app/svapp.cxx struct PredicateReturn @@ -195,6 +202,16 @@ void X11SalInstance::DestroyFrame( SalFrame* pFrame ) delete pFrame; } +void X11SalInstance::AfterAppInit() +{ + assert( mpXLib->GetDisplay() ); + assert( mpXLib->GetInputMethod() ); + + SalX11Display *pSalDisplay = CreateDisplay(); + mpXLib->GetInputMethod()->CreateMethod( mpXLib->GetDisplay() ); + pSalDisplay->SetupInput(); +} + extern "C" { static void SAL_CALL thisModule() {} } void X11SalInstance::AddToRecentDocumentList(const OUString& rFileUrl, const OUString& rMimeType, const OUString& rDocumentService) |