could not input using ibus input method
Brought to you by:
insilmaril
1. run vym
2. double click the New map to edit it
3. press ctrl + space coult not switch the ibus input method, nor could not input with input method
my environment is:
Fedora 16 x86_64 with qt 4.8.1 and vym 1.13.41
and I have tested it on vym 2.1.7, also has the same issue.
I am trying to found why could not using ibus to edit map heading.
After study the vym code, I know that vym using QLineEdit in QGraphicsView.
the issue is caused by using grabKeyboard in MapEditor::editHeading()
I have write a test code:
main.h:
#include <QGraphicsView>
class MapEditor : public QGraphicsView {
public:
MapEditor();
private:
QLineEdit *lineEdit;
private:
QGraphicsScene *mapScene;
};
main.cpp:
#include <QApplication>
#include <QLineEdit>
#include "main.h"
MapEditor::MapEditor() {
mapScene = new QGraphicsScene(NULL);
setScene (mapScene);
lineEdit = new QLineEdit;
mapScene->addWidget(lineEdit);
lineEdit->grabKeyboard();
}
int main(int argv, char **args) {
QApplication app(argv, args);
MapEditor mapEditor;
mapEditor.show();
return app.exec();
}
this code could not using ibus on qt 4.8.1, but can using ibus in 4.6.2.
after remove the lineEdit->grabKeyboard() line, it can using ibus on both 4.8.1 and 4.6.2
hope these information will make help to fix this issue.
This is my ibus.conf:
IM=ibus
XIM_PROGRAM="/usr/bin/ibus-daemon"
ICON="ibus"
XIM_ARGS="-r --xim"
PREFERENCE_PROGRAM=/usr/bin/ibus-setup
SHORT_DESC="IBus"
GTK_IM_MODULE=ibus
if test -f /usr/lib/qt4/plugins/inputmethods/libqtim-ibus.so || \
test -f /usr/lib64/qt4/plugins/inputmethods/libqtim-ibus.so;
then
QT_IM_MODULE=ibus
else
QT_IM_MODULE=xim
fi
can using input method after install ibus-qt. but could not using input method if do not install the ibus-qt module.
HI I would like to work on this. Please assign this to me.
Thanks for your help, I welcome any patches for vym!
grabKeyboard is removed in 2.3.16 to fix deadkey behaviour.
Please retest, thanks.
Any update here?
Emm,I want to know if my issue could be put out here.
I could not input using ibus chinese input method.
my environment is:
ArchLinux 3.11.6-1-ARCH x86_64 with qt 4.8.5-5 ibus 1.5.4 and vym 2.2.4-2
As already mentioned, the input changed in vym 2.3.16. Please retest with at least that version. Current version (in git) is 2.3.22
Thanks,In Silmaril.I get it.^_^
No reply.