summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Fix debug output of QTouchEvent.Friedemann Kleint2014-07-041-1/+1
| | | | | | | | Return dbg.space(). Task-number: QTBUG-29946 Change-Id: Ia79b297ee3801ccba9f7b1c22ac7a8761cbe8b2e Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Doc: fix a link in QAbstractOpenGLFunctions documentationLiang Qi2014-07-031-1/+1
| | | | | Change-Id: Icc0109de22de756f7e4b3e888b0ee28a9b9c04d5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QPdf::addImage(): avoid a QImage detach when it's in an acceptable FormatMartin Pley2014-07-031-3/+3
| | | | | | | | | Don't detach QImage, when it's in Format_Mono or Format_ARG32. Use QImage::constScanLine() instead of QImage::scanLine(). Change-Id: I30fcafb576aea3189637a40fd75f77c70017ba46 Reviewed-by: John Layt <jlayt@kde.org> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Add opt-out environment variable for @2x imagesMorten Johan Sørvig2014-07-032-3/+5
| | | | | | | | | | | | | | | There are cases where @2x images are in use but where you don't want the associated behavior: - You are implementing an image editor - You are inheriting a resource set which has @2x images, but don't want that behavior with Qt. Add support for disabling @2x behavior with QT_HIGHDPI_DISABLE_2X_IMAGE_LOADING. Change-Id: I206e050b6241f8935b4404c7a28b024a9e00d46c Task-id: QTBUG-38485 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Cocoa: Fix Qt-in-namespace build.Tim Blechmann2014-07-022-7/+7
| | | | | | | | Wrap cocoa classes in namespace macros. Task-number: QTBUG-39382 Change-Id: Id840e666105afca21760fcb529b5765e0a534120 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* QOpenGLTexture: fix the feature test for Buffer TexturesGiuseppe D'Angelo2014-07-011-3/+2
| | | | | | | | | | | | | | | | | | 1a4ff6f122f575aca21f6a0b9d9c14cac4a5ea66 modified the features test by checking extensions as well as the GL version. The problem was that the GL version was wrong in the first place -- buffer textures are natively supported since OpenGL 3.0, not 4.3. 4.3 introduced support for buffer texture ranges, i.e. ARB_texture_buffer_range; however it's pointless to take the highest requirement, especially considering that so far QOpenGLTexture doesn't wrap glTexBuffer(Range) in any way. In the future, if QOpenGLTexture will also wrap glTexBuffer, then we will also be able to introduce a different feature flag for testing buffer texture ranges. Change-Id: I6becbd49ac26d44ce01d088cbb7831b5cc127bdb Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Remove bogus nullptr check for referenceFrederik Gladhorn2014-06-271-4/+0
| | | | | Change-Id: I3aafe427b9ea9a2b7936c4e2217722ee78d329aa Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Merge "Merge remote-tracking branch 'origin/5.3.1' into 5.3" into ↵Frederik Gladhorn2014-06-252-6/+22
|\ | | | | | | refs/staging/5.3
| * Merge remote-tracking branch 'origin/5.3.1' into 5.3Frederik Gladhorn2014-06-252-6/+22
| |\ | | | | | | | | | Change-Id: I51fb88701b19ce4f7ea78e12a4049156f3ef9d7f
| | * Fix crash when reusing HB_Face in another font engineKonstantin Ritt2014-06-181-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After 717d39ac083e80, if HB_Face was instantiated by QFontEngineFT A and then used by QFontEngineFT B, whilst A already destroyed, a crash occurs in hb_getSFntTable() due to accessing a stale pointer. Task-number: QTBUG-39278 Change-Id: I3428669a311f49cdda1725b778f45219cbcf470d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| | * Handle invalid sample counts gracefully in FBOsLaszlo Agocs2014-06-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing in a sample count of -1 should be treated as 0. This is common when setting up framebuffer formats from a QSurfaceFormat where the default, unset value is indicated by a value of -1. This broke QQuickWidget which was unaware of this limitation of QOpenGLFramebufferObject and was passing format.samples() as the sample count without making sure it is 0 or higher. Task-number: QTBUG-39699 Change-Id: I324b8b006eaa992c15ae932f9df305500fefeb65 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | | Fix -Werror compilation on big-endianThiago Macieira2014-06-251-0/+2
|/ / | | | | | | | | | | | | | | | | | | qt_alphamapblit_rgba8888 is only used on little-endian systems, where qAlpha() returns the correct value. qdrawhelper.cpp:6256:13: error: 'void qt_alphamapblit_rgba8888(QRasterBuffer*, int, int, quint32, const uchar*, int, int, int, const QClipData*)' defined but not used [-Werror=unused-function] Change-Id: Ibba6dd6914138f7ae5d53a8e354597f5fff65433 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* | GIF decoding: do not seek() if the image is loaded over the networkShawn Rutledge2014-06-241-1/+1
| | | | | | | | | | | | | | | | | | This suppresses the warning QIODevice::seek: Cannot call seek on a sequential device Task-number: QTBUG-39217 Change-Id: Ie7b0845c760ae6fc857d02bf9ec5c5adb24fb631 Reviewed-by: aavit <eirik.aavitsland@digia.com>
* | Simplify mirroring code and add tests for non-aliged 1 bit imagesLaszlo Agocs2014-06-231-113/+97
| | | | | | | | | | Change-Id: I309714bc52de87c702194a4a82803d383f6ac3b3 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Doc: Fix docs for QFontMetrics::height() to match codeEskil Abrahamsen Blomfeldt2014-06-231-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | After cb8445f0323b0eefbb04f1d8adad81a00b53abd8, Qt no longer considers the baseline to have a vertical size, so it does not add an extra pixel to the font height. The documentation needs to be updated to reflect this. Task-number: QTBUG-39668 Change-Id: I28fc813e21d73bb03f7055b0f0843511a12d308b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | QIcon: Prefer high-quality images of Windows .ico files.Friedemann Kleint2014-06-222-36/+93
| | | | | | | | | | | | | | | | | | | | | | Refactor the code QPixmapIconEngine::addFile() using a convenience class for reading all images. Special-case .ico-files: Read images into a list and replace by higher-quality ones. Task-number: QTBUG-39287 Change-Id: I32ab6c77a276dc5d4d9a8f7b216c81149b8772b8 Reviewed-by: aavit <eirik.aavitsland@digia.com>
* | When filling the path it should use the painter's pen not the state'sAndy Shaw2014-06-211-1/+1
| | | | | | | | | | | | | | | | | | | | The state should already be updated when fillPath() is called, so it should use the painter's pen to fill the path with instead as this will have been updated already. Task-number: QTBUG-39303 Change-Id: I1cc9922d4183bd44076c26210db06ad825ebf25b Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | Correct QImage::fill(uint) on RGBA8888 formatsAllan Sandfeld Jensen2014-06-201-26/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QImage::fill(uint) was incorrectly performing ARGB->RGBA conversion when called on RGBA8888 formated images. This patch moves the color conversion to QImage::fill(QColor) where it belongs so that fill(uint) can behave consistent with documentation and how it treats other formats. The fill(uint) method had no automated tests, and this patch adds one. [ChangeLog][QtGui][QImage] QImage::fill(uint) now fills the given pixel value unconverted when used on RGBA8888 image, making it consistent with the documentation and treatment of all other image formats. Change-Id: I00a9d810c61d350dbdd7c4b9ad09e5ce11896b6d Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* | Properly check which OpenGL features are supportedMartin Gräßlin2014-06-201-38/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QOpenGLShaderProgram::hasOpenGLShaderPrograms tests whether QOpenGLFunctions::Shaders is provided for the given context. As the initialization code assumed OpenGL 2 this always was true. But unfortunately we still cannot assume that OpenGL 2 is universally supported. E.g. indirect rendering (no matter how bad that idea is) does not support OpenGL 2 on all hardware and the Shader related extensions are not available. This change makes sure that only when OpenGL 2 is available the features provided by OpenGL 2 are enabled. If OpenGL 2 is not available the extensions are tested. The checks are slightly reordered to not do the extension tests at all if OpenGL 2 is available. Task-number: QTBUG-39730 Change-Id: Ic775163e0dcc519925b1287f3c4ca5e8ebf101d5 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | QGuiApplication: Document -plugin command line argument.Friedemann Kleint2014-06-191-0/+6
|/ | | | | | Task-number: QTBUG-38972 Change-Id: Ie4dd6d70e60822a5a3626b10cd90d081897d646d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix animations in static buildsKai Koehne2014-06-172-1/+5
| | | | | | | | | Make sure qRegisterGuiGetInterpolator is called even for static builds. Task-number: QTBUG-37341 Change-Id: I65735a558d5bbfaa02fa4ec47d55ddf33ca1991a Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* QRasterPlatformPixmap::createPixmapForImage(): Avoid crash when QImage ↵Martin Pley2014-06-161-2/+4
| | | | | | | | | | | conversion failes Added some checks to QRasterPlatformPixmap::createPixmapForImage() to avoid crashes when QImage::convertToFormat() returns a null image. Change-Id: I573505a1aff7931d9a2fb452d0a83ae93d8de7db Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into 5.3" into ↵Sergio Ahumada2014-06-114-68/+11
|\ | | | | | | refs/staging/5.3
| * Merge remote-tracking branch 'origin/stable' into 5.3Sergio Ahumada2014-06-114-68/+11
| |\ | | | | | | | | | Change-Id: I147a75ac74bd7b19dbeb99e1ec2836cc5bfc2806
| | * Remove unfinished NEON version of vectorized rotate samplingAllan Sandfeld Jensen2014-06-061-65/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A vectorized codepath for rotating transforms were added in 5.3.0, but was only properly tested for SSE2. The NEON version remains unfinished. Since it was never working, this patch reverts the NEON version. Task-number: QTBUG-39445 Change-Id: Ifbce0e03781d217ad976c6b18ac88381055cba66 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
| | * QPlatformClipboard::emitChanged(): Do not emit signals when closing down.Friedemann Kleint2014-06-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Prevents a shutdown crash in the Qt Mfc migration solution. Task-number: QTBUG-39317 Change-Id: I7f0aa40715baed57ff59682a477084347dfd45bc Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * Make multisampling more robust in QOpenGLFramebufferObjectLaszlo Agocs2014-06-062-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some drivers are reported to get confused when passing different sample counts (requested vs. actual) to the color and depth/stencil attachments. To overcome this, pass the requested sample count to all the attachments. Task-number: QTBUG-33406 Change-Id: I17b0e3dbbd78de2ab0f45e95164b4f326d47aeff Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Kimmo Leppälä <kimmo.leppala@digia.com>
* | | Add missing detach() in QPixmap::convertFromImage()David Faure2014-06-111-0/+1
|/ / | | | | | | | | | | | | Task-number: QTBUG-18519 Change-Id: I5d929cf6eda3f34130314edac95487fb00a95db5 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* / Don't try to draw if there are no points in the pathAndy Shaw2014-06-091-1/+3
|/ | | | | | | | | | In some cases, for instance if drawEllipse() was called with a null QRect then it would still try to draw a QVectorPath without having enough points in the list. Therefore the point_count should be checked first before doing any drawing. Change-Id: I9b8dbb87c73b74e9df9eb10ec790a484d05d4c46 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix QOpenGLGlyphTexture object leakLiang Jian2014-05-281-1/+3
| | | | | | | | Call clear() in the destructor of QOpenGLTextureGlyphCache class to prevent QOpenGLGlyphTexture object leak. Change-Id: I290b09b0786d30603391e6855a21e9232b112739 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix fast painting of clipped text on non RGB32 formatsAllan Sandfeld Jensen2014-05-281-4/+3
| | | | | | | | | | QRasterPaintEngine::alphaPenBlt makes the assumption that a device with bit depth 32 has optimized alphamapBlit and alphaRGBBlit routines. This will fail on RGBA8888 format resulting in some text not being rendered. Change-Id: Ia7d88bb0e3094894affceda1acc42396b67b3677 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* QOpenGLFramebufferObject: correct the internal format when using ANGLEAndrew Knight2014-05-261-1/+10
| | | | | | | | | | | As ANGLE doesn't support GL_RGBA as the internal format for its multisampled framebuffer extension, use GL_RGB8_OES to ensure a working out-of-the-box experience. Task-number: QTBUG-39283 Change-Id: Icb364225e74e5d3480a8617131a56e9f65f04ba5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* QOpenGLTexture: test for extensions when checking featuresGiuseppe D'Angelo2014-05-251-8/+24
| | | | | | | | | | | | | Don't use only the GL version, as vendors expose many many extensions on viable hardware. For instance, I have a NVIDIA G210 which supports up to GL3.3, but which features immutable storage, immutable multisampled storage, texture buffers and ranges, stencil texturing, and cubemap arrays. Change-Id: Ie6023ee854b679737fca982578cb2093e10d083f Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Windows: Fix qt_imageFromWinHBITMAP().Friedemann Kleint2014-05-231-74/+86
| | | | | | | | | | | | | Factor out common code paths from the QPixmap/QImage conversion code and use the same algorithm for copying the image data with alpha correction as does qt_pixmapFromWinHBITMAP(). Rename the previous version of qt_imageFromWinHBITMAP() to qt_imageFromWinIconHBITMAP() since it is used for HICON conversion. Task-number: QTBUG-39084 Change-Id: Ia4042c33db485c3604461a5eafd6282968b36e3b Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* escape apostropheOswald Buddenhagen2014-05-231-1/+1
| | | | | Change-Id: Ib9da4903167fce8ccc41fd2aa050b5c611cced11 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Call doneCurrent on QOpenGLContext when the surface diesLaszlo Agocs2014-05-231-0/+6
| | | | | | | | | | | | | | | | Doing makeCurrent() followed by destroying the surface (and no doneCurrent) results in still having the pointer stored internally in the QOpenGLContext. If then a function like defaultFramebufferObject() is called, the pointer is dereferenced. To fix this, the doneCurrent() has to be called when the surface is destroyed before the context without doneCurrent(). This is pretty much what the user would expect anyhow. Task-number: QTBUG-38994 Change-Id: Ibd4083d9291c7fd39b38ce81a988a8e0c9d55d60 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Fix a crash in QOpenGLTexture::allocateStorage()Tasuku Suzuki2014-05-231-1/+3
| | | | | | | | | QOpenGLTexture texture(QOpenGLTexture::Target2D); texture.allocateStorage(); // crashed Change-Id: Ia12f69b72e537cf765387cd172d7cb2cbbbad6e6 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Fall back to ANGLE BlitFramebuffer and RenderbufferStorageMultiSampleAndrew Knight2014-05-221-2/+6
| | | | | | | | | When these extensions aren't available, use ANGLE's versions of them. Task-number: QTBUG-31010 Change-Id: I9a85b9f4d2bb60bdb1d79c92edf241b95d0627bf Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* CMake: Don't FATAL_ERROR if GL libraries can not be found.Stephen Kelly2014-05-191-28/+37
| | | | | | | | | | | For Windows builds, the necessary libraries are not found in the sdk if the wrong environment is used, which is quite common. Task-number: QTBUG-34940 Change-Id: I7d844649790cbfacab3154a717d318fd570c4149 Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QOpenGLTextureBlitter fix allocating 4 times as much memory as neededJorgen Lind2014-05-161-2/+2
| | | | | | | and copying a lot of garbage. Change-Id: Idf1d23d06423a98ce503c9bcf9614b12dd1fb92a Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Remove an unused workaround and fix up the comments in the glyph cacheLaszlo Agocs2014-05-131-29/+2
| | | | | | | | | | | This old workaround is not necessary and could not be used anyhow since it would affect a way too wide range of drivers. Modern drivers should be able to honor the default GL_UNPACK_ALIGNMENT of 4 even for 1 byte per pixel formats like GL_ALPHA. Instead, document why the behavior is correct. Change-Id: I1687448ba92875c8ff772ccc371894e88ff64096 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* QTextLayout: Fix cursor position calculation for BiDi textAndrey Volykhin2014-05-121-1/+0
| | | | | | | | | | | Due excess 'break' in loop, function xToCursor() with "CursorOnCharacter" option for BiDI text returns wrong cursor position (start glyph position) all time. Task-number: QTBUG-38846 Change-Id: Iba6671905e0785da6f343db19d6c3bb3e2cf5e8a Reviewed-by: Andrey Volykhin <andrey.volykhin@lge.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Respect fixed pitch request when font family is not availableEskil Abrahamsen Blomfeldt2014-05-121-1/+5
| | | | | | | | | | | | | | | | | | | | | In particular, if you have a <pre> tag in your HTML, this will become a QFont with family "Courier New" and fixedPitch==true. On Android, there's no "Courier New" font, and since the style hint is AnyStyle, we will just return Roboto, which is a proportional font. Note that this exactly matches the condition when fetching the fallback families for the font in the loadEngine() function, which was introduced by 06568ff89c48dee8aab278b8b0538c331aa84595 in Qt 4. [ChangeLog][Text] Respect QFont::fixedPitch() for fallbacks when font family cannot be matched. Task-number: QTBUG-36083 Change-Id: I64787c547dc492b9dd3c49f1edf0d9626d198260 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Enable support for OpenGL 4 on OS X 10.9Sean Harmer2014-05-101-4/+6
| | | | | | Change-Id: Ifc3aeea8bf4bada821d09cc329748cad16923d6a Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Document the X11 DISPLAY variable in the -display option docsThiago Macieira2014-05-091-0/+2
| | | | | | Change-Id: I20412616c91d187e2befc39134a480369347b8cb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Doc: fix -qwindowgeometry and -qwindowtitle option docsThiago Macieira2014-05-091-2/+1
| | | | | | | | | | The former was documented twice and the latter was missing the qdoc formatting. Change-Id: Id8dfb21a0c2fd26134b5738448971fe2627a12d6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Document that the -reverse option is only for debugging and its defaultThiago Macieira2014-05-091-1/+3
| | | | | | | | | You should never force that option. Just let Qt automatically detect from the environment. Change-Id: I43ae4951969d2067cc111eff6302921a0af82658 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Document that env variables are preferable to cmdline optionsThiago Macieira2014-05-091-1/+8
| | | | | | | | | Environment variables are passed along to child processes, command-line options aren't. Change-Id: Ia52c1d8cfeeb2f7490e73ac50b58ba07c2eebfa8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Avoid corruption in Q(Open)GLFunctions when used on multiple threadsLaszlo Agocs2014-05-092-2/+6
| | | | | | | | | | | | | | | | | | | Using Q(Open)GLFunctions concurrently on multiple threads had some issues due to incorrect synchronization: The m_groups list in the QOpenGLMultiGroupSharedResource, in which the Q(Open)GLFunctions instance is stored, became corrupted under certain scenarios, for example in the tst_qglthreads autotest and any two threads that happen to enter an initializeOpenGLFunctions() or QOpenGLContext::functions() call concurrently. Locking in value() has been introduced in 666c25c089acf7fcc9e9a6b7665074c6286d604e to fix such issues, however using the context group's mutex is not enough: that still allows two threads using two contexts with a different context group to concurrently enter insert(). Instead, the MultiGroupSharedResource has to have its own mutex to protect its own member variables. Task-number: QTBUG-38771 Change-Id: If01c44c2084b95e487bc9146576ca180ed8044da Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Fix FT glyph outline to path conversionBernd Weimer2014-05-071-12/+24
| | | | | | | | | | | | | When the start point is not on the curve, the end point will be used as starting point for the QPainterPath, if it is on the curve - if it is not on the curve, the mid point between start and end point will be used. The origianl start point will still be used as a control point for the first bezier curve. Task-number: QTBUG-38601 Change-Id: I90e07f1141288873263f1f12fa51e6a248d0804f Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>