aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-01-23 14:02:05 +0100
committerJ-P Nurmi <jpnurmi@qt.io>2017-01-23 14:02:09 +0100
commit0be463b7f5cd1e1074c5130c6e25e40a848c58ee (patch)
tree21021716868c2c296cf83918023b16cbc6608f0c
parent7f2a5162511f5ce47ce8ff2b7e90071cedab37f9 (diff)
parent29c0ac9a950d063e627a077189b33aaf4810cf89 (diff)
Merge remote-tracking branch 'origin/5.8' into dev
-rw-r--r--src/quicktemplates2/qquickabstractbutton.cpp2
-rw-r--r--src/quicktemplates2/qquickcontrol.cpp1
-rw-r--r--tests/auto/controls/data/tst_abstractbutton.qml36
-rw-r--r--tests/auto/controls/data/tst_pane.qml12
4 files changed, 51 insertions, 0 deletions
diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp
index c82cdcd5..d8810fcd 100644
--- a/src/quicktemplates2/qquickabstractbutton.cpp
+++ b/src/quicktemplates2/qquickabstractbutton.cpp
@@ -587,6 +587,7 @@ void QQuickAbstractButton::keyPressEvent(QKeyEvent *event)
}
emit pressed();
+ event->accept();
}
}
@@ -603,6 +604,7 @@ void QQuickAbstractButton::keyReleaseEvent(QKeyEvent *event)
if (d->autoRepeat)
d->stopPressRepeat();
+ event->accept();
}
}
diff --git a/src/quicktemplates2/qquickcontrol.cpp b/src/quicktemplates2/qquickcontrol.cpp
index 25a5b24f..73a0a0db 100644
--- a/src/quicktemplates2/qquickcontrol.cpp
+++ b/src/quicktemplates2/qquickcontrol.cpp
@@ -1194,6 +1194,7 @@ void QQuickControl::componentComplete()
{
Q_D(QQuickControl);
QQuickItem::componentComplete();
+ d->resizeContent();
if (!d->hasLocale)
d->locale = QQuickControlPrivate::calcLocale(d->parentItem);
if (!d->explicitHoverEnabled)
diff --git a/tests/auto/controls/data/tst_abstractbutton.qml b/tests/auto/controls/data/tst_abstractbutton.qml
index 67ae8a48..f1b7dc30 100644
--- a/tests/auto/controls/data/tst_abstractbutton.qml
+++ b/tests/auto/controls/data/tst_abstractbutton.qml
@@ -118,4 +118,40 @@ TestCase {
mouseRelease(control)
compare(control.checked, false)
}
+
+ Component {
+ id: keyCatcher
+ Item {
+ property int lastKeyPress: -1
+ property int lastKeyRelease: -1
+ Keys.onPressed: lastKeyPress = event.key
+ Keys.onReleased: lastKeyRelease = event.key
+ }
+ }
+
+ function test_keyEvents_data() {
+ return [
+ { tag: "space", key: Qt.Key_Space, result: -1 },
+ { tag: "backspace", key: Qt.Key_Backspace, result: Qt.Key_Backspace }
+ ]
+ }
+
+ function test_keyEvents(data) {
+ var container = keyCatcher.createObject(testCase)
+ verify(container)
+
+ var control = button.createObject(container)
+ verify(control)
+
+ control.forceActiveFocus()
+ verify(control.activeFocus)
+
+ keyPress(data.key)
+ compare(container.lastKeyPress, data.result)
+
+ keyRelease(data.key)
+ compare(container.lastKeyRelease, data.result)
+
+ container.destroy()
+ }
}
diff --git a/tests/auto/controls/data/tst_pane.qml b/tests/auto/controls/data/tst_pane.qml
index 231d3fa6..b33fc817 100644
--- a/tests/auto/controls/data/tst_pane.qml
+++ b/tests/auto/controls/data/tst_pane.qml
@@ -141,6 +141,18 @@ TestCase {
verify(control.implicitHeight > 30)
}
+ function test_implicitContentItem() {
+ var control = pane.createObject(testCase, {width: 100, height: 100})
+ verify(control)
+
+ compare(control.width, 100)
+ compare(control.height, 100)
+ compare(control.contentItem.width, control.availableWidth)
+ compare(control.contentItem.height, control.availableHeight)
+
+ control.destroy()
+ }
+
function test_press() {
var control = createTemporaryObject(pressPane, testCase)
verify(control)