From 5afc431323454225363dae30e67a1cb909086bf9 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Fri, 16 Oct 2015 13:09:46 +0200 Subject: Use Node::name if Node::logicalModuleName is empty for qml modules Change-Id: I55693a4f34f0a89ceb326b5eb4b229dd3f91c172 Reviewed-by: Martin Smith --- src/tools/qdoc/qdocindexfiles.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/tools/qdoc/qdocindexfiles.cpp b/src/tools/qdoc/qdocindexfiles.cpp index 8961ff71ad..226280132f 100644 --- a/src/tools/qdoc/qdocindexfiles.cpp +++ b/src/tools/qdoc/qdocindexfiles.cpp @@ -900,6 +900,9 @@ bool QDocIndexFiles::generateIndexSection(QXmlStreamWriter& writer, if (node->isQmlModule()) { logicalModuleName = node->logicalModuleName(); logicalModuleVersion = node->logicalModuleVersion(); + if (logicalModuleName.isEmpty()) { + logicalModuleName = node->name(); + } if (!logicalModuleName.isEmpty()) { writer.writeAttribute("qml-module-name", logicalModuleName); if (node->isQmlModule()) -- cgit v1.2.3 From 1811e31cdbce08ce59eb673fa64a43192006afd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Str=C3=B8mme?= Date: Fri, 29 May 2015 17:23:37 +0200 Subject: Android: Improve the way we update layout params for native views. Removing and adding a view each time the layout parameters changes is triggering unnecessary layout updates. The affect of this is not very visible since there are few views in the layout, but the procedure is never the less wasteful. Change-Id: I2540ab519b12c6d3e10457e2e518b439118b966d Reviewed-by: BogDan Vatra --- .../qtproject/qt5/android/QtActivityDelegate.java | 9 +++---- .../src/org/qtproject/qt5/android/QtLayout.java | 30 ++++++++++++++++++++++ 2 files changed, 33 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java index ba3ecfecd6..b7190fd4de 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java @@ -312,8 +312,7 @@ public class QtActivityDelegate m_editText.setImeOptions(imeOptions); m_editText.setInputType(inputType); - m_layout.removeView(m_editText); - m_layout.addView(m_editText, new QtLayout.LayoutParams(width, height, x, y)); + m_layout.setLayoutParams(m_editText, new QtLayout.LayoutParams(width, height, x, y), false); m_editText.requestFocus(); m_editText.postDelayed(new Runnable() { @Override @@ -1091,12 +1090,10 @@ public class QtActivityDelegate if (Build.VERSION.SDK_INT < 11 || w <= 0 || h <= 0) { m_activity.openContextMenu(m_layout); } else if (Build.VERSION.SDK_INT < 14) { - m_layout.removeView(m_editText); - m_layout.addView(m_editText, new QtLayout.LayoutParams(w, h, x, y)); + m_layout.setLayoutParams(m_editText, new QtLayout.LayoutParams(w, h, x, y), false); QtPopupMenu.getInstance().showMenu(m_editText); } else { - m_layout.removeView(m_editText); - m_layout.addView(m_editText, new QtLayout.LayoutParams(w, h, x, y)); + m_layout.setLayoutParams(m_editText, new QtLayout.LayoutParams(w, h, x, y), false); QtPopupMenu14.getInstance().showMenu(m_editText); } } diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtLayout.java b/src/android/jar/src/org/qtproject/qt5/android/QtLayout.java index 4d7ca47dde..408636dcf3 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtLayout.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtLayout.java @@ -216,4 +216,34 @@ public class QtLayout extends ViewGroup invalidate(); attachViewToParent(view, index, view.getLayoutParams()); } + + /** + * set the layout params on a child view. + * + * Note: This function adds the child view if it's not in the + * layout already. + */ + public void setLayoutParams(final View childView, + final ViewGroup.LayoutParams params, + final boolean forceRedraw) + { + // Invalid view + if (childView == null) + return; + + // Invalid params + if (!checkLayoutParams(params)) + return; + + // View is already in the layout and can therefore be updated + final boolean canUpdate = (this == childView.getParent()); + + if (canUpdate) { + childView.setLayoutParams(params); + if (forceRedraw) + invalidate(); + } else { + addView(childView, params); + } + } } -- cgit v1.2.3 From 28b57f0e95dfb162064f3b0bd9534725b1070380 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Str=C3=B8mme?= Date: Fri, 12 Jun 2015 15:09:37 +0200 Subject: Android: Don't show the VK when the state is set to HIDDEN by the user. Don't call showSoftInput() if the state is set to _HIDDEN or _ALWAYS_HIDDEN by the user. Task-number: QTBUG-46528 Change-Id: I5dbaf612cf4f339c5288d6d3292c27cc6217f3af Reviewed-by: BogDan Vatra --- .../org/qtproject/qt5/android/QtActivityDelegate.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java index b7190fd4de..3e55164419 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java @@ -244,12 +244,18 @@ public class QtActivityDelegate if (m_imm == null) return; - if (m_softInputMode == 0 && height > m_layout.getHeight() * 2 / 3) - m_activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); - else if (m_softInputMode == 0) - m_activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); - else + if (m_softInputMode != 0) { m_activity.getWindow().setSoftInputMode(m_softInputMode); + // softInputIsHidden is true if SOFT_INPUT_STATE_HIDDEN or SOFT_INPUT_STATE_ALWAYS_HIDDEN is set. + final boolean softInputIsHidden = (m_softInputMode & WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN) != 0; + if (softInputIsHidden) + return; + } else { + if (height > m_layout.getHeight() * 2 / 3) + m_activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); + else + m_activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); + } int initialCapsMode = 0; int imeOptions = android.view.inputmethod.EditorInfo.IME_ACTION_DONE; -- cgit v1.2.3 From 75efe9a0f35e74119b5c86992aa0220ebe3fe71e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Str=C3=B8mme?= Date: Wed, 17 Jun 2015 17:32:55 +0200 Subject: Android: Remove unused forward declaration. Change-Id: I7c81a542df2a47754c2972a1811c020cd12e2dc2 Reviewed-by: BogDan Vatra --- src/plugins/platforms/android/qandroidplatformscreen.h | 1 - 1 file changed, 1 deletion(-) (limited to 'src') diff --git a/src/plugins/platforms/android/qandroidplatformscreen.h b/src/plugins/platforms/android/qandroidplatformscreen.h index 403d6036f0..f4f9cedb70 100644 --- a/src/plugins/platforms/android/qandroidplatformscreen.h +++ b/src/plugins/platforms/android/qandroidplatformscreen.h @@ -49,7 +49,6 @@ QT_BEGIN_NAMESPACE class QAndroidPlatformWindow; -class QAndroidPlatformBackingStore; class QAndroidPlatformScreen: public QObject, public QPlatformScreen, public AndroidSurfaceClient { -- cgit v1.2.3 From 14709d097fbc0b87be4a1ba5c7a09a40b5ae23e2 Mon Sep 17 00:00:00 2001 From: Tim Blechmann Date: Fri, 16 Oct 2015 10:35:07 +0200 Subject: Fix QCFSocketNotifier in namespaced Qt builds MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Without QT_BEGIN/END_NAMESPACE, the qt_mac_socket_callback is not resolved as a friend function of QCFSocketNotifier, which is required due to access to private members of QCFSocketNotifier. Change-Id: Ief89e18f8b4f7fc4cb013a33959db1dd90eb9efe Reviewed-by: Tor Arne Vestbø --- src/platformsupport/cfsocketnotifier/qcfsocketnotifier.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/platformsupport/cfsocketnotifier/qcfsocketnotifier.cpp b/src/platformsupport/cfsocketnotifier/qcfsocketnotifier.cpp index c58e0ea78d..b3a85292d0 100644 --- a/src/platformsupport/cfsocketnotifier/qcfsocketnotifier.cpp +++ b/src/platformsupport/cfsocketnotifier/qcfsocketnotifier.cpp @@ -36,6 +36,7 @@ #include #include +QT_BEGIN_NAMESPACE /************************************************************************** Socket Notifiers @@ -301,3 +302,6 @@ void QCFSocketNotifier::enableSocketNotifiers(CFRunLoopObserverRef ref, CFRunLoo } } } + +QT_END_NAMESPACE + -- cgit v1.2.3 From 13b1c23f8b2cdf283703a75f475ddcf06653bf7e Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 19 Oct 2015 16:24:50 +0200 Subject: QLineEdit: Fix visibility handling of side widgets. Compare against isVisibleTo() in QLineEditIconButton::actionEvent() so that action events received before show() are handled correctly. Fix a regression introduced by change 4dccb2ca674e9eafca65da0775254932102c7f4b for handling action events causing side widgets to overlap when added before the widget was shown. Use QAction::isVisible() to determine visibility. Task-number: QTBUG-48806 Task-number: QTBUG-48899 Task-number: QTBUG-39660 Change-Id: I7a39a3b9a094f2c74cde09544f1158deb2b81cf2 Reviewed-by: David Faure --- src/widgets/widgets/qlineedit_p.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp index 6645a375a7..e24cc8a03a 100644 --- a/src/widgets/widgets/qlineedit_p.cpp +++ b/src/widgets/widgets/qlineedit_p.cpp @@ -329,7 +329,7 @@ void QLineEditIconButton::actionEvent(QActionEvent *e) switch (e->type()) { case QEvent::ActionChanged: { const QAction *action = e->action(); - if (isVisible() != action->isVisible()) { + if (isVisibleTo(parentWidget()) != action->isVisible()) { setVisible(action->isVisible()); if (QLineEdit *le = qobject_cast(parentWidget())) static_cast(qt_widget_private(le))->positionSideWidgets(); @@ -433,13 +433,13 @@ void QLineEditPrivate::positionSideWidgets() QRect widgetGeometry(QPoint(QLineEditIconButton::IconMargin, (contentRect.height() - iconSize.height()) / 2), iconSize); foreach (const SideWidgetEntry &e, leftSideWidgetList()) { e.widget->setGeometry(widgetGeometry); - if (e.widget->isVisible()) + if (e.action->isVisible()) widgetGeometry.moveLeft(widgetGeometry.left() + delta); } widgetGeometry.moveLeft(contentRect.width() - iconSize.width() - QLineEditIconButton::IconMargin); foreach (const SideWidgetEntry &e, rightSideWidgetList()) { e.widget->setGeometry(widgetGeometry); - if (e.widget->isVisible()) + if (e.action->isVisible()) widgetGeometry.moveLeft(widgetGeometry.left() - delta); } } -- cgit v1.2.3 From b29d18f7366d09c7efe85bbad638159879b29406 Mon Sep 17 00:00:00 2001 From: Topi Reinio Date: Wed, 22 Jul 2015 13:09:58 +0200 Subject: Doc: Edit description of QSslSocket::AddCaCertificates() The QSslSocket::addCaCertificates() variant that takes a path argument uses QSslCertificate::fromPath() in its implementation. Edit the description of the former to match that of the latter. Fix minor issues in QSslCertificate::fromPath() documentation; add a missing word, limit code snippet line width. Task-number: QTBUG-47359 Change-Id: Ibead74c998503e60a67d0b8eb551536bd20feff8 Reviewed-by: Venugopal Shivashankar Reviewed-by: Timur Pocheptsov Reviewed-by: Richard J. Moore --- src/network/doc/snippets/code/src_network_ssl_qsslcertificate.cpp | 3 ++- src/network/ssl/qsslcertificate.cpp | 4 ++-- src/network/ssl/qsslsocket.cpp | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/network/doc/snippets/code/src_network_ssl_qsslcertificate.cpp b/src/network/doc/snippets/code/src_network_ssl_qsslcertificate.cpp index 8abae00b4e..d157af737c 100644 --- a/src/network/doc/snippets/code/src_network_ssl_qsslcertificate.cpp +++ b/src/network/doc/snippets/code/src_network_ssl_qsslcertificate.cpp @@ -39,7 +39,8 @@ ****************************************************************************/ //! [0] -foreach (const QSslCertificate &cert, QSslCertificate::fromPath("C:/ssl/certificate.*.pem", QSsl::Pem, +foreach (const QSslCertificate &cert, QSslCertificate::fromPath("C:/ssl/certificate.*.pem", + QSsl::Pem, QRegExp::Wildcard)) { qDebug() << cert.issuerInfo(QSslCertificate::Organization); } diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp index 6f91ccdb4d..22d66770e5 100644 --- a/src/network/ssl/qsslcertificate.cpp +++ b/src/network/ssl/qsslcertificate.cpp @@ -446,8 +446,8 @@ QByteArray QSslCertificate::digest(QCryptographicHash::Algorithm algorithm) cons /*! Searches all files in the \a path for certificates encoded in the - specified \a format and returns them in a list. \e must be a file or a - pattern matching one or more files, as specified by \a syntax. + specified \a format and returns them in a list. \a path must be a file + or a pattern matching one or more files, as specified by \a syntax. Example: diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index 092a414f99..9b5d90225f 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -1312,8 +1312,8 @@ QList QSslSocket::supportedCiphers() /*! Searches all files in the \a path for certificates encoded in the specified \a format and adds them to this socket's CA certificate - database. \a path can be explicit, or it can contain wildcards in - the format specified by \a syntax. Returns \c true if one or more + database. \a path must be a file or a pattern matching one or more + files, as specified by \a syntax. Returns \c true if one or more certificates are added to the socket's CA certificate database; otherwise returns \c false. -- cgit v1.2.3