summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Fix rendering alpha-blended text which needs to be clipped at the top.Simon Sasburg2014-08-111-1/+1
| | | | | | Task-number: QTBUG-34148 Change-Id: I9c0694e67cc9883db318c1a1558bdf6e08088db4 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Font Database: Add support for private, system UI font familiesGabriel de Dietrich2014-08-112-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We introduce QPlatformFontDatabase::isPrivateFontFamily() to allow testing for private, system UI font families. Both QFontComboBox and QFontDialog need to filter out those private font families which, by definition, should be hidden from the end user. (The textedit example had to be updated to fix the issue where the default font would be private. In 5.4, we will be adding an equivalent, public API in QFontDatabase, and a better solution for the textedit example and QTexEdit in general). In particular, on OS X and iOS, private fonts are used for the system UI font. Those have their font family name prefixed by a dot. QCoreTextFontDatabase knows about this, and makes sure those are tested positive as private font families. In order to have a cleaner layer separation, we moved the QPA theme font resolution from the platform theme classes into QCoreTextFontDatabase for both Cocoa and iOS QPA plugins. In both cases, we use CoreText's CTFontCreateUIFontForLanguage(), that nicely maps to the HITheme API we were using so far on Mac. That means one HITheme dependency less. We also cache the font descriptors we get for these font for each time QCTFD::populateFamilies() gets called. (While not common, this currently happens in auto-tests, like tst_QFontDatabase, and could happen in actual applications -- specially when adding and removing application fonts.) Change-Id: Ic6f0b60f9f597afee1a43596a669742dc546b97f Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Initialize member.Gunnar Sletta2014-08-081-0/+1
| | | | | Change-Id: I9ed8d5a7aeb40886bafbd9eb2003e88e5d796cc9 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Both HiQualAA and normal AA should mean antialiasing in rasterengine.Gunnar Sletta2014-08-071-1/+1
| | | | | Change-Id: I1970c96e7681e4059984d837e12f044f138e6d7e Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Doc: Placed Qt OpenGL class convention in code block.Jerome Pasion2014-08-061-2/+4
| | | | | | | | | -QDoc tried to autolink where it should not. -The syntax looks much better in a code block than in a paragraph. Change-Id: I21d08cbb1537186d09b52898d7b70a5c0794256c Task-number: QTBUG-35019 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Do not add QOffscreenSurface windows to the global listLaszlo Agocs2014-08-051-0/+3
| | | | | | | | | | | | | | | | | | | QOffscreenSurface has to stay usable even after returning from app.exec(). Hence close()ing the underlying hidden window, that is used on platforms that do not provide real offscreen surfaces, is wrong. Normally all QWindows are closed (and thus destroy()'ed) when quitting the application, meaning the the offscreen surface cannot be made current anymore after returning from exec(). This is an unnecessary limitation and makes certain cleanup operations impossible. Backport of ba79f36cb1319a279068adb6d02a8993cbc62613 from dev. This is necessary for the 5.3 series too to avoid issues on exit in QQickWidget apps, on OS X in particular. Task-number: QTBUG-40505 Task-number: QTBUG-39908 Change-Id: Iea1489378a18f29ff84ba8f13a6dad2d66d2b315 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* OpenGL: destroy QGLContext allocated by QGLContext::fromOpenGLContextDavid Fries2014-08-051-0/+4
| | | | | | | | | | | | | | | QGLContext already uses ownContext to identify when it "owns" QOpenGLContext and will delete QOpenGLContext when needed. In the other way QGLContext::fromOpenGLContext creates a QGLContext for QOpenGLContext, and is now using qGLContextDeleteFunction to identify if QOpenGLContext "owns" QGLContext by QGLContext only passing a delete function when QOpenGLContext should delete QGLContext, and by QOpenGLContext calling deleteQGLContext() from destory() to do the destruction avoiding the previous leak and sometimes crash on exit. Change-Id: I65e791776e99b456e4d0c70fc5b5cdb33c975893 Task-number: QTBUG-40286 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into 5.3" into ↵Oswald Buddenhagen2014-07-311-0/+23
|\ | | | | | | refs/staging/5.3
| * Merge remote-tracking branch 'origin/stable' into 5.3Oswald Buddenhagen2014-07-301-0/+23
| |\ | | | | | | | | | Change-Id: I2a044d44ca991ba20ddd710053b85afb51e362d3
| | * move loading of testability driver from QApplication to QGuiApplicationMichael Zanetti2014-07-031-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful without QWidget too. Change-Id: Ic7857e52e4a8f57c1205615a1f30323b486814af Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Alberto Mardegan <mardy@users.sourceforge.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | | Fix double clicks in eglfsLaszlo Agocs2014-07-311-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | The window can be null in the qpa event. This is indicated by the nullWindow field to be able to differentiate between a dead window and a genuinely null input. [ChangeLog] Double click events are now sent correctly on eglfs. Task-number: QTBUG-40146 Change-Id: I63c8d08e0dec217b929161d2e827e0c273b4dd3e Reviewed-by: Will Wagner <willw@carallon.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Don't convert signed to unsigned when we need all 32bitAllan Sandfeld Jensen2014-07-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The fast scale methods qt_scale_image_16bit and qt_scale_image_32bit were incorrectly assigning an unsigned value to a signed variable, which broke their support of images with dimensions from 32384 to 65535. Images with dimensions higher than that are already using another code- path. Task-number: QTBUG-40297 Change-Id: I8c971889e069381224cea2befbb5c66cd93ea5c2 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.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>
* | Ensure transient parents are top level widgets.Friedemann Kleint2014-07-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | When a dialog was parented on a native child widget, its window handle was used as a transient parent. This confused QPlatformWindow::initialGeometry() among other things. Use top level window as is in Qt 4. Task-number: QTBUG-40195 Change-Id: Ic82adc276175f92adde825fb2551274351e41f30 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | CMake: Don't check the existence of GL files in the Qt5Gui package.Stephen Kelly2014-07-161-11/+11
| | | | | | | | | | | | | | | | | | | | The GL libraries are optional, so they should not be added to the DEPENDENT libraries of Qt5::Gui if not found. Task-number: QTBUG-39859 Change-Id: Ib0e01da56a9fb5048a6ad8e0e9cede07fe0cf43b Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* | Doc: Hide QTextInlineObject constructor from the documentationTopi Reinio2014-07-141-0/+5
| | | | | | | | | | | | | | | | | | | | | | The constructor takes an internal class instance as a parameter, and is not meant to be used externally. Add a note in the description and hide the constructor. Task-number: QTBUG-39785 Change-Id: Ice850f0968880f3933ebb7ae83efeaeed85441cb Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | Fix fallbacks for adapted common scriptEskil Abrahamsen Blomfeldt2014-07-103-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the platform plugin gives us specific fallbacks for a specific script, we need to respect this, and load the correct font family regardless of which writing systems it supports. This is especially important since the common script is adapted to match surrounding, proper scripts, so characters such as digits next to e.g. Hebrew text will be marked as Hebrew. On stock Android, there is a single Hebrew font, and this would previously be put in all fallback slots for Hebrew regardless of what fallback fonts were dictated by the platform plugin. Since this font does not support the digits, they would show up as boxes. [ChangeLog][Android] Fixed common characters like digits and punctuation showing as boxes when positioned next to non-latin scripts. Task-number: QTBUG-39377 Change-Id: I1555e208a8ddc587c0bbdbfff1600cafdd9442e9 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Don't assert when HB-old is unable to deal with surrogatesKonstantin Ritt2014-07-081-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | Since we have no interest in fixing HB-old to properly support surrogates, here is a simple workaround for the case when surrogate parts gets treated like two separate glyphs in log_clusters but a single character. And since it's a known issue that HB-old doesn't really support surrogates, it's better to draw some garbage/boxes rather than to assert, IMO. Task-number: QTBUG-39875 Change-Id: I95ff43e821ae989d7a6f792f71f157dcea92dd16 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | REG: Fix nbsp in QTextLayoutEskil Abrahamsen Blomfeldt2014-07-081-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At some point since Qt 4.8, the nbsp character has acquired the whitespace attribute, causing it to be treated exactly like an ordinary space. To account for this, we add an extra check in the layout code to avoid breaking on non-breaking spaces even if they have the whiteSpace flag set. This is a temporary fix for the regression. The line breaking algorithm needs to be refactored and support Unicode tr14 properly, which it currently doesn't. [ChangeLog][Text] Fixed lines breaking on non-breaking spaces. Task-number: QTBUG-39832 Change-Id: Ibd7e1a11ce4b82c611ecda1542c8638a67bf3cae Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | 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>