Commit Graph

120 Commits (df99fbdbedec36aecf5ca67d368966b9dfd9e2e9)

Author SHA1 Message Date
Stephan Binner df99fbdbed Convert features.spinbox to QT_[REQUIRE_]CONFIG
Change-Id: Idecb6927c20ff009795b0ad94bbb7199df98a8f8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-12 18:13:08 +00:00
Stephan Binner 10601aa7d2 Convert features.mdiarea to QT_[REQUIRE_]CONFIG
Change-Id: I6d2ec035a218869aa6595f5848de94ce491d3124
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-11 17:21:35 +00:00
Stephan Binner 79851be729 Convert features.mainwindow to QT_[REQUIRE_]CONFIG
Change-Id: If7efc8c15d8876f5bc5575d48686894ea71bbe62
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-11 17:21:20 +00:00
Stephan Binner dab49434d8 Convert features.scrollarea to QT_[REQUIRE_]CONFIG
Change-Id: Ifc7b0a6b025c282234b4aeaf23daecff8a558236
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:53:08 +00:00
Stephan Binner 314a591461 Convert features.menubar to QT_[REQUIRE_]CONFIG
Change-Id: Idbd4978852fa280dd18a5684469d499da3892126
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 06:40:14 +00:00
Stephan Binner ee29be91c0 Convert features.toolbutton to QT_[REQUIRE_]CONFIG
Change-Id: I4227e1868da21bded76a8ec55996c436c8a8d763
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-08-10 05:37:30 +00:00
Stephan Binner 414026ad9c Convert features.scrollbar to QT_[REQUIRE_]CONFIG
Change-Id: Id6ea899c0fddf0de636701cfdc5f01ba20024976
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-08-10 05:37:17 +00:00
Stephan Binner d1a3e674b6 Convert features.toolbox to QT_[REQUIRE_]CONFIG
Change-Id: I7abfe0166a021c439f6ed4465631ba62660ef001
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-08-10 05:37:13 +00:00
Stephan Binner e029923c60 Convert features.statusbar to QT_[REQUIRE_]CONFIG
Change-Id: Ifc1881388e559d3235df0202ac6d26f78ba2c691
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-08-08 11:42:05 +00:00
Stephan Binner 7964b7468d Convert features.tabbar to QT_[REQUIRE_]CONFIG
Change-Id: Id21a95cbc61b2559a8f517ee60548b61536e3cc4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-07-25 11:24:02 +00:00
Stephan Binner 2d02c4c799 Convert features.dockwidget to QT_[REQUIRE_]CONFIG
Change-Id: I1d4b0268df01f8bc0aec28af52cc4b639a376863
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-07-25 11:23:58 +00:00
Stephan Binner 4d70a501db Convert features.tabwidget to QT_[REQUIRE_]CONFIG
Change-Id: Iab985564fd2069188df01f8ff3e00add86eb86f4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-07-25 11:23:54 +00:00
Stephan Binner 16f375f549 Convert features.itemviews to QT_[REQUIRE_]CONFIG
The QT_NO_ITEMVIEWS queries in corelib/ seem to had no effect at all.

Change-Id: I494ee2309a96b0cf25de18781fc9a675878a2ee9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-07-25 11:23:49 +00:00
Stephan Binner 163863f77d Convert features.combobox to QT_[REQUIRE_]CONFIG
Change-Id: I2f415de8556289a6461a645d559be17089c43c99
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-07-25 11:23:45 +00:00
Stephan Binner 21db5ebea9 Fix warnings for -no-feature-animation
Change-Id: I624e68e96d2a673b36d9519d1189fe4a25e1fbd0
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2017-04-25 09:50:07 +00:00
Liang Qi 0fc569184c Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
	src/platformsupport/fontdatabases/freetype/qfontengine_ft.cpp
	src/platformsupport/fontdatabases/freetype/qfreetypefontdatabase.cpp
	src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp
	src/widgets/widgets/qtabbar.cpp

Change-Id: Iaa9daee5f7a6490d56257a3824730a35751ceb05
2017-04-06 14:16:31 +02:00
Giuseppe D'Angelo ecceaec858 GCC 7: fix -Werror=implicit-fallthrough
More fallthrough-are-errors fixed.

