aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix Image smoothing not workingr2d-5.6.0r2d-5.6Jonathan Liu2016-02-161-1/+1
| | | | | | | | Linear interpolation should be interpreted as smooth rather than nearest neighbor. Task-number: QTBUG-51122 Change-Id: I6ac1fe806c16671aec383e0a235fef41e5e9105f Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* Fix ThreadedRenderLoop crash when showing a previously hidden windowRomain Pokrzywka2016-02-101-1/+4
| | | | | | | | | | cleanupNodesOnShutdown() was missing after the fireAboutToStop() call, causing access to stale render nodes when the window is exposed again. The crash occurs when accessing font cache data, which is stored in thread-local storage for a thread that was exited a long time ago. Change-Id: I1dab414106f17d08cd7d6a4e32ee50b3e57c2fd4 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* Move OpenGL/EGL headers into 3rdparty folderAndy Nichols2015-11-2413-4/+4
| | | | | | | | | | These headers are actually 3rd party code since they come directly from the Khronos Group. This fixes issues with the license checker as well. Documentation and build script are updated to reflect the change in the header location. Change-Id: I1e513d7be580dcc3ea987d7fd0a5049fd7255d4e Reviewed-by: Antti Kokko <antti.kokko@theqtcompany.com>
* Update headers to pass license check testAndy Nichols2015-11-2430-136/+194
| | | | | Change-Id: I48623789ed483a9f8efe17fe398400ed29c87f3f Reviewed-by: Antti Kokko <antti.kokko@theqtcompany.com>
* Doc: Fix a couple of documentation issuesTopi Reinio2015-10-192-4/+5
| | | | | | | | | - Fix linking to Qt Quick QML types - Add url to .qdocconf, fix sourcedirs to allow template-added sources Change-Id: I2378f8fa0559bac125dc8ca930143c8fe54b300b Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Fix build on WinCEAndy Nichols2015-10-142-0/+4
| | | | | Change-Id: Id252eeb0b140e58e74a84c97c9dde3f857f09d45 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Andy Nichols2015-10-134-0/+20
|\ | | | | | | Change-Id: Iba0e12721ec9ab0fc70b078f73dc4ec89df05aa3
| * Add tests directory to enable coin integrationAndy Nichols2015-10-134-0/+20
| | | | | | | | | | | | | | | | There are no actual tests yet though, but now we don't fail the build in coin because there is no tests folder. Change-Id: I7843fb78d1bd0986db69f2706d8738061762e6cb Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * Update Copyright and License headersAndy Nichols2015-08-1828-285/+281
| | | | | | | | | | Change-Id: I308ac6bc053ed2648802f433e01be92f36e223b8 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
| * Bump module version to 5.5.1Andy Nichols2015-08-181-1/+1
| | | | | | | | | | Change-Id: I25ddccfedbef2e62f64c3284cb43d66aa014b6c6 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Add setTextureSize method to PainterNodeAndy Nichols2015-09-232-8/+33
| | | | | | | | | | | | | | | | | | | | PainterNodes now support having a textureSize property to handle the highDPI scenario. We still have to support both the old and the new case though, so we have logic for both. This fixes the build with the latest Qt 5.6. Change-Id: Ia9c9d65b187956271c98fb19f6e5bb5745273e0d Reviewed-by: Eirik Aavitsland <eirik.aavitsland@theqtcompany.com>
* | Document that QQuickRenderControl is unsupportedAndy Nichols2015-09-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | QQuickRenderControl depends on OpenGL, and with QtQuick2DRenderer that means there will be unexpected behavior when you try and use OpenGL because there is no valid OpenGL context. The expected behavior is that it will just crash. Change-Id: I413ed73884abd778efb5f0d91bd96a34c1679c23 Task-number: QTBUG-45306 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Correct file description, and product nameAntti Kokko2015-09-111-0/+3
| | | | | | | | | | | | | | Helps extending RTA checks for Windows Change-Id: I3b03124e8739dfca20776284d548cf2a72437925 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Fix rendering regressions with texture mirroring.Andy Nichols2015-09-093-16/+5
| | | | | | | | | | Change-Id: I8d48b9332712aa30857402a93a35c77f22fae221 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@theqtcompany.com>
* | Handle new pure virtual methods in QSGLayerAndy Nichols2015-09-084-0/+34
| | | | | | | | | | | | | | Added support for horizontal and vertical mirroring of a QSGLayer. Change-Id: Ic3c94f219ea97ef97287c8e4cebf853cfa961a80 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@theqtcompany.com>
* | Update Copyright and License headersAndy Nichols2015-08-1228-285/+281
| | | | | | | | | | Change-Id: I4f6dd71bba13b32e5f8f8495675f87eba841bfed Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Update Qt Quick 2D Renderer to work with Qt 5.6Andy Nichols2015-08-126-96/+142
|/ | | | | Change-Id: Ifa2493f773b2c94fcfc1d58229f26864b08019bc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* turn off image format conversion in PixmapTextureJoerg Bornemann2015-08-031-1/+3
| | | | | | | | | | Avoiding the conversion potentially saves memory and conversion time. Also, it guarantees that the pixmap format doesn't change just by assigning it to a texture object. E.g. QtWebEngine relies on that. Task-number: QTBUG-47328 Change-Id: I4dae1492d581ea406cf86906ed0ed2c126252257 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* fix namespaced buildJoerg Bornemann2015-07-092-0/+6
| | | | | Change-Id: I319f73aaeef2656dc628873a460607d6944d7432 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Remove custom documentation footerKai Koehne2015-06-151-23/+0
| | | | | | | | | The footer is outdated (2014, Digia ...). Anyhow, the documentation of other commercial items is released under GNU Free Documentation License too, so let's just use the standard footer. Change-Id: I6d3e89bc7e112ad99c62a356d8a16c3bf389e5cf Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* Fix name of documentation as shown in ContentsKai Koehne2015-06-151-1/+1
| | | | | | | Make the title align with the other Qt components. Change-Id: I38d4728cad007b6389c2a541ffc3b228a621fe70 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* Bump module version to 5.4.1Andy Nichols2015-01-201-1/+1
| | | | | Change-Id: I5a5d282e1641e76be662978cd95130385a9a65bc Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Doc: Fix various issuesTopi Reinio2015-01-144-11/+9
| | | | | | | | | | - Update privacy policy URL - Remove unnecessary \targets - Ensure Qt Quick and Qt Graphical Effects modules are linked to correctly Change-Id: I45cbf60ad07db1a74c250f0192ea8c674513f696 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* Doc: review documentation 2D RendererNico Vertriest2015-01-135-78/+60
| | | | | Change-Id: Ic31014844066025a903b2d33f5780f4f8e046f72 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Mention the caveat of text rendering in the known limitationsSimon Hausmann2015-01-081-0/+6
| | | | | Change-Id: I87f733f6b15e1987d7ae6b83c716c578ce4edadb Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* Remove deprecated macro to enable build with Qt 5.5Andy Nichols2015-01-082-17/+0
| | | | | Change-Id: Ia1a49a806dc2f822bee92787a45a49a4bc3c573f Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Account for Device Pixel Ratio when rendering QSGLayerAndy Nichols2015-01-082-3/+7
| | | | | | Change-Id: I3570a6ee87786f1459a922bd43f38d1bbbe2c640 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Paul Tvete <paul.tvete@theqtcompany.com>
* Fix rendering of RectangleNode when devicePixelRatio != 1Andy Nichols2015-01-082-38/+57
| | | | | Change-Id: Ice0f274afe5ca5e5f453bddc3c3b63f44bbef06c Reviewed-by: Paul Tvete <paul.tvete@theqtcompany.com>
* Use the new QSGSimpleTextureNode::sourceRectJocelyn Turcotte2014-12-171-0/+4
| | | | | | | | | QtWebEngine always receives 256x256 large tiles, but is being told which part of the texture should be painted if the content is effectively smaller on a tile. Change-Id: Ie979562fb948c853e22155e3f7f3807ae10558ef Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Support QSGLayer::setRectJocelyn Turcotte2014-12-173-0/+4
| | | | | | | | | Carry any non-full rect from the layer to QPainter::setWindow. This is needed by cc::RenderPass::output_rect in QtWebEngine. Change-Id: I8ffd7f0b7646e664a225df096de455899338d4ba Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Fix crash for borderimage with negative bordersaavit2014-11-251-2/+10
| | | | | | | | | Replace negative margin values with 0. Test case: qtdeclarative/tests/manual/scenegraph_lancelot/data/borderimages/borderimage_rotated_unsmoothed_negative_borders.qml Change-Id: I53d143fd079cbaa5e6c8080ada81720f8b1b598b Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@theqtcompany.com>
* Doc: Add some basic documentationAndy Nichols2014-11-1810-65/+385
| | | | | Change-Id: Id6f986bc5d46912355f42e6ae8d72fe2738c2c19 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Logging: use category names different from those in declarativeRichard Moe Gustavsen2014-11-184-74/+104
| | | | | | | | | | | Otherwise we end up with duplicated symbols when linking statically. This partly reverts commit 139ace5b57b82396dc37a6781bfae4a251172764. Change-Id: I0b33cc00d19e7c541b33a72a7d27e1c0a895d988 Task-number: QTBUG-42679 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Logging: include logging categories from qsgcontext_p.hRichard Moe Gustavsen2014-11-171-24/+1
| | | | | | | | | | | The logging categories used in this module are already defined in qtdeclarative, which this module depends on. We could just use Q_DECLARE_LOGGING_CATEGORY instead of Q_LOGGING_CATEGORY, but even simpler is to just include the private header file where they are already declared. Change-Id: I5adb0cfc5fd4fed234935820e52d7c7e7a797fae Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Improve quality of RectangleNodes when rotatedAndy Nichols2014-10-212-31/+68
| | | | | | | | | | | | | | | | | | | | When there is a rotation transformation on a RectangleNode it is not possible to take advantage of accelerated blitter paths, but we still need to do custom painting to recreate the behavior of a Rectangle component in Qt Quick. Now when there is a rotaiton transformation we will fall back to using QPainter::drawRect as long as there is no border or radius. If there is a border or radius value set though we will instead first render to a QPixmap before painting as the standard behavior of QPainter::drawRect and QPainter::drawRoundedRect does not match the expected behavior of a QQuick Rectangle item. This fixes the poor quality of rotated Rectangles at the cost of speed. The Rotation of any item should still be discouraged for performance reasons, but at least now Rectangles itmes should look correct when used. Change-Id: I3919ad732c9b4354a95e28e8dc09fcefd53f604e Reviewed-by: Eirik Aavitsland <eirik.aavitsland@digia.com>
* SoftwareLayer: markDirtyTextureLater() slot was removedAndy Nichols2014-10-202-13/+1
| | | | | | | | This issue was fixed in qtdeclarative a slightly different way, so now we need to change our code to reflect the change. Change-Id: I5c050da88efc32e808ad5a4a764ff410544db1cd Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Fix build error with latest QtDeclarativeAndy Nichols2014-09-301-1/+0
| | | | | Change-Id: Id4b87c285370182b34ec42cf02c59627e8019956 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Remove Q_UNREACHABLE from RenderingVisitorAndy Nichols2014-09-301-2/+2
| | | | | | | | | There will be times when we hit custom QSGGeometry nodes where we won't be able to render them. Rather than crashing, just ignore them. The Q_UNREACHABLE macro was more for the development phase anyway. Change-Id: I4962cab17b8b3399e081dba58c3a7c4dd988de8f Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Make sure to clear backingstore with Source Composition ModeAndy Nichols2014-09-301-1/+2
| | | | | | | | This prevents blending with either garbage or the contents of the previous buffer when clearing with colors with an alpha. Change-Id: I52fc13c2af224a37206e51efd38301b95085c9b2 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Fix build error in latest qtdeclarativeAndy Nichols2014-09-112-3/+3
| | | | | Change-Id: Icd2dbadaa0302ceaf06daaeb26b10cb9403cc492 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Ensure that markDirty is called when neededAndy Nichols2014-09-113-2/+51
| | | | | | | | There were many cases where properties of nodes could change but since the node was not marked dirty, the scene update was never rendered. Change-Id: I7740a43d98521073056f85fe80d6c1ff213236a3 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* SoftwareLayer::grab must call QSGRenderer::renderScene to work correctlyAndy Nichols2014-09-112-5/+9
| | | | | | | | | | If QSGRenderer::renderScene is not called by SoftwareLayer then any updates in the scenegraph will not be reflected in that layer. This is the "live" but not "recursive" situation. Change-Id: If55cc71b3932e283855e3a1f9ff1bca5e07f4498 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix build warningsAndy Nichols2014-09-113-3/+4
| | | | | Change-Id: I842c8cd117f1e25cc7848618e86d2aff2e5e522f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Add support for Image mirror propertyAndy Nichols2014-09-112-4/+22
| | | | | | | | | | The is probably not the ideal path (as there is at least one copy), but we can document that mirror is slow. There is no clear path to blit mirrored though, so it is better to do this than to render un-mirrored or use QPixamp.toImage().mirrored().toPixmap() Change-Id: Ife751f3635e8f9d8ea08676fb1f263bdb727aa2f Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix typo in sync.profileAndy Nichols2014-09-101-2/+0
| | | | | Change-Id: Id20ae015bd4cb4c8d2354ae2f70e514e1545fee3 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Improve rendering quality of RectanglesAndy Nichols2014-09-092-28/+69
| | | | | | | | | | | | | The existing implementation has both inaccurate drawing of borders as well as many alignment issues. Much of these alignment issues are due to our use of floating point sizes and the integer based nature of blitter hardware. So now for the Rectangle node we force alignment via the use of whole numbers. This should be a better compromise of speed vs accuracy than previously. Change-Id: I9d8e9d1b3347a99bf0c2ae65ec66c935d8017817 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Check for Threaded Pixmaps capability for threaded rendererAndy Nichols2014-09-091-1/+6
| | | | | | | | | | | By default we used the threaded renderer, but this will only work if the platform has the capability to render to QPixmaps from multiple threads. Now if we don't have the Threaded Pixmaps capability we use the non-threaded render loop. Change-Id: I5090e874d0bbdd1e54561ea3583a5a17bbf50061 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Support rendering Gradients when stops are not between 0 and 1Andy Nichols2014-09-091-1/+88
| | | | | | | | | | | | QGradient does not allow stops positions that are outside the bounds of 0 and 1. Gradients created from QML however can have stops outside of these bounds and so we must normalize these stops before giving them to QPainter to render. This change creates a new stop at 0 or 1 if a stop goes below or above the bounds respectively, and interpolates a new color value for the stop based on the original position. Change-Id: I10cc41d923e88a9b41bfd27de0326cea25464add Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Build softwarecontext plugin using load(qt_plugin)Andy Nichols2014-09-031-9/+4
| | | | | | | Should resolve issues with deployment. Change-Id: I268734e5db67d3f2bc3afa603618270985387b30 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Add OpenGL dummy libraries to projectAndy Nichols2014-09-0214-0/+6660
| | | | | | | | | | Qt still depends on OpenGL even if we dont plan on using it. The OpenGL dummy library provides the OpenGL and EGL headers and sharded objects necessary to build Qt with OpenGL ES2 support. Change-Id: I588f819b108834486a14769a8c1740e86a14bc24 Reviewed-by: Lars Knoll <lars.knoll@digia.com>