summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Silence MSVC warnings when using certain std algorithmsMarc Mutz2016-04-2610-14/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MSVC STL warns when passing naked pointers as non-bounded iterators to algorithms such as std::equal and std::copy, in an attempt to inform users that the range specified by that iterator has an implicit minimum size that the caller of the algorithm must ensure is met: warning C4996: 'std::_Equal1': Function call with parameters that may be unsafe - \ this call relies on the caller to check that the passed values are correct. To \ disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to \ use Visual C++ 'Checked Iterators' When building Qt, as well as when building user projects with qmake (cf. 0a76b6bc7f98900ea884cd10ccca1a332e5bdba5), we globally disable this warning (with -D_SCL_SECURE_NO_WARNINGS), but since we started using STL algorithms in public headers (e.g. in qvector.h), users get this warning in their own projects now, unless they, too, define said macro. But such a requirement is against the Qt policy to have headers that are warning-free as much as possible. The suggested way of fixing this warning is to wrap the naked pointer in a stdext::unchecked_array_iterator before passing it to the algorithm, cf. examples in https://msdn.microsoft.com/en-us/library/ttcz0bys%28v=vs.120%29.aspx or, together with the capacity-made-explicit, in a stdext::checked_array_iterator. To avoid ifdefs for platforms that don't have these extensions (which, incidentally, for the unchecked case, includes MSVC 2012), wrap the calls in macros. The end game here is to drop -D_SCL_SECURE_NO_WARNINGS, at least for public headers, even though this commit also adds the wrapper to implementation and private header files. An alternative to the wrapper would have been the version of std::equal that takes four iterators. However, that is a C++14 library feature, while this version of Qt still needs to compile with a C++98 compiler, and, more importantly, there isn't, and never will be, a corresponding 4-iterator version of std::copy. Task-number: QTBUG-47948 Done-with: Stephen Kelly <steveire@gmail.com> Change-Id: I1bbab257fb5f1c5042939c382a412b596112ff26 Reviewed-by: Stephen Kelly <ske@ableton.com>
* tst_QWidget/XCB: Use bottom/right corner of screen as safe cursor position.Friedemann Kleint2016-04-261-7/+15
| | | | | | | | | | | | Pushing the mouse rapidly to the top left corner causes KDE / KWin to switch to "Present all Windows" (Ctrl+F9) mode, showing all windows. This has been observed to be triggered programmatically by QCursor::setPos(0, 0) if there is no other window beneath and apparently depending on the perceived mouse "speed". Suppress this by using the bottom right corner for XCB. Change-Id: Id18d2f45a095ed4d4f365f010cf45a20b0d9435e Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Windows QPA/High DPI: Scale accessibility coordinates.Friedemann Kleint2016-04-262-4/+9
| | | | | | | | | Use High DPI when interfacing with the Accessibility API. Task-number: QTBUG-52943 Task-number: QTBUG-50991 Change-Id: Ica4489222dca5d58864172470e634f709deb69f8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Tablet device_information manual test: show wheel events receivedShawn Rutledge2016-04-262-1/+8
| | | | | | | | | We have a bug that proximity events are generating them spuriously; this is a way of testing it. Task-number: QTBUG-52921 Change-Id: I490dfcf8d5b325f612b733e29fd49de9418bb19e Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* OSX: mark mouse events from tablet devices as synthesizedShawn Rutledge2016-04-262-6/+8
| | | | | | | | | This is equivalent to d7db6c6c1944894737babf3958d0cff1e6222a22 on the xcb platform. Task-number: QTBUG-51617 Change-Id: I837a764c8382244307ba6aa02bd8bde12bd08bff Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* QZipReader - test that QFile::open was, indeed, successful.Timur Pocheptsov2016-04-261-4/+2
| | | | | | | | | Coverity, CIDs 10917, 10918. This fix looks like purely cosmetic and unneeded: we check f->error() after f->open(). Unfortunately, f->open() can fail without setting an error (if you provided an invalid mode). Change-Id: Idbfcb9305b3f004e5e425cb6076b41e193b8d473 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Change scroll and text areas to respect native wheel focus ruleMarko Kangas2016-04-263-3/+3
| | | | | | | | | | [ChangeLog][QtWidgets][QAbstractScrollArea,QTextEdit,QPlainTextEdit] Changed focus to Qt::StrongFocus. That respects platforms' native guidelines. Task-number: QTBUG-52559 Change-Id: I2aa25d25bbc15facce85ceb7d4a4c1d0ac7df962 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Add missing initializersTimur Pocheptsov2016-04-251-0/+2
| | | | | | | Coverity, CIDs: 10724, 10725. Data member _iterator is not initialized. Change-Id: I0c94f5cef031e208aab1687209282fae0317f0ab Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* xcb: Fix drag and drop to applications like Emacs and Chromium.Urs Fleisch2016-04-251-11/+44
| | | | | | | | | | | | Drops without matching time stamp do not work. I have fixed the issue by reanimating the findXdndAwareParent() function (adapted to XCB) and using it to find a matching transaction if all else fails. Task-number: QTBUG-45812 Change-Id: Ibca15bbab02ccf2f25280418e9edf36972ebf9a0 Reviewed-by: Błażej Szczygieł <spaz16@wp.pl> Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* Also update filter rules if there is a custom filter installed.Volker Krause2016-04-241-3/+0
| | | | | | | | | This is relevant if the custom filter passes through some categories to the previous one (which might be the default one). In this case changes to the filter rules never took effect. Change-Id: I1a3ab569857d43621ce5df4e690c6e64e6bc7a66 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* QWindowsVistaStyle: Fix CE_MenuBarItem with QStyleSheetStyle.Friedemann Kleint2016-04-231-1/+1
| | | | | | | | | Do not paint over CE_MenuBarItem when the palette is set to transparent by QStyleSheetStyle. Task-number: QTBUG-49115 Change-Id: Ib364017179d0852490daad094361eae0ead4fd5f Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
* QMessagePattern: Fix indentation and use QVector for a large structThiago Macieira2016-04-231-3/+6
| | | | | | | | | struct BacktraceParams is too big (more than one pointer), so using it with QList is inefficient. Let's use QVector instead. Change-Id: Id75834dab9ed466e94c7ffff144572c1eb3fb0e5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QMimeDatabase: fix mimeTypeForUrl for mailto URLsDavid Faure2016-04-232-1/+3
| | | | | | | | | | | The "path" of a mailto URL isn't a file, so we shouldn't try to do glob-based matching. I was getting application/x-ms-dos-executable for a .com domain and application/x-perl for a .pl domain... Change-Id: Ifc346c3bba83ba1a8476db3202492f4c2e4d52bb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* winrt: emit application activationMaurice Kalinowski2016-04-231-0/+2
| | | | | | | | | | | | | Previously the user only got informed about the application getting inactive or hidden, but not when the application was reactivated again. This can cause problems with applications using for instance a camera as that gets disabled when not being active and never return to a active state again. Change-Id: I5c1d8750db8e75043ecf261616a0bc98434a3863 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Windows/QProcess::startDetached(): Fall back to ShellExecuteEx() for UAC prompt.Friedemann Kleint2016-04-231-0/+40
| | | | | | | | | | | | | When running a process that requires elevated privileges (such as regedt32 or an installer), the Win32 API CreateProcess fails with error ERROR_ELEVATION_REQUIRED. Fall back to ShellExecuteEx() using the verb "runas" in that case, bringing up the UAC prompt. Task-number: QTBUG-7645 Change-Id: Iee82a86a30f78c5a49246d2c0d4566306f3afc71 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* OpenGL/contextinfo-Example: Add command line options and status label.Friedemann Kleint2016-04-232-0/+29
| | | | | | | | | | Add command line options to be able to set the QCoreApplication attributes that influence Open GL context creation and add a status label at the bottom that displays it besides the QT_OPENGL environment variable. Task-number: QTBUG-52693 Change-Id: Id9793292596e0feb3da5220fde2e5b2e495f87ff Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Windows/tst_QTcpServer: Suppress crash notification of crashingServer.Friedemann Kleint2016-04-231-0/+7
| | | | | | | | Suppress message dialog of the test helper as does QTestlib. Task-number: QTBUG-52714 Change-Id: I5efd7d72f77c7689500ecaccf46f1f9dfb312140 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* QAbstractSocket:waitForReadyRead(): fix handling UDPAlex Trotsenko2016-04-231-1/+1
| | | | | | | | Allow sockets in bound state to wait for notifications. Task-number: QTBUG-52449 Change-Id: I5c02bd61db68abca652312d4d59023963b05b3c5 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* xcb: Properly process enter/leave eventsBłażej Szczygieł2016-04-223-15/+64
| | | | | | | | | | | | | | | | | | Ignore enter/leave events when there is a window under mouse button. Unset window under mouse button if other window is grabbed. Smarter ignoring (un)grab ancestor enter/leave event. Ignore ungrab inferior leave event. Amends: b9f76db30d261421e4da58f29053181af04ceb4d Task-number: QTBUG-46576 Task-number: QTBUG-51573 Task-number: QTBUG-52332 Task-number: QTBUG-52488 Change-Id: I8d926309aa60bb8929728691c31ecf93d1e299ad Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* dbus: make QDBusArgumentPrivate destructor virtualPeter Wu2016-04-221-1/+1
| | | | | | | | | | | | | Make the destructor of QDBusArgumentPrivate virtual as it may store other types (QDBusDemarshaller). Suggested by Thiago. Fixes a "new-delete-type-mismatch" error reported by AddressSanitizer. Task-number: QTBUG-52176 Change-Id: I9ac19050840530ca9cae893b10093185d31e0448 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: David Faure <david.faure@kdab.com>
* _q_networkSessionStateChanged - fix weird logicTimur Pocheptsov2016-04-222-2/+2
| | | | | | | | | a != A || a != B looks suspiciously wrong. Found, unfortunately, only by Coverity (CIDs 152247, 152249). Change-Id: Ia7ec810dde2a3a33ae6fc5644a4eebf279dcffe8 Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* QFileSystemModel: fix updating QFileInfo for a node after a file renameAlexander Volkov2016-04-222-8/+34
| | | | | | | | | | | | | | Use the correct parent path for the renamed file when creating QFileInfo. It must be a path to the parent directory, not to the root directory of the model. Modify tst_QFileSystemModel::setData() to test renames in subdirs of the root directory of the model. Change-Id: I69d9e3a937616857a81617791ed118af3f6eea05 Task-number: QTBUG-52561 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* qlockfile_unix - code cleanupTimur Pocheptsov2016-04-221-5/+7
| | | | | | | | | | Coverity's CID 157687: QCache::insert, indeed, can delete (immediately) the object we're trying to insert. While this never happens actually in qlockfile_unix since we have max cost 10 and insert with cost 1, the code does not look good and Coverity is not happy. Change-Id: I16a428017bf86e151afe5256906e4cab1ef4044a Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Fusion style: Observe text alignment of QGroupBox.Friedemann Kleint2016-04-221-1/+17
| | | | | | | | Take alignment into account in QFusionStyle::subControlRect(). Task-number: QTBUG-49068 Change-Id: Ia8f2d06c46b24761bff537247bbadd3323e41fa9 Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
* Windows QPA/GL: Avoid crash in GL driver.Friedemann Kleint2016-04-221-3/+2
| | | | | | | | | | | | QWindowsStaticOpenGLContext::doCreate(): Invoke QWindowsOpenGLTester::supportedRenderers() only when needed; specifically, do not unnecessarily call it when GLES/SW renderer is specified. Amends change b4c8e1517455becb138876c08b3bdd880a80770d. Task-number: QTBUG-49541 Task-number: QTBUG-52693 Change-Id: I58d1c584d194f8e7fee35ee16b77575f86d3c22e Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* QWidget::grab(): Use device pixel ratio.Friedemann Kleint2016-04-222-4/+21
| | | | | | | | | | Return pixmaps with device pixel ratio similar to QScreen::grabWindow(), cf c0963486ce689e778d59dafd26d36d8ef9e3ee74. Adapt kernel tests accordingly. Task-number: QTBUG-52137 Change-Id: I9ce276d5e2d87ae0d39c8639267d1ac283fed854 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Cocoa integration - add a protection against dangling pointersTimur Pocheptsov2016-04-222-2/+10
| | | | | | | | Backport watcher-sentinel trick (QPointer->QObject) from dev. Task-number: QTBUG-42059 Change-Id: I9b2c7cde635c2ed9a3f667f216da62870d0b5ccb Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* QHeaderView: fixing selection of reordered rows and columnsVyacheslav Grigoryev2016-04-212-48/+94
| | | | | | | | | | | | | | | | | | The old code incorrectly calculated visual region for a selection (specified by QItemSelection object) in case of reordered / swapped rows or columns. It used the leftmost and rightmost (upmost and downmost for vertical mode) logical indexes directly. However some middle logical index (in case of reorder) may be the leftmost or rightmost visual index. In such cases the repainting didn't work properly. This fix first checks whether reordering / swapping is in use. If it isn't (ie visual=logical) we use code similar to the old code. Otherwise the new code scans all selected logical indexes, translates them into visual ones and gets the correct leftmost and rightmost indexes. [ChangeLog][QtWidgets][QHeaderView] Fixed a repainting issue when items had been reordered. Task-number: QTBUG-50171 Change-Id: If6afabebf445cf32a8e0afe262b6ee149e7c4b2b Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* QString: Avoid searching for a needle which is longer than the hayStephen Kelly2016-04-211-0/+3
| | | | | | | | | | Avoid incurring the cost of converting the latin1 data in that case. Several existing QString unit tests excercise the new code path. Task-number: QTBUG-52617 Change-Id: I27256d9e7db34f09543e244a79d754ff7932f0d0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix Group-relative specification of files in generated Xcode projects.Jake Petroules2016-04-201-6/+6
| | | | | | | | | | | | | | | | | | | | Xcode does not recognize "<Group>" with a capital G, only "<group>" with a lowercase g. As a result, paths of files within these groups are calculated incorrectly. For example, dragging any external file into the Xcode project would result in its leading slash being removed (while still treated as an absolute path - broken reference). Furthermore, the dropdown in Xcode displayed the Group location as an invalid string instead of the correct "Relative to Group". This patch restores correct behavior. This fixes a regression introduced in f09ec09c208c75a16abe05b6bb505a1fc58775a6. Task-number: QTBUG-52701 Change-Id: I9af5360049a79e7958301e4090a9a542bab0af8c Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Doc: Fix links to QProcess::start(const QString &, OpenMode)Joerg Bornemann2016-04-201-3/+5
| | | | | | | | | The startDetached(const QString &, OpenMode) overload and the QT_NO_PROCESS_COMBINED_ARGUMENT_START macro must point to the start(const QString &, OpenMode) overload. Change-Id: I7607fcb92b9f1ef3547a4a1aadc950532024225a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* QMacPinchGestureRecognizer - fix totalScaleFactorTimur Pocheptsov2016-04-201-1/+2
| | | | | | | | | | | | | Set totalScaleFactor on a pinch gesture (OS X) so that it works the same way as in 'standard' gesture recognizer and corresponds to what we document. [ChangeLog][QtWidgets] : QPinchGesture on OS X now behaves like on other platforms: totalScaleFactor is the magnitude of the pinch and scaleFactor is the delta for the current event. Task-number: QTBUG-48138 Change-Id: I66b9a1df05cbe106b76aed8f15d900bcdd41fdb7 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* QWindowsTheme::standardPixmap(): Do not create pixmaps with DPR.Friedemann Kleint2016-04-201-8/+2
| | | | | | | | | | | | | The given size is mostly ignored and the resulting pixmaps typically end up in a QIcon, which will clobber the DPR anyways when returning a pixmap for a given size. Moreover, returning a message box icon with a DPR > 1 when high DPI scaling is active and Qt::AA_UseHighDpiPixmaps is not set causes the pixmap to become too small due to some scaling error. Task-number: QTBUG-52622 Change-Id: I8aaaa97667d6c168040e19b7edad9dfb7517f70f Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* QMessageBox: Try to pass window handle to QIcon::pixmap().Friedemann Kleint2016-04-201-2/+11
| | | | | | | | | Try to find a window handle so that the pixmap matching the device pixel ratio of the screen can be found. Task-number: QTBUG-52622 Change-Id: Iccf3cea82065af5e055d3cd932cd0808b29b15dc Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Add a manual styles test.Friedemann Kleint2016-04-203-1/+240
| | | | | | | Task-number: QTBUG-49374 Task-number: QTBUG-52622 Change-Id: Ic205590725780147aec3abc0f4be2058d001d358 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Fix compilation MSVC warning in 3rdparty/rfc6234Kai Koehne2016-04-202-33/+119
| | | | | | | | | | | | Fixes C4838 warnings: rfc6234/sha384-512.c(326): warning C4838: conversion from '__int64' to 'quint64' requires a narrowing conversion rfc6234/sha384-512.c(331): warning C4838: conversion from '__int64' to 'quint64' requires a narrowing conversion rfc6234/sha384-512.c(796): warning C4838: conversion from '__int64' to 'const quint64' requires a narrowing conversion Change-Id: Ib531d376d3fd49785e227455f280fc4072bba8c5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Doc: Fix typo in QAtomicPointer::loadAcquire documentationKai Koehne2016-04-201-1/+1
| | | | | Change-Id: I1b0e6b0f230b2f17595a9cc91234a011ad0260b5 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* QWindowsXPStyle: Enlarge QLineEdit/QComboBox when High DPI scaling is active.Friedemann Kleint2016-04-191-3/+5
| | | | | | | | | | In QWindowsXPStyle::sizeFromContents(), scale the margins using the devicePixelRatio and round the height up. Typically increases the height by 2 pixels when the device pixel ratio equals 2. Change-Id: I446ad518c3808a6454a08db7b66a942d37c1703f Task-number: QTBUG-49374 Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
* QTabBar: Fix crash when the tab being dragged is deleted programmatically.Friedemann Kleint2016-04-191-0/+3
| | | | | | | | | | Call QTabBarPrivate::moveTabFinished() from QTabBar::removeTab() to cancel any drag in progress to prevent crashes due to invalidated indexes. Task-number: QTBUG-52527 Change-Id: I5bd8cc6f55e5aea1f1a4710494ba5b92939a42ee Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Improve performance of socket notifications on WinCEAlex Trotsenko2016-04-192-2/+27
| | | | | | | | | | | | | | QEventDispatcherWin32 on WinCE uses a separate low-priority thread to monitor sockets activity, so changing the state of notifiers occurs asynchronously to the main thread. This makes a message-based socket activation mechanism ineffective. To avoid timeouts in the helper thread, update the thread's pool directly from the (un)registerSocketNotifier() functions. Change-Id: I702c32d69dce09323ca5f65dc2ee1407842e41ef Reviewed-by: Tobias Koenig <tobias.koenig@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* compile.text: Split huge line into multipleThiago Macieira2016-04-191-1/+16
| | | | | | | Makes it easier to add stuff to it. Change-Id: Id75834dab9ed466e94c7ffff1445727a2ed975cc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Fix build on Linux/x32 systems (x86-64 ILP32)Thiago Macieira2016-04-191-2/+2
| | | | | | | | | | When I tested this, it compiled, but either I wasn't using the same compiler or the problem happens during linking: we can't use .quad (64-bit) with a relocation on x32. So instead, let's use .long (32-bit). Task-number: QTBUG-52658 Change-Id: Ifea6e497f11a461db432ffff14468d1a16f49c67 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* QNetworkReplyImplPrivate - potential nullptr dereferenceTimur Pocheptsov2016-04-191-6/+2
| | | | | | | | | | | Found by Coverity, CID 11351. If we check 'if (backend)' at one line, not clear why we do 'if (bakcend->canResume())' two lines above without any test. Also, 'delete backend' is noop if backend is nullptr, so ... even this 'if (backend)' is ... not needed. Change-Id: I7a46ce04baeb9251debb7b246954911df58880ca Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* Add the ability to change precompiled header useJames McDonnell2016-04-191-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | Give the Windows configureapp the same -pch/-no-pch arguments found in the Linux configure script. Using command line arguments to enable/disable precompiled header use is preferable to mkspec changes. Make -pch the default for all toolchains. In particular, this makes -pch the default for QNX on Windows. Previously, QNX on Windows had an implied default of -no-pch. Precompiled headers are the default for QNX on Linux; they should also be the default for QNX on Windows. A 'dictionary["PCH"] = "no"' will need to be added in Configure::applySpecSpecifics for any toolchain that should default to -no-pch (none known at this time). -no-pch is implemented by putting a "CONFIG -= precompile_header" in qmodule.pri. This ensures that Qt is built without precompiled headers (as requested) even if allowing precompiled header use is the default for the toolchain. Task-number: QTBUG-52578 Task-number: QTBUG-11545 Change-Id: I1b59bc2d416c5ba169161c5b3cc13accd76eeac8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QWindowsXP/VistaStyle: Move the Vista treeview handling to ↵Friedemann Kleint2016-04-184-76/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWindowsXPStylePrivate. QWindowsXPStylePrivate maintains a list of theme handles for various style items. The derived class QWindowsVistaStylePrivate had logic to use a special helper window with the "explorer" window theme set to obtain the correct treeview arrow branch indicator (arrow shape for Vista as opposed to '+'/'-' on Windows XP) when creating the "TREEVIEW" theme. This required calling the helper function QWindowsVistaStylePrivate::initTreeViewTheming() before QWindowsXPStylePrivate::createTheme(), which is prone to errors and initialization order issues. This could be solved by making QWindowsXPStylePrivate::createTheme() virtual or similar, but since it the fate of QWindowsXPStylePrivate is most likely to be merged into QWindowsVistaStylePrivate; it was decided to move the entire special handling of the Vista treeviews into QWindowsXPStylePrivate. The existing enumeration value QWindowsXPStylePrivate::TreeViewTheme is renamed to QWindowsXPStylePrivate::XpTreeViewTheme and a new value QWindowsXPStylePrivate::VistaTreeViewTheme is added for which QWindowsXPStylePrivate::createTheme() invokes the special handling. This also removes the need to destroy the helper window in unpolish(), which should save some initializations. Task-number: QTBUG-52230 Change-Id: I0492ecf38fb3e5eabc4ecbdef70f0bf05e82e104 Reviewed-by: Adam Light <aclight@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Fix detection of the proxy base style when QT_STYLE_OVERRIDE is setAlexander Volkov2016-04-181-3/+3
| | | | | | | | | | | | QProxyStyle checks QApplicationPrivate::styleOverride but ignores QT_STYLE_OVERRIDE when it is trying to detect the name of the base style. Set styleOverride from QT_STYLE_OVERRIDE to make it work. Thus there is no need to check QT_STYLE_OVERRIDE from multiple places. Change-Id: I2a64b5ff5443701f800ef5d2a9cb425068f909f1 Task-number: QTBUG-52596 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Xcb: Fix compilation with -no-c++11Kai Koehne2016-04-171-1/+1
| | | | | | | | | nullptr (introduced in commit d7db6c6c194) is a C++11 keyword. Change-Id: Id6aa639f5d2ddbe8b228f8648754c2b24ef53799 Reviewed-by: David Rosca <nowrep@gmail.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com> Reviewed-by: Uli Schlachter <psychon@znc.in>
* Windows QPA: Fix top level flags for Qt::SplashScreen.Friedemann Kleint2016-04-161-0/+2
| | | | | | | | | Set Qt::FramelessWindowHint so that the translucency logic triggers correctly (raster windows). Fixes the splash screen of Qt Linguist to be transparent. Change-Id: I3d50129b7f15bee0eff6ce3318c7f0fec055dc45 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* Fix gesture processing on OS X 10.11Timur Pocheptsov2016-04-151-1/+25
| | | | | | | | | | | | Starting from 10.11 beginGestureWithEvent/endGestureWithEvent never gets called, we must test event.phase instead (magnify/rotate gestures). For a magnify/rotate gesture, we'll first test phase (on 10.11) and manually call our begin/endGestureWithEvent. Task-number: QTBUG-48666 Change-Id: I69752b3c6578360b98607ceea2cffb5c166bb7c9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Android: Update Ministro's urlBogDan Vatra2016-04-151-1/+1
| | | | | Change-Id: Ib255c8127477f3ad4f3bb0c09569d142f51a6be4 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>