Change-Id: I9a6cb6efe988400ed3f9cb95d1e426dac317e6c4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-04-04 14:26:34 +00:00
Stephan Binner b1a7a7b250 Add feature.dialog
Change-Id: I160d0f270d7f41671459358b9c180d71dd7786d6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-03-22 14:35:46 +00:00
Stephan Binner d08deb0b4a Add feature.abstractbutton
Change-Id: Ie93c6d0a8256bc466d3419408b753d5f3738aa6b
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-13 08:57:54 +00:00
Paul Olav Tvete f8218637e9 Build fix for -no-feature-slider
Change-Id: Ibd7d0c2182c6a11f6d595b6d1015ee7de2d35866
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-09 10:51:42 +00:00
Stephan Binner b53d7664c9 Add feature.abstractslider
Change-Id: Ib5d0186162fc3b750e6440c74b1181787093ef97
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2017-03-08 12:05:43 +00:00
Marc Mutz da730c90a3 QStyleSheetStyle: introduce class Tampered<QPalette|QFont>
... as a replacement for two QPairs and move some common
QFont/QPalette functionality into it.

Change-Id: Iaab92130dd54eaa7900ac2048014a80cbd04bfb6
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2017-03-08 07:19:53 +00:00
Stephan Binner 0884e42410 Add feature.checkbox
Change-Id: Ib387390b796c3cab6de4ce94e0d217280a300df8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-06 20:34:58 +00:00
Stephan Binner dc2512f308 Add feature.label and feature.formlayout
Change-Id: Ic8dc0aee7f3fc0d8218ba709352b1378078c6070
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-03 20:34:58 +00:00
Stephan Binner fd08361ad3 Add feature.radiobutton
Change-Id: Ie11f178ce22e2fafdfdf1760288e90563569e0cb
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-03 09:21:33 +00:00
Marc Mutz 46d4dc8afb QStyleSheetStyle: optimize away triple key lookup
Instead of contains()/value()/remove(), all of which perform a new
lookup, and a new application of qHash(), get an iterator using
find(), deref it, then pass it to erase().

Also add some optimistic std::move().

Change-Id: I27a623dcd974de9c67d11d030e9b98d7598efc93
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2017-02-24 08:03:12 +00:00
Paul Olav Tvete bec3658e19 Fix build with -no-feature-animation
Change-Id: Ieecb9cdbf4373e295148ae5b3d59c43aaf46175e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-01-30 11:39:08 +00:00
Paul Olav Tvete 2ac7fb78b9 Fix styles compilation with features removed, round 2
Change-Id: I8f09a8844e5edc1ad3e3dfd39eca9f3b42c5c828
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-01-25 14:37:54 +00:00
Paul Olav Tvete 27792ea098 Fix style compilation with -no-feature-...
Change-Id: Ic7fadf0622f98d339322a4a1d4d5c36908f4f7f6
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-01-25 10:33:36 +00:00
Paul Olav Tvete d82e23e775 Make sure features are defined before testing them
Include the file defining the feature before testing whether
the feature exists. Also use the new feature macro to make
sure this bug doesn't happen again.

Change-Id: I204836fee59b143a7ce7d256a7aed223c4d0ceb1
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-01-25 10:33:27 +00:00
Marc Mutz 1d1b60dee4 QStylesheetStyle: don't lose precision when drawing a progress bar
When qreal is float, it cannot represent all values an int can take,
so we may lose precision in the expression

  qreal(a) / b

as opposed to the double result

  double(a) / b

For lack of trying, I do not know of a value where this would change
the resulting 'fillWidth' value, but better be safe than sorry, and
use double instead of qreal arithmetic.

Also, when calculating fillRatio, we were converting values back and
forth between qreal and double. Using double everywhere avoids that.

Found while reviewing integer arithmetic in QProgressBar as part of
the fix for QTBUG-57857.

Change-Id: I054cb11d35e3ecf5bf79b5c8ee39029bd23bcf49
Reviewed-by: David Faure <david.faure@kdab.com>
2017-01-07 10:48:45 +00:00
Lambert Duijst 00c9ec63a5 Fix for horizontal scrollbars
Horizontal scrollbars scroll in the wrong direction when the app
has a stylesheet and the LayoutDirection is RightToLeft.

Change-Id: I860cb733709e8d59a7b844f2b6ed1ee63410956e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-12-13 00:42:09 +00:00
Tor Arne Vestbø 6a35e77ef3 Change confusing Q_DEAD_CODE_FROM_QT4_FOO define
Commit c5db8fc74 changed all instances of Q_WS_FOO to have the prefix
Q_DEAD_CODE_FROM_QT4 instead, to make it clearer when reading the code
that the code in question was a left-over from Qt4, when we used
Q_WS_ defines instead of Q_OS_ defines.

