Fix handling QT_IM_MODULE=none

Was added with 19a39a4 to allow no input context to be created.
Broken by commit 24c10b0. Especially if compose input context didn't
get compiled, the first input context found was loaded.

Also made Xcb integration use compose plugin by default.

Change-Id: I992eaa8b383320e4ab725bb7b79f561f4f841458
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
bb10
Pekka Vuorela 2014-08-21 14:52:45 +03:00 committed by Gatis Paeglis
parent 07c34fcc8a
commit 4a6772a587
2 changed files with 4 additions and 1 deletions

View File

@ -83,7 +83,7 @@ QPlatformInputContext *QPlatformInputContextFactory::create()
QString icString = QString::fromLatin1(qgetenv("QT_IM_MODULE"));
if (icString == QLatin1String("none"))
icString = QStringLiteral("compose");
return 0;
ic = create(icString);
if (ic && ic->isValid())

View File

@ -384,6 +384,9 @@ QXcbConnection::QXcbConnection(QXcbNativeInterface *nativeInterface, bool canGra
qunsetenv("DESKTOP_STARTUP_ID");
sync();
if (qEnvironmentVariableIsEmpty("QT_IM_MODULE"))
qputenv("QT_IM_MODULE", QByteArray("compose"));
}
QXcbConnection::~QXcbConnection()