summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Windows QPA plugin: Use member initializationFriedemann Kleint2016-11-3029-224/+120
| | | | | | | | Use C++ 11 member initialization in value-type structs. Task-number: QTBUG-51673 Change-Id: I668389b4a0ad1d862a505b740d67357cb9c2a3dc Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* QCommonStyle::sizeFromContents(): Increase height of CT_ItemViewItemFriedemann Kleint2016-11-291-0/+2
| | | | | | | | | Prevent icons from overlapping by adding a small margin (as does QWindowsVistaStyle) should the total height equal the icon size. Task-number: QTBUG-52353 Change-Id: Iad0b7374a22129ee92ff3cc4479118c10db377aa Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Add configurable connect timeout for QAbstractSocketSamuel Gaist2016-11-294-9/+69
| | | | | | | | | | | | | | The aim of this patch is to allow the configuration of the connect timeout used by QAbstractSocket that is currently hardcoded to 30 seconds. Using QNetworkConfiguration for this allows to adapt the timeout per network configuration (e.g. 2G vs wired lan) [ChangeLog][QtNetwork] The connect timeout from QAbstractSocket is now configurable through QNetworkConfiguration. Change-Id: I1dc4051be2c74f925f7a9e0a9ccef332efc2e370 Reviewed-by: Lorn Potter <lorn.potter@canonical.com>
* qopenglprogrambinarycache_p.h: Add "We mean it" commentFriedemann Kleint2016-11-251-0/+11
| | | | | | | | | | | Fix QtGui: WARNING: qtbase/src/gui/opengl/qopenglprogrambinarycache_p.h does not have the "We mean it." warning Amends change 85f868e73e4cf9dffe27b737f8dc3f5bb626ed04. Change-Id: Id2e8c3e7ac4fa732c0a3d99faab91f08121fba96 Task-number: QTBUG-55496 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* qnativesocketengine_win.cpp: Use QOperatingSystemVersion to detect OSFriedemann Kleint2016-11-251-4/+7
| | | | | | | | | | | | | | | | | Fix warning: socket\qnativesocketengine_win.cpp: In member function 'bool QNativeSocketEnginePrivate::createNewSocket(QAbstractSocket::SocketType, QAbstractSocket::NetworkLayerProtocol&)': socket\qnativesocketengine_win.cpp:337:26: warning: 'WinVersion' is deprecated: Use QOperatingSystemVersion [-Wdeprecated-declarations] QSysInfo::WinVersion osver = QSysInfo::windowsVersion(); ^ In file included from ..\..\include/QtCore/qsysinfo.h:1:0, from ..\..\include\QtCore/../../src/corelib/global/qglobal.h:1150, from ..\..\include\QtCore/qglobal.h:1, from ..\corelib\global\qt_pch.h:56: enum QT_DEPRECATED_X("Use QOperatingSystemVersion") WinVersion { Change-Id: I9b060d886af3b627ac4b6eeb3321629734cc1e46 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* eglfs: Add device integration for Qt Simulator for Embedded LinuxAndy Nichols2016-11-258-0/+559
| | | | | | | | | | | To support multiple displays in the emulator, it is necessary that an additional EGLFS device integration be added to query information about the available screens, and to help associate a window surface with a screen. Change-Id: I852c27bd66f5f32a92c4ff876838ac2f6fbde86a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Use QSaveFile for more robust shader disk cacheLaszlo Agocs2016-11-251-4/+8
| | | | | | Task-number: QTBUG-55496 Change-Id: Ie9bd4390e7bb7bf22dbe597a6a01fecec7a6b404 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* qwindowsnativeinterface.cpp: Add missing enumeration OpenVGSurfaceFriedemann Kleint2016-11-251-0/+1
| | | | | | | | | | | | | | Fixes MinGW developer build: qwindowsnativeinterface.cpp: In member function 'virtual void* QWindowsNativeInterface::nativeResourceForWindow(const QByteArray&, QWindow*)': qwindowsnativeinterface.cpp:100:12: error: enumeration value 'OpenVGSurface' not handled in switch [-Werror=switch] switch (window->surfaceType()) { ^ cc1plus.exe: all warnings being treated as errors Amends change dafd0955c601fc00f9164f9b955ec9f28b627565. Change-Id: I43f7148281fcf47613958427e25a784f42920806 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Platform support/Windows classes: Use member initializationFriedemann Kleint2016-11-246-41/+22
| | | | | | | | Use C++ 11 member initialization in value-type structs. Task-number: QTBUG-51673 Change-Id: Ic45ab21c738ec7b7d526e30a1de2e19206da89ed Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Replace manual parent traversal in isWindowBlocked with use of isAncestorOfTor Arne Vestbø2016-11-242-33/+17
| | | | | Change-Id: I208d70a61e407069277339b3997c82921ab1b39b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* linuxfb: add experimental support for DRM dumb buffersLaszlo Agocs2016-11-248-9/+512
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a QFbScreen implementation that uses DRM dumb buffers and page flipping, thus implementing a vsynced, double (triple) buffered plain software platform plugin. Besides better supporting systems that by now only do fbdev via (possibly buggy) emulation, this can also be an enabler for implementing certain types of 2D accelerated compositors e.g. for Wayland. Enable with QT_QPA_FB_DRM=1. Right now there is no good way to autodetect the support for dumb buffers early enough so the default is always the traditional fbdev path. Long-term this will also enable proper multi-display support like with eglfs' DRM backends. Multiple QScreens are not yet reported currently due to the single-screen limitations of fbconvenience. The generic DRM code is shared with eglfs, meaning configuration happens via the JSON file specified in QT_QPA_(EGLFS_)KMS_CONFIG. This allows changing the screen resolution, disabling outputs, etc. [ChangeLog][Platform Specific Changes][linuxfb] Added experimental support for DRM dumb buffers. Enable by setting the environment variable QT_QPA_FB_DRM to 1. Task-number: QTBUG-56306 Change-Id: I4bdcf16fff67412183220dffa0c4ea235c5cad3d Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* add TouchDoubleTapDistance platform theme hintShawn Rutledge2016-11-242-1/+15
| | | | | | | | | | | | | Double-tapping on a touchscreen typically requires a higher threshold than double-clicking with a mouse, because it's harder to hit the same point twice with your finger. This is intended for use in QtQuick's new TapHandler. [ChangeLog][QtGui] environment variable QT_DBL_TAP_DIST customizes the amount of movement allowed when detecting a double tap via touch. Change-Id: I83a9be363f22c1086fd39580aa95055f2b3ff5c7 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Add an OpenGL program binary disk cacheLaszlo Agocs2016-11-2412-90/+788
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a glProgramBinary-based disk cache in QOpenGLShaderProgram. By switching the typical program->addShaderFromSourceCode(QOpenGLShader::Vertex, ...) program->addShaderFromSourceCode(QOpenGLShader::Fragment, ...) invocations to program->addCacheableShaderFromSourceCode(QOpenGLShader::Vertex, ...) program->addCacheableShaderFromSourceCode(QOpenGLShader::Fragment, ...) the compilation may be skipped via gl(Get)ProgramBinary and a disk cache, when supported. Such QOpenGLShaderProgram instances will have no QOpenGLShader instances attached. Instead, the entire program binary (which is driver-specific) is loaded as-is. Support means OpenGL ES 3.0 or the presence of GL_ARB_get_program_binary, in combination with >= 1 supported binary formats. Note that some drivers claim program binary support but expose no formats. This amounts to no support in practice. When support is not present, calling the new functions is equivalent to the non-cacheable variants. If the OpenGL driver changes (vendor, renderer, version strings), recompilation and storage of the new, potentially incompatible binary program will happen transparently. The cache can always be disabled by setting QT_DISABLE_SHADER_DISK_CACHE=1 or the new application attribute Qt::AA_DisableShaderDiskCache. Location-wise the primary choice is the shared cache (GenericCacheLocation). If this is not available or is not writable, the per-process one (CacheLocation) is used instead. In addition to the new public APIs in QOpenGLShaderProgram, the main shader users in QtGui are migrated as well. (OpenGL paint engine, glyph cache, blitter, eglfs mouse cursor). This means that any application using QPainter on OpenGL or widgets with eglfs will benefit from the improved startup times. Qt Quick will follow suit as well. [ChangeLog][QtGui][OpenGL] QOpenGLShaderProgram offers a built-in program binary disk cache for systems with OpenGL ES 3.x or GL_ARB_get_program_binary. This can lead to significant increases in performance when it comes to application startup times for example. Usage is opt-in for direct C++ users of the class, however Qt's own main users of shaders, including Qt Quick and QPainter's OpenGL engine, are migrated to use the new, cache-enabled APIs. Opting out on application level is always possible via Qt::AA_DisableShaderDiskCache. Task-number: QTBUG-55496 Change-Id: I556f053d258bfa6887b1d5238c9f6396914c5421 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Replace QDrawHelperGammaTables with QColorProfileAllan Sandfeld Jensen2016-11-248-145/+278
| | | | | | | | | | | | Turns the two set of tables in QDrawHelperGammaTables into two QColorProfile classes that use similar structures and can be reused for other gamma correction. At the same time clean-up and improve the comma-correct blending code to use the new profiles and QRgba64 precision. Change-Id: I302bd87a5c836e1010fff6d633eeb56fd4ae2ff0 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* qsslsocket_openssl_symbols.cpp: Fix signedness warning in DEFINEFUNC2Friedemann Kleint2016-11-241-1/+1
| | | | | | | | | | | Fix warning: qsslsocket_openssl_symbols.cpp157:78:warning: implicit conversion changes signedness: 'int' to 'unsigned long' note: expanded from macro 'DEFINEFUNC2' Amends change 2cf63c71ebe139890526057dcc51b24ea6df6c30 Change-Id: I694c5199d272d05f0070288af2e00b6fce42fc91 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Add aliases for env vars common to eglfs and linuxfbLaszlo Agocs2016-11-241-6/+13
| | | | | | | | | | Now that the generic DRM code is shared between multiple platform plugins, the QT_QPA_EGLFS prefix is not that ideal anymore. Introduce aliases without EGLFS. Task-number: QTBUG-56306 Change-Id: I0cf374f8c8d12aa0eab2f026ffa9201b3af35ce2 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Make sure we can compile QtCore without QT_CONFIG(translation)Ulf Hermann2016-11-243-4/+27
| | | | | Change-Id: I755834b77e50ff6f44bda561f007ec3306f3c1f9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Refactor QGuiApplication::topLevelWindows()Tor Arne Vestbø2016-11-231-8/+18
| | | | | | | | | | | | | Unifies the three conditions where we do not treat a window as a top level window. Uses QWindow::isTopLevel() instead of manually checking parent. Updated the comment about embedded windows, which applies to all embedded windows, not just QAxServers windows. Change-Id: I7f9dbdf50044bf375ca21818ac29fbd3fe502166 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Move QWindowPrivate::globalPosition() definition out of headerTor Arne Vestbø2016-11-232-13/+15
| | | | | Change-Id: Icaf68600a20d1845a5667a49306686948a20b42e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* macOS: Remove unused method QCocoaWindow::parentCocoaWindow()Tor Arne Vestbø2016-11-232-10/+0
| | | | | | | | | | | Last used in 2011, to determine QCocoaWindow::globalGeometry(), which probably shouldn't have used transientParent in the first place. The parent is available through casting QPlatformWindow::parent(). Change-Id: I93fbcb41765944fbe0b79981ccf7d0062bb57719 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* Windows QPA: Use new EnableNonClientDpiScaling() for Windows decorationFriedemann Kleint2016-11-223-1/+44
| | | | | | | | | | Use newly introduced EnableNonClientDpiScaling() function to fix the decoration having the wrong size in multimonitor setups with per-monitor DPI awareness. Task-number: QTBUG-53255 Change-Id: Ic6e2f2a92f790259107d2a0837b96177cf3adb5f Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* Introduce QWindow::setFlag and QWidget::setWindowFlagDaniel Vrátil2016-11-224-1/+39
| | | | | | | | | | Analogous to QWidget::setAttribute(), introduce an API to easily enable/disable a single window flag without having to resort to w.setFlags(w.flags() | Qt::NewFlag). Change-Id: Ib0f7254a34c8d884cdec181c41b99e5ef035d954 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
* macOS: Prevent stale references to NSScreen during screen removalTor Arne Vestbø2016-11-221-0/+2
| | | | | | | | Task-number: QTBUG-57223 Change-Id: I7cdc075a4afee5ad8c23fd3c43a04f2a258b81f9 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* doc: clangqdoc must see SCTP classesMartin Smith2016-11-192-2/+2
| | | | | | | | | clangqdoc must parse the declarations for QSctpServer and QSctpSocket, not just for Q_OS_WIN, so Q_CLANG_QDOC must be tested as well. Change-Id: I70f5a0542b654826d9d36fe68930752e68caf6b6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* doc: clangqdoc must see class QWinEventNotifierMartin Smith2016-11-192-2/+2
| | | | | | | | | | | | clangqdoc must parse the declaration for QWinEventNotifier for all platforms, not just for Q_OS_WIN, so Q_CLANG_QDOC must be tested as well. Plus the qdoc comment for an invisible static function is converted to a non-qdoc comment in qvariant.cpp Change-Id: Ic41731decca55b3be837f9c5f832310513773e60 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* QChar::Direction: more specific link to unicode standardEdward Welbourne2016-11-181-1/+1
| | | | | | | | | | Giving the URL of unicode.org isn't much use; the standard is enormous and the reader shall have trouble finding the specific table that enumerates the direction types. Found a more specific URL (that looks like it should be stable) for this one link. Change-Id: I8abcedf530baf692d7e0c7f146f3066df223951f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows QPA: Reimplement calculation of window framesFriedemann Kleint2016-11-184-28/+74
| | | | | | | | | | | | | | | Instead of relying on AdjustWindowRectEx() and dirty-handling, capture the rectangles before and after the processing of WM_NCCALCSIZE and calculate the frame from that. This allows for changing window frames by handling WM_NCCALCSIZE and monitor-dependent window frames when using High DPI scaling. Task-number: QTBUG-53255 Task-number: QTBUG-40578 Task-number: QTBUG-56591 Change-Id: If8364a5440a6324ea5d470bf5b74e68942285abe Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.8' into dev" into refs/staging/devLiang Qi2016-11-18136-1250/+1115
|\
| * Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-11-17136-1250/+1115
| |\ | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/mac/default_post.prf mkspecs/features/uikit/default_post.prf Change-Id: I2a6f783451f2ac9eb4c1a050f605435d2dacf218
| | * QRawFont: Add a qHash overloadRobin Burchell2016-11-162-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | This will be used in QtQuick to avoid costly string manipulation (which in turn involves memory allocations). Change-Id: I51a67a4cd97cc576f399483c9c0c13da1e1c6e72 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * QCocoaMenu: Force NSMenuValidation when syncing itemsGabriel de Dietrich2016-11-161-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a menu item's enabled state changes after -[QCocoaMenuDelegate menuWillOpen:] is invoked, i.e., during or after QMenu::aboutToShow() is emitted, that state change may not be taken into account. This is because the automatic menu validation, upon which Qt relies, is not made aware of any such change. By calling -[NSMenu update] when syncing the QPA menu item, we induce Cocoa to invoke -[QCocoaMenuDelegate validateMenuItem:] and ensure that previously synced items, whose state may have changed, will be properly updated. This, however, has a small side effect, namely that menu-holding items will also go through the automatic menu enabling path and may appear disabled since, until now, they were not properly configured. In order to solve this, we set the action on those items as well, and make sure that both of QCocoaMenuDelegate's relevant methods, validateMenuItem: and itemFired:, properly process menu-holding items. Menurama manual test updated accordingly. Change-Id: I62f955538b8be09b8494ea0ce87fca7910148d38 Task-number: QTBUG-56850 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * winrt: Do not shadow variableMaurice Kalinowski2016-11-161-4/+4
| | | | | | | | | | | | | | | Change-Id: I70fc9254bfdfe42bf0e8d379537eb60b21be8275 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * winrt: move to range based loopMaurice Kalinowski2016-11-161-7/+9
| | | | | | | | | | | | | | | Change-Id: I0694adcff9b591eecf1025074e8b1c478484bd74 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * winrt: Fix ill-constructed loopMaurice Kalinowski2016-11-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | That loop could never have worked properly. Identified by analyze compile switch. Change-Id: I5e987dc9f5c57d3ffbcf054b7b417b506c02e7e1 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * Merge "Merge remote-tracking branch 'origin/5.7' into 5.8" into refs/staging/5.8Liang Qi2016-11-1643-146/+317
| | |\
| | | * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-1643-146/+317
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/common/linux-android.conf src/gui/opengl/qopengl.h src/network/socket/qnativesocketengine_winrt.cpp src/network/socket/qnativesocketengine_winrt_p.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/eglfs/api/qeglfsintegration.cpp src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp sync.profile Change-Id: If70aaf2c49df91157b864cf0d7d9513546c9bec4
| | | | * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-11-1542-150/+339
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/plugins/platforms/eglfs/qeglfsintegration.cpp src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp Change-Id: Id2da7c775439adb62646d5b741ee7c638042b34b
| | | | | * Cocoa: Make dictation via speech recognition workMorten Johan Sørvig2016-11-141-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Returning NSNotFound from the NSTextInputClient selectedRange implementation when there is no selection prevents dictation from activating (for unknown reasons). Return an empty {0, 0} range instead. Text input methods such as Pinyin still work after this change. [ChangeLog][macOS] Speech to text dictation now works for Qt text input. Change-Id: Ibf1729bdd271e8ed5ce3c9d2a0373c8ab3613d8e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | | | | * QClipboard: Fix emitting changed() in XCBPalo Kisa2016-11-141-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In XCB environment the QClipboard::changed() was not delivered if the QClipboard::clear() was issued by other Qt app/process. If the QClipboard::clear() is used, then the owner in xcb_xfixes_selection_notify_event_t is XCB_NONE, so we need make the decission to handle this event by the selection_timestamp and our m_timestamp[mode]. Task-number: QTBUG-56972 Change-Id: If4c486ac02223eac506465cac7ff1a07bd02a187 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | | | | * Revert "Optimize QJsonObject::operator=="Marc Mutz2016-11-142-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 862fa24179505ef725ff78bb64bdabd54bd00c95, which attempted to optimize QJsonObject::operator== under the assumption that the entries it holds are lexicographically sorted. They should be, because Object::indexOf() finds them by binary search, but apparently both fromJson(), as well as construction through op[] leave (some) entries unsorted. This behavior should be fixed, because other code relies on sorted entries, too, but until the problem is more fully under- stood, revert the patch to unbreak equality comparisons. Task-number: QTBUG-56843 Change-Id: I5b608c16d1bbcb4f01b75ce93bd58b49ff050be2 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | | | | * doc: Add missing documentation for QXcbWindowFunctions::setWmWindowRole()Alexander Volkov2016-11-121-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I5a457eb19fee011868cdf6d0534713c760fd57d2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: David Faure <david.faure@kdab.com>
| | | | | * doc: Remove obsolete note for QWidget::paintEvent()Alexander Volkov2016-11-122-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qt_x11_set_global_double_buffer() is dead code since Qt 5. Change-Id: Ie9a33b6f03dc2e39f12bc790292bb0d227f05c44 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | | | * Remove unused variable in QIconLoader::findIconHelper()Alexander Volkov2016-11-121-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Idac0b24631187063445ea5acfd078b2479359d52 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | | | | * Improve the validation algorithm for binary JSONLars Knoll2016-11-112-19/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add better boundary checks and catch (hopefully all) cases where invalid binary JSON could cause crashes. Change-Id: I206510b7c5e3ba953802a5f46645878e65704ecc Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | | | | * xcb: Warn and bail out when even the basic, dummy context failsLaszlo Agocs2016-11-101-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not move on to glGet since the behavior is undefined. Task-number: QTBUG-48986 Change-Id: Ifd279635ed1b8441f92697965d15ae3ecb59a7e3 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | | | * Enable GL prototypes with recent Khronos headersLaszlo Agocs2016-11-101-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent Khronos headers decided to break the world by guarding all function prototypes with GL_GLEXT_PROTOTYPES which has traditionally been used for extension headers only. Until this gets corrected - see https://lists.freedesktop.org/archives/mesa-dev/2016-September/128654.html - add the define to the config tests and qopengl.h. While 5.7 already has some of the qopengl.h fixes due to an upgraded ANGLE shipping with newer headers, this is a cross-platform issue that will surface everywhere eventually. Therefore we target the full set of fixes to 5.6. This time we also make sure the forced define of GL_GLEXT_PROTOTYPES is removed before including the ext header, thus apps get the ext protos only if they actually requested them. Task-number: QTBUG-56764 Change-Id: Ib2c6d2e7b71b8fb8683424f43e6289e64e4ee46c Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | | | * Do not guard tslib with evdevLaszlo Agocs2016-11-102-12/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | That relation is incorrect. We can have tslib support without evdev. Task-number: QTBUG-54998 Change-Id: I2c09bad73210fa4a13000077480c70365d482e2e Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| | | | | * Don't count no-break spaces as trailing spacesEskil Abrahamsen Blomfeldt2016-11-091-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No-break-spaces should not be counted in the space data, but rather be treated as any other non-breakable character. We were already taking care of this in the loop we reach if the item starts with a character which isn't whitespace, but there is a second loop for items that begin with whitespace characters. The result of this was that in certain circumstances where you gave the nbsp its own format and made the line wrap, the previous line would count an extra trailing space and it would swallow the first character in its following line. [ChangeLog][QtGui][Text] Fixed a bug where a no-break space would sometimes cause the first character of the containing line to not be displayed. Task-number: QTBUG-56714 Change-Id: Idd760a389052e6de70f6cc397122b217987fa5f2 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | | | | * Correct a Q_CHECK_PTR()'s parameterEdward Welbourne2016-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Someone cut-and-pasted but forgot one of the changes. Change-Id: I647dc8117ebfe8ce3d4b26d468b80c15d4e533e8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | | | * Documentation: Specify units for QTextDocument::pageSizeSteve Schilz2016-11-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Parameter in setPageSize is QSizeF. Without a specified unit it is hard to know what to use as input. Units depend upon the underlying paint device Change-Id: If001b3e9587d6085cc18017680fa20396e936adb Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Topi Reiniö <topi.reinio@qt.io> Reviewed-by: Nico Vertriest <nico.vertriest@theqtcompany.com> Reviewed-by: Steve Schilz <sschilz@pasco.com>