summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforminputcontexts
Commit message (Collapse)AuthorAgeFilesLines
* Make access to xkbcommon_workaround.h more genericGatis Paeglis2013-05-073-106/+11
| | | | | | | | | | It makes more sense to keep this workaround header together with the other libxkbcommon files for a better access point since it's used by several *.pro files. Change-Id: I63d4eb58f6e7f3852834e41c4b6e058a2c962233 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Utilize libxkbcommon API for the keyboard backend on X11Gatis Paeglis2013-05-071-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | libxkbcommon is a keymap compiler [1] which utilizes xkb keyboard configuration database [2]. xkbcommon simplifies keyboard state handling by providing xkb_state object which holds the current state of all modifiers, groups, LEDs, etc, relating to the provided keymap. Detecting modifier mapping should become simpler once it gets supported in libxkbcommon. Also with xinput2 we could get rid of the XkbStateNotify events, because xinput2 key press/release already include all the mod/group info. [1] http://xkbcommon.org/ [2] http://www.freedesktop.org/wiki/Software/XKeyboardConfig This patch: - Removes a dependency to -lxcb-keysyms - Removes a dependency to XLib call - XLookupString - Enables required functionality to fix QTBUG-27681 Task-number: QTBUG-27680 Change-Id: I10e10f873821ee02f6df72238e215a541150f38f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Add libxkbcommon to 3rd party libsGatis Paeglis2013-05-072-1/+10
| | | | | | | | | | This library is required by the XCB platform plugin. As we depend on very recent version of this library and it might not be available in base repositories of distributions, users can use -qt-xkbcommom switch to build Qt with the bundled version. Change-Id: I0ed2a5cc2f1df98b0e7cc926cabfa69818674e08 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix memory access violationKonstantin Ritt2013-04-231-2/+1
| | | | | | | | The pointer returned by unicode() was deleted right afterwards. Change-Id: I7cef72386d02c7be42e71134f616926506d37ea6 Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Fix typo in qWarning()Sergio Martins2013-04-171-1/+1
| | | | | Change-Id: I17aa0a1985c2da889bc602fd76dc07c890ed6f6b Reviewed-by: David Faure (KDE) <faure@kde.org>
* s/uint32_t/quint32/Tobias Hunger2013-04-122-6/+6
| | | | | | | | | uint32_t is in C++11, which we can not rely on being present. It is also in C99, but some compilers do not support that in C++ mode. Change-Id: I29bada724f5646a0a0562b3ab133cb49cf928d6d Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
* Fix access to invalid memoryKai Koehne2013-04-101-1/+2
| | | | | | | | | QString::toLatin1() creates a temporary QByteArray. Task-number: QTBUG-30578 Change-Id: I17c60bbade1486399f745c7e9878c6467971e6cc Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Remove unused header file.Gatis Paeglis2013-03-301-2/+0
| | | | | | | | As Thomas Senyk found out, the compose input context plugin had a redundant include for the X11 keysym header file. Change-Id: Iad603b545803867d02d915acffe27991bb0b7ee4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Introducing QComposeInputContextGatis Paeglis2013-03-219-0/+1087
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When switching from Xlib to xcb platform plugin it was agreed that XIM is deprecated. Users should be using QT_IM_MODULE to load input context plugin for a more advance input method framework support. The proposed solution is to parse the compose file directly from Qt. This approach removes the overhead of communication protocols used in Xlib and/or IBUS. TableGenerator class follows [1]. The compose file is searched for in the following order: 1) If the environment variable $XCOMPOSEFILE is set, its value is used as the name of the Compose file. 2) If the user’s home directory has a file named .XCompose, it is used as the Compose file. 3) The system provided compose file is used by mapping the locale to a compose file from the list in /usr/share/X11/locale/compose.dir. Regarding step 3 - TableGenerator searches in hard-coded locations for system-provided compose files. Here I have introcuded a new environment variable QTCOMPOSE which can be used to prepend an extra location to be searched. [1] http://www.x.org/archive/X11R7.7/doc/man/man5/Compose.5.xhtml Task-number: QTBUG-28183 Change-Id: I76dcfd454f3acc23db98192a3673c1ab2af4425f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Distinguish between 'mac' and 'macx' qmake scopesTor Arne Vestbø2013-03-051-1/+1
| | | | | | | | | | | | | | The former applies both on Mac OS X and iOS, but 'macx' is specific to Mac OS X. ios.conf and macx.conf now share most of their settings in the common mac.conf. We set the default QMAKE_MAC_SDK before loading mac.conf, so that any overrides in the device config will apply afterwards. This means configure's mkspec parsing will be able to read the QMAKE_MAC_SDK. Change-Id: I0c7e26a6a0103e19b23ef152aa9e4ab461cee632 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Remove unused variables and functions from the source codeThiago Macieira2013-02-021-20/+0
| | | | | | Change-Id: I5f37414ee4846b4fe774361f49367bc0d5874039 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-1818-18/+18
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* add and use qtHaveModule() functionOswald Buddenhagen2012-12-211-1/+1
| | | | | | | | | | | this is much more elegant than the so far propagated !isEmpty(QT.foo.name). also replace feature-specific tests (no-gui and no-widgets) and the obsolete contains(QT_CONFIG, foo) syntax. Change-Id: Ia4b3c8febcabf9eeca67b1f9173a523820b1038b Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Tasuku Suzuki <stasuku@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Add PLUGIN_CLASS_NAME to qtbase pluginsMiikka Heikkinen2012-12-102-0/+2
| | | | | | | | Needed for automating static plugin loading. Task-number: QTBUG-28131 Change-Id: Icd993c0fc8335f29aeec30e853a408d888069399 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Change license header from Nokia to DigiaSergio Ahumada2012-11-264-4/+4
| | | | | Change-Id: I2be215284d7670f60f8b5838fce1e6832dde2270 Reviewed-by: Martin Smith <martin.smith@digia.com>
* beef up qt_plugin.prfOswald Buddenhagen2012-11-012-10/+4
| | | | | | | it now defines the DESTDIR and creates an INSTALLS rule. Change-Id: I15a462ccad9acbe3521c352fa98327825dc27c05 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-2214-338/+338
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Move QPlatformInputContextPlugin/Factory to QtGuiWeng Xuetian2012-06-282-2/+2
| | | | | | | | | | | | | PlatformSupport is no longer shared and there should be no plugin factory in it otherwise it will break plugin loading. Since PlatformInputContext is already in QtGui, so move QPlatformInput- ContextPlugin/Factory to resolve the platforminputcontexts plugin loading problem. And remove platformsupport-private dependency from existing inputcontexts plugin. Change-Id: If4cb766470b8f9c8b72157da86cb33b4e1ff09e3 Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com>
* Fix warning when ibus is not available.David Faure2012-06-262-11/+3
| | | | | | | | This is perfectly ok on a linux desktop, so no reason to abort when setting QT_FATAL_WARNINGS. Change-Id: I64ba987679195741631fb204af57ae3d283bb516 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Use QPointer, not QWeakPointer.Thiago Macieira2012-06-141-1/+1
| | | | | | | | | QWeakPointer tracking of QObjects is deprecated. Change-Id: I1a81a0f9bbe02a6a38a50ab4a50e7c65212fa591 Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com> Reviewed-by: Michael Hasselmann <michaelh@openismus.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Remove QFactoryInterface from the input pluginsLars Knoll2012-06-082-12/+0
| | | | | Change-Id: Ia4a9dc5b4ef276dca39681848e531b4c9e4f64e2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Expose QPA API under qpa/*Girish Ramakrishnan2012-05-076-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main reasons for doing this are: 1. _qpa.h end up in the master QtGui include file. QtGui is meant for userland applications. qpa code is neither binary nor source compatible. Inadvertant use of QPA api makes the user code binary-incompatible. 2. syncqt creates forwarding headers for non-private header files. This gives people the impression that this is public API. As discussed on the mailing list, even though QPA api is internal and subject to change, it needs to treated differently from private headers since they will be used by in-qtbase and out-of-qtbase plugins. This commit does the following: 1. The _qpa in QPA header files is dropped. 2. syncqt now treats any file with qplatform prefix as a special file and moves it to qpa/ directory. The recommended way of using QPA API in plugins is: #include <qpa/qplatformfoo.h>. This allows the user include QPA API from multiple modules (for example, qplatformfoo might be in QtPrintSupport) 3. The user needs to explicitly add QT += <module>-private to get access to the qpa api. 4. Creates compat headers for the olden style qplatformfoo_qpa.h and QPlatformFoo includes. This commit does not change the cpp filenames. This requires a more careful merging of existing non qpa cpp files and existing cpp files on a case by case basis. This can be done at anytime. The following files are not renamed as part of this changed but will be fixed as part of a future change: src/gui/kernel/qgenericpluginfactory_qpa.h src/gui/kernel/qgenericplugin_qpa.h src/gui/kernel/qwindowsysteminterface_qpa.h files were renamed using for x in `find . -name "qplatform*_qpa.h"`; do git mv $x "${x/_qpa.h/.h}"; done for x in `find . -name "qplatform*_qpa_p.h"`; do git mv $x "${x/_qpa_p.h/_p.h}"; done includes were renamed using script for file in `find . -name "*.h" -or -name "*.cpp" -or -name "*.mm"`; do sed -i -e 's,.*#.*include.*<\(Qt.*/\)\?\(QPlatform.*\)>,#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.*"\(Qt.*/\)\?\(QPlatform.*\)",#include <qpa/\L\2.h>,g' \ -e 's,.*#.*include.* "\(qplatform.*\)_qpa.h",#include <qpa/\L\1.h>,g' \ -e 's,.*#.*include.*"\(qplatform.*\)_qpa_p.h",#include <qpa/\L\1_p.h>,g' \ -e 's,.*#.*include.*<\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)>,#include <qpa/\2\3>,g' \ -e 's,.*#.*include.*"\(Qt.*/\|Qt.*/private/\|private/\)\?\(qplatform.*\)_qpa\(.*\)",#include <qpa/\2\3>,g' \ $file done Change-Id: I04a350314a45746e3911f54b3b21ad03315afb67 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Adapt Maliit input context to new input method interfacesPekka Vuorela2012-04-032-37/+22
| | | | | Change-Id: Ia395dbb1689d1c37ef588c49cbb55ad1979f532f Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Added some convenience API for platform input contextsPekka Vuorela2012-04-012-10/+11
| | | | | | | | | | | | | QPlatformInputContext now gets notified on changed focus and has inputMethodAccepted() telling whether current focus object accepts input method events. Also adapted IBus plugin to use this. Key event filtering for focused objects without input method support got fixed by the change. Change-Id: I6910aa6af2459d752a5763f0ae88fa8c34e5b165 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Rename remaining references to QInputPanelPekka Vuorela2012-02-282-2/+2
| | | | | Change-Id: I747d37d10c78af6ad00322d5bd8d29c6b343828c Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Use new plugin system for Input Context plugins.Friedemann Kleint2012-02-216-4/+20
| | | | | Change-Id: Ifd1f63499afba546a745815762263a58ebf66460 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix warnings in input contexts.Friedemann Kleint2012-02-082-2/+2
| | | | | Change-Id: Idbd46b8bfe73015cce98d510992b3bb57c1e1ded Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Renamed QInputPanel as QInputMethodPekka Vuorela2012-02-022-29/+29
| | | | | | | | | | | QInputMethod better describes what the class is about, input methods in general, be they panels or just composing input from key events. Compatability headers added for old name. Not bulletproof but should be enough to get transition done. Change-Id: Iefde6e7ccb1ec4a3b226cef3469089e751c60fc1 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Maliit: Fix enter on VKB not resulting in text input field acceptanceSimon Hausmann2012-01-312-3/+28
| | | | | | | | | | | Pressing enter on the VKB should result in the emission of the accepted() for text input fields in QML or the returnPressed() signal in QLineEdit. In that case the Maliit input server calls our keyEvent method over DBus, which this patch implements. Change-Id: I46170c30315adaf21db0e232f53780ccaa67e4bf Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Rename meego to maliit platforminputcontextJan Arne Petersen2012-01-3111-68/+67
| | | | | | | | | Also build the plugin on linux systems with D-Bus. There is nothing MeeGo or Maemo specific about this plugin or Maliit. Task-number: QTBUG-22994 Change-Id: Idcccfb01f79166a54c5809741389b29ccac05a15 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-3014-14/+14
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Use per session socket to connect to maliit serverJan Arne Petersen2012-01-294-1/+157
| | | | | | | | | | | | | | In newer versions of maliit a per session abstract socket for communication between maliit server and input contexts is used. The address is published over the D-Bus session bus as address property in the org.maliit.Server.Address interface of the /org/maliit/server/address object at the org.maliit.server service. Fallback to old socket when org.maliit.server service is not available. Task-number: QTBUG-22982 Change-Id: I1b2cdd0c804d3d625e18b4958dd60008ea289d91 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Fix compilation of MeeGo/Maliit related code after Qt::ScreenOrientation API ↵Simon Hausmann2012-01-271-1/+1
| | | | | | | | | changes Qt::UnknownOrientation is now Qt::PrimaryOrientation. Change-Id: I2846a90bd11ecd1416c29b7bd861f180ccb129a1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Fix virtual keyboard on Harmattan not following window content orientation ↵Simon Hausmann2012-01-262-2/+17
| | | | | | | | | | changes Track the input item's window and notify the input method server when the content orientation changes. Change-Id: I401c4fd677ed2eebd8b85968d4a2b3692517e097 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Made window orientation API more flexible.Samuel Rødal2012-01-241-1/+1
| | | | | | | | | | | | | | | Previously we only had QWindow::setOrientation() which was a hint about the orientation the window's contents were rendered in. However, it's necessary to separate between the orientation corresponding to the window buffer layout and orientation of the contents. A game for example might typically want to use a landscape buffer even on a portrait device. Thus, we replace QWindow::orientation() with QWindow::reportContentOrientationChange() and QWindow::requestWindowOrientation(). Change-Id: I1f07362192daf36c45519cb05b43ac352f1945b5 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-2312-12/+12
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-0516-16/+16
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* QIBusPlatformInputContext: Fix a crash in tst_qinputpanel::update.Friedemann Kleint2011-12-141-0/+2
| | | | | | Change-Id: If50c442958b6f25f17325f7792bb3f882e4b13e7 Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com> Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Remove handlesInputPanelVisibility() deprecation mechanismJoona Petrell2011-11-214-16/+0
| | | | | | | Task-number: QTBUG-21964 Change-Id: I508ba690c90369d31ca33390d3001064857fb62e Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix debug output in meego platform input contextSimon Hausmann2011-11-211-1/+1
| | | | | | | Don't show debug output by default :) Change-Id: I7df9264b3e0211e459cecb2cd9f389e017e9bca4 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Fixes to the ibus input contextLars Knoll2011-11-012-4/+35
| | | | | | | | | Adjust to changes in the QPlatformInputContext and implement commit(). Fix a bug that caused the cursor to be hidden after the first commit. Change-Id: I85e59a72766d1180a54df412cf33beb653af4e7b Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Initial support for MeeGo's input method serverSimon Hausmann2011-10-279-0/+1267
| | | | | | | | | | | | | | This platform input context plugin is based on the dbus protocol used in MeeGo 1.2 Harmattan's input method server. It supports composition, mouse-click-on-preedit as well as basic input method hints. Missing are: Copy & paste, preedit injection, key redirection as well as a bunch of other smaller MeeGoTouch specific features. Change-Id: Ic3a8741f7a5ed18b379985e316cb137f7b8f6a8e Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com> Reviewed-by: Kenneth Rohde Christiansen <kenneth.r.christiansen@nokia.com>
* Move input panel visibility ownership from QInputPanel to QPlatformInputContextJoona Petrell2011-10-112-0/+7
| | | | | | | | | | | | | | | | | | | | Now QInputPanel::visible() can be set true even when platform doesn't provide a virtual keyboard. Like keyboard geometry, visibility should be dictated by the platform plugin and not QInputPanel, whose role is more like that of a mediator. QInputPanel::show() and ::hide() calls should be treated as requests that may fail. Changed the QInputPanel's visible property to read-only as a setter that may fail is not really a setter, show() and hide() should be used instead. Enabling the new functionality cannot be activated immediatelly without breaking existing keyboards, added a temporary function handlesInputPanelVisibility that handovers the responsiblity of updating input panel visibility to QInputContextPlatform only once QInputContextPlatform says that it is able to handle it. Change-Id: Ideecaf7225cc3971f33a0ac976bd92cf7767475b Reviewed-on: http://codereview.qt-project.org/6429 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Make qtbase build with Qt-in-namespace againKent Hansen2011-09-284-0/+15
| | | | | | | Change-Id: I5faa8690a05d6ec352fc69c0b69848539f2ed216 Reviewed-on: http://codereview.qt-project.org/5460 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix missing/incorrect license headersJason McDonald2011-09-151-1/+1
| | | | | | | Change-Id: I9db33c63c951f288f7a106c3008771699662d104 Reviewed-on: http://codereview.qt-project.org/4852 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Don't build ibus when dbus is not availablePaul Olav Tvete2011-09-141-2/+2
| | | | | | | Change-Id: I0011cae034f186f239f486f5d83635bf4d11b88d Reviewed-on: http://codereview.qt-project.org/4879 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Windows: correctly disable ibus plugin on WindowsRohan McGovern2011-09-141-1/+1
| | | | | | | | | The correct qmake scope is `win32', not `win'. Change-Id: I148e764bbe94b6ca824a55458e080ca948dc304d Reviewed-on: http://codereview.qt-project.org/4844 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
* don't build ibus plugin on windows/macGunnar Sletta2011-09-121-1/+1
| | | | | | | Change-Id: I932eaea19806e3ce75803cb2849d04292885fbd5 Reviewed-on: http://codereview.qt-project.org/4631 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Make inputcontext plugin loading a bit more genericLars Knoll2011-09-081-1/+1
| | | | | | | | | | | | | | Add a create() method to the inputcontext factory that takes no arguments. Add a virtual isValid() to QPlatformInputContext to determine whether it actually works. Remove IBUS dependencies in the xcb code so that it can also load other plugins. Change-Id: I6345a845f48fd4b3cacf6d8652711b16835a235c Reviewed-on: http://codereview.qt-project.org/4487 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fixup a few minor errors in the previous commitLars Knoll2011-09-081-2/+2
| | | | | | | | | | | Methods need to be Q_INVOKABLE to be able to call them with QMetaObject::invokeMethod(). Also use the correct return type. This makes the IBUS input context work again. Change-Id: If7ed6dd8fb99f3363c4ecebb98f889ed9eeeff00 Reviewed-on: http://codereview.qt-project.org/4486 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>