summaryrefslogtreecommitdiffstats
path: root/src/widgets
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove deprecated QStyleOptionFooVx typedefsChristian Ehrlicher2020-06-202-122/+0
| | | | | | | They were not used the whole Qt5 lifetime. Change-Id: I1452b90d63bbeed3cc9131b04ed5263b38ad89b3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QTreeWidget: remove deprecated function items()Christian Ehrlicher2020-06-202-13/+0
| | | | | | | | | It does not return anything and was already deprecated in Qt4.8 (and already returned an empty QList back then) Change-Id: I3a2f1b79081d3289d13ba9fdee346aa730d16114 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Port Q_STATIC_ASSERT(_X) to static_assertGiuseppe D'Angelo2020-06-194-8/+8
| | | | | | | | | | | | | | | | | There is no reason for keep using our macro now that we have C++17. The macro itself is left in for the moment being, as well as its detection logic, because it's needed for C code (not everything supports C11 yet). A few more cleanups will arrive in the next few patches. Note that this is a mere search/replace; some places were using double braces to work around the presence of commas in a macro, no attempt has been done to fix those. tst_qglobal had just some minor changes to keep testing the macro. Change-Id: I1c1c397d9f3e63db3338842bf350c9069ea57639 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Introduce QInputDevice hierarchy; replace QTouchDeviceShawn Rutledge2020-06-165-28/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have seen during the Qt 5 series that QMouseEvent::source() does not provide enough information: if it is synthesized, it could have come from any device for which mouse events are synthesized, not only from a touchscreen. By providing in every QInputEvent as complete information about the actual source device as possible, we will enable very fine-tuned behavior in the object that handles each event. Further, we would like to support multiple keyboards, pointing devices, and named groups of devices that are known as "seats" in Wayland. In Qt 5, QPA plugins registered each touchscreen as it was discovered. Now we extend this pattern to all input devices. This new requirement can be implemented gradually; for now, if a QTWSI input event is received wtihout a device pointer, a default "core" device will be created on-the-fly, and a warning emitted. In Qt 5, QTouchEvent::TouchPoint::id() was forced to be unique even when multiple devices were in use simultaneously. Now that each event identifies the device it came from, this hack is no longer needed. A stub of the new QPointerEvent is added; it will be developed further in subsequent patches. [ChangeLog][QtGui][QInputEvent] Every QInputEvent now carries a pointer to an instance of QInputDevice, or the subclass QPointingDevice in case of mouse, touch and tablet events. Each platform plugin is expected to create the device instances, register them, and provide valid pointers with all input events. If this is not done, warnings are emitted and default devices are created as necessary. When the device has accurate information, it provides the opportunity to fine-tune behavior depending on device type and capabilities: for example if a QMouseEvent is synthesized from a touchscreen, the recipient can see which touchscreen it came from. Each device also has a seatName to distinguish users on multi-user windowing systems. Touchpoint IDs are no longer unique on their own, but the combination of ID and device is. Fixes: QTBUG-46412 Fixes: QTBUG-72167 Task-number: QTBUG-69433 Task-number: QTBUG-52430 Change-Id: I933fb2b86182efa722037b7a33e404c5daf5292a Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Always show a submenu on its parent menu's screenShawn Rutledge2020-06-161-1/+1
| | | | | | | | | | | | | | | QWidget::screen() was added in b455a863a1df61337f36f2e8b43101ca21514697 and this is another good use for it (in 5.15 and newer). Amends c068edcecf6876c7b57abbe302ad8b1347e4445e Pick-to: 5.15 Fixes: QTCREATORBUG-24195 Task-number: QTBUG-76162 Change-Id: Ifaafe9b45fafaae220da54bbf3bc7a568e7953f9 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix breakage of QPushButton on macOS when a style sheet was setVolker Hilsheimer2020-06-111-0/+1
| | | | | | | | | | | | | | | | | | | | | Amends comment 6e1d70ae12baae4610356ec7b69635ad75a97b4e, which introduced SE_PushButtonBevel so that QPushButton could ignore clicks outside of the button's bevel. In the macOS style, make sure that the framerect we pass to NSButton::alignmentRectForFrame is the rect we receive from QPushButton in the style options. The frame property of the shared NSButton* object might not be initialized. In the style sheet style, handle SE_PushButtonBevel the same ways as Contents and FocusRect, as it is not a separately styleable property. Change-Id: I12eb1b046c864a02b34d276e6352e2e16d44231e Fixes: QTBUG-84852 Fixes: QTBUG-84879 Task-number: QTBUG-81452 Pick-to: 5.15 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Fix QToolButton menus showing on primary screens in multiscreen setupsFriedemann Kleint2020-06-101-1/+2
| | | | | | | | | | | | | | Calculate an initial position based on the current size hint and pass it to QMenuPrivate::exec(), which does screen checks based on it. Amends a78d66743171557d79b16c08be775e3ac15bb4ef. Pick-to: 5.15 Fixes: QTBUG-84462 Task-number: QTBUG-78966 Change-Id: Icae8d2bc0fb50c4c853cfebaa2b2250fc06542e3 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Merge QToolTip::showText overloads as per ### Qt 6 commentsVolker Hilsheimer2020-06-102-28/+6
| | | | | Change-Id: Ic156fed27bd535daf828e5d95049591833614307 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Long live std::pair!Giuseppe D'Angelo2020-06-102-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make QPair an alias for std::pair, and qMakePair just a forwarder towards std::make_pair. Why? Fundamentally to ditch a bunch of NIH code; gain for free structured bindings, std::tuple and std::reference_wrapper compatibility, and so on. Breakages: * Some that code manually forward declares QPair. We don't care about it (<QContainerFwd> is the proper way). * Some code that overloads on std::pair and QPair. Luckily it's mostly centralized: debug, metatypes, testing macros. Just remove the QPair overload. * Usages of qMakePair forcing the template type parameters. There are a handful of these in qtbase, but only one was actually broken. * std::pair is NOT (and will never likely be) trivially copiable. This is agreed to be a mistake done by practically all implementations in C++11, can can't be fixed without breaking ABI. Some code using QPair assuming it's trivially copiable may break; exactly one occurrence was in qtbase. * QMetaType logic extracts the type names in two different ways, one by looking at the source code string (e.g. extracted by moc) and one via some ad-hoc reflection in C++. We need to make "QPair" (as spelled in the source code) be the same as "std::pair" (gathered via reflection, which will see through the alias) when compared. The way it's already done e.g. for QList is by actually replacing the moc-extracted name with the name of the actual type used in C++; do the same here. On libc++, std::pair is actually in an inline namespace -- i.e. std::__1::pair; the reflection will extract and store "std::__1::pair" so we need an ad-hoc fix to QMetaType. [ChangeLog][QtCore][QPair] QPair is now an alias to std::pair, and does not exist as a class in Qt any more. This may break code such as functions overloaded for both QPair and std::pair. Usually, the overload taking a QPair can be safely discarded, leaving only the one taking a std::pair. QPair API has not changed, and qMakePair is still available for compatibility (although new code is encouraged to use std::pair and std::make_pair directly instead). Change-Id: I7725c751bf23946cde577b1406e86a336c0a3dcf Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Port QtWidgets from QStringRef to QStringViewLars Knoll2020-06-1012-20/+20
| | | | | Change-Id: Ibe348e7aea838ab8c2d628bb43709c867a506637 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Make QLayout::spacing/setSpacing virtual, remove qobject_cast hackVolker Hilsheimer2020-06-095-39/+16
| | | | | Change-Id: If256609a1f561b957378010d88120f5aaf94a45e Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Unexport private classes that are no longer used outside QtWidgetsVolker Hilsheimer2020-06-083-6/+3
| | | | | | | | Address ### Qt 6 comments for QFramePrivate, QAbstractScrollAreaPrivate, and QGraphicsTransformPrivate. Change-Id: I9407c03247c7ea41decce6f9c289c16ad8bf0c3f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Phase 2 of removing QDesktopWidgetVolker Hilsheimer2020-06-0841-398/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove QDestopWidget public header, simplify the implementation that maintains a Qt::Desktop type QWidget for each QScreen, and turn QWidget's initial target screen into a QScreen pointer. QApplication::desktop() now takes an optional QScreen pointer, and returns a QWidget pointer, so that applications and widgets can get access to the root widget for a specific screen without having to resort to private APIs. QDesktopWidgetPrivate implementations to look up a screen for an index, widget, or point are now all inline functions that thinly wrap QGuiApplication::screens/screenAt calls. We should consider adding those as convenience APIs to QScreen instead. Note that QWidget::screen is assumed to return a valid pointer; there is code that handles the case that it returns nullptr (but also code that trusts that it never is nullptr), so this needs to be defined, verified with tests, and asserted. We can then simplify the code further. Change-Id: Ifc89be65a0dce265b6729feaf54121c35137cb94 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Replace calls to deprecated QEvent accessor functionsShawn Rutledge2020-06-0850-358/+358
| | | | | | | Many of these were generated by clazy using the new qevent-accessors check. Change-Id: Ie17af17f50fdc9f47d7859d267c14568cc350fd0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix build without features.menubarTasuku Suzuki2020-06-082-1/+9
| | | | | Change-Id: If7ad6f4c50936d2abf8b88859cb3a8a6189df152 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QAbstractItemModel: remove deprecated setRoleNames()Christian Ehrlicher2020-06-072-6/+15
| | | | | | | Remove setRoleNames() and all its now unneeded helper functions. Change-Id: I0a83751aace35700655d4cc7c79278325994cbdd Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Remove winrtOliver Wolff2020-06-0615-46/+30
| | | | | | | | | Macros and the await helper function from qfunctions_winrt(_p).h are needed in other Qt modules which use UWP APIs on desktop windows. Task-number: QTBUG-84434 Change-Id: Ice09c11436ad151c17bdccd2c7defadd08c13925 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove unused function pointers in QVariant::HandlerLars Knoll2020-06-061-6/+1
| | | | | | Task-number: QTBUG-84635 Change-Id: Icfbd1aae26b0453426d93e0af64d84d6403b8e3b Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Fix build without features.shortcutTasuku Suzuki2020-06-051-0/+2
| | | | | Change-Id: I5b0d3b169c7adb3ee340df7b593f84167f1ccc0c Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix build without features.completerTasuku Suzuki2020-06-051-0/+2
| | | | | Change-Id: Icaed1963d6306e36653d01ad9d05b68cb50717e5 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix to crash in QWindow::event when delete this called on closeEventMiika Pernu2020-06-041-2/+6
| | | | | | | | | | | | | Starting from Qt 5.11 QWindow::event is called after QDialog::closeEvent which would cause a crash if "delete this" was called on closeEvent. The commit that changed this was e0b5ff4ad583befbecbcbe462998e3ed80899531. Added a check before QWindow::event call utilizing QPointer to prevent the function call in case object is destroyed by a user in close event handler. Change-Id: I64a4a0f3271714e55bf7e806177f0d8b39b67fa3 Fixes: QTBUG-84222 Pick-to: 5.15 5.12 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QLabel: create the text control when getting polished, if necessaryVolker Hilsheimer2020-06-041-0/+3
| | | | | | | | | | | | This amends 7bee4e9cb3750be4573e1872f52023081b014500, and makes sure that the text control is created even if the attributes that define whether it's needed are changed after a call to setText or setTextInteractionFlags, where it is otherwise created. Task-number: QTBUG-84080 Pick-to: 5.15 Change-Id: I3be27f35bc83944948027345535d1202a7b97163 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Remove the deprecated QDirModelVolker Hilsheimer2020-06-0411-1625/+10
| | | | | | | | | QFileSystemModel is the documented replacement. It uses threads to populate the model, which QDirModel doesn't. Change-Id: I7818ecd8f849eb566ac176612f382e17a0471c47 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix build without features.actionTasuku Suzuki2020-06-042-1/+2
| | | | | Change-Id: Ie37036e44da9b552dc7e46ce94db7b50ce2f8a0b Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix build without features.menuTasuku Suzuki2020-06-043-3/+7
| | | | | | | qaction_widgets.cpp needs qwidget_p.h for qWidgetShortcutContextMatcher. Change-Id: I9144a4158af2f25f20b6f13badd0ddcd50075b67 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Doc: Fix issues with Qt Widgets documentation configurationTopi Reinio2020-06-021-2/+2
| | | | | | | | Remove '/' as an example directory. We do not want to retrieve the directory tree of the entire system. Change-Id: I911f8eea12b4960319a9a4cbea820b910a35aede Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Document how to use CMake for Qt WidgetsKai Koehne2020-05-317-87/+21
| | | | | | Task-number: QTBUG-73058 Change-Id: Ida459635e159334a4ef67979c0d28b1553317ea9 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix UB in QGraphicsScene::wheelEvent()Lars Knoll2020-05-291-1/+2
| | | | | | | | | | | operator--() would iterate before begin() if the list was empty. This is UB, and will crash in Qt 6, where begin()/end() can return an iterator pointing to a nullptr if the list is empty. Change-Id: I39c3a8ebb09fcad75d42019b02426ac5ac05eed9 Reviewed-by: Alex Blasche <alexander.blasche@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Export the highlighter function so that we can use it in QtSvgWidgetsVolker Hilsheimer2020-05-291-4/+1
| | | | | | | That allows us to remove the copy of that function in QtSvgWidgets. Change-Id: I99d54408781c99b877c4df8fc9fc5f4139dcebb2 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QTableWidget: simplify QTableWidgetSelectionRangeChristian Ehrlicher2020-05-282-47/+17
| | | | | | | | Simplify QTableWidgetSelectionRange by removing the unneeded user-defined functions - the compiler can generate them by it's own. Change-Id: Ia96ea29f595851e58c5b714bb316174406d42b8e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix QTabBar crash with offscreen platform pluginFilipe Azevedo2020-05-261-0/+2
| | | | | | | | | The offscreen implementation does not have a QPlatformNativeInterface implementation. Pick-to: 5.15 Change-Id: Ife4f296f52c307a2fab90de2cdc1ef0cc7796385 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* allow definition of SP_LineEditClearButton in cssMartin Koller2020-05-252-0/+6
| | | | | | | Added the new css property lineedit-clear-button-icon Change-Id: I4596b923eb34325a73d0a80b72d963fd6204ea26 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QListWidget: remove unused memberChristian Ehrlicher2020-05-231-1/+0
| | | | | | | Remove the 'dummy' member - it's not needed since ages. Change-Id: I4869cf9153c892ea065340335ff7accd529a79c6 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Licenses: Remove reference to change in Qt 5.4Kai Koehne2020-05-221-3/+2
| | | | | | | Qt 5.4 is not documented anymore since quite some time. Change-Id: I6811ead502178f7acbed8cf450e42d7fd33ae29b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* CMake: Generate information about 3rdparty libs in module .pri filesJoerg Bornemann2020-05-191-1/+1
| | | | | | | | | | | | | For modules that are not yet ported to CMake and that use QMAKE_USE += libfoo we need to provide the information about libfoo in the qt_lib_XXX.pri files. Also, we now generate qt_ext_XXX.pri files for bundled 3rdparty libs. Task-number: QTBUG-75666 Change-Id: I9e4b057a197554ecb37c294c0bf09e2a2b3aa053 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* QTreeView: Use devicePixelRatioF for cached animation pixmapKai Uwe Broulik2020-05-191-2/+2
| | | | | | | | Ensures it stays crisp also when using fractional scaling. Change-Id: I4a319929bca0e2dc4810c2c07d06f98b7f4e10b4 Pick-to: 5.15 Reviewed-by: Liang Qi <liang.qi@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devLiang Qi2020-05-181-5/+2
|\ | | | | | | | | | | | | Conflicts: src/corelib/text/qbytearray.cpp Change-Id: I63706409464d31391012bacdadfd1f6300509787
| * Revert "note QFileDialog::setNameFilters() is not supported on Android"Assam Boudjelthia2020-05-121-5/+2
| | | | | | | | | | | | | | | | | | | | | | This reverts commit 9802b93cc76de8a033a9806383c1631f36225931. The commit dbaf62033af3fdd7998c108246d0d96416595605 allows using nameFilters on Android platforms. Task-number: QTBUG-83089 Change-Id: I7b57cd0423c41e7527ce7a650626b602ea9b587d Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* | Reduce QDesktopWidget API to bare minimumVolker Hilsheimer2020-05-1518-564/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The class is documented as obsolete, and the majority of APIs is marked as deprecated. In this first phase, remove all explicitly deprecated APIs and trivial implementations. The test case is complete removed; what's left when code that uses any of those deprecated methods is removed is not testing anything meaningful. For some methods, there is no practical replacement using QScreen yet, and QDesktopWidget is still used in QWidget internals. Those require refactoring to only use QScreen before the rest can be removed. Change-Id: I8f7c968ec566820077221d37b817843758d51d49 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Deprecate QGuiApplication::paletteChanged() signalAndy Shaw2020-05-151-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than have a paletteChanged() signal which can be connected to for tracking when the application palette has changed, then it is better to use the event that is sent to all windows and the application itself. That way it is easy for a window/widget or item that cares about the change to the application font to catch it in the event() function. [ChangeLog][QtGui][QGuiApplication] Deprecated paletteChanged() signal in favor of QEvent::ApplicationPaletteChanged. Change-Id: I95da211e30590e357007cc14d8ee266baceba7b3 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Use correct order of arguments when calling QCalendar::daysInMonth()Andy Shaw2020-05-151-5/+5
| | | | | | | | | | | | | | Change-Id: Ic4e30d8ffea80c1dc1dc8da1f97f4bb0d21b63e3 Pick-to: 5.15 Fixes: QTBUG-83870 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Add an option to set the alignment of the text in QComboBoxAndy Shaw2020-05-156-6/+18
| | | | | | | | | | | | Change-Id: Ic9dca8864643302b2b3ff7dbd86260efdb0ab1d5 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QLabel: lay out text using a text control when label can get focusVolker Hilsheimer2020-05-151-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QLabel ensures a text control in its focusInEvent, and from that point on lays the text out using the control. A label with text control will place the text so that there is space for a cursor and text selection, resulting in text shifting when a label receives focus without having had a text control before. Instead of creating the control only on focusIn, ensure that it's created for any QLabel that can receive focus. Change-Id: I26c9df3affa08f2360ad4b94de43bd85e2e2e164 Fixes: QTBUG-84080 Pick-to: 5.15 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | Remove QTextCodec dependency from QTextBrowserLars Knoll2020-05-141-11/+8
| | | | | | | | | | | | | | | | | | | | | | Use QStringConverter instead to convert HTML to a QString. This limits the amount of supported encodings to UTF based encodings and Latin1. This is ok, as anything but utf8 is strongly discouraged by the HTML spec anyway, and the support we have with this change does cover ~98% of all real world HTML. Change-Id: Ia610d327624b083c23d3c604aee70517a4a5eb6a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QApplication: refactor delivery and propagation of wheel eventsVolker Hilsheimer2020-05-131-59/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle wheel grabbing via wheel_widget in a single place, and propagate events in the same way for all (spontaneous) events. Handle ScrollMomentum the same way as ScrollUpdate to allow partial sequences. Fix the incorrect ignoring of wheel events by default; like all other input events, they are now again accepted by default and ignored in the default event handler implementation of QWidget. This way, implementing the handle suffices to accept the event. Note that QWidget::wheelEvent doesn't need to be changed, as the event is ignored there today (an oversight of the change made in f253f4c3, perhaps). This also fixes changing of direction of a wheel event while the event sequence is grabbed by a widget. Change-Id: Ia0f03c14dede80322d690ca50d085898a0497dbe Fixes: QTBUG-67032 Task-number: QTBUG-79102 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Remove obsolete storage, constructors and accessors in QEvent subclassesShawn Rutledge2020-05-122-20/+0
| | | | | | | | | | Change-Id: I5c51244031ff40f1972106ad4fe27010c8be1193 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Fix potential memory leak by adding a virtual destructor to AnchorVertexVolker Hilsheimer2020-05-121-17/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The subclass AnchorVertexPair is allocated and passed around as pointers to AnchorVertex, and placed in lists that are then later cleaned up via qDeleteAll. This very likely results in memory leaks, as the compiler- generated ~AnchorVertexPair destructor is never called. Add a virtual destructor. Since there now is a vtable generated for AnchorVertex, remove the m_type member (which is only used for string generation in debug builds) and make toString virtual instead. Change-Id: I2cf184c0b1da1bd59b056a0f696a0e5479d4cb4e Fixes: QTBUG-84094 Coverity-Id: 218707 Pick-to: 5.15 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Make qtbase compile without QT_CONFIG(timezone)Andrei Golubev2020-05-111-1/+4
| | | | | | | | | | | | | | | | Fixes: QTBUG-83795 Pick-to: 5.15 Change-Id: I05eaaf57d87a9111d3609ebab81bc707f8af98f0 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Remove dead code from src/widgetsVolker Hilsheimer2020-05-1133-268/+14
| | | | | | | | | | | | | | | | Code that's removed via QT_VERSION(6, 0, 0) check is already no longer compiled. Change-Id: I70865f330a6260ac2e9cf2770d599a5b6f7bb7d4 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | QGraphicsAnchorLayout: port to QHVContainer [4/4]: sweep Orientation -> ↵Marc Mutz2020-05-093-76/+73
| | | | | | | | | | | | | | | | | | | | Qt::Orientation This part of the patch changes all remaining occurrences of the local versions of Orientation to Qt::Orientation. Change-Id: Ic9ec19b8f069f614061f319abd30841e10cdd626 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>