| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
Now that qtquickcontrols2 has been merged into qtdeclarative,
we should make it obvious that this repo should no longer be
used, by preventing it from being built.
Task-number: QTBUG-95173
Pick-to: 6.2
Change-Id: I95bd6a214f3d75a865ab163ee0a1f9ffbeb7a051
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch will add a SelectionRectangle to controls.
A SelectionRectangle can be used together with TableView
to let the user select cells using either pointer Drag
or PressAndHold. It lets the developer set their own
handle delegates, or simply use the included ones added
to the Basic style.
[ChangeLog][Controls][SelectionRectangle] A SelectionRectangle
has been added to Controls. A SelectionRectangle can be used
to make selections in TableView.
Fixes: QTBUG-74750
Change-Id: Ia7af578c1c905b0e92df193d7820ad6ef2c9b697
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
In order to achieve this, it separates out QQuickSpinButton into a
separate file (and renames it since it's not only purposed for SpinBox
anymore). This allows it to be also used by QQuickScrollBar.
Fixes: QTBUG-88115
Pick-to: 6.0
Change-Id: I2dea42b29750b7bc619031f40a43717fc10c177b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The existing implementation was removed in order to reduce massive code
duplication and simplify color resolving process. Unit tests were fixed
accordingly.
See related changes in the qtdeclarative module for the further details.
[ChangeLog][General] the palette API is a part of
QQuickItem now.
Change-Id: Ic94ab4632e626c11d9b26f035e2a8a119c9088ef
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][Controls] Add HorizontalHeaderView and VerticalHeaderView.
They are controls associated with TableView. Support flicking synchronization
Support default, fusion, imagine, material and universal delegate styles.
Fixes: QTPM-1300
Change-Id: Ie3f913dd616cda0d4e5a22a3d95baf71692370fe
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SplitView is an important tool for desktop applications that do not
want to use a dock widget-style approach for their user interface.
It allows users to have some degree of control over the sizing of
elements in the UI, as well as the ability to conveniently serialize
those sizes so that they're remembered across sessions.
The main differences between this and the SplitView in
Qt Quick Controls 1 are:
- Has its own SplitView attached properties, rather than relying on
the Layout attached properties (which required an additional import).
- Uses the attached preferredWidth and preferredHeight properties
as well as Item's implicitWidth/implicitHeight properties
for the preferred size of items, rather than using the width and
height properties.
- Inherits from Container, so supports most of its API (though some
parts of the API, like the currentIndex-related stuff, make no
sense for SplitView).
- Uses attached SplitHandle properties for the handle delegate to
visualize hovered/pressed effects.
- Offers convenience API for serializing the user's preferred sizes.
[ChangeLog][Controls][SplitView] Introduced SplitView, a control that
lays out items horizontally or vertically with a draggable splitter
between each item.
Task-number: QTBUG-56318
Change-Id: I3da91643ab312eb9ef5b0567da4e758f17747192
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
| |
Change-Id: I786b1ed2e5bfc38a735fd84041464eff03bbbe7d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
Add a header for the private class, and a protected constructor.
Change-Id: Id34b32dd614a430ec7e299c53341f21c4fba36d9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the following code:
ApplicationWindow {
Component.onCompleted: print(contentItem)
}
Before:
QQuickItem(0x16043e52600)
After:
QQuickContentItem(0x28a89b96440, "ApplicationWindow")
QQuickWindow has a similar concept (QQuickRootItem).
Change-Id: I6504b62c69cfd7d9036d5c200a65542b953bc7bc
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, users must manually position their Popup using x and y
bindings:
Popup {
x: (parent.width - width) / 2
y: (parent.height - height) / 2
}
This patch adds an anchors property so that you can do this instead:
Popup {
anchors.centerIn: parent
}
It's also possible to conveniently center within the window from
anywhere within the scene (106e7b63 also documents an alternative way
of doing this using Overlay):
Window {
id: window
Pane {
Popup {
anchors.centerIn: window
}
}
}
QQuickAnchors were never used with Popup, because we cannot use the
QQuickAnchors implementation as-is, as the visual QQuickItem parent
is not the actual parent item of QQuickPopupItem.
Currently just centerIn is supported, as that's the most common
use case.
[ChangeLog][Controls][Popup] Added anchors.centerIn to Popup to allow
a covenient way of centering a popup.
Task-number: QTBUG-60354
Change-Id: Ia030f812df9da646fea8f373ef6199a21205ffbd
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
| |
QQuickTheme has been de-coupled from QPlatformTheme. The proxy theme is
no longer needed at all.
Change-Id: I6a97f5d83a86b77384d4dd41f9777bd022892eb3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
QQuickTheme needs to be part of libQtQuickTemplates to be able to
provide dark and light palettes (and later, icons).
Task-number: QTBUG-63331
Change-Id: If7d3d279a07b6daf6701a1d3cd3686bec1d094b4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The static value type provider instance must be moved from the plugin
(libqtquicktemplates2plugin.so) to the library (libQt5QuickTemplates2.so)
to keep it alive when qmlClearTypeRegistrations() is called and the
plugin is unloaded. This fixes the warning that was being thrown a lot
in tst_qquickmenubar on macOS:
QWARN : tst_qquickmenubar::Default::UnknownTestFunc() QQml_removeValueTypeProvider: was asked to remove provider 0x117dc97f8 but it was not found
Change-Id: I4448e497672c834786af0132b6ed5f03c3931773
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
examples/quickcontrols2/quickcontrols2.pro
src/imports/controls/ComboBox.qml
src/quicktemplates2/qquickabstractbutton.cpp
src/quicktemplates2/qquickabstractbutton_p.h
src/quicktemplates2/qquickapplicationwindow_p.h
src/quicktemplates2/qquickcombobox.cpp
src/quicktemplates2/qquickcontainer.cpp
src/quicktemplates2/qquickcontrol.cpp
src/quicktemplates2/qquickcontrol_p.h
src/quicktemplates2/qquickcontrol_p_p.h
src/quicktemplates2/qquicklabel_p.h
src/quicktemplates2/qquicklabel_p_p.h
src/quicktemplates2/qquickslider_p.h
src/quicktemplates2/qquickspinbox.cpp
src/quicktemplates2/qquicktextarea_p.h
src/quicktemplates2/qquicktextarea_p_p.h
src/quicktemplates2/qquicktextfield_p.h
src/quicktemplates2/qquicktextfield_p_p.h
tests/auto/auto.pro
tests/auto/controls/data/tst_combobox.qml
Change-Id: I34cdd5a9794e34e0f38f70353f2a2d04dfc11074
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In practice, deferring the execution of the delegates (until
accessed) means that the default delegate item does not get created
at all, when a custom control replaces it at construction time.
Button {
background: Rectangle { ... }
}
Before, such custom Button would never be faster than the original
one, because the default delegate was first created and then thrown
away at construction time. Originally, this was not considered a huge
problem, because the plan was to keep the default delegates so light-
weight that it wouldn't matter. However, then came the fancy styles
with shadows and effects and thus, heavier default delegates. There's
also a growing demand for more features, and the default delegates
are slowly getting heavier...
Now, after this patch, if you replace a heavy default delegate with
a light and simple custom delegate, the result is a much faster
control. For example, replacing Material style Button's background,
which has a shadow effect, with a plain Rectangle gives a ~10x boost,
because the default background with its heavy shadow effect is not
executed at all.
At the same time, deferring the execution of the default delegates
avoids troubles with asynchronous incubation, because we don't need
to destroy an object in the middle of the incubation process.
Task-number: QTBUG-50992
Change-Id: I2274bff99b9ff126d3748278d58d859222910c98
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
MenuBar is an ordinary Item. It can be located basically anywhere, but
the idea is to introduce a new ApplicationWindow::menuBar property in a
follow-up commit. Currently the example snippets are using the header
property.
[ChangeLog][Controls][MenuBar] Introduced a MenuBar control.
Task-number: QTBUG-60350
Change-Id: Ie66dc457a3d8edbe8362fab2a591dc49442c95e2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][MenuItem] Added a "menu" property that provides
access to the menu that contains the menu item.
Change-Id: I5edbf860756ba7ba9aef93d4992720327c10d1df
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Id4dfb4939d3ea720fe46a4a5171d3e068c8f1fd3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][ActionGroup] Introduced ActionGroup, a non-visual
group of actions that is mutually exclusive by default.
Task-number: QTBUG-50705
Change-Id: Ia33103173441ca8980341b7c94aba0db3264284d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Action] Introduced Action, an abstract user
interface action that can have shortcuts and be assigned to buttons.
Task-number: QTBUG-50705
Change-Id: I1986cc7ed13cdf428d51ae38cd196a20493fde8b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ia4c692552e6573b33b2e0f6b43b2a482a78ad970
|
| |
| |
| |
| |
| | |
Change-Id: Ieb40f536cc5d68fdf13075df2c9b3e09d5077de3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
This adds the initial API needed to add support for setting icons on
buttons, etc., and is also necessary for action support.
Follow up commits will add the actual support for icons.
Change-Id: I9ab892aa4fe43210e7b18bed3e0ebcec2edb9c91
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog][Controls][ScrollView] Added ScrollView.
Change-Id: I5d68799f0246e04b519bf6a0ec7bc7e5625f50e7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
| |
To make the private classes accessible for the upcoming ScrollView.
Change-Id: Iae1d7f9b136a99ac5892418c52071a902e665476
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
[ChangeLog][Controls][DelayButton] Added DelayButton.
Change-Id: I94820dfb41ba9b90f0a29cda01ac476b54cf3de8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| | |
Change-Id: If528b9f4e502c50e0cd76df75404e257232f0d18
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/quicktemplates2/qquickswipedelegate_p.h
Change-Id: I5446503c1e4f21cb37f4fffeb3453d1c84b54b30
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If there are no delegates and hence the mouse hasn't been grabbed, we
should clear the pressed state when the mouse is dragged outside the
control. We can do so by falling back to the event handling of the
base class (QQuickItemDelegate) when we have no delegates.
This also ensures that the canceled() signal is emitted.
A similar thing is done for controls with delegates, except that only
the vertical position of the mouse is checked, as we still want to
initiate swipes horizontally.
Change-Id: I7738f5b9e8e8b6ce4a733008fa4ff73596e854ea
Task-number: QTBUG-56312
Task-number: QTBUG-57285
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/imports/controls/BusyIndicator.qml
src/imports/controls/ProgressBar.qml
src/quicktemplates2/qquickpopup.cpp
src/quicktemplates2/qquickpopup_p_p.h
src/quicktemplates2/qquickstackview.cpp
Change-Id: I9a1028a991de9fc3e26d3f973106301e9ada631c
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/imports/controls/Drawer.qml
src/imports/controls/Frame.qml
src/imports/controls/GroupBox.qml
src/imports/controls/Page.qml
src/imports/controls/Pane.qml
src/imports/controls/ToolBar.qml
src/imports/controls/Tumbler.qml
src/quicktemplates2/qquickapplicationwindow.cpp
src/quicktemplates2/qquickpopup.cpp
tests/auto/accessibility/data/busyindicator.qml
tests/auto/accessibility/data/button.qml
tests/auto/accessibility/data/checkbox.qml
tests/auto/accessibility/data/control.qml
tests/auto/accessibility/data/dial.qml
tests/auto/accessibility/data/label.qml
tests/auto/accessibility/data/menu.qml
tests/auto/accessibility/data/pageindicator.qml
tests/auto/accessibility/data/popup.qml
tests/auto/accessibility/data/progressbar.qml
tests/auto/accessibility/data/radiobutton.qml
tests/auto/accessibility/data/rangeslider.qml
tests/auto/accessibility/data/scrollbar.qml
tests/auto/accessibility/data/scrollindicator.qml
tests/auto/accessibility/data/slider.qml
tests/auto/accessibility/data/spinbox.qml
tests/auto/accessibility/data/switch.qml
tests/auto/accessibility/data/tabbar.qml
tests/auto/accessibility/data/tabbutton.qml
tests/auto/accessibility/data/textarea.qml
tests/auto/accessibility/data/textfield.qml
tests/auto/accessibility/data/toolbar.qml
tests/auto/accessibility/data/toolbutton.qml
tests/auto/accessibility/tst_accessibility.cpp
Change-Id: Ibc3f592162e97bef9147b35da8c9a79e73a907e6
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In the Gallery example, the back navigation shortcut no longer
activates when the settings dialog or the about dialog is open.
Notice that the back navigation shortcut still activates while
the options menu is open.
[ChangeLog][Controls][Popup] The QML Shortcut type from QtQuick has
been fixed to respect modal popups from QtQuick Controls 2.
Task-number: QTBUG-56562
Change-Id: I4c3c762e9db0935ef250ff9f8c553e7d211220c7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I87fdef1c2cc5bb2b04c38b54cca316ace8814f2c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I4fce147f125d4641e1eb3a6534f57d68000dbfc7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We'll start slowly refactoring all QQuickPopupItem-specific things
out of QQuickPopup. In the future the presentation/backend of a popup
could be, under certain circumstances, a native menu popup window, for
example.
Change-Id: I8508da14ab52c65221afc3a9b7f07c371f0416d2
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| | |
qquickpopup.cpp has grown massive.
Change-Id: Ibbc83331b642d854d4f7dc2aebe8b3fc46ec7bee
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ief98cd56abd13cfa4e30578e150207462a8243b8
|
| |
| |
| |
| |
| |
| |
| |
| | |
Required by the subsequent patches. Done separately keep the other
patches smaller and easier to review.
Change-Id: Ibce7f131684ef48a60c7023e7566d8b6907ac6af
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Required by the subsequent patches. Done separately keep the other
patches smaller and easier to review.
Change-Id: I90ae08ea196354b3db74e2203983ca95733ef0c8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls] Added RoundButton.
Change-Id: I30a8b9e942a61089e87fb1aa248432e42caf0d20
Task-number: QTBUG-54967
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls] Added MenuSeparator to visually distinguish
between groups of items in a menu.
Change-Id: I7a52910b19633ed1188c90ca56c92346a28d4d5c
Task-number: QTBUG-54862
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ToolSeparator is used to visually distinguish between groups of items
in a toolbar by separating them with a line. It can be used in
horizontal or vertical toolbars.
Task-number: QTBUG-54862
Change-Id: Ie68e680510428ad19e7f80268063af07b61100eb
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls] Added Dialog to provide convenience for handling
dialog popups. Dialog integrates with DialogButtonBox, and provides
convenient accepted() and rejected() signals.
Task-number: QTBUG-51090
Change-Id: I776516738b82c0e5726769c054d6f2a956fb616d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Important Behavior Changes][Tumbler] Changed the default
value of wrap to be false when count is less than visibleItemCount.
Explicitly setting wrap overrides this behavior.
Change-Id: I0089f517a25a606625c245df52b0db5fd859ffc0
Task-number: QTBUG-53587
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Does the header/content/footer layout for Page, and will
be shared with the upcoming Dialog.
Change-Id: Ic550a87b5f4bb4eb44e2d08a4c977183f3b5bbff
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
| |
[ChangeLog][Controls] Added DialogButtonBox to provide convenience for
handling dialog buttons. DialogButtonBox is able to create a set of standard
buttons with a single line of QML code, and provides convenient accepted()
and rejected() signals.
Task-number: QTBUG-51090
Change-Id: I9b3c6ba1b2836dadf9a2ac9086be1eba214e7c4d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
| |
Change-Id: I70468b35b2a3a03c6e2d557a67443291697c8b42
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
Change-Id: I146da903b46f5c2caf865e37291c25376b49021a
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
|