summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* QtBase: remove explicit function info from qWarning() etcMarc Mutz2015-11-2810-20/+20
| | | | | | | | | | | This information is already registered by the QMessageLogger ctor. Where, by dropping the << Q_FUNC_INFO in ostream-style qDebug(), only a string literal remained, converted to printf-style qDebug() on the go. Change-Id: I3f261c98fd7bcfa1fead381a75a82713bb75e6f3 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-11-271-2/+9
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/network/socket/qnativesocketengine_p.h src/network/ssl/qsslsocket_mac.cpp src/network/ssl/qsslsocket_mac_p.h src/widgets/kernel/qwidget.cpp Change-Id: I39592cb37d710dfaf8640769ba3c1b637927d7f4
| * Remove incorrect assertion from the backingstoreLaszlo Agocs2015-11-261-5/+8
| | | | | | | | | | | | | | | | | | | | The ifdef gave an impression of the code path being hit only when texture-backed widgets are present and OpenGL-based compositing is active. This is false. Asserting on having a context current is wrong (as shown by autotests on the 5.6 branch). Change-Id: I2539f0aac75b26597f49f63edcd9580428be79b7 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| * Do not leak textures from the backing storesLaszlo Agocs2015-11-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Neither the default nor the eglfs-specific backingstore release the OpenGL textures that are in use when render-to-texture widgets are involved. The result can be fatal on embedded devices that run out of GPU memory at after showing and closing dialogs and popups a certain number of times. Task-number: QTBUG-49363 Task-number: QTBUG-49399 Change-Id: Ia7471b037f147bcca0a4f1db5808ca348e230547 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Add AArch64 ASM to qimage_neon.cppAllan Sandfeld Jensen2015-11-263-5/+30
| | | | | | | | | | | | | | | | | | | | | | Since AArch64 NEON assembly is different from Arm32 NEON we need to write a separate version. Assembly is used over intrinsics as the intrinsics have trouble efficiently using the vstX and vldX instructions. Change-Id: I5b67fc87acb2433b503e658099b742d57a9cff18 Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* | Detect NEON on AArch64Allan Sandfeld Jensen2015-11-263-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | The __ARM_NEON is the standard define for NEON instructions support __ARM_NEON__ is only legacy, and specifically not defined in AArch64 builds, which causes us not to detect NEON support there. The NEON assembler files doesn't build with AArch64, so the NEON drawhelper methods must be excluded for now. Change-Id: Ie32f855bde94ee7efd8a8ddb7766c931778e729b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix inplaceRgbConversion test on non-x86Allan Sandfeld Jensen2015-11-261-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | We test that inline conversion between same image depths always succeed inline, but that requires that any direct conversions exists both in non-inline and inline versions. This patch adds a non-sse2 inline conversion from ARGB32 to ARGB32PM which was missing. Change-Id: I71937cd4b77fb41fe2064da937f6dcbf2a6534e6 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Fix QTextLine::cursorToX()J-P Nurmi2015-11-251-3/+1
| | | | | | | | | | | | | | | | | | | | 0e99f3c broke tst_qquicktextinput::horizontalAlignment_RightToLeft() and tst_qquicktextedit::hAlign_RightToLeft(). This fix was proposed by Konstantin. Change-Id: I602b7301d415f266224ae2c1ffd81244e9565862 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Doc: added sample to QFileOpenEvent class detailsSamuel Gaist2015-11-243-0/+147
| | | | | | | | | | | | | | | | This sample will help user needing to react on QFileOpenEvent get started faster. Change-Id: I7def292894fc39d803f70cbf0453f6791b7aea15 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* | Fix undefined behavior in qRgba().Tilo Nitzsche2015-11-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | Shifting a signed integer that overflows is undefined behavior. All masks were changed to unsigned in qRgb and qRgba. While the alpha value is enough to fix the undefined behavior, Visual C++ generates slow code if not all of those constants are unsigned. Change-Id: Ia0ec3e9464088495173b4ad9c2e37a49e6f8e987 Task-number: QTBUG-49595 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Optimize QTextEngine::findItem() usage casesKonstantin Ritt2015-11-233-9/+10
| | | | | | | | | | | | | | | | Since the item positions are guaranteed to grow, we could safely re-use the obtained first item while looking for the last item in the chain. Change-Id: I5e42f5de820c62a51a109a4b227b031c697aa898 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QTextLine::cursorToX: Optimize by re-using the cached valuesKonstantin Ritt2015-11-231-10/+8
| | | | | | | | | | | | | | (and move some code around) Change-Id: I2e26dcc7b769fdbcc750332845da11ec88e332dd Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QTextLine::cursorToX: Always return the nearest valid cursor positionKonstantin Ritt2015-11-231-9/+9
| | | | | | | | | | | | | | | | The documentation already states we're doing this, so stop lying and implement it properly :) Change-Id: Ic78980d76f61e8aa64e59ea058a8105d9c507774 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Get rid of QT_USE_BUNDLED_LIBPNGKonstantin Ritt2015-11-231-5/+0
| | | | | | | | | | | | | | | | | | In fact, this is an extra info no one ever cares about. We already have properly configured INCLUDEPATH to look for png.h. Change-Id: I27fec4d474570683c6c371dff34472a7c650fe65 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QTextLine::cursorToX: Fix typo in the documentationKonstantin Ritt2015-11-221-1/+1
| | | | | | | | | | Change-Id: Iecdcab5145b147edbab78b08bd6c9e2dc2f18d48 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Support mixing native child widgets with texture-based onesLaszlo Agocs2015-11-191-13/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently QOpenGLWidget and QQuickWidget do not support having native child widgets inside the same top-level window. In some cases this is inevitable, f.ex. multimedia may require native windows when used from widget apps. winId() calls made for various (valid or invalid) reasons are also problematic. There are no blockers for supporting this setup, however. By storing multiple texture lists (one for each subtree where the root is a native widget), adding the missing markDirtyOnScreen calls, letting each native widget access the correct texture list (i.e. the one corresponding to its children) when they are (separately) flushed, and fixing composeAndFlush() to take the update region and the (native child) offset into account, it can all be made functional. The change also fixes the issue of keeping GL-based compositing enabled even after all render-to-texture widgets in the window become hidden. Due to the changes of how such widgets are gathered, composeAndFlush() is not invoked anymore when no such widgets are discovered for a given native parent. This is great since having compositing enabled infinitely is an issue for applications like Qt Creator that implement certain views with QQuickWidgets but cannot afford the cost of texture uploads in other places (e.g. for the text editor) on slower machines. The openglwidget manual test is greatly enhanced to test various situations (MDI, scroll areas, tab widgets, QOpenGLWidget as native child, QOpenGLWidget with non-tlw native parent, etc.) Task-number: QTBUG-48130 Task-number: QTBUG-49172 Change-Id: Iad098359c8bcf749f01c050da0853415e1550eda Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | Make the ppm image handler corrctly handle long comment linesEirik Aavitsland2015-11-191-4/+12
| | | | | | | | | | | | | | | | | | The ppm decoder used a fixed size buffer to discard comment lines, which would fail for comments longer than 100 characters. Task-number: QTBUG-49414 Change-Id: I92e910e025cf7584a6ff1c0e5b0e8a4ab281d479 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* | topLevelAt(): convert to native coordinates.Morten Johan Sørvig2015-11-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | QPlatformScreen works in native pixels and the (device independent) coordinates from QWindow needs to be converted. Change-Id: I85ff45d66dc501e8c3c1c7a18f87448c92d79b9d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* | Call QPlatformCursor::pointerEvent with native coordinates.Morten Johan Sørvig2015-11-181-3/+10
| | | | | | | | | | | | | | | | | | | | It's a QPlatform* class and works in the native (platform) coordinate system. Change-Id: Ibf36bc68d84ecd668b35e0c22e1fa35cfc456a5d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | qdrawhelper.cpp: Fix constexpr build with MSVC 2015 Update 1Thiago Macieira2015-11-181-7/+7
| | | | | | | | | | | | | | error C2397: conversion from 'uint' to 'uchar' requires a narrowing conversion Change-Id: Ic1b9e0a78b2faa5a0ae4e6de33ab2ee4b654af5f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-11-171-0/+4
|\| | | | | | | Change-Id: I6b1fe0c6c360a0d5285911869f0f4f93d86d822e
| * Fix QImage::setDotsPerMeterX/Y for images with some orientationsJoni Poikelin2015-11-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | Rotation of images with orientation of 90 and 270 degrees dropped DPM values from rotated image. Task-number: QTBUG-49220 Change-Id: I9c23153c49dd63b5f6958fdde72f466873b0a407 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Liang Qi <liang.qi@theqtcompany.com> Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
* | Fix screenForGeometry on a corner caseAleix Pol2015-11-161-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | QRect only deals with integers, and I had a window set on the corner and without a size. When this screen was created, it was reported to be on the wrong screen, thus created there wrong. The reason for this is that ::center is not prepared for this use. QRect(QPoint(500,500), QSize()).center() is QRect(499, 499) Change-Id: I24e57182f84873306f180749e96368d6da1147a9 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | QFontEngineFT: Optimize format convertion code with template magicKonstantin Ritt2015-11-161-16/+38
| | | | | | | | | | | | | | | | Avoids in-loop check for every pixel by costs of slightly bigger code. Change-Id: I8321d0945ac6b677786431670b2316c60e4db492 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QFontEngineFT: Revise the legacy LCD filter implementationKonstantin Ritt2015-11-161-22/+15
| | | | | | | | | | | | | | | | | | | | | | Use an optimized version of the intra-pixel filter found in FreeType's _ft_lcd_filter_legacy(). Gives us somewhat better accuracy and better performance. Change-Id: Id4200b67e6ff55f605037c3e5464fef8bb03fbde Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Fix falsely reported style for fallback fontEskil Abrahamsen Blomfeldt2015-11-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In change 8f6b3284106fa11129e4fa6e5ec3adc6cb1f489f we override the fontDef of the fallback font with the fontDef of the original font (with the family name replaced) to fix a regression where boldness was not inherited by the fallback font. This caused a bug, though, since the contents of the fontDef would now misrepresent the actual font used. The side effect of this was that isSmoothlyScalable() returned false because the family and styleName combination we claim to have did not exist in the font database. Result: We fell back to native rendering for the font even though it's scalable. Weight and style are the only parts that should be inherited, since they are synthesized. So rather than overwriting the fontDef completely, we copy the weight and style when needed. The bug in QTBUG-42963 is still fixed after this change. [ChangeLog][Text] Fixed problem where fallback fonts for text with certain styles would be reported as unscalable. Change-Id: I95ef67f818852aea5a6ae8df789a52364ecb59a6 Task-number: QTBUG-47547 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | QFontEngineFT: Minor optimization to convertGRAYToARGB()Konstantin Ritt2015-11-131-6/+9
| | | | | | | | | | | | | | | | | | Precalculate everything we can and use faster loop. Make inlined as it is used just in a single place. Change-Id: If3c33d60739eb4ce896020321442ae81edd1c13d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QTextEngine: Apply CoreText specific post-processing for QFE::Mac onlyKonstantin Ritt2015-11-131-13/+14
| | | | | | | | | | | | | | These tricks has no meaning to other font engines (i.e. to FreeType). Change-Id: I0410693d4d159367d760433062506691dc7c4610 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QTextEngine: Do not disable graphite2 HB shaper backendKonstantin Ritt2015-11-131-15/+14
| | | | | | | | | | | | | | | | | | | | | | | | This fixes-up bf013c9e745c63cb112be4d3a37027ff997927dd by specifying graphite2 shaper in a "safe" shaper list, one used for non-CoreText font engines (currently, FreeType font engine only). Make the the comment and the code a bit cleaner about the fallback shaper list. Change-Id: Ib0cedc0b593023c9ee771e8e98c314d9c8f13037 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QFontEngine: Check for AAT support only with HB-NGKonstantin Ritt2015-11-131-5/+3
| | | | | | | | | | | | | | HB-old is unable to handle these anyways. Change-Id: Ibe69b5d030134b8a0a76dc966b6dfc6b5ff9a883 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Introduce png_dependency.priKonstantin Ritt2015-11-131-6/+1
| | | | | | | | | | | | | | | | | | Just like any other x_dependency.pri, it shall be included instead of linking with png lib directly. Change-Id: I698c8a8137f937d2e2c5f5dc9b9188b780c9e49a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Make qt_findAtNxFile return the source device pixel ratioOlivier Goffart2015-11-133-11/+23
| | | | | | | | | | | | | | | | QTextImageHandler needs it. And QQuickImageBase will also need it. Change-Id: Ica5d17519c4c6c06e25bab7d2b1d3733f4058425 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | move styleOverride from QApplicationPrivate to QGuiApplicationPrivateLiang Qi2015-11-132-0/+11
| | | | | | | | | | | | | | * -style option is also used in other cases than widget world Change-Id: I8555d309a7b9df0d26ad7a7b930411260537180e Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* | Set private inline QRgba64 methods always inlineAllan Sandfeld Jensen2015-11-061-6/+6
| | | | | | | | | | | | | | By setting them always inline we ensure they will never generate symbols. Change-Id: I2c815c4fe2cb498187656e0b25ef4499258885ff Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
* | Update Unicode data & algorithms up to v8.0Konstantin Ritt2015-11-051-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Georgian lari currency symbol * A large collection of CJK unified ideographs * Emoji symbols and symbol modifiers * Letters to support the Ik language in Uganda, Kulango in the Côte d’Ivoire, and other languages of Africa * A set of lowercase Cherokee syllables, forming case pairs with the existing Cherokee characters * The Ahom script for support of the Tai Ahom language in India * Arabic letters to support Arwi—the Tamil language written in the Arabic script For more details, see http://www.unicode.org/versions/Unicode8.0.0/ [ChangeLog][QtCore] Unicode data updated to v.8.0 Change-Id: If255f95c9c45655b721369a116299da3cabbba0a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Update high-DPI scaling enablers.Morten Johan Sørvig2015-11-041-12/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make it possible to enable and disable both at the environment variable level and at the source code level. This applies to scaling done by Qt using display density information provided by the operating system. Disabling is done with a 'veto' system: both the environment and source code my prevent the other for enabling scaling. This covers use cases of 'my system does not provide correct display metrics' and 'my application needs access to display pixels', respectively. On the environment, scaling is now enabled with QT_AUTO_SCREEN_SCALE_FACTOR=1 and disabled with QT_AUTO_SCREEN_SCALE_FACTOR=0. In source code the corresponding application attributes are AA_EnableHighDpiScaling and AA_DisapleHighDpiScaling. Not setting any of these indicates 'no preference'. The global scale factor set by QT_SCALE_FACTOR is not affected by any if the disablers. Task-number: QTBUG-46615 Change-Id: If18607d4b56ace1914a710e5aa60b2f0968e0010 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | Modify QPA handleExtendedKeyEvent.Samuel Nevala2015-11-032-3/+3
| | | | | | | | | | | | | | | | | | Allow setting tryShortcutOverride for handleExtendedKeyEvent with no timestamps. Change-Id: I469b144cfcaf063861debe86195e1f96ac94cc37 Reviewed-by: Andrew Knight <andrew.knight@intopalo.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* | QDataBuffer: disable copy special member functionsMarc Mutz2015-10-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | The compiler-generated ones would break class invariants. This internal class so far isn't copied. This patch makes sure that it stays that way. Change-Id: I8bf75058edaf2adf148ae9edff4bf4e9a3b3368d Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | src/gui/painting/painting.pri: add missing qdatabuffer_p.hMarc Mutz2015-10-291-0/+1
| | | | | | | | | | Change-Id: I40ae6beb14058948030e63a2535ff72a6b8072c1 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Remove historical +4 padding in QFontEngine::alphaMapForGlyph()Eskil Abrahamsen Blomfeldt2015-10-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Back in the old days, we would pad the output from the font engines to work around problems with the GL1 paint engine such as issues with linear sampling, etc. This is no longer needed. Padding is moved into the glyph cache, and in addition to reducing performance, the extra padding is also making alphaMapForGlyph() and alphaMapBoundingBox() fall out of sync when you fall back to QPainterPath drawing the glyph. The result of this was that, when prepared, the glyph cache was sometimes not made large enough to hold what alphaMapForGlyph() actually produced, depending on the size and order of glyphs, and glyphs ending up at the end of rows would sometimes be missing from the output. [ChangeLog][Text] Fixed some instances of missing glyphs when drawing large fonts. Change-Id: Ia5982392fe1637f6ebc740db9f226fbb91f75166 Task-number: QTBUG-47547 Reviewed-by: Gunnar Sletta <gunnar@sletta.org> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Fix QHighDPiScaling initialization issuesMorten Johan Sørvig2015-10-262-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | Call QHighDpiScaling::updateHighDpiScaling() in init_plaform(), after the platform integration has been created and most platforms have populated the screen list. Keep the existing udpate call for the platforms that don't, but guard against calling it twice. Task-number: QTBUG-47947 Change-Id: Ib73bea7c4ab42e7acf6532f3a3100e1fc29acc2c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | Support overlapping contours in glyph rasterizer fallbackEskil Abrahamsen Blomfeldt2015-10-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Truetype fonts should be rasterized with a winding fill as documented in e.g. Microsoft's specs. Failing to do this caused a bug when doing native rendering in Qt Quick for fonts that were large enough that the fallback path was taken when drawing the glyphs into the cache. If the glyph had overlapping contours, they would be subtracted from the shape. [ChangeLog][Text] Fixed an uncommon rendering error with fonts containing overlapping contours. Task-number: QTBUG-41197 Change-Id: I0e4a4432ba3f902bc3ea59d8f4dbd12a295630b2 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | QPathSegments::Intersection: reduce struct size 24 -> 16 bytesMaks Naumov2015-10-262-4/+3
| | | | | | | | | | | | | | Only for systems where qreal is double(8 bytes). Change-Id: I3fd6b5d4279c41102ead24eef287bb37847398c1 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Fix alignment in qConvertARGB64PMToA2RGB30PM_sse2Frederik Gladhorn2015-10-231-2/+1
| | | | | | | | | | | | | | | | _mm_load_si128 requires 16 byte alignment. This crashes on 32 bit Windows builds. Change-Id: Ib6c30eba726747bbab56467eada820521981a80c Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Compile the 64-bit version of some code on all 64-bit processorsThiago Macieira2015-10-231-2/+2
| | | | | | | | | | | | | | This is true for ILP32 on x86-64, IA-64 and AArch64. Change-Id: I1d0f78915b5942aab07cffff140f9d4c277bb5d4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Convert some QDateTime::currentDateTime() to currentDateTimeUtc() (I)Marc Mutz2015-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The latter is much faster as it doesn't have to deal with time zones. This change handles the trivial ones: Either the call to currentDateTime() is immediately followed by a call to toUTC() or toTime_t(). The latter is much faster on UTC QDateTimes, too. Credits to Milian Wolff, from whose QtWS15 talk this advice is taken. Change-Id: I872f5bbb26cbecedc1e5c0dbee4d5ac2c6eb67ee Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* | Prevent the pixmap cache from crashing if it's been destroyedThiago Macieira2015-10-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case the static destructor has already been run, make sure we don't crash. This shouldn't happen, but could happen if the QApplication destructor is run in a weird order (after the static destructors have begun running). That's not usually a case we'd fix (unsupported), but since this change improves the code and also avoids creating the pixmap cache if it hadn't been used up until this point, the change is a net benefit. Task-number: QTBUG-48709 Change-Id: Ia505aece07bf4e13a1faffff140f3e119cfc773e Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* | Respect QPen::dashOffset when generating PDFLars Knoll2015-10-221-3/+3
| | | | | | | | | | | | Change-Id: I26de1cd4a14d1b8978be6d0377cb2cba573fc82a Task-number: QTBUG-47164 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Fix warning message to match the function signatureLars Knoll2015-10-221-2/+2
| | | | | | | | | | | | Change-Id: Ie21d63e29351dae9a52998e3d1068500e502ec5a Task-number: QTBUG-46693 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Fix alignment issues on 32 bit in qConvertA2RGB30PMToARGB64PM_sse2 and ↵Frederik Gladhorn2015-10-221-5/+10
| | | | | | | | | | | | | | | | | | | | | | qConvertARGB32PMToARGB64PM_sse2 On 32 bit platforms the pointers may end up being 4 byte aligned. Happens with MSVC on 32 bit Windows. _mm_store_si128 is documented to require 16 byte alignment. Change-Id: I80737fedf9e7f436a51a83924117cc0bc63017cc Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>