This worked well for cases of #ifdef Q_DEAD_CODE_FROM_QT4, but less so
for cases of #ifndef Q_DEAD_CODE_FROM_QT4, where the code was actually
unconditionally included.

To make this even clearer, the defines have been replaced by checks for
1 or 0, with a comment describing how the code used to look in Qt4. The
use of constants in the check also makes it easier for editors to parse
the condition and show visually that the code is defined out.

Change-Id: I152070d87334df7259b417cd5e17d7b7950379b7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-10-14 08:19:29 +00:00
Liang Qi d892e6f721 Merge remote-tracking branch 'origin/5.7' into 5.8
Conflicts:
	mkspecs/features/qt_common.prf
	src/plugins/platforms/windows/qwindowsdialoghelpers.cpp

Change-Id: I03b92b6b89ecc5a8db7c95f04ebb92ed198098a8
2016-09-05 18:47:27 +02:00
Liang Qi 657c2bfbec Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts:
	tests/auto/testlib/selftests/generate_expected_output.py

Change-Id: If856162abf9a24ae2c9946d336a7d1da03520fa7
2016-09-05 13:57:12 +02:00
Peng Wu b94111116f Style sheets: detect and apply font set on QHeaderView section
Detect and apply style sheets font set when calculating
QHeaderView section content size and drawing it.

Change-Id: I542cd0d31bbe62f127c509f297eef0a576fec054
Task-number: QTBUG-55597
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2016-09-04 05:12:20 +00:00
Liang Qi 1cc571593a Merge remote-tracking branch 'origin/5.7' into 5.8
cf53aa21bf and 3aaa5d6b32
were reverted because of reconstruction in 5.7.

defineTest(qtConfTest_checkCompiler) in configure.pri is smart
enough to cover the case in a9474d1260.

DirectWrite: Fix advances being scaled to 0

Since 131eee5cd, the stretch of a font can be 0, meaning
"whatever the font provides". In combination with ec7fee96,
this would cause advances in the DirectWrite engine to be scaled to
0, causing the QRawFont test to fail.

Conflicts:
	configure
	mkspecs/features/uikit/device_destinations.sh
	mkspecs/features/uikit/xcodebuild.mk
	src/corelib/global/qglobal.cpp
	src/corelib/global/qnamespace.qdoc
	src/plugins/platforms/cocoa/qcocoamenuitem.h
	src/plugins/platforms/windows/qwindowsservices.cpp
	src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp
	src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp
	src/widgets/kernel/qapplication.cpp
	tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp
	tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp

Change-Id: I4656d8133da7ee9fcc84ad3f1c7950f924432d1e
2016-08-29 15:30:17 +02:00
Liang Qi c7cdf3aac7 Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts:
	src/corelib/mimetypes/qmimeprovider.cpp
	src/corelib/mimetypes/qmimetype.cpp

Change-Id: Ib483ddb6bfc380e7c8f195feca535703814c3872
2016-08-25 16:12:11 +02:00
David Faure 35b871b2b6 QStyleSheetStyle: don't call pixelMetric when not needed
fixupBorder does nothing when bd is null, i.e. hasBorder() returns false.

Change-Id: Ic88e3a793f32bd4ad25830ddad9dbd8100348279
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2016-08-24 20:29:49 +00:00
Liang Qi 2111bf00fe Merge remote-tracking branch 'origin/5.6' into 5.7
Change-Id: I4f4ab05b2de67cd4b1d29b294b96a8c9ffb964b2
2016-08-22 21:58:45 +02:00
Marc Mutz 661b10649a QStyleSheetStyle: remove 167 unneeded relocations
Same change as in QColor (d38f86e50b).

  relocs: -167
  text:  +1296B
  data:  -1984B

(optimized GCC 6.1 Linux AMD64 build). The text size increase means
we pushed the data into an immutable section.

Change-Id: I0ff433714dc23350d1e19893a2e27ff4a0d2ec25
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2016-08-22 06:33:09 +00:00
Allan Sandfeld Jensen 9f888d2fde Support C++17 fallthrough attribute
Replaces our mix of comments for annotating intended absence of break
in switches with the C++17 attribute [[fallthrough]], or its earlier
a clang extension counterpart.

