QML Virtual keyboard Hide button not working.
-
Hello , I am having a problem if I click on keyboard hide button .Following is the code :
import QtQuick 2.6 import QtQuick.Window 2.2 import QtQuick.Controls 2.2 import QtQuick.VirtualKeyboard 2.2 Window { visible: true width: 600 height: 500 title: qsTr("Hello World") TextField { id: textfield anchors.bottom:(inputPanel.visible) ? inputPanel.top : parent.bottom color: "#2B2C2E" cursorVisible: activeFocus selectionColor: Qt.rgba(0.0, 0.0, 0.0, 0.15) selectedTextColor: color } InputPanel { id: inputPanel z: 89 anchors.bottom:parent.bottom anchors.left: parent.left anchors.right: parent.right visible: Qt.inputMethod.visible //** Warning here } }
Below are the use-cases:
-
If i click on TextField keyboard pops as expected but when I click on hide keyboard button it's not hiding.
-
If i click on TextField keyboard pops as expected, next if I double-click on TextField and then click on hide keyboard button it's hiding.
I am also getting a warning as :
QML InputPanel: Binding loop detected for property "visible"
Please suggest.
-
-
@Praveen_2017 said in QML Virtual keyboard Hide button not working.:
visible: Qt.inputMethod.visible //** Warning here
I do not have any experience with QtVirtualKeyboard yet, but here are my thoughts:
i think this line isn't needed at all?! If at all you should use theactive
property.
What happens if you just remove that line? -
@raven-worx If I remove the line, the keyboard will never hide and the reason for adding visible: Qt.inputMethod.visible is because of the following line that I found in an example :
/* The visibility of the InputPanel can be bound to the Qt.inputMethod.visible property, but then the handwriting input panel and the keyboard input panel can be visible at the same time. Here the visibility is bound to InputPanel.active property instead, which allows the handwriting panel to control the visibility when necessary. */
Bad luck is that it's nowhere mentioned in any docs.