| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: Iacaf1656f2a66df0a97641f855aaf4d9d9189e6d
|
| |
| |
| |
| |
| |
| |
| | |
Add a lot of missing controls and properties.
Change-Id: I7c0ff3cc7fd7220e338d78cac575091ff12abf48
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Id3ab86fcc29b411e47b9930d3b1d4f313d7be91b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\ \
| | |
| | |
| | | |
Change-Id: I043c6f0484a3075db15687595026c0af76ba63ff
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I969a911c3e66aff502188ff9a103f16dc6544ba5
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
| |\|
| | |
| | |
| | | |
Change-Id: Ide4b85626dd153b534c39a3afa2f3b9e732badf5
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ie72671fb92108dfaf5aaae4ea3ffb279e14b2f1a
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-64065
Change-Id: Id77a85ce5b88c20795e9f7fe9d2ece974f46a315
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
To make them correctly available in QML so that they also work as
signal arguments.
Task-number: QTBUG-64259
Change-Id: I5fa00871f96357d924661c4b8af323a0f1748c9d
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QQuickIconLabel is a wrapper around QQuickText & QQuickImage. While
the alignment is mostly handled by layouting the internal QQuickText
and QQuickImage instances, it must also propagate the alignment so
that the text and image elements themselves also apply the correct
content alignment.
Task-number: QTBUG-64492
Change-Id: Ieb9d26fce703247bc6e2e61fa38e44c29937d1ad
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A regression introduced by 0504150. A wrong binding for the x-coordinate
was chosen while merging CheckIndicator back to CheckDelegate.
Task-number: QTBUG-64430
Change-Id: Ia3b07e7537cc888406076c700ecd495a958cb7c1
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|/ /
| |
| |
| |
| | |
Change-Id: I6ed929757a3d526b2c521359e744322e3f519250
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I792cd065a70aaabf2349e1fe2c5b5dc41e29d1d3
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I696b405843f9eda79ec586cb99953469cb7f3c86
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We've come to realize that even though it's tempting to group similar
properties together, organizing the API so that revisions are grouped
together makes future maintenance more pleasant. It's a lot easier to
to see what was added and when.
The same was done for earlier revisions in 5.9 in commit 430fe83.
Change-Id: I738d7fdadd348c21737228c37d0f31e39b37f8e7
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickabstractbutton_p.h
src/quicktemplates2/qquickbuttongroup_p.h
src/quicktemplates2/qquickrangeslider.cpp
src/quicktemplates2/qquickrangeslider_p.h
src/quicktemplates2/qquickswipeview_p.h
src/quicktemplates2/qquicktextarea.cpp
src/quicktemplates2/qquicktextarea_p.h
src/quicktemplates2/qquicktextfield_p.h
Change-Id: I7cba8783b1dd85a4db534222e36572ee05dd01d0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We've come to realize that even though it's tempting to group similar
properties together, organizing the API so that revisions are grouped
together makes future maintenance more pleasant. It's a lot easier to
to see what was added and when.
Change-Id: I47ba7725260f2c259048848cc2a9b17bce2f01c7
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ic98b332c5e30104c4a3c74a873caafa9065d6b5d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The resource file gallery.qrc was removed, load from path instead.
Change-Id: I167c3f967f8a73bf0de9ffe1658c00970b3d8075
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7bfb3505cf34b6e8a6f670abd81ee6e39084a1fc
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-64065
Change-Id: I7182cf24197250c927c8cc5227356e835e55a130
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickTextField wants to emit pressed(), released(), and pressAndHold()
signals not only on left, but on all mouse button clicks. Therefore it
explicitly sets accepted mouse buttons to all. However, the base class,
QQuickTextInput, has only been prepared to handle left (selection) and
middle (paste) mouse buttons. Don't pass right mouse button -only
events to the base class to avoid it clearing selection on right click.
Task-number: QTBUG-64048
Change-Id: I015820c78995cc8dd7cbeb16fca0f9b991040bad
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-64099
Change-Id: I6580f1779e2863e25980968b076f342a5d76d423
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I63ce1220d39df62b47aa2168d3e358d4a006a638
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: If285e90d25d497155c060907b8f8c60859e55a9a
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7d7e49d0d4e1cbd61892215677c7ea0c5471af02
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 80f6b146e6a1b3e7164a728271c0e17eb25c3e98, because
the optimizations caused a binding loop on the TabBar page in the
Gallery example.
qrc:/pages/TabBarPage.qml:90:13: QML TabBar:
Binding loop detected for property "implicitHeight"
As a result, the tabs are looking broken at least when running with
the Imagine style.
Change-Id: I231bf5b21ecf92000bac94782567301214b64fec
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure dynamically created QML components are destroyed when
going out of scope, and print out the error when creation fails.
Change-Id: Ie0ed785780cb861dd057adda8f4da399dd4986d2
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unfortunately this comes a bit late in the 5.10 cycle, but this should
be released together with the rest of the mnemonics stuff going out in
5.10, because it affects the value of AbstractButton/Menu(Bar)Item::text.
As the removed TODO comments and altered tests indicate, previously the
ampersand was blatantly stripped out. It would be worse to change it
later once people have already started using mnemonics and rely on the
behavior in custom styles.
The necessary modifications to QQuickText were added in qtdeclarative
commit 65ef4ba.
Task-number: QTBUG-61422
Change-Id: Iaa73da8c012e9a6019743cf98f5bdc02527064e5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The property was added in commit 19e7fb3.
Change-Id: Iae5e9f1076bc3312d78ffaf15027206ebd65046b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The handle can be positioned "between" pixels, leading to unpleasant
results:
https://imgur.com/a/GKItw
Round the position to avoid this.
Doesn't seem to be an issue for other styles that use Qt Quick
primitives rather than images.
Change-Id: Iddb21e37ff777de433b3fa2a68e640db9a4b369a
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Control's padding is supposed to be content padding, not background
padding. The background has a fixed height, so it's enough to set the
Y-coordinate to keep it vertically center aligned.
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_progressbar.qml
[...]
Average: 205.8 frames; using samples; MedianAll=206; StdDev=1.30384, CoV=0.00633547
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_progressbar.qml
[...]
Average: 214.4 frames; using samples; MedianAll=214; StdDev=3.20936, CoV=0.014969
Change-Id: I4900bf496effa52e9291192e05ed95f4a44fbea4
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I7a691f7b7c3d2f2a9f1d9a1ded29269184ddfcfe
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A binding to "<id>.<property>" is a tiny bit faster than a binding to
"parent.<property>". ID is a direct reference, like a pointer in C++,
whereas "parent" is a property so the binding is effectively depending
on two properties: "<property>.<property>".
The gain is not huge, but enough to show up in qmlbench. ;)
Before:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_menuitem.qml
[...] (10 repeats, all results between 65-66)
Average: 65.5 frames; using samples; MedianAll=66; StdDev=0.527046, CoV=0.00804651
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_menuitem.qml
[...] (10 repeats, all results between 66-67)
Average: 66.6 frames; using samples; MedianAll=67; StdDev=0.516398, CoV=0.00775372
Change-Id: Ib161fad3b11e19a4bb0f39900639131f36838d2a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
See the previous commit (CheckIndicator) for more details.
Before:
running: /home/jpnurmi/Projects/qmlbench/benchmarks/auto/creation/quick.controls2/delegates_switch.qml
[...]
Average: 87.8 frames; using samples; MedianAll=87; StdDev=2.16795, CoV=0.0246919
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_switch.qml
[...]
Average: 92.6 frames; using samples; MedianAll=92; StdDev=2.19089, CoV=0.0236597
Change-Id: Iea9e88e4e771ac27d336c2c87232704d33a226ec
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
See the previous commit (CheckIndicator) for more details.
Before:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_radiobutton.qml
[...]
Average: 91.6 frames; using samples; MedianAll=91; StdDev=1.51658, CoV=0.0165565
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_radiobutton.qml
[...]
Average: 95.8 frames; using samples; MedianAll=96; StdDev=2.04939, CoV=0.0213924
Change-Id: Ic185241767d0b9422e86919356e3155e00803e56
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The internal CheckIndicator helper was introduced together with
CheckDelegate in 1acb34a, because we naturally wanted to share the
indicator instead of duplicating it. This change is controversial,
because it leads to duplicate code, but keeping the indicator
definitions inline is clearly faster. This is not seen as a huge
problem for the Default style, because the indicator is not too
complicated. Basically, this fixes a ~5% performance regression
introduced by 1acb34a.
Before:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_checkbox.qml
[...]
Average: 72.8 frames; using samples; MedianAll=73; StdDev=1.48324, CoV=0.0203742
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_checkbox.qml
[...]
Average: 77 frames; using samples; MedianAll=77; StdDev=1.41421, CoV=0.0183664
Change-Id: Ibee0e29e83a64ee4a6a772a90b1784a9c8c715bb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Listen to the relevant view changes once in QQuickTumbler and cache
the offset/contentY instead of every QQuickTumblerAttached instance
doing its own geometry and child tracking, and cache the view offset
or contentY so that they are readily available while calculating
displacements for attached property objects.
This gives a 5% boost (40->42 frames in qmlbench) on TX1 in release
mode.
Change-Id: If1a77468e812e65bc07f32216ff9bf2e1dc5b935
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add an internal CheckLabel helper that simply initializes a few
QQuickText properties with defaults that are suitable for CheckBox,
Switch, and RadioButton. This gives a 10% boost on desktop in debug
mode, and a 5% boost on a TX1 in release mode.
Change-Id: I82fead9ca22b6aa74f24924d240c924b2a42a912
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/controls/MenuItem.qml
Change-Id: Id4cae0e53a58796694ad1fc9f8380b317ee62984
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The size (and position) of the background item is respected if
explicitly defined, so the wrapper item is not needed. This does
not reduce or simplify bindings, so the performance boost is not
remarkable, but this can improve the qmlbench results by a frame
or two depending on the hardware. ;)
Change-Id: Ibd45cf02a3eb30b48b4af86e369a1db4cc5d3864
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The system resource will not be reclaimed and reused, reducing the
future availability of the resource.
In QQuickStackView::​componentComplete(): Leak of memory or
pointers to system resources (CWE-404)
Coverity-Id: 178431
Change-Id: Iff8f8e2d228042789faae56512fd3255c3e56498
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ibec1396de3e929a229e1550b8045d687aa5a513c
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unfortunately we need to manually add some \sa "palette QML Basic Type"
links as a workaround until auto-linking to basic QML types in QML
property headers is fixed in QDoc.
Task-number: QTBUG-63469
Change-Id: I2ea853bfeda31905468741eb720f4daa242e703d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-64075
Change-Id: Ifd48b6d0075ab1930be3d759b18292b5038bcc17
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Squeeze a few more frames in qmlbench by getting rid of one extra Item
and optimizing the bindings.
Before:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_switch.qml
[...]
Average: 94.4 frames; using samples; MedianAll=94; StdDev=1.14018, CoV=0.0120781
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_switch.qml
[...]
Average: 98.8 frames; using samples; MedianAll=99; StdDev=1.09545, CoV=0.0110875
Change-Id: I37bc9c7e75ec1620b6f575aa4aa97961367f79fd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File system lookups are somewhat expensive, so cache the results to
avoid repetitive lookups. The default cache size of 500 is a rough
estimate based on that the default assets have 300+ images per scale
factor.
Caching image lookups gives an average of 20% performance improvement
in qmlbench:
control before after improvement
----------------------------------------------
busyindicator 29 32 1.10344827586207
button 53 60 1.13207547169811
checkbox 51 60 1.17647058823529
combobox 39 44 1.12820512820513
dial 110 147 1.33636363636364
itemdelegate 54 61 1.12962962962963
label 143 152 1.06293706293706
menuitem 26 34 1.30769230769231
progressbar 13 15 1.15384615384615
radiobutton 52 59 1.13461538461538
scrollbar 37 62 1.67567567567568
scrollview 78 121 1.55128205128205
slider 31 40 1.29032258064516
spinbox 75 85 1.13333333333333
switch 35 43 1.22857142857143
textarea 80 88 1.1
textfield 56 63 1.125
tumbler 126 128 1.01587301587302
----------------------------------------------
average 1.2102967624703
Caching can be disabled by setting an environment variable:
QT_QUICK_CONTROLS_IMAGINE_CACHE=0
but this is not advertised in the docs for the time being. It is
there to help debugging, should anything go wrong with caching.
Change-Id: I1119f3d8186bc9a51cc174b06fed02ed9e1fb70c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ie5b9a513baa70e88ade9cc4980b81fe6a363edf6
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickImageBase::load() cannot call until the component creation is
completed, because it requires an associated QML engine. All calls to
updateIcon() are guarded with the appropriate isComponentComplete()
check, but the sourceSizeChanged() signal was connected directly to
updateIcon(). Establish the signal-slot connection at component
completion to avoid calling updateIcon() to soon.
Task-number: QTBUG-63959
Change-Id: I3c935291796dbae031d2728e1d51c55596a51cd0
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- other controls (textfield, combobox, ...) will eventually gain support
for icons too
- advertise icon support on the index page amongst other important topics
- document the steps for building an icon theme with high-dpi support
Change-Id: I35ed76ef005d7e273beb5f5147ca92849adc0d90
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|