diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-11-08 14:16:41 +0100 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-11-08 14:16:42 +0100 |
commit | 9c05807b951167bc0c8385811c9df1bd9d48ca6d (patch) | |
tree | ce5b69e5830c7edaf9014776049038c45dd90c44 | |
parent | dc62583e8e1f864b8a22fbe79f9fe25ca3a4e9dc (diff) | |
parent | c8dd650616278fda0f79bd237833de1ade5d947a (diff) |
Merge remote-tracking branch 'origin/5.13' into 5.14
Change-Id: I551670d92af2bc96d5d8b8724bf5b280e94498c7
-rw-r--r-- | src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc | 7 | ||||
-rw-r--r-- | src/quicktemplates2/qquickapplicationwindow.cpp | 3 | ||||
-rw-r--r-- | src/quicktemplates2/qquickcontrol.cpp | 8 | ||||
-rw-r--r-- | src/quicktemplates2/qquicklabel.cpp | 5 | ||||
-rw-r--r-- | src/quicktemplates2/qquicktextarea.cpp | 5 | ||||
-rw-r--r-- | src/quicktemplates2/qquicktextfield.cpp | 5 |
6 files changed, 29 insertions, 4 deletions
diff --git a/src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc b/src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc index 27731e42..75e59f42 100644 --- a/src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc +++ b/src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc @@ -78,6 +78,13 @@ from highest to lowest. That is, using QQuickStyle to set the style will always take priority over using the command line argument, for example. + \warning When resolving a given style name to an absolute path, QQuickStyle + may search the root resource directory (\c {:}). Consequently, make sure + that your resource directories are named differently than the names of the + styles that your application supports. Otherwise, the styles may not load. + For example, avoid naming a resource directory \c :/material + (or \c {:/Material}) if the application supports the Material style. + \section2 Using QQuickStyle in C++ \l QQuickStyle provides C++ API for configuring a specific style. The following diff --git a/src/quicktemplates2/qquickapplicationwindow.cpp b/src/quicktemplates2/qquickapplicationwindow.cpp index 0d05bee7..19f6f82b 100644 --- a/src/quicktemplates2/qquickapplicationwindow.cpp +++ b/src/quicktemplates2/qquickapplicationwindow.cpp @@ -684,6 +684,9 @@ void QQuickApplicationWindow::setFont(const QFont &font) return; QFont resolvedFont = font.resolve(QQuickTheme::font(QQuickTheme::System)); + // See comment in QQuickControlPrivate::inheritFont + if (font.families().isEmpty()) + resolvedFont.setFamilies(QStringList()); d->setFont_helper(resolvedFont); } diff --git a/src/quicktemplates2/qquickcontrol.cpp b/src/quicktemplates2/qquickcontrol.cpp index e156fb57..0ebaf9a3 100644 --- a/src/quicktemplates2/qquickcontrol.cpp +++ b/src/quicktemplates2/qquickcontrol.cpp @@ -549,7 +549,13 @@ void QQuickControlPrivate::inheritFont(const QFont &font) parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve()); const QFont defaultFont = q->defaultFont(); - const QFont resolvedFont = parentFont.resolve(defaultFont); + QFont resolvedFont = parentFont.resolve(defaultFont); + // Since resolving the font will put the family() into the + // families() list if it is empty then we need to unset it + // so it does not act as if the font has changed (when it + // has not actually changed) + if (defaultFont.families().isEmpty()) + resolvedFont.setFamilies(QStringList()); setFont_helper(resolvedFont); } diff --git a/src/quicktemplates2/qquicklabel.cpp b/src/quicktemplates2/qquicklabel.cpp index 124483fb..f3e0d512 100644 --- a/src/quicktemplates2/qquicklabel.cpp +++ b/src/quicktemplates2/qquicklabel.cpp @@ -183,7 +183,10 @@ void QQuickLabelPrivate::inheritFont(const QFont &font) parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve()); const QFont defaultFont = QQuickTheme::font(QQuickTheme::Label); - const QFont resolvedFont = parentFont.resolve(defaultFont); + QFont resolvedFont = parentFont.resolve(defaultFont); + // See comment in QQuickControlPrivate::inheritFont + if (defaultFont.families().isEmpty()) + resolvedFont.setFamilies(QStringList()); setFont_helper(resolvedFont); } diff --git a/src/quicktemplates2/qquicktextarea.cpp b/src/quicktemplates2/qquicktextarea.cpp index f7b8969c..ef59bd93 100644 --- a/src/quicktemplates2/qquicktextarea.cpp +++ b/src/quicktemplates2/qquicktextarea.cpp @@ -253,7 +253,10 @@ void QQuickTextAreaPrivate::inheritFont(const QFont &font) parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve()); const QFont defaultFont = QQuickTheme::font(QQuickTheme::TextArea); - const QFont resolvedFont = parentFont.resolve(defaultFont); + QFont resolvedFont = parentFont.resolve(defaultFont); + // See comment in QQuickControlPrivate::inheritFont + if (defaultFont.families().isEmpty()) + resolvedFont.setFamilies(QStringList()); setFont_helper(resolvedFont); } diff --git a/src/quicktemplates2/qquicktextfield.cpp b/src/quicktemplates2/qquicktextfield.cpp index 56ffc52f..740edff0 100644 --- a/src/quicktemplates2/qquicktextfield.cpp +++ b/src/quicktemplates2/qquicktextfield.cpp @@ -223,7 +223,10 @@ void QQuickTextFieldPrivate::inheritFont(const QFont &font) parentFont.resolve(extra.isAllocated() ? extra->requestedFont.resolve() | font.resolve() : font.resolve()); const QFont defaultFont = QQuickTheme::font(QQuickTheme::TextField); - const QFont resolvedFont = parentFont.resolve(defaultFont); + QFont resolvedFont = parentFont.resolve(defaultFont); + // See comment in QQuickControlPrivate::inheritFont + if (defaultFont.families().isEmpty()) + resolvedFont.setFamilies(QStringList()); setFont_helper(resolvedFont); } |