summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* ANGLE: Fix build for newer MinGW versionsOliver Wolff2017-08-021-0/+10
| | | | | | | | | | | Availability of D3D11_QUERY_DATA_TIMESTAMP_DISJOINT depends on the used MinGW version so that the check for MINGW is not sufficient. The newly added configure test can be used for every toolset. Task-number: QTBUG-57916 Change-Id: Ia9cb48f3e673841101a93cbc8ea23aff9547f639 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* configure: Add a feature to write tests in the .json fileThiago Macieira2017-08-021-44/+440
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're adding a lot of unnecessary files that end up later as cargo-cult, for at most a handful of lines. So instead move the testcases directly into the .json file. The following sources were not inlined, because multiple tests share them, and the inlining infra does not support that (yet): - avx512 - openssl - gnu-libiconv/sun-libiconv (there is also a command line option to select the exact variant, which makes it hard/impossible to properly coalesce the library sources) The following sources were not inlined because of "complications": - verifyspec contains a lengthy function in the project file - stl contains lots of code in the source file - xlocalescanprint includes a private header from the source tree via a relative path, which we can't do, as the test's physical location is variable. - corewlan uses objective c++, which the inline system doesn't support reduce_relocs and reduce_exports now create libraries with main(), which is weird enough, but doesn't hurt. Done-with: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Change-Id: Ic3a088f9f08a4fd7ae91fffd14ce8a262021cca0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix precisions check for using fast transformsAllan Sandfeld Jensen2017-08-021-2/+2
| | | | | | | | The coordinates need to be representable in signed 16-bit not unsigned. Task-number: QTBUG-62251 Change-Id: I1d4aaa2fb90b8f428380277d5b4e416a4672ee6a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Fix QStandardItem::setChild crash when passing a null pointerJesus Fernandez2017-07-271-2/+13
| | | | | | | | | | | | Passing a null pointer as a parameter to the setChild function no longer crashes when calling the QStandardItemModelPrivate::itemChanged signal. The child is removed from the model. The patch also fixes the behavior of deleting a item. A dataChanged signal is emitted. Change-Id: I027e8b0d84fe33c5fca056df870f0e60a020824b Reviewed-by: David Faure <david.faure@kdab.com>
* QFontDatabase: Output family in warning about missing Open Type supportFriedemann Kleint2017-07-271-2/+4
| | | | | | | | | | OpenType support missing for script 11 becomes: OpenType support missing for "SimSun", script 11 Change-Id: I562e20d630c9cdd888f75fd99b987de5152cd77e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Add QDebugStateSaver to QVectorPath operator<<Jesus Fernandez2017-07-251-0/+1
| | | | | | | | | &operator<<(QDebug &, const QVectorPath &) was modifying the QDebug state without restoring it after finishing. Change-Id: I28c377bc99bfeb5a7bc67ca9affa8123f04583df Coverity-Id: 11375 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QPMCache::remove(): Do not dereference erased iteratorFriedemann Kleint2017-07-191-1/+2
| | | | | | | | Fixes a crash in tst_QGL::textureCleanup() (developer build). Amends 467b15a20c3d6eb611ea5f6ccffd5fc0df81b0c4. Change-Id: I7026b3c2a27c02a80b995fde67a832dc2d19031d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix QHighDpi::fromNativeLocalExposedRegion rounding errorsTor Arne Vestbø2017-07-191-4/+4
| | | | | | | | | | | | | | | | | | | | Calling bottom/right/bottomRight on a QRect is discouraged, as it does not give the true bottom-right corner of the rectangle, instead giving a point one unit to the left and top of the true bottom right. Dividing this point by a scale factor of e.g. 2, and then using qCeil on the bottom right x and y coordinates would result in a pointRegion that was 1x1 * scaleFactor larger than it should, manifesting as rendering issues at later stages. We can get away from the whole problem by initially converting the QRect to a QRectF, and basing the pointRegion's rect on the scaled size instead of bottom-right coordinates. Change-Id: I4d4895660655cfa8749c93c7d2573ae79cd7898b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix buffer overflow in text blendingAllan Sandfeld Jensen2017-07-111-4/+4
| | | | | | | | | Clip buffers being converted to those being worked on so we don't write outside the lines. Task-number: QTBUG-61863 Change-Id: Icc7c6c0946fa522b5afeca0663fc2b45151b1897 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix modernize-use-bool-literals issuesKevin Funk2017-07-081-2/+2
| | | | | | | | | | | Reported by clang-tidy. Skipped fixes in implementation files, only changed headers. Change-Id: I5cfd266b3d4046f90baebc0c538b1b6ab03a02d2 Reviewed-by: Volker Krause <volker.krause@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix polygon stroking with cosmetic penAllan Sandfeld Jensen2017-07-051-13/+43
| | | | | | | | | | | | | | Fix a number of issues that caused polygons to not always be drawn fully connected. Ensures the original lastPixel is set when drawing closed polygons, ensure we don't round away from the original starting point, and add handling of edges that need to be rounded half a pixel sideways to line up with endpoints. Task-number: QTBUG-27053 Change-Id: Ib51ee5623a629996af51a0967096383f04e91e2f Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Fix capitalization of x11-xcb pkg-config module nameDmitry Shachnev2017-07-031-1/+1
| | | | | | | | | | | $ pkg-config --exists X11-xcb && echo True $ pkg-config --exists x11-xcb && echo True True See https://cgit.freedesktop.org/xorg/lib/libX11/tree/x11-xcb.pc.in. Change-Id: I1485f124e2926bb1c6a2b5eb83c4963c095d0f12 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix detection of AT-SPIBernhard Rosenkränzer2017-07-031-1/+1
| | | | | | | | | | | | | | | | | | Building qtbase 5.9.1 on Linux always results in a build with accessibility support disabled. The problem is that the config option for accessibility-atspi-bridge checks for config.atspi, which isn't defined anywhere - it should check for libs.atspi (which is set if pkg-config finds atspi-2) instead. [ChangeLog][QtGui][Platform Specific Changes][Linux/XCB] Fixed detection of AT-SPI, allowing accessibility support to be built again. Task-number: QTBUG-61731 Change-Id: If3bd5dfccda40158c566f8507e34b6877b59b6fb Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Bernhard Rosenkränzer <bero@lindev.ch>
* Fix BMP ImageFormat for semi-transparent filesAllan Sandfeld Jensen2017-07-032-41/+35
| | | | | | | | | Reads the v4 and v5 info-header together with the rest of the info- headers, and use that to report the correct image format before decoding. Change-Id: I69e2bcc54367b7f14820815ae2ae1fa2d8d5dc8c Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* xcb: Replace XCB_USE_XINPUT define by QT_CONFIG macroAlexander Volkov2017-06-291-1/+1
| | | | | | | | .. and remove it from qxcbconnection_xi2.cpp as this file is build _only_ when xinput2 is available. Change-Id: I66d6a299c120fc034f8519cd188e1b845d5bd1bc Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* Convert features.whatsthis to QT_[REQUIRE_]CONFIGStephan Binner2017-06-296-7/+13
| | | | | | | Move feature definition to gui/configure.json Change-Id: I00b35c0e259d0a695d84a9bf6803eba74d41465a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix GCC 8 warnings about ignored const on cast result typesMarc Mutz2017-06-281-1/+1
| | | | | | | | | | qdrawhelper.cpp:1365:25: error: type qualifiers ignored on cast result type [-Werror=ignored-qualifiers] for (; i < count && (const uintptr_t)buffer & 0xF; ++i) { ^~~~~~~~~~~~~~~~~~~~~~~ etc... Change-Id: I702f9aada24ad49ebc7ede0a04e5afc1b0164e30 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Convert features.tabletevent to QT_CONFIGStephan Binner2017-06-286-17/+17
| | | | | Change-Id: Ibd7ed7f269a64afddadee70979b20f1c58398378 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Convert features.wheelevent to QT_CONFIGStephan Binner2017-06-285-12/+12
| | | | | Change-Id: I46083a9115c199d1ebe024ed5f64b160a27462f1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* ATSPI: correct configure warning message when ATSPI is missingThiago Macieira2017-06-251-1/+1
| | | | | | | | | | | | | This threw me for a loop: Qt D-Bus ............................... yes Qt D-Bus directly linked to libdbus .... yes [...] Note: Disabling Linux Accessibility Bridge: D-Bus is missing. Also, this is not the Linux bridge, since I was running on FreeBSD. Change-Id: I1d5a585d4af842f9a66ffffd14c99ab2a8d648de Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* winrt: doc: Update platform limitations for UWPMaurice Kalinowski2017-06-141-0/+11
| | | | | | | | | UWP only allows clipboard access when the app is active and has focus. Task-number: QTBUG-60900 Change-Id: Ia69642740d894106875cef77adf48e934bae9c87 Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
* Remove message of integrityfb from config summaryKimmo Ollila2017-06-131-1/+0
| | | | | | | | | This cleans the config summary output Change-Id: I4e78f00c722e646a730906d462f7632d6012a6d8 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Tero Alamaki <tero.alamaki@qt.io>
* Use upstream at-spi 2Frederik Gladhorn2017-06-091-1/+7
| | | | | | | | | | Move at-spi dbus xml definitions into platformsupport, these files simply describe the DBus protocol and should not be in 3rdparty. The header files can just as well be picked up by pkg-config. Change-Id: I326d9b3cb69223bf2c8646099f211d9a9f3fa0af Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QKeySequence: fix size mismatchMarc Mutz2017-06-081-1/+1
| | | | | | | | | 'accel' is 'str.toLower()' and as such may have a different size, so don't use str.size() to index into 'accel'. Change-Id: I6a140ded45ecedd811b9618e1facb63d522eb235 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Translate the adjusted deviceWindowRect with an adjusted offsetAllan Sandfeld Jensen2017-06-071-1/+7
| | | | | | | | | Otherwise the mismatched device pixel ratio will lead to incorrectly offset blitting. Task-number: QTBUG-59017 Change-Id: Iccbe9cd9704bccbceda4c8dafe87435b68b5cf3e Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Fix QImageReader::supportedSubTypes()Eirik Aavitsland2017-06-071-1/+1
| | | | | | | | | Because of inverted test logic, this function would always return an empty list. Task-number: QTBUG-61048 Change-Id: If1529f2c567069ab4b672f309268b4edaf84c42f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix semi-opaque linear gradient on ARGB32Allan Sandfeld Jensen2017-06-011-1/+1
| | | | | | | | | | | The qt_gradient_argb32 routine optimizes linear gradients with the solid blend routines that is ARGB32PM only. If the gradient is not solid, it will not get unpremultipled on write like it should for ARGB32. Covered by lancelot, but the change is less than 5%. Change-Id: Id99f2fa125cc091f3b5b29ec2d06618785d628fa Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.9.0' into 5.9" into ↵Liang Qi2017-05-311-1/+0
|\ | | | | | | refs/staging/5.9
| * Merge remote-tracking branch 'origin/5.9.0' into 5.9Liang Qi2017-05-311-1/+0
| |\ | | | | | | | | | Change-Id: I2d7a3f3a80e6287e135e55b650f74f9a540332bc
| | * Revert "Enable "combined-angle-lib" for ANGLE builds"v5.9.0-rc1Oliver Wolff2017-05-191-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combining libEGL and libGLESv2 into QtANGLE cannot be the default any longer, as the change was binary incompatible. We just had to return to previous behavior temporarily to be able to fix qtlocation. This reverts commit 97ab65076e30d8cd0cbe6bdbdb51d1dc2c0ff7e7. Task-number: QTBUG-60795 Change-Id: I3095cb5f9da30e2d873d9a186cfbc5aee3fb10b2 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | | Fix qpa/kms test with Vibrante 4.1.6.0 on INTEGRITY for Drive CXTero Alamäki2017-05-311-1/+1
|/ / | | | | | | | | Change-Id: I44ae001dc9f96ea8819a56a87be9322326dbbb4b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Add USB HID device feature to INTEGRITYKimmo Ollila2017-05-301-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | This change adds USB mouse handling support for INTEGRITY Change-Id: I8a2a51c8c3578898e90dd5bbb01f6aed6c64e2a4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Timo Aarnipuro <timo.aarnipuro@qt.io> Reviewed-by: Nikola Velinov <nvelinov@ghs.com> Reviewed-by: Rolland Dudemaine <rolland@ghs.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Tero Alamaki <tero.alamaki@qt.io>
* | Convert features.movie to QT_[REQUIRE_]CONFIGStephan Binner2017-05-293-11/+6
| | | | | | | | | | Change-Id: I838c7305d4649f953c5bb972f1aa51dbb078afe2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Add INTEGRITY framebuffer test to configureTero Alamäki2017-05-291-1/+6
| | | | | | | | | | Change-Id: I606da783ef9959448a89a7a616ab197820194977 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Configure eglfs_kms_egldevice for INTEGRITY ARMv8 Drive CXTero Alamäki2017-05-291-1/+2
| | | | | | | | | | | | Change-Id: If41135cdf8287b90690321bef3ad839db6778782 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | doc: Add warning about QTextLayout::beginLayout() and clearLayout()Eskil Abrahamsen Blomfeldt2017-05-221-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If you keep around QTextLines referring to the previous contents of the layout, you can experience crashes when using these after the layout has been cleared. Since QTextLine is a value type, this is not very obvious in the API, so we should at least give a warning in the docs. Task-number: QTBUG-60804 Change-Id: I81b2b640eec5f62b0af1e878aadd9fa23654ec18 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.9.0' into 5.9" into ↵Liang Qi2017-05-192-37/+42
|\ \ | | | | | | | | | refs/staging/5.9
| * | Merge remote-tracking branch 'origin/5.9.0' into 5.9Liang Qi2017-05-192-37/+42
| |\| | | | | | | | | | Change-Id: Ia8ac1960387c0f78c32f9d0385bb0aa9a8209af1
| | * Enable "combined-angle-lib" for ANGLE buildsOliver Wolff2017-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As qtlocation's mapboxgl plugin links to QtANGLE if dynamic opengl is used, we have to keep the combined library being the default until qtlocation is fixed. As soon as the qtlocation fix has landed in 5.9.0 this change should be reverted. Task-number: QTBUG-60795 Change-Id: I0781695e085a28a8971a6245a352413c0f779025 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * Restore behavior of using libEGL and libGLESv2 as default for angleOliver Wolff2017-05-111-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As Qt applications using OpenGL are linked against these libs, merging them into QtANGLE by default (780105f9062dec350bbe2a6800c40db3e6382578) was a binary incompatible change. This change restores the default behavior to the one before given change. If the user wants the libraries to be merged, he can pass combined-angle-lib to configure. Task-number: QTBUG-60373 Change-Id: Iedbd3f2ce9284fdde924cfae8d915d6d5fef00db Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * Revert gamma-corrected handling of transparent destination bufferAllan Sandfeld Jensen2017-05-081-37/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the text blend routines being used by ARGB32 and due to another bug on invalid premultiplied buffers, we need to keep using the naive blend on non-opaque pixels for now. Task-number: QTBUG-60562 Task-number: QTBUG-60571 Change-Id: Idfbb2c2e24dd840189c4fbed4e167f03bbc6ca8d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | | HiDPI: Scale mouse position on enter eventBłażej Szczygieł2017-05-191-1/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-60892 Change-Id: If800ecaadc5b19c10a954658ece484f30b7f313f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | QGuiApplication: Initialize and clear static variablesFriedemann Kleint2017-05-191-0/+13
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running: tst_qapplication focusMouseClick touchEventPropagation produced: FAIL! : tst_QApplication::touchEventPropagation() 'window.seenMouseEvent' returned FALSE. () since QGuiApplicationPrivate::mouse_buttons was not cleared when destroying and re-instantiating QGuiApplication. Add more initialization and clear screen list on exit. Change-Id: I0d814852c362d4a86f1ff5d6a94ab00d32ed30b9 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* / Fix painterpath rect intersections with points on the rectAllan Sandfeld Jensen2017-05-171-0/+33
|/ | | | | | | | | | | | QPainterPath could in certain cases where sub-path points were on the border of a rect fail to calculate intersects() correctly. The patch adds handling of such cases by looking if end points cross in or out of the rect. Other cases are already caught. Task-number: QTBUG-31551 Change-Id: I6284da8ff8646d4636702923a76362302dde5767 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* QIconLoaderEngine: Fix actualSize() for no-entryPalo Kisa2017-05-031-1/+4
| | | | | | | | | Return an empty size if no suitable entry found to avoid mismatch with the returned pixmap()'s size (the QIconEngine::actualSize() returns the originally requested size). Change-Id: Ia278719a54392b62c5f9fc0529476baba5cd7df0 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* macOS: Add auto-release pools for Q*ApplicationPrivate::init()Tor Arne Vestbø2017-05-021-0/+4
| | | | | | | | | | So that any objects autoreleased during application initialization are released. Otherwise they will end up in the root level pool and only be released when the application exits and the application goes out of scope. Change-Id: If02d24fd70098f9b4b1b0ea3218e0a15e438b9db Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Handle implicit close in QDashedStrokeProcessorAllan Sandfeld Jensen2017-05-022-3/+11
| | | | | | | | | Otherwise dashed polygons will not be closed when stroked like they are documented to be. Task-number: QTBUG-60397 Change-Id: I58e9e3a06af157f9a2789ccab640c9da75867962 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Cleanup rgb32 text-blending code pathAllan Sandfeld Jensen2017-05-021-92/+57
| | | | | | | | | | | | Cleans up the rgb32 text-blending functions, so they now follow the new pattern used in the new generic text-blending functions. This also means they can now handle gamma-corrected blending on top of transparent destination pixels instead of falling back to naive blending. Task-number: QTBUG-60469 Change-Id: I154ba513ff99c0cefab8fa12f4ed43fcd6563a6a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Doc: Fix references to QIconEngineV2 and QIconEnginePluginV2Aaron Linville2017-04-281-3/+3
| | | | | | | | Fix a few lingering doc references to the old classes. Task-number: QTBUG-59815 Change-Id: Ia6b406485260c943b018422aaeb8e22ca4406e81 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Export QPlatformThemeFactory, for use in qtdiagThiago Macieira2017-04-281-1/+1
| | | | | Change-Id: I0e1a09998253489388abfffd14b5ee5392b0ce52 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>