From f7ed005a6956476f458dceac5c4db594ebdebd6b Mon Sep 17 00:00:00 2001 From: Craig Watson Date: Fri, 11 Mar 2016 16:22:58 +0100 Subject: [PATCH] Enable hiding* OSK on Linux (*actually, killing) --- src/frameworks/UBPlatformUtils_linux.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/frameworks/UBPlatformUtils_linux.cpp b/src/frameworks/UBPlatformUtils_linux.cpp index e74bc76f..08976488 100644 --- a/src/frameworks/UBPlatformUtils_linux.cpp +++ b/src/frameworks/UBPlatformUtils_linux.cpp @@ -442,8 +442,13 @@ void UBPlatformUtils::showFullScreen(QWidget *pWidget) void UBPlatformUtils::showOSK(bool show) { - if (show) { - QProcess newProcess; - newProcess.startDetached("/usr/bin/env onboard"); - } + QProcess oskProcess; + + if (show) + oskProcess.startDetached("/usr/bin/env onboard"); + + else + /* Not exactly a great solution, but it isn't possible to just + * close onboard through wmctrl or xdotool */ + oskProcess.startDetached("pkill -3 onboard"); }