aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.6' into 5.75.7Liang Qi2016-11-2510-85/+177
|\ | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qv4ssa.cpp src/qml/qml/v8/qqmlbuiltinfunctions.cpp src/quick/util/qquickprofiler_p.h Change-Id: I11a89c2a166115d6697adfba09928805643e709e
| * QmlProfiler: Explicitly specify the offsets for scene graph eventsUlf Hermann2016-11-249-82/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The profiler can be switched on in the middle of a frame. In that case the last offset into the timing data would be some random number, which may lead to a crash when recording the sample. However, as we know all the data points we are going to record, we can as well specify where they are supposed to go. The timings themselves may still be random for frames of which we only recorded parts, but the clients can deal with this. Task-number: QTBUG-57304 Change-Id: I1d507f2591516e43d5b3cd25f7939716f2b64ed9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Text: Make use of the new cached isSmoothlyScaled attribute on QFontEngineRobin Burchell2016-11-181-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Relies on qtbase/f2205c48c21a6b135f2f59d0cf46e72f90f9f0f4. Asking QFontDatabase whether or not the font can be smoothly scaled is expensive Now that the attribute is available on QFontEngine, we can bypass all that. Benchmark results from qmlbench on creation/delegates_text on a 2011 mbp. Before: Average: 173.2 ops/frame; using 5/5 samples; MedianAll=173; StdDev=1.94, CoV=0.0112 - StdDev (all samples included)=1.94 After: Average: 180.8 ops/frame; using 5/5 samples; MedianAll=182; StdDev=1.94, CoV=0.0107 - StdDev (all samples included)=1.94 Change-Id: I56efd903037a29ee014de0cbf482cfbef7fce494 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-11-154-4/+12
|\| | | | | | | | | | | | | | | Conflicts: src/qmldevtools/qmldevtools.pro tests/auto/qml/qqmlconnections/tst_qqmlconnections.cpp Change-Id: I12255c16716bd8a74e7047cdb1f9302a4d1ea827
| * Fix more cases where DSE would optimize out too many storesErik Verbruggen2016-11-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | GCC5/6 do aggressive dead store elimination on memory passed to placement-new. This resulted in the Heap::Object::prototype being a nullptr. qml.pro already contained the -fno-lifetime-dse flag, but there are other places where we ask the memory manager to allocate data. This is temporary band-aid, and is already fixed in 5.8. Change-Id: Ia61a69f65fab351068a588cfc36b5b3d762ffc9f Task-number: QTBUG-56932 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Add checking "before" as child nodeInhye Seo2016-11-091-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | qquickitem_before_paintNode returns the transform node for the rectangle as child node. But the node has no parent. It leads to following assertion case at QSGNode::insertChildNodeAfter(). But, I tested it in release mode, so no assertion happened. So, Some node not be able to add group node from this cause. Task-number: QTBUG-56657 Change-Id: Ie032dc6c56984bcb58cfcd348ff532f56e39e5b8 Reviewed-by: Inhye Seo <inhye.seo@lge.com> Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * Doc: replace "textEdit" with "TextEdit" in lineCount documentationMitch Curtis2016-10-311-1/+1
| | | | | | | | | | Change-Id: I24a186af0538027719beb464c2b489825ddd9420 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * Fix crash when trying to allocate in a filled atlas textureJohn Brooks2016-10-271-1/+2
| | | | | | | | | | | | | | | | | | Atlas::create returns null when allocating space in the atlas texture fails, including when the texture is full. Manager::create assumed that this function would never fail. Change-Id: I2ed8a1b94640d6a3cc65011e83b88f8bd42ca074 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Fix performance regression in rich text with imagesEskil Abrahamsen Blomfeldt2016-11-141-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In a3da23d5a92ab0f9b8280b9ed591986f8ac6a2d6 we added linear filtering to the image node in rich text when smooth was set to true (which it is by default). But we also enabled mipmapping, which caused a bad performance regression when updating the text item. If we want to support mipmapping, we would have to add a separate property for this like in the image node, but since the original bug report only called for supporting smooth scaling like in Image, we can simply revert part of the change. [ChangeLog][QtQuick][Text] Fixed a performance regression when rendering a rich text item with scaled images. Task-number: QTBUG-54723 Change-Id: Ib930112b76f0fe0b2e658f86520a9290354b8f6f Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | TextEdit: set cursor delegate's height to match the selected fontMitch Curtis2016-11-121-0/+1
| | | | | | | | | | | | | | | | | | | | RichText can have blocks of text with varying font sizes, so we must ensure that the cursor delegate's height is also set when it's moved to a different position in the text. Change-Id: I00691a94a2360c7d3272571fc4ba0da28b01006a Task-number: QTBUG-54934 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-275-8/+6
|\| | | | | | | | | | | | | | | | | Conflicts: src/quick/items/qquickwindow.cpp tests/auto/quick/qquicktext/BLACKLIST tests/auto/quick/qquicktextedit/BLACKLIST Change-Id: I8bd68b0b5e853b7908791d2cbddd18dd527c76ae
| * Fix documentation for dragFinished signalAndy Shaw2016-10-261-1/+1
| | | | | | | | | | Change-Id: I9a38ab8ff60921e6d5ff6c2fa476b24d28781feb Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| * Fix TextInput::selectByMouse documentationMitch Curtis2016-10-191-2/+2
| | | | | | | | | | Change-Id: I41ef6b38e74162434c397535f9d73fff80e29c78 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
| * QQuickWindow: don't discard timestamps for wheel eventsJ-P Nurmi2016-10-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | Noticed while debugging QTBUG-56075 on XCB. QQuickFlickable did not receive timestamps for wheel events provided by XI2. This alone does not fix the flicking speed issue with high-precision trackpads, but is needed to be able to calculate the appropriate velocity. Task-number: QTBUG-56075 Change-Id: I458e6302aee72863cdc1f8e8f7d99449016905a9 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Remove superfluous warning statement in QAccessibleQuickItem::rect()Alexandru Croitor2016-10-131-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The warning statement is printed whenever a successful hit test (essentialy a hover) happens on a QML item which is accessible (e.g. a Label) and also not visible. The message looks like "QQuickText QVariant(Invalid) QRect(0,0 0x0)". The information serves no real purpose though: 1) The property accessibleText is not set anywhere 2) The warning happens in a valid use case when an item is invisible, and the user mouse accidentally hovers over its position Change-Id: I8d20f7842d92c7944bb5e3b614ecd6fad500102a Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
| * Check qgl_current_fbo_invalid before using qgl_current_fboAlexandru Croitor2016-10-131-1/+2
| | | | | | | | | | | | | | | | | | | | QSG24BitTextMaskShader::useSRGB() on macOS accesses the current context qgl_current_fbo member without first checking if it is valid. Make sure it also checks qgl_current_fbo_invalid, thus not accidentally dereferencing a dangling pointer. Change-Id: I56a77de23ee3b4b271bd848506ff26e14d7b6d15 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | QQuickShortcut: allow setting a custom context matcherJ-P Nurmi2016-10-261-20/+35
| | | | | | | | | | | | | | | | | | | | | | This allows Qt Quick Controls 2 to register a shortcut context matcher that makes shortcuts behave well with QQC2's item-based popups, which QQuickShortcut is not aware of. Task-number: QTBUG-56562 Change-Id: Ia2518fd6ac7140f60aa38c7d9af557007e9db23b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Row/Column/GridLayout: add missing margins properties to documentationMitch Curtis2016-10-141-0/+18
| | | | | | | | | | | | | | | | 52e1044a1a22525b960d9e1d336ac06c4f39e6d5 in qtquickcontrols missed this. Change-Id: Ie104c421e34d4d2a13a88864a279eb65738bd5a8 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* | QQuickItem: eliminate repeated access to QQmlV4Function::v4engine()J-P Nurmi2016-10-131-10/+10
| | | | | | | | | | Change-Id: Ifc33c17d125ca794a157a87dc5cc1be51c2aaefb Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Item: sort out mapFromGlobal() and mapToGlobal()J-P Nurmi2016-10-133-2/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit message of 08327da, and the change log of Qt 5.7.0 promised that mapFromGlobal() and mapToGlobal() were available in QML. But since the revision 7 of QQuickItem was not registered, this was not entirely true. Due to a little quirk in the QML engine's handling of revisioned methods, mapFromGlobal() and mapToGlobal() were only accessible via an identifier or property, but not directly: // works MouseArea { id: ma; onClicked: console.log(ma.mapToGlobal(Qt.point(mouse.x, mouse.y))) } // ReferenceError: mapToGlobal is not defined MouseArea { onClicked: console.log(mapToGlobal(Qt.point(mouse.x, mouse.y))) } Furhermore, this is inconsistent with how mapFromItem() and mapToItem() are exposed to QML. Even though the C++ versions of these methods take QPointF and QRectF, the QML versions take 2-4 number specifying x, y, width and height: object mapFromItem(Item item, real x, real y) object mapFromItem(Item item, real x, real y, real width, real height) object mapToItem(Item item, real x, real y) object mapToItem(Item item, real x, real y, real width, real height) Therefore the signature of mapFromGlobal() and mapToGlobal() should be: object mapFromGlobal(real x, real y) object mapToGlobal(real x, real y) This change implements the QML versions of these methods using QQmlV4Function, and adds the missing documentation for the QML API. NOTE: This is QML-only API. Change-Id: I2ced4836d274c7d1e644ea29fc25dbdd2045001b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-124-10/+22
|\| | | | | | | Change-Id: Ib31008e593442ca5813fb14ae6b02f7ab2577395
| * Fix FastFBOResizing hint for QQuickPaintedItemYoann Lopes2016-10-062-3/+15
| | | | | | | | | | | | | | | | | | The item updates the node in an order that would never actually take that flag into account. We now makes sure the FBO size is updated when the flag is set. Change-Id: I7aaaf64ed802ec0b53a3b47a39bbdea8195b4092 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * QQListView: use dot for property syntaxFrederik Schwarzer2016-10-061-1/+1
| | | | | | | | | | | | | | Additionally, that way the braces are not needed anymore. Change-Id: I5afc8fa738211f884ac011079a2ee63613a46d08 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
| * focus.qdoc: fix grammar in documentationFrederik Schwarzer2016-10-061-1/+1
| | | | | | | | | | Change-Id: I9b8d0158346e432e44758ae153e9ea02a9513c7e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix some minor issues in documentationFrederik Schwarzer2016-10-061-5/+5
| | | | | | | | | | Change-Id: I19f1a75b2e1a1096077df7ea109fd70be9d3c759 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-055-8/+17
|\| | | | | | | Change-Id: I081d9b15796b4133d2ba6f1a862f15b873a4846d
| * Canvas: Implement high-DPI render modeMorten Johan Sørvig2016-10-051-2/+10
| | | | | | | | | | | | | | | | | | Scale the canvas image and texture buffer by the target devicePixelRatio. Task-number: QTBUG-37095 Change-Id: Ic432b278caa5c85cf3487d3108967cf3fcd2fa48 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * QQuickPositioners: fix sentence structure in apidocFrederik Schwarzer2016-10-041-4/+4
| | | | | | | | | | Change-Id: I14eb860386dfad57ab8cf492cb782970497756b9 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * QQuickRectangle: fix typo in apidocFrederik Schwarzer2016-10-041-1/+1
| | | | | | | | | | Change-Id: Ib026302143df82196fdfd70b9ea9923098adbc7c Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| * Fix crash on cancel QQuickImageResponseAlbert Astals Cid2016-10-032-1/+2
| | | | | | | | | | | | | | | | | | | | | | We don't need to deleteLater here, we can not be sure that the response won't continue for a bit after this, and it's not even needed since documentation says you need to emit finished in all cases and this will call deleteLater on the response anyway. Task-number: QTBUG-56056 Change-Id: I7cc90620f499beaaaaa61aac77d72d067308838c Reviewed-by: Michael Brasser <michael.brasser@live.com>
* | Doc: add spec on parameter imageNico Vertriest2016-10-041-1/+1
| | | | | | | | | | | | | | | | Error message: Undocumented parameter 'image' in QQuickTextureFactory::textureFactoryForImage() Change-Id: If7cb1e63091c23304b64c5688af0abe55fc37ff4 Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-046-67/+43
|\| | | | | | | Change-Id: I48764527fa1ab6d8d59c24552394459b1cdc58ee
| * Fix crash with window-less QQuickItemsSimon Hausmann2016-09-306-67/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mark QQuickItem visual children directly in QQuickItem instead of relying on the item being a (grand) child of a window. [ChangeLog][QtQuick] Fix crash with QQuickItems created via JavaScript being garbage collected sometimes when they're not assigned to a window. This may happen even in qmlscene when between the creation of the root item and the assignment to the QQuickWindow the garbage collector runs. The previous approach of a persistent in QQuickView marking the visual item hierarchy relies on the existence of a view. The only thing left to do in the view and qml window implementation is enforcing the CppOwnership policy set on the content item in QQuickWindow by ensuring the presence of the JS wrapper, replacing the persistent with a weak value. This also introduces a new internal mechanism for QObject sub-classes to provide their own V4 JS wrapper types. Task-number: QTBUG-39888 Change-Id: Icd45a636a6d4e4528fc19165b13f4e1ca7967087 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7J-P Nurmi2016-09-306-20/+31
|\ \
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-306-20/+31
| |\| | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/quick/qquicktext/tst_qquicktext.cpp Change-Id: I241cd418bb7e7b95e0a0a2ee4c465d48be2a5582
| | * Fix incorrectly aligned text whose size depends on its implicit sizeMitch Curtis2016-09-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The if statement in QQuickTextPrivate::setupTextLayout() was missing an OR clause for the case where the line width is neither greater nor less than the old width/natural width, but has actually changed. If that sounds confusing, it's because it is. Basically, the outer layouting loop in that function needs to run twice for this scenario, so that's what this patch makes it do. Change-Id: I13777667eb13506d50f05e9766785a1c2c46125c Task-number: QTBUG-50738 Task-number: QTBUG-50740 Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * QQuickText: fix paddings when wrapping or eliding is usedJ-P Nurmi2016-09-291-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I8ec8c8eff41e77225ef42f7bd9e52f4558d00130 Task-number: QTBUG-55779 Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * Flickable: do not emit movementEnded until it really doesShawn Rutledge2016-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was occurring when using a physical mouse wheel: movementEnded was emitted, then contentYChanged would still be emitted a few more times. Task-number: QTBUG-55886 Change-Id: Ib5e833d5d84633bb07b8c240ea3ccc9977e443f8 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| | * Flickable: don't activate velocityTimeline if scroll phase availableShawn Rutledge2016-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The velocity timeline does not need to drive the movement if we can be sure that there are enough wheel events coming from the OS to move the flickable smoothly. And when the velocityTimeline is not active, the movementEndingTimer will emit the movementEnded signal, as it should. Task-number: QTBUG-55871 Change-Id: I5569be3aa6335d43ba162967ee03d08de3ba8096 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| | * QSGRenderContext: Add null-checks for stringsFlorian Bruhin2016-09-261-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some systems, glGetString returns null for some reason, which causes a segfault here. Let's assume it's not one of the broken configurations and hope for the best instead. Task-number: QTCREATORBUG-15992 Task-number: QTBUG-56165 Change-Id: I83867e42f0fd8f576bf51ac0a2213e1348111ffd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * Quick: Do not send SG updates when AnimatedSprite is not visibleErik Verbruggen2016-09-232-12/+21
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-55935 Change-Id: I475c1bb3e7aae9499b1b07a52f3c10f54c8b3481 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| | * Fix MouseArea sticky grab with drag.filterChildren enabledMartin Jones2016-09-221-0/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-56036 Change-Id: Iad776f42cc776e0d397173b3d2f3922eb7914392 Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
* | | Remove dead codeJake Petroules2016-09-301-4/+0
|/ / | | | | | | | | | | | | | | Qt 5.7 only deploys to macOS 10.8, so this code is never executed. Also, QSysInfo will be deprecated in Qt 5.9 so this will fix a warning. Change-Id: Iecebdb2aed3b0e31b0540621b16aa958031a8e81 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix Flickable state being reset when it replays a delayed press.Andrew den Exter2016-09-231-2/+3
| | | | | | | | | | | | | | | | | | Ignore mouseUngrabEvents() triggered by giving mouse grab to a child item when replaying a delayed press event. Change-Id: I6c8db61167e21bf10d533b17f7cc65e4754bd432 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Martin Jones <martin.jones@qinetic.com.au>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-165-5/+19
|\| | | | | | | Change-Id: Ib45654e3e79087da4754377f0d78b70c44ed4695
| * Merge remote-tracking branch 'origin/5.6.2' into 5.6Liang Qi2016-09-161-2/+2
| |\ | | | | | | | | | Change-Id: I410c2bd25a1bddc0e395316d62791437684b8942
| | * Correctly update the geometry of QSGDefaultPainterNodev5.6.2Yoann Lopes2016-09-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a FBO, the source rect should be the painted part (m_textureSize) of the FBO. Also, the texture size is now correctly set when using an Image render target. Task-number: QTBUG-52054 Change-Id: If5d7a9c0b02f16f5d4be2cdf8c3c4cb15cb0583e Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * | Propagate window enter event as hover enter event in QQuickWindowEike Hein2016-09-151-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickWindow currently propagates window leave events as hover leave events to its content item, but it does not propagate window enter events as corresponding hover enter events. Instead, hover enter is only triggered implicitly by mouse moves. This can cause problems when there is no mouse movement inbetween the window being entered and a subsequent button press event. A common example where this occurs is dismissing a mouse-grabbing popup window (e.g. a QMenu) by clicking outside the popup, and then clicking in the same spot that was clicked to dismiss the popup. Without this patch, hover state is not realized until movement occurs, so there may be no no visual feedback and code that needs to update state based on what is being hovered prior to handling a press event can't work correctly. This patch synthesizes a QHoverEvent and delivers it in response to QEvent::Enter, similar to how QEvent::Leave is already handled. QWidget handles this correctly via QWidget::enterEvent. The equivalent in Qt Quick is QQuickItem::hoverEnterEvent, ultimately called with the synthesized event. The patch also updates the touchmouse::hoverEnabled autotest. Due to the window enter event now being handled correctly, exitSpy2 would run up a count() of 2, as the cursor was not in a neutral position after previous test cases. The change makes sure the cursor is in a neutral position before test case activity. [ChangeLog][QQuickWindow] The relevant child item is now sent a hover event when the window receives a QEnterEvent, making sure hovering is recognized without waiting for mouse movement. Change-Id: If0586f6cd971df0dfc266bb1a39c9cdb184fd286 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * | QQuickTextInput: avoid emitting editingFinished twiceRichard Moe Gustavsen2016-09-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On platforms like iOS, hiding the virtual keyboard will force the current focus object to lose focus. And when QQuickTextInput loses focus, it will emit editingFinished. To not emit the signal once more directly after hiding the keyboard, we add an extra check in the key event handler to verify that we still have focus. Task-number: QTBUG-44038 Change-Id: Ib64f7028a9f16a172b3c38cab72f3599d560e331 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * | Fix grammar in "Keyboard Focus in Qt Quick" documentationMitch Curtis2016-09-061-1/+1
| |/ | | | | | | | | Change-Id: I7f5ff2026ed00cacbc07484263c31397555622f1 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>