summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Add a user-controlled auto-redirect policyTimur Pocheptsov2017-01-197-6/+48
| | | | | | | | | | | | With this new policy, after emitting 'redirected', QNetworkReplyHttpImpl waits for client code to decide if QNAM should follow this redirect or not. The client can either allow this redirect by emitting 'redirectAllowed' or abort the reply. Task-number: QTPM-236 Change-Id: Ia04619f6bd1f0caa477833ae859b24033027b2e1 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Windows platform headers: Add isTabletMode()Friedemann Kleint2017-01-184-2/+56
| | | | | | | | | Add a bool function querying Windows 10 tablet mode. Task-number: QTBUG-56831 Change-Id: Ief728a7d80a11ba79f7859033ff4be6ef79bbd4e Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* DRM/KMS config: add support for specifying the primary screenLaszlo Agocs2017-01-187-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not having a way to say that a given output should be registered as the primary screen (meaning it comes first in the QGuiApplication::screens() list, emits primaryScreenChanged() signal etc.) can be a problem for some systems. The order of the outputs array in the JSON configuration file is not relevant in this respect since screens are registered either in the original DRM connector order, or, when the virtual desktop layout is specified via virtualIndex, in the order specified by virtualIndex. The primary screen status is independent from this. Therefore, add a new, optional boolean property: primary. For example, the following forces the QScreen corresponding to the VGA output to be the primary screen on the Renesas R-Car H2 board, even though by default it is the HDMI one that happens to be reported first by the system. { "device": "/dev/dri/card0", "outputs": [ { "name": "HDMI1", "mode": "1280x720" }, { "name": "VGA1", "mode": "1280x720", "primary": true }, { "name": "LVDS1", "mode": "off" } ] } In addition, improve the quality of the logging output. [ChangeLog][Platform Specific Changes] Added support for specifying the primary screen in the JSON config file in QT_QPA_EGLFS_KMS_CONFIG when running on DRM/KMS with eglfs. Task-number: QTBUG-57980 Change-Id: Iba490800dee3b7162c68c4d40b0822f3f6d81b69 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Remove OpenGL dependency from qTriangulateLaszlo Agocs2017-01-183-33/+30
| | | | | | | | | | | | | | | | | | | The original implementation is only suitable as long as the only client is the GL paint engine which will call the function with the GL context current. In other cases this cannot be ensured. For instance, doing triangulation on the gui thread in a Quick application using the threaded render loop will have to deal with not having a current context on that thread at all. Doing triangulation on worker threads has the same problem as well. In addition, in modern Qt versions a -no-opengl build does not imply no accelerated graphics API. Therefore, drop the ElementIndexUint check from qtriangulator.cpp and leave it up to the caller to tell if uint indices are supported or not. Change-Id: I7491d84981ee22d05c5fde08994dbb3a4e2432e9 Reviewed-by: Gunnar Sletta <gunnar@crimson.no>
* Introduce QImage::reinterpretAsFormatAllan Sandfeld Jensen2017-01-182-0/+39
| | | | | | | | | | | | | QImage::reinterpretAsFormat can be used to change the format of an image without converting the data, to correct wrong formats or narrow the format to an opaque one if found to be opaque. [ChangeLog][QtGui][QImage] A new method reinterpretAsFormat is has been added to change the format of a QImage without converting the data. Change-Id: I5e15bc5a1c474a35d3921b06299008ab2effd945 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Add eglfs-viv support for INTEGRITYKimmo Ollila2017-01-182-1/+8
| | | | | | | Change-Id: I5ea23eeac930dcc628047e3322061d543bddb643 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Nikola Velinov <nvelinov@ghs.com>
* Remove support for WinRT 8.1 and Windows Phone 8.1Maurice Kalinowski2017-01-1824-457/+18
| | | | | | | | [ChangeLog][QtBase][General] Removed support for WinRT/Windows Phone 8.1. Task-number: QTBUG-57288 Change-Id: Ifd6d6780cbbdb710d99556ba3d2fb2e514d4f789 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Polish up the QOperatingSystemVersion API and documentationJake Petroules2017-01-182-66/+64
| | | | | | | | | | | | | operator== and operator!= have been disabled, as they are likely to be misused and are not particularly useful in practice. The same goes for the QVersionNumber conversion convenience functions. The constructor normalizes version component values so that invalid versions like [5, -1, 3] cannot be constructed and made to wreak havoc on assumed logic. Change-Id: Iabb6876bd5dc11522032837f78cf825b921a49b2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* macOS: Keep reference to NSScreen via index instead of pointerTor Arne Vestbø2017-01-173-20/+28
| | | | | | | | | | | | Manual revert of 73e68a9c0f8b6, which was flawed. macOS can, and will, dealloc and realloc NSScreen instances for a given screen index, for example when deallocing an NSWindow, which has the screen as an auxiliary resource. This is also documented for +[NSScreen screens], which states that "The array should not be cached". Task-number: QTBUG-58128 Change-Id: I926513a26cb7af52acd7fc5ee9380ef29ede65e6 Reviewed-by: Robin Burchell <robin.burchell@crimson.no>
* QMacStyle: fix focus ring thickness on retina displaysGabriel de Dietrich2017-01-171-11/+29
| | | | | | | | | | | | | | | | | | NSSetFocusRingStyle() doesn't take the device pixel ratio into account for offscreen graphics contexts. As a result, the focus ring would appear too thin on retina displays. Therefore, we need to render the focus ring in a more manual way. The only added dependency is the focus ring's opacity value and thickness. This patch fixes CE_FocusFrame and the focus ring around regular QPushButtons. More work needs to be done for other widgets that currently rely on HITheme or NSControl–NSCell to draw their focus ring. Task-number: QTBUG-57843 Change-Id: I2c6f273698fdfd5ad7344a9688e96aef6da906f0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* HTTP/2 - fix SETTINGS frame validationTimur Pocheptsov2017-01-171-1/+1
| | | | | | | | | When testing peer's SETTINGS frames, namely MAX_CONCURRENT_STREAM identifier, we should test against upper limit _new_ values from these frames, not our own pre-set maxConcurrentStreams (it apparently was a typo). Change-Id: I2036e45b0f931914f75ca99142192e2f9385623e Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Add redirects policy to QNetworkAccessManagerTimur Pocheptsov2017-01-179-32/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes it possible to enable/disable redirects on QNAM level (before it was per-request only). This policy would be applied to all subsequent requests* created by QNAM. The policies we support at the moment: a. Manual - that's what we always had - it's up to a user to handle redirects. b. NoLessSafeRedirectsPolicy - we allow http->http, http->https and https->https redirects, but no protocol 'downgrade' (no https->http redirects). c. SameOriginPolicy - we check that protocol/host/port are the same. Updated tst_qnetworkreply. *We previously were enabling redirect for each request, by setting FollowRedirectsAttribute on QNetworkRequest object. For backward compatibility this attribute has a higher priority (if set) than QNAM's policy (and it will work as NoLessSafeRedirectsPolicy). [ChangeLog][QtNetwork] Added redirects policy to QNAM Task-number: QTPM-239 Task-number: QTPM-237 Change-Id: I493d1728254b71b61b5504937e8e01dca5953527 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* QListView: Remove unneeded check inside the if blockAlexander Volkov2017-01-171-3/+1
| | | | | | | info.wrap is already checked in the outer if condition. Change-Id: I3a40dbaae22f00c66acb6f483b7b4786c5580d94 Reviewed-by: David Faure <david.faure@kdab.com>
* Network (HTTPS): prevent recursion among ->close() methodsEdward Welbourne2017-01-171-21/+23
| | | | | | | | | | | | | | | | | | We observed a stack-trace in which, while handling an error, QHttpNetworkConnectionChannel::close()'s call to its socket->close() triggered (when the socket was a QSslSocket) a flush() which asked its backend to transmit() which tripped over the original error, which duly triggered endless recursion. Transiently clear the socket member, during its ->close(), to prevent this; do the same in abort(), to preserve its structural correspondence to close(). Restructure both so that any recursive call's setting of state is overwritten by the top-level call's, while this still uses the prior socket state (not the state after close() or abort() and any recursion) to determine final state. Task-number: QTBUG-56476 Change-Id: If69e97f7a77a729bf2338ed14214c65aa95f8b05 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Fix whitespace, formatting, and line length in QOperatingSystemVersionJake Petroules2017-01-172-54/+102
| | | | | Change-Id: Ie26571a8098e8215a6bc1e0e363763e5fc546bcd Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Introduce QNetworkAccessManager::clearConnectionCache()Sebastian Lösch2017-01-163-4/+26
| | | | | | | | | Sometimes it is desirable to use a new connection but keep already entered user credentials for usability reasons. This is now possible by clearing the connection cache (but keeping the authentication cache). Change-Id: I2f5f64836ce19f81c8525701783a3da823dd468e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Add screen product informationPier Luigi Fiorini2017-01-164-0/+86
| | | | | | | | | | | | | | | | | | | | | Add new methods to QPlatformScreen that platform plugins can reimplement in order to provide more information such as vendor, model and serial number. Expose that information as QScreen properties. A use-case for this feature is a Wayland compositor that maps screens to Wayland outputs hence it needs to replicate the information. This information can also be added to the diagnostic output of qtdiag. [ChangeLog][QtGui][QScreen] Add manufacturer, model and serialNumber properties. Change-Id: Ia6945f41023340602ef9d618e0d833a0c1825ab3 Reviewed-by: Johan Helsing <johan.helsing@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* QGradient: add a setStops fast-path for conformant QGradientStopsMarc Mutz2017-01-141-0/+27
| | | | | | | | | | | | | | The setStops() docs state that the stops need to be sorted and the positions must be valid. But the implementation sorts the stops and filters out invalid ones, so we probably need to keep that behavior, which, however, causes memory allocations and, potentially, O(N²) behavior, because setColorAt() uses a form of Insertion Sort with linear scanning... Add a fast-path for the common case that users adhere to the docs and pass valid stops. Change-Id: I93099a57bc4f37d1240a9e9f763618fd5095bc64 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix build for INTEGRITYKimmo Ollila2017-01-133-3/+6
| | | | | Change-Id: I2c41295688e962eb263f2180bebfd1dd37613804 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* qglobal.cpp/QSysInfo::macVersion(): Silence deprecation warningJake Petroules2017-01-131-0/+3
| | | | | | | | | | clang/g++ still warn when encountering the implementation of a deprecated function. Follows up 21a247adb47a45a23c0e014bd42979ccbeb11488 Change-Id: I6ab1695acb520ef7ce7cb1896545d02607c3ce29 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* Remove qtypetraits.h's contents altogetherGiuseppe D'Angelo2017-01-1211-77/+39
| | | | | | | | | | | | | | | | | So that QFlags can use an (un)signed int matching the underlying type as identified by the compiler and not by us. Requires fixing a few warnings about sign conversion due to QFlags misusages in qtbase that were either plain wrong, or were relying on the enum being backed by an (un)signed int when it wasn't. Keep qtypetraits.h in the source tree in order to prevent source breaks if some downstream #includes it (note however that it did not contain any public API). Change-Id: Ib3a92b98db7031e793a088fb2a3b306eff4d7a3c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add expandingListItems property to QListViewAlexander Volkov2017-01-123-4/+46
| | | | | | | | | | | | | | | | This property allows to change the default behavior in which list items occupy the entire width of the column. Setting it to false will reduce their widths to the minimum values, thus allowing to have intermediate free space. Then the user will be able to begin selections by mouse from this space. [ChangeLog][QtWidgets][QListView] Added expandingListItems property. Change-Id: I6bd1b147fd0335324310a165104c36f6b0d6ac9f Task-number: QTBUG-56606 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* Use QString::asprintf(), QStringBuilder, and the multi-arg overload of ↵Alexander Volkov2017-01-1219-89/+79
| | | | | | | | | | | | | QString::arg() ... instead of sequential .arg(const QString &) callings. It saves memory allocations and prevents unexpected results if replacing strings contain place markers. Found with clazy's qstring-arg check. Change-Id: I3912275a6e11c6fb7559ff5623f2e8cde9b7f07a Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove two unused static methods of QDateTimePrivateEdward Welbourne2017-01-121-3/+0
| | | | | | | ... along with the two matching unused methods of QDateTime's test. Change-Id: Id11a4b1b0132587f0df451d49c0043e9425d87ad Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QCocoaWindow: Fix 10.10 sheet API deprecation warningGabriel de Dietrich2017-01-121-3/+5
| | | | | | | | | | | | | | 'beginSheet:modalForWindow:modalDelegate:didEndSelector: contextInfo:' is deprecated: first deprecated in macOS 10.10 - Use -[NSWindow beginSheet:completionHandler:] instead [-Wdeprecated-declarations] Similarly, although it won't emit any warning, we replace the usage of -[NSApplication endSheet:] wit -[NSWindow endSheet:]. Change-Id: Iae71247f818b7183d09c6831fa4cb1b71a54a87a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Provide sensible defaults for QCoreApplication::applicationVersionJake Petroules2017-01-124-11/+149
| | | | | | | | | | | | | | | | [ChangeLog][QtCore] QCoreApplication::applicationVersion now defaults to an appropriate platform-specific value. On Windows, it defaults to the PRODUCTVERSION parameter of the VERSIONINFO resource for classic desktop apps, and the version attribute of the application package manifest for Univeral Windows Platform apps. On Apple Platforms (macOS, iOS, tvOS, watchOS), it defaults to the CFBundleVersion property of the information property list (Info.plist) file. On Android, it defaults to the android:versionName attribute of the AndroidManifest.xml manifest element. On other platforms, the default remains an empty string. Task-number: QTBUG-57715 Change-Id: I26f83dd00737e06f4321cf962aa5fab8398104ec Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows QPA/Open file dialog: Copy non-filesystem itemsFriedemann Kleint2017-01-111-6/+73
| | | | | | | | | | | | | | | | With the introduction of the new IFileDialog interfaces in Qt 5, the open file dialog no longer was able to open items on MTP mounted devices. The Win32 API GetOpenFileName() used in Qt 4 would hide this by creating a local copy of the file in the INetCache folder. Add code to emulate the behavior in QWindowsNativeOpenFileDialog::dialogResult(). Task-number: QTBUG-57070 Change-Id: I88cccfbf9697585225356cc864df67c86a912c91 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Windows QPA: Refactor conversion of IShellItemFriedemann Kleint2017-01-111-119/+229
| | | | | | | | | Introduce a light wrapper class around IShellItem which hides its idiosyncracies. Task-number: QTBUG-57070 Change-Id: I60a825ea7a826d67859ab82537d614ecc3367692 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove unused QEmptyModelMarc Mutz2017-01-111-12/+0
| | | | | | | | | It's not exported and, while all-inline, is not used anywhere in Qt. Since it's in a private header, it follows that we can safely remove it. Change-Id: I4b5534e4cf8187232bdce0a9f7a4795ece1e3555 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* moc: Don't test _id if there are no methods or propertiesRobin Burchell2017-01-111-2/+9
| | | | | | | | | This is unnecessary (as the fallback behavior is return _id anyway), and it makes coverity unhappy. Coverity-Id: 173293 Change-Id: I91c016f3ed363319c6413ab3c2688698faf4f10f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* moc: Don't check for signalList sizeRobin Burchell2017-01-111-1/+1
| | | | | | | | We already check methodList, and as it is comprised of signalList, slotList and methodList from cdef, this is redundant. Change-Id: I0d1791f821134060aa20a8ea9b57f049b2701bf9 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Simplify fileTimeToQDateTime() by having it return a UTC timeEdward Welbourne2017-01-113-18/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids so many complications. The prior code, using SystemTimeToTzSpecificLocalTime(), lead to unhelpful results when the QDateTime() implementation used MS-POSIX's defective mktime(). Although SystemTimeToTzSpecificLocalTime() is actually more correct, we were getting inconsistent results by mixing the two: and eliminating the use of mktime() turns out to be decidedly tricky. So, to avoid inconsistency, stick with a UTC time (which is what FILETIME is defined as). Change QFileInfo's methods to explicitly convert .toLocalTime() where appropriate and document that these methods do indeed return local time (as we conjecture has been taken for granted by callers). Also added a regression test for the reported case of this going wrong. A time-stamp from before Russia's (permanent, not DST) change of TZ could end up inconsistently handled between file-system meta-data and raw date-time APIs, due to cross-talk between different MS-Win time APIs. [ChangeLog][QtCore][QFileInfo] Made sure that all file lifecycle times are in local time. This was probably true before, but is now explicit. Task-number: QTBUG-48306 Change-Id: Ic0b99d25c4168f623d31967bc60665c0c4f38a14 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* iOS: Detect mismatched calls to IM::update() before IM::setFocusObject()Tor Arne Vestbø2017-01-111-2/+12
| | | | | | | | | | The focus object should be updated, resulting in a reset(), before any manual calls to update() from client code. To be on the safe side we try to detect when this assertion fails and manually fix the situation, so that we show/hide the keyboard correctly based on the new focus item. Change-Id: I15a614cc9553b0a26b0dc7f7beefb56a84645861 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* qhttp2protocolhandler - handle proxies correctlyTimur Pocheptsov2017-01-111-3/+12
| | | | | | | | For requests through proxy, the Request-URI (':path' header) must contain full url. Change-Id: Ibecdf4556b0cecf731da0f89b241bb86a07fa3ad Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* HTTP/2 - fix handling of GOAWAY frameTimur Pocheptsov2017-01-112-12/+26
| | | | | | | | | | | | | | | | | | | - Fix the case when we erroneously handled stream ID == 0 in a GOAWAY frame as an invalid stream ID. - _q_receivedReply: convert do{}while() loop into to while(){} to prevent it from handling any frames after GOAWAY frame received and all active frame finished. - sendRequest - if we received GOAWAY, also clear spdyRequests in the connection channel, otherwise it keeps re-trying to send requests! - Http network connection channel never resets a protocolHandler in _q_encrypted/ _q_connected, which is BAD for HTTP/2, since HTTP/2 has unique per-connection compression context and must be reset - now we recreate the protocol handler in _q_encrypted or _q_connected (https/http). - Update autotest. Task-number: QTBUG-57600 Change-Id: Ib864ce52287bab23334ff43a83ba4b0b7cb52c60 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Widgets: report focus object change to QtGui before sending widget eventsTor Arne Vestbø2017-01-101-17/+14
| | | | | | | | | | Updating the focus child means the focus object of the window has changed. We need to report this to QtGui immediately so that it can e.g. inform the input context of the new focus object, before widgets reacting to the focus events start calling update() on the input method. Change-Id: Ie3f7b835591e71519e3f384c2abdad53242c9736 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add support for building for INTEGRITY using GHS toolchainKimmo Ollila2017-01-102-2/+6
| | | | | | | | | | | Initial support for INTEGRITY to build QtBase Change-Id: I18f36b4dea9107f01e1c281e4b62880590c777a1 Reviewed-by: Tuukka Turunen <tuukka.turunen@theqtcompany.com> Reviewed-by: Nikola Velinov <nvelinov@ghs.com> Reviewed-by: Risto Avila <risto.avila@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QForeachContainer: make it a move-only typeGiuseppe D'Angelo2017-01-101-18/+30
| | | | | | | | | | | | | | Honor the rule of five. Copy assignment was already disabled. Disable also copy construction, but re-enable the move special member functions. This requires making the container non-const; to avoid detaches and keep compatibility with containers that only have begin/end (but not cbegin/cend), use qAsConst. This requires moving qAsConst definition a bit up in the file. Change-Id: I19cd74437cf69baceada9483920a21e96d7b1727 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Long live QTest::addRow()!Marc Mutz2017-01-103-0/+54
| | | | | | | | | | | | | | This new function does the same as newRow(), except that it has a less confusing name (in line with _add_Column()), and accepts printf-style arguments to avoid the need to newRow(qPrintable(QString::asprintf())), a common pattern in client code. It uses qvsnprintf() under the hoods, avoiding the need for the QString const char* round-trip. Port all in-tree users of newRow(qPrintable(QString::asnprintf())) to the new function. Change-Id: Icd5de9b7ea4f6759d98080ec30f5aecadb8bec39 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Windows QPA: Implement setting the "Cancel" button text of file dialogsFriedemann Kleint2017-01-101-1/+15
| | | | | | | | | The functionality was missing in IFileDialog. As of Windows 7; IFileDialog can be queried for IFileDialog2, which provides it. Task-number: QTBUG-44112 Change-Id: I0c0345d516bbc36f9bb519545f5eda1289c9ef23 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Fix toArgb32 on NEONAllan Sandfeld Jensen2017-01-091-1/+6
| | | | | | | | | | The color components were not correctly shuffled to ARGB host-order form. Discovered and tested with tst_QPainter::blendARGBonRGB on ARM. Change-Id: I2ef9b6129dd83f3c6be0b30c0a5e3684564e6b2f Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* vnc: Replace Q_DECL_OVERRIDE by overrideAlexander Volkov2017-01-093-14/+14
| | | | | Change-Id: Id06dfc73d1ad41822b2f07b585f32e9e6e5d08f2 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Remove compatibility code paths for macOS < 10.10 and iOS < 8.0Jake Petroules2017-01-097-235/+78
| | | | | Change-Id: I11bec0efc2b4d86adf64a58990260fee70f050ac Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* eglfs: Activate the window on the primary screenPier Luigi Fiorini2017-01-091-1/+4
| | | | | | | | Having the window on the last screen focused is inconvenient since the main application UI is likely to be shown on the primary screen. Change-Id: I2e7945a903cb432d3428c773ac89c662374632c9 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* QOpenGLCompositorWindow virtual destructorPier Luigi Fiorini2017-01-091-0/+1
| | | | | | | | QOpenGLCompositorWindow had virtual methods and accessible non-virtual destructor. Change-Id: I50e5bc30e0fce9a39db83ae395fcab239b251c59 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* A few fixes to evdev touch filteringGunnar Sletta2017-01-091-3/+10
| | | | | | | | - Clamp the position to the bounding rect of the device - Send TouchRelease only once Change-Id: I8776079dbc886612e6adfb1fef5ec7cf14a8af3b Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Introduce QDir::isEmpty()Elvis Angelaccio2017-01-082-0/+22
| | | | | | | | | | | | A directory is empty when it doesn't contain files or folders. We can exploit QDirIterator::hasNext() to check whether this is the case. This is efficient since it doesn't list the whole folder (in the non-empty case). Test cases are added for both the empty and non-empty cases. Change-Id: I0f7e26782c0f97f9c16f928dab6cae37927875d8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Doc update: reflect use of native font dialog by default on macOSPierre Rossi2017-01-081-2/+1
| | | | | | | | | The documentation still stated that the Qt standard font dialog was used. Task-number: QTBUG-47572 Change-Id: Iff4262869efde2d9fefb38264b2f6f8a9d2f7483 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* doc: update QPrinter docs for clangqdocMartin Smith2017-01-062-288/+9
| | | | | | | | | | | | | | | The docs for QPrinter contained a use of Q_QDoc to declare an enum representing paper sizes for different printers, but this special declaration for qdoc was no longer needed, so it was removed. The real declaration is in QPagedPaintDevice, which is the public base class of QPrinter, and it is documented there. A few other uses of Q_QDOC were examined and either removed or upgraded to Q_CLANG_QDOC. One use of Q_OS_WIN was changed to also be included for Q_CLANG_QDOC. Change-Id: If6d810c624aa8d659fd0e3e753ba666d4d42ef83 Reviewed-by: Martin Smith <martin.smith@qt.io>
* doc: clangqdoc documents the threads caseMartin Smith2017-01-062-6/+20
| | | | | | | | | | qmutex.h is updated to let clangqdoc document the threads case, because the no-threads case is not interesting, and clang can handle everything declared in qmutex.h. This change required that a few minor qdoc errors be corrected in qmutex.cpp as well. Change-Id: Icb4122f2179d6aad39dc68376498364820143297 Reviewed-by: Martin Smith <martin.smith@qt.io>