Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable
This commit is contained in:
commit
851fae6dbe
11
dist/changes-5.1.0
vendored
11
dist/changes-5.1.0
vendored
@ -88,7 +88,16 @@ QtGui
|
|||||||
QtNetwork
|
QtNetwork
|
||||||
---------
|
---------
|
||||||
|
|
||||||
-
|
- QNetworkAccessManager / QNetworkReply:
|
||||||
|
* Add a new encrypted() signal so that applications can perform
|
||||||
|
additional checks on the certificate chain.
|
||||||
|
- QSslSocket:
|
||||||
|
* Support for sending intermediate certificates when QSslSocket is used
|
||||||
|
as a server, and when using client certificates.
|
||||||
|
- HTTPS internals:
|
||||||
|
* SSL sessions are re-used by default.
|
||||||
|
- QHostInfo:
|
||||||
|
* Allow QHostInfo::lookupHost() with no receiver to warm the DNS cache.
|
||||||
|
|
||||||
QtWidgets
|
QtWidgets
|
||||||
---------
|
---------
|
||||||
|
@ -32,11 +32,10 @@
|
|||||||
# manifestmeta.global.names = *
|
# manifestmeta.global.names = *
|
||||||
# manifestmeta.global.tags = qt5
|
# manifestmeta.global.tags = qt5
|
||||||
|
|
||||||
manifestmeta.filters = highlighted webkit1 webkit2
|
manifestmeta.filters = highlighted webkit1 webkit2 android
|
||||||
|
|
||||||
manifestmeta.highlighted.names = "QtQuick/Qt Quick Demo - Same Game" \
|
manifestmeta.highlighted.names = "QtQuick/Qt Quick Demo - Same Game" \
|
||||||
"QtQuick/Qt Quick Demo - Photo Surface" \
|
"QtQuick/Qt Quick Demo - Photo Surface" \
|
||||||
"QtQuick/Qt Quick Demo - Tweet Search" \
|
|
||||||
"QtQuick/Qt Quick Demo - Maroon*" \
|
"QtQuick/Qt Quick Demo - Maroon*" \
|
||||||
"QtQuick/Qt Quick Demo - Calqlatr" \
|
"QtQuick/Qt Quick Demo - Calqlatr" \
|
||||||
"QtQuick/Qt Quick Particles Examples - Emitters" \
|
"QtQuick/Qt Quick Particles Examples - Emitters" \
|
||||||
@ -70,3 +69,102 @@ manifestmeta.webkit2.names = "QtWebKitExamples/Flickr View Example" \
|
|||||||
"QtWebKitExamples/YouTube View Example"
|
"QtWebKitExamples/YouTube View Example"
|
||||||
|
|
||||||
manifestmeta.webkit2.tags = webkit2
|
manifestmeta.webkit2.tags = webkit2
|
||||||
|
|
||||||
|
manifestmeta.android.names = "QtQuick/Qt Quick Demo - Maroon*" \
|
||||||
|
"QtQuick/Qt Quick Demo - Calqlatr" \
|
||||||
|
"QtWidgets/Application Chooser Example" \
|
||||||
|
"QtWidgets/Stickman Example" \
|
||||||
|
"QtWidgets/Move Blocks Example" \
|
||||||
|
"QtWidgets/Border Layout Example" \
|
||||||
|
"QtWidgets/Dynamic Layouts Example" \
|
||||||
|
"QtWidgets/Flow Layout Example" \
|
||||||
|
"QtWidgets/MDI Example" \
|
||||||
|
"QtWidgets/Dock Widgets Example" \
|
||||||
|
"QtWidgets/Recent Files Example" \
|
||||||
|
"QtWidgets/Menus Example" \
|
||||||
|
"QtWidgets/Concentric Circles Example" \
|
||||||
|
"QtWidgets/Gradients" \
|
||||||
|
"QtWidgets/Font Sampler Example" \
|
||||||
|
"QtWidgets/Path Stroking" \
|
||||||
|
"QtWidgets/Transformations Example" \
|
||||||
|
"QtWidgets/Syntax Highlighter Example" \
|
||||||
|
"QtWidgets/Calendar Example" \
|
||||||
|
"QtWidgets/Movie Example" \
|
||||||
|
"QtWidgets/Validators Example" \
|
||||||
|
"QtWidgets/Analog Clock Example" \
|
||||||
|
"QtWidgets/Calculator Example" \
|
||||||
|
"QtWidgets/Mouse Button Tester" \
|
||||||
|
"QtWidgets/Character Map Example" \
|
||||||
|
"QtWidgets/Wiggly Example" \
|
||||||
|
"QtWidgets/Digital Clock Example" \
|
||||||
|
"QtWidgets/Elided Label Example" \
|
||||||
|
"QtWidgets/Image Viewer Example" \
|
||||||
|
"QtWidgets/Sliders Example" \
|
||||||
|
"QtWidgets/Tetrix Example" \
|
||||||
|
"QtWidgets/Group Box Example" \
|
||||||
|
"QtWidgets/Spin Boxes Example" \
|
||||||
|
"QtWidgets/Undo Framework" \
|
||||||
|
"QtWidgets/Regular Expressions Example" \
|
||||||
|
"QtWidgets/Colliding Mice Example" \
|
||||||
|
"QtWidgets/Basic Graphics Layouts Example" \
|
||||||
|
"QtWidgets/Boxes" \
|
||||||
|
"QtWidgets/40000 Chips" \
|
||||||
|
"QtWidgets/Diagram Scene Example" \
|
||||||
|
"QtWidgets/Drag and Drop Robot Example" \
|
||||||
|
"QtWidgets/Elastic Nodes Example" \
|
||||||
|
"QtWidgets/Pad Navigator Example" \
|
||||||
|
"QtWidgets/Anchor Layout Example" \
|
||||||
|
"QtWidgets/Weather Anchor Layout Example" \
|
||||||
|
"QtConcurrent/Image Scaling Example" \
|
||||||
|
"QtConcurrent/QtConcurrent Progress Dialog Example" \
|
||||||
|
"QtNetwork/Torrent Example" \
|
||||||
|
"QtNetwork/Network Chat Example" \
|
||||||
|
"QtSQL/Master Detail Example" \
|
||||||
|
"QtOpenGL/Cube OpenGL ES 2.0 example" \
|
||||||
|
"QtOpenGL/Textures Example" \
|
||||||
|
"QtLinguist/Arrow Pad Example" \
|
||||||
|
"QtGui/Raster Window Example" \
|
||||||
|
"QtGui/Analog Clock Window Example" \
|
||||||
|
"QtMultimedia/Video Widget Example" \
|
||||||
|
"QtMultimedia/Media Player Example" \
|
||||||
|
"QtSVG/Text Object Example" \
|
||||||
|
"QtQML/Qt Quick Examples - XMLHttpRequest" \
|
||||||
|
"QtQuick/Qt Quick Particles Examples - *" \
|
||||||
|
"QtQuick/Qt Quick Examples - Touch Interaction" \
|
||||||
|
"QtQuick/Scene Graph - *" \
|
||||||
|
"QtQuick/Qt Quick Examples - Image Elements" \
|
||||||
|
"QtQuick/Qt Quick Examples - Key Interaction" \
|
||||||
|
"QtQuick/Qt Quick Examples - Text" \
|
||||||
|
"QtQuick/Qt Quick Examples - Animation" \
|
||||||
|
"QtQuick/Qt Quick Examples - Shader Effects" \
|
||||||
|
"QtQuick/Qt Quick Examples - Canvas" \
|
||||||
|
"QtWidgets/Interview" \
|
||||||
|
"QtWidgets/Spreadsheet" \
|
||||||
|
"QtWidgets/Pixelator Example" \
|
||||||
|
"QtWidgets/Class Wizard Example" \
|
||||||
|
"QtWidgets/Animated Tiles Example" \
|
||||||
|
"QtWidgets/Basic Layouts Example" \
|
||||||
|
"QtWidgets/Application Example" \
|
||||||
|
"QtWidgets/Affine Transformations" \
|
||||||
|
"QtWidgets/Image Composition Example" \
|
||||||
|
"QtWidgets/Basic Drawing Example" \
|
||||||
|
"QtWidgets/Vector Deformation" \
|
||||||
|
"QtWidgets/Painter Paths Example" \
|
||||||
|
"QtWidgets/Text Edit" \
|
||||||
|
"QtWidgets/Style Sheet Example" \
|
||||||
|
"QtWidgets/Code Editor Example" \
|
||||||
|
"QtWidgets/Window Flags Example" \
|
||||||
|
"QtWidgets/Scribble Example" \
|
||||||
|
"QtWidgets/Shaped Clock Example" \
|
||||||
|
"QtWidgets/Line Edits Example" \
|
||||||
|
"QtWidgets/Calendar Widget Example" \
|
||||||
|
"QtWidgets/Completer Example" \
|
||||||
|
"QtWidgets/I18N Example" \
|
||||||
|
"QtQML/Extending QML - Grouped Properties Example" \
|
||||||
|
"QtQML/Extending QML - Methods Example" \
|
||||||
|
"QtQML/Extending QML - Signal Support Example" \
|
||||||
|
"QtQML/Extending QML - Attached Properties Example" \
|
||||||
|
"QtQuick/Qt Quick Examples - Window and Screen" \
|
||||||
|
"QtWidgets/Address Book Example"
|
||||||
|
|
||||||
|
manifestmeta.android.tags = android
|
||||||
|
@ -60,6 +60,17 @@ contains(CMAKE_BIN_DIR, "^\\.\\./.*") {
|
|||||||
CMAKE_BIN_DIR_IS_ABSOLUTE = True
|
CMAKE_BIN_DIR_IS_ABSOLUTE = True
|
||||||
}
|
}
|
||||||
|
|
||||||
|
!isEmpty(DLLDESTDIR):!static:!staticlib {
|
||||||
|
CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX])
|
||||||
|
contains(CMAKE_DLL_DIR, "^\\.\\./.*") {
|
||||||
|
CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/
|
||||||
|
CMAKE_DLL_DIR_IS_ABSOLUTE = True
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
CMAKE_DLL_DIR = $$CMAKE_LIB_DIR
|
||||||
|
CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE
|
||||||
|
}
|
||||||
|
|
||||||
CMAKE_HOST_DATA_DIR = $$cmakeRelativePath($$[QT_HOST_DATA], $$[QT_INSTALL_PREFIX])
|
CMAKE_HOST_DATA_DIR = $$cmakeRelativePath($$[QT_HOST_DATA], $$[QT_INSTALL_PREFIX])
|
||||||
contains(CMAKE_HOST_DATA_DIR, "^\\.\\./.*") {
|
contains(CMAKE_HOST_DATA_DIR, "^\\.\\./.*") {
|
||||||
CMAKE_HOST_DATA_DIR = $$[QT_HOST_DATA]/
|
CMAKE_HOST_DATA_DIR = $$[QT_HOST_DATA]/
|
||||||
|
@ -46,10 +46,10 @@ endmacro()
|
|||||||
macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION)
|
macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION)
|
||||||
set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
|
set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
|
||||||
|
|
||||||
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
|
||||||
set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${LIB_LOCATION}\")
|
set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
|
||||||
!!ELSE
|
!!ELSE
|
||||||
set(imported_location \"IMPORTED_LOCATION_${Configuration}\" \"$${CMAKE_LIB_DIR}${LIB_LOCATION}\")
|
set(imported_location \"IMPORTED_LOCATION_${Configuration}\" \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
|
||||||
!!ENDIF
|
!!ENDIF
|
||||||
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
|
_qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
|
||||||
set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
|
set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
|
||||||
@ -187,22 +187,26 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
|
|||||||
|
|
||||||
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
|
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
|
||||||
!!IF isEmpty(CMAKE_DEBUG_TYPE)
|
!!IF isEmpty(CMAKE_DEBUG_TYPE)
|
||||||
|
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
||||||
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
||||||
!!ELSE
|
!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
|
||||||
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" AND EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
|
||||||
!!ELSE
|
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
||||||
!!ELSE
|
!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
|
||||||
if (EXISTS \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" AND EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
|
||||||
!!ENDIF
|
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" )
|
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" )
|
||||||
|
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
|
||||||
|
if (EXISTS
|
||||||
|
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
|
||||||
|
\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
|
||||||
!!ELSE
|
!!ELSE
|
||||||
|
\"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
|
||||||
|
!!ENDIF
|
||||||
|
AND EXISTS
|
||||||
|
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
||||||
|
\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
||||||
|
!!ELSE
|
||||||
|
\"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
||||||
|
!!ENDIF
|
||||||
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
_populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
||||||
endif()
|
endif()
|
||||||
@ -220,22 +224,26 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
|
|||||||
|
|
||||||
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
|
!!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
|
||||||
!!IF isEmpty(CMAKE_RELEASE_TYPE)
|
!!IF isEmpty(CMAKE_RELEASE_TYPE)
|
||||||
|
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
||||||
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
||||||
!!ELSE
|
!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
|
||||||
if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" AND EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
|
||||||
!!ELSE
|
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
||||||
!!ELSE
|
!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
|
||||||
if (EXISTS \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" AND EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
|
||||||
!!ENDIF
|
|
||||||
!!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
|
|
||||||
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" )
|
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" )
|
||||||
|
!!ELSE // CMAKE_STATIC_WINDOWS_BUILD
|
||||||
|
if (EXISTS
|
||||||
|
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
|
||||||
|
\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
|
||||||
!!ELSE
|
!!ELSE
|
||||||
|
\"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
|
||||||
|
!!ENDIF
|
||||||
|
AND EXISTS
|
||||||
|
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
||||||
|
\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
||||||
|
!!ELSE
|
||||||
|
\"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
||||||
|
!!ENDIF
|
||||||
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
_populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
|
||||||
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
|
||||||
endif()
|
endif()
|
||||||
|
@ -187,9 +187,9 @@ defineTest(qtAddRpathLink) {
|
|||||||
export(QMAKE_RPATHLINKDIR)
|
export(QMAKE_RPATHLINKDIR)
|
||||||
}
|
}
|
||||||
|
|
||||||
# variable, default
|
# variable, default, [suffix for variable for system() use]
|
||||||
defineTest(qtPrepareTool) {
|
defineTest(qtPrepareTool) {
|
||||||
$$1 = $$eval(QT_TOOL.$${2}.command)
|
$$1 = $$eval(QT_TOOL.$${2}.binary)
|
||||||
isEmpty($$1) {
|
isEmpty($$1) {
|
||||||
$$1 = $$[QT_HOST_BINS]/$$2
|
$$1 = $$[QT_HOST_BINS]/$$2
|
||||||
exists($$eval($$1).pl) {
|
exists($$eval($$1).pl) {
|
||||||
@ -202,17 +202,26 @@ defineTest(qtPrepareTool) {
|
|||||||
$$1 = $$BUNDLENAME
|
$$1 = $$BUNDLENAME
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$$1 = $$shell_path($$eval($$1))
|
|
||||||
}
|
}
|
||||||
export($$1)
|
!isEmpty(3) {
|
||||||
|
$$1$$3 = $$system_path($$eval($$1))
|
||||||
|
qtAddTargetEnv($$1$$3, QT_TOOL.$${2}.depends, system)
|
||||||
|
}
|
||||||
|
$$1 = $$shell_path($$eval($$1))
|
||||||
|
qtAddTargetEnv($$1, QT_TOOL.$${2}.depends, )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# target variable, list of env var names, [non-empty: prepare for system(), not make]
|
||||||
defineTest(qtAddToolEnv) {
|
defineTest(qtAddToolEnv) {
|
||||||
|
isEmpty(3): \
|
||||||
|
ds = $$QMAKE_DIR_SEP
|
||||||
|
else: \
|
||||||
|
ds = $$DIR_SEPARATOR
|
||||||
for(env, 2) {
|
for(env, 2) {
|
||||||
value = $$eval($${env}.value)
|
value = $$eval($${env}.value)
|
||||||
!isEmpty(value) {
|
!isEmpty(value) {
|
||||||
name = $$eval($${env}.name)
|
name = $$eval($${env}.name)
|
||||||
equals(QMAKE_DIR_SEP, /) {
|
equals(ds, /) {
|
||||||
contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name}
|
contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name}
|
||||||
else: infix =
|
else: infix =
|
||||||
val = "$$name=$$join(value, :)$$infix"
|
val = "$$name=$$join(value, :)$$infix"
|
||||||
@ -222,20 +231,27 @@ defineTest(qtAddToolEnv) {
|
|||||||
else: infix =
|
else: infix =
|
||||||
val = "(set $$name=$$join(value, ;)$$infix) &"
|
val = "(set $$name=$$join(value, ;)$$infix) &"
|
||||||
}
|
}
|
||||||
contains(MAKEFILE_GENERATOR, MS.*): val ~= s,%,%%,g
|
isEmpty(3): !contains(TEMPLATE, vc.*) {
|
||||||
else: val ~= s,\\\$,\$\$,g
|
contains(MAKEFILE_GENERATOR, MS.*): val ~= s,%,%%,g
|
||||||
|
val ~= s,\\\$,\$\$,g
|
||||||
|
}
|
||||||
$$1 = "$$val $$eval($$1)"
|
$$1 = "$$val $$eval($$1)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
export($$1)
|
export($$1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# target variable, dependency var name, [non-empty: prepare for system(), not make]
|
||||||
defineTest(qtAddTargetEnv) {
|
defineTest(qtAddTargetEnv) {
|
||||||
deps = $$replace(QT, -private$, )
|
deps = $$replace($$2, -private$, )
|
||||||
deps = $$resolve_depends(deps, "QT.", ".depends" ".private_depends" ".run_depends")
|
deps = $$resolve_depends(deps, "QT.", ".depends" ".private_depends" ".run_depends")
|
||||||
!isEmpty(deps) {
|
!isEmpty(deps) {
|
||||||
for(dep, deps): \
|
for(dep, deps) {
|
||||||
deppath += $$shell_path($$eval(QT.$${dep}.libs))
|
isEmpty(3): \
|
||||||
|
deppath += $$shell_path($$eval(QT.$${dep}.libs))
|
||||||
|
else: \
|
||||||
|
deppath += $$system_path($$eval(QT.$${dep}.libs))
|
||||||
|
}
|
||||||
equals(QMAKE_HOST.os, Windows) {
|
equals(QMAKE_HOST.os, Windows) {
|
||||||
deppath.name = PATH
|
deppath.name = PATH
|
||||||
} else:contains(QMAKE_HOST.os, Linux|FreeBSD|OpenBSD|NetBSD|DragonFly|SunOS|HP-UX|QNX|GNU) {
|
} else:contains(QMAKE_HOST.os, Linux|FreeBSD|OpenBSD|NetBSD|DragonFly|SunOS|HP-UX|QNX|GNU) {
|
||||||
@ -256,13 +272,18 @@ defineTest(qtAddTargetEnv) {
|
|||||||
pluginpath.value =
|
pluginpath.value =
|
||||||
for(qmod, QMAKEMODULES) {
|
for(qmod, QMAKEMODULES) {
|
||||||
qmod = $$section(qmod, /, 0, -3)/plugins
|
qmod = $$section(qmod, /, 0, -3)/plugins
|
||||||
exists($$qmod): pluginpath.value += $$shell_path($$qmod)
|
exists($$qmod) {
|
||||||
|
isEmpty(3): \
|
||||||
|
pluginpath.value += $$shell_path($$qmod)
|
||||||
|
else: \
|
||||||
|
pluginpath.value += $$system_path($$qmod)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
pluginpath.name = QT_PLUGIN_PATH
|
pluginpath.name = QT_PLUGIN_PATH
|
||||||
|
|
||||||
QT_TOOL_ENV += deppath pluginpath
|
QT_TOOL_ENV += deppath pluginpath
|
||||||
}
|
}
|
||||||
qtAddToolEnv($$1, $$QT_TOOL_ENV)
|
qtAddToolEnv($$1, $$QT_TOOL_ENV, $$3)
|
||||||
}
|
}
|
||||||
|
|
||||||
defineReplace(pkgConfigExecutable) {
|
defineReplace(pkgConfigExecutable) {
|
||||||
|
@ -19,17 +19,17 @@ CONFIG += console
|
|||||||
!build_pass:if(!host_build|!force_bootstrap|force_independent) {
|
!build_pass:if(!host_build|!force_bootstrap|force_independent) {
|
||||||
isEmpty(MODULE):MODULE = $$TARGET
|
isEmpty(MODULE):MODULE = $$TARGET
|
||||||
|
|
||||||
MODULE_DEPENDS = $$replace(QT, -private$, )
|
!host_build|!force_bootstrap: MODULE_DEPENDS = $$replace(QT, -private$, )
|
||||||
|
|
||||||
load(qt_build_paths)
|
load(qt_build_paths)
|
||||||
|
|
||||||
load(resolve_target)
|
load(resolve_target)
|
||||||
cmd = $$shell_path($$QMAKE_RESOLVED_TARGET)
|
|
||||||
!host_build|!force_bootstrap: qtAddTargetEnv(cmd)
|
|
||||||
|
|
||||||
TOOL_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules/qt_tool_$${MODULE}.pri
|
TOOL_PRI = $$MODULE_QMAKE_OUTDIR/mkspecs/modules/qt_tool_$${MODULE}.pri
|
||||||
|
|
||||||
TOOL_PRI_CONT = "QT_TOOL.$${MODULE}.command = $$val_escape(cmd)"
|
TOOL_PRI_CONT = \
|
||||||
|
"QT_TOOL.$${MODULE}.binary = $$QMAKE_RESOLVED_TARGET" \
|
||||||
|
"QT_TOOL.$${MODULE}.depends =$$join(MODULE_DEPENDS, " ", " ")"
|
||||||
write_file($$TOOL_PRI, TOOL_PRI_CONT)|error("Aborting.")
|
write_file($$TOOL_PRI, TOOL_PRI_CONT)|error("Aborting.")
|
||||||
|
|
||||||
# Then, inject the new tool into the current cache state
|
# Then, inject the new tool into the current cache state
|
||||||
@ -39,6 +39,7 @@ CONFIG += console
|
|||||||
unset(added)
|
unset(added)
|
||||||
}
|
}
|
||||||
include($$TOOL_PRI)
|
include($$TOOL_PRI)
|
||||||
cache(QT_TOOL.$${MODULE}.command, transient)
|
for(var, $$list(binary depends)): \
|
||||||
|
cache(QT_TOOL.$${MODULE}.$$var, transient)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
qtPrepareTool(QMAKE_RCC, rcc)
|
qtPrepareTool(QMAKE_RCC, rcc, _DEP)
|
||||||
|
|
||||||
isEmpty(RCC_DIR):RCC_DIR = .
|
isEmpty(RCC_DIR):RCC_DIR = .
|
||||||
isEmpty(QMAKE_MOD_RCC):QMAKE_MOD_RCC = qrc
|
isEmpty(QMAKE_MOD_RCC):QMAKE_MOD_RCC = qrc
|
||||||
@ -19,7 +19,7 @@ resource_combine {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
rcc.commands = $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
rcc.commands = $$QMAKE_RCC $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
||||||
rcc.depend_command = $$QMAKE_RCC -list $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN}
|
rcc.depend_command = $$QMAKE_RCC_DEP -list $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN}
|
||||||
rcc.CONFIG += add_inputs_as_makefile_deps
|
rcc.CONFIG += add_inputs_as_makefile_deps
|
||||||
rcc.input = RESOURCES
|
rcc.input = RESOURCES
|
||||||
rcc.variable_out = SOURCES
|
rcc.variable_out = SOURCES
|
||||||
|
@ -43,7 +43,7 @@ else: check.commands += $(DESTDIR_TARGET)
|
|||||||
check.commands += $(TESTARGS)
|
check.commands += $(TESTARGS)
|
||||||
|
|
||||||
# Add environment for non-installed builds
|
# Add environment for non-installed builds
|
||||||
qtAddTargetEnv(check.commands)
|
qtAddTargetEnv(check.commands, QT)
|
||||||
|
|
||||||
# If the test is marked as insignificant, discard the exit code
|
# If the test is marked as insignificant, discard the exit code
|
||||||
insignificant_test:check.commands = -$${check.commands}
|
insignificant_test:check.commands = -$${check.commands}
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
qtPrepareTool(QMAKE_UIC, uic)
|
qtPrepareTool(QMAKE_UIC, uic, _DEP)
|
||||||
|
|
||||||
isEmpty(UI_DIR):UI_DIR = .
|
isEmpty(UI_DIR):UI_DIR = .
|
||||||
isEmpty(QMAKE_MOD_UIC):QMAKE_MOD_UIC = ui_
|
isEmpty(QMAKE_MOD_UIC):QMAKE_MOD_UIC = ui_
|
||||||
|
|
||||||
uic.commands = $$QMAKE_UIC ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
uic.commands = $$QMAKE_UIC ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
|
||||||
uic.depend_command = $$QMAKE_UIC -d ${QMAKE_FILE_IN}
|
uic.depend_command = $$QMAKE_UIC_DEP -d ${QMAKE_FILE_IN}
|
||||||
uic.output = $$UI_DIR/$${QMAKE_MOD_UIC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
|
uic.output = $$UI_DIR/$${QMAKE_MOD_UIC}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_H)}
|
||||||
uic.input = FORMS
|
uic.input = FORMS
|
||||||
uic.variable_out = GENERATED_FILES
|
uic.variable_out = GENERATED_FILES
|
||||||
|
@ -1222,7 +1222,7 @@ bool QMakeEvaluator::loadSpec()
|
|||||||
m_qmakespec = QDir::cleanPath(qmakespec);
|
m_qmakespec = QDir::cleanPath(qmakespec);
|
||||||
|
|
||||||
if (!m_superfile.isEmpty()
|
if (!m_superfile.isEmpty()
|
||||||
&& evaluateFile(m_superfile, QMakeHandler::EvalConfigFile, LoadProOnly) != ReturnTrue) {
|
&& evaluateFile(m_superfile, QMakeHandler::EvalConfigFile, LoadProOnly|LoadHidden) != ReturnTrue) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!loadSpecInternal())
|
if (!loadSpecInternal())
|
||||||
@ -1813,7 +1813,7 @@ QMakeEvaluator::VisitReturn QMakeEvaluator::evaluateFile(
|
|||||||
m_current = m_locationStack.pop();
|
m_current = m_locationStack.pop();
|
||||||
pro->deref();
|
pro->deref();
|
||||||
#ifdef PROEVALUATOR_FULL
|
#ifdef PROEVALUATOR_FULL
|
||||||
if (ok == ReturnTrue) {
|
if (ok == ReturnTrue && !(flags & LoadHidden)) {
|
||||||
ProStringList &iif = m_valuemapStack.first()[ProKey("QMAKE_INTERNAL_INCLUDED_FILES")];
|
ProStringList &iif = m_valuemapStack.first()[ProKey("QMAKE_INTERNAL_INCLUDED_FILES")];
|
||||||
ProString ifn(fileName);
|
ProString ifn(fileName);
|
||||||
if (!iif.contains(ifn))
|
if (!iif.contains(ifn))
|
||||||
|
@ -102,7 +102,8 @@ public:
|
|||||||
LoadPreFiles = 1,
|
LoadPreFiles = 1,
|
||||||
LoadPostFiles = 2,
|
LoadPostFiles = 2,
|
||||||
LoadAll = LoadPreFiles|LoadPostFiles,
|
LoadAll = LoadPreFiles|LoadPostFiles,
|
||||||
LoadSilent = 0x10
|
LoadSilent = 0x10,
|
||||||
|
LoadHidden = 0x20
|
||||||
};
|
};
|
||||||
Q_DECLARE_FLAGS(LoadFlags, LoadFlag)
|
Q_DECLARE_FLAGS(LoadFlags, LoadFlag)
|
||||||
|
|
||||||
|
@ -90,7 +90,7 @@ prefix_build|!equals(PWD, $$OUT_PWD) {
|
|||||||
|
|
||||||
TOOL_PRI = $$OUT_PWD/mkspecs/modules/qt_tool_syncqt.pri
|
TOOL_PRI = $$OUT_PWD/mkspecs/modules/qt_tool_syncqt.pri
|
||||||
|
|
||||||
TOOL_PRI_CONT = "QT_TOOL.syncqt.command = $$val_escape(cmd)"
|
TOOL_PRI_CONT = "QT_TOOL.syncqt.binary = $$val_escape(cmd)"
|
||||||
write_file($$TOOL_PRI, TOOL_PRI_CONT)|error("Aborting.")
|
write_file($$TOOL_PRI, TOOL_PRI_CONT)|error("Aborting.")
|
||||||
|
|
||||||
# Then, inject the new tool into the current cache state
|
# Then, inject the new tool into the current cache state
|
||||||
@ -99,7 +99,7 @@ prefix_build|!equals(PWD, $$OUT_PWD) {
|
|||||||
cache(QMAKE_INTERNAL_INCLUDED_FILES, add transient, added)
|
cache(QMAKE_INTERNAL_INCLUDED_FILES, add transient, added)
|
||||||
}
|
}
|
||||||
include($$TOOL_PRI)
|
include($$TOOL_PRI)
|
||||||
cache(QT_TOOL.syncqt.command, transient)
|
cache(QT_TOOL.syncqt.binary, transient)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -980,6 +980,8 @@ public:
|
|||||||
Key_TouchpadOn = 0x01000111,
|
Key_TouchpadOn = 0x01000111,
|
||||||
Key_TouchpadOff = 0x01000112,
|
Key_TouchpadOff = 0x01000112,
|
||||||
|
|
||||||
|
Key_MicMute = 0x01000113,
|
||||||
|
|
||||||
Key_MediaLast = 0x0100ffff,
|
Key_MediaLast = 0x0100ffff,
|
||||||
|
|
||||||
// Keypad navigation keys
|
// Keypad navigation keys
|
||||||
|
@ -1621,6 +1621,7 @@
|
|||||||
\value Key_TouchpadToggle
|
\value Key_TouchpadToggle
|
||||||
\value Key_TouchpadOn
|
\value Key_TouchpadOn
|
||||||
\value Key_TouchpadOff
|
\value Key_TouchpadOff
|
||||||
|
\value Key_MicMute
|
||||||
\value Key_MediaLast
|
\value Key_MediaLast
|
||||||
\value Key_unknown
|
\value Key_unknown
|
||||||
|
|
||||||
|
@ -510,11 +510,12 @@ bool QFileSystemEngine::createDirectory(const QFileSystemEntry &entry, bool crea
|
|||||||
}
|
}
|
||||||
if (slash) {
|
if (slash) {
|
||||||
const QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
const QByteArray chunk = QFile::encodeName(dirName.left(slash));
|
||||||
QT_STATBUF st;
|
if (QT_MKDIR(chunk.constData(), 0777) != 0) {
|
||||||
if (QT_STAT(chunk.constData(), &st) != -1) {
|
if (errno == EEXIST) {
|
||||||
if ((st.st_mode & S_IFMT) != S_IFDIR)
|
QT_STATBUF st;
|
||||||
return false;
|
if (QT_STAT(chunk.constData(), &st) == 0 && (st.st_mode & S_IFMT) == S_IFDIR)
|
||||||
} else if (QT_MKDIR(chunk.constData(), 0777) != 0) {
|
continue;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1044,14 +1044,13 @@ bool QFileSystemEngine::createDirectory(const QFileSystemEntry &entry, bool crea
|
|||||||
}
|
}
|
||||||
if (slash) {
|
if (slash) {
|
||||||
QString chunk = dirName.left(slash);
|
QString chunk = dirName.left(slash);
|
||||||
bool existed = false;
|
if (!mkDir(chunk)) {
|
||||||
if (!isDirPath(chunk, &existed)) {
|
if (GetLastError() == ERROR_ALREADY_EXISTS) {
|
||||||
if (!existed) {
|
bool existed = false;
|
||||||
if (!mkDir(chunk))
|
if (isDirPath(chunk, &existed) && existed)
|
||||||
return false;
|
continue;
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -72,7 +72,6 @@ public:
|
|||||||
QByteArray iid;
|
QByteArray iid;
|
||||||
QList<QLibraryPrivate*> libraryList;
|
QList<QLibraryPrivate*> libraryList;
|
||||||
QMap<QString,QLibraryPrivate*> keyMap;
|
QMap<QString,QLibraryPrivate*> keyMap;
|
||||||
QStringList keyList;
|
|
||||||
QString suffix;
|
QString suffix;
|
||||||
Qt::CaseSensitivity cs;
|
Qt::CaseSensitivity cs;
|
||||||
QStringList loadedPaths;
|
QStringList loadedPaths;
|
||||||
@ -176,10 +175,8 @@ void QFactoryLoader::update()
|
|||||||
metaDataOk = true;
|
metaDataOk = true;
|
||||||
|
|
||||||
QJsonArray k = object.value(QLatin1String("Keys")).toArray();
|
QJsonArray k = object.value(QLatin1String("Keys")).toArray();
|
||||||
for (int i = 0; i < k.size(); ++i) {
|
for (int i = 0; i < k.size(); ++i)
|
||||||
QString s = k.at(i).toString();
|
keys += d->cs ? k.at(i).toString() : k.at(i).toString().toLower();
|
||||||
keys += s;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (qt_debug_component())
|
if (qt_debug_component())
|
||||||
qDebug() << "Got keys from plugin meta data" << keys;
|
qDebug() << "Got keys from plugin meta data" << keys;
|
||||||
@ -190,15 +187,13 @@ void QFactoryLoader::update()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
d->libraryList += library;
|
int keyUsageCount = 0;
|
||||||
for (int k = 0; k < keys.count(); ++k) {
|
for (int k = 0; k < keys.count(); ++k) {
|
||||||
// first come first serve, unless the first
|
// first come first serve, unless the first
|
||||||
// library was built with a future Qt version,
|
// library was built with a future Qt version,
|
||||||
// whereas the new one has a Qt version that fits
|
// whereas the new one has a Qt version that fits
|
||||||
// better
|
// better
|
||||||
QString key = keys.at(k);
|
const QString &key = keys.at(k);
|
||||||
if (!d->cs)
|
|
||||||
key = key.toLower();
|
|
||||||
QLibraryPrivate *previous = d->keyMap.value(key);
|
QLibraryPrivate *previous = d->keyMap.value(key);
|
||||||
int prev_qt_version = 0;
|
int prev_qt_version = 0;
|
||||||
if (previous) {
|
if (previous) {
|
||||||
@ -207,9 +202,13 @@ void QFactoryLoader::update()
|
|||||||
int qt_version = (int)library->metaData.value(QLatin1String("version")).toDouble();
|
int qt_version = (int)library->metaData.value(QLatin1String("version")).toDouble();
|
||||||
if (!previous || (prev_qt_version > QT_VERSION && qt_version <= QT_VERSION)) {
|
if (!previous || (prev_qt_version > QT_VERSION && qt_version <= QT_VERSION)) {
|
||||||
d->keyMap[key] = library;
|
d->keyMap[key] = library;
|
||||||
d->keyList += keys.at(k);
|
++keyUsageCount;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (keyUsageCount || keys.isEmpty())
|
||||||
|
d->libraryList += library;
|
||||||
|
else
|
||||||
|
library->release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
@ -16,11 +16,12 @@ set(Qt5Gui_OPENGL_INCLUDE_DIRS ${Qt5Gui_EGL_INCLUDE_DIRS})
|
|||||||
macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATION IMPLIB_LOCATION)
|
macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATION IMPLIB_LOCATION)
|
||||||
set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
|
set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
|
||||||
|
|
||||||
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
|
||||||
set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${LIB_LOCATION}\")
|
set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
|
||||||
!!ELSE
|
!!ELSE
|
||||||
set(imported_location \"$${CMAKE_LIB_DIR}${LIB_LOCATION}\")
|
set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
|
||||||
!!ENDIF
|
!!ENDIF
|
||||||
|
|
||||||
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
|
||||||
set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
|
set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
|
||||||
!!ELSE
|
!!ELSE
|
||||||
|
@ -752,7 +752,8 @@ static QByteArray headerValue(QNetworkRequest::KnownHeaders header, const QVaria
|
|||||||
|
|
||||||
static QNetworkRequest::KnownHeaders parseHeaderName(const QByteArray &headerName)
|
static QNetworkRequest::KnownHeaders parseHeaderName(const QByteArray &headerName)
|
||||||
{
|
{
|
||||||
// headerName is not empty here
|
if (headerName.isEmpty())
|
||||||
|
return QNetworkRequest::KnownHeaders(-1);
|
||||||
|
|
||||||
switch (tolower(headerName.at(0))) {
|
switch (tolower(headerName.at(0))) {
|
||||||
case 'c':
|
case 'c':
|
||||||
|
@ -333,7 +333,7 @@ namespace QtAndroidInput
|
|||||||
return Qt::Key_BracketLeft;
|
return Qt::Key_BracketLeft;
|
||||||
|
|
||||||
case 0x0000005a: // KEYCODE_MEDIA_FAST_FORWARD
|
case 0x0000005a: // KEYCODE_MEDIA_FAST_FORWARD
|
||||||
return Qt::Key_Forward;
|
return Qt::Key_AudioForward;
|
||||||
|
|
||||||
case 0x00000057:
|
case 0x00000057:
|
||||||
return Qt::Key_MediaNext;
|
return Qt::Key_MediaNext;
|
||||||
@ -344,7 +344,7 @@ namespace QtAndroidInput
|
|||||||
case 0x00000058:
|
case 0x00000058:
|
||||||
return Qt::Key_MediaPrevious;
|
return Qt::Key_MediaPrevious;
|
||||||
|
|
||||||
case 0x00000059:
|
case 0x00000059: // KEYCODE_MEDIA_REWIND
|
||||||
return Qt::Key_AudioRewind;
|
return Qt::Key_AudioRewind;
|
||||||
|
|
||||||
case 0x00000056:
|
case 0x00000056:
|
||||||
@ -356,8 +356,8 @@ namespace QtAndroidInput
|
|||||||
case 0x00000045:
|
case 0x00000045:
|
||||||
return Qt::Key_Minus;
|
return Qt::Key_Minus;
|
||||||
|
|
||||||
case 0x0000005b:
|
case 0x0000005b: // KEYCODE_MUTE
|
||||||
return Qt::Key_VolumeMute;
|
return Qt::Key_MicMute;
|
||||||
|
|
||||||
case 0x0000004e:
|
case 0x0000004e:
|
||||||
return Qt::Key_NumLock;
|
return Qt::Key_NumLock;
|
||||||
@ -405,6 +405,9 @@ namespace QtAndroidInput
|
|||||||
case 0x00000019:
|
case 0x00000019:
|
||||||
return Qt::Key_VolumeDown;
|
return Qt::Key_VolumeDown;
|
||||||
|
|
||||||
|
case 0x000000a4: // KEYCODE_VOLUME_MUTE
|
||||||
|
return Qt::Key_VolumeMute;
|
||||||
|
|
||||||
case 0x00000018:
|
case 0x00000018:
|
||||||
return Qt::Key_VolumeUp;
|
return Qt::Key_VolumeUp;
|
||||||
|
|
||||||
|
@ -98,6 +98,11 @@ static NSButton *macCreateButton(const char *text, NSView *superview)
|
|||||||
mDialogIsExecuting = false;
|
mDialogIsExecuting = false;
|
||||||
mResultSet = false;
|
mResultSet = false;
|
||||||
|
|
||||||
|
#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7
|
||||||
|
if (QSysInfo::MacintoshVersion >= QSysInfo::MV_10_7)
|
||||||
|
[mColorPanel setRestorable:NO];
|
||||||
|
#endif
|
||||||
|
|
||||||
if (mHelper->options()->testOption(QColorDialogOptions::NoButtons)) {
|
if (mHelper->options()->testOption(QColorDialogOptions::NoButtons)) {
|
||||||
mStolenContentView = 0;
|
mStolenContentView = 0;
|
||||||
mOkButton = 0;
|
mOkButton = 0;
|
||||||
@ -274,6 +279,7 @@ static NSButton *macCreateButton(const char *text, NSView *superview)
|
|||||||
- (void)showModelessPanel
|
- (void)showModelessPanel
|
||||||
{
|
{
|
||||||
mDialogIsExecuting = false;
|
mDialogIsExecuting = false;
|
||||||
|
mResultSet = false;
|
||||||
[mColorPanel makeKeyAndOrderFront:mColorPanel];
|
[mColorPanel makeKeyAndOrderFront:mColorPanel];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -367,10 +373,8 @@ void QCocoaColorDialogHelper::exec()
|
|||||||
|
|
||||||
bool QCocoaColorDialogHelper::show(Qt::WindowFlags, Qt::WindowModality windowModality, QWindow *parent)
|
bool QCocoaColorDialogHelper::show(Qt::WindowFlags, Qt::WindowModality windowModality, QWindow *parent)
|
||||||
{
|
{
|
||||||
if (windowModality == Qt::WindowModal) {
|
if (windowModality == Qt::WindowModal)
|
||||||
// Cocoa's shared color panel cannot be shown as a sheet
|
windowModality = Qt::ApplicationModal;
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return showCocoaColorPanel(windowModality, parent);
|
return showCocoaColorPanel(windowModality, parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -433,9 +437,9 @@ bool QCocoaColorDialogHelper::showCocoaColorPanel(Qt::WindowModality windowModal
|
|||||||
createNSColorPanelDelegate();
|
createNSColorPanelDelegate();
|
||||||
QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *delegate = static_cast<QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *>(mDelegate);
|
QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *delegate = static_cast<QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) *>(mDelegate);
|
||||||
[delegate->mColorPanel setShowsAlpha:options()->testOption(QColorDialogOptions::ShowAlphaChannel)];
|
[delegate->mColorPanel setShowsAlpha:options()->testOption(QColorDialogOptions::ShowAlphaChannel)];
|
||||||
if (windowModality == Qt::NonModal)
|
if (windowModality != Qt::WindowModal)
|
||||||
[delegate showModelessPanel];
|
[delegate showModelessPanel];
|
||||||
// no need to show a Qt::ApplicationModal dialog here, since it will be done in _q_platformRunNativeAppModalPanel()
|
// no need to show a Qt::WindowModal dialog here, because it's necessary to call exec() in that case
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,6 +248,7 @@
|
|||||||
#define XF86XK_TouchpadToggle 0x1008FFA9
|
#define XF86XK_TouchpadToggle 0x1008FFA9
|
||||||
#define XF86XK_TouchpadOn 0x1008FFB0
|
#define XF86XK_TouchpadOn 0x1008FFB0
|
||||||
#define XF86XK_TouchpadOff 0x1008FFB1
|
#define XF86XK_TouchpadOff 0x1008FFB1
|
||||||
|
#define XF86XK_AudioMicMute 0x1008FFB2
|
||||||
|
|
||||||
|
|
||||||
// end of XF86keysyms.h
|
// end of XF86keysyms.h
|
||||||
@ -543,6 +544,7 @@ static const unsigned int KeyTbl[] = {
|
|||||||
XF86XK_TouchpadToggle, Qt::Key_TouchpadToggle,
|
XF86XK_TouchpadToggle, Qt::Key_TouchpadToggle,
|
||||||
XF86XK_TouchpadOn, Qt::Key_TouchpadOn,
|
XF86XK_TouchpadOn, Qt::Key_TouchpadOn,
|
||||||
XF86XK_TouchpadOff, Qt::Key_TouchpadOff,
|
XF86XK_TouchpadOff, Qt::Key_TouchpadOff,
|
||||||
|
XF86XK_AudioMicMute, Qt::Key_MicMute,
|
||||||
XF86XK_Launch0, Qt::Key_Launch2, // ### Qt 6: remap properly
|
XF86XK_Launch0, Qt::Key_Launch2, // ### Qt 6: remap properly
|
||||||
XF86XK_Launch1, Qt::Key_Launch3,
|
XF86XK_Launch1, Qt::Key_Launch3,
|
||||||
XF86XK_Launch2, Qt::Key_Launch4,
|
XF86XK_Launch2, Qt::Key_Launch4,
|
||||||
|
@ -1776,6 +1776,8 @@ void QColorDialog::setOptions(ColorDialogOptions options)
|
|||||||
d->options->setOptions(QColorDialogOptions::ColorDialogOptions(int(options)));
|
d->options->setOptions(QColorDialogOptions::ColorDialogOptions(int(options)));
|
||||||
d->buttons->setVisible(!(options & NoButtons));
|
d->buttons->setVisible(!(options & NoButtons));
|
||||||
d->showAlpha(options & ShowAlphaChannel);
|
d->showAlpha(options & ShowAlphaChannel);
|
||||||
|
if (options & DontUseNativeDialog)
|
||||||
|
d->nativeDialogInUse = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
QColorDialog::ColorDialogOptions QColorDialog::options() const
|
QColorDialog::ColorDialogOptions QColorDialog::options() const
|
||||||
@ -1794,8 +1796,8 @@ QColorDialog::ColorDialogOptions QColorDialog::options() const
|
|||||||
|
|
||||||
\value ShowAlphaChannel Allow the user to select the alpha component of a color.
|
\value ShowAlphaChannel Allow the user to select the alpha component of a color.
|
||||||
\value NoButtons Don't display \uicontrol{OK} and \uicontrol{Cancel} buttons. (Useful for "live dialogs".)
|
\value NoButtons Don't display \uicontrol{OK} and \uicontrol{Cancel} buttons. (Useful for "live dialogs".)
|
||||||
\value DontUseNativeDialog Use Qt's standard color dialog on the Mac instead of Apple's
|
\value DontUseNativeDialog Use Qt's standard color dialog instead of the operating system
|
||||||
native color panel.
|
native color dialog.
|
||||||
|
|
||||||
\sa options, setOption(), testOption(), windowModality()
|
\sa options, setOption(), testOption(), windowModality()
|
||||||
*/
|
*/
|
||||||
|
@ -1392,7 +1392,7 @@ void QMessageBox::keyPressEvent(QKeyEvent *e)
|
|||||||
|
|
||||||
#if !defined(QT_NO_TEXTEDIT)
|
#if !defined(QT_NO_TEXTEDIT)
|
||||||
if (e == QKeySequence::Copy) {
|
if (e == QKeySequence::Copy) {
|
||||||
if (d->detailsText->isVisible() && d->detailsText->copy()) {
|
if (d->detailsText && d->detailsText->isVisible() && d->detailsText->copy()) {
|
||||||
e->setAccepted(true);
|
e->setAccepted(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -1548,10 +1548,11 @@ void QWidgetPrivate::createTLExtra()
|
|||||||
x->inTopLevelResize = false;
|
x->inTopLevelResize = false;
|
||||||
x->inRepaint = false;
|
x->inRepaint = false;
|
||||||
x->embedded = 0;
|
x->embedded = 0;
|
||||||
|
x->window = 0;
|
||||||
|
x->screenIndex = 0;
|
||||||
#ifdef Q_WS_MAC
|
#ifdef Q_WS_MAC
|
||||||
x->wasMaximized = false;
|
x->wasMaximized = false;
|
||||||
#endif // Q_WS_MAC
|
#endif // Q_WS_MAC
|
||||||
createTLSysExtra();
|
|
||||||
#ifdef QWIDGET_EXTRA_DEBUG
|
#ifdef QWIDGET_EXTRA_DEBUG
|
||||||
static int count = 0;
|
static int count = 0;
|
||||||
qDebug() << "tlextra" << ++count;
|
qDebug() << "tlextra" << ++count;
|
||||||
@ -10122,6 +10123,8 @@ void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on)
|
|||||||
break; }
|
break; }
|
||||||
case Qt::WA_NativeWindow: {
|
case Qt::WA_NativeWindow: {
|
||||||
d->createTLExtra();
|
d->createTLExtra();
|
||||||
|
if (on)
|
||||||
|
d->createTLSysExtra();
|
||||||
#ifndef QT_NO_IM
|
#ifndef QT_NO_IM
|
||||||
QWidget *focusWidget = d->effectiveFocusWidget();
|
QWidget *focusWidget = d->effectiveFocusWidget();
|
||||||
if (on && !internalWinId() && hasFocus()
|
if (on && !internalWinId() && hasFocus()
|
||||||
|
@ -890,9 +890,7 @@ void QWidgetPrivate::deleteSysExtra()
|
|||||||
void QWidgetPrivate::createTLSysExtra()
|
void QWidgetPrivate::createTLSysExtra()
|
||||||
{
|
{
|
||||||
Q_Q(QWidget);
|
Q_Q(QWidget);
|
||||||
extra->topextra->screenIndex = 0;
|
if (!extra->topextra->window && (q->testAttribute(Qt::WA_NativeWindow) || q->isWindow())) {
|
||||||
extra->topextra->window = 0;
|
|
||||||
if (q->testAttribute(Qt::WA_NativeWindow) || q->isWindow()) {
|
|
||||||
extra->topextra->window = new QWidgetWindow(q);
|
extra->topextra->window = new QWidgetWindow(q);
|
||||||
if (extra->minw || extra->minh)
|
if (extra->minw || extra->minh)
|
||||||
extra->topextra->window->setMinimumSize(QSize(extra->minw, extra->minh));
|
extra->topextra->window->setMinimumSize(QSize(extra->minw, extra->minh));
|
||||||
|
@ -873,7 +873,7 @@ bool QDockWidgetPrivate::mouseMoveEvent(QMouseEvent *event)
|
|||||||
QPoint pos = event->globalPos() - state->pressPos;
|
QPoint pos = event->globalPos() - state->pressPos;
|
||||||
q->move(pos);
|
q->move(pos);
|
||||||
|
|
||||||
if (!state->ctrlDrag)
|
if (state && !state->ctrlDrag)
|
||||||
mwlayout->hover(state->widgetItem, event->globalPos());
|
mwlayout->hover(state->widgetItem, event->globalPos());
|
||||||
|
|
||||||
ret = true;
|
ret = true;
|
||||||
|
@ -311,12 +311,28 @@ void tst_QDir::mkdir()
|
|||||||
void tst_QDir::makedirReturnCode()
|
void tst_QDir::makedirReturnCode()
|
||||||
{
|
{
|
||||||
QString dirName = QString::fromLatin1("makedirReturnCode");
|
QString dirName = QString::fromLatin1("makedirReturnCode");
|
||||||
QDir::current().rmdir(dirName); // cleanup a previous run.
|
QFile f(QDir::current().filePath(dirName));
|
||||||
|
|
||||||
|
// cleanup a previous run.
|
||||||
|
f.remove();
|
||||||
|
QDir::current().rmdir(dirName);
|
||||||
|
|
||||||
QDir dir(dirName);
|
QDir dir(dirName);
|
||||||
QVERIFY(!dir.exists());
|
QVERIFY(!dir.exists());
|
||||||
QVERIFY(QDir::current().mkdir(dirName));
|
QVERIFY(QDir::current().mkdir(dirName));
|
||||||
QVERIFY(!QDir::current().mkdir(dirName)); // calling mkdir on an existing dir will fail.
|
QVERIFY(!QDir::current().mkdir(dirName)); // calling mkdir on an existing dir will fail.
|
||||||
QVERIFY(QDir::current().mkpath(dirName)); // calling mkpath on an existing dir will pass
|
QVERIFY(QDir::current().mkpath(dirName)); // calling mkpath on an existing dir will pass
|
||||||
|
|
||||||
|
// Remove the directory and create a file with the same path
|
||||||
|
QDir::current().rmdir(dirName);
|
||||||
|
QVERIFY(!f.exists());
|
||||||
|
f.open(QIODevice::WriteOnly);
|
||||||
|
f.write("test");
|
||||||
|
f.close();
|
||||||
|
QVERIFY(f.exists());
|
||||||
|
QVERIFY(!QDir::current().mkdir(dirName)); // calling mkdir on an existing file will fail.
|
||||||
|
QVERIFY(!QDir::current().mkpath(dirName)); // calling mkpath on an existing file will fail.
|
||||||
|
f.remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
void tst_QDir::rmdir_data()
|
void tst_QDir::rmdir_data()
|
||||||
|
@ -279,17 +279,18 @@ void tst_QTemporaryDir::openOnRootDrives()
|
|||||||
void tst_QTemporaryDir::stressTest()
|
void tst_QTemporaryDir::stressTest()
|
||||||
{
|
{
|
||||||
const int iterations = 1000;
|
const int iterations = 1000;
|
||||||
|
QTemporaryDir rootDir;
|
||||||
|
QVERIFY(rootDir.isValid());
|
||||||
|
|
||||||
QSet<QString> names;
|
QSet<QString> names;
|
||||||
|
const QString pattern = rootDir.path() + QStringLiteral("/XXXXXX");
|
||||||
for (int i = 0; i < iterations; ++i) {
|
for (int i = 0; i < iterations; ++i) {
|
||||||
QTemporaryDir dir;
|
QTemporaryDir dir(pattern);
|
||||||
dir.setAutoRemove(false);
|
dir.setAutoRemove(false);
|
||||||
QVERIFY2(dir.isValid(), qPrintable(QString::number(i)));
|
QVERIFY2(dir.isValid(), qPrintable(QString::fromLatin1("Failed to create #%1 under %2.").arg(i).arg(QDir::toNativeSeparators(pattern))));
|
||||||
QVERIFY(!names.contains(dir.path()));
|
QVERIFY(!names.contains(dir.path()));
|
||||||
names.insert(dir.path());
|
names.insert(dir.path());
|
||||||
}
|
}
|
||||||
for (QSet<QString>::const_iterator it = names.constBegin(); it != names.constEnd(); ++it)
|
|
||||||
QDir(*it).removeRecursively();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void tst_QTemporaryDir::rename()
|
void tst_QTemporaryDir::rename()
|
||||||
|
Loading…
Reference in New Issue
Block a user