| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| | |
Change-Id: I57fefd8ba47796118e71902c6882e9918d462920
Tasl-number: QTBUG-55030
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The imperative open() and close() methods used to be the only ways to
open and close popups, but the visible-property was later made writable
to allow declarative visibility bindings. Since then, it is no longer
sufficient for QQuickToolTip to overshadow open() and close() in QML,
because setting the visible-property would bypass these overshadowed
method.
There was a bit of duplicate code between setVisible(), open(), and
close(). This change moves the logic to one place by changing open()
and close() to call setVisible(). Furthermore, setVisible() has been
made virtual to make it possible for QQuickToolTip to apply its delay
properly. QQuickToolTip needs to control the delay and timeout timers
before the effective visibility is applied on the popup.
Task-number: QTBUG-55572
Change-Id: I5a109157f9ec5d0db145e710426665a9a8d7e870
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the Gallery example, the settings dialog does not get focus (or to
be exact, loses it immediately), because the closing menu incorrectly
transfers focus back to the tool button that opened the menu.
Change-Id: I5328d8e825de9a977619688dc4478e6592db654f
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is a little behavior change in focus handling in Qt Quick after
qdeclarative commit e7da97b. The order of QQuickItem::focusOutEvent()
and QQuickItem::ItemActiveFocusHasChanged have changed. Now we need to
emit visualFocusChanged() in setFocusReason() when losing visual focus
to ensure that bindigs to visualFocus get re-evaluated as appropriate.
Change-Id: I52e728c7df751a54b36f353415b2666cfedc73ad
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Just like commit 87b21a57 made Control do it, this applies the same
logic to AbstractButton. The simple reasoning is that when customizing
both the contentItem and the background, it is much better to use the
AbstractButton type that does not have any default building blocks.
Previously you would have to supply implicit size calculation as well,
but this makes it much more convenient to use.
[ChangeLog][Controls][AbstractButton] A plain AbstractButton now
calculates its implicit size based on the implicit size of the content
item plus paddings, and the implicit size of the background item.
Change-Id: Ic380366b25940fbb9f28882c4622d58f4c042a07
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When unable to find a parent item style on window change, use
the window style as a fallback to avoid a parentless style.
Task-number: QTBUG-52631
Change-Id: I5d31dc72075f06f865f01c3ee2411de6a1485677
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-54206
Task-number: QTBUG-54532
Change-Id: I7e4d993e3b1e30d7d7956629604f948dd1c85e32
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9cb3fd6bdbedc0e7ca472b815502bce48dca00b7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Replace the state table in the detailed description with a GIF.
- Add a GIF for the tri-state documentation.
Change-Id: I00f3835edad6eb454d06847ab342ce0eeb30156b
Task-number: QTBUG-55904
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also removes the state table in the detailed description,
since we have GIFs now.
Change-Id: I4503b67478051eb872f46127da6718092d77d4ff
Task-number: QTBUG-55904
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Don't create a tumbler indiscriminately in init(). Some tests don't
use the tumbler, and it just creates more headaches for debugging, as
there is extra, unrelated qDebug output for the unused tumbler.
- Don't create the tumbler with createQmlObject(). Having code in a
string is difficult to maintain and doesn't have the benefit of e.g.
the static error checking that Creator can do.
- Instead of only automatically cleaning up the tumbler item in
cleanup(), introduce a "cleanupItem" that all dynamically created items
can use as their parent so that they too can benefit from automatic
cleanup.
- Comment out incomplete test and mention that it's a TODO.
Change-Id: I070fbb018bc9270555774bb0de2d72b7889edb35
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using content size was a workaround (applied in 5f5654f) that helped
with mis-aligned tab labels, but broke the implicit size calculation
of TabButton itself. Now that the mis-alignment issue in QQuickText
has been fixed in qtdeclarative commit 79cfc87, we can restore the
correct implicit size calculation. This makes it possible to create
tabs that are not squeezed to fit in TabBar:
TabBar {
TabButton { text: "Foo"; width: implicitWidth }
TabButton { text: "Bar"; width: implicitWidth }
TabButton { text: "Baz"; width: implicitWidth }
}
Task-number: QTBUG-55129
Change-Id: If0dbb00794299e324b7a8d8ce1370fe0a3491fe8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't calculate the implicit item width based on the total width of
the whole control, but based on the available width that is left after
subtracting the items that have an explicit width and won't be resized.
Change-Id: Iae18dd9c9756b6f2afa143baab7d2501ce9d4697
Task-number: QTBUG-56265
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This only happens in 5.7, and seemingly only when the delegate uses
attached properties (like displacement).
Other fixes required and/or relevant to the patch:
- Fixed some instances of displacementChanged possibly not being
emitted.
- Use QPointer for the attached object's Tumbler pointer, as it
was being accessed while null after this patch.
Change-Id: I7d881d815faf57f1a8bc0ea8e73a7331523d2f9b
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The parent must not be a null item.
Change-Id: Ide71a69e8cde8114542fa97570e0e5f5d724a884
Task-number: QTBUG-56243
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add a separate test for non-screenshot snippets and move the screenshot
snippets to their own folder.
Change-Id: Ic3e7370321e346b83f7df42205e204d1265ce5b0
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/quickcontrols2/gallery/gallery.qrc
src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc
src/quicktemplates2/qquickstackview_p.cpp
src/quicktemplates2/qquickstackview_p_p.h
tests/auto/controls/data/tst_stackview.qml
Change-Id: If451fe0e5653572d305b4de90a6d5cb878463e8d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If an item is still activating (from a previous pop) when it gets
already popped out, we must not set the deactivating status before
calling prepareTransition(). This method cancels and finishes the
ongoing activation transition, and if the status says that the item
was deactivating, the item gets destroyed in the middle of preparing
for the deactivation transition.
Let prepareTransition() cancel any ongoing transition first, and then
set the status after the preparation. The cleanest way is to pass
the target status to startTransition() and completeTransition().
Task-number: QTBUG-56158
Change-Id: Id52752200b650ea9f84659bbf43431f8a8b22f1e
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-56136
Change-Id: I3ed7fae09c342c2c456b94fc0cfed781d8edf6aa
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Id9d844d1fc75f4d254abaf1681747b7b521e881b
Task-number: QTBUG-56131
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a drawer is positioned below a toolbar, for instance, it must be
possible to interact with the buttons in the toolbar while the drawer
is open (without the drawer closing due to the interaction).
Change-Id: I5e07f66ad997ba6cf991a26fc6849ec51c9c0a22
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 09706e8f9fc481d848a3616cace58baf5bc8b67c.
It was a bit rushed to expose the allow*Flip properties. We have now
added several other similar internal allowFooBar flags, so clearly
a more sustainable solution is to craft some kind of horizontal and
vertical sizing/positioning policies out of them. So, remove this
unreleased API while we still can, so we don't have to deprecate it
right away.
Conflicts:
src/imports/templates/qtquicktemplates2plugin.cpp
Change-Id: Iea33c11805071499b472b18426bbdc8d871a4a58
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I37aab846346692fd4bff08b0dbab66db3a8e2716
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make QQuickDrawer re-use QQuickPopup's reposition() implementation.
This way QQuickDrawer gains support for proper positioning and margins
"for free". Now it is possible to place Drawer below the window header,
for instance:
import QtQuick 2.0
import QtQuick.Controls 2.0
ApplicationWindow {
id: window
visible: true
header: ToolBar { }
Drawer {
y: header.height
width: window.width * 0.6
height: window.height - header.height
}
}
[ChangeLog][Controls][Drawer] Made it possible to control the vertical
position of a horizontal drawer, and vice versa. This allows placing
a drawer below a header/toolbar, for instance.
Task-number: QTBUG-55360
Change-Id: I63621195efeefa2ea88935d676771b392e0a4030
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Drawer is a special type of popup that always resides at one of the
window edges. Therefore it makes sense for drawers to operate on window
coordinates. Re-parenting drawers to the window overlay achieves that.
Now that the window overlay is guaranteed to always exist and the
ApplicationWindow.overlay attached property works even with plain QML
Window, we can reliably use it as a parent for Drawer.
Task-number: QTBUG-53168
Change-Id: I37c727001350217ea1d2d9c52d73b4cae44d7c8d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since 14dd934c, we're using QQuickOverlay even with plain QML Window.
Now that the overlay is guaranteed to always exist, we can make the
attached property to give a reliable access to the overlay.
Change-Id: I707fc52f6dfc7a0dbc9a3467646fb5feb36b9572
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When reseting the explicit size of a popup, the popup items geometry
does not necessarily change. However, it affects the positioning of
the popup whether it has explicit size or not. For that reason we
must ensure that the popup gets repositioned as appropriate.
Change-Id: I2dcd895eb7a1adc9c6a804bed4731edac1d550ec
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The documentation states:
A popup with negative margins is not pushed within the bounds of
the enclosing window.
Therefore QQuickPopupPrivate::reposition() must not subtract negative
margins to calculate the available bounds.
Change-Id: I626772970bf3d5d9eefbb13811ea1003a85bcf0b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't start dragging the handle unless the initial press was at the
indicator, or the drag has reached the indicator area. This prevents
unnatural jumps when dragging far outside the indicator.
Change-Id: I2b31b319a347ab489f2de5c044e42d908827b425
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sync the implementation with QQuickSwitch to make it behave exactly
the same way.
Change-Id: I59d08f68f87d8776e4012da880ac57a99950dfe8
Task-number: QTBUG-55686
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Switch implemented custom event handling for the indicator, and used
QQuickAbstractButton's event handling for the background. This lead to
inconsistent signals depending on whether interacting with the handle
or the background. This change gets rid of the child mouse event filter
for the indicator and makes QQuickSwitch fully utilize the base class
event handlers.
Change-Id: I773e2eb939cbbf4bc9086cdf2b34e876597ea08e
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Switch is a special type of button that should stay pressed (similarly
to Slider) even if the finger slips outside the bounds of the control.
It was doing that only when dragged from the handle, not when dragged
from the background.
Change-Id: I462c66cfe2e67fc3c95215ffeafe3e5771174418
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Popup] Fixed to respect explicitly set width and
height.
Task-number: QTBUG-56025
Change-Id: I7c8b0dcf59459a313c4c52eda44de45f1ab648ea
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Set mouseGrabberPopup in QQuickOverlay::childMouseEventFilter() the
same way it is set in QQuickOverlay::mousePressEvent() to ensure that
the consequent mouse move events are routed to the appropriate popup.
This worked with "genuine" mouse move events that were caught by the
same child mouse event filter and that way routed to the appropriate
popup, but not with "synthesized" mouse move events that are caught
by QQuickOverlay::mousePressEvent() instead.
Change-Id: Ic59afd85e55c13ebec482bc4dc534accd1f92b2c
Task-number: QTBUG-56010
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-56007
Change-Id: I6433e0ebc9570b1e9e6e149ef7f631ea6786f672
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquicktextarea_p_p.h
src/quicktemplates2/qquicktextfield_p_p.h
Change-Id: Ie7b4a114ad27a4cad337c91e8ebcf696b0e845d7
|
| |
| |
| |
| |
| |
| | |
Change-Id: I1a3be5ef02cf73a153cebc030313f892fbb03d9f
Task-number: QTBUG-55769
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This complements the File/FolderDialog offering.
Change-Id: I44a105724321092a6efc4126c8fb25f7d31b77e2
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ief98cd56abd13cfa4e30578e150207462a8243b8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When QQuickDrawer was visible all the time, it did not emit the
visibility related signals at all. Now the signals are emitted,
but aboutToShow() and visibleChanged() were emitted twice when
a drawer was manually dragged open. First time when the dragging
begins (the drawer becomes effectively visible), and second time
when the open transition begins after mouse/touch release. This
change ensures that the signals won't be emitted again when the
transition begins, in case they were already emitted.
Change-Id: I2a175c9e86a480d5cd23e306f41f0d85e2416f75
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Drawers were visible all the time, lurking at the window edges to be
able to catch presses and drag themselves visible when appropriate.
This change moves the handling of window edge presses from QQuickDrawer
to QQuickOverlay, making it possible to show and hide drawers like any
other popups. Instead of having all drawers visible all the time, we
just keep QQuickOverlay visible when there are any registered drawers,
even hidden ones.
Furthermore, this change makes modal popup/drawer background dimming
items accept mouse press events just like they accept hover events to
ensure that a modal overlay does not leak input events through. When
the background dimming of a modal drawer has been dragged over the
drag-threshold, the drawer simply steals/grabs mouse to start dragging
of the drawer.
Task-number: QTBUG-54794
Task-number: QTBUG-54800
Task-number: QTBUG-55022
Task-number: QTBUG-55703
Task-number: QTBUG-55713
Change-Id: I65fb38fcf1466d4e41192c4321d80fb90b49da9a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-55687
Change-Id: I515bcbbed76e08da6d300434cf92b3539a79afec
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-55687
Change-Id: I217ad905cc06228a6a1608c0721dc20a31db6d9b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A plain QQuickWindow cannot provide a modal background dimming visual,
but we can create a QQuickItem as a fallback to take care of blocking
the hover events for modal popups.
Change-Id: I3ead985c4e2e030aaf28f1ec6c8a1ae285637819
Task-number: QTBUG-54913
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Get rid of the ugly and broken event filter approach that was used
with QQuickWindow. Create an instance of QQuickOverlay so that the
same overlay code path is used for both QQuickApplicationWindow and
plain QQuickWindow.
Task-number: QTBUG-55729
Change-Id: I6e26b19cd94a9580418912803f50c30b9dcaeedb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In general, we don't want TextField to grow while typing, but if there
is no background nor placeholder, use content width as a fallback. Also
take content height into account while calculating the implicit height.
Task-number: QTBUG-55684
Change-Id: Iee0eff6861c3573045036a06d7e53f7fc313fbe8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4bf81c06a77980ed3201b43f9d106017f236a8bd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This allows us to run the relevant popup tests for both QQuickWindow
and QQuickApplicationWindow.
Change-Id: I14b6435afeeb8a6cf640d8c52ad1d9e1fae070b0
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|