summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| | * xcb: Fix drag and drop to Emacs.Urs Fleisch2016-05-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately, the improved patch for QTBUG-45812 fixed things for Chromium, but did no longer work for Emacs. This fixes commit [269fdb] to make it work for both Emacs and Chromium. Task-number: QTBUG-45812 Change-Id: I2fca708503f27679681bc6959de1ad94943a063e Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Błażej Szczygieł <spaz16@wp.pl> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| | * Fix UB (data race) in Q_GLOBAL_STATICMarc Mutz2016-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The store to guard in the inner function's critical section was not synchronized-with the load at the start of the function: T1 T2 guard.load() mutex.lock() guard.load() d = new Type guard.store() guard.load() // use d mutex.unlock() The use of d in T2 does not synchronize with the write to d in T1 -> data race -> UB. Fix by storing with release memory ordering, so that the guard.load() in T2 synchronizes with the guard.store() in T1. Change-Id: I5c1cd1fa097c6397cb0b48b0d8e8012f95978558 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * QWindowsPipeWriter: ensure validity of the write bufferAlex Trotsenko2016-04-3011-73/+185
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWindowsPipeWriter uses asynchronous API to perform writing. Once a cycle has been started, the write buffer must remain valid until the write operation is completed. To avoid data corruption and possibly undefined behavior, this patch makes QWindowsPipeWriter::write() take a QByteArray, which it keeps alive for the duration of the write cycle. Autotest-by: Thomas Hartmann Task-number: QTBUG-52401 Change-Id: Ia35faee735c4e684267daa1f6bd689512b670cd2 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| | * Remove the use of QMutexPool in QHostInfo and QDnsLookupThiago Macieira2016-04-303-32/+16
| | | | | | | | | | | | | | | | | | | | | | | | Q_GLOBAL_STATIC does the thread-safe protection for us. And who said we could only use non-POD types? We can just use a boolean! Change-Id: Ifea6e497f11a461db432ffff1449b0a88d75d194 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * Remove the use of QMutexPool from QtDBus loading of libdbus-1Thiago Macieira2016-04-301-2/+3
| | | | | | | | | | | | | | | | | | Change-Id: Ifea6e497f11a461db432ffff1449b013c2302d38 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * Don't store the pthread_t thread ID twice in QThreadThiago Macieira2016-04-303-22/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was being stored once in QThreadPrivate and once in QThreadData, with the latter being hidden as a Qt::HANDLE. Besides saving a little bit of memory, this also solves a small data race condition that arises from trying to connect a signal to an object moved to that thread and then emit that signal shortly after the thread starts. Before this patch, QThreadData::threadId was initialized only by QThreadPrivate::start(), which meant that we were racing that initialization with this check in QMetaObject::activate: const bool receiverInSameThread = currentThreadId == receiver->d_func()->threadData->threadId; Task-number: QTBUG-52337 Change-Id: Ifea6e497f11a461db432ffff1449ae01f1099aae Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | compile fix for static qt with dynamic openglTim Blechmann2016-05-061-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: If78f6afeeeda5ea46a2ed17c6938fa25be9802fe Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | Android: Force use of system zlib on Windows hostEskil Abrahamsen Blomfeldt2016-05-061-0/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While we on Linux will do a compile test to check for a system zlib, the test on a Windows host was less accurate, causing us to compile in the zlib from 3rdparty/ here. This caused compilation errors after updating the freetype font engine to support color fonts, since the zlib in 3rdparty/ was included implicitly in the freetype library, and since it depends on Qt headers, the compilation failed in this context. The hotfix is to force system zlib on Android for Windows hosts, since we know it is available in the NDK. Doing a proper build check is not worth it right now, due to future plans for changing configure. We will still break for an explicit -qt-zlib compilation, so the plan is to fix this in an upcoming commit by separating libpng into a library. Change-Id: I7854c3c762fa37f7ee4b5f1112dbae8b5973ea86 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Add device mkspec for the iMX7 SOCAndy Nichols2016-05-052-0/+57
| | | | | | | | | | | | | | | | Right now there are no iMX7 SOCs available with OpenGL capable GPUs so the mkspec is very basic. Change-Id: Ia5c83eea72c4d436c774b2955ccd71f2256bfd6b Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | QUrlQuery: use erase and std::remove_if with QListAnton Kudryavtsev2016-05-041-8/+8
| | | | | | | | | | | | | | ... instead of using erase() in a loop, with quadratic complexity. Change-Id: I277ff2527e0a22b3d754b1d14296b9882f164c23 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | iOS: Add text selection support from the platform pluginRichard Moe Gustavsen2016-05-044-2/+1065
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch will add touch based text selection support to Qt from the iOS plugin. QIOSTextInputOverlay will listen to changes to the focus object, and if IM enabled, create three different gesture recognizers that tracks what the user is doing. The first recogniser detects if the user does a press and hold on the text when there is no selection. If triggered, it will show a loupe that follows the touch around together with the cursor. The second recogniser will instead be active when text is selected, and takes care of drawing a set of handles on each side of the selection. If the user drags on any of the handles, a loupe will show that follows the touch/text line together with the handle. The third recogniser detects if the user does a tap, and depending on if there's a selection, or if the cursor didn't move, it will show or hide the edit menu. The handles and loupe are implemented as overlays using Core Animation layers. Change-Id: Idff6e40e12307a458c9c399b0487bb976fce29c8 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | iOS: set StyleHint::StartDragTime to 300Richard Moe Gustavsen2016-05-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | From testing on iOS, StartDragTime should be adjusted slightly, from 500 (default in qplatformtheme.cpp) down to 300. This will also affect how long the user needs to press before the text selection magnifier shows up for doing text selections. Change-Id: I42ebfec6f0dc809b5d392412cf8f70d128ee6246 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | QScoped(Array)Pointer: canonicalize swappingMarc Mutz2016-05-041-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes: - have nothrow member-swap - have ADL non-member swap - not specialize qSwap or std::swap Also prevent QScopedPointer <-> QScopedArrayPointer swaps by overloading swap (both member and non-member) on QScopedArrayPointer. It's not 100% safe, but it's what we're doing elsewhere (QMulti(Map,Hash), say). That's technically a SiC change if users expected (qualified) std::swap to invoke QScopedPointer::swap(), but those users were doing it wrong to begin with, and they now get a compile-error instead of silent pessimization, because generic std::swap() doesn't work on QScopedPointer, due to lack of copy (and thus move) semantics. Change-Id: I3ab5c1668722a2c8ccafc16f57310ce8d4bffbd6 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | QtNetwork: eradicate Q_FOREACH loops [rvalues]Marc Mutz2016-05-0417-25/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | ... by replacing them with C++11 range-for loops. This is the simplest of the patch series: Q_FOREACH took a copy, so we do, too. Except we don't, since we're just catching the return value that comes out of the function (RVO). We can't feed the rvalues into range-for, because they are non-const and would thus detach. Change-Id: I42c9c44d948ab1512a69d42890187bc3cf2d7e58 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Support color font rendering for freetype engineJian Liang2016-05-035-128/+289
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch mainly do two things: 1) Support color bitmap font for freetype fontengine. This partially based on Corentin Jabot's patch 2) Support ARGB opengl glyph cache when workaround_brokenFBOReadBack is true (It is always true under Android). Some code refactor has been done in QOpenGLTextureGlyphCache. This patch also bump the minimal required freetype version to 2.2 [ChangeLog][General][Freetype] Support color font rendering Task-number: QTBUG-35156 Change-Id: I35aae5f98ba9a27b70a48db3f2647fc070c39c33 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Fix plugin name for eglfs' GBM backendLaszlo Agocs2016-05-031-1/+1
| | | | | | | | | | | | | | | | | | | | In 5.7 the Gbm prefix was added but the .pro file was not updated. This breaks static builds. Task-number: QTBUG-53136 Change-Id: I37af46ff768bf8c1dc9269892db25d61b76c0376 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com> Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
* | Tune fast-exit for signal activation for QML.Erik Verbruggen2016-05-032-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | When using QML, it quite often happens that only the QML engine is connected to a signal, and no C++ handlers. By splitting up the fast-exit case and handling QML separately, we can prevent a call to QThread::currentThreadId, and locking+unlocking the mutex. On x86 this saves ~130 instructions according to valgrind. Change-Id: I947fe42afe351922339ac982a6d498bc2f7b5192 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Fix MinGW 5.3.0 build of ANGLEOliver Wolff2016-05-022-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | D3D11_QUERY_DATA_SO_STATISTICS is no part of d3d11sdklayers.h and thus not covered by the ANGLE_MINGW32_COMPAT define. The struct is defined in d3d11.h and will be available in an upcoming version of MinGW (see https://sourceforge.net/p/mingw-w64/mingw-w64/ci/a0cd5afeb60be3be0860e9a203314c10485bb9b8/ ). As soon as the MinGW version that includes the change is known, the __MINGW32__ check should be replaced by a proper version check. Change-Id: I774f24432b375fdf9c559449f266cc04a4905275 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Add Qt::ImInputItemClipRectangle support to widgetsJan Arve Saether2016-05-023-2/+15
| | | | | | | | | | | | | | | | Let widgets respond to ImInputItemClipRectangle inputMethodQuery and notify about potential changes with QInputMethod::update() Change-Id: I01b2c53273df207d26107b237a7096fe53d1b0a5 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
* | Add QInputMethod::inputItemClipRectangle()Jan Arve Saether2016-05-022-0/+18
| | | | | | | | | | | | | | | | This property allows a convenient way of getting notified about changes in the input item clipped rectangle, similar to QIM::cursorRectangle(). Change-Id: I26bf97eeb1f5ef1b7d3aafb03565023091d6df3d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
* | Add ImInputItemClipRectangleJan Arve Saether2016-05-022-0/+4
| | | | | | | | | | | | | | | | | | | | | | This rectangle represents the "effective" visual rectangle of the input item, excluding any areas obscured due to clipping. Note: The effective visual rectangle will not be influenced by overlapping items. Change-Id: I234176161dcfb9c236124e33ae510a0b01fe6dc3 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
* | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Liang Qi2016-05-0259-229/+662
|\ \
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-2959-229/+662
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/qml_module.prf mkspecs/features/qt_common.prf src/gui/text/qzip.cpp src/plugins/platforms/cocoa/qnsview.mm src/plugins/platforms/windows/array.h src/testlib/qtestcase.cpp src/widgets/dialogs/qfilesystemmodel.h Change-Id: Ie41c5868415b81f7693c80e045497035504bb210
| | * Fix scroll regression near scroll-view endsAllan Sandfeld Jensen2016-04-292-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix regression in a7b0cb467ca5c4a9447d049910c9e3f0abc5897c which caused it to be hard to start scrolling at the ends of a scroll-view if using fine grained scrolling events. Change-Id: I55f3210150b993281545c3ad5a7356d892fa30b5 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * don't apply warning options to host buildsOswald Buddenhagen2016-04-291-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the host compiler's version is not determined, so we cannot make any assumptions about its capabilities. Task-number: QTBUG-53017 Change-Id: I939fd7402b5daac73f2195b9d8763b9008bc7ea4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Rolf Eike Beer <eb@emlix.com>
| | * tst_QMdiArea::subWindowActivated2(): Add activateWindow().Friedemann Kleint2016-04-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The widget is hidden, reshown and tested for active window, which is flaky. Add a call to activateWindow() which increases the chances of it becoming the active window should another window appear. Change-Id: Ibbecdbc43e2ac9638aec497c47fffaaffa1855af Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * Possible crash in QMakeSourceFileInfoJesus Fernandez2016-04-291-30/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | CID 155005: Possible illegal access in string. Some loops were reading the buffer without checking the bounds. Change-Id: I910671a6d56808138ec2bb5d96bd7edf78b20f73 Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * Unchecked return value in QMakeProjectJesus Fernandez2016-04-291-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | CID 21629: The QMakeProject::read result was ignored. MetaMakefileGenerator::createMakefileGenerator will be called if the project was read. Change-Id: I9187c82efd1abedcaa8e394f1fdb0b7f35a2b1d7 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * Autotest: fix the QTimeZone::tzTest failure when database contains LMTThiago Macieira2016-04-292-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some operating systems, tzdata files carry the Local Mean Time (LMT) for the city in question, which better represents how time was tracked before standard, hourly timezones were introduced in the early 20th century. The test was asking for the data for 1653-02-09 and assumed that it would find the first Central European Time (CET) rule, which Germany didn't start using until 1893-04-01. This fix allows us to remove the blacklist that had been applied to this test without investigation. It wasn't related to OpenSUSE, aside from the fact that OpenSUSE tzdata carries the LMT data. Change-Id: Id5480807d25e49e78b79ffff1449bdaf46901367 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
| | * Make it clear that QObject::tr() falls back to QString::fromUtf8()Sérgio Martins2016-04-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | The reference to trUtf8() made it even more confusing, so remove it. It's redundant and deprecated anyway. Change-Id: I9921297160db3660bb5099692bbfdaf6e85637aa Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * qstyle: Make image description match the image.Sérgio Martins2016-04-281-2/+2
| | | | | | | | | | | | | | | | | | | | | The image shows 9 combo boxes, not 8. Change-Id: If229332e1708f624ad9f50fab0b78c011d94f31e Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
| | * Add missing indentationAllan Sandfeld Jensen2016-04-281-16/+16
| | | | | | | | | | | | | | | | | | | | | Discovered with gcc 6. Change-Id: Ib5ba49df6a1f4d9574842ffe5f3e9856da0e60d0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * QPdf: Force miter limit into valid rangeKai Pastor2016-04-284-1/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Miter limits below 1.0 are not valid in PDF and trigger an error in the Reader. This change enforces a minimum miter limit of 1.0, and it adds a manual test for producing a PDF file demonstrating this issue. Task-number: QTBUG-52641 Change-Id: I1c78b1c4a44579e95e1cddfb459926d304e60165 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * Unhide QObject::parent() from QFileSystemModel and QIdentityProxyModelAlexander Volkov2016-04-282-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was hidden by overridden parent(const QModelIndex &) methods. See also 63b5082ea8e3e750af986f815474f7207006cb46 (Unhide QObject::parent() from QAbstract{Table,List}model). Change-Id: I8b6d4d4175e4d43ff269eaeb0b2b1a9fb8f44bab Task-number: QTBUG-45393 Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * QtDBus: finish all pending call with error if disconnectedWeng Xuetian2016-04-286-6/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | libdbus will send a local signal if connection gets disconnected. When this happens, end all pending calls with QDBusError::Disconnected. Task-number: QTBUG-51649 Change-Id: I5c7d2a468bb5da746d0c0e53e458c1e376f186a9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * winrt: Refactor pointer device handling to support penMaurice Kalinowski2016-04-281-30/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In addition to pen events being handled as tablet events, we create touch events. Same principle is used on other platforms as well. This allows devices as Surfaces to use the pen with Qt applications. Furthermore, the first update event does not have to be a press event, as in a pen has proximity values describing a move without touch, but also the HoloLens uses touch points as permanent pointer devices. They all send an exit event once released or out of range. Hence, clean up the internal touchpoint hash when the touch device is gone, not on release. Task-number: QTBUG-38681 Change-Id: I38acaa034a3cfe224098bfa36bfead5428f4db16 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * winrt: Fix memory leak for file readingMaurice Kalinowski2016-04-281-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IInputStream::ReadAsync might create a separate buffer to fill in data. Passing a buffer with GetAddressOf() can cause a memory leak of the size of data to be read. Instead, pass a separate buffer pointer and continue to use this one after the async operation. This way, the OS can decide whether to switch buffers or not, keeping ref counting in sync. Task-number: QTBUG-52961 Change-Id: I9dfb627287142355ebcf74ca52427b4e8108e8d1 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * tst_compiler: Expand the attribute testThiago Macieira2016-04-281-5/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is not exhaustive, but was enough to discover ICEs. Change-Id: Ib60be1d298a66b72e3eb9b75ad538f0bf15b5f62 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io> Reviewed-by: Simo Fält <simo.falt@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Disable DirectFB automatic detection and mark it deprecatedThiago Macieira2016-04-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Important Behavior Changes] Support for DirectFB is no longer enabled by default, due to lack of development in upstream. To re-enable the platform plugin, pass the -directfb option to configure. If there is no interest in this platform, the support will be deprecated in Qt 5.7 and will be removed in Qt 5.8. See: http://lists.qt-project.org/pipermail/development/2016-March/025273.html Change-Id: Icaa7fb2a490246bda156ffff143c62515a5f575b Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * Fix clang developer build due to -Winconsistent-missing-overrideSérgio Martins2016-04-281-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | The existing code keeps the overrides from each base class together, so also move them to the correct group after adding Q_DECL_OVERRIDE. Change-Id: I5d89fb4e7f9454ab0c9c6383f8245e64b95e84e9 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * Use C++11 alignas() for Q_DECL_ALIGN, if possibleThiago Macieira2016-04-281-0/+5
| | | | | | | | | | | | | | | Change-Id: Ifea6e497f11a461db432ffff144863d4ed69a212 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| | * Fix QArrayData::allocate() to guard against integer overflowsThiago Macieira2016-04-281-3/+10
| | | | | | | | | | | | | | | | | | | | | The proper solution with qCalculateBlockSize will come for Qt 5.7. Change-Id: Ifea6e497f11a461db432ffff14490788fc522eb7 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * make use of COPIESOswald Buddenhagen2016-04-271-17/+2
| | | | | | | | | | | | | | | | | | Change-Id: I34965cada901fce3cf300a99fa65d4d3f9bd4578 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * add support for copying arbitrary filesOswald Buddenhagen2016-04-272-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this adds file_copies.prf, which understands the variable COPIES, which works analogously to INSTALLS. i've been holding this off for a long time, as it is not without caveats. however, similar hacks are proliferating all over the code base, so it's time we formalized it. in fact, it's the easiest way to fix some nasty shadow build problems, which is why i'm adding this on the stable branch. Task-number: QTBUG-52256 Change-Id: Icbe3b9fbb79c952546aad2d467a438d3a69d749f Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| | * Fix clipping of wave underline decoration on certain fontsAllan Sandfeld Jensen2016-04-271-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Limit the height of the the wave-pixmap so that fillRect doesn't clip it. At the same time the precision of the generated wave-pixmap is improved so it better fits the requested radius. Task-number: QTCREATORBUG-15851 Change-Id: If754387b20ab7b015857ecb0a0e8fe16de1d728a Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Micro optimization to QFontconfigDatabaseKonstantin Ritt2016-04-271-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | Do not set WritingSystem supported just to unset it afterwards; test in-place and fallback gracefully. Change-Id: I6910019c08fcf3909b924c27271547aae2ea0ff1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Get rid of requiresOpenType() helperKonstantin Ritt2016-04-271-14/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is already an array of writing systems for which GSUB|GPOS table is required (also rename it from "openType" to "capabilityForWritingSystem", to reflect its meaning). Change-Id: I7cfd4a80d5ca13f9312b3644b2bd738d6015c71c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Query FC_CAPABILITY once per patternKonstantin Ritt2016-04-271-2/+3
| | | | | | | | | | | | | | | Change-Id: I5f1219d5a476f1bd09e8c01847fe886f342b28a0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Check for required capability only when FC_CAPABILITY is availableKonstantin Ritt2016-04-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If, by some reason, querying FC_CAPABILITY has failed, believe FC_LANG unconditionally. Change-Id: Idf94150359dff555f2a50ccaf146722407f43477 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Fix a small logic error in qmake bootstrap compiler flagsLars Knoll2016-04-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a small logic error in the code selecting the debug/release C(XX)_FLAGS used when compiling qmake, that could lead to us not specifying any flags at all. Change-Id: I5d3c44367d535a17570e3602029b84a02706d624 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>