Change-Id: I4b2d0b9b5e4425819c7f1bf01608093c536b6d14
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-08-19 18:38:53 +00:00
Anton Kudryavtsev 9b699fa839 Widgets: use QStringRef to optimize memory allocation
Replace substring functions that return QString with
corresponding functions that return QStringRef where
it's possible.

Create QString from QStringRef only where necessary.

Change-Id: Id1c39093199519f2794b11560c2c0ded2d52b928
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2016-04-06 12:23:37 +00:00
Marc Mutz 26dca142a7 QtWidgets: use new QRect::transposed()
Change-Id: Idfed0ae6b80e301fd32206b2e6d68054460b76de
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-02-13 18:18:53 +00:00
Jani Heikkinen 1a88b2f768 Updated license headers
From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/

Updated license headers to use new LGPL header instead of LGPL21 one
(in those files which will be under LGPL v3)

Change-Id: I046ec3e47b1876cd7b4b0353a576b352e3a946d9
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-01-15 12:25:24 +00:00
Marc Mutz 0325842b99 QtWidgets: use Q_UNLIKELY for every qWarning() (2)
If, after checking a condition, we issue a qWarning(),
by definition that check is unlikely to be true.

Tell the compiler so it can move the error handling
code out of the normal code path to increase the
effective icache size.

This change contains the changes to the accessible/,
effects/, kernel/, styles/ and itemviews/ subdirs.

Moved conditional code around where possible so that
we could always use Q_UNLIKELY, instead of having to
revert to Q_LIKELY here and there.

In QWidgetPrivate::setWindowModified_helper(), as a
drive-by, I swapped the evaluation order of an
&&-expression (newly wrapped in Q_UNLIKELY) to be
more readable and more efficient (cheaper check
first) at the same time.

In qDraw* (qdrawutil.cpp), simplified boolean
expressions (sometimes by skipping re-checking
conditions already checked in a previous guard clause).

Change-Id: I58be22be0a33522c2629a66c2f6c795771a99f3f
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-25 16:27:11 +00:00
Liang Qi 4159ee8405 Merge remote-tracking branch 'origin/5.6' into dev
Conflicts:
	config.tests/unix/ptrsize.test
	configure
	src/corelib/global/qnamespace.h
	src/network/socket/qabstractsocket.cpp
	tests/auto/other/networkselftest/networkselftest.pro

Change-Id: Ic78abb4a34f9068567cea876861d4220f5a07672
2015-11-04 20:18:14 +01:00
Marc Mutz ad0bc42d00 QStyleSheetStyle: remove use of obsolete QStyleOption*V<N>
They are obsolete since Qt 5.0.

Change-Id: I3bf9926fada136dda7406dc5f7b8edb3c71b55a9
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-03 16:11:58 +00:00
Aaron Kennedy 7293200ace Add attribute to enable font and palette propagation in QSS.
By default when using Qt Style Sheets, a widget does not inherit its
font and palette from its parent widget. With the
Qt::AA_UseStyleSheetPropagationInWidgetStyles application attribute set,
propagation when using Qt Style Sheets behaves like it does with regular
QWidget::setPalette() and QWidget::setFont() calls.

[ChangeLog][QtWidgets] Added the
Qt::AA_UseStyleSheetPropagationInWidgetStyles attribute which enables
font and palette propagation for Qt Style Sheets.

Task-number: QTBUG-37580
Change-Id: I3038c13d61e32625a1a05291c5394eaefd376a68
Reviewed-by: Samuel Nevala <samuel.nevala@intopalo.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-10 06:44:57 +00:00
Frederik Gladhorn 77da617dc8 Merge remote-tracking branch 'origin/5.5' into dev
Conflicts:
	doc/global/qt-cpp-defines.qdocconf
	src/3rdparty/forkfd/forkfd.c
	src/corelib/codecs/qtextcodec.cpp
	src/corelib/kernel/qmetatype.cpp
	src/corelib/tools/qset.qdoc
	src/gui/accessible/qaccessible.cpp
	src/gui/image/qpixmapcache.cpp
	src/opengl/qgl.cpp
	src/tools/qdoc/generator.cpp
	src/widgets/kernel/qwidget.cpp
	tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp

Change-Id: I4fbe1fa756a54c6843aa75f4ef70a1069ba7b085
2015-08-06 10:54:01 +02:00