From 5d117fd427e3e727df5d3f417a2b91366f2a31c1 Mon Sep 17 00:00:00 2001 From: Kevin Krammer Date: Fri, 23 Mar 2012 12:50:22 +0100 Subject: Refactoring virtual keyboard class into non-singleton Getting rid of the singleton gives us better control over when the virtual keyboard handling class is instantiated and configured. Also notify screens about keyboard height changes and let them notify through QWindowSystemInterface instead of "guessing" the screen in QQnxVirtualKeyboard. Change-Id: I71a7f6b5e9d5455563404f6abe7a0daec567a12d Reviewed-by: Sean Harmer Reviewed-by: Robin Burchell --- src/plugins/platforms/qnx/qqnxvirtualkeyboard.h | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'src/plugins/platforms/qnx/qqnxvirtualkeyboard.h') diff --git a/src/plugins/platforms/qnx/qqnxvirtualkeyboard.h b/src/plugins/platforms/qnx/qqnxvirtualkeyboard.h index 73a296fb9f..9f29a077e6 100644 --- a/src/plugins/platforms/qnx/qqnxvirtualkeyboard.h +++ b/src/plugins/platforms/qnx/qqnxvirtualkeyboard.h @@ -45,17 +45,16 @@ #include #include #include -#include #include #include #include #include -class QSocketNotifier; - QT_BEGIN_NAMESPACE +class QSocketNotifier; + /* Shamelessly copied from the browser - this should be rewritten once we have a proper PPS wrapper class */ class QQnxVirtualKeyboard : public QObject { @@ -74,8 +73,8 @@ public: // enum KeyboardMode { Default, Url, Email, Web, NumPunc, Symbol, Phone, Pin }; - static QQnxVirtualKeyboard& instance(); - static void destroy(); + QQnxVirtualKeyboard(); + ~QQnxVirtualKeyboard(); bool showKeyboard(); bool hideKeyboard(); @@ -91,21 +90,18 @@ public Q_SLOTS: Q_SIGNALS: void localeChanged(const QLocale &locale); void visibilityChanged(bool visible); + void heightChanged(int height); private Q_SLOTS: void ppsDataReady(); private: - QQnxVirtualKeyboard(); - virtual ~QQnxVirtualKeyboard(); - // Will be called internally if needed. bool connect(); void close(); bool queryPPSInfo(); void handleKeyboardInfoMessage(); void handleKeyboardStateChangeMessage(bool visible); - void updateAvailableScreenGeometry(); void applyKeyboardModeOptions(); void addDefaultModeOptions(); -- cgit v1.2.3