| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
We also need to update the hovered state of each indicator when
the mouse is moved while pressed, not just when we get hover move
events.
Change-Id: I6fa71344fd540f648683958e5804ae735523e72d
Fixes: QTBUG-74688
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change makes all Qt Quick Controls 2 imports match the current
Qt minor version, which is 12 as of this patch.
It also updates all other Qt Quick imports to match.
This will also make future version bumps easier as all version numbers
in existing code/docs will match.
The following commands were used to verify that no old versions remain:
for i in `seq 0 11`; do git grep "import QtGraphicalEffects.*1.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick 2.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick.Layouts 1.$i$"; done
for i in `seq 0 5`; do git grep "import QtQuick.Controls.*2.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick.Templates 2.$i as T$"; done
[ChangeLog] From Qt 5.12 onwards, all import versions in
Qt Quick Controls 2 follow the same minor version as Qt's
minor version number. For example, the import version for Qt 5.12 is:
"import QtQuick.Controls 2.12".
Change-Id: I6d87573f20912e041d9c3b7c773cc7bf7b152ec3
Fixes: QTBUG-71095
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Sync the behavior with Qt Widgets. Don't propagate wheel events when
reaching the end. The behavior was not nice, that a ScrollView
underneath started suddenly moving whilst these input controls had
input focus.
Task-number: QTBUG-66044
Change-Id: I1b9c7f005652041cd82c77d4a1ca1a01d7d536e9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quickcontrols2/qquickchecklabel.cpp
src/quickcontrols2/qquickchecklabel_p.h
src/quickcontrols2/qquickmnemoniclabel_p.h
src/quicktemplates2/qquickbuttongroup_p.h
src/quicktemplates2/qquickspinbox.cpp
src/quicktemplates2/qquickswipedelegate.cpp
Change-Id: I1278b78dcaf25be5698f34751193b83dc951eb3c
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-64075
Change-Id: Ifd48b6d0075ab1930be3d759b18292b5038bcc17
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Allows styles to create a simple binding to display the textual value
instead of calling the textFromValue() JS-function. Furthermore, this
allows us to do the text<->value conversion in C++ using QLocale by
default, unless custom textFromValue and/or valueFromText JS-functions
are provided.
Before:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_spinbox.qml
100 frames
100 frames
99 frames
Average: 99.6667 frames; using samples; MedianAll=100; StdDev=0.57735, CoV=0.00579281
After:
running: qmlbench/benchmarks/auto/creation/quick.controls2/delegates_spinbox.qml
152 frames
150 frames
151 frames
Average: 151 frames; using samples; MedianAll=151; StdDev=1, CoV=0.00662252
Change-Id: I66a5ebaf685d2c30613b58099724e6e7bbe00504
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquicklabel.cpp
src/quicktemplates2/qquicktextarea.cpp
src/quicktemplates2/qquicktextfield.cpp
Change-Id: Ibbf6bc48972f58fbc6779a87ac9e2434c56c4db8
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-62508
Change-Id: I8981968c02b65d4b005eb9b54b0228fd51a3abda
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickspinbox.cpp
tests/auto/controls/data/tst_scrollbar.qml
Change-Id: Ief9481cb648076a951db0aeffaeb11aeaf392677
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Move the emit inside QQuickSpinBoxPrivate::setValue() to avoid having
to store and compare the old value in so many places where the value
changes are interactive (mouse, keys, wheel).
Task-number: QTBUG-61426
Change-Id: I7f42fc09cafc403eb55a9748e3a93c2e9bf6df62
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I47fbec425594386f529623f2dcbddd7ec7a09ee7
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes the scenario where a SpinBox is shown for the first time
with focus, but its editor (TextInput) doesn't have active focus.
tst_focus' keyNavigation.qml had to be adjusted, as an editable
spinbox will now consume key events.
Task-number: QTBUG-60356
Change-Id: I3af0260a22e9633ab6110d6adab7b39a22b849de
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QAbstractSpinBox in Qt Widgets has a similar property.
[ChangeLog][Controls][SpinBox] Added wrap-property to allow wrapping
circular spinboxes.
Task-number: QTBUG-58760
Change-Id: Ic3cd36056ed52d61c4ad9cb4170e91ec0618dcb9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
| |
This makes it much easier to add new data rows for wrapping SpinBox.
The formulas used to calculate expected values would get complicated
and hard to read with wrapping enabled. Passing the expected values
step by step is a lot easier to understand.
Task-number: QTBUG-58760
Change-Id: Id4894e5b104f36aa9b4771fab2ff833a28a9c83b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Sync with the qtbase/header.XXX. The license headers were matching
qtbase/header.XXX-OLD, which makes qtqa/tst_license flood warnings:
Old license being used for foo.qdoc
Change-Id: I199bf303a2d648e0d5f7bc01cb0814a5f945eeff
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickswitch.cpp
src/quicktemplates2/qquickswitchdelegate.cpp
tests/auto/controls/data/tst_dialogbuttonbox.qml
tests/auto/controls/data/tst_toolbutton.qml
Change-Id: I1da1d6de83c1d9ac854dfce1d6c9d6ba2c460404
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously the buttons were enabled/disabled on range changes only if
it caused the value to change. Make sure to update them also when the
value does not change.
Task-number: QTBUG-58217
Change-Id: Ibab5b8b7a58d5b88341c507a63b69f5a05fdfc1f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I104bc44c361351719449cab94dcb14c96e91e32f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: If797ac58344b20e8de4379343131c097247ba2f2
|
| |
| |
| |
| |
| | |
Change-Id: If68cff4efacc7dc5719c8b8e61937e85e9076870
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This ensures that the appropriate objects are destroyed at the end of
each test function, even if the test fails.
Change-Id: Ieab1117c3d674634c4431cd5eacd7686efbd14b2
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
Another name candidate was valueEdited(), but it was left available
in case we want to have the respective signal for text editing in the
future.
[ChangeLog][Controls][SpinBox] Added a valueModified() signal that
is emitted whenever the value of a spin box has been interactively
modified by the user by using either touch, mouse, wheel, or keys.
Task-number: QTBUG-57203
Change-Id: I705c7e63d23235f51d401abf27f3458f8a5b0589
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/auto/controls/data/tst_button.qml
Change-Id: I5c97b3c1944e52dba44fd3c7d6d9a255c5e08cf7
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't cancel auto-repeat on the tiniest mouse/touch move, but keep
repeating until moved outside the button.
The test has been written so that the exact amount of repeats does
not matter, as long as it repeats. This is because waits are not
reliable in a busy CI environment. Sometimes waits can take longer,
timer events get queued, and we get an unexpected burst of repeats.
Change-Id: Ibdcdd9e684bbcda032abfabb8a33ed892c7778df
Task-number: QTBUG-57085
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-progressbar-disabled.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-progressbar-normal.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-checked.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-disabled.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-focused.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-normal.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-disabled.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-first-handle-focused.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-normal.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-second-handle-focused.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-second-handle.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-disabled.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-focused.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-normal.qml
src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-tabbar-explicit.qml
src/quicktemplates2/qquickmenu.cpp
tests/auto/controls/data/tst_buttongroup.qml
tests/auto/controls/data/tst_swipedelegate.qml
Change-Id: Ib6042a0ad716f557927e7412d17ea8957d06c015
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is tedious to always add new static SignalSpy instances for each
tested signal. Just create signal spies locally in the same place where
they are used. This makes it much more convenient to create more signal
spies to achieve better coverage. This practice has been already used
in newly written tests.
Change-Id: I7f56c4b3cea0c55c34b85254f69a88ec73b8607f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/quickcontrols2/gallery/gallery.qrc
src/imports/calendar/doc/snippets/qtlabscalendar-calendarmodel.qml
src/imports/calendar/doc/snippets/qtlabscalendar-dayofweekrow-layout.qml
src/imports/calendar/doc/snippets/qtlabscalendar-dayofweekrow.qml
src/imports/calendar/doc/snippets/qtlabscalendar-monthgrid-layout.qml
src/imports/calendar/doc/snippets/qtlabscalendar-monthgrid.qml
src/imports/calendar/doc/snippets/qtlabscalendar-weeknumbercolumn-layout.qml
src/imports/calendar/doc/snippets/qtlabscalendar-weeknumbercolumn.qml
src/imports/controls/doc/qtquickcontrols2.qdocconf
src/imports/controls/doc/snippets/qtlabscalendar-calendarmodel.qml
src/imports/controls/doc/snippets/qtlabscalendar-dayofweekrow-layout.qml
src/imports/controls/doc/snippets/qtlabscalendar-dayofweekrow.qml
src/imports/controls/doc/snippets/qtlabscalendar-monthgrid-layout.qml
src/imports/controls/doc/snippets/qtlabscalendar-monthgrid.qml
src/imports/controls/doc/snippets/qtlabscalendar-weeknumbercolumn-layout.qml
src/imports/controls/doc/snippets/qtlabscalendar-weeknumbercolumn.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-calendarmodel.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-dayofweekrow-layout.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-dayofweekrow.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-monthgrid-layout.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-monthgrid.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-weeknumbercolumn-layout.qml
src/imports/controls/doc/snippets/screenshots/qtlabscalendar-weeknumbercolumn.qml
src/imports/controls/qtquickcontrols2plugin.cpp
src/quicktemplates2/qquicktooltip.cpp
src/quicktemplates2/qquicktooltip_p.h
src/quicktemplates2/qquicktumbler.cpp
tests/auto/controls/data/tst_spinbox.qml
tests/auto/controls/data/tst_tumbler.qml
tests/auto/qquickmaterialstyle/data/tst_material.qml
Change-Id: I25b7473b47739043b6f768603bece30b18021318
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If there are custom values like 00:00:00 for time and valueFromText
is not implemented, tab navigation sets the value to 0, because the
default implementation cannot evaluate it.
Change-Id: I0384a2015b2c2a4dc2ee0e57f1ece410c339838e
Task-number: QTBUG-56215
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Controls must import templates version 2.1 in order to "inherit"
1-revisioned properties, methods, and signals. So far, this has
been done case by case, but it's less error prone and more clear
to change them all. For example, if you ever see a source file
pasted/linked somewhere, it's easy to identify the version it
belongs to.
Change-Id: I41609ec1a22bc05ac3e79f953a147ca42d9e0786
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
| |
The actual hover effects are coming in separate patches.
[ChangeLog][SpinBox] Added up.hovered and down.hovered properties
that hold whether the respective buttons are hovered.
Task-number: QTBUG-50003
Change-Id: Ie47329e23326f40e4c807703ff7a97437f68deb4
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
| |
Change-Id: I6fbfde582723632c9b955a6e7ee380179b7b6a32
Task-number: QTBUG-53519
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
|
| |
Docs, resources, .metainfo and plugins.qmltypes will be updated in
follow up commits.
Change-Id: I4438c5bfb8802bff0fa15c56431cfd288f179861
Task-number: QTBUG-52549
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
| |
Change-Id: I37c732814783a382a078338aeea37c7b417a08d1
Task-number: QTBUG-50220
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
| |
The default value is false, which is more mobile/embedded/touch
friendly choice, and will be also in line with ComboBox::editable
when it gets introduced sometime in the future.
Change-Id: Iaaad8f5533100c2d5c4b49d1ef8ee849cf31feff
Task-number: QTBUG-51114
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
| |
Avoid calling an uninitialized JS callback. This is a regression caused
by lazy creation of the JS callbacks in 1f146d9.
Change-Id: I1816b491ada0509c5664cffbcaa32ca987095b31
Task-number: QTBUG-51114
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I81c8ea1dd8086cb2913998c5c91339b9b0ad0247
Task-number: QTBUG-49468
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|
|
It came up in discussions at the QtWS that even if we have Tumbler,
people still want and expect to have the good old SpinBox control.
SpinBox has it pros, such as that it might work better inside a
vertical Flickable, and that in multi-field forms it might visually
align better with other controls like TextFields.
An early mockup of SpinBox was removed in 1c0edf0. A quote from the
commit message:
SpinBox is a desktop centric control. It won't be provided in
Qt Quick Controls 2.0, but maybe later when desktop support is
re-considered. Qt Quick Controls 2.0 will focus on embedded and
mobile. SpinBox is still available in 1.x.
While it is true that SpinBox might not be optimal for touch or
mobile, the real reason for the removal was that validating decimal
number input is very complicated. Even though locales have well-
defined thousand separators and decimal points, users have very
different expectations on how strict or relaxed the input
validation should be.
This change re-introduces a touch-optimized integer-based SpinBox.
What makes it more touch friendly than the earlier version is that
it has now auto-repeating buttons. Limiting it to integers avoids
the decimal number input validation problem. We can introduce a
separate DoubleSpinBox later if necessary - just like in QtWidgets.
Change-Id: I2819060eb5d1ae6a8c00b0f12be703456085079d
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
|