summaryrefslogtreecommitdiffstats
path: root/src/platformsupport
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.13' into devFriedemann Kleint2019-05-276-7/+69
|\ | | | | | | Change-Id: Ia279fc4a8226626041c772902a07b2f90f37b53b
| * Merge remote-tracking branch 'origin/5.12' into 5.13Friedemann Kleint2019-05-273-2/+54
| |\ | | | | | | | | | Change-Id: Iaf6bd52972b562b9c91d9e93a988d26b0eb9d3b4
| | * Windows Accessibility: Add UI Automation Window providerFrederik Gladhorn2019-05-202-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | This allows closing, minimizing and maximizing the window. Fixes: QTBUG-74999 Change-Id: I8b3ad806a1767586c8cf7e5a1848fc0e525621cd Reviewed-by: André de la Rocha <andre.rocha@qt.io>
| | * macOS: Generate UTF-16 clipboard content without BOMTor Arne Vestbø2019-05-201-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt on macOS has traditionally not included a BOM in the UTF-16 data, but due to iOS requiring it it was changed in 4e196159. This had the unfortunate side effect of breaking macOS applications that were not prepared for the BOM, even if the public.utf16-plain-text UTI can have an optional BOM, most notably Microsoft Excel. It also resulted in the public.utf8-plain-text having a BOM, as that's automatically generated by macOS based on the UTF-16 content we give it. Having a BOM in UTF-8 is technically fine, but not required, and recommended against. The fact that iOS requires a BOM is a bit dubious, and most likely a result of applications or system frameworks decoding the data using NSUTF16StringEncoding, which assumes big-ending byte ordering if there is no BOM, as opposed to public.utf16-plain-text which assumes native byte ordering. Since we can't fix iOS our best bet is to include a BOM. For macOS though, we revert back to the old behavior of not including a BOM, since that seems to surprise macOS frameworks and applications the least, even if having a BOM in public.utf16-plain-text should be fully supported. Longer term we should look at what kind of UTIs we generate. Most apps on macOS do not generate public.utf16-plain-text, but instead generate public.utf16-external-plain-text, which differs from the former in that it assumes big-endian byte-ordering when there's no BOM. On iOS apps seem to generate public.utf8-plain-text, and do not generate any UTF-16 UTIs. Moving Qt over to these UTIs would fix the problem as well, but is a larger change that needs more research. Change-Id: I4769c8b7d09daef7e3012e99cacc3237f7b0fc1a Fixes: QTBUG-61562 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-163-5/+15
| |\| | | | | | | | | | Change-Id: I1bdc28a3ae825ea35e83f20fe16d2409515e5a3d
| | * Accessibility: Do not use the session bus if not connectedFrederik Gladhorn2019-05-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When there is no DBus session, there will be no Linux accessibility, since it relies on the presence of DBus. Fixes: QTBUG-50189 Fixes: QTBUG-51940 Change-Id: I7503011b39ba2a806ddc12e89d0f7bd72a628b64 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| | * Fix: freetype italic fonts in mono/aliased modeEirik Aavitsland2019-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FT_GlyphSlot_Oblique(), the Freetype function to synthesize a slanted/italic font, only accepts glyphs with outline format. So disable loading bitmap format glyphs when that function will be used. Fixes: QTBUG-73586 Change-Id: I762a4bc34537e0725ead0fb063d50c997403143d Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * eglfs: Make the logs from atomic support usableLaszlo Agocs2019-05-141-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Atomic being supported and atomic being requested are two different things. (the latter is only true when QT_QPA_EGLFS_KMS_ATOMIC is set) Log accordingly since this can be very important to know when investigating problems. Change-Id: I6947d18e7c0eaef3fe160095cb046770f9c93efe Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | QEvdevTouchScreenData: remove use of Java-style iteratorsMarc Mutz2019-05-241-11/+9
| | | | | | | | | | | | | | | | | | | | | They will be deprecated. Change-Id: Ic1281ba2543209eb9a4ba8d6653c3a3c537eb830 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Fix font matching of typographic families on WindowsEskil Abrahamsen Blomfeldt2019-05-232-8/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9204b8c31ea1b5f0c05870c5b5d74c33b1a4f622 broke font matching on Windows. This was then attempted fixed by bcd2fa484a4fe93e77743195d7f72cce9e580d43, but this caused an infinite recursion for some cases, so it was reverted again by 9d1905da9c59e9062a157199c81c076efc20eb28. The original issue was that if we populate a specific face of a family, such as "Arial Black", then the typographic/preferred name will be detected as "Arial" and this family will be set as populated=true, even though we have not yet registered any additional subfamilies. In this case, we need to call populateFamily() for the typographic family name to ensure we get Windows to enumerate all the subfamilies in that family before it sets it as populated=true. But this broke for some fonts where the font naming was unconventional. In particular, "Yu Gothic" would have its Japanese name as the typographic name, and there would be no font in the system where the old-style font family name matched the typographic name. In that case we would go into a loop where we would try populating "<Japanese font name>", Windows would translate this to "Yu Gothic", we would translate it back to "<Japanese font name>", ad infinitum. In order to avoid the infinite recursion, we add a recursion guard as well, ensuring that we never call populateFamily() for the main family we are currently populating. [ChangeLog][Windows][Fonts] Fixed a bug where it would be impossible to request different faces of a font family after a specific type face has been in use. Task-number: QTBUG-74748 Task-number: QTBUG-74983 Change-Id: Ibe6239f67c45d67ebf75947c8f231cfa177e347f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | QEvdevTouchScreenData: use a mutex locker instead of manual lock/unlock()Marc Mutz2019-05-211-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extra difficulty: the lock is conditional. Not a problem with std::unique_lock, which is movable. Change-Id: Ib5515838ccb10100d5aa31163ab7f171591c04c4 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | | Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-05-151-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qfloat16.cpp src/corelib/global/qfloat16.h src/plugins/platforms/windows/qwindowswindow.cpp Change-Id: I0938aaa6a9771f55e48c95ed29f6f5291431b947
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-121-1/+1
| |\| | | | | | | | | | Change-Id: I0c00ffe0eabebc919f22d6faa4bf958b288e8fd9
| | * Add missing backslash to kmsconvenience.proLaszlo Agocs2019-05-091-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I3519447af657bdbb7304aca272de416104dca0f9 Fixes: QTBUG-75730 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | GLX convenience: fix typoGiuseppe D'Angelo2019-05-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The code meant to extract GLX_SAMPLE_BUFFERS_ARB, not GLX_SAMPLES_ARB, which is read a few lines below. Change-Id: Id50a1863cab56ed6084d4a2359a956a9db1222fa Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-05-133-5/+10
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qstring.cpp Change-Id: I81dbf90fc936c9bf08197baefa071117bddb1c63
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-092-4/+10
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qlocale_data_p.h (Regenerated by running the scripts in util/local_database/) src/gui/opengl/qopengltextureuploader.cpp Done-With: Edward Welbourne <edward.welbourne@qt.io> Done-With: Allan Sandfeld Jensen <allan.jensen@qt.io> Change-Id: I12df7f066ed0a25eb109f61c4b8d8dea63b683e2
| | * Accessibility: Improve handling of read-only stateFrederik Gladhorn2019-05-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have been rather sloppy in how read-only versus editable is handled. According to the definition, editable signifies that in principle a widget allows the user to change its text. Read-only means that this ability is (currently) disabled. Task-number: QTBUG-75002 Change-Id: I5d71843abcdaac52f4a60a1abcac2604341f6c96 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
| | * Use "monospace" as fallback system FixedFont in KDE theme; loggingShawn Rutledge2019-05-071-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also de-duplicate the "monospace" string in qgenericunixthemes.cpp, and add tst_QFontDatabase::systemFixedFont() to verify that QFontDatabase::systemFont(QFontDatabase::FixedFont) really returns a monospace font across platforms. Replace commented-out qDebug()s with qt.text.font.match and qt.text.font.db logging categories to troubleshoot when the test fails (among other uses). Add qt.qpa.fonts logging category to unix themes to show default system and fixed fonts (font engines on other platforms are already using this category). Fixes: QTBUG-54623 Change-Id: I2aa62b8c783d9ddb591a5e06e8df85c4af5bcb0c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | wasm: add fixedPitch fontLorn Potter2019-05-071-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | Also define our default font so as to return something we actually have Task-number: QTBUG-75587 Change-Id: I26e3c62921d369c3017af9796c0a20f7ac06d07c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | Migrate Windows system libs to external dependenciesJoerg Bornemann2019-05-082-5/+3
| | | | | | | | | | | | | | | | | | Started-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Change-Id: I211ce3252b836894aeeac1c85eb316d9596bca57 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-05-073-6/+26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.cpp src/corelib/kernel/qvariant.h src/corelib/tools/qlist.h Done-With: Milian Wolff <milian.wolff@kdab.com> Done-With: Allan Sandfeld Jensen <allan.jensen@qt.io> Change-Id: I6803f7239aa137a51a7467fab7cc7a01302a848d
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-063-6/+26
| |\| | | | | | | | | | Change-Id: Iaad9509712c848ed42ada2c25065162a6fc5a930
| | * fix compilation with various -no-feature-* optionsNick Shaforostov2019-05-051-0/+2
| | | | | | | | | | | | | | | Change-Id: Ic1975db497613e3efe50be4246c167efe10d8e31 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * Only call addFontToDatabase once per family,styleAllan Sandfeld Jensen2019-05-032-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We get a call to storeFont for each supported script-type of a font, but we use the font signature to register all the supported types at once, and can thus save ~3/4 calls to addFontToDatabase. Change-Id: I9d06252fb7f805e7babac58d82fa412ec4e0e36a Fixes: QTBUG-59360 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | | Prefix textstream operators with Qt::Lars Knoll2019-05-021-1/+1
| | | | | | | | | | | | | | | | | | | | | As the non prefixed variants are deprecated Change-Id: I2ba09d71b9cea5203b54297a3f2332e6d44fedcf Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-04-271-0/+10
|\| | | | | | | | | | | Change-Id: I1c9449ab064deed1367a7e5dbedfcb489f28140e
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-04-261-0/+10
| |\| | | | | | | | | | Change-Id: I6ecf7074eda57ef4954fb3fdc7a6d1e8cd229340
| | * Linux Accessibility: Add missing roles: Terminal and DesktopFrederik Gladhorn2019-04-251-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | There is an effort to make KDE software accessible, which exposed the missing roles. Check that they are complete with an assert. Change-Id: Ibaff0a90e1cee316983569ecee7759a13212e3c3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add a QVkConvenience class with vkFormatFromGlFormatJohan Klokkhammer Helsing2019-04-243-0/+284
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Converts from OpenGL formats to Vulkan formats. There are commented out lines for the formats in QOpenGLTexture::TextureFormat for which it was hard to find an unambiguous mapping to vkFormat. Task-number: QTBUG-75108 Change-Id: I06a7fd8df7d98cef314410ffd79ca9cff6599357 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-04-246-11/+26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/util/qshaderformat.cpp src/gui/util/qshaderformat_p.h src/widgets/graphicsview/qgraphicsitem_p.h Change-Id: Idafd88eb9a0a15b4af29f6143d009c1ec8ceecca
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-04-241-6/+7
| |\| | | | | | | | | | Change-Id: I26da00aa71b0f0b91c9bfb4a9e8550345ee62875
| | * Fix corner case in openglcompositor for eglfsMichal Klocek2019-04-161-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add 'source' window offset. This covers the cases where platform window is created besides one full screen window (like for popups), where content has qquickwidget / qopenglwidgtet. In that case fbos/textures from those widgets have offset according to 'source' window. Note backingstore texture has geometry of 'source' window. Task-number: QTBUG-69533 Change-Id: I2514b36fd3a6b9b86f51999df1c2b3e9565aafde Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | qglxconvenience: use QMAKE_USE instead of QMAKE_USE_PRIVATEGatis Paeglis2019-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The provided API uses Xlib types, so it should publicly link with Xlib. Fixes: QTBUG-75045 Change-Id: Ifea1e8df27cdcc57fb04cd68a7aa1e9fa339c53d Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-04-164-4/+18
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qlocale.qdoc tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp Done-with: Edward Welbourne <edward.welbourne@qt.io> Done-with: Volker Hilsheimer <volker.hilsheimer@qt.io> Change-Id: I88e0757b2d020f0a244714c87844631df4b3fd13
| | * kms: Add support for "skip" key in the output configLaszlo Agocs2019-04-121-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "off" is not quite suitable because that turns the output off, as the name suggests. Disconnected outputs are skipped automatically - it is natural to have a way to request the same for connected outputs as well. Task-number: QTBUG-74871 Change-Id: I8bea83428ae0424601b19482b6e6ef809491d0fb Reviewed-by: Johan Helsing <johan.helsing@qt.io>
| | * tslib: fix detection of missing release coordinatesRolf Eike Beer2019-04-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The release coordinates may be simply initialized to 0 in lower levels of the tslib. They are then passed through the calibration stage, which applies offset and multiplication to them, so they may end up even as positive numbers. Since we can't know if we can trust them or not simply ignore all release coordinates and just always use the ones from the previous event. Change-Id: Ib845b5ab1c5b81967cc089d601576893f433fa4a Reviewed-by: Martin Kepplinger <martink@posteo.de> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * xcb_egl: Correctly select OpenGL ES render type if user requestedwdl2019-04-101-1/+7
| | | | | | | | | | | | | | | | | | Fixes: QTBUG-74736 Change-Id: I8f01857c81e7a831da659102052ca73c101818cd Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * QEglConfigChooser: Silence warning about fallthroughFriedemann Kleint2019-04-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Add Q_FALLTHROUGH, fixing: qeglconvenience.cpp:267:9: warning: this statement may fall through [-Wimplicit-fallthrough=] Change-Id: I764a5821f98982bc94ce5dc6a4efa81a431fd369 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | libinput: add support for LIBINPUT_EVENT_POINTER_MOTION_ABSOLUTEAlexander Kanavin2019-04-233-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is required to get Qt EGLFS in qemu working, as qemu mouse device issues only absolute mouse events. Fixes: QTBUG-69172 Change-Id: Ia9985dc01d7871fdcd856c14160d54d3ce684396 Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | QRegExp include cleanupSamuel Gaist2019-04-191-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QRegExp includes can be found in several files where there's not even a use of the class. This patch aims to avoid needless includes as well as follow the "include only what you use" moto. This patch removes a QRegExp include from the QStringList header which means that there is likely going to be code breaking since QStringList is used in many places and would get QRegExp in. [ChangeLog][Potentially Source-Incompatible Changes] qstringlist.h no longer includes qregexp.h. Change-Id: I32847532f16e419d4cb735ddc11a26551127e923 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | tslib: use ts_setup() to find the deviceRolf Eike Beer2019-04-151-21/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This automatically searches for some default devices. This not only reduces the amount of code, it also makes sure that Qt will by default find the same input devices that tslib (e.g. ts_calibrate) will find. Fixes: QTBUG-74680 Change-Id: Ied3fff7e8ed9d6637d2b8cf32119660133d251a3 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | Revert "Fix font matching of typographic families on Windows"Eskil Abrahamsen Blomfeldt2019-04-092-14/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit bcd2fa484a4fe93e77743195d7f72cce9e580d43. There was a report that this caused infinite recursion on some systems, so we revert it for now and re-add it later when the issue has been resolved. Task-number: QTBUG-74983 Change-Id: I747e0437232d72d7a87eb602b10fa09c7130ce8f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Replace qMove with std::moveAllan Sandfeld Jensen2019-04-061-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: I67df3ae6b5db0a158f86e75b99f422bd13853bc9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.13' into dev" into ↵Qt Forward Merge Bot2019-04-047-32/+41
|\ \ \ | | | | | | | | | | | | refs/staging/dev
| * | | Merge remote-tracking branch 'origin/5.13' into devLiang Qi2019-03-313-22/+30
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/configure.json Change-Id: I93ac67f3bf4844bc7c691183e94bceb922b7b919
| | * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-03-303-22/+30
| | |\| | | | | | | | | | | | | Change-Id: I9935bacae0d6ba532418fc3d28adbc7ca1463604
| | | * tslib: use new connect syntaxRolf Eike Beer2019-03-271-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I06bbd681fbb4bf809814de454c266f08976e0916 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | | * tslib: avoid deprecated overloadRolf Eike Beer2019-03-271-1/+3
| | | | | | | | | | | | | | | | | | | | Change-Id: Iab0c25c38d62303986a1f5739cc48de15b35dea2 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | | * Fix stretched fonts with large pixel sizeEirik Aavitsland2019-03-272-20/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Windows and Cocoa font engines ignored the stretch factor when the pixel size is so large that QPainterPath rendering is used instead of native. Fixes: QTBUG-14315 Change-Id: I93390528ac264452b7d6af7d39f49f4b0dd56279 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>