summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Ensure valid data after QImage::invertPixelsAllan Sandfeld Jensen2014-07-312-3/+85
| | | | | | | | | | | | | | | | QImage::invertPixels may produce invalid data after inversions of images with premultiplied alpha, because the inverted colors will be larger than the alpha. This patch converts any image with a premultiplied alpha channel to ARGB32 before inverting the pixels, and then back to the original format after the inversion. Support is added for correct inversion of RGBA8888 and RGB30 formats. Task-number: QTBUG-39901 Change-Id: Ief24c55f495e67ef2ad6429b5b418d02963a64dd Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Android: Cleanup androidjnimain.cpp/.h filesBogDan Vatra2014-07-312-54/+44
| | | | | | | | | Remove unused includes Remove unused static vars use Q_NULLPTR insead of 0 or NULL Change-Id: Id8c99c83c64425c9725e441108010f3821bd3b44 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Android: Fix expose region.BogDan Vatra2014-07-312-3/+3
| | | | | | | | It seems that the second parameter of handleExposeEvent function is about the region inside the window, not its position on the screen. Change-Id: I89f5b2b13c9b0993253542823a84547d6a994c31 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Android: Release all windows when the application is suspended.BogDan Vatra2014-07-318-22/+83
| | | | | | | | | | | | | | When an application is suspended on Android all its Gl surfaces are destroyed and can't be used to render anymore, so we should release them in order to give back to the system the memory used by them. [ChangeLog] [Android] Release all windows when the application is suspended. Task-number: QTBUG-29069 Change-Id: I038aaa2006da1f3188fccba943ec4ffb3e551cf0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Android: Really suspend apps that are put in the backgroundBogDan Vatra2014-07-319-8/+282
| | | | | | | | | | | | | | | | | | | The main event loop will be paused when an application is suspended, this is also the normal behavior of any Android application. When an application is suspended on Android all its Gl surfaces are destroyed and can't be used to render anymore. So, we need to pause the main event loop in order to pause all the timers which might trigger drawings. The event loop is resumed immediately after the application is foreground. AndroidManifest.xml contains more info about how to disable this behavior and what might happen if you do it. [ChangeLog][Android][Important Behavior Changes] The main event loop is now stopped when the app is suspended Task-number: QTBUG-36274 Change-Id: I4c0ba5df9d95f348bca67ea5c76865d6d20775e4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Add ascii_isspace to replace the locale-dependent isspace(3)Thiago Macieira2014-07-313-10/+37
| | | | | Change-Id: Icee42515179e6f3ddefe0692af69e90054449618 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Xcode: Reference files by absolute path, and name them by basename onlyTor Arne Vestbø2014-07-312-24/+21
| | | | | | | | | | | | | | | Xcode uses project and group relative file paths, but to keep things simple for ourselves we use absolute paths everywhere. We now make an effort to actually make these paths absolute before telling Xcode they are. We also make the visual representation of the files inside Xcode be just the filename, not the full path, like Xcode itself does. This is among other things a prerequisite for Xcode to stop complaining about missing launch images for retina 4-inch screens. Change-Id: I5ff6bf07f61888e3c9fe2f64cbc2beb896b8442d Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* tst_qwidget: Fix geometries.Friedemann Kleint2014-07-311-73/+155
| | | | | | | | | | | Use sizes relative to the test widget size; move windows relative to the top left point of the available screen geometry. Set a window title on widgets to be able to identify them. The test now passes on Windows using a 4K monitor. Task-number: QTBUG-38858 Change-Id: I5df9198e390befeb3ca18796e24180135a084aad Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* tst_qwindow: Fix geometries.Friedemann Kleint2014-07-311-55/+75
| | | | | | | | | | | Use sizes relative to the test window size; move windows relative to the top left point of the available screen geometry. The test now passes on Windows using a 4K monitor. Task-number: QTBUG-38858 Change-Id: Ia8d992f2a9bfa1cb1deacaf918ed0cfff7616959 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Make hellogl work properly regardless of vsyncLaszlo Agocs2014-07-312-7/+21
| | | | | | Task-number: QTBUG-39370 Change-Id: I5b7acb8367f18bfa9318c292657ff7fa0f21f664 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* OS X: correct tablet stylus rotation to range -180..180 degreesShawn Rutledge2014-07-311-1/+3
| | | | | | | | | | | | | | When the user holds the Wacom Art Pen straight, rotation is zero; when turning it counter-clockwise, it should have a negative angle, whereas the driver sends a positive angle; when turning it clockwise it should have a positive angle up to 180, whereas the driver sends 360 going downwards towards 180. These corrections make the angle reading consistent between Linux, Windows and OS X. Task-number: QTBUG-39570 Change-Id: I7a57cc1fb56d4f7128ca1add10aff2597f29c507 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* OS X: add buttons to tablet eventsShawn Rutledge2014-07-311-2/+13
| | | | | | Task-number: QTBUG-39458 Change-Id: I112107e392bf3b55771039b72271fdf887e2e5db Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* QTabletEvent manual test: show buttons, pressure, eraserShawn Rutledge2014-07-314-39/+127
| | | | | | | | | | | | | | | | - Show which button was pressed or released - Render an ellipse proportional to pressure for each point drawn - Different color for the eraser - More complete output for each event - Don't show mouse events by default, just as most tablet applications can now ignore mouse events on the drawing canvas. But for the purpose of testing interleaving of tablet and mouse events, one can give the argument --mouse when starting this program to show them too, as before. Task-number: QTBUG-39458 Change-Id: I5e03f1aa748be39d524bd6984ff5d66579787cf9 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* OS X: correct tablet airbrush tangentialPressure to range -1..1Shawn Rutledge2014-07-311-1/+1
| | | | | | | | | | The driver sends values in the range 0..1, but we want the "center" value to be 0. This correction makes tangentialPressure consistent between Linux, Windows and OS X. Task-number: QTBUG-40469 Change-Id: Ia4aa777efdf015c2802b945f6ca7a8e442bbf5fc Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Windows plugin: Refactor input context.Friedemann Kleint2014-07-311-18/+7
| | | | | | | | | - Use static invocation of QGuiApplication accessor. - Use QInputMethod::queryFocusObject(). Task-number: QTBUG-40402 Change-Id: Ic1a7f66389df532acca88ddda37d35d6e7049a53 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Micro-optimize QXmlStreamReaderPrivate.Jędrzej Nowacki2014-07-311-3/+3
| | | | | | | Avoid redundant QStringRef to QString conversions. Change-Id: I4a65119e7821206e2f72387a5d02cec5ce39dbfb Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Add QString::splitRef functions.Jędrzej Nowacki2014-07-313-15/+198
| | | | | | | | | | | | The functions can be used to optimize code that do not need to use the split results as QString directly. [ChangeLog][QtCore] QString can now split a string to a list of QStringRef. Change-Id: Ic2dc929e1fba82f9a060e37c51068a301cb5b866 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Micro-optimize uicJędrzej Nowacki2014-07-311-1/+1
| | | | | | | Avoid redundant QStringRef to QString conversion. Change-Id: I93c4f19798e81515f483371f0cc6fcccc7fe36c7 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Micro-optimize qdocJędrzej Nowacki2014-07-311-3/+3
| | | | | | | Avoid redundant QStringRef to QString conversions. Change-Id: I535e7ba02b4ac5abef6036f631e228205e63f32a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Doc: update the list of typical values for xxxCpuArchitectureThiago Macieira2014-07-311-2/+12
| | | | | | | | | | | | | | | | | If we wanted to make the list exhaustive for buildCpuArchitecture, we'd add alpha, avr32, bfin, s390(x), and sh. I don't want to make it exhaustive because that's cluttering the documentation and we'd have to keep in sync with archdetect.cpp. And we can't make currentCpuArchitecture exhaustive, since it depends on the output from uname(2). You can argue that neither IA-64, POWER, nor SPARC architectures are typical these days... Change-Id: I0a5310770947263e1bafd9443ea59420813c51a8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Attempt to add support for Solaris sysinfo callThiago Macieira2014-07-311-3/+24
| | | | | | | | | Totally untested. Change-Id: I2c2347a66cb3fcb71d97782090ac628bef0b247f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add the detection of the compiler macros for more AVX512 featuresThiago Macieira2014-07-311-0/+12
| | | | | Change-Id: I1d1f2c3857824b17185bc47398299ea7f92c5568 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Use an enum to check that the OS is saving the register stateThiago Macieira2014-07-311-1/+18
| | | | | | | | | | | | It's easier to read AVXState and AVX512State than 6 and 0xe6. Also add a note that where we should have checked whether the SSE state is being saved by the OS. However, we won't do it because it's just a waste of CPU cycles: any OS Qt 5 runs on will enable the proper state-saving. Change-Id: Id87b59fe1388a6cab983c9412341e36a86dd15c5 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QProgressDialog: make the cancel button retranslate on LanguageChangeMarc Mutz2014-07-302-2/+46
| | | | | | | | | | | | | | It is documented to be, and the LanguageChange event is caught and processed. However, retranslateStrings() uses QProgressDialog::setCancelButtonText(), which unconditionally sets useDefaultCancelText=true, blocking any further changes to the button text by subsequent LanguageChange events. The fix is to use extracted QProgressDialogPrivate::setCancelButtonText() which - quite intentionally - doesn't set useDefaultCancelText. Task-number: QTBUG-40504 Change-Id: I6e701deda10c454cb088c0b0778ac2d6adff574a Reviewed-by: David Faure <david.faure@kdab.com>
* QProgressDialog: Extract Method QProgressDialogPrivate::setCancelButtonText()Marc Mutz2014-07-301-7/+14
| | | | | | | | This is in preparation of a fix for the broken online-retranslatability of the cancel button. Change-Id: Ie62540766e50e1f1ec07d251cc56a2ee0745d434 Reviewed-by: David Faure <david.faure@kdab.com>
* QProgressDialog: don't crash when setting the same {bar,button,label} againMarc Mutz2014-07-302-0/+64
| | | | | | | | | | The associated test has unearthed that setBar() fails to make the new bar a child of the progress dialog. This will be fixed in a separate commit. Task-number: QTBUG-40502 Change-Id: I2d09ebb07ae6395449a4efe38a638df831eebdd7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* tst_QProgressDialog: enable topLevelWindows() check in cleanup()Marc Mutz2014-07-301-1/+7
| | | | | | | | Detects widget leaks. Change-Id: Ia2287debc96a5b87b224b887661679eba8622dc0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Clean up tst_QProgressDialogMarc Mutz2014-07-301-14/+2
| | | | | | | | Remove empty ctor and dtor. Change-Id: Ib89f463eb2623bbb66cc3faa2ab2d5992810f153 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Add EglDisplay case to nativeResourceForContext on eglfsAndras Becsi2014-07-301-0/+4
| | | | | | | | | | This is needed to make it possible to use the same interface for retrieving the EGLDisplay on Windows and EGLFS, thus get rid of cluttering ifdefs. Change-Id: I37b848b1017eacbf8a29627cd157b74e22e5f40c Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Allow lower case resource names in native interface on WindowsAndras Becsi2014-07-301-7/+43
| | | | | | | | | | | | | The native interface implementation in QEGLPlatformIntegration lower-cases the resource key strings, where as in the Windows implementation we currently only check for camel-case resource names to retriece the same resources. Make it possible to use lower-case strings on Windows as well by using the same key look-up mechanism as used in the eglfs implementation. Change-Id: Id2a594310df610cadbe420409c090f0abb316474 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Merge "Merge remote-tracking branch 'origin/5.3' into dev" into refs/staging/devFrederik Gladhorn2014-07-3022-27/+189
|\
| * Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-2922-27/+189
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/network/ssl/qsslsocket_openssl_symbols.cpp Change-Id: Ic62419fa1fee5f4de6c372459d72e6e16f9a810b
| | * Fix compilation if EC is disabled in OpenSSLJoni Poikelin2014-07-293-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some Linux distributions disable EC by default which causes compile errors on those platforms. Task-number: QTBUG-40394 Change-Id: If5816d473bd1d64b1d4977860db662704a83310f Reviewed-by: Richard J. Moore <rich@kde.org>
| | * Improve dbus cross compilationBernd Weimer2014-07-286-7/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building QtDBus on Linux host for QNX target had two issues: * Configure check failed, because dbus-1 library was not linked in, if target platform doesn't support pkg-config. * Host tools were not built, because pkg-config was not used to locate dbus headers on the host. Task-number: QTBUG-37324 Change-Id: I71d8309599fd40ef2dd8c9e3b44b93a7482019f1 Reviewed-by: Rolf Eike Beer <eb@emlix.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Fix buffer overrun error with some proxy serversArtem Shevchenko2014-07-281-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases, depending on the proxy server response, the current implementation of QHttpSocketEngine may write to memory beyond the allocated buffer size. That will trigger undefined behavior on UNIX systems and a buffer overrun exception if compiled with visual studio. Change-Id: I5769d10c56b6a7483d6d94672aa4321287b82651 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_QSet: verify that {}-style initialization drops duplicatesMarc Mutz2014-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | No actual reason for this test, except my curiority. Then again, it's good to have this check, too. Change-Id: I815fce7e4dbe76e21cac29beb1dbfc1083191d24 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_QMap: replace QVERIFY(x == y) with QCOMPARE(x,y)Marc Mutz2014-07-251-2/+2
| | | | | | | | | | | | | | | | | | | | | QCOMPARE produces more useful output on failure. Change-Id: Idaa9bf61a22a43b0feb084a71985a69c8787d633 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_QMap: verify that {}-style initialization drops duplicatesMarc Mutz2014-07-251-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No actual reason for this test, except my curiority. Then again, it's good to have this check, too. Also checks that the last entry in the init_list "wins", which is not how std:: containers work. Change-Id: I4f7d1228f2b90a904b6c3f99e54afcd9970b723e Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_QHash: replace QVERIFY(x == y) with QCOMPARE(x,y)Marc Mutz2014-07-251-2/+2
| | | | | | | | | | | | | | | | | | | | | QCOMPARE produces more useful output on failure. Change-Id: I584a5d33026ac2587758d72524f735937029e111 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * tst_QHash: verify that {}-style initialization drops duplicatesMarc Mutz2014-07-251-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No actual reason for this test, except my curiority. Then again, it's good to have this check, too. Also checks that the last entry in the init_list "wins", which is not how std:: containers work. Change-Id: Ia284d093cd0029432372630e81657fb687b9516f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * QNAM: Fix CPU load for limited upload QIODeviceMarkus Goetz2014-07-253-0/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes high CPU load for upload devices that don't generate a constant stream of data. Their readData() function was called all the time without returning actual data. This was noticed when implementing an upload device that emits data in a limited way for bandwidth limiting. [ChangeLog][QtNetwork][QNetworkAccessManager] Fixed high CPU load when handling POST/upload QIODevice that generates data on readyRead(). Change-Id: Iefbcb1a21d8aedef1eb11761232dd16a049018dc Reviewed-by: Richard J. Moore <rich@kde.org>
| | * qmake: Document the "aux" template type.Christian Kandeler2014-07-251-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Better late than never. Change-Id: If3bbeb4dfe3a8d49ceb02d9c2d0f2eff71595105 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Use the stateless UTF-8 encoder in QStringRef::toUtf8Thiago Macieira2014-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | QString::toUtf8 already does it. I guess I forgot to update this part in d51130cc3a00df8147e2eb0799e06865c901c6e0. Change-Id: I83feafcb0383758f7e64d5142f57a7ae6a2ff351 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * Doc: corrected autolink errors in qnamespace.qdocNico Vertriest2014-07-231-5/+5
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-40362 Change-Id: Ic2a0740a12c98a60cb1d178c4d42c4ae1c39869c Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| | * Windows: Fix assignment of margins in QPageSetupDialog.Friedemann Kleint2014-07-221-3/+2
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-40061 Change-Id: Id5c952a7d6280f2ab7180bff01911d6cffe57034 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
| | * QPixmap::fromImage() should detach when changing QImage formatAllan Sandfeld Jensen2014-07-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When QPixmap::fromImage() detects an ARGB32 image with only opaque pixels it will do a conversion where it only changes the advertised format of the image. This conversion was lacking a check to see if it the QImage was shared before doing so, which this patch adds. Task-number: QTBUG-40282 Change-Id: I3acf221b76735637cef04c2104a33f87e5f09d54 Reviewed-by: Andreas Löw <andreas@code-and-web.de> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Windows: Add Qt Creator PATH update tip for missing SQL client dllsSamuel Gaist2014-07-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch aims to provide an additional tip for users having trouble with e.g. the MySQL plugin. After a successful build most users are struggling with loading failure due the fact that the client libraries folder is not contained in the PATH environment variable. This tip helps them overcome that in a controlled manner with Qt Creator. Change-Id: I2dc5c9c6d8d8976686d74c369b6e1683c479f35c Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* | | Accessibility: Top level widgets should only be in the hierarchy onceFrederik Gladhorn2014-07-304-16/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | On Linux for example Orca gets confused when showing a dialog that is a child of another widget since it would show up twice in the hierarchy. Task-number: QTBUG-39444 Change-Id: I84773ecc3d6774a652dbeb29ad201779f5b3191c Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* | | Accessibility Linux: Also send meta key as modifierFrederik Gladhorn2014-07-301-0/+2
| | | | | | | | | | | | | | | Change-Id: I0b33bf3d6ad468176e7c7e5a71b3bcba966ffd9f Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* | | Fix documented default value of QProgressDialog::maximumMarc Mutz2014-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Seems to have been a cut'n'paste from 'minimum'. Change-Id: Ifc3a4441809a9fc75ecac621cff59950235f6bc7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure <david.faure@kdab.com>